[arch-commits] Commit in apm/repos (6 files)

Felix Yan felixonmars at archlinux.org
Thu Nov 16 15:27:09 UTC 2017


    Date: Thursday, November 16, 2017 @ 15:27:07
  Author: felixonmars
Revision: 266984

archrelease: copy trunk to community-testing-x86_64

Added:
  apm/repos/community-testing-x86_64/
  apm/repos/community-testing-x86_64/PKGBUILD
    (from rev 266983, apm/trunk/PKGBUILD)
  apm/repos/community-testing-x86_64/apm.js
    (from rev 266983, apm/trunk/apm.js)
  apm/repos/community-testing-x86_64/no-scripts.patch
    (from rev 266983, apm/trunk/no-scripts.patch)
  apm/repos/community-testing-x86_64/python2.patch
    (from rev 266983, apm/trunk/python2.patch)
  apm/repos/community-testing-x86_64/use-system-npm.patch
    (from rev 266983, apm/trunk/use-system-npm.patch)

----------------------+
 PKGBUILD             |  103 +++++++++++++++++++++++++++++++++++++++++++++++++
 apm.js               |   16 +++++++
 no-scripts.patch     |   16 +++++++
 python2.patch        |   14 ++++++
 use-system-npm.patch |   33 +++++++++++++++
 5 files changed, 182 insertions(+)

Copied: apm/repos/community-testing-x86_64/PKGBUILD (from rev 266983, apm/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2017-11-16 15:27:07 UTC (rev 266984)
@@ -0,0 +1,103 @@
+# $Id$
+# Maintainer: Nicola Squartini <tensor5 at gmail.com>
+
+pkgname=apm
+pkgver=1.18.10
+pkgrel=2
+pkgdesc='Atom package manager'
+arch=('x86_64')
+url='https://github.com/atom/apm'
+license=('MIT')
+depends=('libsecret' 'nodejs>=8' 'npm' 'python2')
+makedepends=('git')
+provides=('nodejs-atom-package-manager')
+conflicts=('nodejs-atom-package-manager')
+replaces=('nodejs-atom-package-manager')
+options=(!emptydirs)
+source=("${pkgname}-${pkgver}.tar.gz::https://github.com/atom/apm/archive/v${pkgver}.tar.gz"
+        'apm.js'
+        'no-scripts.patch'
+        'python2.patch'
+        'use-system-npm.patch')
+sha512sums=('07e8cf711d5ae039dda25d0c62861d984272a8816baa510ec28b2c2681c3b891e4eedcdcb7414ad1e8dd5d884d740febc0b55071e8112fe0fc1c20684bef7096'
+            '7ef40058bb50189729a541f8e74191336f9652f12e70118e8b24c207e42f00c8f548d408759f261d8b0f2f67f7296e38d771694e45570102e28be1e6b9788d6c'
+            'da2e2c6b336b87371541ef159201f6942c606f7c8b212f1a610a8605bb08ddc97ed1ade7f1c02339c40c40f22d8a7d37b1686fb5c7105a775fa85ff6048162dc'
+            '2fedcfc04c03059429c231c5bbd3d5e4b32a30ea9d341c3e27dcbba0deee1e4c8d27d993c59ee96aebf0a0c930b7cc55177e3600c18349dd2b91ebac7bd96632'
+            'b5000006cf81d1664db4e520f7835d7be0b794e843bc2d12c9339e1f88436722c41762be633b6157a76832c74525a11b4e58e2007e68d2a7217f533996fdf028')
+
+_apmdir='/usr/lib/node_modules/atom-package-manager'
+
+prepare() {
+  rm -rf "${srcdir}"/apm-build
+
+  cd apm-${pkgver}
+
+  # Use custom launcher
+  rm bin/apm{,.cmd} bin/npm{,.cmd}
+  rm src/cli.coffee
+  install -m755 "${srcdir}"/apm.js bin/apm
+
+  # Use system npm
+  patch -Np1 -i "${srcdir}"/use-system-npm.patch
+
+  # Don't download binary Node
+  patch -Np1 -i "${srcdir}"/no-scripts.patch
+  rm BUNDLED_NODE_VERSION script/*
+
+  # GYP needs Python2
+  patch -Np1 -i "${srcdir}"/python2.patch
+}
+
+build() {
+  cd apm-${pkgver}
+
+  npm install coffee-script
+  ./node_modules/.bin/coffee -c --no-header -o lib src/*.coffee
+  rm -r node_modules
+  npm install --user root -g --prefix="${srcdir}"/apm-build/usr $(npm pack | tail -1)
+}
+
+package() {
+  cp -r "${srcdir}"/apm-build/usr "${pkgdir}"
+
+  cd "${pkgdir}"${_apmdir}
+  install -m644 "${srcdir}"/apm-${pkgver}/README.md ./
+
+  # Install license file
+  install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}"
+  ln -s ../../../lib/node_modules/atom-package-manager/LICENSE.md \
+     "${pkgdir}/usr/share/licenses/${pkgname}"
+
+  # Remove occurrences of ${srcdir}
+  find "${pkgdir}" -name "package.json" \
+       -exec sed -e "s|${srcdir}/apm-build||" \
+                 -e "s|${srcdir}/apm-${pkgver}|${_apmdir}|" \
+                 -i '{}' \;
+
+  # Remove useless stuff
+  find "${pkgdir}"/usr/lib \
+      -name ".*" -prune -exec rm -r '{}' \; \
+      -or -name "*.a" -exec rm '{}' \; \
+      -or -name "*.bat" -exec rm '{}' \; \
+      -or -name "*.mk" -exec rm '{}' \; \
+      -or -path "*/git-utils/binding.gyp" -exec rm '{}' \; \
+      -or -path "*/git-utils/src" -prune -exec rm -r '{}' \; \
+      -or -path "*/keytar/binding.gyp" -exec rm '{}' \; \
+      -or -path "*/keytar/src" -prune -exec rm -r '{}' \; \
+      -or -path "*/oniguruma/binding.gyp" -exec rm '{}' \; \
+      -or -path "*/oniguruma/src" -prune -exec rm -r '{}' \; \
+      -or -name "appveyor.yml" -exec rm '{}' \; \
+      -or -name "benchmark" -prune -exec rm -r '{}' \; \
+      -or -name "binding.Makefile" -exec rm '{}' \; \
+      -or -name "config.gypi" -exec rm '{}' \; \
+      -or -name "deps" -prune -exec rm -r '{}' \; \
+      -or -name "doc" -prune -exec rm -r '{}' \; \
+      -or -name "html" -prune -exec rm -r '{}' \; \
+      -or -name "Makefile" -exec rm '{}' \; \
+      -or -name "man" -prune -exec rm -r '{}' \; \
+      -or -name "obj.target" -prune -exec rm -r '{}' \; \
+      -or -name "samples" -prune -exec rm -r '{}' \; \
+      -or -name "scripts" -prune -exec rm -r '{}' \; \
+      -or -name "test" -prune -exec rm -r '{}' \; \
+      -or -name "tests" -prune -exec rm -r '{}' \;
+}

Copied: apm/repos/community-testing-x86_64/apm.js (from rev 266983, apm/trunk/apm.js)
===================================================================
--- community-testing-x86_64/apm.js	                        (rev 0)
+++ community-testing-x86_64/apm.js	2017-11-16 15:27:07 UTC (rev 266984)
@@ -0,0 +1,16 @@
+#!/usr/bin/node
+
+"use strict";
+
+process.env.ATOM_RESOURCE_PATH = process.env.ATOM_RESOURCE_PATH ||
+        "/usr/lib/atom";
+
+process.env.ATOM_ELECTRON_VERSION = process.env.ATOM_ELECTRON_VERSION ||
+        require("fs")
+    .readFileSync("/usr/lib/electron/version", "utf8").trim().slice(1);
+
+process.env.npm_config_python = __dirname + "/python-interceptor.sh";
+
+require("../lib/apm-cli.js").run(process.argv.slice(2), function (error) {
+    process.exitCode = +!!error;
+});

Copied: apm/repos/community-testing-x86_64/no-scripts.patch (from rev 266983, apm/trunk/no-scripts.patch)
===================================================================
--- community-testing-x86_64/no-scripts.patch	                        (rev 0)
+++ community-testing-x86_64/no-scripts.patch	2017-11-16 15:27:07 UTC (rev 266984)
@@ -0,0 +1,16 @@
+--- a/package.json
++++ b/package.json
+@@ -14,13 +14,6 @@
+   "bin": {
+     "apm": "./bin/apm"
+   },
+-  "scripts": {
+-    "build": "node script/check-version.js && grunt",
+-    "prepublish": "grunt prepublish",
+-    "install": "node script/postinstall.js",
+-    "test": "node script/check-version.js && grunt test",
+-    "check-version": "node version.js"
+-  },
+   "dependencies": {
+     "asar-require": "0.3.0",
+     "async": "~0.2.8",

Copied: apm/repos/community-testing-x86_64/python2.patch (from rev 266983, apm/trunk/python2.patch)
===================================================================
--- community-testing-x86_64/python2.patch	                        (rev 0)
+++ community-testing-x86_64/python2.patch	2017-11-16 15:27:07 UTC (rev 266984)
@@ -0,0 +1,14 @@
+--- a/bin/python-interceptor.sh
++++ b/bin/python-interceptor.sh
+@@ -34,9 +34,9 @@
+       ARGS+=("--format=safemake.py")
+     fi
+ 
+-    exec python "${ARGS[@]}"
++    exec python2 "${ARGS[@]}"
+     ;;
+   *)
+-    exec python "$@"
++    exec python2 "$@"
+     ;;
+ esac

Copied: apm/repos/community-testing-x86_64/use-system-npm.patch (from rev 266983, apm/trunk/use-system-npm.patch)
===================================================================
--- community-testing-x86_64/use-system-npm.patch	                        (rev 0)
+++ community-testing-x86_64/use-system-npm.patch	2017-11-16 15:27:07 UTC (rev 266984)
@@ -0,0 +1,33 @@
+--- a/package.json
++++ b/package.json
+@@ -32,8 +32,6 @@
+     "keytar": "^4.0",
+     "mv": "2.0.0",
+     "ncp": "~0.5.1",
+-    "npm": "3.10.10",
+-    "node-gyp": "3.4.0",
+     "open": "0.0.4",
+     "plist": "git+https://github.com/nathansobo/node-plist.git",
+     "q": "~0.9.7",
+--- a/src/dedupe.coffee
++++ b/src/dedupe.coffee
+@@ -17,7 +17,7 @@
+     @atomPackagesDirectory = path.join(@atomDirectory, 'packages')
+     @atomNodeDirectory = path.join(@atomDirectory, '.node-gyp')
+     @atomNpmPath = require.resolve('npm/bin/npm-cli')
+-    @atomNodeGypPath = require.resolve('node-gyp/bin/node-gyp')
++    @atomNodeGypPath = require.resolve('npm/node_modules/node-gyp/bin/node-gyp')
+ 
+   parseOptions: (argv) ->
+     options = yargs(argv).wrap(100)
+--- a/src/install.coffee
++++ b/src/install.coffee
+@@ -84,7 +84,7 @@
+     opts = {env, cwd: @atomDirectory}
+     opts.streaming = true if @verbose
+ 
+-    atomNodeGypPath = process.env.ATOM_NODE_GYP_PATH or require.resolve('node-gyp/bin/node-gyp')
++    atomNodeGypPath = process.env.ATOM_NODE_GYP_PATH or require.resolve('npm/node_modules/node-gyp/bin/node-gyp')
+     @fork atomNodeGypPath, installNodeArgs, opts, (code, stderr='', stdout='') ->
+       if code is 0
+         callback()


More information about the arch-commits mailing list