linux-mt6000: Nonguix linux 6.17 with ARCH_MEDIATEK and the MT7986 drivers, OpenWrt's block NVMEM provider and mac-base patches (WiFi calibration and MACs from the eMMC factory partition), bootargs-append, and OpenWrt's GL-MT6000 device tree. mt6000.scm: the Pi's OpenWrt userland on the MT6000 (lan1-5 + WiFi in br-lan, eth1 WAN). Shared pieces move to packages/router-base.scm; the Pi's system is unchanged. build-mt6000-root.sh builds the ext4 root for the rootfs partition and, with scripts/mt6000-fit.sh, the FIT that GL's U-Boot boots from the kernel partition -- for the system inside the image, whose root is the partition's UUID. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
31 lines
1.0 KiB
Scheme
31 lines
1.0 KiB
Scheme
;; Root file system for the GL-MT6000: a disk image with one ext4 partition
|
|
;; labelled "Guix" at 1 MiB. build-mt6000-root.sh cuts the partition out;
|
|
;; it is written to the `rootfs' partition (p7, 7.2 GiB), where the
|
|
;; resize-root service grows it. The kernel side is the FIT in p6
|
|
;; (scripts/mt6000-fit.sh).
|
|
;;
|
|
;; The image platform is aarch64, so Guix cross-builds from x86_64.
|
|
|
|
(use-modules (gnu image)
|
|
(gnu system image)
|
|
(guix platforms arm))
|
|
|
|
;; Evaluates mt6000.scm in this module, defining %mt6000-os.
|
|
(primitive-load (string-append (or (and=> (current-filename) dirname) ".")
|
|
"/mt6000.scm"))
|
|
|
|
(define MiB (expt 2 20))
|
|
(define GiB (expt 2 30))
|
|
|
|
(image
|
|
(name 'guix-mt6000)
|
|
(format 'disk-image)
|
|
(partition-table-type 'mbr)
|
|
(platform aarch64-linux)
|
|
(operating-system %mt6000-os)
|
|
(partitions (list (partition
|
|
(inherit root-partition)
|
|
(offset MiB)
|
|
(label "Guix")
|
|
(size (* 4 GiB))))))
|