まえがき
gnomeの拡張機能のX11Gesturesを使って、トラックパッドで三本指スライドをした際、ウインドウを切り替える仕様にしようとしたときにtoucheggが入ってなく、使えなかったです。じゃあsnapかaptで入れよう、って実行したのですが、toucheggをインストールすることはできませんでした。手動インストールを試したんですけどエラー祭りになった末たどり着けたので書き残したいと思います。
本題
早速入っていきますが、まず前提として、SnapとGnomeが入っていることが条件です。
ではまずは依存関係のインストールです
sudo apt install build-essential cmake libudev-dev libinput-dev libcairo2-dev libglib2.0-dev libx11-dev libxtst-dev libxi-dev libxrandr-dev libgtk-3-dev
次にGithubのリポジトリからtoucheggのソースを直接取得してきます。
git clone https://github.com/JoseExposito/touchegg.git
cd touchegg
次に、何故か最新版だとエラーが出てmakeなどが実行できないため、バージョンを変えます。
git checkout 2.0.14
ではビルドに入っていきます。
まずCmakeLists.txtファイルを少し書き換えます。中にあるset(SYSTEM_CONFIG_FILE_PATH "$CMAKE_INSTALL_DATAROOTDIR}
の上の行に、以下の二行を追記します。
set(CMAKE_INSTALL_FULL_SYSCONFDIR "/etc")
set(CMAKE_INSTALL_DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share")
約最後の行にpkg_get_variable(SYSTEMD_SERVICE_DIR systemd systemdsystemunitdir)
とあると思いますが、その下に以下の二行を追加してください。こちらはディレクトリを指定してサービスファイルをインストールしています
set(SYSTEMD_SERVICE_DIR "/lib/systemd/system")
message(STATUS "SYSTEMD_SERVICE_DIR=${SYSTEMD_SERVICE_DIR}")
buildフォルダを作成し、移動します。
mkdir build
cd build
ビルドシステムをひとつ上の階層にあるCMakeListsを使用し、ビルドシステムを構成します。
cmake ..
make
sudo make install #システムへのインストール
システムサービスとしての管理が可能になっているはずなので、起動、自動起動を有効化します。
systemctl --user start touchegg
systemctl enable touchegg.service
以上で終了です。私はこの工程の中で色々別の操作をしてエラーを起こしましたが、シンプルに必要なものだけをまとめたので、大丈夫だと思います。ありがとうございました。