今回は、Ubuntu 18.04 LTSのセットアップの手順について残しておきます。

フォルダー名を英語に変更する

日本語Remixのイメージからubuntuをインストールした場合は、ダウンロードドキュメントのようにフォルダが日本語になってしまっている。 英語ディレクトリの方が都合が良いので、下記を実行して、英語フォルダ名に変更する。

env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update

Gnome-Tweaksの導入

gnome-tweaksは通常の設定では変更できないウィンドウや操作性に関する挙動を変更することができるGUIアプリ。 また、拡張機能を利用すれば細かい挙動を変更したり、ウィジェットを追加することができる。

sudo apt install gnome-tweaks # アプリ本体のインストール
sudo apt install gnome-shell-extensions # 拡張機能のインストール
sudo apt install -y chrome-gnome-shell # Webからインストールさせるためのアダプタ

Theme、カーソルの変更

カスタマイズ前に、以下のディレクトリを作成しておく。

mkdir ~/.themes # テーマを格納するディレクトリ
mkdir ~/.icons # カーソル、アイコンを格納するディレクトリ

下記サイトで好きなThemeを選ぶ。

Gnome Look GTK3 Themes

Gnome Look Cursors

Theme~/.themesディレクトリへ、Cursor~/.iconsディレクトリへ格納する。 Tweaksを起動している場合は、再起動後に表示される。

拡張機能のインストール

Chromeで以下のサイトに接続すると、拡張機能のインストール/有効無効が設定できる。

Gnome Extensions

インストールするには、拡張機能のページから、右上のONをクリックする。

トラックボールを快適に使用するための設定

トラックボールの右ボタン押下時にボールを回すことで前後左右にスクロールする。

この設定はトラックボール、特にMX Ergo MouseまたはM570との相性が良く、壮絶使いやすい。

/usr/share/X11/xorg.conf.d/40-libinput.confに下記を追加して再起動する。

Section "InputClass"
        Identifier  "MX Ergo Mouse"
        MatchProduct "MX Ergo Mouse"
        Driver "libinput"
        Option "ScrollMethod" "button"
        Option "ScrollButton" "3"
EndSection

MatchProductに設定する名前は、xinputで表示された名前を指定する。

フォントのインストール

Fira Codeをインストールする。

sudo apt install fonts-firacode

GPUドライバをインストール (※GPU搭載マシンのみ)

ソフトウェアとアップデートを起動し、追加のドライバータブからプロプライエタリなドライバ選択して、変更の適用ボタンをクリックする。

プロプライエタリなドライバは、メーカー(NVIDIA)によって提供されているため、ハードウェアの性能をより引き出せる。

2 in 1 PCのみ設定

画面の傾きを修正

もし2 in 1なPCを使っていて、PCの傾きと画面の表示向きが一致しない場合は、以下のスクリプトで修正ができる。 何をやっているかというと、画面の傾きを検知して通知される傾きに応じて画面の向きを強制的に変えることをしている。

下記を事前にインストールしておく必要がある。

sudo apt install iio-sensor-proxy inotify-tools

スクリプトを~/.scripts以下に配置することとする。

mkdir ~/.scripts
vi ~/.scripts/fix_screen_rotate.sh
chmod a+x ~/.scripts/fix_screen_rotate.sh

以下をコピペする。

#!/bin/sh
# Auto rotate screen based on device orientation

# Receives input from monitor-sensor (part of iio-sensor-proxy package)
# Screen orientation and launcher location is set based upon accelerometer position
# Launcher will be on the left in a landscape orientation and on the bottom in a portrait orientation
# This script should be added to startup applications for the user

# System Open
xrandr -o normal

# Clear sensor.log so it doesn't get too long over time
> sensor.log

# Launch monitor-sensor and store the output in a variable that can be parsed by the rest of the script
monitor-sensor >> sensor.log 2>&1 &

# Parse output or monitor sensor to get the new orientation whenever the log file is updated
# Possibles are: normal, bottom-up, right-up, left-up
# Light data will be ignored
while inotifywait -e modify sensor.log; do
# Read the last line that was added to the file and get the orientation
ORIENTATION=$(tail -n 1 sensor.log | grep 'orientation' | grep -oE '[^ ]+$')

# Set the actions to be taken for each possible orientation
case "$ORIENTATION" in
	normal)
		xrandr -o right ;;
	bottom-up)
		xrandr -o left ;;
	right-up)
		xrandr -o normal ;;
	left-up)
		xrandr -o inverted ;;
	esac
done

トラックパッドジェスチャーの設定

Ubuntuはデフォルトでトラックパッドジェスチャーをサポートしていないが、libinput-gesturesを利用すればMacと似たような設定を行うことはできる。

sudo apt install libinput-gestures
sudo apt install python3 python3-setuptools xdotool python3-gi libinput-tools python-gobject

git clone https://gitlab.com/cunidev/gestures
cd gestures
sudo python3 setup.py install

Superキーを押して、Gesturesと入力してアプリを起動する。

左上のボタンをクリックして、スワイプまたはピンチでトリガを設定する。 僕の環境ではピンチは認識しなかった。トラックパッドのドライバによって違うのかもしれない。

ジェスチャーによって実行するコマンドは、xdotoolで設定する。 コマンドは、予め登録済みのショートカットを実行する。

以下は僕の環境で設定しているコマンドの一例。

xdotool key Super+Up # 画面を最大化する
xdotool key Super+Left # 画面を左半分にする
xdotool key Super+Right # 画面を右半分にする
xdotool key Super+Down # 画面を小さくする

開発環境の構築に関してもいずれ記載したい。