Bootable aarch64 image pipeline: cross-build efi-raw image from rpi4.scm (nonguix linux 6.17 + firmware subsets), inject the Pi boot chain (start4.elf, u-boot distro boot, DTB, extlinux.conf) with prepare-rpi-image.sh. Includes host setup and pitfalls docs, OpenWrt userland package drafts, and the project plans.
49 lines
1.6 KiB
Scheme
49 lines
1.6 KiB
Scheme
;; Minimal Guix system prototype for the GL-MT6000 project.
|
|
;; Phase 1 target: qemu-system-aarch64 -M virt (AAVMF/EFI boot).
|
|
;; Phase 3 target: same config with a MT7986-capable kernel, eMMC boot.
|
|
|
|
(use-modules (gnu) (gnu system))
|
|
(use-service-modules admin networking ssh)
|
|
|
|
(operating-system
|
|
(host-name "guix-mt6000")
|
|
(hashed-root-password (plain "guix"))
|
|
(timezone "Etc/UTC")
|
|
(locale "en_US.utf8")
|
|
|
|
(kernel-arguments (list "console=ttyAMA0"))
|
|
|
|
(bootloader (bootloader-configuration
|
|
(bootloader grub-efi-bootloader)
|
|
(targets (list "/dev/vda"))
|
|
(terminal-outputs '(console))))
|
|
|
|
(file-systems (cons (file-system
|
|
(mount-point "/")
|
|
(device (file-system-label "guix-root"))
|
|
(type "ext4"))
|
|
%base-file-systems))
|
|
|
|
(swap-devices '())
|
|
|
|
(users (cons (user-account
|
|
(name "router")
|
|
(group "users")
|
|
(supplementary-groups '("wheel")))
|
|
%base-user-accounts))
|
|
|
|
;; Keep it lean: only what the OpenWrt-userland prototype needs.
|
|
(packages (append (list iproute iputils)
|
|
%base-packages))
|
|
|
|
(services (cons*
|
|
(service openssh-service-type
|
|
(openssh-configuration
|
|
(permit-root-login #t)
|
|
(password-authentication? #t)))
|
|
;; Placeholder for the future ubusd/netifd shepherd services.
|
|
(service agetty-service-type
|
|
(agetty-configuration
|
|
(terminals (list (tty "ttyAMA0")))))
|
|
%base-services)))
|