guix-machines/.guix/rekahsoft/guix-config/vms/cloud0-home-rekahsoft-ca.scm

59 lines
1.9 KiB
Scheme

(define-module (rekahsoft guix-config vms cloud0-home-rekahsoft-ca)
#:use-module (gnu)
#:use-module (gnu system)
#:use-module (gnu packages docker)
#:use-module (gnu packages shells)
#:use-module (gnu packages storage)
#:use-module (gnu services docker)
#:use-module (gnu services mail)
#:use-module (gnu services shepherd)
#:use-module (rekahsoft guix-config proxmox-vm-lvm-minimal)
#:use-module (rekahsoft-gnu services ceph)
#:export (%system))
(define base-system (proxmox-vm-lvm-minimal "cloud0"))
(define %radicale-config-file
(plain-file "radicale.conf" "
[auth]
type = htpasswd
htpasswd_filename = /var/lib/radicale/users
htpasswd_encryption = bcrypt
[server]
hosts = 0.0.0.0:5232
[storage]
filesystem_folder = /var/lib/radicale/collections"))
(define %system
(operating-system
(inherit base-system)
(users (cons*
(user-account
(name "collin")
(comment "Master User")
(group "users")
(shell #~(string-append #$zsh "/bin/zsh"))
(supplementary-groups
'("wheel" "netdev" "audio" "video" "docker"))
(home-directory "/home/collin"))
(operating-system-users base-system)))
(services
(append
(list (service docker-service-type)
(service radicale-service-type
(radicale-configuration
(config-file %radicale-config-file)))
(service cephfs-service-type
(cephfs-configuration
(name "file-vault-nextcloud")
(mount-point "/mnt/cephfs")
(fsid "0f2890c4-3a78-4859-b7c1-43f749b127b3")
(fs-name "cephfs")
(secret-file "/etc/ceph/ceph.client.file-vault-nextcloud.key")
(monitors (list "172.16.0.20" "172.16.0.21" "172.16.0.22"))
(subdir "/file-vault/nextcloud"))))
%proxmox-vm-lvm-minimal-services))))