diff options
Diffstat (limited to 'aux/containers')
-rw-r--r-- | aux/containers/guix/manifest.scm | 24 | ||||
-rwxr-xr-x | aux/containers/guix/with-container.sh | 19 |
2 files changed, 43 insertions, 0 deletions
diff --git a/aux/containers/guix/manifest.scm b/aux/containers/guix/manifest.scm new file mode 100644 index 0000000..f670fdd --- /dev/null +++ b/aux/containers/guix/manifest.scm @@ -0,0 +1,24 @@ +(specifications->manifest + (map symbol->string + '(bash + coreutils + findutils + diffutils + grep + sed + m4 + git + gawk + make + makefile2graph + graphviz + shellcheck + pandoc + gettext + po4a-text + mdpo-patched + hunspell + hunspell-dict-en-utf8 + hunspell-dict-pt-utf8 + hunspell-dict-fr-utf8 + hunspell-dict-eo-utf8))) diff --git a/aux/containers/guix/with-container.sh b/aux/containers/guix/with-container.sh new file mode 100755 index 0000000..fcbb8b5 --- /dev/null +++ b/aux/containers/guix/with-container.sh @@ -0,0 +1,19 @@ +#!/bin/sh +set -eu + +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 + $ENV_CMD --pure -C -- sh -c "$@" +fi |