[visual-studio-code-bin] Use private copies of libxml2 and icu
We need older versions built against glibc 2.27 for the file browser to be usable. Thanks to dogumon on AUR for debugging this.
This commit is contained in:
1 parent
e025a0af8d
commit
30117be3f3
1 file changed
+25
-5
@@ -3,7 +3,7 @@
|
||||
pkgname=visual-studio-code-bin
|
||||
_pkgname=visual-studio-code
|
||||
pkgver=1.26.0
|
||||
pkgrel=2
|
||||
pkgrel=3
|
||||
pkgdesc="Visual Studio Code: Editor for building and debugging modern web and cloud applications (official binary version)"
|
||||
arch=('x86_64' 'i686')
|
||||
url="https://code.visualstudio.com/"
|
||||
@@ -17,19 +17,21 @@ optdepends=('gvfs: Needed for move to trash functionality')
|
||||
source_x86_64=(code_x64_${pkgver}.tar.gz::https://vscode-update.azurewebsites.net/${pkgver}/linux-x64/stable
|
||||
${_pkgname}.desktop
|
||||
https://archive.archlinux.org/packages/g/glibc/glibc-2.27-3-${CARCH}.pkg.tar.xz
|
||||
https://archive.archlinux.org/packages/l/libxml2/libxml2-2.9.8-2-${CARCH}.pkg.tar.xz
|
||||
https://archive.archlinux.org/packages/i/icu/icu-61.1-1-${CARCH}.pkg.tar.xz
|
||||
)
|
||||
source_i686=(code_ia32_${pkgver}.tar.gz::https://vscode-update.azurewebsites.net/${pkgver}/linux-ia32/stable
|
||||
${_pkgname}.desktop
|
||||
https://archive.archlinux.org/packages/g/glibc/glibc-2.27-3-${CARCH}.pkg.tar.xz
|
||||
)
|
||||
options=("!strip" "staticlibs")
|
||||
noextract=("glibc-2.27-3-${CARCH}.pkg.tar.xz")
|
||||
sha256sums_x86_64=('618ca429e23777ef6b512c0cbd78bc711a7cf6f58752d9f805ced1dc62abb8f0'
|
||||
'488592034dd5f979083bbd80788d33e253bb3ac3e52d50faee80e715a924a212'
|
||||
'a9e1b18d7f613be660556dbd6883781e88a0f5113230147e230d3e2f268792dc')
|
||||
'a9e1b18d7f613be660556dbd6883781e88a0f5113230147e230d3e2f268792dc'
|
||||
'9a860e1dcc4f1686d5764cf1e9dd59fcdb4f07ca018aecd6631564ee33e6d6ab'
|
||||
'5f35b1bf4cd2b13050e53a2c98016defa97232b1c838e91d0413a1c84b803a2c')
|
||||
sha256sums_i686=('fd150bee8e1be4f5461013b8fee19f855200d046643e4ea5387aad170ad5f12b'
|
||||
'488592034dd5f979083bbd80788d33e253bb3ac3e52d50faee80e715a924a212'
|
||||
'a9e1b18d7f613be660556dbd6883781e88a0f5113230147e230d3e2f268792dc')
|
||||
'488592034dd5f979083bbd80788d33e253bb3ac3e52d50faee80e715a924a212')
|
||||
package() {
|
||||
_pkg=VSCode-linux-x64
|
||||
if [ "${CARCH}" = "i686" ]; then
|
||||
@@ -49,6 +51,10 @@ package() {
|
||||
cp -r "${srcdir}/${_pkg}/"* "${pkgdir}/opt/${_pkgname}" -R
|
||||
ln -s /opt/${_pkgname}/bin/code "${pkgdir}"/usr/bin/code
|
||||
|
||||
if [ "${CARCH}" = "i686" ]; then
|
||||
return 0;
|
||||
fi
|
||||
|
||||
_ldir="/opt/$_pkgname"
|
||||
_pdir="$pkgdir/$_ldir"
|
||||
_pexe="$_pdir/code"
|
||||
@@ -57,4 +63,18 @@ package() {
|
||||
rm "$_pdir/glibc/"{.BUILDINFO,.INSTALL,.MTREE,.PKGINFO}
|
||||
patchelf --set-interpreter "$_ldir/glibc/usr/lib/ld-linux-x86-64.so.2" "$_pexe"
|
||||
patchelf --set-rpath "$_ldir:$_ldir/glibc/usr/lib" "$_pexe"
|
||||
|
||||
mkdir -p "${pkgdir}"/opt/${_pkgname}/libs
|
||||
tar -xJC "${srcdir}" -f "libxml2-2.9.8-2-${CARCH}.pkg.tar.xz" > /dev/null 2>&1
|
||||
tar -xJC "${srcdir}" -f "icu-61.1-1-${CARCH}.pkg.tar.xz" > /dev/null 2>&1
|
||||
cp "${srcdir}"/usr/lib/* "${pkgdir}"/opt/${_pkgname}/libs -r
|
||||
|
||||
cat <<- EOF > "${pkgdir}"/opt/${_pkgname}/code_libs
|
||||
#!/bin/sh
|
||||
LD_LIBRARY_PATH=/opt/${_pkgname}/libs code
|
||||
EOF
|
||||
|
||||
chmod +x "${pkgdir}"/opt/${_pkgname}/code_libs
|
||||
sed -i 's|/opt/visual-studio-code/code|/opt/visual-studio-code/code_libs|' "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
|
||||
sed -i '35s|^|LD_LIBRARY_PATH=/opt/visual-studio-code/libs |' "${pkgdir}"/opt/${_pkgname}/bin/code
|
||||
}
|
||||
Reference in new issue
Block a user