LoginSignup
0
1

More than 1 year has passed since last update.

ChromebookのランチャーからJupyter Notebookを起動できるようにする方法

Posted at

はじめに

 ChromebookでLinuxモードを有効にした場合、Linux内の /usr/share/applications/ にデスクトップエントリファイル(.desktop)を保存すれば、ホスト側(ChromeOS)のランチャーにLinuxアプリを表示できるように Garcon daemon が動作しています。
 ところが、Anaconda3 の jupyter-notebook のデスクトップエントリ(notebook.desktop)を登録して、ランチャーから実行するとシェルフに表示されたアイコンが永遠とローディング状態となり一度本体をシャットダウンしないと2回目の起動ができないという問題が発生しました。

image.png

実行環境

機種 Chromebook 3100 2-in-1
CPU Intel(R) Celeron(R) N4020 CPU @ 1.1 GHz x 2
MemTotal 3,897,296 kB
ChromeOS Google Chrome OS ver.93.0.4577.107(64 bit)
LinuxOS Debian GNU/Linux 10.11
Anaconda3 ver. 2021.05-Linux-x86_64

対処方法

 今回は xfce4-terminal を経由することで問題を回避しました。Anaconda3 を /opt 以下にインストールした場合の notebook.desktop の修正例を下に示します。これをデスクトップエントリとして登録すると、ランチャーから xfce4-terminal を立ち上げると同時に jupyter-notebook を起動します。Notebook を終了すれば xfce4-terminal も自動的に終了し、逆に xfce4-terminal から Notebook を終了することも可能です。どちらにしても正常に起動・終了するようになりました。
 なお、xfce4-terminal のデスクトップエントリが存在すると正常に動作しないため、 /usr/local/share/applications/xfce4-terminal.desktop を削除するか末尾に hidden=true を追記して更新する必要があります。

/usr/share/applications/notebook.desktop
[Desktop Entry]
Version=1.0
Name=Jupyter Notebook
Comment=The Jupyter HTML Notebook.
- Exec=/opt/anaconda3/bin/jupyter-notebook
+ Exec=xfce4-terminal -e "/opt/anaconda3/bin/jupyter-notebook"
Icon=/usr/share/icons/hicolor/256x256/apps/notebook.png
Terminal=false
Type=Application

ちなみに、Linuxモードの標準ターミナルから新規ターミナルを立ち上げると同時に jupyter-notebook を起動するという方法でもローディングが永遠と続くため、標準ターミナルとは別の xfce4-terminal のようなGUIターミナルは必要と考えられます。

おまけ

 Anaconda3のインストールから jupyter-notebook のデスクトップエントリの登録までをスクリプトにしてみたので参考にして下さい。

setupAnaconda.sh
#更新・インストール
sudo apt update -y
sudo apt upgrade -y
sudo apt install -y wget xfce4-terminal
#
#install Anaconda3
ANACONDA_URL="https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh"
wget ${ANACONDA_URL} -O Anaconda.sh
sh Anaconda.sh -b -p /opt/anaconda3
rm Anaconda.sh
#
#PATHを通す
echo '
# set PATH of Anaconda3
if [ -d "/opt/anaconda3/bin" ] ; then
    export "PATH=${PATH}:/opt/anaconda3/bin"
fi' >> .profile
#
#JupyterNotebookのデスクトップエントリの登録
NOTEBOOK_ICONURL="https://icon-icons.com/downloadimage.php?id=161280&root=2667/PNG/256/&file=jupyter_app_icon_161280.png"
sudo wget ${NOTEBOOK_ICONURL} -O /usr/share/icons/hicolor/256x256/apps/notebook.png
echo "\
[Desktop Entry]
Version=1.0
Name=Jupyter Notebook
Comment=The Jupyter HTML Notebook.
Exec=xfce4-terminal -e \"/opt/anaconda3/bin/jupyter-notebook\"
Icon=/usr/share/icons/hicolor/256x256/apps/notebook.png
Terminal=false
Type=Application" | \
sudo tee /usr/share/applications/notebook.desktop
#
#xfce4-terminalのデスクトップエントリの無効化
echo "Hidden=true" | sudo tee -a /usr/share/applications/xfce4-terminal.desktop
#
#デスクトップエントリの更新
sudo update-desktop-database
#
#終了
echo "
=-------------=
| F I N I S H |
=-------------="
rm setupAnaconda.sh
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1