(define-module (crn packages guile-xyz) #:use-module (crn packages) #:use-module (gnu packages autotools) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages networking) #:use-module (gnu packages pkg-config) #:use-module (gnu packages texinfo) #:use-module (guix build-system gnu) #:use-module (guix git-download) #:use-module (guix gexp) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix licenses:)) (define-public guile-reading-heap (package (name "guile-reading-heap") (version "0.1.1") (source (origin (method git-fetch) (uri (git-reference (url "git://languidnights.com/reading-heap") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "193ync7a7f4yv2lchgkcimw6kwl9hskycx0pk3pxy76aybzwfq42")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 match) (ice-9 ftw) ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases (add-after 'install 'hall-wrap-binaries (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((compiled-dir (lambda (out version) (string-append out "/lib/guile/" version "/site-ccache"))) (uncompiled-dir (lambda (out version) (string-append out "/share/guile/site" (if (string-null? version) "" "/") version))) (dep-path (lambda (env modules path) (list env ":" 'prefix (cons modules (map (lambda (input) (string-append (assoc-ref inputs input) path)) ,''("guile-config" "guile-json" "guile-simple-zmq")))))) (out (assoc-ref outputs "out")) (bin (string-append out "/bin/")) (site (uncompiled-dir out ""))) (match (scandir site) (("." ".." version) (for-each (lambda (file) (wrap-program (string-append bin file) (dep-path "GUILE_LOAD_PATH" (uncompiled-dir out version) (uncompiled-dir "" version)) (dep-path "GUILE_LOAD_COMPILED_PATH" (compiled-dir out version) (compiled-dir "" version)))) ,''("rh-server" "rh-client")) #t)))))))) (native-inputs (list autoconf automake guile-hall pkg-config texinfo)) (inputs (list guile-3.0 guile-config guile-json-4 guile-simple-zmq zeromq)) (synopsis "An application for managing your reading list.") (description "Reading-Heap is a client-server application that manages a reading list in a priority queue, so you always know what the next thing you should read is, without having to devote your own brain power to sorting them.") (home-page "https://projects.languidnights.com/reading-heap/") (license licenses:agpl3+)))