summaryrefslogtreecommitdiff
path: root/release
diff options
context:
space:
mode:
Diffstat (limited to 'release')
-rwxr-xr-xrelease84
1 files changed, 84 insertions, 0 deletions
diff --git a/release b/release
new file mode 100755
index 0000000..72dd29f
--- /dev/null
+++ b/release
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+VERSION=$(((guix environment --ad-hoc --container git -- \
+ git describe --tags) \
+ || echo "UNRELEASED") \
+ | sed 's|/|_|g')
+
+>&2 echo "Version is: $VERSION"
+
+COMMIT=$(git rev-parse HEAD)
+
+>&2 echo "Commit is: $COMMIT"
+
+rm -rf pure
+
+guix environment --ad-hoc --container git -- \
+ git checkout-index -a -f --prefix=pure/ \
+ || exit 1
+
+cd pure || exit 1
+
+HASH=$(guix hash -r -x .)
+
+cd .. || exit 1
+
+rm -rf pure || exit 1
+
+guix environment --ad-hoc guile-hall -- \
+ hall guix -x || exit 1
+
+mkdir -p guix/vkraus/packages || exit 1
+
+cat > release.scm <<EOF
+(use-modules (guix git-download))
+(define-public guile-ldp
+ (package
+ (inherit guile-ldp-local)
+ (version "$VERSION")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://labo.planete-kraus.eu/ldp.git")
+ (commit "$COMMIT")))
+ (sha256
+ (base32
+ "$HASH"))
+ (snippet
+ (quasiquote
+ (begin
+ (with-output-to-file ".tarball-version"
+ (lambda _ (format #t "~a~%" ,version)))
+ #t)))))
+ (native-inputs
+ (cons*
+ (quasiquote ("guile-hall" ,guile-hall))
+ (package-native-inputs guile-ldp-local)))))
+EOF
+
+rm -f guix/vkraus/packages/ldp.scm || exit 1
+
+guix environment --ad-hoc --container emacs -- \
+ emacs --batch --file guix/vkraus/packages/ldp.scm \
+ --eval '(insert "(define-module (vkraus packages ldp))\n")' \
+ --eval '(insert-file "../../../guix.scm")' \
+ -f end-of-buffer \
+ -f backward-sexp \
+ --eval '(insert "(define guile-ldp-local\n")' \
+ -f forward-sexp \
+ --eval '(insert ")\n\n")' \
+ --eval '(insert-file "../../../release.scm")' \
+ -f save-buffer \
+ || exit 1
+
+rm -rf guix.scm release.scm || exit 1
+
+guix environment --ad-hoc --container git -- \
+ git add guix/vkraus/packages/ldp.scm \
+ || exit 1
+
+guix build -L guix --rounds=2 --with-git-url=ldp=file://$PWD ldp \
+ || exit 1
+
+rm -rf pure