ログイン時に特定のURLを全画面で表示するためのTips。Webフレームワークで実装したアプリケーションの操作画面を常に表示させた端末を作りたいといった用途の簡単な実装に使えると思います。どこかで使えそうなのでメモ。
必要に応じて設定画面から自動ログインの設定や自動サスペンドをOFFにしてください。
準備
必要な以下のコンポーネントをインストールします。
- gnome-tweaks
標準の設定画面で変えられない、GNOMEの細かい設定変更が出来ます。Ubuntuのほぼ必須ツール。 - chromium-browser
今回使用するブラウザ。Google Chromeのクローンというかベース。 - ice-ssb-manager
元はLinuxでクラウドブックにするためのディストリビューションPeppermintのコンポーネント。特定のURLをブラウザを開く挙動のデスクトップアプリ化を簡単に行える。
以下を実行します。chromiumはiceが依存しているので勝手に入ります。
sudo apt-add-repository ppa:peppermintos/p10-release
sudo apt update
sudo apt install -y gnome-tweak-tool ice
①開きたいWebサイトのURLをデスクトップアプリ化する
iceを起動して必要な項目を埋めていきます。最下段の実行するアプリケーションをChromiumにしておきます。
②生成されたファイルを改変する
iceでアプリを作成すると~/.local/share/applications/の下に「hogehoge.desktop」というファイルが作成されます。任意のエディタでEXEC=から始まる行の末尾に--kioskを追加してください。
--kioskオプションを使うと起動時に全画面で表示し、F11での全画面の終了等の幾つかの機能を無効化します。Chromeでも同じことが出来たはずですが、確認した限りでは出来ませんでした。
③自動起動アプリに登録する
ターミナルでgnome-tweaksを実行するかTweaksを起動し、スタートアップアプリケーションタブで先程作成したアプリを登録します。
以上で設定は完了です。起動時もしくはログイン時に全画面でブラウザが表示されるかと思います。この状態だとF11は無効化されているのでシャットダウン等別の操作をする場合にはAlt+F4を入力して一度ブラウザを落としてください。
ただし、デスクトップ環境内でブラウザを開いてるだけなので各種ショートカットは生きている等ハックし放題です。ちゃんと使うにはシステムをもっと制限してやる必要があります。
参考
もっとちゃんと実装したいと思って調べてたらこんなん出てきた。後で読む。
https://ubuntu.com/tutorials/secure-ubuntu-kiosk#1-overview