blob: d3aa9f538e5d3340bb4d6113c9dd239e62c42410 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
;; 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)
(nongnu packages linux)
(nongnu system linux-initrd))
(use-service-modules cups desktop networking ssh xorg nix)
(use-package-modules package-management)
(operating-system
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
(locale "en_US.utf8")
(timezone "Asia/Nicosia")
(keyboard-layout (keyboard-layout "us" "colemak" #:options '("ctrl:nocaps")))
(host-name "guix")
;; The list of user accounts ('root' is implicit).
(users (cons* (user-account
(name "mccd")
(comment "Marc")
(group "users")
(home-directory "/home/mccd")
(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 (list (specification->package "emacs")
(specification->package "emacs-exwm")
(specification->package "nix")
(specification->package "mu")
(specification->package "guile")
(specification->package "texinfo")
(specification->package "man-db")
(specification->package "man-pages")
(specification->package "mandoc")
(specification->package
"emacs-desktop-environment")) %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 cups-service-type)
(service nix-service-type)
(set-xorg-configuration
(xorg-configuration (keyboard-layout keyboard-layout))))
(modify-services %desktop-services
(guix-service-type config => (guix-configuration
(inherit config)
(substitute-urls
(append (list "https://substitutes.nonguix.org")
%default-substitute-urls))
(authorized-keys
(append (list (local-file "./signing-key.pub"))
%default-authorized-guix-keys)))))))
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets (list "/boot/efi"))
(keyboard-layout keyboard-layout)))
(swap-devices (list (swap-space
(target (uuid
"6ee329b8-9475-4675-9c46-b2f68ec97f08")))))
;; 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 "132A-1FDF"
'fat32))
(type "vfat"))
(file-system
(mount-point "/")
(device (uuid
"96a8d2d0-d991-4dc2-b50e-be8884887961"
'ext4))
(type "ext4"))
(file-system
(mount-point "/home")
(device (uuid
"b90ebc14-5472-4dbe-98e4-0b6e72f48199"
'ext4))
(type "ext4")) %base-file-systems)))
|