例によって防備録。
Ubuntu 18.04 LTSからSnapがインテグレートされた
これまでもSnapは使えたが、Ubuntu 18.04では最初から有効になっているのに加えて、command-not-foundでsnapがサポートされたことでいい感じになっている
todoroki@todoroki-VJZ13B ~> blender
Command 'blender' not found, but can be installed with:
sudo snap install blender
sudo apt install blender
See 'snap info blender' for additional versions.
ここで「snapがあるならそれで行こう」と思って sudo snap install blender
をする
で、アプリケーションはいずこ…
インストールが終わって起動してみようと思い、Superキーを押して検索してみる も blender
の名前はどこにもない。
「インストール失敗したのかな?」と考えてもう一度インストールを実行してみるも
snap "blender" is already installed, see "snap refresh --help"
と言われてしまう。
軽く調べると「Waylandのバグ」とか出てくる(※以前のバージョンで解決済み)のでログアウトしてXorgでログインし直すも特に回復しない。はて。
snapの.desktopファイルは違うディレクトリにある
もっとよく検索していくと同じような症状を訴えるzshユーザーに出会う。どうやらSnapのデスクトップファイルは他のアプリケーションと異なる場所にあるようで、そのパスがBash以外のシェルだと通っていないためapplicationsに blender
が表示されなかったということなのね。
Debian でログインシェルをzshにしている人が snappy を使う場合の注意
上のリンクでは /etc/profile.d/apps-bin-path.sh
の内容をzprofile
に移しているが、それはちょっと感があるので別の方法でやってみる
fish shellで /etc/profile
を読み込む
/etc/profile.d/apps-bin-path.sh
以外にも /etc/profile.d/
以下に大事な設定があるかもしれないわけで、全て読み込むことで対応してみる。
bassのインストール
$ fisher edc/bass
これでBashスクリプトをFishで読めるようになる。
./.config/fish/config.fish
編集
# ↓これを追加する
bass source /etc/profile
# !問題があったらこっちにするといいかも(/etc/profile.d以下だけ読み込み)
if test -d /etc/profile.d
for i in /etc/profile.d/*.sh
bass source $i
end
end
これで再ログインしてエラーが何も出ていなければsnapアプリケーションがちゃんと表示されるようになるはず。
おまけ:snap雑感
Slackとかgnome-calculatorみたいな独自UI!!!!って感じのやつは違和感なく使える。
特にElectron製アプリケーションはいいのでは。(ただElectronアプリってもともとそんなに依存とかなさそうだしsnapの旨味があるかと言われると微妙な気も)
逆にInkscapeとかはGtkのテーマが適用されないので見た目がマッチしなくて(古き良きむきだしGtkのUI)微妙でしたね。。
グローバルのテーマを拾えない問題についてはSnapもFlatpakもこまっているっぽいのでどうにかなるといいね
Gtk+4とかだとやりやすくなるのかな?期待しましょう