summaryrefslogtreecommitdiff
path: root/guix.org
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2023-05-06 13:33:06 +0300
committerThanos Apollo <[email protected]>2023-05-06 13:33:06 +0300
commit4131e533d10d8d55a7301c882822e1461db1ecf2 (patch)
treec4436b91ccfb254a88e82f737d76334e05ee559d /guix.org
parentbc76001b993ee1878c30f94aa1f357b3dc2a6bec (diff)
guix: Readd old guix for x220 testing
Diffstat (limited to 'guix.org')
-rw-r--r--guix.org179
1 files changed, 179 insertions, 0 deletions
diff --git a/guix.org b/guix.org
new file mode 100644
index 0000000..6795f36
--- /dev/null
+++ b/guix.org
@@ -0,0 +1,179 @@
+* Guix x220
+#+begin_src scheme
+ ;; 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 (hermes)
+ #:use-module (gnu)
+ #:use-module (srfi srfi-1)
+ #:use-module (gnu system nss)
+ #:use-module (gnu services pm)
+ #:use-module (gnu services ssh)
+ #:use-module (gnu services cups)
+ #:use-module (gnu services guix)
+ #:use-module (gnu services desktop)
+ #:use-module (gnu services docker)
+ #:use-module (gnu services networking)
+ #:use-module (gnu services virtualization)
+ #:use-module (gnu packages wm)
+ #:use-module (gnu packages cups)
+ #:use-module (gnu packages vim)
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages xorg)
+ #:use-module (gnu packages emacs)
+ #:use-module (gnu packages file-systems)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages mtools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages audio)
+ #:use-module (gnu packages gnuzilla)
+ #:use-module (gnu packages web-browsers)
+ #:use-module (gnu packages version-control)
+ #:use-module (gnu packages package-management)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages admin)
+ #:use-module (nongnu packages linux)
+ #:use-module (nongnu system linux-initrd))
+
+
+ (use-service-modules cups desktop networking ssh xorg)
+
+ (operating-system
+ (host-name "hermes")
+
+ (kernel linux)
+ (firmware (list linux-firmware))
+ (initrd microcode-initrd)
+
+ (kernel-loadable-modules (list v4l2loopback-linux-module))
+
+ (locale "en_US.utf8")
+ (timezone "Europe/Athens")
+ (keyboard-layout (keyboard-layout "us"
+ #:options
+ '("ctrl:nocaps")))
+
+ ;; The list of user accounts ('root' is implicit).
+ (users (cons (user-account
+ (name "apollo")
+ (comment "Thanos Apollo")
+ (group "users")
+ (home-directory "/home/apollo")
+ (supplementary-groups '("wheel" ;; sudo
+ "netdev" ;; network devices
+ "kvm"
+ "tty"
+ "input"
+ "realtime" ;; Enable realtime scheduling
+ "lp" ;; control bluetooth devices
+ "audio" ;; control audio devices
+ "video"))) ;; control video devices
+ %base-user-accounts))
+
+ ;; Add the 'realtime' group
+ (groups (cons (user-group (system? #t) (name "realtime"))
+ %base-groups))
+
+ ;; 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"
+ "emacs-guix"
+ "emacs-vterm"
+ "emacs-dashboard"
+ "emacs-multi-vterm"
+ "emacs-pdf-tools"
+ "emacs-stumpwm-mode"
+ "stumpish"
+ "xrandr"
+ "picom"
+ "gnome"
+ "gnome-desktop"
+ "nss-certs"
+ "python"
+ "bind"
+ "alacritty"
+ "emacs-vterm"
+ "emacs-multi-vterm"
+ "alsa-utils"
+ "bluez-alsa"
+ "gnome-bluetooth"
+ "blueman"
+ "qtile"
+ "git"
+ "stumpwm"
+ "rofi"
+ "qemu"
+ "libvirt"
+ "virt-manager"
+ "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)
+ (service bluetooth-service-type)
+ (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-efi-bootloader)
+ (targets (list "/boot/efi"))
+ (keyboard-layout keyboard-layout)))
+ (mapped-devices (list (mapped-device
+ (source (uuid
+ "0594b592-ddcb-4a3c-958d-c773d7a85d93"))
+ (target "cryptroot")
+ (type luks-device-mapping))
+ (mapped-device
+ (source (uuid
+ "a44f40ec-94c3-457a-a9ed-5db5396f3aea"))
+ (target "crypthome")
+ (type luks-device-mapping))))
+
+ ;; 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 "/boot/efi")
+ (device (uuid "98B8-B93E"
+ 'fat32))
+ (type "vfat"))
+ (file-system
+ (mount-point "/")
+ (device "/dev/mapper/cryptroot")
+ (type "ext4")
+ (dependencies mapped-devices))
+ (file-system
+ (mount-point "/home")
+ (device "/dev/mapper/crypthome")
+ (type "ext4")
+ (dependencies mapped-devices))
+ (file-system
+ (mount-point "/home/apollo/external")
+ (device "/dev/sda1")
+ (type "ext4")
+ (dependencies mapped-devices))
+ %base-file-systems)))
+#+end_src