[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
40/40: system: examples: Add devel-hurd64.tmpl.
From: |
guix-commits |
Subject: |
40/40: system: examples: Add devel-hurd64.tmpl. |
Date: |
Tue, 12 Nov 2024 11:22:04 -0500 (EST) |
janneke pushed a commit to branch hurd-team
in repository guix.
commit 6e21691025e2b9a3284e5be628779b6838bcde54
Author: Janneke Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Fri Jun 5 09:18:35 2020 +0200
system: examples: Add devel-hurd64.tmpl.
This also updates comments and removes the comment about a very old
`bootstrap-profile' hack.
* gnu/system/examples/devel-hurd.tmpl (hurd-packages): New variable
(%hurd-devel-os): Use it.
* gnu/system/examples/devel-hurd64.tmpl: New file.
Change-Id: I54b6b0843f0dd635d89cca483ae43d23b20d21e8
---
gnu/system/examples/devel-hurd.tmpl | 70 ++++++++++++++---------------------
gnu/system/examples/devel-hurd64.tmpl | 65 ++++++++++++++++++++++++++++++++
2 files changed, 93 insertions(+), 42 deletions(-)
diff --git a/gnu/system/examples/devel-hurd.tmpl
b/gnu/system/examples/devel-hurd.tmpl
index 3dca0706d1..066bdfe9d8 100644
--- a/gnu/system/examples/devel-hurd.tmpl
+++ b/gnu/system/examples/devel-hurd.tmpl
@@ -3,7 +3,7 @@
;; This is an operating system configuration template for a "bare bones
;; development" setup, with no X11 display server.
-;; To build a disk image for a virtual machine, do
+;; To build a disk image for a virtual machine, do something like:
;;
;; ./pre-inst-env guix system image --image-type=hurd-qcow2 --image-size=6G \
;; --no-offload gnu/system/examples/devel-hurd.tmpl
@@ -11,41 +11,38 @@
;; You may run it like so
;;
;; cp /gnu/store/.../disk-image devel-hurd.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
-;;
-;; and use it like
+;; guix shell qemu -- qemu-system-i386 -m 4096 \
+;; --enable-kvm \
+;; --device e1000,netdev=net0 \
+;; --netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
+;; --hda devel-hurd.img
;;
;; ssh -p 10022 root@localhost
;; guix build -e '(@@ (gnu packages commencement) gnu-make-boot0)'
;;
-;; or even (if you use --image-size=3G)
+;; or even:
;;
;; guix build hello
;;
-;; Building Guix, do something like:
+;; For Guix hacking, do something like:
;;
-;; GUIX_PROFILE=/run/current-system/bootstrap-profile
-;; source $GUIX_PROFILE/etc/profile
+;; guix shell --boostrap -D guix
;; mkdir -p ~/src/guix
;; cd src/guix
;; git clone https://git.savannah.gnu.org/git/guix.git master
;; cd master
;; ./bootstrap
-;; ./configure --with-courage
+;; ./configure
;; make
+(include "bare-hurd.tmpl")
+
(use-modules (srfi srfi-1)
(ice-9 match)
- (gnu)
(gnu system hurd)
- (gnu system locale)
(guix packages)
- (guix store)
- (guix utils))
-(use-service-modules ssh virtualization)
+ (guix store))
+
(use-package-modules base compression file gawk gdb hurd less m4
package-management ssh version-control)
@@ -64,23 +61,23 @@
;; These are not essential and do not build yet.
'("graphviz" "guile-avahi" "po4a"))))
+(define hurd-packages
+ (filter-map input->package
+ (fold alist-delete (package-direct-inputs hurd)
+ ;; These are not essential, rumpkernel is very big.
+ '("dde-sources" "parted" "rumpkernel" "util-linux"
+ "texinfo"))))
+
(define %hurd-devel-os
(operating-system
- (inherit %hurd-vm-operating-system)
- (host-name "guixydevel")
+ (inherit %hurd-os)
+ (bootloader (bootloader-configuration
+ (bootloader grub-minimal-bootloader)
+ (targets '("/dev/sdX"))
+ (timeout 0)))
(timezone "Europe/Berlin")
- (file-systems (cons (file-system
- (device (file-system-label "hurd"))
- (mount-point "/")
- (type "ext2"))
- %base-file-systems))
(swap-devices (list (swap-space
(target "/swapfile"))))
- (users (cons (user-account
- (name "guix")
- (group "users")
- (supplementary-groups '("wheel")))
- %base-user-accounts))
(packages (cons*
gdb-minimal
git-minimal
@@ -89,18 +86,7 @@
openssh-sans-x
(append
guix-packages
- %base-packages/hurd)))
- (services (cons*
- (modify-services (operating-system-user-services
- %hurd-vm-operating-system)
- (openssh-service-type
- config =>
- ;; Set wide open
- (openssh-configuration
- (openssh openssh-sans-x)
- (port-number 2222)
- (permit-root-login #t)
- (allow-empty-passwords? #t)
- (password-authentication? #t))))))))
+ hurd-packages
+ %base-packages/hurd)))))
%hurd-devel-os
diff --git a/gnu/system/examples/devel-hurd64.tmpl
b/gnu/system/examples/devel-hurd64.tmpl
new file mode 100644
index 0000000000..ebc9fe8138
--- /dev/null
+++ b/gnu/system/examples/devel-hurd64.tmpl
@@ -0,0 +1,65 @@
+;; -*-scheme-*-
+
+;; This is an operating system configuration template
+;; for a "bare bones" QEMU setup, with no X11 display server.
+
+;; To build a disk image for a virtual machine, do:
+;;
+;; ./pre-inst-env guix system image --image-type=hurd-qcow2 --image-size=6G \
+;; --no-offload gnu/system/examples/devel-hurd64.tmpl
+;;
+;; You may run it like so:
+;;
+;; cp /gnu/store/.../disk-image devel-hurd.img
+;; guix shell qemu@7 -- qemu-system-x86_64 -m 4096 \
+;; --machine q35 \
+;; --enable-kvm \
+;; --device e1000,netdev=net0 \
+;; --netdev user,id=net0,hostfwd=tcp:127.0.0.1:10022-:2222 \
+;; --hda devel-hurd.img
+;;
+;; and use it like:
+;;
+;; ssh -p 10022 root@localhost
+;; guix build -e '(@@ (gnu packages commencement) gnu-make-boot0)'
+;;
+;; or even:
+;;
+;; guix build hello
+;;
+;; For Guix hacking, do something like:
+;;
+;; guix shell --boostrap -D guix
+;; mkdir -p ~/src/guix
+;; cd src/guix
+;; git clone git clone git://git.savannah.gnu.org/guix
+;; cd master
+;; ./bootstrap
+;; ./configure
+;; make
+
+(include "devel-hurd.tmpl")
+(include "bare-hurd64.tmpl")
+
+(define %hurd64-devel-os
+ (operating-system
+ (inherit %hurd64-os)
+ (bootloader (bootloader-configuration
+ (bootloader grub-minimal-bootloader)
+ (targets '("/dev/sdX"))
+ (timeout 0)))
+ (timezone "Europe/Berlin")
+ (swap-devices (list (swap-space
+ (target "/swapfile"))))
+ (packages (cons*
+ gdb-minimal
+ git-minimal
+ gnu-make
+ m4
+ openssh-sans-x
+ (append
+ guix-packages
+ hurd-packages
+ %base-packages/hurd)))))
+
+%hurd64-devel-os
- 11/40: gnu: libxcrypt: Support the 64bit Hurd., (continued)
- 11/40: gnu: libxcrypt: Support the 64bit Hurd., guix-commits, 2024/11/12
- 12/40: gnu: libstdc++: Support the 64bit Hurd., guix-commits, 2024/11/12
- 17/40: gnu: libgcrypt: Use libgpg-error-1.50 for the 64bit Hurd., guix-commits, 2024/11/12
- 21/40: gnu: libpciaccess: Support the 64bit Hurd., guix-commits, 2024/11/12
- 23/40: gnu: netdde: Support the 64bit Hurd., guix-commits, 2024/11/12
- 24/40: gnu: rumpkernel: Update to f1ffd6405f225336e595a0f99f01095ed7438337., guix-commits, 2024/11/12
- 26/40: gnu: hurd: Build fixes for the 64bit Hurd., guix-commits, 2024/11/12
- 32/40: gnu: commencement: gnumach-headers-boot0: Update to 1.8+git20240714., guix-commits, 2024/11/12
- 35/40: gnu: commencement: libstdc++-boot0-gcc7: Replace by make-libstdc++-boot0., guix-commits, 2024/11/12
- 39/40: system: examples: Add bare-hurd64.tmpl., guix-commits, 2024/11/12
- 40/40: system: examples: Add devel-hurd64.tmpl.,
guix-commits <=