92 lines
4.0 KiB
Scheme
92 lines
4.0 KiB
Scheme
(use-modules (fruix system freebsd)
|
|
(fruix packages freebsd))
|
|
|
|
(define phase18-source
|
|
(freebsd-source
|
|
#:name "__SOURCE_NAME__"
|
|
#:kind 'git
|
|
#:ref "__SOURCE_REF__"
|
|
#:commit "__SOURCE_COMMIT__"))
|
|
|
|
(define phase18-base
|
|
(freebsd-base
|
|
#:name "__BASE_NAME__"
|
|
#:version-label "__BASE_VERSION_LABEL__"
|
|
#:release "__BASE_RELEASE__"
|
|
#:branch "__BASE_BRANCH__"
|
|
#:source phase18-source
|
|
#:source-root "__DECLARED_SOURCE_ROOT__"
|
|
#:target "amd64"
|
|
#:target-arch "amd64"
|
|
#:kernconf "GENERIC"))
|
|
|
|
(define phase18-operating-system
|
|
(operating-system
|
|
#:host-name "fruix-freebsd"
|
|
#:freebsd-base phase18-base
|
|
#:kernel (freebsd-native-kernel-for phase18-base)
|
|
#:bootloader (freebsd-native-bootloader-for phase18-base)
|
|
#:base-packages (freebsd-native-system-packages-for phase18-base)
|
|
#:groups (list (user-group #:name "wheel" #:gid 0 #:system? #t)
|
|
(user-group #:name "sshd" #:gid 22 #:system? #t)
|
|
(user-group #:name "_dhcp" #:gid 65 #:system? #t)
|
|
(user-group #:name "operator" #:gid 1000 #:system? #f))
|
|
#:users (list (user-account #:name "root"
|
|
#:uid 0
|
|
#:group "wheel"
|
|
#:comment "Charlie &"
|
|
#:home "/root"
|
|
#:shell "/bin/sh"
|
|
#:system? #t)
|
|
(user-account #:name "sshd"
|
|
#:uid 22
|
|
#:group "sshd"
|
|
#:comment "Secure Shell Daemon"
|
|
#:home "/var/empty"
|
|
#:shell "/usr/sbin/nologin"
|
|
#:system? #t)
|
|
(user-account #:name "_dhcp"
|
|
#:uid 65
|
|
#:group "_dhcp"
|
|
#:comment "dhcp programs"
|
|
#:home "/var/empty"
|
|
#:shell "/usr/sbin/nologin"
|
|
#:system? #t)
|
|
(user-account #:name "operator"
|
|
#:uid 1000
|
|
#:group "operator"
|
|
#:supplementary-groups '("wheel")
|
|
#:comment "Fruix Operator"
|
|
#:home "/home/operator"
|
|
#:shell "/bin/sh"
|
|
#:system? #f))
|
|
#:file-systems (list (file-system #:device "/dev/gpt/fruix-root"
|
|
#:mount-point "/"
|
|
#:type "ufs"
|
|
#:options "rw"
|
|
#:needed-for-boot? #t)
|
|
(file-system #:device "devfs"
|
|
#:mount-point "/dev"
|
|
#:type "devfs"
|
|
#:options "rw"
|
|
#:needed-for-boot? #t)
|
|
(file-system #:device "tmpfs"
|
|
#:mount-point "/tmp"
|
|
#:type "tmpfs"
|
|
#:options "rw,size=64m"))
|
|
#:services '(shepherd ready-marker sshd)
|
|
#:loader-entries '(("autoboot_delay" . "1")
|
|
("boot_multicons" . "YES")
|
|
("boot_serial" . "YES")
|
|
("console" . "comconsole,vidconsole"))
|
|
#:rc-conf-entries '(("clear_tmp_enable" . "NO")
|
|
("hostid_enable" . "NO")
|
|
("sendmail_enable" . "NONE")
|
|
("sshd_enable" . "YES")
|
|
("ifconfig_xn0" . "SYNCDHCP")
|
|
("ifconfig_em0" . "SYNCDHCP")
|
|
("ifconfig_vtnet0" . "SYNCDHCP"))
|
|
#:init-mode 'freebsd-init+rc.d-shepherd
|
|
#:ready-marker "/var/lib/fruix/ready"
|
|
#:root-authorized-keys '("__ROOT_AUTHORIZED_KEY__")))
|