LoginSignup
1
2

ubuntu-cinnamon 24.04をインストールした話

Last updated at Posted at 2024-05-01

いままでUbuntuCinnamon23.10を使っていましたが、24.04がリリースされたのでアップグレードしました。
その際のトラブルメモです。
まぁおおよそは「24.04だから起きた問題」ではないので、大して役に立つ話ではないかもしれませんが。

アップグレードと言っても、基本的に自分はubuntuの今まで使っていたバージョンは残しておいて、新しいパーティションに新規インストールするようにしています。
というのも、

  • トラブっても前の状態に戻せる
  • 一旦クリーンにしてサッパリしたい。

という意図があります。まぁ、いろいろとインストールし直す手間があるのですが、ubuntuであればaptでインストールするので大して気になりません。

というわけで、新規インストールをしてみたのですが…。

手動パーティショニングでブートローダーのインストール先が選択できない

新規インストールをすると、パーティションの設定でブートローダーのインストール先が選択できずに先に進まない!!というトラブルに会いました。

なんか、23.10でも似たような問題にあたった気がするのですが、その時はPCの入れ替えの時期だったので、ストレージがまっさらな状態だったので、インストーラで新規にパーティションを作って回避したような気がします。(あやふや)
でも、今回はまっさらにするわけにはいかないわけでして。
23.10をインストールしてあるからそのあたりは大丈夫だろう、と思っていたら、思わぬ展開でした。

とりあえず一旦新規インストールは諦めて、「do-release-upgrade -d」でアップグレードしたのですが、今後のことを考えるとこの問題は解決しておきたいなぁ、と思い、もう少し粘ってみました。

このあたりの情報によると「BIOS Boot Partition」というものが必要の模様。
これか?と思ったのですが、ふと考えるとこれってGPTパーティションでMBRパーティションと互換を持たせるためのものじゃなかったっけ?
そう思ってマザーボードの設定を見直すと、ブートモードが「UEFI」ではなくて「Legacy+UEFI」になっているじゃないですか!!
23.10で問題なく使えていたので、まさかここに問題があるとは思いませんでした。

というわけで、設定を変えて新規インストールをし直して、無事インストールすることができました。

マルチモニターでミラーリングができない。

自分の環境は通常のモニターとモバイルモニターのマルチモニターなのですが、

  • モバイルモニターは寝ながら使うものなので、並べて使うものではない。
  • 通常のモニターは、他のPCなどでも使うので、HDMI切替器を使用している。

という状態であり、ミラーリングでないと、通常モニターの出力先を切り替えると切断されたと判断されて、ウィンドウが全てモバイルモニターに移動してしまう という現象にみまわれてしまうので、ミラーリングで使用しています。

余談ですが、プライマリーモニターがデフォルトではモバイルモニターに設定されるので、なんか通常モニターに背景だけしか映らなくて困った、と思ったらモバイルモニターにウィンドウが表示されていた、という間違いがよく起きます(笑)

話を戻して、24.04にアップグレードすると、ミラーリングができなくなってしまいました。
cinnamonのせいかな、と思い、GNOMEでログインして設定すると、ミラーリングはできるのだけど解像度が落ちてしまい、これはこれで問題あり、という状態です。

もうミラーリングは諦めようか、と思っていたところ、cinnamonのディスプレイ設定を見直していると、「不明なモニター」という怪しげな第3のモニターが。

こいつがあるせいで、ミラーリングできなかったり解像度が落ちたりするのでは。
調べてみると、マルチモニターができなくなった対処としてnvidiaのドライバーを更新してみろ、というのがあったので、やってみた(やり方は忘れた)ところ、無事ミラーリングができるようになりました。

上記の通り新規インストールすると、同じ現象に見舞われました。
うわー、どうやって解決したんだっけ!?ともう一度色々とググってみて、結果的に以下のコマンドで解決できました。

sudo apt purge 'nvidia*'
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

多分、「apt purge」でパッケージを削除したのが効いたのだと思います。

追記: '24/5/9

よくよく考えてみたら、nvidiaのドライバを削除してオープンソースのドライバを使っているだけだわ、コレ。
もっとも、自分はゲームPCのお古だからgeforceカードを使っているだけで、それでも困らない、むしろミラーリングできない方が困るので、これでもいいか、と思ってますが。

ちなみに、nvidiaのドライバを入れ直したら、立ち上がらなくなりました。うーん。

自作サービスが起動しない。

まぁこれは23.10の頃からなのですが、プライベートで使っているWebアプリがあるのですが、こいつがPC立ち上げ時に起動しなくなりました。
しかし、起動後に「sudo systemctl start myservice」と実行すると、問題なく実行できる。
まぁ一応動くからいいか、と放っといたのですが、これを気にちゃんと調べようと。

sudo dmesg」を見てみると、「graphical.target」が見つからないとかなんとか。(このあたりはちょっと思えていない)
どうもディスプレイマネージャがlightdmなのが関係しているのかな、と思い、gdmに変更してみると、今度は「myservice.service」が見つからない、と。

そんなはずはない、ちゃんと/etc/systemd/systemの下にあるだろ、と思い、他のサービスを参考にしようとすると、そういえばapacheをインストールしてあるのにapacheのサービスファイルが見当たらないな、ということに気づき、調べてみると/usr/lib/systemd以下にあることがわかったので、そちらに持っていっても症状は変わりません。
(ちなみに/usr/lib/systemdにあるのは、ubuntuのパッケージによりインストールされたものなので、自分で作ったものは/etc/systemdに置くのが正しいようです。なので、元に戻しました。)

他にも違いがないか探してみると、そういえば自サービスはシンボリックリンクだったので、シンボリックリンクを削除してコピーすると、ちゃんと動くようになりました。
よくよく考えてみると、シンボリックリンクの参照先がルートとは別のパーティションだったので、マウントする前にサービスが起動されていたのかな?と思います。以前までは動いていたので、うかつだったなぁ。

pip install ができない。

まぁこれも23.10の頃からだし、自分としては困ってないのですが、22.04から移行した人は戸惑うかもしれないので、一応書いておきます。
(別に記事に書こうと前から思っていたのだけど、結局書く前に24.04がリリースされちゃった)

以前から、ubuntuでPythonのモジュールをインストールする際にpipコマンドを実行しようとすると、pipが見つからないというエラーになります。
これは、デフォルトでpipコマンドがインストールされていないためで、「python3-pip」パッケージをインストールしなければならないのですが、23.10からはたとえインストールしても「pip3 install」を実行すると、

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.
    
    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

というメッセージが出て実行できません。

要は、「pipでインストールすると、ubuntuのパッケージとごっちゃになるから、環境を壊すことになるかもしれないよ」ということだと思います。
どうすればいいかというと、

  • 上記のリスクを理解した上で、「--break-system-packages」オプションをつけて実行する。
  • pipは使わずに、aptコマンドでubuntuのパッケージのみを使用する。
  • venvを使って、個別の環境を作る。(なお、venvも「python3-venv」というパッケージをインストールする必要があります)

という選択肢になるかと思います。なお自分は、venvを使ってます。

ちなみに、自分はPython+GTKでプライベートで使うツールなどを作って使うことがあるのですが、venvにするとシステムのPyGObjectは使えなくなるので、仮想環境にPyGObjectをインストールしなければなりません。
この辺りは、公式サイトの「Getting Started」を参考に、以下のようにインストールします。

sudo apt install -y libgirepository1.0-dev build-essential libcairo2-dev python3-dev gir1.2-gtk-4.0
python3 -m pip install pycairo PyGObject

(公式ではgcc/pkg-configのみをインストールしていますが、自分の場合他の開発環境でも必要になりそうなので、build-essentialに変えました)

ALT-Tabによる切り替えのプレビューの背景

自分がcinnamonを気に入っている点の一つに、ALT-Tabでのウィンドウ切り替えの設定があります。(設定より、「ウィンドウ」→「Alt-Tab」)
特に、「Alt-Tabの切り替えスタイル」を「アイコンとウィンドウのプレビュー」にするのが好みです。
この設定だと、アクティブにするウィンドウが全面に出てくるので、わかりやすいのですよ。

で、以前はプレビューの際に背景が暗くなるので、アクティブになるウィンドウがよりわかりやすかったのですが、最近はそれが無くなっていて、ちょっと残念だなぁ…。
と思ったら、どうやらデスクトップのテーマの設定らしい。
「Yaru-olive」を使っていたのだけど、それだと背景が暗くならず、「cinnamon」だと暗くなるようです。

できれば、テーマをいじってでも設定をしたいな、と思い、具体的にどこの設定化を調べました。

まずテーマはシステムグローバルは「/usr/share/themes」、ユーザは「$HOME/.themes」に配置されます。
テーマのディレクトリには、まず「index.theme」が必要。(これがないと、設定に出てこない)
cinnamonのデスクトップの設定は、「cinnamon/cinnamon.css」に記述するようです。拡張子でわかるとおり、stylesheetの書式です。

問題のウィンドウプレビューの背景は、

.switcher-preview-backdrop { background-color: rgba(0, 0, 0, 0.5); }

で設定するようです。

snapのアプリ権限

普段deadbeefという音楽プレイヤーを使っているのでインストールしたのですが、ファイルが見れねーーー!!!?
…でも大丈夫。snapとの付き合いは少しはある自分は、こういうのはsnapのアプリの権限設定によるものだということをしていますから。
というわけで、アプリの設定、アプリの設定、…て、見つからないーーー!!?

GNOMEだと「設定」→「アプリ」で設定できるのですが、cinnamonにはありません。
しかたないので、ubuntu-desktopをインストールして、GNOMEでログインし直して、設定しました。

でも、cinnamonでも設定できないものかな。
GNOMEの設定の実行ファイルは「gnome-control-center」だとわかったので、cinnamon上で実行しようとすると、

Running gnome-control-center is only supported under GNOME and Unity, exiting

という悲しいお知らせが。

後でわかったのですが、とりあえずコマンドで snap connectionsで権限の確認、snap connect / snap disconnectで権限の設定ができるようなので、これでわざわざubuntu-desktopを入れなくても設定できる…かな?

1
2
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
1
2