Linux
Ubuntu
ElementaryOS

Elementary OSを入れて最初にやったこと & 入れたツール16個

環境

  • Elementary OS 0.4 Loki (Ubuntu Xenial 16.04 LTS)

環境設定

システムアップグレード

とりあえずシステムアップグレード

  • sudo apt-get update
  • sudo apt-get upgrade

日本語入力設定

  • fcitx-mozcを入れる

mozcはgoogle日本語入力のオープンソース版でgoogle内部でGoogle日本語入力がこのコードネームで呼ばれていたからmozcらしいです。
fcitxはAuthyのようなインプットメソッドフレームワーク。

sudo apt-get install fcitx-mozc

インストール後メニューから「Fcitx Configuration」を起動し以下のようにMozcというInputメソッドを追加する。英語キーボードの場合はインプットメソッドにKeyboard - Japaneseも追加する。

Input Method Configuration_010.png

入力切り替えのホットキーを設定する。Toggleで切り替えたかったので左Altのみで切り替えにした。デフォルトではCtrl + Shiftで入力切り替え。

Input Method Configuration_011.png

参考: UbuntuのmozcでUSキーボード入力/JISキーボード入力を簡単に切り替える方法 - Qiita

マウススクロール反転

スクロール方向を反転したい場合は
System Settings ➔ Mouse & TouchpadからNatural Scrollingをオンに変更

Mouse & Touchpad_012.png

マウスの戻る/進むボタンのマッピングを修正

Logitech G403マウスの戻る/進むボタンが効かなかったのでxmodmapでマッピングを修正
デフォルトだとbutton 8/9に割り振られているがbutton 6/7に割り当てたいので以下のようにする

xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7"
echo xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7" >> ~/.Xmodmap

戻す場合は
xmodmap -e "pointer = default"

入れたソフト

Docker

最近はDockerさえあれば特にOS関係なく開発出来るけどやっぱりLinux上でやると楽。あと動作がキビキビしているのでストレスがない。

Chrome

とりあえずこれがないと始まらない。

公式からダウンロードしたdebパッケージをdpkg -iで入れようとすると

sudo dpkg -i google-chrome-stable_current_amd64.deb
...
Errors were encountered while processing:  google-chrome-stable

となり、エラーになるのでgdebiで入れる

sudo apt-get install gdebi
gdebi google-chrome-stable_current_amd64.deb

Firefox

chromeを入れるために入れた(?)

Atom

Elixirを書くとき用
最近はElectronのおかげでOS agnosticなアプリが増えてきて嬉しい

Albert

MacのAlfredのようなランチャ。WindowsだとWoxですかね…
アプリ起動、コマンド実行、計算、ファイル検索、Web検索辺りは抑えているので普通にいい感じ。

albert — Albert_013.png

Autokey

Applications➔App Centerから「Autokey」で検索してインストール

ホットキーや決められた単語を入力するとスクリプトが起動しタスクを実行出来る。
以下はdateとキーボードを打つとdateコマンドの実行結果をカーソル位置に出力する。

AutoKey_014.png

スクリプトはpythonで書ける

Powertop

ノートPCのバッテリーの節約をいい感じにやってくれる(らしい)

# install
sudo apt-get install powertop

# CLIインターフェース起動
sudo powertop

# 自動で節電設定
sudo powertop --auto-tune

Onedrive

Linux用のOneDrive CLI。
WindowsではOne Driveをメインで使っているのでLinuxでも同期したく入れた。

# install dependencies
sudo apt-get install libcurl-dev
sudo apt-get install libsqlite3-dev
sudo wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list
wget -qO - http://dlang.org/d-keyring.gpg | sudo apt-key add -
sudo apt-get update && sudo apt-get install dmd-bin

# install
git clone git@github.com:skilion/onedrive.git
cd onedrive
make
sudo make install

# create a new configuration書ける
mkdir -p ~/.config/onedrive
cp /usr/local/etc/onedrive.conf ~/.config/onedrive/config

onedriveコマンドのインストールが終わったら、OneDrive APIを使用するためOneDriveのクライアントIDを取得する必要がある

https://apps.dev.microsoft.com/portal/quickstart より「My Application」からアプリの追加を行いアプリケーションの設定から
プラットフォームの追加➔Web➔リダイレクトURLを
https://login.live.com/oauth20_desktop.srf」
に設定

Microsoft Graph のアクセス許可にUser.Readがあることを確認し
詳細オプション➔Live SDK サポートにチェックが入っていることを確認

設定し終えたらクライアントIDをコピーし先ほど作成したOneDriveの初期設定ファイルにコピーする

$ cat ~/.config/onedrive/config
client_id = "foobar" // ここ
sync_dir = "~/OneDrive"
skip_file = "~*"
skip_dir = "Music|画像"

後はonedriveコマンド初回実行時にOAuth2の認証フローで出力されたURLをブラウザで開き、出力されたURLをコンソールに貼り付け認証成功すれば設定完了

onedrive

ついでに自動起設定動設定をしておく

systemctl --user enable onedrive
systemctl --user start onedrive

Steam

App Centerよりインストール。

Steamerの人にとってはLinuxに対応していないゲームが多いのはLinux選ぶ上で結構致命的なポイントかもしれませんがネットワーク内の別のマシンでSteamが動いていたらSteam ホームストリーミング機能でリモートで遊べます
以下はelementary OS(Thinkpad X220)でGTA5をやっている図

Selection_005.jpg

実際Steam ホームストリーミングの中身は、リモートデスクトップでホスト側のSteamマシンを操作しているだけなんだけどゲーム用PCの前に行くのが面倒なときもあったり別の場所で気分転換でやりたいこともありそうだしいいんじゃないでしょうか

Slack

公式でLinux版(Beta)あり。チャットワークのLinux公式対応がないので対応してほしい(チラッ

Shutter

スクリーンショット作成ツール
矩形選択、ウィンドウ選択、矢印や文字で注釈を入れる等の必要最低限の機能はあるので特に問題なし

Wine

WindowsバイナリをLinux上で実行する
つい最近 2.0がリリースされたけど93年プロジェクト開始で未だに開発が続いてるのすごい…
何かに似てると思ったけどWindows APIをPOSIX APIに変換してるのでまるっきりWSL (Windows Subsystem for Linux)の逆ですね

Linux用のMySQLとRedisのいい感じのGUIクライアントが見つからなかったのでHeidiSQLRedis Desktop ManagerをWineで起動して使ってる

Clipit

クリップボードマネージャ。
色々試したけど履歴の検索、ホットキーで呼び出し等基本的なことが出来て動作が安定していたのでこれにした。

Manage History_003.jpg

ぃぬx

elementary-tweaks

elementary OS全体のフォントを変えたり出来る
ファイラ(pantheon-files)でシングルクリックでファイルを開く挙動に違和感があったのでダブルクリックで開くように変更した
ぃぬc

elementaryPlus

elementary OSテーマの追加アイコンパック

EasyStroke

マウスジェスチャーソフト
多ボタンマウスの戻るボタンなどがLinuxでは効かない場合などがあるため特定のキーストロークと対応付ける

image.png

PreferenceよりAdditional ButtonでButton8, Button9を追加ボタンとして追加後Actionsで上記画像のようにKey Combinationと対応付ける。

easystroke_249.png

Synergy

マウス、キーボード共有ソフト
Windows, Mac, Linux対応でインストールしたPC間でマウスとキーボードを共有出来る. LogicoolのFlowに似ているがこちらはLogicoolの製品に限定されず好きなマウスとキーボードを使える。

下の図のように配置するとマルチディスプレイのように画面端までマウスカーソルを持ってくともう片方のPCにマウスとキーボードの制御が移る
有料: $15
無線LAN内で接続することも可能だがラグいので有線でスイッチに接続するか、クロスケーブルで直接PC同士接続してインターフェースにIPアドレスを割り振るとほぼラグなしで操作出来る

image.png

WebCatalog

image

Webベースのアプリをデスクトップアプリ化出来る。
ChatWorkなどは公式でLinuxクライアントが存在しないためこれを使っている