summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorMichael Hansen2017-12-18 14:39:14 -0800
committerMichael Hansen2017-12-18 14:39:14 -0800
commite599030c521f1125d40af7ce72e8318b1ea0f1b9 (patch)
treef3ce4bcc2c0f41c1e891052dcfa9ee2e7e7c972a /PKGBUILD
parenta7d1479f6ddce79e91eb26840434c1b502632ae2 (diff)
parentc1d8027b3f7aa811da1f939b67575814cd6f1010 (diff)
downloadaur-e599030c521f1125d40af7ce72e8318b1ea0f1b9.tar.gz
Merge visual-studio-code-oss history
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD113
1 files changed, 73 insertions, 40 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 469a22a2dcb2..a5827f86fb66 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,52 +1,85 @@
-# Maintainer: Mateusz Paluszkiewicz <aifam96@gmail.com>
+# Maintainer: Michael Hansen <zrax0111 gmail com>
+# Contributor: Francisco Magalhães <franmagneto gmail com>
pkgname=code
-pkgver=1.4.0
-pkgrel=2
-pkgdesc="Code editing. Redefined. Visual Studio Code."
-arch=('i686' 'x86_64')
-url="https://code.visualstudio.com/"
+pkgdesc='Microsoft Code -- The Open Source build of Visual Studio Code'
+pkgver=1.19.0
+pkgrel=1
+arch=('i686' 'x86_64' 'armv7h')
+url='https://github.com/Microsoft/vscode'
license=('MIT')
-depends=('gconf' 'gtk2' 'libnotify' 'nss')
-provides=('vscode' 'visualstudiocode' 'visual-studio-code')
-conflicts=('visual-studio-code' 'visual-studio-code-oss' 'visual-studio-code-git')
-replaces=('visual-studio-code')
-
-_version=6276dcb0ae497766056b4c09ea75be1d76a8b679
-source_x86_64=("https://az764295.vo.msecnd.net/stable/${_version}/VSCode-linux-x64-stable.zip"
-"code.desktop")
-source_i686=("https://az764295.vo.msecnd.net/stable/${_version}/VSCode-linux-ia32-stable.zip"
-"code.desktop")
-md5sums_x86_64=('86881a676f8b582886618933d5b55267'
-'d21422a3633592bac7b22aa7d891d9f2')
-md5sums_i686=('acba124c25d7ca9356824ee416e72688'
-'d21422a3633592bac7b22aa7d891d9f2')
+makedepends=('npm' 'nodejs>=6.8.0' 'gulp' 'python2' 'git' 'yarn')
+depends=('gtk2' 'gconf' 'libnotify' 'libxss' 'libxtst' 'libxkbfile' 'nss'
+ 'alsa-lib')
+conflicts=('vscode-oss' 'visual-studio-code-oss')
+provides=('vscode-oss' 'visual-studio-code-oss')
-package() {
- _pkg=VSCode-linux-x64
- if [ "${CARCH}" = "i686" ]; then
- _pkg=VSCode-linux-ia32
- fi
+source=("vscode::git+https://github.com/Microsoft/vscode#tag=${pkgver}"
+ "${pkgname}.desktop"
+ "startup_script.patch"
+ "product_json.patch")
+sha256sums=('SKIP'
+ 'f472fb49852ae9048966f02278110efbbe451192a8ae312ec05d1c31093a0ff4'
+ '8b2feded3382e5bf6b5b292c14083bfc536c05cd00f3235dd22b75b67fba134d'
+ '7970996eaddbb0265373e71c5452064465472ebb5bd6a393b94e8b84bde24854')
+
+case "$CARCH" in
+ i686)
+ _vscode_arch=ia32
+ ;;
+ x86_64)
+ _vscode_arch=x64
+ ;;
+ armv7h)
+ _vscode_arch=arm
+ ;;
+ *)
+ # Needed for mksrcinfo
+ _vscode_arch=DUMMY
+ ;;
+esac
+
+prepare() {
+ cd "${srcdir}/vscode"
+
+ # This patch no longer contains proprietary modifications.
+ # See https://github.com/Microsoft/vscode/issues/31168 for details.
+ patch -p1 -i "${srcdir}/product_json.patch"
+ local _commit=$(cd "${srcdir}/vscode" && git rev-parse HEAD)
+ local _datestamp=$(date -u -Is | sed 's/\+00:00/Z/')
+ sed -e "s/@COMMIT@/${_commit}/" -e "s/@DATE@/${_datestamp}/" \
+ -i product.json
+}
+
+build() {
+ cd "${srcdir}/vscode"
- # Creating directories
- install -dm755 "$pkgdir"/{,usr/{bin,share/{pixmaps,applications,licenses/$pkgname}}}
+ yarn install --arch=${_vscode_arch}
- # Read Write for all users and groups, that repairs problems with icon extension
- install -dm777 "$pkgdir"/usr/share/$pkgname
+ # The default memory limit may be too low for current versions of node
+ # to successfully build vscode. Uncomment this to set it to 2GB, or
+ # change it if this number still doesn't work for your system.
+ mem_limit="--max_old_space_size=2048"
+ /usr/bin/node $mem_limit /usr/bin/gulp vscode-linux-${_vscode_arch}
- # Installing launcher
- install -m644 "$srcdir"/$pkgname.desktop "$pkgdir"/usr/share/applications/
+ # Patch the startup script to know where the app is installed, rather
+ # than guessing...
+ ( cd "${srcdir}/VSCode-linux-${_vscode_arch}" && \
+ patch -p1 -i "${srcdir}/startup_script.patch" )
+}
- # Copying all files
- cp -a "$srcdir"/$_pkg/* "$pkgdir"/usr/share/$pkgname/
- chmod -R 777 "$pkgdir"/usr/share/$pkgname/
+package() {
+ install -m 0755 -d "${pkgdir}/usr/share/code-oss"
+ cp -r "${srcdir}/VSCode-linux-${_vscode_arch}"/* "${pkgdir}/usr/share/code-oss"
- # Installing icons
- install -m644 "$srcdir"/$_pkg/resources/app/resources/linux/code.png "$pkgdir"/usr/share/pixmaps/$pkgname.png
+ # Put the startup script in /usr/bin
+ mv "${pkgdir}/usr/share/code-oss/bin" "${pkgdir}/usr"
- # Installing license
- install -m644 "$srcdir"/$_pkg/resources/app/LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/
+ # Add .desktop file
+ install -D -m644 "${srcdir}/${pkgname}.desktop" \
+ "${pkgdir}/usr/share/applications/${pkgname}.desktop"
- # Link binary to /usr/bin
- ln -s /usr/share/$pkgname/code "$pkgdir"/usr/bin/code
+ # Install license file
+ install -D -m644 "${srcdir}/VSCode-linux-${_vscode_arch}/resources/app/LICENSE.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}