This operating system specification for the Hurd creates a system that
supports building the guix package from git natively.
Do something like
./pre-inst-env guix system build --target=i586-pc-gnu \
gnu/system/examples/devel-hurd.tmpl
./pre-inst-env guix system image --image-type=hurd-qcow2 --image-size=15G \
--no-offload gnu/system/examples/devel-hurd.tmpl
cp /gnu/store/...disk-image devel.img
guix shell qemu -- qemu-system-i386 -enable-kvm -m 4096 \
-device rtl8139,netdev=net0 \
-netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
-hda devel-hurd.img
ssh -p 10022 root@localhost
GUIX_PROFILE=/run/current-system/bootstrap-profile
source $GUIX_PROFILE/etc/profile
mkdir -p ~/src/guix
cd src/guix
git clone git://git.savannah.gnu.org/guix
cd guix
./bootstrap
./configure --with-courage
make
* gnu/system/examples/devel-hurd.tmpl: New file.
Change-Id: I097c7c00a9ab9602db7f8f3305827c815f308d1e
* gnu/build/hurd-boot.scm (boot-hurd-system): Check for stale shepherd socket
and remove it. Be chattier about /hurd symlink replacement.
Change-Id: I5e528c131ebeadb7ebc9727336a0f9301af3e68e
This avoids hanging upon second boot and ensures a declarative /hurd and /dev.
* gnu/packages/patches/hurd-startup.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/hurd.scm (hurd): Use it.
[arguments]: In stage create-runsystem remove /dev/urandom.
Change-Id: Ifcca5562c297204735c35132820a32ca0f273677
* gnu/services/base.scm (swap-service-type): Do not include 'udev' requirement
for the Hurd. Use system* with "swapon", "swapoff" for the Hurd.
* gnu/system.scm (hurd-default-essential-services): Add swap-services.
* gnu/services/base.scm (swap-service-type):
Change-Id: I1d4d445c614921752dc84aa0dd6ff42cdbf62aa8
This allows us to use %base-services/hurd for services in a Hurd config for a
real machine without removing static-networking.
* gnu/system/hurd.scm (%base-services/hurd): Factor networking out to...
(%base-services+qemu-networking/hurd): ..this new variable.
* gnu/system/examples/bare-hurd.tmpl (%hurd-os): Use it.
* gnu/services/virtualization.scm (%hurd-vm-operating-system): Use it.
* gnu/system/images/hurd.scm (hurd-barebones-os): Use it. Add comment about
QEMU and networking for a real machine.
Change-Id: I777a63410383b9bf8b5740e4513dbc1e9fb0fd41
This supports using another than the default DISK0 PART1 and using LABEL or
UUID as root file-system specifier. It still defaults to DISK0 PART1 if
the file-system cannot be found, i.e., lives only at the build side: A
virtual machine/childhurd build.
* gnu/build/file-systems.scm (%hurd-device-spec-regexp, %device-spec-regexp):
New variables.
(device-name->hurd-device-name, hurd-device-name->device-name,
device-spec->device, device-spec->device-name): Use them in new procedures.
* gnu/bootloader/grub.scm (make-grub-configuration): Use them to remove
hardcoded partition number (root-index 1).
Change-Id: I49fa93dacc09883dfb4d695402c5eac2e0e17286
Reported by dariqq: <https://issues.guix.gnu.org/74280>.
This is a followup to commit 92910f5413.
* gnu/packages/aux-files/linux-libre/6.11-i686.conf,
gnu/packages/aux-files/linux-libre/6.11-x86_64.conf: Disable
CONFIG_DRM_I915_REPLAY_GPU_HANGS_API.
Change-Id: I345aba7b19d3e7c3e28fec2e6ed2d7bdbc2099c9
* gnu/packages/task-runners.scm (run): Update to 0.11.2. Adjust package
style by shiftin order of fields.
[arguments]: Do not install sources.
[propagated-inputs]: Remove go-github-com-tekwizely-go-parsing.
[native-inputs]: Add go-github-com-goreleaser-fileglob,
go-github-com-subosito-gotenv, and
go-github-com-tekwizely-go-parsing.
Change-Id: I02e4384aee83a3000c159e9d74fe1e94505ce9a7
* gnu/packages/golang.scm (go-github-com-subosito-gotenv): Move from
here ...
* gnu/packages/golang-xyz.scm: ... to here.
Change-Id: Ic9733d34808da599536a34b33caad88707f8ebb7
* gnu/packages/golang.scm (go-github-com-tekwizely-go-parsing): Move
from here ...
* gnu/packages/golang-xyz.scm: ... to here.
* gnu/packages/task-runners.scm: Swap imported module from golang to golang-xyz.
Change-Id: I7a1fab8a1ab457011260ce7dac7a47ecf8f83dd3
* gnu/packages/golang.scm (go-github-com-tekwizely-go-parsing)
[description]: Include a list of shipped modules.
Change-Id: Ieddaf65ec95776666846af8785a26bdd2a02d24a
* gnu/packages/golang.scm (go-github-com-fsnotify-fsnotify): Move from
here ...
* gnu/packages/golang-xyz.scm: ... to here.
Change-Id: I56f234c1dbb956f97d9d733bc9d7b5dd572830f8
It's not in use by any packages in Guix, upstream message: "This
repository has been archived by the owner on Mar 2, 2024. It is now
read-only."
* gnu/packages/golang.scm (go-github-com-emersion-go-textwrapper): Delete variable.
Change-Id: I57b382b8102d808fd153ffc9a39bb1d11ffcb8e7
* gnu/packages/golang.scm (go-github-com-emersion-go-autostart): Move
from here ...
* gnu/packages/golang-xyz.scm: .. to here.
Change-Id: Ia1a52cc0122f3a343171c698f63783265b44bed7
* gnu/packages/finance.scm (trezord): Refresh package style.
[arguments]: Use list style, do not install source.
[description]: Start from new line.
Change-Id: I96fe06e5559746196d4a99dc2fe1faf731b71253
* gnu/packages/golang.scm (go-github-com-sevlyar-go-daemon): Move from
here ...
* gnu/packages/golang-xyz.scm: ... to here.
* gnu/packages/vpn.scm: Add to used golang-xyz module.
Change-Id: I0c1084983440bb45b6621cd0b2d7ba8d30ee8ff7