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
|
(define-module (aisaka-home-configuration)
#:use-module (gnu home)
#:use-module (gnu home services)
#:use-module (gnu home services shells)
#:use-module (gnu packages)
#:use-module (gnu services)
#:use-module (guix gexp))
(define allow-downgrades
"--allow-downgrades ")
(define config-prefix
"/home/marek/src/guix-config/")
(define pull-guix
"guix pull ")
(define pull-guix-
(string-append pull-guix
allow-downgrades
"--disable-authentication "))
(define guix-home
"guix home reconfigure ")
(define home-configuration
"home-configuration.scm ")
(define reconfigure-home
(string-append guix-home
config-prefix
home-configuration))
(define reconfigure-home-
(string-append reconfigure-home
allow-downgrades))
(define guix-system
"sudo guix system reconfigure ")
(define system-configuration
"system-configuration.scm ")
(define reconfigure-system
(string-append guix-system
config-prefix
system-configuration))
(define reconfigure-system-
(string-append reconfigure-system
allow-downgrades))
(define and
"&& ")
(define system-update
(string-append pull-guix
and
reconfigure-system
and
reconfigure-home))
(define system-update-
(string-append pull-guix-
and
reconfigure-system-
and
reconfigure-home-))
(home-environment
(packages (map (compose list
specification->package+output)
'("cpupower"
"dconf-editor"
"emacs"
"emacs-aggressive-indent"
"emacs-geiser"
"emacs-geiser-guile"
"font-google-noto"
"git"
"git-lfs"
"gnome-shell-extension-forge"
"gnome-tweaks"
"gnupg"
"guile"
"guile-spec"
"icecat"
"icedove"
"jami"
"libreoffice"
"newsboat"
"pwgen"
"seahorse"
"sicp"
"trezor-agent"
"unzip"
"zip")))
(services
`(,(service home-bash-service-type
(home-bash-configuration
(environment-variables '(("EDITOR" . "emacs")
("NVM_DIR" . "$HOME/src/nvm")
("GUILE_AUTO_COMPILE" . "0")))
(aliases `(("grep" . "grep --color=auto ")
("ll" . "ls -l ")
("ls" . "ls -p --color=auto ")
("pull-guix" . ,pull-guix)
("pull-guix-" . ,pull-guix-)
("reconfigure-home" . ,reconfigure-home)
("reconfigure-home-" . ,reconfigure-home-)
("reconfigure-system" . ,reconfigure-system)
("reconfigure-system-" . ,reconfigure-system-)
("system-update" . ,system-update)
("system-update-" . ,system-update-)))
(bash-profile `(,(local-file (string-append config-prefix
".bash_profile")
"bash_profile")))
(bashrc `(,(local-file (string-append config-prefix
".bashrc")
"bashrc")))))
,(simple-service 'configuration-files
home-files-service-type
`((".config/git/config" ,(local-file "git.config"))
(".config/guix/shell-authorized-directories"
,(local-file "guix-shell-authorized-directories"))
(".emacs" ,(local-file "emacs.el"))
(".ssh/config" ,(local-file "ssh.config")))))))
|