summaryrefslogtreecommitdiff
path: root/.config/guix
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2023-01-21 14:11:58 +0200
committerThanos Apollo <[email protected]>2023-01-21 14:11:58 +0200
commit096714d249fd352d501e8243c46308948f5e5542 (patch)
tree06bbd08bc6905194afe6a5be193ac9a7020dd38d /.config/guix
parentd05f00f64f264d1d7ad6e0e26047e06ef2a0b9d3 (diff)
guix:Add base
Diffstat (limited to '.config/guix')
-rw-r--r--.config/guix/base.scm124
1 files changed, 124 insertions, 0 deletions
diff --git a/.config/guix/base.scm b/.config/guix/base.scm
new file mode 100644
index 0000000..b998778
--- /dev/null
+++ b/.config/guix/base.scm
@@ -0,0 +1,124 @@
+;; 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.
+
+(define-module (base)
+ #:use-module (gnu)
+ #:use-module (nongnu packages linux)
+ #:export (base-operating-system))
+
+(use-service-modules cups desktop networking ssh xorg)
+
+;;(define-public base-operating-system
+(operating-system
+ (host-name "fsociety")
+
+ (kernel linux)
+ (firmware (list linux-firmware
+ amdgpu-firmware))
+
+ (locale "en_US.utf8")
+ (timezone "Europe/Athens")
+ (keyboard-layout (keyboard-layout "us"
+ #:options
+ '("ctrl:nocaps")))
+
+ ;; Guix doesn't like it when there isn't a file-systems
+ ;; entry, so add one that is meant to be overridden
+
+ ;; (file-systems (cons*
+ ;; (file-system
+ ;; (mount-point "/tmp")
+ ;; (device "none")
+ ;; (type "tmpfs")
+ ;; (check? #f))
+ ;; %base-file-systems))
+
+ ;; The list of user accounts ('root' is implicit).
+ (users (cons* (user-account
+ (name "apollo")
+ (comment "Apollo")
+ (group "users")
+ (home-directory "/home/apollo")
+ (shell (file-append "/bin/zsh"))
+ (supplementary-groups '("wheel"
+ "netdev"
+ "audio"
+ "video")))
+ (user-account
+ (name "elliot")
+ (comment "Elliot")
+ (group "users")
+ (home-directory "/home/elliot")
+ (supplementary-groups '("wheel"
+ "netdev"
+ "audio"
+ "video")))
+ %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 (map specification->package
+ `("emacs-exwm"
+ "emacs-desktop-environment"
+ "emacs"
+ "xrandr"
+ "picom"
+ "gnome"
+ "gnome-desktop"
+ "nss-certs"
+ "python"
+ "alacritty"
+ "emacs-vterm"
+ "emacs-multi-vterm"
+ "alsa-utils"
+ "bluez-alsa"
+ "gnome-bluetooth"
+ "blueman"
+ "qtile"
+ "git"
+ "font-jetbrains-mono"))
+ %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 gnome-desktop-service-type)
+ (service openssh-service-type)
+ (bluetooth-service #:auto-enable?
+ #t)
+ (service cups-service-type)
+ (set-xorg-configuration
+ (xorg-configuration (keyboard-layout keyboard-layout))))
+ ;; This is the default list of services we
+ ;; are appending to.
+ %desktop-services))
+ (bootloader (bootloader-configuration
+ (bootloader grub-bootloader)
+ (targets (list "/dev/nvme0n1"))
+ (keyboard-layout keyboard-layout)))
+ (swap-devices (list (swap-space
+ (target (uuid
+ "a8d782da-f1ea-477e-9b47-cf5aa431e893")))))
+
+ (file-systems (cons* (file-system
+ (mount-point "/boot/efi")
+ (device (uuid "021E-83B3"
+ 'fat32))
+ (type "vfat"))
+ (file-system
+ (mount-point "/")
+ (device (uuid
+ "2bb282ae-7b2d-45c3-92b1-b1524177defb"
+ 'ext4))
+ (type "ext4")) %base-file-systems)))
+ ;)