sybil-home.scm
1 | (use-modules (home)) |
2 | (use-home-modules hexchat keepassxc openbox ssh utils) |
3 | (use-modules (home-config ssh)) |
4 | (use-modules (gnu packages bittorrent)) |
5 | (use-modules (gnu packages compton)) |
6 | (use-modules (gnu packages dunst)) |
7 | (use-modules (gnu packages games)) |
8 | (use-modules (gnu packages gnuzilla)) |
9 | (use-modules (gnu packages ibus)) |
10 | (use-modules (gnu packages image-viewers)) |
11 | (use-modules (gnu packages inkscape)) |
12 | (use-modules (gnu packages libreoffice)) |
13 | (use-modules (gnu packages lxde)) |
14 | (use-modules (gnu packages mail)) |
15 | (use-modules (gnu packages messaging)) |
16 | (use-modules (gnu packages password-utils)) |
17 | (use-modules (gnu packages pulseaudio)) |
18 | (use-modules (gnu packages sync)) |
19 | (use-modules (gnu packages xfce)) |
20 | (use-modules (games packages baba-is-you)) |
21 | (use-modules (guix gexp)) |
22 | (use-modules (guix import utils)); for flatten |
23 | |
24 | (define bashrc |
25 | (computed-file "bashrc" |
26 | #~(with-output-to-file #$output |
27 | (lambda _ |
28 | (format #t "export SHELL |
29 | |
30 | if [[ $- != *i* ]]; then |
31 | # Non interative shell. For SSH session, load /etc/profile to get |
32 | # PATH and other variables set up. |
33 | [[ -n \"$SSH_CLIENT\" ]] && source /etc/profile |
34 | return |
35 | fi |
36 | |
37 | source /etc/bashrc |
38 | |
39 | if [ -n \"$GUIX_ENVIRONMENT\" ]; then |
40 | PS1='\\u@\\h \\w [env]\\$ ' |
41 | else |
42 | PS1='\\u@\\h \\w\\$ ' |
43 | fi |
44 | export EDITOR=nvim |
45 | alias ls='ls -p --color=auto' |
46 | alias ll='ls -l' |
47 | alias grep='grep --color=auto' |
48 | alias vim='nvim'"))))) |
49 | |
50 | (define bash_profile |
51 | (plain-file "bash_profile" "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi |
52 | ")) |
53 | |
54 | (define gtkrc-2 |
55 | (plain-file "gtkrc-2.0" "gtk-theme-name=\"Arc-Dark\" |
56 | gtk-icon-theme-name=\"Arc\" |
57 | ")) |
58 | |
59 | (define gtkrc-3 |
60 | (plain-file "settings.ini" "[Settings] |
61 | gtk-theme-name=Arc-Dark |
62 | gtk-icon-theme-name=Arc |
63 | ")) |
64 | |
65 | (define gitconfig (local-file "files/gitconfig")) |
66 | (define openbox-rc (local-file "files/openbox/rc.xml")) |
67 | (define openbox-environment |
68 | (plain-file "environment" "eval $(ssh-agent)")) |
69 | (define openbox-autostart |
70 | (computed-file "autostart" |
71 | #~(with-output-to-file #$output |
72 | (lambda _ |
73 | (format #t "HOME=/tmp/pa ~a --start~%" #$(file-append pulseaudio "/bin/pulseaudio")) |
74 | (format #t "~a --bg-fill ~a~%" #$(file-append feh "/bin/feh") |
75 | #$(local-file "/data/tyreunom/background.png")) |
76 | (format #t "~a -CGb~%" #$(file-append compton "/bin/compton")) |
77 | (format #t "~a -conf ~a &~%" #$(file-append dunst "/bin/dunst") |
78 | #$(plain-file "dunstrc" "")) |
79 | (format #t "export GTK_IM_MODULE=ibus |
80 | export XMODIFIERS=@im=ibus |
81 | export QT_IM_MODULE=ibus |
82 | export GUIX_GTK2_IM_MODULE_FILE=~~/.guix-profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache |
83 | export GUIX_GTK3_IM_MODULE_FILE=~~/.guix-profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache |
84 | ~a -drx~%" #$(file-append ibus "/bin/ibus-daemon")))))) |
85 | |
86 | (define xfce4-terminalrc |
87 | (local-file "files/xfce4-terminal/terminalrc")) |
88 | |
89 | (home |
90 | "/data/tyreunom" |
91 | (flatten |
92 | (list |
93 | (openbox-home |
94 | (openbox-configuration |
95 | (autostart openbox-autostart) |
96 | (environ openbox-environment) |
97 | (menus |
98 | (list |
99 | (openbox-menu |
100 | (id "apps-game-menu") |
101 | (label "Jeux") |
102 | (elements |
103 | (list |
104 | (openbox-element-execute |
105 | (label "MineTest") |
106 | (command (file-append minetest "/bin/minetest"))) |
107 | (openbox-element-execute |
108 | (label "Baba is You") |
109 | (command (file-append baba-is-you "/bin/baba-is-you")))))) |
110 | (openbox-menu |
111 | (id "apps-other-menu") |
112 | (label "Autres") |
113 | (elements |
114 | (list |
115 | (openbox-element-execute |
116 | (label "Pavucontrol") |
117 | (command (file-append pavucontrol "/bin/pavucontrol"))) |
118 | (openbox-element-execute |
119 | (label "Owncloud") |
120 | (command (file-append owncloud-client "/bin/owncloud"))) |
121 | (openbox-element-execute |
122 | (label "Keepass") |
123 | (command (file-append keepassxc "/bin/keepassxc"))) |
124 | (openbox-element-execute |
125 | (label "Libreoffice") |
126 | (command (file-append libreoffice "/bin/libreoffice"))) |
127 | (openbox-element-execute |
128 | (label "Claws-mail") |
129 | (command (file-append claws-mail "/bin/claws-mail --alternate-config-dir /data/tyreunom/.local/share/claws-mail"))) |
130 | (openbox-element-execute |
131 | (label "Hexchat") |
132 | (command (file-append hexchat "/bin/hexchat"))) |
133 | ;(openbox-element-execute |
134 | ; (label "Transmission") |
135 | ; (command (file-append (gexp-input transmission "gui") |
136 | ; "/bin/transmission-gtk"))) |
137 | (openbox-element-execute |
138 | (label "Claws-mail") |
139 | (command (file-append claws-mail "/bin/claws-mail"))) |
140 | (openbox-element-execute |
141 | (label "Inkscape") |
142 | (command (file-append inkscape "/bin/inkscape")))))))) |
143 | (root-elements |
144 | (list |
145 | (openbox-element-menu (id "apps-game-menu")) |
146 | (openbox-element-menu (id "apps-other-menu")) |
147 | (openbox-element-execute |
148 | (label "Terminal") |
149 | (command (file-append xfce4-terminal "/bin/xfce4-terminal"))) |
150 | (openbox-element-execute |
151 | (label "Icecat") |
152 | (command (file-append icecat "/bin/icecat -P --no-remote"))) |
153 | (openbox-element-execute |
154 | (label "Gestionnaire de fichiers") |
155 | (command (file-append pcmanfm "/bin/pcmanfm"))))) |
156 | (rc openbox-rc))) |
157 | (hexchat-home |
158 | (hexchat-configuration |
159 | (servlist |
160 | (list |
161 | (hexchat-server |
162 | (name "ZNC") |
163 | (servers '("lepiller.eu/6697")) |
164 | (flags '(cycle global honor-proxy ssl favorite |
165 | allow-invalid-certificates))))) |
166 | (log-dir "/data/tyreunom/.config/hexchat/logs") |
167 | (scrollback-dir "/data/tyreunom/.config/hexchat/scrollback"))) |
168 | (keepassxc-home |
169 | (keepassxc-configuration |
170 | (last-databases '("/data/tyreunom/owncloud/synchro/pass.kdbx")) |
171 | (last-dir "/data/tyreunom") |
172 | (last-opened-databases '("/data/tyreunom/owncloud/synchro/pass.kdbx")))) |
173 | (ssh-home |
174 | (ssh-configuration |
175 | (known-hosts known-hosts) |
176 | (default-host |
177 | (ssh-host-configuration |
178 | (identity-file "/data/tyreunom/.ssh/id_rsa"))))) |
179 | (simple-file-home bashrc ".bashrc") |
180 | (simple-file-home bash_profile ".bash_profile") |
181 | (simple-file-home gitconfig ".gitconfig") |
182 | (simple-file-home gtkrc-2 ".gtkrc-2.0") |
183 | (simple-file-home gtkrc-3 ".config/gtk-3.0/settings.ini") |
184 | (simple-file-home xfce4-terminalrc ".config/xfce4/terminal/terminalrc") |
185 | (symlink-file-home "/data/tyreunom/.mozilla" ".mozilla") |
186 | (symlink-file-home "/mnt/usb/.gnupg" ".gnupg") |
187 | (symlink-file-home "/data/tyreunom/.PlayOnLinux" ".PlayOnLinux") |
188 | (symlink-file-home "/data/tyreunom/PlayOnLinux" "PlayOnLinux") |
189 | (symlink-file-home "/data/tyreunom/Downloads" "Downloads") |
190 | (symlink-file-home "/data/tyreunom/.config/transmission" |
191 | ".config/transmission") |
192 | (symlink-file-home "/data/tyreunom/.config/guix-gaming-channels" |
193 | ".config/guix-gaming-channels"))) |
194 | #:guix-config-symlink "/data/tyreunom/.config/guix") |
195 |