Hyperbola GNU/Linux-libre

ハードウェアについて

Milky Way v0.3.1 セットアップ

インストールメディアの準備

  1. インストールイメージをダウンロード:Downloads [HyperWiki]
  2. 署名の檢證:Verify Live Images [HyperWiki]
  3. CD なり USB なりイメージファイルを燒く

暗號化する場合:ディスクの消去

インストール手順

  1. root@hyperiso ~ # が表示されてカーソルがチカチカしてから入力
  2. キーボードの形式を設定
    loadkeys jp106
  3. パーティションの編輯(HDD へのインストールを想定)
    cfdisk /dev/sda
    1. 既存のパーティションを全部削除(Delete)して、Free space のみにする
    2. 新規(New)に 2G(メモリの4分の1)、primary 指定で作成。Type を選擇し 82 Linux swap / Solaris へ變更
    3. 殘りのパーティションを新規(New)、primary 指定で作成。Bootable フラグを附ける
    4. Writeyes と入力 → Quit

    暗號化する場合:

    1. 既存のパーティションを全部削除(Delete)して、Free space のみにする
    2. ブート(/boot)パーティションの作成:新規(New)に 200Mprimary 指定で作成
    3. ルート(/)パーティションの作成:殘りのパーティションを新規(New)、primary 指定で作成。Bootable フラグを附ける
    4. Writeyes と入力 → Quit
  4. 暗號化する場合:
    1. ルートパーティションの暗號化
      cryptsetup -y -v luksFormat /dev/sda2
      • 確認メッセージには YES と大文字で應へる
      cryptsetup open /dev/sda2 cryptroot
      mkfs.ext4 /dev/mapper/cryptroot
      mount /dev/mapper/cryptroot /mnt
      • cryptroot は任意の文字列で構はない
    2. マッピングをチェック、ルートパーティションをマウント:
      umount /mnt
      cryptsetup close cryptroot
      cryptsetup open /dev/sda2 cryptroot
      mount /dev/mapper/cryptroot /mnt
    3. ブートパーティションのファイルシステムを作成、マウント:
      mkfs.ext4 /dev/sda1
      mkdir /mnt/boot
      mount /dev/sda1 /mnt/boot
    4. ベースシステムをインストール(以下參照)
  5. ext4 ファイルシステムを作成
    mkfs.ext4 /dev/sda2
  6. スワップを開始(スワップ領域を作成してゐないなら省略)
    mkswap /dev/sda1
    swapon /dev/sda1
  7. ルートパーティションをマウント
    mount /dev/sda2 /mnt
  8. ベースシステムをインストール
    pacstrap /mnt base
  9. fstab を生成
    genfstab -U -p /mnt >> /mnt/etc/fstab
  10. ベースシステムを設定
    arch-chroot /mnt
  11. 使用言語を設定
    1. nano /etc/locale.gen
      1. 以下をアンコメント(# を削除)
        en_US.UTF-8 UTF-8
        ja_JP.UTF-8 UTF-8
      • nanoCtrl + W (Where Is) で檢索
      • nanoAlt + W で次の一致箇所へ移動
    2. locale-gen
    3. echo LANG=en_US.UTF-8 > /etc/locale.conf
    4. export LANG=en_US.UTF-8
      • LANG=ja_JP.UTF-8 とすると、文字化けするので、コンソールでの作業中は英語のままで
  12. コンソール上でのキーボードの形式を設定
    1. nano /etc/conf.d/keymaps
      • keymap="jp106"
    2. rc-update add keymaps default
  13. 時刻(タイムゾーン)を設定
    ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
  14. ハードウェアの時計を UTC に設定
    hwclock --systohc --utc
  15. ホスト名を設定
    1. echo localhost > /etc/hostname
    2. nano /etc/hosts
      • #<ip-address>   <hostname.domain.org>   <hostname>
        127.0.0.1       localhost.localdomain   localhost localhost
        ::1             localhost.localdomain   localhost localhost
      • 名前が localhost なら多分變へなくて良し
      • hostnamehoge の場合、127.0.1.1 hoge.localdomain hoge は必要?
      • localhost でも任意の文字列でも、/etc/hosts は編輯しなくてもネットに接續できる
  16. root のパスワードを設定
    passwd
  17. 暗號化する場合:mkinitcpio の設定
    nano /etc/mkinitcpio.conf
    mkinitcpio -p linux-libre-lts
  18. GRUB をインストール
    1. pacman -S grub
    2. grub-install --target=i386-pc --recheck /dev/sda
    3. 暗號化する場合:
      nano /etc/default/grub
      • GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda2:cryptroot"
        • cryptdevice=UUID=/dev/sda2のUUID:cryptroot root=/dev/mapper/cryptroot でも可
        • UUID はベースシステム設定前に lsblk -f で確認できる
    4. grub-mkconfig -o /boot/grub/grub.cfg
      • GRUB を日本語化する場合、直前に:LANG=ja_JP.UTF-8
  19. ログアウト
    exit
  20. パーティションをアンマウント
    umount -R /mnt
  21. システムを再起動
    reboot

インストール完了、再起動後

  1. root でログイン
  2. ネットワーク接續の檢出
    rc-service dhcpcd start
  3. パッケージのデータベースを更新
    pacman -Syy
  4. パッケージをアップグレード
    pacman -Su
  5. sudo をインストール
    pacman -S sudo
  6. ユーザを追加
    useradd -m -s /bin/bash sinumade
  7. ユーザのパスワードを設定
    passwd sinumade
  8. sudo の權限を設定
    EDITOR=nano visudo
  9. ログアウト
    exit
  10. 追加したユーザでログイン
  11. ディスプレイサーバ、ディスプレイドライバをインストール
    sudo pacman -S xenocara-server
    1. xenocara-server
    2. xorg-video-intel:不要な場合も
  12. ディスプレイマネージャ、ウィンドウマネージャをインストール
    sudo pacman -S lightdm lightdm-gtk-greeter elogind i3-wm
    1. lightdm
    2. lightdm-gtk-greeter
    3. elogindlightdm の起動に必要
    4. i3-wm
  13. 汎用・日本語フォントをインストール
    sudo pacman -S noto-fonts noto-fonts-cjk
    1. noto-fonts
    2. noto-fonts-cjk
  14. 各ユーティリティをインストール
    sudo pacman -S xenocara-xinit xenocara-xmodmap xenocara-xev xenocara-xmessage \
                   xdg-user-dirs xdg-utils ntp unzip alsa-utils \
                   i3status dmenu rxvt-unicode ranger highlight mediainfo libcaca \
                   iceweasel-uxp iceweasel-uxp-l10n-ja iceweasel-uxp-ublock-origin-legacy iceweasel-uxp-no-resource-uri-leak \
                   ttf-hack
    1. xenocara-xinit:初期化プログラム(X サーバの起動)
    2. xenocara-xmodmap:キーのマッピングを變更
    3. xenocara-xevxev, 入力內容を表示
    4. xenocara-xmessage:デバッグメッセージをウィンドウで開く
    5. xdg-user-dirs:ユーザディレクトリの作成
    6. xdg-utilsxdg-open
    7. ntp:時刻の同期
    8. unzipzip の解凍
    9. alsa-utils:ALSA の調整(amixer, alsamixer
    10. i3status
    11. dmenu
    12. rxvt-unicode
    13. ranger
    14. highlight
    15. mediainfo
    16. libcacaranger で ASCII アートの畫像プレビュー
    17. iceweasel-uxp:Web ブラウザ
    18. iceweasel-uxp-l10n-jaiceweasel-uxp 言語パック(日本語)
    19. iceweasel-uxp-ublock-origin-legacy
    20. iceweasel-uxp-no-resource-uri-leak
    21. ttf-hackmonospace フォント
  15. ユーザディレクトリを追加
    xdg-user-dirs-update
  16. NTP を設定
    sudo -e /etc/ntp.conf
  17. ntpd をサービスに追加
    sudo rc-update add ntpd default
  18. ntpd を起動
    sudo rc-service ntpd start
  19. Xenocara でのキーボードの形式を設定
  20. デフォルトのディスプレイマネージャを設定
    sudo -e /etc/conf.d/display-manager
  21. ディスプレイマネージャをサービスに追加
    sudo rc-update add lightdm default
  22. ディスプレイマネージャを起動
    sudo rc-service lightdm start

ディスプレイマネージャ起動後

  1. ログイン
  2. 言語設定を修正
    1. LANG=ja_JP.UTF-8
    2. locale
    3. sudo -e /etc/locale.conf
      • LANG=ja_JP.UTF-8
    4. nano ~/.profile
      • export LANG=ja_JP.UTF-8
  3. root ログインをロック
  4. コンソールでの root ログインをロック
  5. X セッションからコンソールへのアクセス、强制終了をブロック
  6. 入力メソッドをインストール
    sudo pacman -S fcitx fcitx-mozc fcitx-configtool
    1. # 環境変数を設定
      nano ~/.pam_environment
      • GTK_IM_MODULE DEFAULT=fcitx
        QT_IM_MODULE  DEFAULT=fcitx
        XMODIFIERS    DEFAULT=@im=fcitx
    2. # 自動起動に設定
      nano ~/.xprofile
      • # 入力メソッド
        fcitx-autostart
  7. ACPI をインストール
    sudo pacman -S acpi acpid
    1. acpi:電源やバッテリの調整・管理
    2. acpidacpi の調整デーモン
  8. acpid をサービスに追加
    sudo rc-update add acpid default
  9. acpid を起動
    sudo rc-service acpid start
  10. バックライトの輝度を設定
  11. シェル(Bash)に關する設定
    nano ~/.bashrc
  12. フォントをインストール
  13. ゴミ箱を作成(ディレクトリのセットアップ
  14. 再起動
    sudo reboot
  15. ログイン後、必要なパッケージをインストール
    # ビルドに必要なパッケージ群
    sudo pacman -S --needed base-devel namcap
    # 普段遣ひ
    sudo pacman -S breeze-gtk dzen2 filezilla gufw keepassxc moc qt5ct slock xautolock xclip xdotool
    # たまに遣ふ(かも)
    sudo pacman -S at bc bleachbit clamtk easystroke gimp gnome-disk-utility krita maim nitrogen sxiv tor-lts xenocara-xrandr
  16. kakoune をインストール
    1. kakoune パッケージを Arch の公式サイトからダウンロード
    2. cd ~/Downloads && sudo pacman -U kakoune-2020.09.01-1-x86_64.pkg.tar.zst
  17. redshift をインストール(パッケージを自分で作成)
    1. 開發者のリポジトリからソースをダウンロード、解凍
    2. 事前にビルドできるか確認
      1. # 依存パッケージをインストール
        sudo pacman -S --needed gettext intltool libtool libxcb
        1. gettext
        2. intltool
        3. libtool
        4. libxcb
      2. cd ~/Downloads/redshift-1.12
        ./configure
        make
        sudo make install
    3. redshift から redish へ改名(your-freedom との衝突を囘避するため)
      mkdir -p ~/abs/redish && cd ~/abs/redish
      mv ~/Downloads/redshift-1.12 ~/abs/redish/redish-1.12 && cd redish-1.12
      find -type f -exec sed -i -e 's/redshift/redish/g' {} \;
      find -name '*redshift*' -exec rename redshift redish {} \;
      find -name '*redshift*' -exec rename redshift redish {} \; # 改名し切れなかつたら繰返す
      find -type f -exec sed -i -E 's/(github\.com\/jonls\/|jonls\.dk\/)redish/\1redshift/g' {} \;
    4. 改名後のソースを壓縮
      cd ..
      tar -zcvf redish-1.12.tar.gz redish-1.12
    5. PKGBUILD を作成
      cp /usr/share/pacman/PKGBUILD.proto ~/abs/redish/PKGBUILD
      nano PKGBUILD
      • pkgname=redish
        pkgver=1.12
        pkgrel=1
        pkgdesc="Adjusts the color temperature of your screen according to your surroundings."
        arch=('x86_64')
        url="http://jonls.dk/redshift/"
        license=('GPL3')
        depends=('libxcb')
        makedepends=('gettext' 'intltool' 'libtool')
        conflicts=('redshift')
        source=("$pkgname-$pkgver.tar.gz")
        md5sums=('SKIP')
        
        build() {
            cd "$pkgname-$pkgver"
            ./configure --prefix=/usr --enable-randr --disable-drm --disable-vidmode --disable-wingdi \
            --disable-quartz --disable-geoclue2 --disable-corelocation --disable-gui \
            --disable-ubuntu
            make
        }
        
        check() {
            cd "$pkgname-$pkgver"
            make -k check
        }
        
        package() {
            cd "$pkgname-$pkgver"
            make DESTDIR="$pkgdir/" install
        }
      • check(), package() はデフォルトのまま
      • その他は削除して構はない
      • AUR で公開されてゐる PKGBUILD が大變參考になる
    6. パッケージを作成
      makepkg
    7. パッケージを確認
      pacman -Qlp redish-1.12-1-x86_64.pkg.tar.lz
      pacman -Qip redish-1.12-1-x86_64.pkg.tar.lz
      namcap PKGBUILD
      namcap redish-1.12-1-x86_64.pkg.tar.lz
      • namcap で確認するとUnsupported compression (非對應の壓縮)と出てしまふが…… Hyperbola の仕樣かな?
    8. パッケージをインストール
      sudo pacman -U redish-1.12-1-x86_64.pkg.tar.lz
    9. 動作確認
      redish -O 2200 -b 0.8:0.8
    10. 自動起動に設定
      nano ~/.xprofile
      • # 色温度・輝度の調整
        redish -O 2200 -b 0.8:0.8
  18. オートロックを自動起動に設定
    nano ~/.xprofile

パッケージについて

Milky Way v0.3.1 に無い(2021年7月31日現在)

更新履歷

  1. 2022年2月26日:
  2. 2022年2月19日:
  3. 2022年2月6日:
  4. 2021年12月25日:
  5. 2021年9月4日:
  6. 2021年8月28日:
  7. 2021年8月21日:
  8. 2021年8月14日:
  9. 2021年8月7日:
  10. 2021年8月1日:
  11. 2021年7月31日:

メモ

  1. 2022年2月19日:

Hyperbola パッケージ(インストール候補)

pacman -S cryptsetup # 暗号化に必要; base グループには無い
pacman -S opendoas # sudo より変更
doas pacman -S xenocara-server xenocara-xinit i3-wm \
               ttf-hack \
               rxvt-unicode ranger highlight mediainfo dmenu slock i3status \
               xenocara-xmodmap xenocara-xev xenocara-xmessage xdg-user-dirs xdg-utils \
               ntp unzip lsof alsa-utils usbutils \
               firejail-lts xautolock pass pwgen dzen2 lftp moc redshift xclip xdotool \
               mutt gnupg-stable \
               utox \
               bc sxiv \
               iceweasel-uxp iceweasel-uxp-l10n-ja \
               tor torsocks privoxy
  1. Hyperbola - cryptsetup (x86_64)
  2. Hyperbola - opendoas (x86_64)
  3. Hyperbola - xenocara-server (x86_64)
  4. Hyperbola - xenocara-xinit (x86_64)
  5. Hyperbola - i3-wm (x86_64)
  6. Hyperbola - ttf-hack (any)
  7. Hyperbola - rxvt-unicode (x86_64)
  8. Hyperbola - ranger (any)
  9. Hyperbola - highlight (x86_64)
  10. Hyperbola - mediainfo (x86_64)
  11. Hyperbola - dmenu (x86_64)
  12. Hyperbola - slock (x86_64)
  13. Hyperbola - i3status (x86_64)
  14. Hyperbola - xenocara-xmodmap (x86_64)
  15. Hyperbola - xenocara-xev (x86_64)
  16. Hyperbola - xenocara-xmessage (x86_64)
  17. Hyperbola - xdg-user-dirs (x86_64)
  18. Hyperbola - xdg-utils (any)
  19. Hyperbola - ntp (x86_64)
  20. Hyperbola - unzip (x86_64)
  21. Hyperbola - lsof (x86_64)
  22. Hyperbola - alsa-utils (x86_64)
  23. Hyperbola - usbutils (x86_64)
  24. Hyperbola - lsof (x86_64)
  25. Hyperbola - firejail-lts (x86_64)
  26. Hyperbola - xautolock (x86_64)
  27. Hyperbola - pass (x86_64)
  28. Hyperbola - pwgen (x86_64)
  29. Hyperbola - dzen2 (x86_64)
  30. Hyperbola - lftp (x86_64)
  31. Hyperbola - moc (x86_64)
  32. Hyperbola - redshift (x86_64)
  33. Hyperbola - xclip (x86_64)
  34. Hyperbola - xdotool (x86_64)
  35. Hyperbola - mutt (x86_64)
  36. Hyperbola - gnupg-stable (x86_64)
  37. Hyperbola - utox (x86_64)
  38. Hyperbola - bc (x86_64)
  39. Hyperbola - sxiv (x86_64)
  40. Hyperbola - iceweasel-uxp (x86_64)
  41. Hyperbola - iceweasel-uxp-l10n-ja (any)
  42. Hyperbola - tor (x86_64)
  43. Hyperbola - torsocks (x86_64)
  44. Hyperbola - privoxy (x86_64)

Milky Way v0.4

  1. 2022年3月5日:

Milky Way v0.4 RC2

  1. 2022年2月26日:

Milky Way v0.4 RC1

  1. 2022年2月26日:

Milky Way v0.3.1

  1. 2021年9月4日: