(define-module (vkraus packages web-client-with-cache) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix gexp) #:use-module (guix modules) #:use-module (guix build-system gnu) #:use-module (guix build-system copy) #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages compression) #:use-module (gnu packages emacs) #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages pkg-config) #:use-module (gnu packages texinfo)) (define-public (make-web-client-with-cache version commit hash) (package (name "guile-web-client-with-cache") (version version) (source (origin (method git-fetch) (uri (git-reference (url "https://labo.planete-kraus.eu/web-client-with-cache.git") (commit commit))) (sha256 (base32 hash)))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'set-version (lambda* args (call-with-output-file ".tarball-version" (lambda (port) (display ,version port))) #t)) (add-after 'build 'build-html (lambda* args (invoke "make" "html" "-j" (number->string (parallel-job-count))))) (add-after 'install 'install-html (lambda* args (invoke "make" "install-html" "-j" (number->string (parallel-job-count)))))))) (native-inputs `(("emacs" ,emacs) ("emacs-org" ,emacs-org) ("autoconf" ,autoconf) ("autoconf-archive" ,autoconf-archive) ("automake" ,automake) ("pkg-config" ,pkg-config) ("guile-3.0" ,guile-3.0) ("texinfo" ,texinfo))) (inputs `(("guile-3.0" ,guile-3.0))) (propagated-inputs `(("guile-3.0" ,guile-3.0))) (synopsis "A web client for guile, with cache") (description "Uses client-side Cache-Control, ETag, and Last-Modified to cache web resources in memory.") (home-page "https://labo.planete-kraus.eu/web-client-with-cache.git/") (license 'none))) (define-public guile-web-client-with-cache (make-web-client-with-cache "0.3.1" "0.3.1" "0pmgcxwbvp27kfbq150gx24nnnb9n9rwrf1rrcxszqzlv9ngm2wv"))