新しいGuixリリースが少し前に出ました。そして、bootstrap glibc、gcc、およびguixをHURDとMachに接続できれば、Linux以外のGNUシステムを使用できると思いました。しかし、また、bash、emacs、binutils、coreutils、initシステムなどのソフトウェアも必要です。これらのいずれかにLinuxに依存するシステム呼び出しがありますか?LFSのように実行できますか?
[更新]最近、Fosdemで、GuixをHurdに移植することについて講演しました。こちらで確認できます。 guix_to_hurd_fosdem_16
私はGuixHurdポートに取り組んでいる人です。 HurdでGuixを実際に使用するには、GNU/Hurdシステムをサポートするために、Guixブートストラッププロセスを最初に変更する必要があります。つまり、Guixは、ハードバージョンのglibc、Gnumach、およびHurdをクロスビルドできる必要があります。
この部分が完了したら、新しいglibcを使用してブートストラップツールチェーンを構築し、ブートストラップバイナリを生成する必要があります。この時点で、新しく構築されたバイナリをGNU/Hurdシステムにコピーし、そのシステムでGuixを構築するために使用する必要があります。
数年前、私はGNU/Hurdベースのディストリビューションを最初から作成しました。グーグルBee GNU/Hurdでまだそれについて見つけることができます。
すべての公式GNUソフトウェア(あなたが言及したパッケージを含む)はHurdをサポートするはずであり、ほとんどのパッケージは実際にサポートします。しかし、HurdはLinuxのドロップイン代替品ではないことに注意してください。実際には、別のアーキテクチャ用のソフトウェアをビルドする場合(つまり、x86でarmソフトウェアをビルドする場合)とほぼ同じ方法で、すべてのパッケージをクロスコンパイルするか、ネイティブGNU/Hurdシステムからコンパイルする必要があります。
そうは言っても、次の手順に従うことをお勧めします。
Debian GNU/Hurdをどこかにインストールして(a VM OK))、それに慣れてください。
上記のシステムでGuixをビルドし、実際にパッケージを生成してインストールできることを確認します(おそらく、いくつかの変更を加える必要があります)。
Guixを変更して、作成および管理できるようにします SubHurds
この段階で、Hurdに基づく完全なGNUシステムを必要な場所でブートストラップする準備ができているはずです。後でGRUBを適切に構成する必要があります。
ハッピーハッキング!