Ubuntu 24.04.1セットアップの過程で、アプリが数多く収録されているリポジトリから必要なパッケージだけを参照する方法を、XtraDebを例に試してみました。
XtraDeb
日頃よく使うアプリの中には、Ubuntuシステムリポジトリに収録されているバージョンが古かったり、アプリ開発側でも最新版はSnapやFlatpak、AppImageなど、サンドボックス系での提供を前提にしているものが近年特に増えてきました。
そんなアプリの最新版が数多く収録されているのが、こちらのXtraDeb。
Launchapd PPAで収録パッケージをUbuntu 24.04 Nobleでフィルタリングしてみると、計43パッケージありました。
パッケージバージョン比較
この中から、インストールしたいアプリのバージョンをUbuntuシステムリポジトリと比較してみると、
|
1 2 3 4 5 6 |
#App #XtraDeb #Ubuntu/Official --------------------------------------------- clipgrab 3.9.10 3.9.10 (AppImage) filezilla 3.67.1 3.66.5 gparted 1.6.0 1.5.0 yt-dlp 2024.08.06 2024.04.09 |
このPPAを参照すれば、各アプリの現行版をdebパッケージでインストール可能(おそらく今後の更新も)なことが分かりました。
リポジトリ内パッケージの優先付け
PPA導入に当たっての懸念は、収録されているパッケージの中にFirefoxが含まれていること(図1参照)。前回記事で記した通り、Firefoxは公式のMozilla PPAを参照しているので、バージョン如何に依らずXtraDebからはインストールしたくありません。
そんな、「PPAに収録されている一部のパッケージのみを利用したい」場合の対処法が、XtraDebのWikiページに記されていました。
上述の例を参考に、先ほどの4つのパッケージだけはXtraDebからインストールするような、リポジトリの優先順位付けを次のように設定しました。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
~$ sudo tee -a /etc/apt/preferences.d/xtradeb.pref <<EOF Package: * Pin: release o=LP-PPA-xtradeb-* Pin-Priority: -10 Package: /(clipgrab|filezilla|gparted|yt-dlp)/ Pin: release o=LP-PPA-xtradeb-* Pin-Priority: 999 EOF ~$ cat /etc/apt/preferences.d/xtradeb.pref Package: * Pin: release o=LP-PPA-xtradeb-* Pin-Priority: -10 Package: /(clipgrab|filezilla|gparted|yt-dlp)/ Package: filezilla Pin: release o=LP-PPA-xtradeb-* Pin-Priority: 999 |
リポジトリ追加
PPAの優先付けが済んだので、XtraDebリポジトリを登録します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
~$ sudo add-apt-repository ppa:xtradeb/apps PPA publishes dbgsym, you may need to include 'main/debug' component リポジトリ: 'Types: deb URIs: https://ppa.launchpadcontent.net/xtradeb/apps/ubuntu/ Suites: noble Components: main 概要: Unofficial Ubuntu application packages maintained by xtradeb. より詳しい情報: https://launchpad.net/~xtradeb/+archive/ubuntu/apps リポジトリを追加しています。 取得:14 https://ppa.launchpadcontent.net/xtradeb/apps/ubuntu noble InRelease [24.1 kB] 取得:15 https://ppa.launchpadcontent.net/xtradeb/apps/ubuntu noble/main i386 Packages [8,164 B] 取得:16 https://ppa.launchpadcontent.net/xtradeb/apps/ubuntu noble/main amd64 Packages [36.2 kB] 取得:17 https://ppa.launchpadcontent.net/xtradeb/apps/ubuntu noble/main Translation-en [25.4 kB] パッケージリストを読み込んでいます... 完了 |
優先付けが効いているのか、まずはXtraDebからインストールしたい gparted を確認。
|
1 2 3 4 |
~$ sudo apt update ~$ apt-cache policy | grep gparted gparted -> 1.6.0-1xtradeb1.2404.1 優先度 999 gparted-common -> 1.6.0-1xtradeb1.2404.1 優先度 999 |
次に、 firefox パッケージがXtraDebを向いていないことも確認。
|
1 2 3 |
~$ apt-cache policy | grep "firefox " firefox -> 1:1snap1-0ubuntu5 優先度 -1 firefox -> 130.0+build2-0ubuntu0.24.04.1~mt1 優先度 501 |
パッケージのインストール
優先付けが正しく機能しているのを確認できたので、各パッケージをインストールします。まずは gparted から。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
~$ sudo apt install gparted 以下の追加パッケージがインストールされます: gparted-common libatkmm-1.6-1v5 libcairomm-1.0-1v5 libglibmm-2.4-1t64 libgtkmm-3.0-1t64 libpangomm-1.4-1v5 libparted-fs-resize0t64 libsigc++-2.0-0v5 提案パッケージ: dmraid gpart jfsutils kpartx mtools reiser4progs reiserfsprogs udftools xfsprogs exfatprogs libparted-dev 以下のパッケージが新たにインストールされます: gparted gparted-common libatkmm-1.6-1v5 libcairomm-1.0-1v5 libglibmm-2.4-1t64 libgtkmm-3.0-1t64 libpangomm-1.4-1v5 libparted-fs-resize0t64 libsigc++-2.0-0v5 アップグレード: 0 個、新規インストール: 9 個、削除: 0 個、保留: 0 個。 3,610 kB のアーカイブを取得する必要があります。 この操作後に追加で 16.5 MB のディスク容量が消費されます。 ~$ apt list -a gparted gparted/noble,now 1.6.0-1xtradeb1.2404.1 amd64 [インストール済み] gparted/noble 1.5.0-1build4 amd64 |
続いて filezilla をインストールします。
|
1 2 3 4 5 6 7 8 9 10 11 12 |
~$ sudo apt install filezilla 以下の追加パッケージがインストールされます: filezilla-common libfilezilla-common libfilezilla45 libpugixml1v5 libwxbase3.2-1t64 libwxgtk3.2-1t64 以下のパッケージが新たにインストールされます: filezilla filezilla-common libfilezilla-common libfilezilla45 libpugixml1v5 libwxbase3.2-1t64 libwxgtk3.2-1t64 アップグレード: 0 個、新規インストール: 7 個、削除: 0 個、保留: 0 個。 10.3 MB のアーカイブを取得する必要があります。 この操作後に追加で 38.6 MB のディスク容量が消費されます。 ~$ apt list -a filezilla filezilla/noble,now 3.67.1-1xtradeb1.2404.1 amd64 [インストール済み] filezilla/noble 3.66.5-2build2 amd64 |
ちなみに、Filezillaの環境以降は ~/.filezilla/ か、 ~/.config/filezilla/ の中身をコピーするだけ。
|
1 2 3 4 5 6 7 |
~$ ls -l ~/.config/filezilla -rw-rw-r-- 1 user user 8654 Sep 9 11:31 filezilla.xml -rw-rw-r-- 1 user user 840 Sep 9 11:31 layout.xml -rw-r--r-- 1 user user 0 Sep 8 2017 lockfile -rw-r--r-- 1 user user 12288 Sep 9 11:30 queue.sqlite3 -rw-rw-r-- 1 user user 630 Jan 7 2023 recentservers.xml -rw-rw-r-- 1 user user 15741 Sep 8 2017 sitemanager.xml |
次にCLIベースのダウンローダ、 yt-dlp をインストールします。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
~$ sudo apt install yt-dlp 以下の追加パッケージがインストールされます: python3-brotli python3-mutagen python3-pycryptodome python3-websockets 提案パッケージ: python-mutagen-doc libfribidi-bin | bidiv phantomjs 以下のパッケージが新たにインストールされます: python3-brotli python3-mutagen python3-pycryptodome python3-websockets yt-dlp アップグレード: 0 個、新規インストール: 5 個、削除: 0 個、保留: 0 個。 3,622 kB のアーカイブを取得する必要があります。 この操作後に追加で 16.7 MB のディスク容量が消費されます。 ~$ which yt-dlp /usr/bin/yt-dlp ~$ yt-dlp --version 2024.08.06 |
そして yt-dlp のフロントエンドにもなるGUIベースのメディアダウンローダ、 clipgrab をインストール。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
~$ sudo apt install clipgrab 以下の追加パッケージがインストールされます: libharfbuzz-subset0 libqt5quickwidgets5 libqt5webengine-data libqt5webenginecore5 libqt5webenginewidgets5 libre2-10 以下のパッケージが新たにインストールされます: clipgrab libharfbuzz-subset0 libqt5quickwidgets5 libqt5webengine-data libqt5webenginecore5 libqt5webenginewidgets5 libre2-10 アップグレード: 0 個、新規インストール: 7 個、削除: 0 個、保留: 0 個。 51.4 MB のアーカイブを取得する必要があります。 この操作後に追加で 162 MB のディスク容量が消費されます。 ~$ which clipgrab /usr/bin/clipgrab ~$ clipgrab --version ClipGrab 3.9.10 |
以前記事にしたように、 yt-dlp が日本のTVerに対応しているので、 clipgrab からGUIベースでTVer内の動画コンテンツを海外でもダウンロードすることができます。
Ubuntu 24.04.1のセットアップも終盤、次回は多機能ターミナルソフトTerminatorのちょっとしたトラブル対処法を。






