(define-module (guix-cantrips-package) #:use-module (guix) #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages package-management) #:use-module (gnu packages pkg-config) #:use-module (gnu packages texinfo)) (define vcs-file? (or (git-predicate "../..") (const #t))) (define-public guix-cantrips (package (name "guix-cantrips") (version "0.1-src") (source (local-file "../.." "guix-cantrips" #:recursive? #t #:select? vcs-file?)) (build-system gnu-build-system) (arguments (list #:make-flags #~(list "GUILE_AUTO_COMPILE=0") #:phases #~(modify-phases %standard-phases (delete 'strip) (add-before 'configure 'hall-build (lambda _ (system* "hall" "build" "-x"))) (add-after 'hall-build 'autoreconf (lambda _ (system* "autoreconf" "-vif"))) (add-after 'install 'hall-wrap-binaries (lambda _ (use-modules (ice-9 ftw)) (define (compiled-dir out version) (string-append out "/lib/guile/" version "/site-ccache")) (define (uncompiled-dir out version) (string-append out "/share/guile/site" (if (string-null? version) "" "/") version)) (define (dep-path env modules path) (list env ":" 'prefix (cons modules (map (lambda (input) (string-append input path)) (list #$guile-config #$guile-lib #$guile-simple-iterators))))) (define bin (string-append #$output "/bin/")) (define site (uncompiled-dir #$output "")) (define version (caddr (scandir site))) (wrap-program (string-append bin "guix-cantrips") (dep-path "GUILE_LOAD_PATH" (uncompiled-dir #$output version) (uncompiled-dir "" version)) (dep-path "GUILE_LOAD_COMPILED_PATH" (compiled-dir #$output version) (compiled-dir "" version)))))))) (native-inputs (list autoconf automake pkg-config texinfo guile-hall)) (inputs (list guile-3.0)) (propagated-inputs (list guix guile-config tar unzip)) (synopsis "") (description "") (home-page "") (license license:gpl3+))) guix-cantrips