aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--aux/containers/guix/pinned-channels.scm11
-rwxr-xr-xaux/containers/guix/with-container.sh12
2 files changed, 11 insertions, 12 deletions
diff --git a/aux/containers/guix/pinned-channels.scm b/aux/containers/guix/pinned-channels.scm
deleted file mode 100644
index f5c039a..0000000
--- a/aux/containers/guix/pinned-channels.scm
+++ /dev/null
@@ -1,11 +0,0 @@
-(cons*
- (channel
- (name 'xyz-euandreh)
- (url "git://euandreh.xyz/package-repository.git")
- (branch "main")
- (introduction
- (make-channel-introduction
- "d749e053e6db365069cb9b2ef47a78b06f9e7361"
- (openpgp-fingerprint
- "5BDA E9B8 B2F6 C6BC BB0D 6CE5 81F9 0EC3 CD35 6060"))))
- %default-channels)
diff --git a/aux/containers/guix/with-container.sh b/aux/containers/guix/with-container.sh
index 045e757..fcbb8b5 100755
--- a/aux/containers/guix/with-container.sh
+++ b/aux/containers/guix/with-container.sh
@@ -1,7 +1,17 @@
#!/bin/sh
set -eu
-ENV_CMD='guix time-machine --fallback -C aux/containers/guix/pinned-channels.scm -- environment --fallback -m aux/containers/guix/manifest.scm'
+CHANNEL_REMOTE='https://euandreh.xyz/package-repository.git'
+CHANNEL_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/euandreh-guix-channel"
+
+if [ ! -d "$CHANNEL_DIR" ]; then
+ git clone "$CHANNEL_REMOTE" "$CHANNEL_DIR"
+fi
+
+git -C "$CHANNEL_DIR" pull
+
+ENV_CMD="guix environment -L $CHANNEL_DIR/src/ -m aux/containers/guix/manifest.scm"
+
if [ -z "${1:-}" ]; then
$ENV_CMD
else