summaryrefslogtreecommitdiff
path: root/src/guix-config/system-config.scm
blob: 4603b32cee10d3dece68fd4815514a1207321cc5 (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
;; Indicate which modules to import to access the variables
;; used in this configuration.
(use-modules (gnu))
(use-service-modules audio desktop networking ssh xorg)

(define username "bdunahu")
(define host-name "vali")

(define user (user-account
	       (name username)
	       (comment username)
	       (group "users")
	       (home-directory (string-append "/home/" username))
	       (supplementary-groups '("wheel" "netdev" "audio" "video"))))

(operating-system
  (locale "en_US.utf8")
  (timezone "America/Denver")
  (keyboard-layout (keyboard-layout "us"))
  (host-name host-name)

  ;; The list of user accounts ('root' is implicit).
  (users (cons* user
                %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"
			   "emacs-exwm"
			   "emacs-desktop-environment"
			   "git"
			   "imagemagick"
			   "mpd"
			   "nss-certs"
			   "picom"
			   "vim"
			   "xmodmap"))
                    %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

                 ;; To configure OpenSSH, pass an 'openssh-configuration'
                 ;; record as a second argument to 'service' below.
                 (service openssh-service-type)
                 (service tor-service-type)
		 (service mpd-service-type
			  (mpd-configuration
			    (user user)
			    (music-directory "~/Personal/mpd/music")
			    (playlist-directory "~/Personal/mpd/playlist")
			    (default-port 6600)))
                 (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)))

  ;; 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 "8A13-7018"
                                       'fat32))
                         (type "vfat"))
		       (file-system
			 (mount-point "/home/bdunahu/Personal")
			 (device (uuid "020b73df-3991-4271-9d3f-dba00ad260ec"))
			 (type "ext4"))
                       (file-system
                         (mount-point "/")
                         (device (uuid
				  "69a3593b-12bd-40ad-a932-007674a8cfe8"
                                  'ext4))
                         (type "ext4")) %base-file-systems)))