(define-module (users marekpasnikowski) #:use-module (gnu home) ; home-environment #:use-module (gnu home services) ; home-profile-service-type ; home-xdg-configuration-files-service-type #:use-module (gnu home services shells) ; home-fish-service-type #:use-module (gnu packages emacs) ; emacs #:use-module (gnu packages emacs-xyz) ; emacs-org-roam ; emacs-paredit #:use-module (gnu packages librewolf) ; librewolf #:use-module (gnu packages shells) ; fish #:use-module (gnu packages version-control) ; git #:use-module (gnu services) ; service ; simple-service #:use-module (gnu system shadow) ; user-account #:use-module (guix gexp) ; file-append #:use-module (suweren home) ; %suweren-home-services ) ;; DEPRECATED (define marekpasnikowski-services (let* ((packages (list emacs emacs-org-roam emacs-paredit)) (profile (list (simple-service 'marekpasnikowski-packages home-profile-service-type packages)))) (append %suweren-home-services profile))) ;; string (define-public marekpasnikowski-username "marek") ;; DEPRECATED (define-public home (let ((services* (append %suweren-home-services marekpasnikowski-services))) (home-environment (services services*)))) ;; (string) -> ;; record user-account (define-public (marekpasnikowski-account supplementary-groups*) (let ((fish (file-append fish "/bin/fish"))) (user-account (name marekpasnikowski-username) (group "users") (supplementary-groups supplementary-groups*) (shell fish)))) ;; record home-environment (define-public marekpasnikowski-home-environment (let* ((gitconfig-file (local-file "marekpasnikowski-gitconfig")) ; TODO modularize (gitignore-file (local-file "marekpasnikowski-gitignore")) ; TODO review the contents (gitconfig (list "git/config" gitconfig-file)) (gitignore (list "git/ignore" gitignore-file)) (git-configuration-files (list gitconfig gitignore)) (git-packages (list git)) (fish (service home-fish-service-type)) (git-configuration (simple-service 'git-configuration home-xdg-configuration-files-service-type git-configuration-files)) (git-software (simple-service 'git-packages home-profile-service-type git-packages)) (services* (list fish git-configuration git-software))) (home-environment (services services*))))