diff options
author | Frederick Muriuki Muriithi | 2025-08-21 14:15:10 -0500 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2025-08-21 14:15:10 -0500 |
commit | e6c00461340cb105a21aea62cffade4b6685df52 (patch) | |
tree | cfea90099c9237326d19bd16d2191ba8cc63582f /gn/packages/javascript.scm | |
parent | 22fd6c42b14c93195cc204e482a09626e0729f36 (diff) | |
download | guix-bioinformatics-e6c00461340cb105a21aea62cffade4b6685df52.tar.gz |
javascript-xterm-style: Fix build
* Use archive from NPM registry rather than minified file from CDN * Modify phases to fix minor build issues.
Diffstat (limited to 'gn/packages/javascript.scm')
-rw-r--r-- | gn/packages/javascript.scm | 44 |
1 files changed, 29 insertions, 15 deletions
diff --git a/gn/packages/javascript.scm b/gn/packages/javascript.scm index c7371a3..d55065c 100644 --- a/gn/packages/javascript.scm +++ b/gn/packages/javascript.scm @@ -634,23 +634,37 @@ tables with minimal effort. This package comes with Bootstrap5 integration (source (origin (method url-fetch) - (uri (string-append "https://cdn.jsdelivr.net/npm/xterm@" version - "/css/xterm.min.css")) - (file-name (string-append "xterm.min" version ".css")) + (uri + (string-append "https://registry.npmjs.org/xterm/-/xterm-" + version + ".tgz")) (sha256 - (base32 "0qhfll6g9vfamicw6kccmdgzrz6m7jz97whydwbzj10qsyv8npr7")))) + (base32 "11db21afvny4m8ar40jpbc5wb5kgx4wqcbha0w2ixbr8p1l82lhz")))) + (build-system minify-build-system) (arguments - `(#:modules ((guix build utils)) - #:builder (begin - (use-modules (guix build utils)) - (let* ((out (assoc-ref %outputs "out")) - (targetdir (string-append - out - "/share/genenetwork2/javascript/xterm")) - (source (assoc-ref %build-inputs "source"))) - (mkdir-p targetdir) - (copy-file source - (string-append targetdir "/xterm.min.css")))))) + `(#:javascript-files (list "css/xterm.css") + #:phases + (modify-phases %standard-phases + (add-before 'install 'rename-minified-css + (lambda* _ + (for-each + (lambda (file) + (let* ((path-length (string-length file)) + (ext-length (string-length ".css.min.js"))) + (copy-recursively file + (string-replace file ".min.css" (- path-length ext-length))))) + (find-files (string-append (getcwd) "/guix/build") + "\\.css\\.min\\.js$")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (js (string-append out "/share/css/"))) + (mkdir-p js) + (for-each + (lambda (file) + (install-file file js)) + (find-files (string-append (getcwd) "/guix/build") + "\\.min\\.css$")))))))) (native-inputs `(("source" ,source))) (synopsis "Style sheets for xtermjs") (description "Style sheets for xtermjs") |