summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVivien Kraus <vivien@planete-kraus.eu>2022-10-22 01:53:06 +0200
committerVivien Kraus <vivien@planete-kraus.eu>2022-10-22 14:19:06 +0200
commitd2d31e8fdbd9b52b102c78780debd030915c4b7c (patch)
treed1c94335ebd825bc87dd9dcd06e5c519746292bf
parentdacd2d42b329da08c44f55942ea2f0f9de662f69 (diff)
Update package
-rw-r--r--guix/scripts/disfluid-ostree.scm107
-rw-r--r--vkraus/modules/disfluid-ostree.scm138
-rw-r--r--vkraus/packages/disfluid.scm41
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")))))