(define-module (gn packages javascript) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (srfi srfi-1)) ;; see color-make package for great example - also install-file and invoke (define-public javascript-twitter-post-fetcher (let ((commit "27440ffebd4c1ba7abc9aec92a581155715f2e4e")) (package (name "javascript-twitter-post-fetcher") (version (string-append "17.0.3" "-" (string-take commit 7))) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/jasonmayes/Twitter-Post-Fetcher.git") (commit commit))) (file-name (string-append name "-" commit)) (sha256 (base32 "159z8izf510086d8sa79k4mml6sw1gycb1r1r9ri1kyw2k9knmqa")))) (build-system trivial-build-system) (native-inputs `(("source" ,source))) (arguments `(#:modules ((guix build utils)) #:builder (let* ((out (assoc-ref %outputs "out")) (name "Twitter-Post-Fetcher") (targetdir (string-append out "/share/genenetwork2/javascript/" name)) ) (begin (use-modules (guix build utils)) (let ((source (assoc-ref %build-inputs "source")) ) (and ; (mkdir-p targetdir) (copy-recursively source targetdir) )))))) (home-page "http://jasonmayes.com/projects/twitterApi/") (synopsis "Twitter post fetching") (description "Twitter post fetching.") (license license:expat)))) (define-public javascript-cytoscape (package (name "javascript-cytoscape") (version "2.7.8") ; ancient version (source (origin (method url-fetch) (uri (string-append "https://github.com/cytoscape/cytoscape.js/archive/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "08ks2nd7ccmdmahn151i180pvhn4vdzgpw99g4g4f2baz9pkz4w3")))) (build-system trivial-build-system) (native-inputs `(("gzip" ,gzip) ("tar" ,tar) ("source" ,source))) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) (let* ((out (assoc-ref %outputs "out")) (tarcmd (string-append (assoc-ref %build-inputs "tar") "/bin/tar")) (targetdir (string-append out "/share/genenetwork2/javascript/cytoscape")) (source (assoc-ref %build-inputs "source"))) (setenv "PATH" (string-append (assoc-ref %build-inputs "tar") "/bin" ":" (assoc-ref %build-inputs "gzip") "/bin")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source") "--strip-components=1") (mkdir-p targetdir) (copy-recursively "dist" targetdir) )))) (home-page "https://github.com/cytoscape/cytoscape.js") (synopsis "Cytoscape.js") (description "Cytoscape.") (license license:expat))) (define-public javascript-cytoscape-panzoom (package ;; (inherit javascript-cytoscape) (name "javascript-cytoscape-panzoom") (version "2.5.2") ; ancient version (source (origin (method url-fetch) (uri (string-append "https://github.com/cytoscape/cytoscape.js-panzoom/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "154xzi693gbv89y221gkpi03k84lccmr55v5z43mn1i1s1fdhm2b")))) (inputs `(("javascript-cytoscape" ,javascript-cytoscape))) (build-system trivial-build-system) (native-inputs `(("gzip" ,gzip) ("tar" ,tar) ("source" ,source))) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) (let* ((out (assoc-ref %outputs "out")) (tarcmd (string-append (assoc-ref %build-inputs "tar") "/bin/tar")) (targetdir (string-append out "/share/genenetwork2/javascript/cytoscape-panzoom")) (source (assoc-ref %build-inputs "source"))) (setenv "PATH" (string-append (assoc-ref %build-inputs "tar") "/bin" ":" (assoc-ref %build-inputs "gzip") "/bin")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source") "--strip-components=1") (mkdir-p targetdir) (install-file "cytoscape-panzoom.js" targetdir) (install-file "cytoscape.js-panzoom.css" targetdir) )))) (home-page "https://github.com/cytoscape/cytoscape.js") (synopsis "Cytoscape.js") (description "Cytoscape.") (license license:expat))) ;; https://github.com/cytoscape/cytoscape.js-qtip/archive/2.7.1.tar.gz (define-public javascript-cytoscape-qtip (package ;; (inherit javascript-cytoscape) (name "javascript-cytoscape-qtip") (version "2.7.1") ; ancient version (source (origin (method url-fetch) (uri (string-append "https://github.com/cytoscape/cytoscape.js-qtip/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0f2qhxi9qx5r3rcmxqgdqnwd9apnjlb4s4hckwhaqgsp6rf8lzlb")))) (inputs `(("javascript-cytoscape" ,javascript-cytoscape))) (build-system trivial-build-system) (native-inputs `(("gzip" ,gzip) ("tar" ,tar) ("source" ,source))) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) (let* ((out (assoc-ref %outputs "out")) (tarcmd (string-append (assoc-ref %build-inputs "tar") "/bin/tar")) (targetdir (string-append out "/share/genenetwork2/javascript/cytoscape-qtip")) (source (assoc-ref %build-inputs "source"))) (setenv "PATH" (string-append (assoc-ref %build-inputs "tar") "/bin" ":" (assoc-ref %build-inputs "gzip") "/bin")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source") "--strip-components=1") (mkdir-p targetdir) (install-file "cytoscape-qtip.js" targetdir) )))) (home-page "https://github.com/cytoscape/cytoscape.js") (synopsis "Cytoscape.js") (description "Cytoscape.") (license license:expat))) ;; https://github.com/DataTables/DataTables/archive/1.10.12.tar.gz (define-public javascript-datatables (package (name "javascript-datatables") (version "1.10.12") ; ancient version (source (origin (method url-fetch) (uri (string-append "https://github.com/DataTables/DataTables/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0blzsd2zqmvnqi6pl1xq0dr457kjrdaaa86d2cmdakls0j2mj92s")))) (inputs `(("javascript-cytoscape" ,javascript-cytoscape))) (build-system trivial-build-system) (native-inputs `(("gzip" ,gzip) ("tar" ,tar) ("source" ,source))) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) (let* ((out (assoc-ref %outputs "out")) (tarcmd (string-append (assoc-ref %build-inputs "tar") "/bin/tar")) (targetdir (string-append out "/share/genenetwork2/javascript/DataTables")) (source (assoc-ref %build-inputs "source"))) (setenv "PATH" (string-append (assoc-ref %build-inputs "tar") "/bin" ":" (assoc-ref %build-inputs "gzip") "/bin")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source") "--strip-components=1") (mkdir-p targetdir) (copy-recursively "media" targetdir) )))) (home-page "https://github.com/DataTables/") (synopsis "Datatables") (description "Datatables.") (license license:expat)))