summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimotej Lazar <timotej.lazar@araneo.si>2024-01-26 20:57:19 +0100
committerTimotej Lazar <timotej.lazar@araneo.si>2024-01-26 20:59:01 +0100
commit14afaaaa181ebc621bc6b718a9f05dfe11c0aa96 (patch)
treeb1d1ba92b295cef4e13a3db51ab49a9e39fa8c9e
parentf36e404515517f735977f3b8d84652a0b43f437b (diff)
Add guix package definition
-rw-r--r--contrib/guix.scm58
1 files changed, 58 insertions, 0 deletions
diff --git a/contrib/guix.scm b/contrib/guix.scm
new file mode 100644
index 0000000..1967484
--- /dev/null
+++ b/contrib/guix.scm
@@ -0,0 +1,58 @@
+;; Guix package for marginaltool. To build or install, run from the toplevel directory:
+;;
+;; guix build --file=contrib/guix.scm
+;; guix package --install-from-file=contrib/guix.scm
+;;
+;; To create and enter a development environment:
+;;
+;; guix environment --pure --load=contrib/guix.scm
+
+(define-module (marginaltool)
+ #:use-module (gnu)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages security-token)
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages version-control))
+
+(define %source-dir (dirname (dirname (current-filename))))
+
+(define (git-version directory)
+ (with-directory-excursion directory
+ (read-line (open-pipe* OPEN_READ "git" "describe" "--always" "--tags"))))
+
+(define-public marginaltool
+ (package
+ (name "marginaltool")
+ (version "master")
+ (source
+ (local-file %source-dir #:recursive? #t #:select? (git-predicate %source-dir)))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags #~(list (string-append "PREFIX=" #$output))
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (for-each (lambda (binary)
+ (substitute* "marginaltool"
+ ((binary) (search-input-file inputs (string-append "/bin/" binary)))))
+ '("openssl" "pkcs11-tool"))))
+ (delete 'build))))
+ (inputs
+ (list openssl opensc))
+ (propagated-inputs
+ (list `(,python "tk")))
+ (home-page "https://sr.ht/~jetomit/marginaltool")
+ (synopsis "MargTools replacement")
+ (description "Python script to replace MargTools.
+Can be used to sign documents with GovernmentConnect.")
+ (license license:unlicense)))
+
+marginaltool