比較的以前からあるディストリビューションです。元々はslackwareをベースに派生していたそうです。 パッケージシステムに気兼ねしないで色々といじれて楽しいですよ。
8.2は、リリースされていないのですが、ring serverに上がっていたplamo-8.2_x86_64_2024-03-05_usb.isoを使いました。
Rufusを使って、USBフラッシュメモリへインストールディスクを作成しました。 書き込みの際に「ISOイメージモード」で書き込みすると、grub.cfgの編集が可能です。 インストーラでトラブルになったときは助かりました。 (インストーラのカーネルパラメータを書き換えておくことができます)
Rufusで書き込んだときの設定
plamo linuxでは、パッケージのアップデート用のコマンドが用意されています。 [→参考]
アップデートにより解消する不具合もありますので、インストールしてインターネットに繋がったらやっておくべき、、、だと思うのですが、バージョンナンバーが変わったら止めといた方が無難かも。 ( 2024年4月に、plamo8.1をクリーンインストールした直後にアップデートしたところ、起動できなくなりました。そんなわけで、リリース前のplamo8.2?を入れました。)
インストール済みパッケージは、/var/log/packages/ 以下で確認できます。
PCが新しめのため、BIOSではなくUEFI、MBRではなくGPTのシステムです。
設定ファイルは /etc/grub.d/* と、/etc/default/grub となっています。 これらを修正して、grub-mkconfig コマンドでESPパーティションにある grub.cfg に反映させます。
grub-mkconfig は、起動可能なシステムを自動的に検知し、必要なパラメーターを取得した上で grub.cfg へ登録してくれます。
/etc/default/grub に主な設定値があるので、こちらを編集してから grub.cfg へ反映させます。
# ; /etc/default/grubを編集した後でgrubのコマンドラインで、setコマンドで環境変数を表示することができます。
環境変数 cmdpath を読み取ります。
※ /etc/default/grubに、GRUB_CMDLINE_LINUX_DEFAULT= の値に、"video=800x600"を追加します。
...
# Command line arguments for default linux entry
GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0 video=800x600"
...
readline ライブラリの設定ファイル(~/.inputrc, /etc/inputrc 等)を修正します。
set bell-style none
を追加します。(set bell-style XXXXX な設定があったらコメントアウトします)
plamoデフォルトのカーネルコンフィグレーションは、/boot/ に入っています。
これをコピーしてから、色々書き換えてみましょう。
# cd /usr/src/linux
# cp /boot/config-6.1.30-plamo64 ./.config
# make menuconfig
もとのままでカーネルリメイクすると、モジュール類も上書きすることになってしまいます。
インストールしたモジュールは、/lib/modules/にバージョン名称毎のディレクトリを作って格納されています。
なので、バージョン名称を変えれば別のディレクトリに格納されることになり、 リメイク前のモジュールを上書きしないで済みます。
# make menuconfig の General setup の中で EXTRAVIRSION を設定する項目があります。 これを使うと、枝番を付けたようなバージョン名称をつけることが出来ます。
コンフィグレーションが終ったらモジュールとカーネルを作ってインストールします
(# cd /usr/src/linux) # make bzImage # make modules # rm -rf /lib/modules/(version) # make modules_install # cp arch/x86/boot/bzImage (/boot/vmlinuz)
pkg-configは、プログラムををソースから生成するときに必要な情報を取り出して適切なオプションを生成してくれる役割を持ちます。./configureで呼び出されていたりします。
インストールしたときに *.pcファイルが保管されており、このファイルを読み出ししています。
自分でソースからインストールしていくと、/usr/local/以下にインストールされることが多い(指定可)のですが、セットアップ直後は /usr/local/を想定しない設定になっているようです。
なので *.pcファイルのサーチパスを追加設定します。
PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export PKG_CONFIG_PATH
共有ライブラリのサーチパスは、/etc/ld.so.conf で設定します。 ソースからセットアップする時には、/usr/local/lib にセットアップされるので、 そちらが優先されるように、サーチパスを修正しておきます。
/lib64
/usr/local/lib64
/usr/lib64
/lib
/usr/local/lib
/usr/lib
include /etc/ld.co.conf.d/*.conf
/opt/texlive/2023/lib
/etc/fstabに登録しておきます(インストール時に登録済みになってます)。
リードオンリーで /cdrom にマウントできるようにする
[fstab]
/dev/sr0 /cdrom iso9660 user,ro,noautoexec,iocharaset=utf-8 0 0
USBカードリーダーの設定です。
/etc/udev/rules.d/ の 10-local.rules(無ければ作る)に設定を追加します。
CFカードドライブにCFカードを挿すと、/dev/cfcard/というデバイスファイルが生成されます。 抜くと /dev/cfcard/ は消滅します。
# ※個別の機体に合わせて書き換える必要があります。
ACTION=="add", KERNEL=="sd[c-z][1-9]", ATTRS{model}=="Compact Flash ", SYMLINK+="cfcard"
ACTION=="remove", KERNEL=="sd[c-z][1-9]", ATTRS{model}=="Compact Flash ", SYMLINK-="cfcard"
USBカードリーダーは、SCSIドライブとして起動時に認識されているので、デバイス名は /dev/sd? となります。 従って、読み書きできる区画は /dev/sd[a-z][1-9]となるはずです。
自分とこでは、HDDを2台内臓させていて、/dev/sda, /dev/sdb となっています。 udevで変なことにならないように、念のため sda と sdb が対象外となるように /dev/sd[c-z][1-9]としておきます。
udevadm info でデバイスを特定できるものを探しました。「ATTRS{model}=="Compact Flash "」を使うことにしました。
ATTRS{????}は、幾つもの階層で定義されていますが、複数のATTRS{????}を使うときには、複数の階層にまたがって選ぶと、 ルールとしては無効になってしまいます。一つの階層から選ぶか、ATTRS{????}は一つだけ使うようにします。
/dev からudevadm info を引くときは、# udevadm info -q path -n /dev/xxx でどこを引くべきか得られるので、 # udevadm info -a -p `udevadm info -q path -n /dev/sda` とする方法もあります。
書き換えたルールの適用は、# udevadm control --reload-rules を実行します。
/mnt にマウントポイントを作っておき、/etc/fstabに追加します。
/dev/cfcard /mnt/cfcard vfat user,noauto,sync,fmask=133,iocharset=utf8 0 0
ImageMagickのインストールで、オプションを付けます。 $ ./configure --with-perl
使っている設定ファイルを以下に入れておきます。 ブックマークメニューの枠線を表示する等も含めて調整してみました。 (調べたことを組み合わせながら試行錯誤して作ったので色々と変なところがありますが...)
/* userChrome.css */
/* ドロップダウン・コンテキストメニューの調整
→ブックマークツールバーのメニュー表示の調整 */
menupopup {
margin: 0px !important;
padding: 0.2em 0px !important;
border: solid lightgrey 1px !important;
border-radius: 0 !important;
background-color: white !important;
}
menupopup > menu,
menupopup > menuitem
menupopup > menuseparator {
padding-block: 0.1em !important;
margin: 0 !important;
border-radius: 0 !important;
}
.menupopup-arrowscrollbox {
padding: 0 !important;
margin: 0 !important;
}
:root {
--arrowpanel-menuitem-padding: 0 1ex !important;
--arrowpanel-border-radius: 0 !important;
}
/* タブの高さ */
:root {
--tab-min-height: 28px !important;
}
/* タブの形 */
.tab-background {
/* box-shadow: none !important; */
margin-block: 2px !important;
border-radius: 0px !important;
}
ブラウザーとアドオンのデバッガーを有効化して、ブラウザーツールボックスを使うと、 メニュー類に対しても開発ツールを使って色々試したりできます。 [参考]
行間が詰まりすぎて一覧しづらいので、行間を開けてみます
~/.sylpheed-2.0/gtkrc (無いときは作ります) を書き換えます。
style "user-font"{
font_name="Sans Light 11"
}
widget_class "*" style "user-font"
style "tree-font" {
GtkTreeView::vertical-separator = 5
}
class "GtkTreeView" style "tree-font"
フォントの上下の空きも影響するのですが、これはフォント毎に異なるらしく、色々なフォントを試してみるしかないようです。
(有効なフォント名を調べる方法がいまいち不明なのですが、、、)