diff options
Diffstat (limited to 'guix')
-rw-r--r-- | guix/theodora.scm (renamed from guix/uranus.scm) | 84 |
1 files changed, 60 insertions, 24 deletions
diff --git a/guix/uranus.scm b/guix/theodora.scm index 7cc4f99..94ad118 100644 --- a/guix/uranus.scm +++ b/guix/theodora.scm @@ -1,4 +1,4 @@ -(define-module (uranus) +(define-module (theodora) #:use-module (gnu) #:use-module (gnu services) #:use-module (gnu services web) @@ -6,24 +6,37 @@ #:use-module (gnu services docker) #:use-module (gnu services version-control) #:use-module (gnu services cgit) - #:use-module (rosenthal services networking)) + #:use-module (rosenthal services networking) + #:use-module (gnu packages databases) + #:use-module (gnu packages haskell-apps) + #:use-module (gnu packages version-control)) (use-service-modules cups desktop networking ssh docker xorg) +(make-gitolite (list redis git-annex)) + (operating-system (locale "en_US.utf8") (timezone "Europe/Athens") (keyboard-layout (keyboard-layout "us")) - (host-name "uranus") + (host-name "theodora") (users (cons* (user-account (name "thanos") (comment "Thanos Apollo") (group "users") (home-directory "/home/thanos") (supplementary-groups '("wheel" "netdev" "audio" "video" "docker"))) + (user-account + (name "git") + (comment "Git user") + (group "users") + (home-directory "/home/git") + (supplementary-groups '("netdev"))) %base-user-accounts)) (packages - (append (map specification->package '("docker" "dbus" "docker-cli")) %base-packages)) + (append (map specification->package '("docker" "dbus" "docker-cli" "sqlite" + "docker-compose")) + %base-packages)) (services (append (list (service openssh-service-type @@ -32,6 +45,34 @@ (service tailscale-service-type) + ;; (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 #o0027) + ;; (git-config-keys ".*") + ;; ;; (unsafe-patt "^$") + ;; )))) + + (service git-daemon-service-type + (git-daemon-configuration + (export-all? #t) + (base-path "/srv/git") + (listen '("git.thanosapollo.org" "localhost" "192.168.0.101" "theodora")))) + + (service cgit-service-type + (cgit-configuration + (root-desc "Δωρεὰν ἐλάβετε, δωρεὰν δότε. | Freely you have received; freely give. (Mathew 10:8)") + (project-list '("dotfiles" "gnosis" "yeetube" "org-gnosis" + "hecate" "pcmpl-emerge" "pcmpl-rc" "hunspell-dict-el" "hunspell-dict-en-med" + "pcmpl-tailscale" "greek-polytonic.el" "org-gnosis-ui" "hunspell-dict-el-polytonic")) + (repository-directory "/srv/git") + (root-title "Thanos Apollo | Git server") + (enable-index-owner? #f) + (clone-prefix '("https://git.thanosapollo.org")))) (service nginx-service-type (nginx-configuration @@ -49,33 +90,28 @@ (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)) + (service docker-service-type) + (service oci-container-service-type + (list + ;; (oci-container-configuration + ;; (image "gitea/gitea") + ;; (network "host") + ;; (volumes + ;; '(("/home/git/data" . "/gitea") + ;; ("/etc/timezone" . "/etc/timezone") + ;; ("/etc/localtime" . "/etc/localtime"))) + ;; (ports + ;; '(("3000" . "3000") + ;; ("22" . "222")))) + ))) %base-services)) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) |