(use-modules (gnu) (guix) (guix download)) (use-service-modules networking ssh shepherd) (use-package-modules certs screen ssh tmux vim wget) (operating-system (host-name "msg") (timezone "America/Denver") (locale "en_US.utf8") (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets '("/boot/efi")) (terminal-outputs '(console)))) (file-systems (cons* (file-system (mount-point "/boot/efi") (device "/dev/vda1") (type "vfat")) (file-system (mount-point "/") (device "/dev/vda2") (type "ext4")) %base-file-systems)) (users (cons (user-account (name "admin") (group "users") (supplementary-groups '("wheel" "audio" "video"))) %base-user-accounts)) (sudoers-file (plain-file "sudoers" "root ALL=(ALL) ALL\n%wheel ALL=NOPASSWD: ALL\n")) (packages (append (list tmux nss-certs vim wget) %base-packages)) (services (append (list (service openssh-service-type) (service network-manager-service-type) (service wpa-supplicant-service-type) (simple-service 'mount-macos-overlayfs shepherd-root-service-type (list (shepherd-service (provision '(9pfs-macos)) (requirement '(user-processes)) (documentation "Mount macos 9pfs") (one-shot? #t) (start (let ((util-linux (@ (gnu packages linux) util-linux))) #~(lambda _ (system* #$(file-append util-linux "/bin/mount") "-t" "9p" "-o" "trans=virtio,cache=mmap" "macos" "/home/admin" "-oversion=9p2000.L") #f))) ))) (simple-service 'permissions-macos-overlayfs shepherd-root-service-type (list (shepherd-service (provision '(permissions-macos)) (documentation "Mount macos 9pfs") (one-shot? #t) (start (let ((util-linux (@ (gnu packages linux) util-linux))) #~(lambda _ (system* #$(file-append util-linux "chown") "-R" "admin" "/home/admin") #f))) ))) (service ntp-service-type)) %base-services)) (name-service-switch %mdns-host-lookup-nss))