;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Provides a set of my preferred ;; ;; programs and services for any ;; ;; system ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (define-module (base) #:use-module (gnu packages) #:use-module (gnu packages gnupg) #:use-module (gnu services) #:use-module (gnu services base) #:use-module (gnu services file-sharing) #:use-module (gnu services networking) #:use-module (gnu services ssh) #:use-module (gnu system) #:export (bd-base-system-packages bd-base-system-services)) (define comm '( "aspell" "aspell-dict-en" "gnupg" "notmuch" "offlineimap3" "pass-otp" "password-store" "pinentry" "transmission" "xpdf" ; pdftotext "yt-dlp" )) (define dev '( "cryptsetup" "curl" "emacs" "git" "jq" "netcat" "recutils" "rsync" "sbcl" "stow" "texlive" "vim" )) (define emacs '( "emacs-all-the-icons" "emacs-all-the-icons-dired" "emacs-auctex" "emacs-consult" "emacs-ef-themes" "emacs-emms" "emacs-guix" "emacs-htmlize" "emacs-magit" "emacs-marginalia" "emacs-notmuch" "emacs-orderless" "emacs-org-roam" "emacs-paredit" "emacs-popper" "emacs-rainbow-delimiters" "emacs-rainbow-mode" "emacs-simple-httpd" "emacs-slime" "emacs-transmission" "emacs-vertico" "emacs-visual-fill-column" )) (define bd-base-system-packages `(,@(map specification->package (append! comm dev emacs )) ,@%base-packages)) (define bd-base-system-services `(,(service openssh-service-type (openssh-configuration (x11-forwarding? #t) (permit-root-login 'prohibit-password) (password-authentication? #f))) ,(service tor-service-type) ,(service transmission-daemon-service-type) ,@%base-services))