Linuxと上手に付き合う方法

全くのLinux初心者です。生じたトラブルを備忘録がてら残していきます。

【Q4OS】.bash_profileで、ログイン時にスクリプトを自動実行する【Linux】

さて、前回ArrowsTab QH30/WにQ4OSのインストールを行ったわけですが、画面が縦方向で起動してしまう問題が発生。さらに私の個体は静電気か何かの影響でタッチスクリーンが暴走してしまう現象も発生しました。

そこで、ログイン時に画面を回転し横向きに直しタッチスクリーンを無効化するスクリプトを、ログイン時に自動で実行するよう設定します。

起動時に自動でスクリプトを実行する方法はいくつか存在します。

当初はetc/systemd/system/のフォルダ内に.serviceファイルを作成する方法を試しましたが、デスクトップユーザーの私にとって非常に難解だったので、あきらめて.bash_profileファイルの中にスクリプトを書き込む方法を取ります。

 

参考にさせていただいた記事はこちらです。

qiita.com

 

具体的な方法を記載していきます。

早速.bash_profileを作成して編集...する前に、画面を無効化する準備をします。画面の無効化には、Xinputを使って行います。参考にさせていただいた記事はこちら。

ciksiti.com

はじめに、Xinputをインストールします。

$ sudo apt install xinput

次に、システムの入出力デバイス(タッチスクリーン、マウスなど)を調べます。

$ xinput -list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Sunrex USB Keyboard Mouse id=11 [slave pointer (2)]
⎜ ↳ Goodix Capacitive TouchScreen id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Fujitsu FUJ02E3 id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ gpio-keys id=14 [slave keyboard (3)]
↳ gpio-keys id=15 [slave keyboard (3)]
↳ Goodix Capacitive TouchScreen id=16 [slave keyboard (3)]
↳ Sunrex USB Keyboard id=9 [slave keyboard (3)]
↳ Sunrex USB Keyboard Consumer Control id=10 [slave keyboard (3)]
↳ Sunrex USB Keyboard Wireless Radio Control id=12 [slave keyboard (3)]

すると、デバイスの一覧がずらずらっと出てきます。ArrowsTab QH30/Wの場合、タッチスクリーンは「Goodix Capacitive TouchScreen」という名前で割り振られたidは13のようです。

xinputでデバイスの設定をいじるときは、、idの番号を使います。タッチスクリーンの無効化するときは、ターミナルに次のコマンドを実行することで無効化できます。

$ xinput disable 13

xinputの準備ができたところで、いよいよ.bash_profileを編集していきます。

ホームフォルダ[/home/ユーザー名/]に「.bash_profile」という名前のフォルダを作成します。作成方法は、ターミナルで下記コマンドを実行します。

$ touch /home/ユーザー名/.bash_profile

そして.bash_profileにスクリプトを書いてゆきます。

今回はviエディタで書き込んでゆきます。Q4OSの場合、viエディタはインストールされていないので、インストールします。

$ sudo apt install vim

viエディタを起動し、.bash_profileを編集します。viエディタを初めて使う人は、使い方について一通り調べておきましょう。

eng-entrance.com

viディタで .bash_profileを編集します。

$ cd /home/ユーザー名/
$ vi .bash_profile

iキーを押して編集していきます。次のように書き込んで下さい。

xrandr -o right
xinput disable 13

一行目で画面の回転を行い、二行目でタッチスクリーンを無効化します。

編集がおわったら、Escキーを押してから「:wq」と打ち込むことで、保存し終了します。

これでログイン時に自動で画面が回転するはずです。