guixsd-config

GuixSD configs for my systems
Log | Files | Refs

commit fb9e9d85c6b73883d88e7989e5c19540ef8d0905
Author: vin <git@vineetk.net>
Date:   Wed, 14 Aug 2024 01:48:55 -0400

start working on guix configuration

Diffstat:
A.gitignore | 1+
Achannels.scm | 16++++++++++++++++
Asystem.scm | 89+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 106 insertions(+), 0 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -0,0 +1 @@ +current diff --git a/channels.scm b/channels.scm @@ -0,0 +1,16 @@ +(list (channel + (name 'guix) + (url "https://git.savannah.gnu.org/git/guix.git") + (introduction + (make-channel-introduction + "9edb3f66fd807b096b48283debdcddccfea34bad" + (openpgp-fingerprint + "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))) + (channel + (name 'nonguix) + (url "https://gitlab.com/nonguix/nonguix") + (introduction + (make-channel-introduction + "897c1a470da759236cc11798f4e0a5f7d4d59fbc" + (openpgp-fingerprint + "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))) diff --git a/system.scm b/system.scm @@ -0,0 +1,89 @@ +;; This is an operating system configuration generated +;; by the graphical installer. +;; +;; Once installation is complete, you can learn and modify +;; this file to tweak the system configuration, and pass it +;; to the 'guix system reconfigure' command to effect your +;; changes. + + +;; Indicate which modules to import to access the variables +;; used in this configuration. +(use-modules (gnu) (gnu packages admin) (gnu system setuid) (gnu packages shells) (nongnu packages linux)) +(use-service-modules cups desktop linux networking pm ssh xorg) + +(operating-system + (kernel linux) + (firmware (list linux-firmware)) + (locale "en_US.utf8") + (timezone "America/Toronto") + (keyboard-layout (keyboard-layout "us" "workman")) + (host-name "lappy") + + ;; The list of user accounts ('root' is implicit). + (users (cons* (user-account + (name "vin") + (comment "Vineet") + (group "users") + (home-directory "/home/vin") + (supplementary-groups '("wheel" "netdev" "audio" "video")) + (shell (file-append zsh "/bin/zsh"))) + %base-user-accounts)) + + ;; Packages installed system-wide. Users can also install packages + ;; under their own account: use 'guix search KEYWORD' to search + ;; for packages and 'guix install PACKAGE' to install a package. + (packages (append (list (specification->package "opendoas") + (specification->package "tlp")) + %base-packages)) + + ;; Below is the list of system services. To search for available + ;; services, run 'guix system search KEYWORD' in a terminal. + (services + (append (list + (service kernel-module-loader-service-type '("msr")) + + ;; To configure OpenSSH, pass an 'openssh-configuration' + ;; record as a second argument to 'service' below. + (service openssh-service-type) + (service elogind-service-type) + ;(service tor-service-type) + ;(service dhcp-client-service-type) + (service wpa-supplicant-service-type) + (service network-manager-service-type) + (service tlp-service-type) + (service ntp-service-type)) + ;(service cups-service-type)) + + ;; This is the default list of services we + ;; are appending to. + %base-services)) + (bootloader (bootloader-configuration + (bootloader grub-efi-bootloader) + (targets (list "/boot/efi")) + (keyboard-layout keyboard-layout))) + (mapped-devices (list (mapped-device + (source (uuid + "11e5f6fe-38ff-4874-9030-fdd535269f62")) + (target "cryptroot") + (type luks-device-mapping)))) + + ;; setuid programs + (setuid-programs + (append (list (setuid-program + (program (file-append opendoas "/bin/doas")))) + %setuid-programs)) + + ;; The list of file systems that get "mounted". The unique + ;; file system identifiers there ("UUIDs") can be obtained + ;; by running 'blkid' in a terminal. + (file-systems (cons* (file-system + (mount-point "/") + (device "/dev/mapper/cryptroot") + (type "btrfs") + (dependencies mapped-devices)) + (file-system + (mount-point "/boot/efi") + (device (uuid "73C9-F112" + 'fat32)) + (type "vfat")) %base-file-systems)))