diff options
author | Vivien Kraus <vivien@planete-kraus.eu> | 2022-10-22 01:53:06 +0200 |
---|---|---|
committer | Vivien Kraus <vivien@planete-kraus.eu> | 2022-10-22 14:19:06 +0200 |
commit | d2d31e8fdbd9b52b102c78780debd030915c4b7c (patch) | |
tree | d1c94335ebd825bc87dd9dcd06e5c519746292bf | |
parent | dacd2d42b329da08c44f55942ea2f0f9de662f69 (diff) |
Update package
-rw-r--r-- | guix/scripts/disfluid-ostree.scm | 107 | ||||
-rw-r--r-- | vkraus/modules/disfluid-ostree.scm | 138 | ||||
-rw-r--r-- | vkraus/packages/disfluid.scm | 41 |
3 files changed, 273 insertions, 13 deletions
diff --git a/guix/scripts/disfluid-ostree.scm b/guix/scripts/disfluid-ostree.scm new file mode 100644 index 0000000..431a7da --- /dev/null +++ b/guix/scripts/disfluid-ostree.scm @@ -0,0 +1,107 @@ +(define-module + (guix scripts disfluid-ostree) + #:use-module + (vkraus modules disfluid-ostree) + #:use-module + (guix packages) + #:use-module + (guix gexp) + #:use-module + (guix store) + #:use-module + (guix ui) + #:use-module + (guix monads) + #:use-module + (guix derivations) + #:use-module + (guix build utils) + #:use-module + (guix build-system trivial) + #:use-module + (guix build-system copy) + #:use-module + (guix git-download) + #:use-module + ((guix licenses) #:prefix license:) + #:use-module + (guix modules) + #:use-module + (guix profiles) + #:use-module + (guix scripts) + #:use-module + (guix scripts pack) + #:use-module + (gnu packages base) + #:use-module + (gnu packages bash) + #:use-module + (gnu packages compression) + #:use-module + (gnu packages emacs) + #:use-module + (gnu packages gettext) + #:use-module + (gnu packages gnupg) + #:use-module + (gnu packages guile) + #:use-module + (gnu packages guile-xyz) + #:use-module + (gnu packages package-management) + #:use-module + (gnu packages version-control) + #:use-module + (ice-9 popen) + #:use-module + (ice-9 rdelim) + #:use-module + (ice-9 receive) + #:use-module + (srfi srfi-37) + #:export + (guix-disfluid-ostree)) +(define (show-help) + (display + (G_ "Usage: guix disfluid-ostree [OPTION]...\nCommit the latest disfluid to an ostree repository.")) + (newline) + (display + (G_ "\n -h, --help display this help and exit")) + (display + (G_ "\n -V, --version display version information and exit")) + (newline) + (display + (G_ "\n --repo=DIR add to the repository in DIR")) + (show-bug-report-information)) +(define %options + (list (option + '(#\h "help") + #f + #f + (lambda args (ostree-help) (exit 0))) + (option + '(#\V "version") + #f + #f + (lambda args + (show-version-and-exit "guix disfluid-ostree"))) + (option + '("repo") + #f + #t + (lambda (opt name arg result) + `((repo unquote arg) ,@result))))) +(define-command + (guix-disfluid-ostree . args) + (synopsis + "commit the latest disfluid build to an ostree repository") + (define opts + (parse-command-line + args + %options + (list (list)) + #:build-options? + #f)) + (let ((repo (assoc-ref opts 'repo))) + (disfluid-commit-ostree repo))) diff --git a/vkraus/modules/disfluid-ostree.scm b/vkraus/modules/disfluid-ostree.scm new file mode 100644 index 0000000..eb66177 --- /dev/null +++ b/vkraus/modules/disfluid-ostree.scm @@ -0,0 +1,138 @@ +(define-module + (vkraus modules disfluid-ostree) + #:use-module + (vkraus packages disfluid) + #:use-module + (guix packages) + #:use-module + (guix gexp) + #:use-module + (guix store) + #:use-module + (guix ui) + #:use-module + (guix monads) + #:use-module + (guix derivations) + #:use-module + (guix build utils) + #:use-module + (guix build-system trivial) + #:use-module + (guix build-system copy) + #:use-module + (guix git-download) + #:use-module + ((guix licenses) #:prefix license:) + #:use-module + (guix modules) + #:use-module + (guix profiles) + #:use-module + (guix scripts) + #:use-module + (guix scripts pack) + #:use-module + (gnu packages base) + #:use-module + (gnu packages bash) + #:use-module + (gnu packages compression) + #:use-module + (gnu packages emacs) + #:use-module + (gnu packages gettext) + #:use-module + (gnu packages gnupg) + #:use-module + (gnu packages guile) + #:use-module + (gnu packages guile-xyz) + #:use-module + (gnu packages package-management) + #:use-module + (gnu packages version-control) + #:use-module + (ice-9 popen) + #:use-module + (ice-9 rdelim) + #:use-module + (ice-9 receive) + #:use-module + (srfi srfi-37) + #:export + (disfluid-commit-ostree)) +(define (disfluid-commit-ostree repo) + (define disfluid-bin-pack + (mlet* %store-monad + ((profile + (profile-derivation + (packages->manifest (list disfluid)))) + (tarball + (self-contained-tarball + "disfluid-pack" + profile + #:symlinks + '(("/var/bin" -> "bin"))))) + (return tarball))) + (define disfluid-bin-drv + (run-with-store + (open-connection) + disfluid-bin-pack)) + (define script + (program-file + "update-flatpakrepo" + (with-imported-modules + (source-module-closure '((guix build utils))) + (gexp (begin + (use-modules (guix build utils)) + (let ((output (mkdtemp "/tmp/prepare-XXXXXX"))) + (mkdir-p (string-append output "/files")) + (copy-file + (ungexp disfluid-bin-drv) + (string-append output "/disfluid-pack.tar.gz")) + (chmod (string-append output "/disfluid-pack.tar.gz") + 420) + (invoke + (ungexp (file-append gzip "/bin/gzip")) + "-d" + (string-append output "/disfluid-pack.tar.gz")) + (invoke + (ungexp (file-append tar "/bin/tar")) + "-C" + (string-append output "/files") + "-xf" + (string-append output "/disfluid-pack.tar")) + (call-with-output-file + (string-append output "/metadata") + (lambda (port) + (format + port + "[Application]\nname=eu.planete_kraus.Disfluid\nruntime=eu.planete_kraus.Disfluid\nsdk=eu.planete_kraus.Disfluid\ncommand=disfluid\n\n[Context]\nshared=network;ipc;\nsockets=x11;wayland;\nfilesystems=\n"))) + (invoke + (ungexp (file-append libostree "/bin/ostree")) + "commit" + (format + #f + "--branch=deploy/app/eu.planete_kraus.Disfluid/x86_64/stable") + output + (format #f "--repo=~a" (ungexp repo))) + (invoke + (ungexp (file-append coreutils "/bin/chmod")) + "-R" + "u+w" + output) + (delete-file-recursively output))))))) + (invoke + (run-with-store + (open-connection) + (mlet %store-monad + ((update-flatpakrepo + (gexp->derivation + "invoke-update-flatpakrepo" + (gexp (symlink (ungexp script) (ungexp output)))))) + (mbegin + %store-monad + (built-derivations (list update-flatpakrepo)) + (return + (derivation->output-path update-flatpakrepo))))))) diff --git a/vkraus/packages/disfluid.scm b/vkraus/packages/disfluid.scm index 34a919a..0fddd5c 100644 --- a/vkraus/packages/disfluid.scm +++ b/vkraus/packages/disfluid.scm @@ -41,17 +41,17 @@ (define-public disfluid (package (name "disfluid") - (version "0.0.4-87-g6cbf05f") + (version "0.0.4-90-g0a23b9d") (source (origin (method git-fetch) (uri (git-reference (url "https://labo.planete-kraus.eu/disfluid.git") (commit - "6cbf05f0eb02cbcc6adf8b62b531c917ed9c4d75"))) + "0a23b9db70ef260d2483d6885b3b5a17e8e49608"))) (sha256 (base32 - "1sfz1hk8fh55fzwv40y2r57n951ssqkknsmggs0kqdm1gb77la9y")))) + "1qncvwyxq2sindwg0g7kx9dmmfa3b5vn87fgj70jrzyqhcfa96sc")))) (build-system gnu-build-system) (arguments `(#:phases @@ -73,7 +73,7 @@ 'bootstrap 'fix-hall.scm (lambda _ - (let ((disfluid-version "0.0.4-87-g6cbf05f")) + (let ((disfluid-version "0.0.4-90-g0a23b9d")) (substitute* "hall.scm" (("SNAPSHOT") disfluid-version))))) @@ -114,12 +114,16 @@ (disfluid config) #:export (package + package-bugreport + version localedir guilemoduledir prefix exec-prefix pkg-config)) (define package "@PACKAGE@") + (define package-bugreport "@PACKAGE_BUGREPORT@") + (define version "@VERSION@") (define prefix "@EXPANDED_PREFIX@") (define exec-prefix "@EXPANDED_EXEC_PREFIX@") (define localedir "@EXPANDED_LOCALEDIR@") @@ -175,6 +179,17 @@ (("AC_OUTPUT") "\nAM_MISSING_PROG([TEXI2ANY], [texi2any])\nAC_OUTPUT")))) (add-after + 'hall-build-system + 'define-package-bugreport + (lambda _ + (substitute* + "configure.ac" + (("AC_INIT") + (format + #f + "AC_INIT([disfluid], [~a], [vivien@planete-kraus.eu])\ndnl AC_INIT" + "0.0.4-90-g0a23b9d"))))) + (add-after 'bootstrap 'fix-po-makefile-shell (lambda _ @@ -194,15 +209,15 @@ "DISTCHECK_CONFIGURE_FLAGS=SHELL=~a" (search-input-file inputs "/bin/bash")))) (copy-file - "disfluid-0.0.4-87-g6cbf05f.tar.gz" - "/tmp/disfluid-0.0.4-87-g6cbf05f.tar.gz") + "disfluid-0.0.4-90-g0a23b9d.tar.gz" + "/tmp/disfluid-0.0.4-90-g0a23b9d.tar.gz") (with-directory-excursion "/tmp" (invoke "tar" "xf" - "disfluid-0.0.4-87-g6cbf05f.tar.gz") - (delete-file "disfluid-0.0.4-87-g6cbf05f.tar.gz") + "disfluid-0.0.4-90-g0a23b9d.tar.gz") + (delete-file "disfluid-0.0.4-90-g0a23b9d.tar.gz") (invoke "tar" "--sort=name" @@ -212,11 +227,11 @@ "--numeric-owner" "--pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime" "-cf" - "disfluid-0.0.4-87-g6cbf05f.tar.gz" - "disfluid-0.0.4-87-g6cbf05f")) + "disfluid-0.0.4-90-g0a23b9d.tar.gz" + "disfluid-0.0.4-90-g0a23b9d")) (copy-file - "/tmp/disfluid-0.0.4-87-g6cbf05f.tar.gz" - "disfluid-0.0.4-87-g6cbf05f.tar.gz"))) + "/tmp/disfluid-0.0.4-90-g0a23b9d.tar.gz" + "disfluid-0.0.4-90-g0a23b9d.tar.gz"))) (add-after 'build 'html @@ -229,7 +244,7 @@ (let ((out (assoc-ref outputs "out"))) (mkdir-p (string-append out "/share/disfluid")) (copy-file - "disfluid-0.0.4-87-g6cbf05f.tar.gz" + "disfluid-0.0.4-90-g0a23b9d.tar.gz" (string-append out "/share/disfluid/complete-corresponding-source.tar.gz"))))) |