blob: e2c6cc92bebb59b7020d2d5a02ba07efa455c8ec (
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
110
111
112
113
114
115
116
117
118
119
120
121
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Provides a set of my preferred ;;
;; program and services for desktops ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define-module (desktop)
#:use-module (gnu)
#:use-module (gnu home services)
#:use-module (gnu home services shells)
#:use-module (gnu packages image)
#:use-module (gnu packages suckless)
#:use-module (gnu packages xorg)
#:use-module (gnu services)
#:use-module (gnu services admin)
#:use-module (gnu services audio)
#:use-module (gnu services avahi)
#:use-module (gnu services dbus)
#:use-module (gnu services desktop)
#:use-module (gnu services networking)
#:use-module (gnu services sound)
#:use-module (gnu services xorg)
#:use-module (guix gexp)
#:use-module (guix packages)
#:export (bd-desktop-system-packages
bd-desktop-system-services))
(define programs
'(
"dmenu"
"flameshot"
"font-google-noto-emoji"
"gimp"
"icecat"
"imagemagick"
"libnotify"
"librewolf"
"mpv"
"pavucontrol"
"picom"
"pulseaudio"
"sxiv"
"xprop"
"zathura"
"zathura-pdf-poppler"
))
(define x-server
'(
"feh"
"ffmpeg"
"gtk+"
"xdotool"
"xf86-input-libinput"
"xf86-video-fbdev"
"xinit"
"xmodmap"
"xorg-server"
"xrdb"
"xset"
))
(define dwm-package
(package
(inherit dwm)
(name "bdunahu-dwm")
(inputs (modify-inputs (package-inputs dwm)))
(source (local-file "dwm" #:recursive? #t))))
(define bd-desktop-system-packages
`(,@(map specification->package
(append!
programs
x-server
))
,dwm-package
))
(define bd-desktop-system-services
(list
(service screen-locker-service-type
(screen-locker-configuration
(name "slock")
(program (file-append slock "/bin/slock"))))
;; so that non-root users in the wheel group can
;; perform administrative tasks (similar to "sudo").
polkit-wheel-service
;; The global fontconfig cache directory can sometimes contain
;; stale entries, possibly referencing fonts that have been GC'd,
;; so mount it read-only.
fontconfig-file-system-service
(service network-manager-service-type)
(service wpa-supplicant-service-type) ; needed by NetworkManager
(service modem-manager-service-type)
(service usb-modeswitch-service-type)
;; The D-Bus clique.
(service avahi-service-type)
(service udisks-service-type)
(service upower-service-type)
(service accountsservice-service-type)
(service cups-pk-helper-service-type)
(service colord-service-type)
(service geoclue-service-type)
(service polkit-service-type)
(service elogind-service-type
(elogind-configuration
(handle-power-key 'hibernate)
;; (idle-action-seconds (* 5 60))
;; (idle-action 'suspend)
))
(service dbus-root-service-type)
(service ntp-service-type)
(service x11-socket-directory-service-type)
(service pulseaudio-service-type)
(service alsa-service-type)))
|