@eddloschi that's what we're using already. The resource files have to come from elsewhere because they are not included in that tarball. Please read the PKGBUILD and see what it does.
Search Criteria
Package Details: visual-studio-code-bin 1.129.1-1
Package Actions
| Git Clone URL: | https://aur.archlinux.org/visual-studio-code-bin.git (read-only, click to copy) |
|---|---|
| Package Base: | visual-studio-code-bin |
| Description: | Visual Studio Code (vscode): Editor for building and debugging modern web and cloud applications (official binary version) |
| Upstream URL: | https://code.visualstudio.com/ |
| Licenses: | custom: commercial |
| Conflicts: | code |
| Provides: | code, vscode |
| Submitter: | dcelasun |
| Maintainer: | dcelasun |
| Last Packager: | dcelasun |
| Votes: | 1695 |
| Popularity: | 26.60 |
| First Submitted: | 2017-12-18 19:14 (UTC) |
| Last Updated: | 2026-07-18 05:35 (UTC) |
Dependencies (17)
- alsa-lib
- gcc-libs (gcc-libs-gitAUR, gcc-libs-fast-optimizedAUR, gccrs-libs-gitAUR, gcc-libs-snapshotAUR)
- glibc (glibc-gitAUR, glibc-git-native-pgoAUR, glibc-eacAUR)
- gnupg (gnupg-gitAUR, gnupg-largekeysAUR)
- gtk3 (gtk3-no_deadkeys_underlineAUR, gtk3-classicAUR, gtk3-patched-filechooser-icon-viewAUR, gtk3-classic-xfceAUR)
- libnotify (libnotify-gitAUR)
- libsecret
- libxkbfile
- libxss
- lsof (lsof-gitAUR)
- nss (nss-hgAUR)
- shared-mime-info (shared-mime-info-gitAUR)
- xdg-utils (busking-gitAUR, xdg-utils-slockAUR, mimiAUR, mimi-gitAUR, openerAUR, mimejs-gitAUR, xdg-utils-mimeoAUR, xdg-utils-gitAUR)
- glib2 (glib2-gitAUR, glib2-patched-thumbnailerAUR) (optional) – Needed for move to trash functionality
- icu69AUR (icu69-binAUR) (optional) – Needed for live share
- libdbusmenu-glib (optional) – Needed for KDE global menu
- org.freedesktop.secrets (pass-secrets-gitAUR, keepassxc-allow-aur-extension-originAUR, keepassxc-allow-aur-extension-origin-binAUR, bitw-gitAUR, dssdAUR, pass-secret-service-gitAUR, himitsu-secret-serviceAUR, kwallet-gitAUR, gopass-secret-serviceAUR, pass-secret-service-binAUR, chipass-gitAUR, keepassxc-gitAUR, mykey-gitAUR, pass-secret-service-runitAUR, pass-secret-serviceAUR, rosec-binAUR, rosec-gitAUR, gnome-keyring-gitAUR, gnome-keyring, keepassxc, kwallet, oo7) (optional) – Needed for settings sync
Required by (29)
- azure-sphere-sdk (requires code) (optional)
- claude-workspaces (requires code) (optional)
- code-features (requires code)
- code-features-insiders (requires code)
- code-marketplace (requires code)
- code-nautilus-git (requires code) (optional)
- code-xdg-dir-patch (requires code)
- contextpilot (optional)
- contextpilot-git (optional)
- dokytree (requires code) (optional)
- dokytree-git (requires code) (optional)
- meta-package-manager (requires code) (optional)
- meta-package-manager-git (requires code) (optional)
- nautilus-code (requires code) (optional)
- neopo-git (optional)
- nwscript-code (requires code)
- python-ocp-vscode (requires vscode) (optional)
- rainbeau (requires code) (optional)
- rt-thread-env-meta (requires code) (optional)
- rust-analyzer-vscode-git (requires code)
- Show 9 more...
Sources (4)
Latest Comments
« First ‹ Previous 1 2 3 4 5 6 7 8 .. 94 Next › Last »
dcelasun commented on 2026-06-04 14:34 (UTC)
eddloschi commented on 2026-06-04 14:31 (UTC)
@dcelasun what about using the download url from code.visualstudio.com? ie: https://code.visualstudio.com/sha/download?build=stable&os=linux-x64
dcelasun commented on 2026-06-04 14:15 (UTC)
Whenever something changes, you just change _ref variable accordingly. You can even change it to a commit ID in case Microsoft forgets to push a tag altogether.
Thanks for the suggestion, but I'm not interested in options that increase my maintenance burden. I already get plenty of people breathing down my neck for updates within minutes of a new upstream release. I have no interest whatsoever in manually checking if Microsoft has pushed the correct tags for each release just to update your suggested variable.
the-k commented on 2026-06-04 13:59 (UTC)
I recommend you applying the following patch:
diff --git a/PKGBUILD b/PKGBUILD
index fffd1e9..d1eb986 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,6 +3,7 @@
pkgname=visual-studio-code-bin
_pkgname=visual-studio-code
pkgver=1.123.0
+_ref="${pkgver%.0}"
pkgrel=2
pkgdesc="Visual Studio Code (vscode): Editor for building and debugging modern web and cloud applications (official binary version)"
arch=('x86_64' 'aarch64' 'armv7h')
@@ -22,10 +23,10 @@ optdepends=('glib2: Needed for move to trash functionality'
'org.freedesktop.secrets: Needed for settings sync'
# See https://github.com/MicrosoftDocs/live-share/issues/4650
'icu69: Needed for live share' )
-source=(local://code.desktop.in
- local://code-url-handler.desktop.in
- local://code-workspace.xml.in
- local://${_pkgname}-bin.sh)
+source=(code-${pkgver}.desktop.in::https://raw.githubusercontent.com/microsoft/vscode/${_ref}/resources/linux/code.desktop
+ code-${pkgver}-url-handler.desktop.in::https://raw.githubusercontent.com/microsoft/vscode/${_ref}/resources/linux/code-url-handler.desktop
+ code-${pkgver}-workspace.xml.in::https://raw.githubusercontent.com/microsoft/vscode/${_ref}/resources/linux/code-workspace.xml
+ ${_pkgname}-bin.sh)
source_x86_64=(code_x64_${pkgver}.tar.gz::https://update.code.visualstudio.com/${pkgver}/linux-x64/stable)
source_aarch64=(code_arm64_${pkgver}.tar.gz::https://update.code.visualstudio.com/${pkgver}/linux-arm64/stable)
source_armv7h=(code_armhf_${pkgver}.tar.gz::https://update.code.visualstudio.com/${pkgver}/linux-armhf/stable)
diff --git a/code-url-handler.desktop.in b/code-url-handler.desktop.in
deleted file mode 100644
index e69de29..0000000
diff --git a/code-workspace.xml.in b/code-workspace.xml.in
deleted file mode 100644
index e69de29..0000000
diff --git a/code.desktop.in b/code.desktop.in
deleted file mode 100644
index e69de29..0000000
Whenever something changes, you just change _ref variable accordingly. You can even change it to a commit ID in case Microsoft forgets to push a tag altogether.
dcelasun commented on 2026-06-04 13:37 (UTC)
@the-k
why did you commit the files instead of just changing the URLs?
Changing them to what? They are not published to the CDN with the official builds. This package is 9 years old. In the past, we've tried:
- Committing the files
- Pulling from
masteron GitHub - Pulling from the same tag on GitHub
Each of these have broken this package at least once. There is no silver bullet here, but I'm open to suggestions.
Plus, I don't understand why the paths have to be prefixed with local://, but it doesn't play nicely with AUR. Check out the links in Sources section.
Like I said, I can get rid of it with the next version, but it seems like a cosmetic issue (read: it doesn't break makepkg, AUR helpers etc).
the-k commented on 2026-06-04 13:32 (UTC)
@dcelasun, why did you commit the files instead of just changing the URLs? This means you'll have to manually update them and we have to review them every time they change to make sure they really do reflect the upstream. Plus, I don't understand why the paths have to be prefixed with local://, but it doesn't play nicely with AUR. Check out the links in Sources section.
dcelasun commented on 2026-06-04 13:14 (UTC)
Apologies everyone, I was hasty and didn't test a clean build. 1.123.0-3 fixes the empty resource files.
rcv commented on 2026-06-04 13:04 (UTC)
Hello! I'm reporting a problem with this new update 1.123.0-2:
==> Validating source files with sha256sums... code.desktop.in ... FAILED code-url-handler.desktop.in ... FAILED code-workspace.xml.in ... FAILED
Best regards!
RevenantX commented on 2026-06-04 13:01 (UTC)
visual-studio-code-bin-1.123.0-2
==> Validating source files with sha256sums...
code.desktop.in ... FAILED
code-url-handler.desktop.in ... FAILED
code-workspace.xml.in ... FAILED
visual-studio-code-bin.sh ... Passed
==> ERROR: One or more files did not pass the validity check!
-> error downloading sources: /home/revenantx/.cache/yay/visual-studio-code-bin
context: exit status 1
fuhry commented on 2026-06-04 13:01 (UTC)
As of right now it looks like the 3 .in files as committed to the repository are empty, but the checksums reflect the contents of those files in the repository.
The current release is tagged as 1.123, without the .0 as has been used previously. To get the package building, one can download these files from upstream:
for f in code.desktop code-url-handler.desktop code-workspace.xml; do
curl -o "${f}.in" "https://raw.githubusercontent.com/microsoft/vscode/1.123/resources/linux/${f}"
done
Pinned Comments
dcelasun commented on 2017-11-15 06:20 (UTC) (edited on 2026-06-04 12:33 (UTC) by dcelasun)
FREQUENTLY ASKED QUESTIONS (read before flagging or commenting!)
This is the official binary distribution from Microsoft. The one in the community repo is an unofficial build made from source. Beyond the licence difference and branding, there are some proprietary features not available in the open-source version.
This package depends on the official tarball. Please check this page before flagging as out-of-date. If the new version isn't on that page, this package cannot be updated! If you can see the new version there, but the AUR package is still not updated, flag it and give it time. It's usually done within hours.
Sometimes AUR helpers do weird things. Download the tarball and install it manually with
makepkg -si. If that works, report the problem to your AUR helper's upstream, not here.xdg-openuses vscode, not my file manager! How do I fix this?Install
shared-mime-info-gnomegnome-sessionwhich now includes mimemapps.Just because $X is not required to open the app, doesn't mean there is nothing that depends on it. Always search the comment history on AUR to see if that dependency has been previously discussed before writing your own comment. Still nothing? Then use namcap to make sure it's really not needed. If namcap doesn't complain, please leave a comment here and I'll investigate.
The problem might be a packaging issue (wrong paths, dependencies, icons), so please write a comment here first. If you don't get a reply, or if someone says it's an upstream issue, you can report it on GitHub.
No, you won't get a reply. Please stop doing this. Leave a comment here instead and be patient.