FossaDog設定変更の備忘録

随時、変更・更新します。

## 参考サイト

- [USBメモリにFossaDogをフルーガル インストール（frugal install, 簡素なインストー
-ル）する方法](https://no-mswindows.blogspot.com/2020/09/linuxubuntu-2004-focal-fossa-lts.html?sc=1651220129813#c420922075970728002)

- [FossaDogの日本語対応](https://linux-unofficial.blogspot.com/2019/11/linuxbusterdog-ibus-ibus-busterdog.html)
  - `/etc/apt/sources.list`に関しては、Ubuntuに合わせて調整したのでシェアします。  
    ミラーサイトを日本に変更しているので、ダウンロードも速くなると思います。
    [gist](https://gist.github.com/ecormaksin/fd4abd750e0071d23b62e15862aeddb5)

## 構築手順

USBメモリを2個使う。

- 1個目(USBメモリ1): isoイメージ(FossaDog-2020-11-15_64-bit-UEFI.iso)を書き込む。isoファイルのサイズが566MBなので、2GBもあれば充分。
- 2個目(USBメモリ2): フルーガル インストール先。容量はお好みで。

1. USBメモリ1に「FossaDog-2020-11-15_64-bit-UEFI.iso」を書き込む。[balenaEtcher](https://www.balena.io/etcher/)の方が、[UNetbootin](https://unetbootin.github.io/)よりシンプルで、書き込みにかかる時間が短いようなのでオススメ。
1. USBメモリ1とUSBメモリ2をマシンに接続し、BIOSのブート設定でUSBメモリ1を1番目に設定する。また、Secure Bootをオフにする。ただし、オフにするとマシンのOSがWindowsでBitlockerを有効にしていた場合に起動しなくなる。そのため、Bitlockerを無効にするか、Windowsで使う時はSecure Bootをオンにする必要がある。
1. Fossadogが起動したら、左下のアイコンから「System Tools」-> 「GParted」をクリックする。
1. GPartedが起動したら、右上のドロップ ダウン リストから、USBメモリ2に対応するデバイスを選択する。**マシンの内蔵ドライブを指定するとデータが消えてしまうので要注意**
1. メニューの「Device」-> 「Create Partition Table...」をクリックする。
1. 「Create partition table on /dev/sd*」のダイアログで、partition table typeに`msdos`(初期値)が表示されていることを確認し、[Apply]ボタンをクリックする。
1. メニューの「Partition」-> 「New」か、左上の新規作成アイコンでパーティションを2つ作成する。
    1. 1つ目: File system: fat32, New size (MiB): 32GB未満でお好みで(USBメモリ1から後述の必要なフォルダー・ファイルをコピーするので、最低1GBは必要な模様。)
    1. 2つ目: File system: ext4, New size (MiB): 残りの容量すべて
1. 緑のチェックマーク アイコンをクリックして変更内容を確定させる。
1. fat32にしたパーティションを右クリックし、「Manage Flags」をクリックする。
1. `boot`をオンにして[Close]ボタンをクリックする。
1. Fossadogの左下のアイコンから「System Tools」-> 「FossaDog-Frugal_Install」をクリックする。
1. USBメモリ2のfat32パーティションを選択し、[Install MBR]をクリックする。
1. 「~ Select the bootloader to use: ~」の画面で`grub4dos`が選択されていることを確認して[OK]ボタンをクリックする。
1. 「Install boot loader(Grub4Dos) on **sd\***」の画面で[OK]ボタンをクリックする。
1. 「Bootloader has been installed to sd*」の画面で[OK]ボタンをクリックする。
1. USBメモリ2のext4パーティションに`fossa_dog`フォルダーを作成する。
1. USBメモリ2のfat32パーティションに作成された`menu.lst`を`menu.lst.bk`のようにリネームしてバックアップする。
1. USBメモリ1内の`boot`, `casper`, `EFI`フォルダーと`grub.cfg`, `menu.lst`を、USBメモリ2のFAT32パーティションのルートへコピーする。
1. `grub.cfg`と`menu.lst`へ後述のブロックを追加する。
1. マシンをいったんシャットダウンして、USBメモリ1は取り外し、USBメモリ2をブートの第1優先順位にする。
1. マシンを起動するとUSBメモリ2からFossadogが起動するようになる。X11.org関連のエラーでGUIが起動しなかった場合は、`linux ~`(`grub.cfg`) / `kernel ~`(`menu.lst`)の末尾に` nomodeset i915.modeset=0 nouveau.modeset=0`を追加する。([参考サイト](https://wiki.archlinux.jp/index.php/Kernel_Mode_Setting) )

### `grab.cfg`への追加ブロック(例)

```text
menuentry "FossaDog64-customized changes=/fossa_dog, save to folder" {
linux /casper/vmlinuz from=/ noauto changes=/fossa_dog
initrd /casper/initrd1.xz
}
```

### `menu.lst`への追加ブロック(例)

```text
title fossadog-customized - changes to /fossa_dog savefolder
root (hd0,0)
kernel /casper/vmlinuz from=/ noauto changes=/fossa_dog
initrd /casper/initrd1.xz
```

## rootによる自動ログインを停止する

[参考サイト](https://gist.github.com/yoggy/de9a4a6405834f52accc)

`/etc/systemd/system/getty@tty1.service` を以下のように変更する。

- 変更前

    ```text
    ExecStart=-/sbin/agetty -a root --noclear %I 38400
    ```

- 変更後

    ```text
    ExecStart=-/sbin/agetty --noclear %I 38400
    ```

## その他

- Visual Studio Codeで設定の同期を行う場合、`gnome-keyring`パッケージのインストールが必要（`sudo apt -y install gnome-keyring`）