diff options
Diffstat (limited to 'guix/home.scm')
-rw-r--r-- | guix/home.scm | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/guix/home.scm b/guix/home.scm new file mode 100644 index 0000000..b11fc4f --- /dev/null +++ b/guix/home.scm @@ -0,0 +1,81 @@ +;; This "home-environment" file can be passed to 'guix home reconfigure' +;; to reproduce the content of your profile. This is "symbolic": it only +;; specifies package names. To reproduce the exact same profile, you also +;; need to capture the channels being used, as returned by "guix describe". +;; See the "Replicating Guix" section in the manual. + +(use-modules (gnu packages) + (gnu packages gnupg) + (gnu services) + (guix gexp) + (gnu system) + (gnu home) + (gnu home services) + (gnu home services dotfiles) + (gnu home services shells) + (gnu home services desktop) + (gnu home services gnupg)) + +(home-environment + ;; Below is the list of packages that will show up in your + ;; Home profile, under ~/.guix-home/profile. + ;; (packages + ;; (append (map specification->package + ;; '("emacs-pgtk" "aspell-dict-el")))) + ;; Below is the list of Home services. To search for available + ;; services, run 'guix home search KEYWORD' in a terminal. + (services + (list (service home-bash-service-type + (home-bash-configuration + (guix-defaults? #f) + (aliases '(("fanki" . "flatpak run net.ankiweb.Anki") + ("ga" . "git add") + ("gaa" . "git add .") + ("gc" . "git commit -m") + ("gp" . "git push -u origin") + ("gpd" . "git push -u origin developer") + ("gpm" . "git push -u origin master") + ("grep" . "grep --color=auto") + ("gs" . "git status") + ("klight" . "brightnessctl --device='\\''tpacpi::kbd_backlight'\\'' set 1") + ("ll" . "ls -lah --color") + ("logout" . "pkill -U $USER") + ("ls" . "ls --color") + ("o" . "emacsclient -n") + ("weather" . "curl wttr.in") + ("ytd" . "yt-dlp") + ("gx" . "guix"))) + (bashrc (list (local-file "/home/thanos/dotfiles/bash-base.sh" #:recursive? #t))))) + ;; TODO: Rewrite this mess + (service home-xdg-configuration-files-service-type + `(("emacs/init.el" ,(local-file "../emacs.el")) + ("alacritty/alacritty.toml" ,(local-file "../alacritty.toml")) + ("sway/config" ,(local-file "../sway.config")) + ("waybar/config" ,(local-file "../waybar-config")) + ("waybar/style.css" ,(local-file "../waybar-style.css")))) + (service home-dotfiles-service-type + (home-dotfiles-configuration + (directories '("/home/thanos/dotfiles/")) + (excluded '(".*~" ".*\\.swp" "\\.git" "\\.gitignore" ".*emacs.el" "sway\\*" "waybar-config" + "alacritty.toml" "vimium-options.json" "waybar-style.css" + ".*bash" "README" "LICENSE" ".*\\.scm" "sway.config" ".stow-local-ignore")))) + ;; Env variables + (simple-service 'profile-service-type + home-environment-variables-service-type + '(("VISUAL" . "emacsclient") + ("EDITOR" . "emacsclient") + ("GTK_THEME" . "Adwaita-dark") + ("XDG_CURRENT_DESKTOP" . "sway") + ("XDG_SESSION_TYPE" . "wayland") + ("PATH" . "/home/$USER/.local/bin:$PATH") + ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) + ;; GPG Configuration + (service home-gpg-agent-service-type + (home-gpg-agent-configuration + (pinentry-program + (file-append pinentry-gtk2 "/bin/pinentry-gtk-2")) + (ssh-support? #t) + (default-cache-ttl 28800) + (max-cache-ttl 28800) + (default-cache-ttl-ssh 28800) + (max-cache-ttl-ssh 28800)))))) |