※随時改訂中

最近のマイトレンド MX-Linux。
それを、
コレ(Xtra-PC)に触発されて自作する為の、備忘録。

【蘊蓄1】

この USB メモリさえ刺せば、
借り物だろうと家中の PC だろうと
同一環境のMX-Linux を使える。
64bit 機ならば UEFI(例:VALUESTAR VS370/SSB)
は非セキュアブートで,
BIOS(例:ThinkPad SL500) どちらでも起動する。
 

i386 や pae なカーネルを選べば
❝理論的には❞32bit機でも実行可能。
(未検証;実機を持たないため)
但し Google Chrome は 64bit 必須のため不能かと。


【蘊蓄2】

PCのスペックに余裕があれば、
64bit fluxbox 版ぢゃなくて
64bit Plasma 版(ahs)に
IceWM を追加すると便利カモ。
(高性能機は Plasma, 低性能機は IceWM)
その場合、
fluxbox 固有部はムダとなるので飛ばす事。

 

【蘊蓄3】

いくつかの制約がある。

  1. USBの制約により、読み書きの速度はポート,メモリで低速な方に寄る。
    なるべく高速なポートに刺し、同一規格のメモリを使用する。
  2. コンピュータ名はUSBメモリに記録しているため、
    どのPCで起動しても同一名となる。
  3. ビデオカードの専用ドライバを入れないので汎用、
    ネイティブの描画速度には劣る。
    全ての PC が同一構成ならば、いらぬ心配だが。。。。
    可搬性を犠牲にして nVidiaドライバ(MXツール内) を入れるのもアリ。

【ボヤキ】

Live USB って手法もあるらしいけれど、
persistence って仕掛けがイマイチ理解できないので却下、
(全システムのメモリ展開,アップデート,個人ファイルの保存方法,etc.)
今回はわかりやすい仕組みで USB メモリを外付 SSD に見立てる。

きっと Windows でも同様に出来るだろうけれど、

PC を替えた時の問題が大きいので
安易には実行できないし、ヒトには勧められない。

  • ライセンス
  • アクティベート
  • ドライバを(自動とはいえ)インストールして再起動

【手順】
※ USB-a=/dev/sda, USB-b=/dev/sdb として進める。
  HDD/SSDが1台以上存在する場合、
 デバイス名を調査して適宜読み替える。
※『3.システム設定』 以前は root で、
 『4.ユーザ設定』は利用するユーザの権限で、
 実行・編集する。

  1. メディアの準備;OS が動いている PC にて
    1. USB-a ※ 4GB以上
      1. MX-Linux(fluxbox) のインストーラを導入。
    2. USB-b ※ USB3.0以上で16GB。8GBでは不足、32GBなら実用性アップ。
      1. GPT形式に変更。
      2. パーティションを3つ作成
        1. /dev/sdb1=bios-grub, 1007KB, non-format
        2. /dev/sdb2=esp, 7MB63MB, fat32(ディストロ1つあたり約3MBを消費する模様)
        3. /dev/sdb3=rootMX, 残りすべて, non-format(後にフォーマットされる)
      3. 正確には、下記参照
        BIOS+GPT環境でのGrub2によるブート(BIOS+UEFIの両環境対応型の手順抜粋。一部未確認)
  2. インストール
    1. UEFI な PC に2本とも刺す。
    2. USB-a で起動。
    3. USB-b にインストール。
      1. パーティションと用途
        1. /dev/sdb1:(N.C.)
        2. /dev/sdb2:/boot/efi
        3. /dev/sdb3:/ (root)
        4. grub は eps へインストール(mbr,pbrでは無い)
      2. 途中でコンピュータ名やユーザー名などを登録する。(詳細は省略)
        規定ユーザで自動ログイン(パスワードの入力を省略)する設定もアリ。
    4. USB-a を抜いて USB-b で起動。
    5. アップデート
      1. リポジトリの順序変更 (with Synaptic Package Manager)
        • debian bookworm-updates
        • debian bookworm
        • (disable) deb-src debian bookworm
        • debian bookworm-security
        • (disable) debian bookworm-backports
        • mx bookworm
        • mx bookworm ahs
        • (disable) mx bookworm test
      2. パッケージのアップグレード
        ターミナルで
        apt update
        apt -y full-upgrade && apt -y autoremove
    6. 再起動
  3. システム設定
    1. ntp クライアント
      1. MX 日付と時刻の設定 アプリ
        1. GUIで起動
        2. ネットワーク時刻 タブを開く
        3. 適用 を押す(押せない場合は無視)
        4. 閉じる
      2. 変更 /etc/chrony/sources.d/mx-datetime.source
        server ntp1.v6.mfeed.ad.jp prefer
        server ntp2.v6.mfeed.ad.jp prefer
        server ntp3.v6.mfeed.ad.jp prefer
        server ntp.jst.mfeed.ad.jp
      3. hwclock:気にせずともイイ。
        ソコソコ合っていれば、utc / jst は自動判別される模様。 
    • smb:自宅の共有フォルダに接続
      1. マウントポイントを作成
        cd /mnt
        mkdir (fuga-1)
        chmode 777 (fuga-1)
      2. 認証情報を記述
        1. ディレクトリを作成
          cd /etc/samba
          mkdir credentials
          chmod 600 credentials
        2. ファイル (hoge-1) を作成
          ※ 共有フォルダを識別できる名前とする
          username=(hoge-2)
          password=(hoge-3)
      3. /etc/fstab の最後に1行追加
        //(hoge-1)/(hoge-4) /mnt/(fuga-1) cifs credentials=/etc/samba/credentials/(hoge-1),uid=(fuga-2),gid=(fuga-3),ip=(hoge-5),charset=utf8 0 0
      4. 共有フォルダを覗けることを確認
        mount -a
        ls -al /mnt/(fuga-1)
    1. grub(BIOS用)
      1. ターミナルで;root のまま
        grub-install --target=i386-pc /dev/sdb
        BIOS+GPT環境でのGrub2によるブート(BIOS+UEFIの両環境対応型の手順抜粋。一部未確認)より)
    2. カーネル →※1
      1. liquorix
        curl -s 'https://liquorix.net/install-liquorix.sh' | bash ←必要に応じて
        apt -y install linux-headers-liquorix-amd64 linux-image-liquorix-amd64
      2. 32bit 版;必要に応じ、択一
        • apt -y install linux-headers-686:i386 linux-image-686:i386
        • apt -y install linux-headers-686-pae:i386 linux-image-686-pae:i386
    3. ime;依存するパッケージとともに
      (こだわりが無ければ fcitx5 -> fcitx で良い)
      • apt -y install fcitx5-mozc fcitx5-config-qt fcitx5-frontend-qt6 libime-bin im-config mozc-utils-gui fcitx5-frontend-gtk2 fcitx5-frontend-gtk3 fcitx5-frontend-gtk4 fcitx5-frontend-qt5
    4. plank
      1. apt -y install plank
    5. アプリ;MX Package Installer 使用
      1. ウィンドウマネージャ/IceWM
      2. ブラウザ/Google Chrome
      3. お好きなアプリ( LibreOffice など)
    6. liquorix カーネルで再起動
    7. 後処理;ターミナルは root 
      1. 古いカーネルを削除残す(新しめの kernel が不安定な時に備える)
        1. apt -y remove linux-headers-amd64 linux-image-amd64
        2. その他、※1でインストールした物を除く。
          1. Synaptic を用いて linux-headers で検索すると見つかる。
          2. 同一バージョンの linux-image が削除されなければ、明示的に削除する。
      2. apt -y autoremove
  4. ユーザ設定
    1. fluxbox;使用する場合
      1. ターミナルを開く。
      2. ~/.fluxbox ディレクトリへ移動
      3. ファイルを編集
        featherpad startup keys overlay init &
        1. startup
          1. 起動系の行は最後に" &"を付ける。
          2. tint2session, DefaultDock.mxdk をコメントアウト
          3. idesktoggle idesk on 1>/dev/null 2>&1 & をコメントアウト、
            直下に
            pcmanfm-qt --desktop &
            と記述
          4. #compton & の行をコメントじゃなくする;透過処理
          5. exec fluxbox の直前に挿入
            xset r rate 200 60
            export QT_IM_MODULE=fcitx
            export GTK_IM_MODULE=fcitx
            export XMODIFIERS=@im=fcitx
            #export DefaultIMModule=fcitx
            fcitx5 &
            mx-tweak --tray &

            plank &
            各行の意味
            1. キーリピートの変更
            2. imeの設定(1)
            3. imeの設定(2)
            4. imeの設定(3)
            5. imeの設定(4;suspend)
            6. ime 起動 (fcitx 使用時はその通りに)
            7. 明るさ調整アイコンを表示
            8. plank 起動
        2. keys
        3. overlay
        4. init
          • session.screen0.toolbar.tools:の行を消して次の通り置き換える。
            session.screen0.toolbar.button.app.label:        MX
            session.screen0.toolbar.button.app.commands:    exec rofi -show drun -theme ~/.config/rofi/themes/appfinder/mxfb-appfinder.rasi
            session.screen0.toolbar.tools:    button.rootmenu, workspacename, iconbar, systemtray, clock
          • 各パラメータを変更。
            session.screen0.toolbar.autoHide:    true
            session.screen0.toolbar.visible:    true
            session.screen0.toolbar.height:    24
            session.screen0.toolbar.widthPercent:   100
            session.screen0.strftimeFormat:    %y/%m/%d(%a)%H:%M
      4. 反映;上記リンク参照
        1. デスクトップを右クリック
        2. MX Fluxbox の最下行(終了)をポイント
        3. 終了の最上行(リフレッシュ)をクリック
    2. tint2
      1. Settings Manager / Tint2 Manager
      2. MX-Comfortable を edit 、他と被らない別名で上書き
      3. ソレだけを有効にして config
        • position:top center
        • size:24[pixels](=height:show)
        • auto hide:enable
        • show panel after:0.3[s]
        • hidden size:1[pixels](=height:hide)
        • panel layer:Top
        • maximized window:full the screen
      4. ボタンは AppFinder のみ残し、他を Dock へ移動
        (詳細は後日)
    3. AppFinder(プログラム一覧;Windows のスタートメニューに相当)
      • 編集(左下の (?) をクリック -> 編集)
        • position:north-west(左上)
        • X-Offset:24[pixels]
    4. conky(追加ファイルをパッケージ化したいなぁ)
      1. 例外作業;root で
        1. 次のファイルを /usr/local/bin へコピー
        2. conkymountpoints.sh を編集
          • memory と swap を、ループの前で他と同様に
      2. ~/.conky ディレクトリに _custom ディレクトリを作成、
        そこへコピーする。
        1. MX-antiX/MX-antiX17
          -> _custom/sysinfo-b
          :uptime, CPU & I/O speed(同高い物)
        2. MX-antiX/MX-antiX17
          -> _custom/sysinfo-a
          :H/W, OS info.(更新頻度の低い物)
        3. mountpoints (from Mabox Linux)
      3. Conky Manager ;各々の表示位置を調整
    5. IceWM
      1. IceWM でログインし直す。
      2. 文字化けしないテーマを選ぶ。
      3. $ touch ~/.icewm/startup
        $ featerpad ~/.icewm/startup &
      4. 同 内容
        #!/usr/bin/sh
        pcmanfm-qt --desktop &
    6. (KDE)Plasma
      1. 使いながら追々設定する。
        タスクバーを Windows11 ライクにするとラクかも。
  5. シャットダウン

USB-b の完成。


【重大改訂履歴】

  • 2024/03/??:カーネル,fcitx5 の導入手順をシェルコマンド化
  • 2024/03/28:~/.xinitrc 追加
  • 2024/04/14:~/.xinitrc の記述を ~/.fluxbox/startup へ移動
  • 2024/04/30:tint2, dock の停止,fluxbox チューニング & 内蔵ツールバーの復活,plank 導入
  • 2024/07/02:espの記述ミス訂正;表記,容量(小さすぎると作成不能)
  • 2025/1/6:ntpクライアント の設定手順追加(編集対象のファイルを作成する為)
  • 2025/2/5:おススメ環境を Plasma + IceWM に変更, Hybrid の情報追加
  • 2025/3/28:デスクトップの表示方法を変更、他のDEと極力統一。

【予定】

  • conky の詳細設定を追記
  • tint2 のボタン整理 + dock 修正