Add gitolite service
systems/ene.scm
22 | 22 | (use-modules (gnu services dns)) | |
23 | 23 | (use-modules (gnu services mail)) | |
24 | 24 | (use-modules (gnu services networking)) | |
25 | + | (use-modules (gnu services version-control)) | |
25 | 26 | (use-modules (gnu services web)) | |
26 | 27 | (use-modules (gnu system)) | |
27 | 28 | ||
… | |||
32 | 33 | (use-modules (guix utils)) | |
33 | 34 | ||
34 | 35 | (use-modules (config certbot) (config dns) (config iptables) | |
35 | - | (config mail) (config os)) | |
36 | + | (config mail) (config os)) | |
36 | 37 | ||
37 | 38 | ;; Copy from (gnu bootloader u-boot) | |
38 | 39 | (define install-allwinner-u-boot | |
… | |||
71 | 72 | (baud-rate "115200") | |
72 | 73 | (term "vt100") | |
73 | 74 | (tty "ttyS0"))) | |
74 | - | (service nginx-service-type) | |
75 | + | (service tor-service-type) | |
76 | + | (tor-hidden-service "mail" | |
77 | + | '((25 "127.0.0.1:25") | |
78 | + | (143 "127.0.0.1:143") | |
79 | + | (587 "127.0.0.1:587") | |
80 | + | (993 "127.0.0.1:993"))) | |
75 | 81 | (service knot-service-type | |
76 | 82 | (knot-configuration | |
77 | 83 | (includes '("/etc/knot/secrets.conf")) | |
… | |||
82 | 88 | ipv6-reverse-master-zone)))) | |
83 | 89 | (certbot-service `(("courriel.lepiller.eu" "imap.lepiller.eu") | |
84 | 90 | ("ene.lepiller.eu" "rennes.lepiller.eu") | |
85 | - | ("avatar.lepiller.eu"))) | |
91 | + | ("avatar.lepiller.eu") | |
92 | + | ("git.lepiller.eu"))) | |
93 | + | (service nginx-service-type) | |
86 | 94 | (service php-fpm-service-type) | |
87 | 95 | (cat-avatar-generator-service | |
88 | 96 | #:configuration | |
89 | 97 | (nginx-server-configuration | |
90 | 98 | (server-name '("avatar.lepiller.eu")) | |
91 | - | (ssl-certificate "/etc/letsencrypt/live/avatar.lepiller.eu/fullchain.pem") | |
92 | - | (ssl-certificate-key "/etc/letsencrypt/live/avatar.lepiller.eu/privkey.pem") | |
99 | + | (ssl-certificate | |
100 | + | "/etc/letsencrypt/live/avatar.lepiller.eu/fullchain.pem") | |
101 | + | (ssl-certificate-key | |
102 | + | "/etc/letsencrypt/live/avatar.lepiller.eu/privkey.pem") | |
93 | 103 | (listen '("443 ssl http2" "[::]:443 ssl http2")))) | |
94 | 104 | (simple-service 'default-http-server nginx-service-type | |
95 | 105 | (list (nginx-server-configuration | |
96 | - | (ssl-certificate "/etc/letsencrypt/live/ene.lepiller.eu/fullchain.pem") | |
97 | - | (ssl-certificate-key "/etc/letsencrypt/live/ene.lepiller.eu/privkey.pem") | |
106 | + | (ssl-certificate | |
107 | + | "/etc/letsencrypt/live/ene.lepiller.eu/fullchain.pem") | |
108 | + | (ssl-certificate-key | |
109 | + | "/etc/letsencrypt/live/ene.lepiller.eu/privkey.pem") | |
110 | + | (listen '("443 ssl http2" "[::]:443 ssl http2")) | |
111 | + | (server-name '(default))(root "/srv/http/default")))) | |
112 | + | (simple-service 'git-server nginx-service-type | |
113 | + | (list (nginx-server-configuration | |
114 | + | (ssl-certificate | |
115 | + | "/etc/letsencrypt/live/git.lepiller.eu/fullchain.pem") | |
116 | + | (ssl-certificate-key | |
117 | + | "/etc/letsencrypt/live/git.lepiller.eu/privkey.pem") | |
98 | 118 | (listen '("443 ssl http2" "[::]:443 ssl http2")) | |
99 | - | (server-name '(default))(root "/srv/http/default"))))) | |
100 | - | (lepiller-mail-services | |
101 | - | #:interface "eth0" | |
102 | - | #:domain "courriel.lepiller.eu") | |
119 | + | (server-name '(default))(root "/srv/http/git/public")))) | |
120 | + | (service gitolite-service-type | |
121 | + | (gitolite-configuration | |
122 | + | (admin-pubkey (local-file "../keys/tyreunom.pub"))))) | |
123 | + | (modify-services | |
124 | + | (lepiller-mail-services | |
125 | + | #:interface "eth0" | |
126 | + | #:domain "courriel.lepiller.eu") | |
127 | + | (dovecot-service-type config => | |
128 | + | (dovecot-configuration | |
129 | + | (inherit config) | |
130 | + | (dovecot (package | |
131 | + | (inherit dovecot) | |
132 | + | (arguments | |
133 | + | `(#:tests? #f | |
134 | + | ,@(package-arguments dovecot)))))))) | |
103 | 135 | (server-services "ene")))) |