1 | ;; This is GUIX system that I use on day-to-day basis.
|
---|
2 | ;; I use it on my libreboot'ed thinkpad X200T
|
---|
3 | ;;
|
---|
4 | ;; Feel free to use it
|
---|
5 | ;; https://w96k.com
|
---|
6 |
|
---|
7 | (use-modules (gnu) (gnu system nss)
|
---|
8 | (srfi srfi-1))
|
---|
9 |
|
---|
10 | (use-service-modules xorg
|
---|
11 | networking
|
---|
12 | desktop
|
---|
13 | databases
|
---|
14 | web
|
---|
15 | docker)
|
---|
16 |
|
---|
17 | (use-package-modules geo linux bash)
|
---|
18 |
|
---|
19 | ;; Run powertop --autotune on boot
|
---|
20 | (define %powertop-service
|
---|
21 | (simple-service 'powertop activation-service-type
|
---|
22 | #~(zero? (system* #$(file-append powertop "/sbin/powertop")
|
---|
23 | "--auto-tune"))))
|
---|
24 |
|
---|
25 | ;; My modification of %desktop-services
|
---|
26 | (define %my-services
|
---|
27 | (cons*
|
---|
28 | (service slim-service-type)
|
---|
29 |
|
---|
30 | ;; Wacom tablet support
|
---|
31 | (service inputattach-service-type
|
---|
32 | (inputattach-configuration
|
---|
33 | (device "/dev/ttyS4")
|
---|
34 | (device-type "wacom")))
|
---|
35 |
|
---|
36 | (postgresql-service #:extension-packages (list postgis))
|
---|
37 | (service docker-service-type)
|
---|
38 | (service tor-service-type)
|
---|
39 | ;; Fix unavailable /usr/bin/env
|
---|
40 | ;; It's needed by many bash scripts
|
---|
41 | (extra-special-file "/usr/bin/env"
|
---|
42 | (file-append coreutils "/bin/env"))
|
---|
43 | (extra-special-file "/bin/bash"
|
---|
44 | (file-append bash "/bin/bash"))
|
---|
45 | ;;%powertop-service
|
---|
46 | %desktop-services))
|
---|
47 |
|
---|
48 | ;; Remove gdm (gdm is default in guix)
|
---|
49 | (set! %my-services
|
---|
50 | (remove (lambda (service)
|
---|
51 | (eq? (service-kind service) gdm-service-type))
|
---|
52 | %my-services))
|
---|
53 |
|
---|
54 | (operating-system
|
---|
55 | (host-name "Libreboot")
|
---|
56 | (timezone "Europe/Moscow")
|
---|
57 | (locale "ru_RU.utf8")
|
---|
58 | (kernel linux-libre-4.19)
|
---|
59 | (kernel-arguments '("processor.max_cstate=1" ;Disable power savings
|
---|
60 | "intel_idle.max_cstate=0" ;(cstate 3-4 provides
|
---|
61 | ;high freq cpu noice)
|
---|
62 | "intremap=off" ;Fix for failed to map dmar2
|
---|
63 | "acpi=strict"
|
---|
64 | "splash"
|
---|
65 | "intel_iommu=on"
|
---|
66 | "i915.enable_dc=0"
|
---|
67 | "i915.modeset=1"
|
---|
68 | "i915.enable_psr=0"
|
---|
69 | "i915.enable_fbc=0"
|
---|
70 | "i915.fastboot=1"
|
---|
71 | "intel_agp"))
|
---|
72 | (initrd-modules (append '("i915")
|
---|
73 | %base-initrd-modules))
|
---|
74 | (bootloader (bootloader-configuration
|
---|
75 | (bootloader grub-bootloader)
|
---|
76 | (target "/dev/sda")))
|
---|
77 |
|
---|
78 | (file-systems (cons* (file-system
|
---|
79 | (device (file-system-label "root"))
|
---|
80 | (mount-point "/")
|
---|
81 | (type "ext4"))
|
---|
82 | %base-file-systems))
|
---|
83 |
|
---|
84 | (swap-devices `("/dev/sda5"))
|
---|
85 |
|
---|
86 | (users (cons (user-account
|
---|
87 | (name "w96k")
|
---|
88 | (group "users")
|
---|
89 | (supplementary-groups '("wheel" "netdev"
|
---|
90 | "audio" "video"
|
---|
91 | "docker"))
|
---|
92 | (home-directory "/home/w96k"))
|
---|
93 | %base-user-accounts))
|
---|
94 |
|
---|
95 | (packages
|
---|
96 | (append
|
---|
97 | (map specification->package
|
---|
98 | '(
|
---|
99 | "bash"
|
---|
100 | "bash-completion"
|
---|
101 | "libva"
|
---|
102 | "libva-utils"
|
---|
103 | "intel-vaapi-driver"
|
---|
104 | "curl"
|
---|
105 | "mesa"
|
---|
106 | "mesa-headers"
|
---|
107 | "xorg-server"
|
---|
108 | "xf86-video-intel"
|
---|
109 | "libdrm"
|
---|
110 | "patchelf"
|
---|
111 | "binutils"
|
---|
112 | "glibc"
|
---|
113 | "stow"
|
---|
114 | "icecat"
|
---|
115 | "next"
|
---|
116 | "ratpoison"
|
---|
117 | "stumpwm"
|
---|
118 | "i3-wm"
|
---|
119 | "inputattach"
|
---|
120 | "font-dejavu"
|
---|
121 | "mailutils"
|
---|
122 | "font-terminus"
|
---|
123 | "emacs-no-x-toolkit"
|
---|
124 | "emacs-use-package"
|
---|
125 | "emacs-guix"
|
---|
126 | "emacs-pdf-tools"
|
---|
127 | "lilypond"
|
---|
128 | "fontconfig"
|
---|
129 | "git"
|
---|
130 | "darcs"
|
---|
131 | "htop"
|
---|
132 | "netcat"
|
---|
133 | "nss-certs"
|
---|
134 | "openssh"
|
---|
135 | "vim"
|
---|
136 | "xinit"
|
---|
137 | "xterm"
|
---|
138 | "xinit"
|
---|
139 | "rxvt-unicode"
|
---|
140 | "node"
|
---|
141 | "ruby"
|
---|
142 | "bundler"
|
---|
143 | "sbcl"
|
---|
144 | "docker"
|
---|
145 | "docker-cli"
|
---|
146 | "nix"
|
---|
147 | "postgresql"
|
---|
148 | "ghc"
|
---|
149 | "cabal-install"
|
---|
150 | "php"
|
---|
151 | "alsa-utils"
|
---|
152 | "mc"
|
---|
153 | "dmidecode"
|
---|
154 | "wayland"
|
---|
155 | "gnunet"
|
---|
156 | "adwaita-icon-theme"
|
---|
157 | "glibc-utf8-locales"))
|
---|
158 | %base-packages))
|
---|
159 |
|
---|
160 | ;; Use the "desktop" services, which include the X11
|
---|
161 | ;; log-in service, networking with NetworkManager, and more.
|
---|
162 |
|
---|
163 | (services %my-services)
|
---|
164 |
|
---|
165 | ;; Allow resolution of '.local' host names with mDNS.
|
---|
166 | (name-service-switch %mdns-host-lookup-nss))
|
---|