commit 810a29270b1dbe5899b0bd84aeed169438a12798
parent adf653fe118fa70f1b024311eb86c3b13a7b9085
Author: Yuval Langer <yuval.langer@gmail.com>
Date: Wed, 29 Nov 2023 04:39:05 +0200
Install guile-clipboard-speaker, but it would not run yet.
Diffstat:
1 file changed, 77 insertions(+), 30 deletions(-)
diff --git a/guile-clipboard-speaker.scm b/guile-clipboard-speaker.scm
@@ -1,35 +1,83 @@
-(define-module (guix-packager)
- #:use-module (guix)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system cmake)
- #:use-module (guix git-download)
- #:use-module ((guix licenses) #:prefix license:)
- #:use-module (gnu packages)
- #:use-module (gnu packages xdisorg)
- #:use-module (gnu packages guile-xyz)
- #:use-module (gnu packages speech))
+(use-modules (guix packages)
+ (guix build-system guile)
+ (guix git-download)
+ ((guix licenses) #:prefix license:)
+ (guix gexp)
+ (gnu packages)
+ (gnu packages base)
+ (gnu packages bash)
+ (gnu packages xdisorg)
+ (gnu packages guile-xyz)
+ (gnu packages guile)
+ (gnu packages speech))
+#;
+(define-module (guix)
+#:use-module (guix)
+#:use-module (guix packages)
+#:use-module (guix build-system guile)
+#:use-module (guix git-download)
+#:use-module ((guix licenses) #:prefix license:)
+#:use-module (guix gexp)
+
+#:use-module (gnu packages)
+#:use-module (gnu packages base)
+#:use-module (gnu packages xdisorg)
+#:use-module (gnu packages guile-xyz)
+#:use-module (gnu packages guile)
+#:use-module (gnu packages speech))
(define-public guile-clipboard-speaker
- (package
- (name "guile-clipboard-speaker")
- (version "2.10")
- (source
+ (let ((git-repository-url "https://git.sr.ht/~kakafarm/guile-clipboard-speaker/"))
+ (package
+ (name "guile-clipboard-speaker")
+ (version "0.1")
+ (source
(origin
- (method git-fetch)
- (uri (git-reference
- (url "mirror://gnu/hello/hello-2.10.tar.gz")
- (commit "master")))
- (file-name (git-file-name name version))
- (sha256 (base32 "13gas2ql6a49fyrgwx6h3285729j5lr5fjxizr5adr3xlcdvnsmc"))))
- (inputs
- (list xsel guile-config espeak-ng))
- (build-system gnu-build-system)
- (arguments (list #:configure-flags #~(list "--enable-silent-rules")))
- (home-page "https://git.sr.ht/~kakafarm/guile-clipboard-speaker")
- (synopsis "Hello, GNU world: An example GNU package")
- (description "Guess what GNU Hello prints!")
- (license license:agpl3+)))
+ (uri (git-reference
+ (url git-repository-url)
+ (commit "88c451b994f99e60bda32d6c087fa0d12f2719f4")))
+ (method git-fetch)
+ (file-name (git-file-name name version))
+ (sha256 (base32 "10vs9lll3ic8lv0lk8cm7yd86ra0wxj64z1glkb67bmmkbrvmzkj"))))
+ (native-inputs
+ (list guile-3.0))
+ (inputs
+ (list bash coreutils xsel guile-3.0 guile-config guile-srfi-180 espeak-ng))
+ (build-system guile-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases
+ %standard-phases
+ (add-after 'install 'link-and-wrap-executable
+ (lambda _
+ (let* ((bin (string-append #$output "/bin"))
+ (script (string-append bin "/clipboard-speaker"))
+ (site-version (target-guile-effective-version))
+ (scm (string-append "/share/guile/site/"
+ site-version))
+ (go (string-append "/lib/guile/"
+ site-version
+ "/site-ccache"))
+ (guile-config #$(this-package-input "guile-config"))
+ (guile-srfi-180 #$(this-package-input "guile-srfi-180")))
+ (mkdir-p bin)
+ (symlink (string-append #$output scm "/clipboard-speaker.scm")
+ script)
+ (wrap-program script #:sh (which "bash")
+ `("GUILE_LOAD_PATH" prefix
+ (,(string-append #$output scm)
+ ,(string-append guile-config scm)
+ ,(string-append guile-srfi-180 scm)))
+ `("GUILE_LOAD_COMPILED_PATH" prefix
+ (,(string-append #$output go)
+ ,(string-append guile-config go)
+ ,(string-append guile-srfi-180 go))))))))))
+ (home-page git-repository-url)
+ (synopsis "Hello, GNU world: An example GNU package")
+ (description "Guess what GNU Hello prints!")
+ (license license:agpl3+))))
;; This allows you to run guix shell -f example.scm.
;; Remove this line if you just want to define a package.
-guile-clipboard-speaker
-\ No newline at end of file
+guile-clipboard-speaker