summaryrefslogtreecommitdiff
path: root/.config/guix/modules/base.scm
diff options
context:
space:
mode:
authorbd <bdunahu@colostate.edu>2024-05-26 14:21:39 -0600
committerbd <bdunahu@colostate.edu>2024-05-26 14:21:39 -0600
commita89ee9ed7f52341b67b55b3f7337a27938508764 (patch)
tree908e89855e87a2982fa73c111f9fbc4487b6d26c /.config/guix/modules/base.scm
parent20e9f64da4bd505c50211c3041c8ae25093643ed (diff)
Refactored home service file structure to be more streamlined
Diffstat (limited to '.config/guix/modules/base.scm')
-rw-r--r--.config/guix/modules/base.scm91
1 files changed, 90 insertions, 1 deletions
diff --git a/.config/guix/modules/base.scm b/.config/guix/modules/base.scm
index e0fbdb3..6704959 100644
--- a/.config/guix/modules/base.scm
+++ b/.config/guix/modules/base.scm
@@ -6,6 +6,13 @@
(define-module (base)
+ #:use-module (gnu home services)
+ #:use-module (gnu home services dict)
+ #:use-module (gnu home services gnupg)
+ #:use-module (gnu home services shells)
+ #:use-module (gnu home services shepherd)
+ #:use-module (gnu home services ssh)
+ #:use-module (gnu home services xdg)
#:use-module (gnu packages)
#:use-module (gnu packages gnupg)
#:use-module (gnu services)
@@ -14,8 +21,10 @@
#:use-module (gnu services networking)
#:use-module (gnu services ssh)
#:use-module (gnu system)
+ #:use-module (guix gexp)
#:export (bd-base-system-packages
- bd-base-system-services))
+ bd-base-system-services
+ bd-base-home-services))
@@ -94,3 +103,83 @@
,(service tor-service-type)
,(service transmission-daemon-service-type)
,@%base-services))
+
+(define bd-base-home-services
+ (list
+ (service home-shepherd-service-type)
+
+ (service home-dicod-service-type)
+
+ (service home-gpg-agent-service-type
+ (home-gpg-agent-configuration
+ (pinentry-program
+ (file-append pinentry "/bin/pinentry"))
+ (max-cache-ttl 43200)
+ (ssh-support? #t)))
+
+ (service home-bash-service-type
+ (home-bash-configuration
+ (aliases '(("cp" . "cp -i")
+ ("grep" . "grep --color=auto")
+ ("guix-rcfg" . "sudo guix system -L ${HOME}/.config/guix/modules/ reconfigure ${HOME}/.config/guix/${HOSTNAME}.scm")
+ ("ll" . "ls -l")
+ ("ls" . "ls -p --color=auto")
+ ("mkd" . "mkdir -pv")
+ ("mv" . "mv -i")
+ ("rm" . "rm -i")
+ ("suspend" . "sudo bash -c 'echo mem > /sys/power/state'")
+ ("vi" . "vim")
+ ("xeb" . "emacsclient -nce '(switch-to-buffer nil)'")
+ ("xet" . "emacsclient -nce '(shell)'")
+ ("ytta" . "yt-dlp --extract-audio --format bestaudio/best")
+ ("yttv" . "yt-dlp -f b")))
+
+
+ (bashrc (list (plain-file "bashrc" "
+# converts above aliases into eshell aliases automatically
+alias | sed -E \"s/^alias ([^=]+)='(.*)'$/alias \\1 \\2 \\$*/g; s/'\\\\\\''/'/g;\" >~/.config/emacs/eshell/alias
+
+# add my scripts to path
+PATH=${HOME}/Personal/scripts:$PATH")))
+ (environment-variables
+ '(("BROWSER" . "icecat")))))
+
+ (service home-openssh-service-type
+ (home-openssh-configuration
+ (hosts
+ (list (openssh-host (name "hati")
+ (host-name "192.168.1.76")
+ (user "bdunahu"))
+ (openssh-host (name "vali")
+ (host-name "192.168.1.64")
+ (user "bdunahu"))
+ (openssh-host (name "ivaldi")
+ (host-name "192.168.1.98")
+ (user "bdunahu"))
+ (openssh-host (name "heimdallr")
+ (host-name "operationnull.com")
+ (user "root"))))))
+
+ (service home-xdg-user-directories-service-type
+ (home-xdg-user-directories-configuration
+ (desktop "$HOME")
+ (documents "$HOME")
+ (download "$HOME/dl")
+ (music "$HOME/media")
+ (pictures "$HOME/media")
+ (publicshare "$HOME")
+ (templates "$HOME")
+ (videos "$HOME/media")))
+
+ (service home-xdg-mime-applications-service-type
+ (home-xdg-mime-applications-configuration
+ (default
+ '((application/x-bittorrent . torrent.desktop)
+ (x-scheme-handler/magnet . torrent.desktop)))
+ (desktop-entries
+ (list
+ (xdg-desktop-entry
+ (file "torrent")
+ (name "Torrent")
+ (type 'application)
+ (config '((exec . "transmission-remote -a %u"))))))))))