VSCodium – Open-source binaries of VSCode
vscodium.com
vscodium.com
I'm afraid that such projects, with much less man power and skin in the game, are more vulnerable to supply chain attacks or a hostile takeover if a dev sells the project.
I'm not very knowledgeable in this area. Would someone contribute here some resources on how this is avoided in such projects? Or maybe my concerns are valid :)
That's the key value of open-source projects. You don't have to release a binary, just source code and a build guide. It's also one of the reasons why I have such high respect for OS distributions like BSDs and Slackware. They give you a good base that you can build upon if you know what you're doing.
The problem is, many PC users don't really know what they're doing.
I'd say most, even software engineers.
Can't tell you how many times I've had to explain how environmental variables work to developers, and that's a pretty simple concept compared to many other things in an operating system.
https://github.com/VSCodium/vscodium/blob/master/.github/wor...
- Downloads binaries for use in build with no hash/signing verification.
- Doesn't pin shared actions.
- Uses Yarn to install dependencies (which can involve downloading/executing arbitrary code from anywhere)
- Doesn't sign the final binary.
None of this is necessarily wrong, all would make maintenance harder in the long run, but it means this project is really about removing MS branding and some telemetry, and that there is a security trade-off to get those benefits.
> - Downloads binaries for use in build with no hash/signing verification.
It downloads them using TLS.
> - Doesn't pin shared actions.
The shared actions are just @actions/checkout and @actions/setup-node. They're official. I wouldn't pin them - YAGNI.
> - Uses Yarn to install dependencies (which can involve downloading/executing arbitrary code from anywhere)
It downloads/executes code based on the carefully chosen dependencies
> - Doesn't sign the final binary.
That's platform dependent I think. For Mac OS X it does.
Seems like FUD, which you might be able to recognize because you say "None of this is necessarily wrong". Especially the part about pinning first party GitHub Actions. There would be nothing wrong with that but it is much more useful to pin third party GitHub Actions, and IMHO suboptimal to pin first party actions.
I don't think it's quite FUD, but I do agree none of these are strictly necessary, all can be rationalised as unnecessary and for many users this project probably provides a perfectly reasonable security posture. However the fact that there's so little explicit acknowledgement of the security concerns, and that 2 minutes looking at the repo turned these things up, suggests that security is not a priority of the project. Again, not the wrong thing to do, but maybe not the trade-offs all users will want.
Pinning actions is so low effort/high reward that even the low risk makes it worth it for a project like this in my opinion. Official actions are certainly much safer, but ultimately it's still just human review and PRs being merged.
Downloading over TLS negates some impact of hash/signing verification, but it would be a nice extra layer. You're otherwise putting a lot of trust in the combination of DNS+CDN+Hosting. I've seen hijacked sites due to IPs being re-used on cloud providers for example. Unlikely, but again easy to do and high impact in the rare situation that is is taken advantage of.
Yarn dependencies may be carefully chosen, I'm not familiar with the VSCode practices. I bet that official binaries however are not built like this – I'd bet that there are allowances for specific network connectivity and binary execution, and that everything else is locked down. To my knowledge GitHub Actions have open internet access. I wouldn't even say this is low risk either, the NPM ecosystem is so deeply nested that I'm sure malicious code could be snuck in somewhere. This is a lot harder to solve for this project, and certainly the most debatable aspect as to whether it's worth it or not.
Are there any shared actions that aren't actions/name-of-project? If not, that's zero reward.
Malicious code with the correct checksum? VSCode team is not auto updating dependencies but I also doubt they are reviewing the source code of every package they update. I've never worked anywhere that does. So yeah, "gulp-vinyl-zip" (or any other package used at build time) could add some code that secretly triggers when run in the VSCode repository and makes some malicious source code changes. But, it's still going to be the same code in VSCode and VSCodium. Unless the attacker decides to use specific logic to target one or the other.
As for writing such a check manually, you would just need to check "bin" in */package.json after installing everything, and verify each script.
Trusting a big company seems to be another suggestion I see in this thread too. I don't agree with that one.
I think the idea MS has deployed this is over optimistic. Look at this with Google. https://giraffesecurity.dev/posts/google-remote-code-executi...
Also, it depends how determined your attacker is. If they write code to detect whether they're being installed in the vscode project, have access to commercially available security scanning tools to ensure they evade detection, etc...
>> - Downloads binaries for use in build with no hash/signing verification.
> It downloads them using TLS.
If the binary is updated to a shady version, sure, no one will be able to tamper with the download, they're certain to have received the correct shady stuff.
It's unlikely that this project knowingly does shady stuff – I've heard of it before, seems to be a long running legit project – but there are lots of unverified factors in that, and the lack of signing (I think?) on the final binaries also means it's hard to know if they get tampered with at some other step.
There's basically no way to do this without trusting the redistributor in addition to the original publisher, but some things can reduce the amount of trust. Having a verifiable build process, that checks signing keys and hashes, that re-signs, etc, that all helps. If end-users can theoretically produce exactly the same build themselves it's easier to trust it.
The best option however is for the source project to produce unbranded builds themselves, and potentially for a project like VSCodium to become "config only" for things like disabling telemetry, and therefore not requiring re-signing. The Chromium project distributes its own Chromium binaries which lack the Google-specific stuff for example.
[^1]: Mostly thinking of app stores, but the same is basically true of things like Debian package repositories.
[^2]: App stores typically re-sign in the middle, so you do have to trust the store, but see (1), these companies go to great lengths to ensure trustworthiness there.
When I worked for one of the largest voting machine companies I was astounded how the final build process for the software was done just before it was sent to the customer. It was built on a Jenkins server that several people had access to change and update with minimal oversight and the devops person had freedom to do anything to with no oversight. For the year I worked there this one man could have changed dozens of elections if he chose to and figuring it out would have been very hard. I am sure a large enough investigation could could have figured out such a thing, but by then the damage would already be done. If he changed only municipal elections that couldn't affors such an investigation it might never have been done. I have no reason to claim this happened, but we certainly can't prove it didn't and this is in one of the most paranoid and regulated spaces in software development.
I don't know if other big tech is quite the same, but from the little I've heard, I suspect that Microsoft, Amazon, Apple, and others in that ilk are similar.
I'm very much in the camp of "trust but verify" here. You're right that Solar Winds was an utter disaster. It should never have been able to happen.
https://news.ycombinator.com/item?id=36979532 (Microsoft comes under blistering criticism for “grossly irresponsible” security)
The reason why organizations turn to other companies to deliver this is because there's a "throat to choke" for when things go wrong and a financial incentive to fix the inevitable issues when they come up.
For example, Microsoft recently "lost" (they didn't disclose what happened) some sort of authentication key that allowed Chinese hackers to break into their network: https://techcrunch.com/2023/07/17/microsoft-lost-keys-govern...
How does this even happen at a big company like Microsoft? Then you take a look at small, <100 people company, their security policies are much more strict than Microsoft's. And even if it happened the same way, we wouldn't have such high expectations because they have a small team.
Honestly, I prefer trusting a small project than a big company project. Take a look at Terraform now, HashiCorp pulled the plug and made it a proprietary app with source available requiring you to sign a CLA to prevent them from being sued later on. Red Hat is manipulating the GPL2 to force people to buy their subscriptions.
EDIT: how can we forget how GitHub was before Microsoft bought it in 2016? GitHub was much more friendly to open source and nowadays they just use any open source code available on their service to train their Copilot AI without respecting the terms of the licenses of the millions of projects hosted there. They killed Atom. They scan your private and public repos for "vulnerabilities". They literally read everything on your repo and feed it into Copilot. If GitHub wasn't sold, I'm pretty sure the situation would be different.
Call me crazy or dumb but I strongly believe that the bigger a company is, the worse their policies are. They neglect security at the cost of higher profits (ahem, looking at Facebook for allowing people to mine their users' data via an exploit that was just fixed when they called out Facebook for selling users' data).
Really what much else could you ask for?
It only takes 1 trusted friend to verify the codebase, and from there it can spread. Luckily there are a lot of talented people on the Internet whom several people can vouch for, easy to find. It's pretty much a non-problem in the age of the Internet.
The same natural logic applies to anything else really... like cars - "yo what car do you trust?"
It's just the nature of living. If you don't have the skills, you need to find someone who does to trust. And no just because it comes from a company doesn't mean you can trust it, that's a fallacy. "Safety" doesn't necessary equate to "profits" which is what a business needs to live. It's an organism.
I don't think your car analogy quite fits, as there are ongoing updates, and it's not like the end-user perception of regular VSCode, or backdoored VSCode, are going to be any different until someone spots the backdoor (and we can't rely on that).
https://news.ycombinator.com/item?id=37261500
Why would a GitHub Action be worse? You're just telling me it is, asking me to believe that...
The car analogy is just that - you can break any analogy if you try. You've got a better one to help prove me right? :)
I don't know if this is because Microsoft took down the blog posts and press releases or because Google web search sucks now (different conversation) but I had trouble finding the source for Microsoft statement. I'm talking about the incident when Microsoft spied into a user's hotmail email contents.
> However, to determine the identity of the leaker, CNET reveals, Microsoft actually looked through the Hotmail email of a French blogger who was in contact with the leaker, and make available online early copies of Windows 7 and Windows 8, as well as means that allowed users to circumvent activations protection for Microsoft and Windows.
https://bgr.com/general/microsoft-hotmail-and-outlook-privac...
I wouldn't give Microsoft any benefit of the doubt. While I have utmost respect for the people (who I know and) who work there, the senior leadership has always been poopy at best. I would never trust a word they say.
As Capricorn2481 points out though, suing isn't really on the cards for most individual.
lol.
[1] Of course this includes ensuring it doesn't e.g. pull anything from the internet whose integrity you can't similarly guarantee...
I have absolutely 0 trust towards any big corp doing things properly, and not cramming the applications full of spyware in the name of telemetry. and i would rather trust a bunch of insane dedicated people trying to make FOSS software.
Reproducible builds would help here, like Go did for their newest SDK [1].
This would be particularly true for a fork when the source changes are fairly minimal, since you could just verify the patch.
Linux distros are fairly similar; why do we mostly trust Debian packages? Because there’s an umbrella organization and a process. That’s less true of a standalone organization.
Maybe eventually there will be an umbrella organization that just does reproducible builds, and people will use that to distribute binaries. (And independent verification could keep them honest, like happens with domain registrars.)
I don't assume that there won't be security holes, but in effect, I'm assuming they probably won't affect me.
I’m sure you could diff the source code the package used, and the upstream Microsoft git SHA it is claims to be derived from:
https://aur.archlinux.org/packages/vscodium
Incidentally, there is now an open source remote mode extension, so I have no reason to use the proprietary version. No more telemetry from me!
URL please? Open VSX lists several but it's hard to evaluate if they're complete & stable from just the READMEs. For example, https://github.com/xaberus/vscode-remote-oss has existed for a long time, but one would need to spend a few hours to know if it works well enough.
God bless the Arch User Repo. Stuff like this has made it impossible for me to move on from Arch.
I use vscodium either way, you need to get used to stuff like this from time to time.
So if there is a supply chain risk it's the same for VS Code
It's like buying your heart medication off an anonymous guy on Craigslist to stick it to big pharma.
The choice is obvious.
On first install:
- read AUR file
- audit build & patching framework
- audit patches
On upgrade:
- review patch changes
- treat upstream changes like you would otherwise
On upgrade with AUR file change:
- review AUR file changes
- review build & patching framework changes
If you've bothered to set up your own repos and build pipeline integrating your patches already (and you can get a lot of that for free), the additional overhead isn't as large as it may sound.vscodium is doing the much larger work of cross-checking vscode and in exchange I do the smaller work of cross-checking theirs - and putting in my own so I have zeroconf installs with prebundled extensions and whatnot on new machines.
Same for browser (ungoogled-chromium, vanadium, librewolf or whathaveyou)
I'm not worried about the government spying on me or ad tracking, I'm worried about a random hacker.
It's ironic that for a lot of people the concept of privacy has been inverted: The closer someone is to you the more we want to hide from them.
Facebook showing my online status to acquaintances(Or the lack of an online status, which could also create suspicion that I'm hiding something) bothers me more often than a random Google employee listening in through my alarm clock.
Most of the really scary big data possibilities seems more like political issues than data issues, the data is just something they could use to do the things people are worried about.
It's not great, but it's competing for mind share with a lot of other possibile horrors people are afraid of and people are rather fatigued.
The more subtle stuff they're already doing seems like it would be a problem with even the most basic data.
The biggest issue I see is personalized content which causes fights, hate, wasted time, and all that, because the algorithms want you to engage with it as much as possible, and it shits on real journalism by giving all the attention to clickbaits.
I suspect every time I've responded to such clickbaits might be more problematic than all the data they get from all my smart devices in a year...
Protecting one's privacy because of societal harm is a worthy thing but also a pretty big effort and I sure don't have a solution, or even any confident prediction of how big the problem is or where it's coming from...
But I probably won't truly be worried unless one of those horrid encryption bans gets close to passing.
Well, like you write, aggregated data is already being used to influence populations which makes it immediate. An hypothetical hacker is not.
> Most of the really scary big data possibilities seems more like political issues than data issues, the data is just something they could use to do the things people are worried about.
I don't follow. Not giving away the data removes the need for politics. Crime is illegal nevertheless it exists because it is possible to commit.
> It's not great, but it's competing for mind share with a lot of other possibile horrors people are afraid of and people are rather fatigued.
Not everyone shares the same concerns and nobody likes problems, that doesn't' mean they should be accepted.
> The more subtle stuff they're already doing seems like it would be a problem with even the most basic data.
All the more reason not to give them more. The personalized hate content is a direct consequence of big data aggregation.
All in all, seems like more of an issue than a possible compromise of a FOSS project.
So don’t lull yourself into thinking the supply chain on everything on your system is any better :) It’s likely substantially worse.
In reality I think distributions that are willing to ship binaries (NixOS, Homebrew on MacOS) ship VSCodium, and other distributions (Alpine) have packages called things like `code-oss` that are basically the distribution's internal compiled version of VSCode and have nothing (?) to do with VSCodium.
So if there is a "killer extension" not available on codium's marketplace, you can still use it through microsoft's marketplace.
[1] - https://parsiya.net/blog/2021-12-20-rce-in-visual-studio-cod...
[2] - https://github.com/microsoft/pylance-release/issues/746
I don't see why they'd put out an open-source app, whose most useful extensions only work if you accept a closed binary known to phone home.
I can see them trying to win goodwill from devs and steer them to their Azure/Windows offerings by releasing such an editor. But why insist on this telemetry-laden distribution, which is still free-as-in-beer?
But why would they force the use of their "official" VS Code build for this? Couldn't they just charge for their "impressive" plugins, regardless of the edition of VS Code used? The JetBrains "community" IDEs (open source and gratis) can use paid plugins from their marketplace.
The idea behind LSP and Microsoft's initial open source work on LSP were both excellent. That launched seven years ago, and I don't think that we would have seen the near universal adoption of LSP among open source editors nor the dominance of VS Code among developers if they had been paid products from the start. Now that they have a large enough market share, they can make the LSP engines proprietary without most developers even noticing. The gap between the proprietary and open source solutions can now be widened both by the open source community shrinking and by Microsoft pumping money into improving their LSP engines. The more that gap widens, the more people migrate to VS Code from open alternatives. That becomes a self-reinforcing loop.
Once VS Code is significantly better than open source alternatives and they have a huge market share, Microsoft is in a very strong position to start collecting rent. Switching costs on an editor are nontrivial to begin with, and are enhanced by the induced atrophy of open source alternatives. Despite the fact that this strategy takes more than a decade to execute, I would guess that it ends better for Microsoft overall than if they were to start charging for VS Code back in 2016.
Paid monthly premium LSP subscription honestly would be a great idea from a business perspective, even though it's distasteful.
Today, there is only one canonical editor: Visual Studio Code. 75% of professional programmers use it. Microsoft was trying to get the open source crowd back into their tooling fold -- and they've succeeded! Which means now they have a hugely expanded developer base to sell tools and services to. Remember their money is now in cloud, not desktop software -- so think things like GitHub Codespaces. (The entire devcontainer ecosystem comes from Microsoft and is oriented specifically around Visual Studio Code's model of remote development.)
But why does selling those features, especially the ones requiring a separate cloud subscription, require a specific build of an app which is otherwise open source?
Honestly, the more I learn about Visual Studio Code the more I understand why Emacs is the way it is. Stallman was trying to keep it fully hackable forever.
But I do wonder how much VS Code being "kinda open source" mattered. I may be in an MS-centric bubble, but most people I interact with couldn't care less about that. They're using closed-source software all over. Their main reasons for switching to VS Code seem to be the free-as-in-beer part, and that it's more practical than the OG VisualStudio. They're 99% Windows devs.
They didn't really change, they got just better in PR.
I did not know this and this is enough for me to steer clear of extensions by Microsoft (and potentially VSCode).
EDIT: Nevermind, it works! :) Just needed to follow the instructions in the README. And also make sure I had curl or wget installed in WSL.
“Open Remote - SSH” by “jeanp413” aka: @ext:jeanp413.open-remote-ssh
works just like the closed source one, at least for me.
I’m using the vscodium AUR package under manjaro. I got the extension from whatever store vscodium defaults to. I’m not sure if it is available in Microsoft’s store.
The extension didn’t work for me under Code - OSS (there was an apparent configuration error, and I didn’t bother tracking it down).
Just curious, since I cannot get it to connect to any hosts.
There's some visual stuff: The default views, font choices and colours are really nicely put together (and I've tried tweaking VSCode to match but I can't get it to look as nice). For example, when viewing a git diff, it displays sweeping curves, which move and bend as you scroll, connecting the changes on both sides.
There's some Panic stuff: I like the integration with Transmit (which I use all the time). And I used to use the "publish" function all the time (develop on macOS and push to a Linux box to run tests etc).
And there's the fact that it's a native Mac app - I'm an old-school Mac user and there's a definite difference in "feel" between Mac apps and others. I'm not a purist about it (I have tons of Electron stuff installed), but when I use a Mac app I notice it. Plus I often get VSCode randomly slowing down to a crawl causing lots of annoying type-ahead, which doesn't happen with Nova - which I guess is a combination of Electron, JS and extensions combining.
But Panic has a reputation for sweating the details and it shows throughout the UI. Plus I feel good supporting a tiny company working in a niche market.
But functionality-wise it falls way short of VSCode - especially with extensions and dev-containers. The way VSCode + Remote Docker Containers feels like you're developing locally when actually everything is happening in a container on a Linux box somewhere halfway across the world is quite amazing.
I would rather learn to use Vim, than adapt to Emacs. Vim at least doesn't pretend that it is a normal text editor.
[0] https://open-vsx.org/extension/xaberus/remote-oss
[1] https://github.com/CGamesPlay/dotfiles/blob/master/files/.lo...
The name is probably a world play similar to Chrome -> Chromium. A mini rant, if I may:
Microsoft's (and Google's, lol) practice of "open-sourcing" their products, but releasing a product which has "an added closed-source functionality" is dishonest at best and worthy of a giant lawsuit at worst.
Open sourced a product and released a different product that has built-in tracking, is a walled garden for extensions and who knows what else.
An elaborate fraud.
The producer gives you two options to aquire that chocolate.
First option is a pile of ingredients, a plain plastic wrapper and a recipe. You are obviously required to make the chocolate yourself, but what you get is the original chocolate as advocated by the company.
Second option is a finished product that has a pretty decorated package and tastes a bit different than original chocolate. You can't quite put your finger on why, but at least you don't have to make it yourself!
Maybe "fraud" is a bit too strong word. We could go with "consumer deceit" instead.
It would be a fraud if the label on the product you buy omitted some ingredients, but it's not the case here: Microsoft doesn't claim its binaries are the result of a vanilla make on their source!
For those who find the closed capabilities and extensions distasteful there is opportunity to make their own.
The point of this comment is that the telemetry is documented and able to be disabled.
This isn't fraud, this is literally MS going "here's the MIT licensed version, and here's our own variant of that, based on obeying that license." And then they go one step further and say "We're not going to tell you that only our product exists, we are explicitly telling you where to get the MIT licensed source code, which isn't even an MIT license requirement".
This is exactly what good open source practices look like.
> A Cuck License is a permissive software license that that does not enforce the freedom of derivative works. This means that anyone can take software licensed under a Cuck License and turn it into proprietary software, effectively cucking the original author.
> Examples of Cuck Licenses are the MIT license and BSD license.
> Cuck License consequences:
> There have been instances where developers's usage of Cuck Licenses has backfired. One notable example is Andrew Tanenbaum' MINIX, which got taken by Intel and turned into spyware called the Intel Management Engine. Tanenbaum went on to say:
> "Many people (including me) don't like the idea of an all-powerful management engine in there at all (since it is a possible security hole and a dangerous idea in the first place), but that is Intel's business decision and a separate issue from the code it runs. A company as big as Intel could obviously write its own OS if it had to."
> However, Tanenbaum maintains that he made the correct choice licensing MINIX under the 3-clause BSD License.
Even giving your code to the public domain is better than an MIT or BSD license; corporations will still be able to make it proprietary but at least it clears the air around the 'interesting question' of mixing MIT/BSD code into a copyleft project and distributing the whole lot under a copyleft license.
Maybe in the US, but much of the world doesn't recognise waving away all author rights voluntarily. The closest thing to worldwide public domain is probably the Creative Commons Zero licence.
I'm serious, how many German individuals do you think would refuse to install sqlite on their personal computer because they lack a technically valid license for it? A few such weirdos doubtlessly exist but you can safely ignore them.
SQLite has a good track record but I can imagine another strongly religious developer taking advantage of authorship rights to damage some small EU-based social organization they strongly disagreed with; just an example.
As for the weirdos, as I said SQLite has a good track record, but I'd think twice over a much smaller dependency. However, I've seen enough disregard for FOSS licenses in business to know the weirdos are few. I guess you either care about license minutae or you don't.
Basically: Microsoft is betting that people care more about free as in beer than exercising software freedom. So far, they seem to be correct.
What is the reason that Codium can't access the extensions? That's like Edge wouldn't be allowed to load extensions from the Chrome store.
What you're looking for is the "anti-features" distinctions, like the F-Droid store does it. E.g. "This app depends on other non-free apps." or "Promotes or depends entirely on a non-free network service."
Not quite. Try running Pylance on a build of your own.
The value of a lot of software comes from interoperability, not from the code itself.
For instance, try running AOSP and 100% open source system libraries on your android phone for a month. You will find that you cannot perform basic financial transactions, like paying for parking, or hailing an uber/lyft, fast-charge your car, attend concerts without paying an extra fee, etc, etc.
I don’t even want my phone to support any of the above crap, but I don’t get to dictate how the US economy is structured, so I have no choice but to need all that stuff to work.
What used to be useful extras are now considered essentials (see how many on this thread say they need the SSH, Docker or WSL extensions and can't use VSCodium).
Plus they're now moving Python, .NET and other specific extensions towards closed source. Yeah, you can use the open source versions, but they don't have mindshare any more so source code written with one might not navigate/display as well with the other.
Also, new features only land when MS has a closed source idea that can use it, and are locked to MS extensions only. Innovation for me, not for thee. (Copilot/Continue on Codespaces/Live Share/VS Code Web/...)
They are also adding Python support to Excel, which means that the layman now has a intuitive way to use a Python function to plot graphs inside their favorite workbook.
In other words, now you no longer need those extra machine learning Python devs, when Bob the accountant can plot fancy graphs for you.
Talk about extending an open source project just to incorporate it into the Borg that is closed-source Excel.
Google released Android open source, but then made unlocking bootloaders and flashing devices as difficult as possible for laymen. So they get to point at AOSP and say "open source" but in practice the vast majority of users end up running proprietary builds with big G's telemetry baked in
> in practice the vast majority of users end up running proprietary builds with big G's telemetry baked in
The vast majority of users are always going to do this, regardless of how easy it is to install a custom OS.
I'd rather work a week on VSCode for free than spending a day looking at Jetbrains' Java font rendering or waiting for Visual Studio to start.
Wow, that's a bold claim. Unless vscode and other products are improperly using GPL-licensed or not following license requirements otherwise -- which I am not aware of -- Microsoft is doing nothing wrong here, just like countless other commercial companies that release proprietary software based on open source projects.
I think they do it mostly to make it easier to build an ecosystem of developers. Plenty of companies do this (Adobe is another one). They release some basic part or engine of their product so developers can work with it without compromising their business.
Android is designed to fracture, Linux is designed to fracture, Clang is designed to fracture, Windows is designed to fracture.
Take GCC for example. It was philosophically designed to _not_ fracture due to how its plugin system was designed. As far as I know, there is no such limitations on emacs plugins. Plugins and their interface are what enables fracturing as this article defines it.
Summary: Microsoft releases Visual Studio Code with telemetry built in, so other projects (e.g. VSCodium) have spun up to release custom builds without telemetry. But these projects can't use the same marketplace because they are not licensed by Microsoft, hence the "fracture" in the title of this article. It goes on to say that other proprietary IDEs are also problematic, and GitHub is a trap to capture and fracture developers.
This drama with Microsoft and open source reminds me of the Halloween documents:
Um... OK?
I mean... Use it or don't. I'm not sure, "it's just too good not to use" is a legitimate complaint.
VSCodium – Free/Libre Open Source Software Binaries of VS Code - https://news.ycombinator.com/item?id=31604932 - June 2022 (430 comments)
VS Code without Microsoft branding/telemetry/licensing - https://news.ycombinator.com/item?id=23447413 - June 2020 (200 comments)
VSCodium – An Open Source Visual Studio Code Without Trackers - https://news.ycombinator.com/item?id=19650109 - April 2019 (253 comments)
VSCodium: 100% Open Source Version of vs. Code - https://news.ycombinator.com/item?id=19619956 - April 2019 (8 comments)
VSCodium: Binary releases of VSCode without MS branding, telemetry and licensing - https://news.ycombinator.com/item?id=17850960 - Aug 2018 (113 comments)
On top of that, they seem to have relented in the telemetry and it can be fully disabled now (though I haven't tested the truth of "off").
My VSCode is completely subsumed by the butt load of extensions that seems to be necessary to do work with Microchio/Atmel/zephyr.
And I use VSCodium for ansible/elixir work.
Doesn't VSCodium have something like browser profiles, where you can customize all kinds of things only in that profile? I use this in Firefox all the time, windows looks different etc.
It is the package the main repository exposes, for VSCodium or Visual Studio Code you need to use the AUR.
Will the plugins - some provided by MS - still work as expected or will those be blocked or hobbled?
Thanks!
Nope. Only some.
So to use an extension in VSCode, it has to be published in Microsoft's store? And VSCode only in this other store?
You can always download the extension (or build it yourself) and install it manually - using Code or Codium. You can use the Open VSX registry with Code, but you have to configure it: https://github.com/eclipse/openvsx/wiki/Using-Open-VSX-in-VS.... So it technically does not have to be in MS' Marketplace, but 99% of Code user will not find or know of your extension, if it isn't in the Marketplace.
https://github.com/python-lsp/python-lsp-server
Someone might come along and tell you that you are missing out on some pylance features, but fuck closed source dev tooling it ain't worth it.
The plugins won't work out of the gate, but you can installed them manually and most of them will work.
It's not a 1:1 replacement, and from my limited experience, the UX of VSCodium was worse than that of VSCode. But, if you value not being tied to MS... That's the price you're gonna pay.
There was a ticket somewhere in the issue tracker with more information about this topic.
Software is going to continue to play a bigger influence on everyones life. The majority of this software is going to be written by engineers of average intelligence. Having tools that are easier for everyone to use will make your life better down the line too.
Do you hand roll your own assembly? Do you import any libraries or write everything from scratch? Do you drive a manual or automatic?
The only truth in this world is that we all have a finite amount of time in it, and as an individual only you can decide on the allocation.
Also it's not the tool, it's what you do with it.
Le sigh, I guess some people want to be subject to the whims of Redmond for life.
Shouldn’t the be almost the same minus these small MS specific bits?
I think this would make me even more hesitant to use it if it introduces subtle changes / maybe bugs into the equation.
You can set the window Zoom Level to change all of the font sizes, including the menu, but afaik, there's no option for just the menu font size.
I guess if you want one size of menu font for VS Code, and a different size for everything else, then that’s a problem.
That seems like a pretty narrow corner case though.
Anything xamarin related (MAUI, VS for Mac) is extreme level of garbage - such low standard of quality is really doing .NET/Visual Studio brands a disservice.
Visual Studio Code is a completely different product (to be fair so is Visual Studio itself for that matter..)
Visual Studio Code, Visual Studio, Visual Basic .NET, Visual Basic Classic, VBScript.
Am I forgetting anything?
Their word processor is called Word. Their sql server is called Sql Server. Their IM is called MSN Messenger/Windows Live Messenger/Messenger/Skype/Lync/Skype For Business/Teams
Er...
https://github.com/VSCodium/vscodium/blob/master/DOCS.md#dis...
> Even though we do not pass the telemetry build flags (and go out of our way to cripple the baked-in telemetry), Microsoft will still track usage by default.
The only apparent practical reason for this to exist is to disable telemetry. But the telemetry built into VSCode can already be completely disabled by configuration. And if you don’t trust that configuration to do what it says on the tin you should also not trust a piece of software built from the same source.
Not that trust is bad or anything. I remember hearing from someone that it used to be safe to keep house doors open, because people trusted each other, and that it's safe for a 6 year old girl to travel by train alone in some places. Can't help but feel we have lost something.
Same old MS as ever. Only trust what you can verify with that lot.
It's like a "quantum plasma" of razors but for "hackers" of hacker news