summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmin Bandali <mab@gnu.org>2020-03-13 21:22:30 -0400
committerAmin Bandali <mab@gnu.org>2020-03-13 21:22:30 -0400
commite72d011ddff3da64f76dc70789603a033efdf74c (patch)
tree08260c432be664cb5c5fecf749d0a5834cc9a7fe
parentd6c37a13aed6c5039e795f14081a6ff2f4cb1959 (diff)
downloadconfigs-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--.bashrc3
-rw-r--r--.config/guix/manifest/doc.scm8
-rw-r--r--.config/guix/manifest/main.scm (renamed from .config/guix/manifest/chaman.scm)23
-rw-r--r--.config/guix/manifest/media.scm6
-rw-r--r--.config/guix/manifest/web.scm3
-rw-r--r--.profile12
6 files changed, 42 insertions, 13 deletions
diff --git a/.bashrc b/.bashrc
index a48c605..7e81de3 100644
--- a/.bashrc
+++ b/.bashrc
@@ -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"))
diff --git a/.profile b/.profile
index b419e55..7b287dc 100644
--- a/.profile
+++ b/.profile
@@ -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