diff options
author | Michael Hansen | 2017-12-18 14:39:14 -0800 |
---|---|---|
committer | Michael Hansen | 2017-12-18 14:39:14 -0800 |
commit | e599030c521f1125d40af7ce72e8318b1ea0f1b9 (patch) | |
tree | f3ce4bcc2c0f41c1e891052dcfa9ee2e7e7c972a /PKGBUILD | |
parent | a7d1479f6ddce79e91eb26840434c1b502632ae2 (diff) | |
parent | c1d8027b3f7aa811da1f939b67575814cd6f1010 (diff) | |
download | aur-e599030c521f1125d40af7ce72e8318b1ea0f1b9.tar.gz |
Merge visual-studio-code-oss history
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 113 |
1 files changed, 73 insertions, 40 deletions
@@ -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" } |