summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-editors/vscode')
-rw-r--r--app-editors/vscode/Manifest15
-rw-r--r--app-editors/vscode/files/code-url-handler.desktop (renamed from app-editors/vscode/files/vscode-url-handler.desktop)2
-rw-r--r--app-editors/vscode/files/code.desktop (renamed from app-editors/vscode/files/vscode.desktop)4
-rw-r--r--app-editors/vscode/files/vscode-url-handler-wayland.desktop12
-rw-r--r--app-editors/vscode/files/vscode-wayland.desktop18
-rw-r--r--app-editors/vscode/metadata.xml8
-rw-r--r--app-editors/vscode/vscode-1.62.3.ebuild121
-rw-r--r--app-editors/vscode/vscode-1.90.0.ebuild (renamed from app-editors/vscode/vscode-1.63.2.ebuild)89
-rw-r--r--app-editors/vscode/vscode-1.90.1.ebuild (renamed from app-editors/vscode/vscode-1.61.2.ebuild)91
9 files changed, 118 insertions, 242 deletions
diff --git a/app-editors/vscode/Manifest b/app-editors/vscode/Manifest
index 302af51cbd4c..78f5badd4950 100644
--- a/app-editors/vscode/Manifest
+++ b/app-editors/vscode/Manifest
@@ -1,9 +1,6 @@
-DIST vscode-1.61.2-amd64.tar.gz 112814371 BLAKE2B c297d27f12dbbf5bb752076881ae28100d1b051d14528425f8227c5c70ce779ab8db93b960bd4d4ff9788fa2e63167c4253324ba4413b0975d41608c541c6303 SHA512 52c3b89612f2d2f72ea9de9449d191130a23a3dbae1f2876e1716773abe9b6c7064a8eb6053d6bc94438b6e3753df2f00ccc4452b2404fcb2c052ea6090d83cc
-DIST vscode-1.61.2-arm.tar.gz 94477034 BLAKE2B cecb63ed58a36fbbef13cf7de086f0f7f77efea03fc605801b3064c273736ea999b91ef84e0c900ca415955cd7a508d20c33e92a5acab0dcca388d9624743902 SHA512 9cfd10c4cc6d2e3eaa1323afc1b493448632f57681b1e7d595d7f52a7e7d4c4a2ce48d2e6b21b2380fb7be8d98d33d5848a91af178eed974f952bcd7cfbbcb3d
-DIST vscode-1.61.2-arm64.tar.gz 108043274 BLAKE2B f512c85102b3e3858a5ba8f2a63ec9fc7fdee77ffbe768287cd72e89103880002fd2ca77bc72f0210f2f4c0e4cec2b7708404e7db874d7c87d97b17361a26d4e SHA512 dcac0d56bde8b1fd855d386da77e164354f8c819e994d395cfd6b9cf50d5ac96421745c6efc20ec89448e6020b61b0d4ed482e74ecb39422a6acf3662f905dfa
-DIST vscode-1.62.3-amd64.tar.gz 113702793 BLAKE2B 0d5b79c0379bfc39f8ab356d6ae760d2b3bb32c41b308e5f78d824a8198201f1ea1c61034e2207bd674d00b1d5b52e75dbab07d2d7053adb17e9b64a4a47fd0c SHA512 5d69e7fda01c381b3a068a73f5506aee78f299b2a9a48fce46100d5f6d1f4558c4c0abbe17c8507e85711409052fdf9d590b12c0534e6e5cfe002f766df69c50
-DIST vscode-1.62.3-arm.tar.gz 94730175 BLAKE2B 176d2f39b1b8bc945b7fb03e4db834846a35afafe024a774326b15a1e083c06d08e4a7ac8c38233299869f7c02eed16e89335012202acb888cb0034042ec12ca SHA512 130471b46794e1fd202fb83b891577e1f6bd29b72637e4efb5822e33a5578a848b236fc6c8a4652841e7b28f29cc9ffca718a3ddfda3d78cceef9b04087861a5
-DIST vscode-1.62.3-arm64.tar.gz 108316120 BLAKE2B def07c01b4371b6e3ea1c47a45eb5763922fee650b83c3c9d9527d1323c602494b0e200543cbf527dbddb040ff786d88df5fac3d678d200d2a8768c7c3e0d135 SHA512 f1c91bdcef8f249bd4c81ec36ed5e0222eb1e6848206e33c3c7533a9805d594c8d64515317646f78a4d4b7cd7d89f05d499c5c82789c9b8ac3fbdb4451519ecd
-DIST vscode-1.63.2-amd64.tar.gz 113730849 BLAKE2B 8be0b450356db61d072be9ee7c932b32b70493617f56ebc82948264f78a3a32363f6c183d26aa4f4d06b4475a6b95d69441a0fca64185fcfaa01d19c05b252bc SHA512 c7f2b80d2fd7a4b420d248d6b9e325f77b460dce3e1d1748b63c18dd6983243601d967f65ffc72c79c0d7615c9e228fcfffa86d456a4ee27d3d027dec644eceb
-DIST vscode-1.63.2-arm.tar.gz 94756805 BLAKE2B 75502ca42e3720f79fa8da3a33843655d8db6c9ef12403cd9be119e93e4ce07b8b70f9b7d5dfeea53eb3d7b3fecb3e1b4e282cfaad2e4830e3b1ea396a20b2dc SHA512 3fb9673a481642d5c2317bdaa7e45efb9d26152e52a4bedd26a7a17fcfbbe5c4f772d8a6680c2c39dafc6a15a1510910e846cc8f67ee0dff6d590fb7d58c77f7
-DIST vscode-1.63.2-arm64.tar.gz 108337529 BLAKE2B 8234fa92b1eac1b3a7c3297c50f730b73a2a4b0795868d91adc8898fff61e9f44780dbd94edf8c3ec6c9f3ec33b085e6855f6104ad9b927867d96412ec5bc038 SHA512 b474d54c75e62418e19f980e2a658ad82ffcba5927418f88123a7c12e6a19525c67260461764de56655fe1d964415b6de209628cdc264da41b2c2c9576815d03
+DIST vscode-1.90.0-amd64.tar.gz 143930997 BLAKE2B cc855974d718f32536ff663c4ee25479810154aa1820384ebdfd1bd2ad0958b2b54a160a7167f602535f621a061bf6d77495a28a06ae51f052e959ffae58ecf3 SHA512 4ba8513a14e9a579154fc7300ef3766e025fcd3faa21fc0806abe6d7ce5983984a7bd6bb157746e2e8e5de877cf537ebbea1b1c692489a1560fdccdef255f3c1
+DIST vscode-1.90.0-arm.tar.gz 128877927 BLAKE2B 2a7869239c6743c750d43bc0b7a9d11788854e9e30116e9df341d0ed919292dde6e5a1cb12d9796872f26b3891ef36402117834ee23c935ad2651d897c878582 SHA512 2603ab8e2a36ae04f7e31dca4f1413d514625df2b8a9a193dc88c0b6d0776a532bc850f987e220ac9b49576f9e45e341fe02d708e6f74566219adb0de9386e8c
+DIST vscode-1.90.0-arm64.tar.gz 140685043 BLAKE2B 7433f4b5562eb942013abc58c8bc1161694d0f21cebd307f9811fcf513926cfad44bf02caba38ea24c471c311b3c497ec59c487cfdc4ad29ddb22402f640df5e SHA512 cd41d8856f0979c7e9850abb3106c8fdac42946090a2e66f657f5a65cec002df0b84c9e6ee7d1f4ae302a2d29963bdc6f80d8c6978de3b4469a2b3e367227df7
+DIST vscode-1.90.1-amd64.tar.gz 143929144 BLAKE2B 22d8eb40647b8e91e6f09962b76a48944d6afd497385650bf3c153a0be763a643fbc1e1ba8d6468d9731b68a571d289e17e855b7081ad716fb1441b8a3e5478c SHA512 1288beb684918f831b887a3f0386ec5a5ce4c1140355bf835610221e09d566101bdc5f77734b0786aceda82500775f8adcbc09ce50b3ddc65dd3f74815032198
+DIST vscode-1.90.1-arm.tar.gz 128878947 BLAKE2B aceccb3ba1ba658a5378d582a662b7ebebb194a54d26107a7a7d0696a0d04416222a6d74d50966f8d8b2c7ee355ac3a8649e01d75d6a3294d6b4384442971e3e SHA512 e9bd3aa12d07e0ab7ff40fc89e5cbd2a8ed3e1e655a709b91016352ee7c800a52fe952a1069f67b5dd9b1801117ba9d2c1594c0c5706ad61cdd73c4c47ca1660
+DIST vscode-1.90.1-arm64.tar.gz 140679137 BLAKE2B c9f683d2140819c309f078bbe1f5fd38887202c52ec4158e7a02f661be1d92bccade18b409b3461135823a184a57adcc4e7b309d23ae7ac731e5adcbe736714c SHA512 71e23f79e880443dc18cef358fd08e43cb0640364d96c08bda3f05a9d87b2d68b44acfb5f9a01943dc89110962246c4f92ebdfda5c2498efa383551a62f44689
diff --git a/app-editors/vscode/files/vscode-url-handler.desktop b/app-editors/vscode/files/code-url-handler.desktop
index 73e3834801b4..fe65d7527069 100644
--- a/app-editors/vscode/files/vscode-url-handler.desktop
+++ b/app-editors/vscode/files/code-url-handler.desktop
@@ -2,7 +2,7 @@
Name=VSCode - URL Handler
Comment=Editing evolved
GenericName=Code Editor
-Exec=/usr/bin/vscode --open-url %U
+Exec=/usr/bin/vscode @exec_extra_flags@ --open-url %U
Icon=vscode
Type=Application
NoDisplay=true
diff --git a/app-editors/vscode/files/vscode.desktop b/app-editors/vscode/files/code.desktop
index d648416a26ca..ec697eca68b6 100644
--- a/app-editors/vscode/files/vscode.desktop
+++ b/app-editors/vscode/files/code.desktop
@@ -2,7 +2,7 @@
Name=VSCode
Comment=Editing evolved
GenericName=Code Editor
-Exec=/usr/bin/vscode --unity-launch %F
+Exec=/usr/bin/vscode @exec_extra_flags@ --unity-launch %F
Icon=vscode
Type=Application
StartupNotify=false
@@ -14,5 +14,5 @@ Keywords=vscode;code;
[Desktop Action new-empty-window]
Name=New Empty Window
-Exec=/usr/bin/vscode --new-window %F
+Exec=/usr/bin/vscode @exec_extra_flags@ --new-window %F
Icon=vscode
diff --git a/app-editors/vscode/files/vscode-url-handler-wayland.desktop b/app-editors/vscode/files/vscode-url-handler-wayland.desktop
deleted file mode 100644
index a3214afa7d32..000000000000
--- a/app-editors/vscode/files/vscode-url-handler-wayland.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Name=VSCode - URL Handler
-Comment=Editing evolved
-GenericName=Code Editor
-Exec=/usr/bin/vscode --enable-features=UseOzonePlatform --ozone-platform=wayland --open-url %U
-Icon=vscode
-Type=Application
-NoDisplay=true
-StartupNotify=true
-Categories=Utility;TextEditor;Development;IDE;
-MimeType=x-scheme-handler/vscode;
-Keywords=vscode;code;
diff --git a/app-editors/vscode/files/vscode-wayland.desktop b/app-editors/vscode/files/vscode-wayland.desktop
deleted file mode 100644
index 1c12a97ffd01..000000000000
--- a/app-editors/vscode/files/vscode-wayland.desktop
+++ /dev/null
@@ -1,18 +0,0 @@
-[Desktop Entry]
-Name=VSCode Wayland
-Comment=Editing evolved
-GenericName=Code Editor
-Exec=/usr/bin/vscode --enable-features=UseOzonePlatform --ozone-platform=wayland --unity-launch %F
-Icon=vscode
-Type=Application
-StartupNotify=false
-StartupWMClass=Code
-Categories=Utility;TextEditor;Development;IDE;
-MimeType=text/plain;inode/directory;application/x-code-workspace;
-Actions=new-empty-window;
-Keywords=vscode;code;
-
-[Desktop Action new-empty-window]
-Name=New Empty Window
-Exec=/usr/bin/vscode --enable-features=UseOzonePlatform --ozone-platform=wayland --new-window %F
-Icon=vscode
diff --git a/app-editors/vscode/metadata.xml b/app-editors/vscode/metadata.xml
index 70a9316b5281..52921d6c9411 100644
--- a/app-editors/vscode/metadata.xml
+++ b/app-editors/vscode/metadata.xml
@@ -5,10 +5,18 @@
<email>adel.ks@zegrapher.com</email>
<name>Adel KARA SLIMANE</name>
</maintainer>
+ <maintainer type="person">
+ <email>arthurzam@gentoo.org</email>
+ <name>Arthur Zamarin</name>
+ </maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <use>
+ <flag name="egl">Use EGL platform, enables smooth rending in high refresh rate monitors on X11/Xwayland</flag>
+ <flag name="wayland">Run in wayland mode under wayland sessions, xwayland otherwise. This flag doesn't affect x11 sessions.</flag>
+ </use>
<longdescription>
Visual Studio Code is a lightweight but powerful source code editor which
runs on your desktop and is available for Windows, macOS and Linux. It
diff --git a/app-editors/vscode/vscode-1.62.3.ebuild b/app-editors/vscode/vscode-1.62.3.ebuild
deleted file mode 100644
index dbed711c205a..000000000000
--- a/app-editors/vscode/vscode-1.62.3.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop pax-utils xdg
-
-DESCRIPTION="Multiplatform Visual Studio Code from Microsoft"
-HOMEPAGE="https://code.visualstudio.com"
-SRC_URI="
- amd64? ( https://update.code.visualstudio.com/${PV}/linux-x64/stable -> ${P}-amd64.tar.gz )
- arm? ( https://update.code.visualstudio.com/${PV}/linux-armhf/stable -> ${P}-arm.tar.gz )
- arm64? ( https://update.code.visualstudio.com/${PV}/linux-arm64/stable -> ${P}-arm64.tar.gz )
-"
-S="${WORKDIR}"
-
-RESTRICT="mirror strip bindist"
-
-LICENSE="
- Apache-2.0
- BSD
- BSD-1
- BSD-2
- BSD-4
- CC-BY-4.0
- ISC
- LGPL-2.1+
- Microsoft-vscode
- MIT
- MPL-2.0
- openssl
- PYTHON
- TextMate-bundle
- Unlicense
- UoI-NCSA
- W3C
-"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~arm ~arm64"
-
-RDEPEND="
- app-accessibility/at-spi2-atk:2
- app-accessibility/at-spi2-core:2
- app-crypt/libsecret[crypt]
- dev-libs/atk
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/nspr
- dev-libs/nss
- media-libs/alsa-lib
- media-libs/mesa
- sys-apps/dbus
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3
- x11-libs/libdrm
- x11-libs/libX11
- x11-libs/libxcb
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libxkbcommon
- x11-libs/libxkbfile
- x11-libs/libXrandr
- x11-libs/libxshmfence
- x11-libs/pango
-"
-
-QA_PREBUILT="
- /opt/vscode/code
- /opt/vscode/libEGL.so
- /opt/vscode/libffmpeg.so
- /opt/vscode/libGLESv2.so
- /opt/vscode/libvulkan.so*
- /opt/vscode/chrome-sandbox
- /opt/vscode/libvk_swiftshader.so
- /opt/vscode/swiftshader/libEGL.so
- /opt/vscode/swiftshader/libGLESv2.so
- /opt/vscode/resources/app/extensions/*
- /opt/vscode/resources/app/node_modules.asar.unpacked/*
-"
-
-src_install() {
- if use amd64; then
- cd "${WORKDIR}/VSCode-linux-x64" || die
- elif use arm; then
- cd "${WORKDIR}/VSCode-linux-armhf" || die
- elif use arm64; then
- cd "${WORKDIR}/VSCode-linux-arm64" || die
- else
- die "Visual Studio Code only supports amd64, arm and arm64"
- fi
-
- # Cleanup
- rm -r ./resources/app/LICENSES.chromium.html ./resources/app/LICENSE.rtf ./resources/app/licenses || die
-
- # Install
- pax-mark m code
- insinto "/opt/${PN}"
- doins -r *
- fperms +x /opt/${PN}/{,bin/}code
- fperms 4711 /opt/${PN}/chrome-sandbox
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass.sh
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass-empty.sh
- fperms -R +x /opt/${PN}/resources/app/out/vs/base/node
- fperms +x /opt/${PN}/resources/app/node_modules.asar.unpacked/vscode-ripgrep/bin/rg
- dosym "../../opt/${PN}/bin/code" "usr/bin/vscode"
- dosym "../../opt/${PN}/bin/code" "usr/bin/code"
- domenu "${FILESDIR}/vscode.desktop"
- domenu "${FILESDIR}/vscode-url-handler.desktop"
- domenu "${FILESDIR}/vscode-wayland.desktop"
- domenu "${FILESDIR}/vscode-url-handler-wayland.desktop"
- newicon "resources/app/resources/linux/code.png" "vscode.png"
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- elog "You may want to install some additional utils, check in:"
- elog "https://code.visualstudio.com/Docs/setup#_additional-tools"
-}
diff --git a/app-editors/vscode/vscode-1.63.2.ebuild b/app-editors/vscode/vscode-1.90.0.ebuild
index 45c99d4302b6..f803279f6a02 100644
--- a/app-editors/vscode/vscode-1.63.2.ebuild
+++ b/app-editors/vscode/vscode-1.90.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit desktop pax-utils xdg
+inherit desktop pax-utils xdg optfeature
DESCRIPTION="Multiplatform Visual Studio Code from Microsoft"
HOMEPAGE="https://code.visualstudio.com"
@@ -14,8 +14,6 @@ SRC_URI="
"
S="${WORKDIR}"
-RESTRICT="mirror strip bindist"
-
LICENSE="
Apache-2.0
BSD
@@ -36,22 +34,27 @@ LICENSE="
W3C
"
SLOT="0"
-KEYWORDS="-* ~amd64 ~arm ~arm64"
+KEYWORDS="-* amd64 ~arm ~arm64"
+IUSE="egl kerberos wayland"
+RESTRICT="mirror strip bindist"
RDEPEND="
- app-accessibility/at-spi2-atk:2
- app-accessibility/at-spi2-core:2
+ >=app-accessibility/at-spi2-core-2.46.0:2
app-crypt/libsecret[crypt]
- dev-libs/atk
+ app-misc/ca-certificates
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
media-libs/alsa-lib
+ media-libs/libcanberra[gtk3]
+ media-libs/libglvnd
media-libs/mesa
+ net-misc/curl
sys-apps/dbus
+ sys-libs/zlib
+ sys-process/lsof
x11-libs/cairo
- x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libdrm
x11-libs/libX11
@@ -63,23 +66,13 @@ RDEPEND="
x11-libs/libxkbcommon
x11-libs/libxkbfile
x11-libs/libXrandr
- x11-libs/libxshmfence
+ x11-libs/libXScrnSaver
x11-libs/pango
+ x11-misc/xdg-utils
+ kerberos? ( app-crypt/mit-krb5 )
"
-QA_PREBUILT="
- /opt/vscode/code
- /opt/vscode/libEGL.so
- /opt/vscode/libffmpeg.so
- /opt/vscode/libGLESv2.so
- /opt/vscode/libvulkan.so*
- /opt/vscode/chrome-sandbox
- /opt/vscode/libvk_swiftshader.so
- /opt/vscode/swiftshader/libEGL.so
- /opt/vscode/swiftshader/libGLESv2.so
- /opt/vscode/resources/app/extensions/*
- /opt/vscode/resources/app/node_modules.asar.unpacked/*
-"
+QA_PREBUILT="*"
src_install() {
if use amd64; then
@@ -93,29 +86,47 @@ src_install() {
fi
# Cleanup
- rm -r ./resources/app/LICENSES.chromium.html ./resources/app/LICENSE.rtf ./resources/app/licenses || die
+ rm -r ./resources/app/ThirdPartyNotices.txt || die
+
+ # Disable update server
+ sed -e "/updateUrl/d" -i ./resources/app/product.json || die
+
+ if ! use kerberos; then
+ rm -r ./resources/app/node_modules.asar.unpacked/kerberos || die
+ fi
# Install
pax-mark m code
- insinto "/opt/${PN}"
- doins -r *
- fperms +x /opt/${PN}/{,bin/}code
+ mkdir -p "${ED}/opt/${PN}" || die
+ cp -r . "${ED}/opt/${PN}" || die
fperms 4711 /opt/${PN}/chrome-sandbox
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass.sh
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass-empty.sh
- fperms -R +x /opt/${PN}/resources/app/out/vs/base/node
- fperms +x /opt/${PN}/resources/app/node_modules.asar.unpacked/vscode-ripgrep/bin/rg
- dosym "../../opt/${PN}/bin/code" "usr/bin/vscode"
- dosym "../../opt/${PN}/bin/code" "usr/bin/code"
- domenu "${FILESDIR}/vscode.desktop"
- domenu "${FILESDIR}/vscode-url-handler.desktop"
- domenu "${FILESDIR}/vscode-wayland.desktop"
- domenu "${FILESDIR}/vscode-url-handler-wayland.desktop"
+
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode"
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/code"
+
+ local EXEC_EXTRA_FLAGS=()
+ if use wayland; then
+ EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" "--enable-wayland-ime" )
+ fi
+ if use egl; then
+ EXEC_EXTRA_FLAGS+=( "--use-gl=egl" )
+ fi
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code-url-handler.desktop" \
+ > "${T}/code-url-handler.desktop" || die
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code.desktop" \
+ > "${T}/code.desktop" || die
+
+ domenu "${T}/code.desktop"
+ domenu "${T}/code-url-handler.desktop"
newicon "resources/app/resources/linux/code.png" "vscode.png"
}
pkg_postinst() {
xdg_pkg_postinst
- elog "You may want to install some additional utils, check in:"
- elog "https://code.visualstudio.com/Docs/setup#_additional-tools"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "keyring support inside vscode" "virtual/secret-service"
}
diff --git a/app-editors/vscode/vscode-1.61.2.ebuild b/app-editors/vscode/vscode-1.90.1.ebuild
index dbed711c205a..f803279f6a02 100644
--- a/app-editors/vscode/vscode-1.61.2.ebuild
+++ b/app-editors/vscode/vscode-1.90.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit desktop pax-utils xdg
+inherit desktop pax-utils xdg optfeature
DESCRIPTION="Multiplatform Visual Studio Code from Microsoft"
HOMEPAGE="https://code.visualstudio.com"
@@ -14,8 +14,6 @@ SRC_URI="
"
S="${WORKDIR}"
-RESTRICT="mirror strip bindist"
-
LICENSE="
Apache-2.0
BSD
@@ -36,22 +34,27 @@ LICENSE="
W3C
"
SLOT="0"
-KEYWORDS="-* ~amd64 ~arm ~arm64"
+KEYWORDS="-* amd64 ~arm ~arm64"
+IUSE="egl kerberos wayland"
+RESTRICT="mirror strip bindist"
RDEPEND="
- app-accessibility/at-spi2-atk:2
- app-accessibility/at-spi2-core:2
+ >=app-accessibility/at-spi2-core-2.46.0:2
app-crypt/libsecret[crypt]
- dev-libs/atk
+ app-misc/ca-certificates
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
media-libs/alsa-lib
+ media-libs/libcanberra[gtk3]
+ media-libs/libglvnd
media-libs/mesa
+ net-misc/curl
sys-apps/dbus
+ sys-libs/zlib
+ sys-process/lsof
x11-libs/cairo
- x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libdrm
x11-libs/libX11
@@ -63,23 +66,13 @@ RDEPEND="
x11-libs/libxkbcommon
x11-libs/libxkbfile
x11-libs/libXrandr
- x11-libs/libxshmfence
+ x11-libs/libXScrnSaver
x11-libs/pango
+ x11-misc/xdg-utils
+ kerberos? ( app-crypt/mit-krb5 )
"
-QA_PREBUILT="
- /opt/vscode/code
- /opt/vscode/libEGL.so
- /opt/vscode/libffmpeg.so
- /opt/vscode/libGLESv2.so
- /opt/vscode/libvulkan.so*
- /opt/vscode/chrome-sandbox
- /opt/vscode/libvk_swiftshader.so
- /opt/vscode/swiftshader/libEGL.so
- /opt/vscode/swiftshader/libGLESv2.so
- /opt/vscode/resources/app/extensions/*
- /opt/vscode/resources/app/node_modules.asar.unpacked/*
-"
+QA_PREBUILT="*"
src_install() {
if use amd64; then
@@ -93,29 +86,47 @@ src_install() {
fi
# Cleanup
- rm -r ./resources/app/LICENSES.chromium.html ./resources/app/LICENSE.rtf ./resources/app/licenses || die
+ rm -r ./resources/app/ThirdPartyNotices.txt || die
+
+ # Disable update server
+ sed -e "/updateUrl/d" -i ./resources/app/product.json || die
+
+ if ! use kerberos; then
+ rm -r ./resources/app/node_modules.asar.unpacked/kerberos || die
+ fi
# Install
pax-mark m code
- insinto "/opt/${PN}"
- doins -r *
- fperms +x /opt/${PN}/{,bin/}code
+ mkdir -p "${ED}/opt/${PN}" || die
+ cp -r . "${ED}/opt/${PN}" || die
fperms 4711 /opt/${PN}/chrome-sandbox
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass.sh
- fperms 755 /opt/${PN}/resources/app/extensions/git/dist/askpass-empty.sh
- fperms -R +x /opt/${PN}/resources/app/out/vs/base/node
- fperms +x /opt/${PN}/resources/app/node_modules.asar.unpacked/vscode-ripgrep/bin/rg
- dosym "../../opt/${PN}/bin/code" "usr/bin/vscode"
- dosym "../../opt/${PN}/bin/code" "usr/bin/code"
- domenu "${FILESDIR}/vscode.desktop"
- domenu "${FILESDIR}/vscode-url-handler.desktop"
- domenu "${FILESDIR}/vscode-wayland.desktop"
- domenu "${FILESDIR}/vscode-url-handler-wayland.desktop"
+
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode"
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/code"
+
+ local EXEC_EXTRA_FLAGS=()
+ if use wayland; then
+ EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" "--enable-wayland-ime" )
+ fi
+ if use egl; then
+ EXEC_EXTRA_FLAGS+=( "--use-gl=egl" )
+ fi
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code-url-handler.desktop" \
+ > "${T}/code-url-handler.desktop" || die
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code.desktop" \
+ > "${T}/code.desktop" || die
+
+ domenu "${T}/code.desktop"
+ domenu "${T}/code-url-handler.desktop"
newicon "resources/app/resources/linux/code.png" "vscode.png"
}
pkg_postinst() {
xdg_pkg_postinst
- elog "You may want to install some additional utils, check in:"
- elog "https://code.visualstudio.com/Docs/setup#_additional-tools"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "keyring support inside vscode" "virtual/secret-service"
}