(use-modules (ice-9 ftw) (guix) (gnu packages finance) (gnu packages base) (gnu packages haskell-xyz)) (define full-repo (local-file ".." "hledger-repo" #:recursive? #t)) (define (source-directory subdirectory) (computed-file subdirectory (with-imported-modules '((guix build utils)) #~(begin (use-modules (guix build utils)) (copy-recursively (string-append #$full-repo "/" #$subdirectory) #$output #:follow-symlinks? #t))))) (define-public hledger-web-git (package (inherit hledger-web) (source (source-directory "hledger-web")) (inputs (modify-inputs (package-inputs hledger-web) (replace "ghc-hledger-lib" ghc-hledger-lib-git) (replace "ghc-hledger" ghc-hledger-git))))) (define-public ghc-hledger-lib-git (package (inherit ghc-hledger-lib) (source (source-directory "hledger-lib")))) (define-public ghc-hledger-git (package (inherit ghc-hledger) (source (source-directory "hledger")) (inputs (modify-inputs (package-inputs hledger) (replace "ghc-hledger-lib" ghc-hledger-lib-git))))) hledger-web-git