(define-module (uranus) #:use-module (gnu) #:use-module (gnu services) #:use-module (gnu services web) #:use-module (gnu services dbus) #:use-module (gnu services docker) #:use-module (gnu services version-control) #:use-module (gnu services cgit) #:use-module (rosenthal services networking)) (use-service-modules cups desktop networking ssh docker xorg) (operating-system (locale "en_US.utf8") (timezone "Europe/Athens") (keyboard-layout (keyboard-layout "us")) (host-name "uranus") (users (cons* (user-account (name "thanos") (comment "Thanos Apollo") (group "users") (home-directory "/home/thanos") (supplementary-groups '("wheel" "netdev" "audio" "video" "docker"))) %base-user-accounts)) (packages (append (map specification->package '("docker" "dbus" "docker-cli")) %base-packages)) (services (append (list (service openssh-service-type (openssh-configuration (permit-root-login 'prohibit-password))) (service tailscale-service-type) (service nginx-service-type (nginx-configuration (server-blocks (list (nginx-server-configuration (server-name '("thanosapollo.org")) (root "/srv/http/thanosapollo.org") (listen '("*:8000")) (ssl-certificate #f) (ssl-certificate-key #f)) (nginx-server-configuration (server-name '("bebliotheke.thanosapollo.org")) (root "/srv/http/bebliotheke") (listen '("*:8001")) (ssl-certificate #f) (ssl-certificate-key #f)))))) (service cgit-service-type (cgit-configuration (root-desc "Δωρεὰν ἐλάβετε, δωρεὰν δότε. | Freely you have received; freely give. (Mathew 10:8)") (project-list '("dotfiles" "gnosis" "yeetube" "hecate" "pcmpl-emerge" "pcmpl-rc" "pcmpl-tailscale" "greek-polytonic.el")) (repository-directory "/srv/git") (root-title "Thanos Apollo | Git server") ;; (root-readme "/srv/git/README") (clone-prefix '("https://git.thanosapollo.org")))) (service gitolite-service-type (gitolite-configuration (admin-pubkey (plain-file "thanosapollo.pub" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDWbBxe1gu9IQEKSIu22Xz7n/w/kCHWl/+7jgDd2YBeqcnIZ3d/s6TGIFDlrZQpSjwkFHke78jk6OW2/LzGn7MH0mYldqdUlbBrAWK1INeQPsdE6bPysKjufLt/E18as1E+gEd1H4lcw63SU2jr+hm/XMU/pK7sCFEbu1n2kAv5qedg6ik0+Ts9y3U9W11DzShATg1TaotgcXvkO+Iaup7wsaPYfUp6MkNBEE9dXg3hrUrtjozlr9bIfcpLwwkG/ZpQJdSPcB/6X9dBg3Crop6iK272vlyvmGohBrvkvuC8EpDVZu+i5xfwr1VAv/kWKdQQyovlJLHC6+S5gGLIE9RC8J5rHSrUkuOcQOhwvEVXThLbtwiXA3ozsyM6Mh/5jVIKc8erqvLrC9+dGh98mAajme4TGFw/agZ5uo/uKehNFGwBEqjXQHFJfjmW0OhjAtNLg2/4E7TuTV+0qtvvxPLEOKiuHDWsVC06OFj5UbLpvMR790j1WhODHVcVlKskop8= thanos@zeus")) (rc-file (gitolite-rc-file (umask #o0077))))) (service elogind-service-type (elogind-configuration (handle-lid-switch 'ignore))) (service dhcp-client-service-type) (service ntp-service-type) (service cups-service-type) (service containerd-service-type) (service docker-service-type)) %base-services)) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets (list "/boot/efi")) (keyboard-layout keyboard-layout))) (swap-devices (list (swap-space (target (uuid "cc0005c6-0cae-4a38-ae3c-ae32009c7788"))))) (file-systems (cons* (file-system (mount-point "/boot/efi") (device (uuid "54F2-0DFC" 'fat32)) (type "vfat")) (file-system (mount-point "/") (device (uuid "3575b20f-398d-4f67-9f7e-bd793a0ca332" 'ext4)) (type "ext4")) %base-file-systems)))