aboutsummaryrefslogtreecommitdiff
path: root/os.scm
blob: 972c42d43907ac7be7006bef0b73d15eaf77ba29 (plain) (blame)
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
(use-modules (gnu)
             (srfi srfi-1))
(use-service-modules desktop networking ssh xorg)

(operating-system
  (locale "en_US.utf8")
  (timezone "America/Sao_Paulo")
  (keyboard-layout (keyboard-layout "br" #:options '("caps:swapescape" "esperanto:qwerty")))
  (host-name "velhinho-guix-system")
  (users (cons* (user-account
                 (name "andreh")
                 (comment "andreh")
                 (group "users")
                 (home-directory "/home/andreh")
                 (supplementary-groups
                  '("wheel" "netdev" "audio" "video")))
                %base-user-accounts))
  (packages
   (append
    (list (package-inputs guix))
    (map (compose list specification->package+output symbol->string)
         '(;; Base
           nss-certs ;; suggested by Guix

           ;; Personal data tools
           git
           git:send-email
           git-lfs
           git-annex
           myrepos
           git-remote-gcrypt
           git-crypt
           fossil
           git-open
           borg
           gnupg
           syncthing

           ;; CLI tools
           groff
           mktorrent
           diffoscope
           bash-completion
           youtube-dl
           ;;; wget - both already included?
           ;;; curl
           tmux
           ;; tmuxinator
           sox ; SoX - Sound eXchange
           gettext
           rlwrap
           jq
           ;; rq
           openvpn
           xclip
           psmisc ; killall
           xkill
           ;; gksu
           tree
           unzip
           feh
           bind:utils
           rsync
           moreutils
           graphviz
           ;; graph-easy
           ;; mkpasswd, is this required?
           direnv
           recutils
           sqlite
           trash-cli
           entr ; need patch
           mailutils
           ffmpeg
           ledger
           gnuplot
           ranger
           electrum
           zathura
           ;; zathura-ps
           ;; zathura-pdf-poppler
           ;; zathura-djvu
           ;; zathura-cb
           ;; zathura-pdf-mupdf
           st
           pavucontrol
           weechat
           newsboat
           acpi
           xsel
           pinentry
           nvi
           go-github-com-junegunn-fzf
           autojump
           calcurse
           pandoc
           openssh
           festival ;; TTS software

           ;; Mail
           notmuch
           isync
           neomutt

           ;; Programming tools
           perl
           shellcheck
           ;; mrsh
           dash

           ;; POSIX
           ;; bmake
           ;; byacc
           ;; pax
           flex
           ;;; gnugrep - already included?

           ;; Containers and VMs
           qemu

           ;; xmonad
           xmodmap
           xmessage
           dmenu
           ;; escrotum
           xbacklight
           playerctl
           ;; lightdm
           fvwm ; xpmroot
           xmonad
           ghc
           ghc-xmonad-contrib
           xmobar
           remembering
           arandr
           alsa-utils ; for xmonad volume controls
           xset
           xmodmap
           setxkbmap

           ;; GUI programs
           audacity
           zbar
           ;; fractal
           dino
           calibre
           vlc
           gpodder
           qutebrowser
           blueman
           bluez))
    %base-packages))
  (services
   (append
    (list (service gnome-desktop-service-type)
          (set-xorg-configuration
           (xorg-configuration
            (keyboard-layout keyboard-layout))))
    %desktop-services))
  (bootloader
   (bootloader-configuration
    (bootloader grub-efi-bootloader)
    (target "/boot/efi")
    (keyboard-layout keyboard-layout)))
  (mapped-devices
   (list (mapped-device
          (source
           (uuid "67a25dfa-ed48-4466-89f3-e291365df104"))
          (target "cryptroot")
          (type luks-device-mapping))))
  (file-systems
   (cons* (file-system
            (mount-point "/")
            (device "/dev/mapper/cryptroot")
            (type "btrfs")
            (dependencies mapped-devices))
          (file-system
            (mount-point "/boot/efi")
            (device (uuid "1B26-9F4E" 'fat32))
            (type "vfat"))
          %base-file-systems)))