aboutsummaryrefslogtreecommitdiff
#!/bin/sh
set -eu

CHANNEL_REMOTE='https://euandre.org/git/package-repository'
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
	$ENV_CMD --pure -C -- sh -c "$@"
fi