PKGBUILD 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # Maintainer: Noah Vogt (noahvogt) <noah@noahvogt.com>
  2. # Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
  3. # Contributor: Jan Koppe <post@jankoppe.de>
  4. pkgname=yarn-xdg
  5. pkgver=1.22.22
  6. pkgrel=1
  7. pkgdesc='Fast, reliable, and secure dependency management - with xdg basedir patches'
  8. provides=('yarn')
  9. conflicts=('yarn')
  10. arch=('any')
  11. license=('BSD-2-Clause')
  12. depends=('nodejs')
  13. makedepends=('git' 'jq' 'yarn')
  14. source=("git+https://github.com/${pkgname%-*}pkg/${pkgname%-*}.git#tag=v$pkgver"
  15. "remove-legacy-yarnrc-path.patch")
  16. b2sums=('SKIP'
  17. '8a02d546bbcef7353887fef2de70061526313370cd3c383e08d5535d4574647b41c1251e3c1c8324944de8a534ec4f6dca9f3014aacc957f18053f7a7517f3b3')
  18. prepare() {
  19. cd ${pkgname%-*}
  20. patch -p1 -i "$srcdir/remove-legacy-yarnrc-path.patch"
  21. }
  22. build() {
  23. cd ${pkgname%-*}
  24. yarn --frozen-lockfile
  25. yarn build
  26. }
  27. package() {
  28. local mod_dir=/usr/lib/node_modules/${pkgname%-*}
  29. install -d "$pkgdir"/{usr/bin,$mod_dir/bin}
  30. ln -s $mod_dir/bin/${pkgname%-*}.js "$pkgdir"/usr/bin/${pkgname%-*}
  31. ln -s $mod_dir/bin/${pkgname%-*}.js "$pkgdir"/usr/bin/${pkgname%-*}pkg
  32. cd ${pkgname%-*}
  33. # Prune unnecessary packages
  34. cp package.json{,.bak}
  35. read -ra devDependencies < <(jq -r '.devDependencies | keys | join(" ")' package.json)
  36. yarn remove --frozen-lockfile "${devDependencies[@]}"
  37. mv package.json{.bak,}
  38. cp -r lib node_modules package.json "$pkgdir"/$mod_dir
  39. install -t "$pkgdir"/$mod_dir/bin bin/${pkgname%-*}.js
  40. install -Dm644 -t "$pkgdir"/usr/share/doc/${pkgname%-*} README.md
  41. install -Dm644 -t "$pkgdir"/usr/share/licenses/${pkgname%-*} LICENSE
  42. }