plamo8.2x->setup memo

plamo linux 8.2x (2024-03-05版)

plamo linux歴史

比較的以前からあるディストリビューションです。元々はslackwareをベースに派生していたそうです。 パッケージシステムに気兼ねしないで色々といじれて楽しいですよ。

8.2は、リリースされていないのですが、ring serverに上がっていたplamo-8.2_x86_64_2024-03-05_usb.isoを使いました。

インストーラUSBドライブ

Rufusを使って、USBフラッシュメモリへインストールディスクを作成しました。 書き込みの際に「ISOイメージモード」で書き込みすると、grub.cfgの編集が可能です。 インストーラでトラブルになったときは助かりました。 (インストーラのカーネルパラメータを書き換えておくことができます)

Rufusで書き込んだときの設定

アップデート

plamo linuxでは、パッケージのアップデート用のコマンドが用意されています。 [→参考]

アップデートにより解消する不具合もありますので、インストールしてインターネットに繋がったらやっておくべき、、、だと思うのですが、バージョンナンバーが変わったら止めといた方が無難かも。 ( 2024年4月に、plamo8.1をクリーンインストールした直後にアップデートしたところ、起動できなくなりました。そんなわけで、リリース前のplamo8.2?を入れました。)

パッケージ管理 [参照]

インストール済みパッケージは、/var/log/packages/ 以下で確認できます。

grub2

PCが新しめのため、BIOSではなくUEFI、MBRではなくGPTのシステムです。

セットアップ

前提

  1. /dev/nvme0n1p1 : ESPパーティション
  2. /dev/nvme0n1p2 : ルートパーティション

仕組み

設定ファイルは /etc/grub.d/* と、/etc/default/grub となっています。 これらを修正して、grub-mkconfig コマンドでESPパーティションにある grub.cfg に反映させます。

grub-mkconfig は、起動可能なシステムを自動的に検知し、必要なパラメーターを取得した上で grub.cfg へ登録してくれます。

/etc/default/grub に主な設定値があるので、こちらを編集してから grub.cfg へ反映させます。

# ; /etc/default/grubを編集した後で
# mount -t vfat /dev/nvme0n1p1 /mnt/esp
# grub-mkconfig -o /mnt/esp/grub/grub.cfg

どのパーティションか調べる

grubのコマンドラインで、setコマンドで環境変数を表示することができます。

環境変数 cmdpath を読み取ります。

カーネルパラメータの追加

コンソールの解像度を800x600にする

※ /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"
...

環境設定

ユーザーの追加

# adduser

ビープ音を消す

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

pkg-configは、プログラムををソースから生成するときに必要な情報を取り出して適切なオプションを生成してくれる役割を持ちます。./configureで呼び出されていたりします。

インストールしたときに *.pcファイルが保管されており、このファイルを読み出ししています。

自分でソースからインストールしていくと、/usr/local/以下にインストールされることが多い(指定可)のですが、セットアップ直後は /usr/local/を想定しない設定になっているようです。

なので *.pcファイルのサーチパスを追加設定します。

[/etc/profile] PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export PKG_CONFIG_PATH

ldconfig

共有ライブラリのサーチパスは、/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

マウントを簡単に

CD-ROM

/etc/fstabに登録しておきます(インストール時に登録済みになってます)。

リードオンリーで /cdrom にマウントできるようにする

[fstab]
/dev/sr0 /cdrom iso9660 user,ro,noautoexec,iocharaset=utf-8 0 0

CFカードドライブ

USBカードリーダーの設定です。

  1. udevでデバイスファイルを判りやすくします(デバイス名の抽象化)
  2. fstabに設定します

udev

/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 を実行します。

fstab

/mnt にマウントポイントを作っておき、/etc/fstabに追加します。

[/etc/fstab] /dev/cfcard /mnt/cfcard vfat user,noauto,sync,fmask=133,iocharset=utf8 0 0

PerlMagick

ImageMagickのインストールで、オプションを付けます。 $ ./configure --with-perl

Firefox

ブックマークメニューがスカスカで使い辛い

カスタマイズの方法 [→参考]

  1. アドレスバーから「about:config」で設定画面を開く。警告が出るが進める。
  2. 検索エリアで「toolkit.legacyUserProfileCustomizations.stylesheets」を入力。設定窓が開く。
  3. 値を「true」に切り替える。
  4. アドレスバーから、「about:support」でトラブルシューティング情報のページを開く。
  5. ページ中に「プロファイルフォルダー」を開くボタンがある。
  6. 開いたプロファイルフォルダーに「chrome」フォルダーを作成する。
  7. chromeフォルダーに「userChrome.css」ファイルを作成する。
  8. userChrome.cssを編集する
  9. トラブルシューティング情報のページにある「起動時キャッシュを消去...」ボタンを押す。
  10. Firefoxが再起動し、編集した userChrome.css が有効になる。

使っている設定ファイルを以下に入れておきます。 ブックマークメニューの枠線を表示する等も含めて調整してみました。 (調べたことを組み合わせながら試行錯誤して作ったので色々と変なところがありますが...)

/* 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;
}

userChrome.cssを調整する方法

ブラウザーとアドオンのデバッガーを有効化して、ブラウザーツールボックスを使うと、 メニュー類に対しても開発ツールを使って色々試したりできます。 [参考]

  1. [F12]キーから、開発ツールを開きます。
  2. 開発ツールの「設定」を開きます。
  3. 「ブラウザーのアドオンのデバッガーを有効化」「リモートデバッガーを有効化」にチェックを入れます。
  4. 開発ツールをいったん閉じます
  5. メニューから、[ツール]→[ブラウザーツール]→[ブラウザーツールボックス] (ショートカットキー [Ctrl]+[Alt]+[Shift]+[i] )
  6. 「リモートデバッグ接続要求」にOKします。
別ウィンドウで開発ツールが開きます。

Sylpheed

ツリービューの行間を空ける

行間が詰まりすぎて一覧しづらいので、行間を開けてみます

~/.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"
フォントの上下の空きも影響するのですが、これはフォント毎に異なるらしく、色々なフォントを試してみるしかないようです。 (有効なフォント名を調べる方法がいまいち不明なのですが、、、)



tsushiro.s, 2003-2023.