diff options
author | Amin Bandali <mab@gnu.org> | 2020-03-13 21:22:30 -0400 |
---|---|---|
committer | Amin Bandali <mab@gnu.org> | 2020-03-13 21:22:30 -0400 |
commit | e72d011ddff3da64f76dc70789603a033efdf74c (patch) | |
tree | 08260c432be664cb5c5fecf749d0a5834cc9a7fe | |
parent | d6c37a13aed6c5039e795f14081a6ff2f4cb1959 (diff) | |
download | configs-e72d011ddff3da64f76dc70789603a033efdf74c.tar.gz configs-e72d011ddff3da64f76dc70789603a033efdf74c.tar.xz configs-e72d011ddff3da64f76dc70789603a033efdf74c.zip |
guix: break down monolithic profile into multiple smaller profiles
super useful for decoupling larger packages like icecat, libreoffice,
and texlive from the rest of mostly-smaller packages, so i could
easily `guix pull' and update the smaller ones as frequently as i like
-rw-r--r-- | .bashrc | 3 | ||||
-rw-r--r-- | .config/guix/manifest/doc.scm | 8 | ||||
-rw-r--r-- | .config/guix/manifest/main.scm (renamed from .config/guix/manifest/chaman.scm) | 23 | ||||
-rw-r--r-- | .config/guix/manifest/media.scm | 6 | ||||
-rw-r--r-- | .config/guix/manifest/web.scm | 3 | ||||
-rw-r--r-- | .profile | 12 |
6 files changed, 42 insertions, 13 deletions
@@ -108,8 +108,7 @@ if ! shopt -oq posix; then fi # source Guix shell config dirs, for vte.sh and bash completions -GUIX_PROFILES=("${HOME}/.desktop-profile" - "${HOME}/.guix-profile" +GUIX_PROFILES=("${HOME}/.guix-profile" "${HOME}/.config/guix/current") for profile in "${GUIX_PROFILES[@]}"; do for dir in "${profile}/etc/bash_completion.d" "${profile}/etc/profile.d"; do diff --git a/.config/guix/manifest/doc.scm b/.config/guix/manifest/doc.scm new file mode 100644 index 0000000..b732864 --- /dev/null +++ b/.config/guix/manifest/doc.scm @@ -0,0 +1,8 @@ +(specifications->manifest + '("libreoffice" + "texlive-amsfonts" + "texlive-base" + "texlive-latex-listings" + ;; "texlive-palatino" + "texlive-xcolor" +)) diff --git a/.config/guix/manifest/chaman.scm b/.config/guix/manifest/main.scm index edffa52..8917d27 100644 --- a/.config/guix/manifest/chaman.scm +++ b/.config/guix/manifest/main.scm @@ -1,11 +1,13 @@ (specifications->manifest '("alsa-utils" - "audacity" "bash-completion" + "cpufrequtils" + "cpupower" "cvs" "dunst" "emacs" "emacs-alert" + "emacs-amx" "emacs-async" "emacs-biblio-git" "emacs-boxquote" @@ -40,6 +42,8 @@ ;; "emacs-multi-term" "emacs-multiple-cursors" "emacs-mwim" + ;; "emacs-next" + ;; "emacs-next-delight" "emacs-no-littering" "emacs-org" "emacs-org-contrib" @@ -51,7 +55,6 @@ "emacs-projectile" "emacs-shrink-path-git" "emacs-smart-mode-line" - "emacs-smex" "emacs-typo" "emacs-unkillable-scratch" "emacs-use-package" @@ -67,9 +70,9 @@ "font-sil-gentium" "font-tex-gyre" ;; "font-ubuntu" + "font-vazir" "getmail" "gettext" - "gimp" "git" "git:send-email" "gnupg" @@ -79,35 +82,33 @@ "hunspell" "hunspell-dict-en-ca" "hunspell-dict-en-us" - "icecat" - "inkscape" "isync" "light" - "mpv" "msmtp" "ncdu" "notmuch" "openjdk" "openssh" "openssl" + "pass-otp" "password-store" + "pasystray" "pinentry-emacs" "poppler" ; for 'pdffonts' "rofi" "rofi-pass" "rsync" - "rtv" "rxvt-unicode" "screen" + "scrot" "setxkbmap" - ;; "texlive" - ;; "texlive-base" + "strace" "thinkfan" + "unzip" "wget" "xdg-user-dirs" ;; "xkbcomp" "xmodmap" "xrdb" "xset" - "xsetroot" - "youtube-dl")) + "xsetroot")) diff --git a/.config/guix/manifest/media.scm b/.config/guix/manifest/media.scm new file mode 100644 index 0000000..f8ff541 --- /dev/null +++ b/.config/guix/manifest/media.scm @@ -0,0 +1,6 @@ +(specifications->manifest + '("audacity" + "gimp" + "inkscape" + "mpv" + "youtube-dl")) diff --git a/.config/guix/manifest/web.scm b/.config/guix/manifest/web.scm new file mode 100644 index 0000000..6e5fd34 --- /dev/null +++ b/.config/guix/manifest/web.scm @@ -0,0 +1,3 @@ +(specifications->manifest + '("icecat" + "rtv")) @@ -20,6 +20,9 @@ fi export PATH export INFOPATH +export MY_GUIX_MANIFESTS="$HOME/.config/guix/manifest" +export MY_GUIX_PROFILES="$HOME/.config/guix/profile" + export XDG_CONFIG_HOME="$HOME/.config" export XDG_DATA_HOME="$HOME/.local/share" @@ -60,6 +63,15 @@ if [ -z "$IS_GUIX_SYSTEM" ]; then fi fi +for p in $MY_GUIX_PROFILES/*; do + profile=$p/$(basename "$p") + if [ -f "$profile"/etc/profile ]; then + GUIX_PROFILE="$profile" + . "$GUIX_PROFILE"/etc/profile + fi + unset profile +done + # start an ssh-agent (with guix's openssh) if [ -z "$IS_GUIX_SYSTEM" ]; then if ! pgrep -u "$USER" ssh-agent > /dev/null; then |