Last active
September 7, 2021 19:09
-
-
Save gmemstr/f3f3031d4603b6a72472414591f5af3c to your computer and use it in GitHub Desktop.
guix example configuration extracted from the livecd
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; This is an operating system configuration template | |
;; for a "bare bones" setup, with no X11 display server. | |
(use-modules (gnu)) | |
(use-service-modules networking ssh) | |
(use-package-modules screen ssh) | |
(operating-system | |
(host-name "komputilo") | |
(timezone "Europe/Berlin") | |
(locale "en_US.utf8") | |
;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the | |
;; target hard disk, and "my-root" is the label of the target | |
;; root file system. | |
(bootloader (bootloader-configuration | |
(bootloader grub-bootloader) | |
(targets '("/dev/sdX")))) | |
(file-systems (cons (file-system | |
(device (file-system-label "my-root")) | |
(mount-point "/") | |
(type "ext4")) | |
%base-file-systems)) | |
;; This is where user accounts are specified. The "root" | |
;; account is implicit, and is initially created with the | |
;; empty password. | |
(users (cons (user-account | |
(name "alice") | |
(comment "Bob's sister") | |
(group "users") | |
;; Adding the account to the "wheel" group | |
;; makes it a sudoer. Adding it to "audio" | |
;; and "video" allows the user to play sound | |
;; and access the webcam. | |
(supplementary-groups '("wheel" | |
"audio" "video"))) | |
%base-user-accounts)) | |
;; Globally-installed packages. | |
(packages (cons screen %base-packages)) | |
;; Add services to the baseline: a DHCP client and | |
;; an SSH server. | |
(services (append (list (service dhcp-client-service-type) | |
(service openssh-service-type | |
(openssh-configuration | |
(openssh openssh-sans-x) | |
(port-number 2222)))) | |
%base-services))) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; This is an operating system configuration template | |
;; for a "bare bones" setup on BeagleBone Black board. | |
(use-modules (gnu) (gnu bootloader u-boot)) | |
(use-service-modules networking) | |
(use-package-modules bootloaders screen ssh) | |
(operating-system | |
(host-name "komputilo") | |
(timezone "Europe/Berlin") | |
(locale "en_US.utf8") | |
;; Assuming /dev/mmcblk1 is the eMMC, and "my-root" is | |
;; the label of the target root file system. | |
(bootloader (bootloader-configuration | |
(bootloader u-boot-beaglebone-black-bootloader) | |
(targets '("/dev/mmcblk1")))) | |
;; This module is required to mount the SD card. | |
(initrd-modules (cons "omap_hsmmc" %base-initrd-modules)) | |
(file-systems (cons (file-system | |
(device (file-system-label "my-root")) | |
(mount-point "/") | |
(type "ext4")) | |
%base-file-systems)) | |
;; This is where user accounts are specified. The "root" | |
;; account is implicit, and is initially created with the | |
;; empty password. | |
(users (cons (user-account | |
(name "alice") | |
(comment "Bob's sister") | |
(group "users") | |
;; Adding the account to the "wheel" group | |
;; makes it a sudoer. Adding it to "audio" | |
;; and "video" allows the user to play sound | |
;; and access the webcam. | |
(supplementary-groups '("wheel" | |
"audio" "video"))) | |
%base-user-accounts)) | |
;; Globally-installed packages. | |
(packages (append (list screen openssh) %base-packages)) | |
(services (append (list (service dhcp-client-service-type) | |
;; mingetty does not work on serial lines. | |
;; Use agetty with board-specific serial parameters. | |
(agetty-service | |
(agetty-configuration | |
(extra-options '("-L")) | |
(baud-rate "115200") | |
(term "vt100") | |
(tty "ttyO0")))) | |
%base-services))) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; This is an operating system configuration template | |
;; for a "desktop" setup with GNOME and Xfce where the | |
;; root partition is encrypted with LUKS. | |
(use-modules (gnu) (gnu system nss)) | |
(use-service-modules desktop xorg) | |
(use-package-modules certs gnome) | |
(operating-system | |
(host-name "antelope") | |
(timezone "Europe/Paris") | |
(locale "en_US.utf8") | |
;; Choose US English keyboard layout. The "altgr-intl" | |
;; variant provides dead keys for accented characters. | |
(keyboard-layout (keyboard-layout "us" "altgr-intl")) | |
;; This is an operating system configuration template | |
;; for a "bare bones" setup on BeagleBone Black board. | |
(use-modules (gnu) (gnu bootloader u-boot)) | |
(use-service-modules networking) | |
(use-package-modules bootloaders screen ssh) | |
(operating-system | |
(host-name "komputilo") | |
(timezone "Europe/Berlin") | |
(locale "en_US.utf8") | |
;; Assuming /dev/mmcblk1 is the eMMC, and "my-root" is | |
;; the label of the target root file system. | |
(bootloader (bootloader-configuration | |
(bootloader u-boot-beaglebone-black-bootloader) | |
(targets '("/dev/mmcblk1")))) | |
;; This module is required to mount the SD card. | |
(initrd-modules (cons "omap_hsmmc" %base-initrd-modules)) | |
(file-systems (cons (file-system | |
(device (file-system-label "my-root")) | |
(mount-point "/") | |
(type "ext4")) | |
%base-file-systems)) | |
;; This is where user accounts are specified. The "root" | |
;; account is implicit, and is initially created with the | |
;; empty password. | |
(users (cons (user-account | |
(name "alice") | |
(comment "Bob's sister") | |
(group "users") | |
;; Adding the account to the "wheel" group | |
;; makes it a sudoer. Adding it to "audio" | |
;; and "video" allows the user to play sound | |
;; and access the webcam. | |
(supplementary-groups '("wheel" | |
"audio" "video"))) | |
%base-user-accounts)) | |
;; Globally-installed packages. | |
(packages (append (list screen openssh) %base-packages)) | |
(services (append (list (service dhcp-client-service-type) | |
;; mingetty does not work on serial lines. | |
;; Use agetty with board-specific serial parameters. | |
(agetty-service | |
(agetty-configuration | |
(extra-options '("-L")) | |
(baud-rate "115200") | |
(term "vt100") | |
(tty "ttyO0")))) | |
%base-services))) | |
;; Use the UEFI variant of GRUB with the EFI System | |
;; Partition mounted on /boot/efi. | |
(bootloader (bootloader-configuration | |
(bootloader grub-efi-bootloader) | |
(targets '("/boot/efi")) | |
(keyboard-layout keyboard-layout))) | |
;; Specify a mapped device for the encrypted root partition. | |
;; The UUID is that returned by 'cryptsetup luksUUID'. | |
(mapped-devices | |
(list (mapped-device | |
(source (uuid "12345678-1234-1234-1234-123456789abc")) | |
(target "my-root") | |
(type luks-device-mapping)))) | |
(file-systems (append | |
(list (file-system | |
(device (file-system-label "my-root")) | |
(mount-point "/") | |
(type "ext4") | |
(dependencies mapped-devices)) | |
(file-system | |
(device (uuid "1234-ABCD" 'fat)) | |
(mount-point "/boot/efi") | |
(type "vfat"))) | |
%base-file-systems)) | |
;; Create user `bob' with `alice' as its initial password. | |
(users (cons (user-account | |
(name "bob") | |
(comment "Alice's brother") | |
(password (crypt "alice" "$6$abc")) | |
(group "users") | |
(supplementary-groups '("wheel" "netdev" | |
"audio" "video"))) | |
%base-user-accounts)) | |
;; This is where we specify system-wide packages. | |
(packages (append (list | |
;; for HTTPS access | |
nss-certs | |
;; for user mounts | |
gvfs) | |
%base-packages)) | |
;; Add GNOME and Xfce---we can choose at the log-in screen | |
;; by clicking the gear. Use the "desktop" services, which | |
;; include the X11 log-in service, networking with | |
;; NetworkManager, and more. | |
(services (append (list (service gnome-desktop-service-type) | |
(service xfce-desktop-service-type) | |
(set-xorg-configuration | |
(xorg-configuration | |
(keyboard-layout keyboard-layout)))) | |
%desktop-services)) | |
;; Allow resolution of '.local' host names with mDNS. | |
(name-service-switch %mdns-host-lookup-nss)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; This is an operating system configuration template | |
;; for a "desktop" setup without full-blown desktop | |
;; environments. | |
(use-modules (gnu) (gnu system nss)) | |
(use-service-modules desktop) | |
(use-package-modules bootloaders certs emacs emacs-xyz ratpoison suckless wm | |
xorg) | |
(operating-system | |
(host-name "antelope") | |
(timezone "Europe/Paris") | |
(locale "en_US.utf8") | |
;; Use the UEFI variant of GRUB with the EFI System | |
;; Partition mounted on /boot/efi. | |
(bootloader (bootloader-configuration | |
(bootloader grub-efi-bootloader) | |
(targets '("/boot/efi")))) | |
;; Assume the target root file system is labelled "my-root", | |
;; and the EFI System Partition has UUID 1234-ABCD. | |
(file-systems (append | |
(list (file-system | |
(device (file-system-label "my-root")) | |
(mount-point "/") | |
(type "ext4")) | |
(file-system | |
(device (uuid "1234-ABCD" 'fat)) | |
(mount-point "/boot/efi") | |
(type "vfat"))) | |
%base-file-systems)) | |
(users (cons (user-account | |
(name "alice") | |
(comment "Bob's sister") | |
(group "users") | |
(supplementary-groups '("wheel" "netdev" | |
"audio" "video"))) | |
%base-user-accounts)) | |
;; Add a bunch of window managers; we can choose one at | |
;; the log-in screen with F1. | |
(packages (append (list | |
;; window managers | |
ratpoison i3-wm i3status dmenu | |
emacs emacs-exwm emacs-desktop-environment | |
;; terminal emulator | |
xterm | |
;; for HTTPS access | |
nss-certs) | |
%base-packages)) | |
;; Use the "desktop" services, which include the X11 | |
;; log-in service, networking with NetworkManager, and more. | |
(services %desktop-services) | |
;; Allow resolution of '.local' host names with mDNS. | |
(name-service-switch %mdns-host-lookup-nss)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment