summaryrefslogtreecommitdiff
path: root/guix/desktop.scm
blob: 99f0f31c3ce77d2831efc063e7097e8673cd82ec (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
;; 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)

(operating-system
  (locale "en_US.utf8")
  (timezone "Asia/Tbilisi")

  (kernel linux)
  (initrd microcode-initrd)
  (firmware (list linux-firmware))

  (keyboard-layout (keyboard-layout "us,ru"
                                    #:options '("grp:shifts_toggle" "ctrl:nocaps")))
  (host-name "wkz-guix")

  ;; The list of user accounts ('root' is implicit).
  (users (cons* (user-account
                  (name "w96k")
                  (comment "W96K")
                  (group "users")
                  (home-directory "/home/w96k")
                  (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 "ratpoison")
                          (specification->package "xterm")
                          (specification->package "emacs")
                          (specification->package "emacs-exwm")
                          (specification->package
                           "emacs-desktop-environment")
                          (specification->package "nss-certs"))
                    %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 tor-service-type)
		 (service openssh-service-type)
		 (service slim-service-type
		    (slim-configuration
		     (xorg-configuration
		      (xorg-configuration
		       (keyboard-layout keyboard-layout)))))
		 
                 ;; (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 (plain-file "non-guix.pub"
"
(public-key 
 (ecc 
  (curve Ed25519)
  (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
  )
 )
"))
							%default-authorized-guix-keys))))
			    
			    (delete gdm-service-type))

	   ))
  (bootloader (bootloader-configuration
                (bootloader grub-efi-bootloader)
                (targets (list "/boot/efi"))
                (keyboard-layout keyboard-layout)))
  (mapped-devices (list (mapped-device
                          (source (uuid
                                   "6cfe9eed-8cdd-43da-9b9f-cec6f8ec538b"))
                          (target "cryptroot")
                          (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 "17C5-3E35"
                                       'fat32))
                         (type "vfat"))
                       (file-system
                         (mount-point "/")
                         (device "/dev/mapper/cryptroot")
                         (type "ext4")
                         (dependencies mapped-devices)) %base-file-systems)))