在 Ubuntu 上自動更新 Atom 編輯器

自從從 Sublime Text 跳到 Atom 之後,對於使用 Atom 一直覺得蠻順手的,相關的 package 也很多,在寫程式的時候也相當方便,雖然現在很多人都很推 Visual Studio Code,但是目前來說 Atom 的功能就可以滿足我了,所以也就沒特別換到 Visual Studio Code;Atom 是基於 Electron 所打造的,不過在先前比較令人詬病的地方就是開啟的速度相當的慢!不過前陣子在 1.14.0 版本中對於這部份有做了改進,實際更新後我覺得開啟速度的確有改善許多。

我自己本身有兩台電腦,都是使用 Atom Editor,一台 Windows、一台 Ubuntu,今天的主題就是在 Ubuntu 上如何自動去更新 Atom Editor,Windows 的部份其實都會自動幫你下載更新,只是記得到 AppData 下把舊版的 Atom 移除,不然蠻佔空間的;在 Ubuntu 上,安裝 Atom 通常可以透過加入 PPA 來進行安裝,或者是到 Atom 的 GitHub Release Page 來安裝。

  1. 使用 PPA 進行安裝,首先要加入 respository,再進行安裝:
$ sudo add-apt-repository ppa:webupd8team/atom
$ sudo apt update
$ sudo apt install atom

PPA 的部份安裝很容易,但是這篇文章主要是透過 GitHub Release Page 下載回來的 .deb 來進行安裝說明。

  1. 下載 .deb 檔案回來進行安裝:

我們到 GitHub Release Page 下載安裝檔案(這裡以 .deb 作為範例),透過以下指令就可以進行安裝了:

$ dpkg -i atom-amd64.deb

但是透過這種方式安裝有個缺點就是,當 atom 版本更新時需要自己手動進行更新!因為這幾天發現相關 package 無法更新到最新版本,才發現自己的 Atom 版本很久沒更新了,但是覺得每次要這樣手動來更新 Atom Editor 太累人,於是上網找了方法來解決。

透過 shell script 來解決

#!/bin/bash
wget -q https://github.com/atom/atom/releases/latest -O /tmp/latest
wget -q 'https://github.com'$(cat /tmp/latest | grep -o -E 'href="([^"#]+)atom-amd64.deb"' | cut -d'"' -f2 | sort | uniq) -O /tmp/atom-amd64.deb
dpkg -i /tmp/atom-amd64.deb

大概解釋一下這個 shell script 的原理:

  1. 第一行:就是透過 wget 把 Atom Release HTML 頁面給下載回來,存放到 /tmp 下名稱為 latest 的檔案。
  2. $(cat /tmp/latest | grep -o -E 'href ...) 這裡就是從你的上面 wget 下來的頁面,找到下載連結的 URL,接著一樣下載存到 /tmp 資料夾下,名為 atom-amd64.deb 的檔案。
  3. 安裝 .deb 檔案。

可以把這個 shell script 放到 /usr/local/bin 下,並修改檔案的屬性成可執行,之後就可以從 CLI 通過指令來更新 Atom 囉!

gau

gau 是我透過 Go 所撰寫的一個 CLI 工具,可以方便地檢查你的 Atom 版本是否為最新,並下載安裝。