プログラムをアップデートする際に、わざわざブラウザを開きそのプログラム(ソフトウェア)の提供元やGitHubのWebページにアクセスしてダウンロード&インストールするのが面倒だと感じたことはありませんか?
今回はそんな方(Macユーザー限定)向けに、ターミナル上でプログラムアップデートを完了できるスクリプト、latest のご紹介です。
TLDR
上記のGitHubのページをご覧になって頂ければ、インストール方法や使用方法をご確認頂けます。
GitHubから New Release をダウンロードする場合
GitHub は GitHub API を提供しており、GitHubで公開されているプロジェクトの New Releases は API を利用してダウンロードURLを取得することができるので、このスクリプトはこれを利用しています。
repos.json の内容とその編集
repos.jsonを編集して自分が高頻度で利用するソフトウェアの登録ができます。↓例:
{
"direct": {
"RemNote": "https://backend.remnote.com/desktop/mac"
},
"github": {
"Kitapp": "johnlindquist/kitapp",
"Manager": "Manager-io/Manager",
"acreom": "Acreom/releases",
"balenaEtcher": "balena-io/etcher"
},
"webpage": {
"Mendeley": "https://www.mendeley.com/download-reference-manager/macOS"
}
}
JSONの中身の説明:
githubセクションには登録名:プロジェクトURLの一部でkey:value登録ができます。
directセクションではvalueに直接ダウンロード可能なURLを登録できます。
webpageセクションではvalueにダウンロードURLを含むWebページのURLを登録できます。このスクリプトはその指定されたWebページからソフトウェアのダウンロードURLを探してきます。githubでは確実にダウンロードURLを取得できる反面、webpageではWebサイトの仕様により上手く行かないことがあります。
注意点
~/Downloads/*.pkg, ~/Downloads/*.dmgは自動的にマウント・インストール・削除されますので、~/Downloadsに未処理のPkg, DMGファイルがある場合は対応が必要です。(あるいはスクリプトに手を加えて~/Downloadsディレクトリ以外のディレクトリをスクリプトが利用するように設定する必要があります)。
類似のプロジェクト
バイナリファイルのダウンロード・インストールができる eget というツールがあります。
スクリプトの改善について
スクリプトを利用して頂いた方の中でバグや改善点にお気付きの方は是非ご連絡下さい。