summaryrefslogtreecommitdiff
path: root/px/packages/node.scm
blob: 1028a5c5a27164961443dd368788a380463502c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
(define-module (px packages node)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (ice-9 match)
  #:use-module (guix download)
  #:use-module (guix build-system trivial)
  #:use-module (guix packages))

(define-public pnpm
  (package
    (name "pnpm")
    (version "8.4.0")
    (source
      (origin
        (method url-fetch)
        (uri (string-append 
          "https://github.com/pnpm/pnpm/releases/download/v"
          version "/pnpm-linuxstatic-"
          (match (or (%current-system) (%current-target-system))
            ("x86_64-linux" "x64")
            ("aarch64-linux" "arm64"))))
        (sha256 
          (base32 
            "0r7x1zamcznv3d4s0y410xg99qa3j8fh3gygqp5gaiikhwfln7kh"))))
    (build-system trivial-build-system)
    (arguments
     `(#:modules ((guix build utils))
       #:builder
       (begin
        (use-modules ((guix build utils)))
        (let* ((source (assoc-ref %build-inputs "source"))
               (bin (string-append %output "/bin"))
               (exe (string-append bin "/pnpm")))
          (mkdir-p bin)
          (copy-file source exe)
          (chmod exe #o755)))))
    (home-page "https://pnpm.io")
    (synopsis "Fast, disk space efficient package manager for nodejs")
    (description "PNPM uses a content-addressable filesystem to
store all files from all module directories on a disk")
    (license license:expat)))

(define-public pnpm-7
  (package
    (inherit pnpm)
    (name "pnpm")
    (version "7.32.2")
    (source
      (origin
        (method url-fetch)
        (uri (string-append 
          "https://github.com/pnpm/pnpm/releases/download/v"
          version "/pnpm-linuxstatic-"
          (match (or (%current-system) (%current-target-system))
            ("x86_64-linux" "x64")
            ("aarch64-linux" "arm64"))))
        (sha256 
          (base32 
            "1k3n24ink74ajs8nd0p6y6238vi41n5bvrk8clnydgwg11ax1zx0"))))))