diff options
Diffstat (limited to 'modules/freya/packages/yarn.scm')
-rw-r--r-- | modules/freya/packages/yarn.scm | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/modules/freya/packages/yarn.scm b/modules/freya/packages/yarn.scm new file mode 100644 index 0000000..dad667d --- /dev/null +++ b/modules/freya/packages/yarn.scm @@ -0,0 +1,57 @@ +(define-module (freya packages yarn) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix utils) + #:use-module (gnu packages node)) + +(define-public yarn + (package + (name "yarn") + (version "1.22.22") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/yarnpkg/yarn/releases/download/v" + version + "/yarn-v" + version + ".tar.gz")) + (sha256 + (base32 + "181nvynhhrbga3c209v8cd9psk6lqjkc1s9wyzy125lx35j889l8")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref %outputs "out")) + (bin (string-append out "/bin")) + (libexec-yarn (string-append out "/libexec/yarn")) + (yarn-js (string-append libexec-yarn "/bin/yarn.js"))) + (mkdir-p bin) + (mkdir-p libexec-yarn) + (copy-recursively "./" libexec-yarn) + (symlink yarn-js (string-append bin "/yarn")) + (symlink yarn-js (string-append bin "/yarnpkg")))))))) + + (inputs `(("node" ,node-lts))) + (synopsis "Fast, reliable, and secure dependency management") + (description + "Yarn is a fast, reliable, and secure dependency management. Fast: Yarn +caches every package it has downloaded, so it never needs to download the +same package again. It also does almost everything concurrently to maximize +resource utilization. This means even faster installs. Reliable: Using a +detailed but concise lockfile format and a deterministic algorithm for install +operations, Yarn is able to guarantee that any installation that works on one +system will work exactly the same on another system. +Secure: Yarn uses checksums to verify the integrity of every installed package +before its code is executed.") + (license license:bsd-2) + (home-page "https://yarnpkg.com"))) |