他のディストリビューションと一緒にGuix System Distribution(またはGuixSDまたはGuixのみ)をインストールしたいと思います。問題は、Guixが無料ではなくRealtekドライバを認識していないため、WiFiを使用できないことです。イーサネット経由でGuixをインストールすることはできますが、非常に不安定なので、既存のDebian(buster)インストールと一緒にインストールしてNonguixチャンネルを追加し、ドライバをインストールしようとしています。問題は、私が何をすべきかわからないということです。
私はDebianにGuixをインストールし、いくつかのパッケージをインストールし、GuixSDをルートディレクトリにバインドするか(少なくともNixOSが実行するものであり、Guixに触発されました)、ISOにchrootingを含むものが含まれていると確信しています。
可能なすべての助けをいただきありがとうございます。
システムメッセージ
# neofetch # some info was filtered
root@deblugo
---------------
OS: Debian GNU/Linux 10 (buster) x86_64
Host: HP Notebook
Kernel: 4.19.0-16-amd64
Packages: 1624 (dpkg)
Shell: bash 5.0.3
CPU: Intel Celeron N3060 (2) @ 2.480GHz
GPU: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx
Memory: 1931MiB / 3803MiB
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
# uname -a
Linux deblugo 4.19.0-16-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 GNU/Linux
# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
答え1
Debian にインストール
GNU Guixリファレンスマニュアルでは、2 設置:
ノート これを使用することをお勧めしますシェルインストーラスクリプト実行中のGNU / LinuxシステムにGuixをインストールします。海外発売。このスクリプトはGuixを自動的にダウンロード、インストール、および初期設定します。 rootユーザーとして実行する必要があります。
以下は、bash
Debian BusterにGuixをインストールする1行のコマンドです。
bash <(wget -qO- https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh)
非GUIXチャンネルのインストール
以下で修正されたディレクティブNonguixプロジェクトページ:
Nonguixは次のようにインストールできます。GuixChannel。これを行うには、次の場所に追加してください~/.config/guix/channels.scm
。
(cons* (channel
(name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix")
;; Enable signature verification:
(introduction
(make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
%default-channels)
それからguix pull
。
無料でないファームウェアとドライバを使用する
標準のLinuxカーネルとフリーファームウェアを含むGuixシステムを使用するには、オペレーティングシステム定義のカーネルとファームウェアフィールドを編集してくださいconfig.scm
。
;; Import nonfree linux module.
(use-modules (nongnu packages linux)
(nongnu system linux-initrd))
(operating-system
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
...
)
Realtekネットワークデバイス用のファームウェアのみが必要な場合は、より小さなファームウェアパッケージを使用してディスク容量を節約できます。
(firmware (cons* iwlwifi-firmware
%base-firmware))
もちろん、sudo guix system reconfigure /etc/config.scm
設定を適用するには実行してください。
ガイドライン
言うように、公式のGuixインストールイメージはあなたのハードウェアには利用できません。
guix system image --image-size=7.2GiB /path/to/this/channel/nongnu/system/install.scm
以下のようにguix pull
Nonguixパッケージの説明をダウンロードするには実行する必要があります。これを正常に実行するには、USBサムドライブに空き容量が必要です。上記の--image-size
オプションを使用すると、画像サイズを指定して空き領域を割り当てることができます。提供される値は純粋に指標にすぎず、明らかにサムドライブの容量によって異なります。
その後、次のコマンドを使用して結果のディスクイメージをUSBサムドライブに書き込むことができます。
ノート |
---|
この例では、Linuxでサムドライブを/dev/sdb 。 |
dd if=/path/to/disk-image of=/dev/sdb bs=4M status=progress oflag=sync
上記の方法で作成されたインストールメディアは、チャンネル仕様を自動的に設定しません。 Nonguixを「手動で」追加し、/etc/guix/channels.scm
Guixguix pull
がNonguixスキームライブラリを認識するように実行する必要があります。以下は、チャンネル仕様にNonguixを含めるGuileソリューションのコードです。
(use-modules (ice-9 pretty-print))
(with-output-to-file "/etc/guix/channels.scm"
(lambda _
(pretty-print
'(cons*
(channel (name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix"))
%default-channels))))
で述べたように82号、Realtekネットワーク機器用のモジュールが含まれていますkernel-linux-5.11
。
ファームウェアファイルは
realtek-firmware
パッケージ内になければなりませんlinux-firmware
。しかし、私の考えでは、私たちはそのモジュールを作成する必要があると思いますRTW88
。だから私たちはそれCONFIG_RTW88=m
に設定する必要がありますupstream guix gnu/packages/aux-files/linux-libre/5.10-x86_64.conf
。 [なぜ]これで、kernel linux-5.11
この特定のモジュールはデフォルトで有効になっているはずです。