(define-module (aisaka-home-configuration) #:use-module (gnu home) #:use-module (gnu home services) #:use-module (gnu home services shells) #:use-module (gnu packages) #:use-module (gnu services) #:use-module (guix gexp)) (define config-prefix "/home/marek/src/guix-config/") (define home-env-vars '(("EDITOR" . "emacs") ("NVM_DIR" . "$HOME/src/nvm") ("GUILE_AUTO_COMPILE" . "0"))) (define home-aliases `(("grep" . "grep --color=auto") ("ll" . "ls -l") ("ls" . "ls -p --color=auto") ("pull-guix" . "guix pull") ("pull-guix-" . "pull-guix --allow-downgrades --disable-authentication") ("reconfigure-home" . (string-append "guix home reconfigure " ,config-prefix "home-configuration.scm")) ("reconfigure-home-" . "reconfigure-home --allow-downgrades") ("reconfigure-system" . (string-append "sudo guix system reconfigure " ,config-prefix "system-configuration.scm")) ("reconfigure-system-" . "reconfigure-system --allow-downgrades") ("system-update" . "pull-guix && reconfigure-system && reconfigure-home") ("system-update-" . "pull-guix- && reconfigure-system- && reconfigure-home-"))) (define bash-configuration (home-bash-configuration (environment-variables home-env-vars) (aliases home-aliases) (bash-profile `(,(local-file (string-append config-prefix ".bash_profile") "bash_profile"))) (bashrc `(,(local-file (string-append config-prefix ".bashrc") "bashrc"))))) (define home-bash-service (service home-bash-service-type bash-configuration)) (define home-files `((".config/guix/shell-authorized-directories" ,(local-file "g-sh-auth-dir")) (".emacs" ,(local-file "emacs.el")) (".ssh/config" ,(local-file "ssh.config")))) (define dot-files-service (simple-service 'dot-files home-files-service-type home-files)) (define home-services `(,home-bash-service ,dot-files-service)) (home-environment (packages (map (compose list specification->package+output) '("cpupower" "dconf-editor" "emacs-no-x" "emacs-ac-geiser" "emacs-aggressive-indent" "emacs-geiser" "emacs-geiser-guile" "emacs-iedit" "emacs-multiple-cursors" "emacs-paredit" "font-google-noto" "git" "git-lfs" "gnome-tweaks" "gnupg" "icecat" "jami" "libreoffice" "pwgen" "seahorse" "sicp" "trezor-agent" "unzip" "zip"))) (services home-services))