Pop!_OS by System76を数ヶ月間使っていたが、何故か、ターミナルでのカーソル移動や文字編集でモタつく…なので
MX Linux KDEを使い始めた。で、snap
を使おうとすると、そのままでは使えなかったのでメモする。
インストール
snap
をsudo apt install snapd
でインストールする。
次に、sudo snap install core
をする。
systemdを有効にする
通常であれば、上記2コマンドで、他のsnap
アプリのインストールや実行が可能となるが、MX Linuxは駄目だった。
$ sudo systemctl status snapd.service
[sudo] arimasou16 のパスワード:
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: ホストが落ちています
Systemd – MX Linuxにあるとおり、GRUB画面で Advanced options… をクリックし、
MX 21.2.1 Wildflower, with Linux 5.10.0-19-amd64 (systemd)
みたいなのを選択する。
確認。
$ sudo systemctl status snapd.service
[sudo] arimasou16 のパスワード:
● snapd.service - Snap Daemon
Loaded: loaded (/lib/systemd/system/snapd.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-12-08 00:07:28 JST; 6min ago
TriggeredBy: ● snapd.socket
Main PID: 819 (snapd)
Tasks: 14 (limit: 19002)
Memory: 89.8M
CPU: 2.308s
CGroup: /system.slice/snapd.service
└─819 /usr/lib/snapd/snapd
12月 08 00:07:23 mx systemd[1]: Starting Snap Daemon...
12月 08 00:07:24 mx snapd[819]: AppArmor status: apparmor is enabled but some kernel features are missing: dbus, network
12月 08 00:07:28 mx snapd[819]: AppArmor status: apparmor is enabled but some kernel features are missing: dbus, network
12月 08 00:07:28 mx snapd[819]: overlord.go:263: Acquiring state lock file
12月 08 00:07:28 mx snapd[819]: overlord.go:268: Acquired state lock file
12月 08 00:07:28 mx snapd[819]: daemon.go:247: started snapd/2.57.6 (series 16; classic; devmode) debian/11 (amd64) linux/5.10.0-19-amd64.
12月 08 00:07:28 mx snapd[819]: daemon.go:340: adjusting startup timeout by 1m15s (pessimistic estimate of 30s plus 5s per snap)
12月 08 00:07:28 mx systemd[1]: Started Snap Daemon.
12月 08 00:07:43 mx snapd[819]: storehelpers.go:748: cannot refresh: snap has no updates available: "bare", "core", "core20", "foobar2000", "gnome-3-38-2004", "gtk-common-themes", "snapd", "w>
12月 08 00:07:43 mx snapd[819]: autorefresh.go:540: auto-refresh: all snaps are up-to-date
OK。
実行可能にする
systemd
を有効にすることでsnap
アプリ、例えば
foobar2000がインストールできるようになった。しかし、いざ実行してみようとすると、失敗する。
$ snap run foobar2000
/user.slice/user-1000.slice/session-1.scope is not a snap cgroup
Cannot launch snap applications with cgroup v2 - snapd - snapcraft.ioにあるとおりdbus-user-session
というシンプルなプロセス間メッセージングシステムをインストールする必要があるようだ。
sudo apt install dbus-user-session
して再起動する(ログアウトでは駄目だった)。
文字化け・豆腐を解消する
起動すると、文字化け、豆腐になってる… Linux Mint 18.3 : ハイレゾ音源対応 Windows ユーザーに人気の「Foobar2000」をインストール & 文字化け対策 | 221B Baker Streetに対応方法が載っているが、Windowsのフォントをコピーする方法だったので、ちょっと躊躇われる。
Wineのレジストリエディタでこのレジストリファイルを取り込む | 日暮途遠(Linux)にあるとおり、レジストリのHKEY_CURRENT_USER\Software\Wine\Fonts\Replacements
をイジれば解決するのだけど、snap
アプリのfoobar2000
内部のwine
なので、どう変更したら良いのか分からず。
Ubuntu 18.04 LTSで文字化けしたSnapアプリをなんとかして使う - 330k infoを見るとLANG=C mcomix-tabetai
というやり方をしていたので、LANG=C snap run foobar2000
で豆腐を解消した。
デスクトップアプリ(Launcher)登録
Pop!_OSやUbuntuだとインストールと同時にデスクトップファイルが作成されて、ランチャー登録されたのだけど、何故かされてないので手動で登録する。
~/.local/share/applications/foobar2000.desktop
[Desktop Entry]
Name=foobar2000
Exec=LANG=C snap run foobar2000
Icon=/home/arimasou16/snap/foobar2000/current/.local/share/icons/foobar2000.png
Type=Application
アイコンは、実際はそこにあったわけではなく、ネット上から適当に取ってきたのを置いただけである。=
エスケープは不要だった。