VSCodium - VSCode का ओपन सोर्स बाइनरी
(vscodium.com)- VS Code के source और official distribution की शर्तें अलग हैं, इसलिए जो उपयोगकर्ता सीधे MIT लाइसेंस बाइनरी पाना चाहते हैं, उनके लिए VSCodium एक विकल्प है
- Microsoft का
vscodesource code MIT लाइसेंस के तहत है, लेकिन डाउनलोड के लिए उपलब्ध Visual Studio Code प्रोडक्ट अलग लाइसेंस और telemetry/tracking शामिल करता है - VSCodium, Microsoft के
vscoderepository को build करके तैयार हुए binaries को GitHub releases पर अपलोड करने वाली automated scripts के जरिए distribution process को संभालता है - उपलब्ध binaries में telemetry disabled है, और Windows, Mac OS, Linux के लिए latest release प्राप्त की जा सकती है
- Homebrew, WinGet, Chocolatey, Scoop, Snap, Nixpkgs, AUR, deb/rpm repositories, Flatpak जैसे कई package managers के जरिए install किया जा सकता है
VS Code source और Microsoft distribution के बीच अंतर
- VSCodium Microsoft के VS Code पर आधारित एक free/open source binary distribution है
- Microsoft का
vscodesource code MIT लाइसेंस के तहत है, लेकिन Microsoft द्वारा वितरित Visual Studio Code प्रोडक्ट non-FLOSS लाइसेंस का उपयोग करता है और telemetry/tracking शामिल करता है - Microsoft distribution build,
vscoderepository को clone करने के बाद Microsoft-specific features वालेproduct.jsonको apply करके बनाया जाता है- इन Microsoft-specific features में telemetry, gallery, logo आदि शामिल हैं
- यदि default
product.jsonके साथ सीधे build किया जाए, तो Microsoft customization के बिना एक “clean” build बनता है, और उस पर डिफॉल्ट रूप से MIT लाइसेंस लागू होता है
VSCodium की build और distribution पद्धति
- VSCodium उपयोगकर्ताओं को source सीधे डाउनलोड करके build किए बिना MIT लाइसेंस build प्राप्त करने देता है
- Build scripts, Microsoft के
vscoderepository को clone करती हैं, build command चलाती हैं, और result binaries को GitHub releases पर upload करती हैं - VSCodium binaries MIT लाइसेंस के तहत हैं और telemetry disabled है
- जो उपयोगकर्ता खुद build करना चाहते हैं, वे Microsoft के
vscoderepository और build instructions का उपयोग कर सकते हैं - Latest release Windows, Mac OS, Linux के लिए उपलब्ध हैं
package manager के अनुसार installation
- Mac पर Homebrew इस्तेमाल करने की स्थिति में:
brew install --cask vscodium - Windows में कई package managers का उपयोग किया जा सकता है
- WinGet
winget install vscodium - Chocolatey
choco install vscodium - Scoop
scoop bucket add extras scoop install vscodium
- WinGet
- Linux में Snap, Nixpkgs, AUR, Flatpak आदि के जरिए install किया जा सकता है
- Snap Store में यह Codium नाम से उपलब्ध है
snap install codium --classic - Nix(OS) में
vscodiumकोenvironment.systemPackagesमें जोड़कर या local install किया जा सकता हैnix-env -iA nixpkgs.vscodium - Arch Linux में AUR के
vscodium-binpackage को AUR Helper से install किया जा सकता हैyay -S vscodium-bin
- Snap Store में यह Codium नाम से उपलब्ध है
distribution/repository आधारित installation
- Parrot OS में VSCodium पहले से installed आता है
- यदि डिफॉल्ट रूप से दिखाई न दे, तो official Parrot repository से install किया जा सकता है
sudo apt update && sudo apt install codium
- यदि डिफॉल्ट रूप से दिखाई न दे, तो official Parrot repository से install किया जा सकता है
- Debian/Ubuntu के लिए deb package, VSCodium-संबंधित repository और CDN mirror के जरिए install किया जाता है
- Repository GPG key जोड़ने के बाद Debian/Ubuntu version के अनुसार repository setting जोड़ी जाती है
- Installation command इस प्रकार है
sudo apt update && sudo apt install codium - यदि
vscodium-insidersचाहिए, तोcodiumकोcodium-insidersसे बदलें
- Fedora/RHEL/CentOS/Rocky Linux/OpenSUSE के लिए rpm package भी अलग repository जोड़कर install किया जाता है
- Fedora/RHEL/CentOS/Rocky Linux:
sudo dnf install codium - OpenSUSE/SUSE:
sudo zypper in codium
- Fedora/RHEL/CentOS/Rocky Linux:
- Gentoo/Funtoo में ebuild के जरिए install किया जाता है
- Funtoo:
sudo emerge -av vscodium-bin - Gentoo:
sudo emerge -av vscodium
- Funtoo:
Flatpak और migration दस्तावेज़
- VSCodium एक Flatpak app के रूप में भी उपलब्ध है, और इसका build repository flathub/com.vscodium.codium है
- Flathub repository enabled environment में इसे निम्न command से install किया जा सकता है
flatpak install flathub com.vscodium.codium - यदि
gnome-software-plugin-flatpakinstalled है, तो GNOME Software में भी VSCodium खोजा जा सकता है - Visual Studio Code से VSCodium पर migration करने या उपयोग के दौरान मिलने वाली विशेष बातों को documentation में संकलित किया गया है
1 टिप्पणियां
Hacker News की राय
ऐसे प्रोजेक्ट द्वारा बनाए गए binaries पर Big Tech द्वारा दिए गए binaries की तुलना में भरोसा करना ज़्यादा मुश्किल लगता है। Big Tech सबसे बड़े trackers तो हैं ही, लेकिन जिन प्रोजेक्ट्स में लोग और हितधारक बहुत कम होते हैं, वे supply chain attack या किसी developer के प्रोजेक्ट बेच देने पर hostile takeover के प्रति ज़्यादा कमजोर हो सकते हैं
मैं इस क्षेत्र को बहुत अच्छी तरह नहीं जानता, इसलिए अच्छा होगा अगर ऐसे प्रोजेक्ट्स इन जोखिमों से कैसे बचते हैं, इस पर कोई reference material मिल जाए; और शायद ऐसी चिंता वाजिब भी हो सकती है
बड़ी कंपनियां अपने build किए गए software की chain of trust सुनिश्चित करने के लिए बहुत ज्यादा मेहनत करती हैं, और app distribution platforms भी developer से लेकर user के device पर चलने वाले app तक end-to-end chain of trust सुरक्षित करने के लिए काफी प्रयास करते हैं
मूल author ही नहीं, redistributor पर भी भरोसा किए बिना यह मूल रूप से संभव नहीं है, लेकिन verifiable build procedure, signing keys और hash verification, re-signing जैसी विधियां आवश्यक trust की मात्रा को कम करती हैं। अगर user सैद्धांतिक रूप से वही build खुद reproduce कर सके, तो उस पर भरोसा करना आसान हो जाता है
सबसे अच्छा विकल्प यह होगा कि original project खुद unbranded builds उपलब्ध कराए, और VSCodium जैसे प्रोजेक्ट केवल telemetry disable करने जैसी settings-only चीज़ बन जाएं, ताकि re-signing की जरूरत न पड़े। उदाहरण के लिए Chromium project Google-specific हिस्सों के बिना Chromium binaries सीधे distribute करता है
मेरे दिमाग में मुख्यतः app stores थे, लेकिन लगभग यही तर्क Debian package repositories जैसी जगहों पर भी लागू होता है। App stores आमतौर पर बीच में re-sign करते हैं, इसलिए store पर भरोसा करना पड़ता है, लेकिन ऐसी कंपनियां उस बिंदु की विश्वसनीयता सुनिश्चित करने के लिए बहुत मेहनत करती हैं
अगर वह अंतर सुरक्षित लगता है, तो इसका मतलब काफी हद तक यह है कि binary पर भी भरोसा किया जा सकता है। बेशक यह भी जांचना होगा कि कहीं ऐसे internet resources तो नहीं लिए जा रहे जिनकी integrity उसी तरह guarantee नहीं की जा सकती
package ने जिस source code का उपयोग किया और जिस upstream Microsoft git SHA पर आधारित होने का दावा किया, उनकी तुलना की जा सकती है: https://aur.archlinux.org/packages/vscodium
संयोग से अब open source remote mode extension भी है, इसलिए proprietary version इस्तेमाल करने की वजह नहीं रही। मेरी तरफ अब telemetry बिल्कुल नहीं है
मुझे बिल्कुल भरोसा नहीं है कि बड़ी कंपनियां चीज़ें सही करेंगी और telemetry के नाम पर applications को spyware से नहीं भरेंगी। मैं तो उन लोगों पर भरोसा करूंगा जो free और open source software बनाने के लिए लगातार जिद करके लगे रहते हैं
Go ने latest SDK में जैसा किया, वैसे reproducible builds यहां मददगार हो सकते हैं: https://go.dev/blog/rebuild
अगर fork में source changes कम हों, तो यह खास तौर पर और प्रभावी है, क्योंकि केवल patches verify करने पड़ते हैं
Linux distributions भी काफी मिलती-जुलती हैं। Debian packages पर आमतौर पर भरोसा करने की वजह यह है कि उसके पीछे umbrella organization और procedures हैं। स्वतंत्र organizations में यह कम होता है
किसी दिन शायद सिर्फ reproducible builds संभालने वाली कोई umbrella organization बने, और लोग उसके जरिए binaries distribute कर सकें। domain registrars की तरह independent verification उस organization को ईमानदार बनाए रख सकता है
Microsoft ने प्रमुख extensions को सिर्फ official release में इस्तेमाल करने तक सीमित कर दिया, जिससे इस दिशा की competition ही खत्म हो गई। निजी तौर पर मैं remote extensions काफी इस्तेमाल करता हूँ, अच्छा हो अगर कोई alternative दे दे
“jeanp413” का “Open Remote - SSH”, यानी
@ext:jeanp413.open-remote-ssh, कम से कम मेरे लिए closed-source extension जैसा ही काम करता हैमैं Manjaro पर vscodium AUR package इस्तेमाल कर रहा हूँ, और extension vscodium के default store से लिया था। Microsoft store में है या नहीं, नहीं पता
Code - OSSमें वह extension मेरे लिए काम नहीं कर रहा था; setting error जैसा लगा और मैंने आगे trace नहीं कियाइसलिए अगर codium marketplace में कोई ज़रूरी extension नहीं है, तो Microsoft marketplace के ज़रिए अभी भी उसे इस्तेमाल किया जा सकता है
tunnel install और setup को automatic करने के लिए यहाँ वाली script जैसी चीज़ इस्तेमाल कर सकते हैं: https://github.com/CGamesPlay/dotfiles/blob/master/files/.lo...
custom script को auto-run करके tunnel set up करने का तरीका जोड़ने वाले PR पर भी काम चल रहा है: https://github.com/xaberus/vscode-remote-oss/pull/9
Remote OSS: https://open-vsx.org/extension/xaberus/remote-oss
यह मूल रूप से वही है जो Visual Studio Code का source code download करके build करने पर मिलता है
नाम भी Chrome → Chromium जैसी wordplay के करीब लगता है
Microsoft और Google का अपने products को “open source” करने का चलन, जबकि असल में वे अतिरिक्त closed-source features वाले products release करते हैं, अच्छे से अच्छे रूप में बेईमानी है और बुरे रूप में तो बड़ा lawsuit material है
ये बड़ी कंपनियाँ open source products पर अपना समय donate करने वाले भोले software engineers के काम से फायदा उठाती हैं, लेकिन end users तक closed-source version पहुँचाती हैं
यह उन असंख्य commercial companies जैसा ही मामला है जो open source projects पर आधारित proprietary software release करती हैं
ज़रूरत F-Droid store जैसी anti-feature category की है। जैसे “यह app दूसरे non-free apps पर निर्भर है” या “non-free network services पर निर्भर है या उन्हें बढ़ावा देता है” जैसी marking
Vscode को fracture induce करने के लिए design किया गया है: https://ghuntley.com/fracture/
सार यह है कि Microsoft ने built-in telemetry वाला Visual Studio Code release किया, इसलिए VSCodium जैसे projects ने telemetry-free custom builds निकालने शुरू किए। लेकिन इन projects को Microsoft license नहीं मिला, इसलिए वे वही marketplace इस्तेमाल नहीं कर सकते, और यही article title वाला fracture है
आगे यह कहता है कि दूसरे proprietary IDEs में भी समस्याएँ हैं, और GitHub developers को capture और fracture करने वाला trap है
Microsoft और open source के इर्द-गिर्द यह drama Halloween documents की याद दिलाता है: http://www.catb.org/~esr/halloween/
हम्म… तो? इस्तेमाल करो या मत करो। “इतना अच्छा है कि इस्तेमाल किए बिना नहीं रह सकते” कोई legitimate complaint है या नहीं, यह मुझे साफ नहीं लगता
कल open source build से स्विच करना पड़ा। अपडेट के बाद Pylance DRM की वजह से काम करना बंद कर चुका लगता था
हर बार शुरू करने पर यह बड़ा warning दिखाता था कि MS द्वारा मंज़ूर न किए गए build में इसका इस्तेमाल license violation है, और फिर तुरंत रुक जाता था
यह pyright का free और open source version है, लेकिन कुछ features गायब हैं
संबंधित लेख
VSCodium – VS Code के Free/Libre Open Source Software Binaries - https://news.ycombinator.com/item?id=31604932 - जून 2022, 430 comments
Microsoft branding/telemetry/licensing के बिना VS Code - https://news.ycombinator.com/item?id=23447413 - जून 2020, 200 comments
VSCodium – Trackers के बिना एक Open Source Visual Studio Code - https://news.ycombinator.com/item?id=19650109 - अप्रैल 2019, 253 comments
VSCodium: vs. Code का 100% Open Source Version - https://news.ycombinator.com/item?id=19619956 - अप्रैल 2019, 8 comments
VSCodium: MS branding, telemetry और licensing के बिना VSCode के binary releases - https://news.ycombinator.com/item?id=17850960 - अगस्त 2018, 113 comments
लंबे समय तक इसे इस्तेमाल किया और team को भी इस्तेमाल करने को कहा, लेकिन आखिरकार छोड़ दिया। Remote SSH और devcontainers features के बिना, VSCode का पूरा फायदा उठाने वाली दिशा में Microsoft की पकड़ काफ़ी मजबूत है
ऊपर से लगता है कि Microsoft telemetry पर पीछे हटा है, और अब कहा जाता है कि इसे पूरी तरह disable किया जा सकता है। हालांकि “off” सच में off है या नहीं, मैंने खुद test नहीं किया
साथ ही Remote OSS इस्तेमाल करें तो dev container के अंदर vscodium remote host इस्तेमाल किया जा सकता है। details मैंने इस comment में लिखी हैं: https://news.ycombinator.com/item?id=37386025
VSCode और VSCodium दोनों इस्तेमाल करता हूं। वजह simple और practical है: settings management और अलग-अलग पहचानी जा सकने वाली कई windows
मेरा VSCode Microchip/Atmel/zephyr काम के लिए ज़रूरी लगने वाले extensions के ढेर से पूरी तरह भर चुका है
ansible/elixir काम के लिए VSCodium इस्तेमाल करता हूं
क्या VSCodium में browser profiles जैसा कोई feature नहीं है, जहां उसी profile के अंदर तरह-तरह की settings बदली जा सकें? Firefox में मैं अक्सर ऐसा करता हूं, और windows का look भी अलग रखता हूं
उम्मीद है इसे maintain करते रहेंगे। हमारे startup का extension Open VSX Registry पर है, और इस तरह operate करने से हम काफ़ी संतुष्ट हैं
Arch में बराबर का दिखने वाला package बस
codeनाम से हैcodebinary का नाम है, और “project” खुद https://wiki.archlinux.org/title/Visual_Studio_Code में लिखे अनुसारCode - OSSहैmain repository द्वारा दिया जाने वाला package वही है, और VSCodium या Visual Studio Code इस्तेमाल करना हो तो AUR इस्तेमाल करना पड़ता है