2 puan yazan GN⁺ 2023-09-05 | 1 yorum | WhatsApp'ta paylaş
  • VS Code'un kaynak kodu ile resmî dağıtımı farklı koşullara sahip olduğundan, MIT lisanslı ikili dosyayı doğrudan edinmek isteyen kullanıcılar için VSCodium bir alternatif olur
  • Microsoft'un vscode kaynak kodu MIT lisanslıdır, ancak indirilebilir Visual Studio Code ürünü ayrı bir lisans ile telemetri/izleme içerir
  • VSCodium, Microsoft'un vscode deposunu derleyip ortaya çıkan ikili dosyaları GitHub releases üzerine yükleyen otomasyon betikleriyle dağıtım sürecinin yerini alır
  • Sunulan ikili dosyalarda telemetri devre dışıdır ve Windows, Mac OS, Linux için en güncel sürümler alınabilir
  • Homebrew, WinGet, Chocolatey, Scoop, Snap, Nixpkgs, AUR, deb/rpm depoları, Flatpak gibi çeşitli paket yöneticileri ile kurulabilir

VS Code kaynak kodu ile Microsoft dağıtımı arasındaki fark

  • VSCodium, Microsoft'un VS Code'unu temel alan özgür/açık kaynak bir ikili dağıtımdır
  • Microsoft'un vscode kaynak kodu MIT lisanslıdır, ancak Microsoft'un dağıttığı Visual Studio Code ürünü FLOSS olmayan bir lisans kullanır ve telemetri/izleme içerir
  • Microsoft dağıtım derlemesi, vscode deposu klonlandıktan sonra Microsoft'a özgü özelliklerin bulunduğu product.json uygulanarak oluşturulur
    • Bu Microsoft'a özgü özellikler arasında telemetry, gallery, logo vb. bulunur
    • Varsayılan product.json ile doğrudan derleme yapılırsa Microsoft özelleştirmeleri olmayan “clean” bir derleme oluşur ve varsayılan olarak MIT lisansı uygulanır

VSCodium'un derleme ve dağıtım şekli

  • VSCodium, kullanıcıların kaynak kodunu doğrudan indirip derlemek zorunda kalmadan MIT lisanslı derlemeleri alabilmesini sağlar
  • Derleme betikleri, Microsoft'un vscode deposunu klonlar, derleme komutlarını çalıştırır ve ortaya çıkan ikili dosyaları GitHub releases sayfasına yükler
  • VSCodium ikili dosyaları MIT lisanslıdır ve telemetri devre dışıdır
  • Kendisi derlemek isteyen kullanıcılar Microsoft'un vscode deposunu ve derleme yönergelerini kullanabilir
  • En güncel sürümler Windows, Mac OS ve Linux için sunulur

Paket yöneticilerine göre kurulum

  • Mac'te Homebrew kullanılıyorsa:
    brew install --cask vscodium
    
  • Windows'ta birden fazla paket yöneticisi kullanılabilir
    • WinGet
      winget install vscodium
      
    • Chocolatey
      choco install vscodium
      
    • Scoop
      scoop bucket add extras
      scoop install vscodium
      
  • Linux'ta Snap, Nixpkgs, AUR, Flatpak vb. ile kurulabilir
    • Snap Store'da Codium adıyla sunulur
      snap install codium --classic
      
    • Nix(OS)'ta vscodium, environment.systemPackages içine eklenebilir veya yerel olarak kurulabilir
      nix-env -iA nixpkgs.vscodium
      
    • Arch Linux'ta AUR'daki vscodium-bin paketi bir AUR Helper ile kurulabilir
      yay -S vscodium-bin
      

Dağıtım/depo tabanlı kurulum

  • Parrot OS'ta VSCodium öntanımlı olarak kurulu gelir
    • Varsayılan olarak görünmüyorsa resmî Parrot deposundan kurulabilir
      sudo apt update && sudo apt install codium
      
  • Debian/Ubuntu için deb paketleri, VSCodium ile ilgili depo ve CDN aynaları üzerinden kurulur
    • Depo GPG anahtarı eklendikten sonra Debian/Ubuntu sürümüne uygun depo ayarı eklenir
    • Kurulum komutu şöyledir
      sudo apt update && sudo apt install codium
      
    • vscodium-insiders isteniyorsa codium, codium-insiders ile değiştirilir
  • Fedora/RHEL/CentOS/Rocky Linux/OpenSUSE için rpm paketleri de ayrı depolar eklenerek kurulur
    • Fedora/RHEL/CentOS/Rocky Linux:
      sudo dnf install codium
      
    • OpenSUSE/SUSE:
      sudo zypper in codium
      
  • Gentoo/Funtoo'da ebuild ile kurulur
    • Funtoo:
      sudo emerge -av vscodium-bin
      
    • Gentoo:
      sudo emerge -av vscodium
      

Flatpak ve geçiş belgeleri

  • VSCodium, Flatpak uygulaması olarak da sunulur; derleme deposu flathub/com.vscodium.codium adresindedir
  • Flathub deposunun etkin olduğu ortamlarda şu komutla kurulabilir
    flatpak install flathub com.vscodium.codium
    
  • gnome-software-plugin-flatpak kuruluysa GNOME Software içinde de VSCodium bulunabilir
  • Visual Studio Code'dan VSCodium'a geçiş yaparken veya kullanım sırasında karşılaşılabilecek özel durumlar belgede derlenmiştir

1 yorum

 
GN⁺ 2023-09-05
Hacker News yorumları
  • Böyle projelerin ürettiği binary’lere güvenmek, Big Tech’in sunduğu binary’lere güvenmekten daha zor geliyor. Big Tech en büyük izleyiciler olsa da, çok daha az insan kaynağına ve çıkar ilişkisine sahip projeler tedarik zinciri saldırılarına ya da geliştiricinin projeyi satması durumunda düşmanca devralmalara daha açık olabilir gibi görünüyor.
    Bu alanı çok iyi bilmiyorum; bu tür projelerin bu risklerden nasıl kaçındığına dair başvurulabilecek kaynaklar olsa iyi olurdu. Belki de bu endişeler gerçekten geçerlidir.

    • Bu endişe gayet geçerli. Bu projeyi özel olarak değerlendirmeye çalışmıyorum ama orijinali alıp değiştirerek yeniden dağıtma sürecini güvenilir kılmak zordur.
      Büyük şirketler, derledikleri yazılımların güven zincirini garanti altına almak için aşırı çaba harcar; uygulama dağıtım platformları da geliştiriciden kullanıcının cihazında çalışan uygulamaya kadar uçtan uca bir güven zinciri sağlamak için çok uğraşır.
      Yalnızca asıl geliştiriciye değil, yeniden dağıtıcıya da güvenmeden bu temelde mümkün değildir; ancak doğrulanabilir derleme prosedürleri, imzalama anahtarları ve hash doğrulaması, yeniden imzalama gibi yöntemler gereken güven miktarını azaltır. Kullanıcı teoride aynı derlemeyi kendi başına yeniden üretebiliyorsa buna inanmak daha kolay olur.
      En iyi seçenek, asıl projenin markasız derlemeleri doğrudan sunması; VSCodium gibi projelerin de yalnızca telemetriyi devre dışı bırakma gibi sadece ayar düzeyinde kalması ve yeniden imzalamaya gerek olmamasıdır. Örneğin Chromium projesi, Google’a özgü unsurların çıkarıldığı Chromium binary’lerini doğrudan dağıtır.
      Aklıma daha çok uygulama mağazaları gelmişti ama Debian paket depoları gibi yerler için de neredeyse aynı mantık geçerlidir. Uygulama mağazaları genelde arada yeniden imzalama yaptığı için mağazaya güvenmek gerekir; ancak bu şirketler o noktadaki güvenilirliği sağlamak için çok çaba harcar.
    • Teorik olarak böyle bir proje GitHub Actions üzerinde derleniyor ve Microsoft’un güvenliğine güveniliyorsa, action’dan alınan commit hash’i kontrol edilip upstream ile farkı karşılaştırılabilir.
      Bu fark güvenli görünüyorsa, binary’ye de güvenilebileceği anlamına oldukça yaklaşır. Elbette bütünlüğü aynı şekilde garanti edilemeyen internet kaynaklarının da çekilmediğini kontrol etmek gerekir.
    • Manjaro makinemde az önce vscodium kurdum; AUR kaynağından derlendi.
      Paketin kullandığı kaynak kodu ile temel aldığını iddia ettiği upstream Microsoft git SHA’sını karşılaştırmak mümkün olmalı: https://aur.archlinux.org/packages/vscodium
      Üstelik artık açık kaynak bir uzak mod eklentisi de var, bu yüzden tescilli sürümü kullanmak için bir neden kalmadı. Benim tarafta artık telemetri yok.
    • Mevcut teknoloji sektörünün halini gördükten ve içinde çalıştıktan sonra bende tam tersi bir kanaat oluştu.
      Büyük şirketlerin bir şeyi doğru yapacağına ve telemetri adı altında uygulamaları casus yazılımla doldurmayacağına hiç güvenmiyorum. Bunun yerine, özgür ve açık kaynak yazılım üretmeye inatla uğraşan insanlara güvenmeyi tercih ederim.
    • Ben de şu anda asıl geliştirici şirkete daha çok güveniyorum. Daha fazla seçeneğimiz olsa iyi olurdu.
      Go’nun en yeni SDK’da yaptığı gibi yeniden üretilebilir derlemeler burada yardımcı olabilir: https://go.dev/blog/rebuild
      Kaynak değişikliği az olan bir fork ise, yalnızca patch’i doğrulamak yeterli olacağından özellikle daha etkili olur.
      Linux dağıtımları da buna oldukça benzer. Debian paketlerine genel olarak güvenmemizin nedeni bir şemsiye organizasyon ve süreçlerin olmasıdır. Bağımsız organizasyonlarda bu daha azdır.
      Bir gün yalnızca yeniden üretilebilir derlemelerle ilgilenen bir şemsiye organizasyon ortaya çıkabilir ve insanlar binary’leri onun üzerinden dağıtabilir. Alan adı kayıt kuruluşlarında olduğu gibi bağımsız doğrulama, o organizasyonu dürüst tutabilir.
  • Microsoft, önemli uzantıların yalnızca resmi sürümde kullanılmasına izin vererek bu yöndeki rekabeti ortadan kaldırdı. Kişisel olarak uzak uzantıları epey yoğun kullanıyorum; keşke biri bir alternatif sunsa

  • Bu, temelde Visual Studio Code’un kaynak kodunu indirip derlediğinizde elde edeceğiniz şeyle aynı
    İsmi de Chrome → Chromium gibi bir kelime oyununa yakın görünüyor
    Microsoft ve Google’ın ürünlerini “açık kaynak yapıyoruz” deyip, gerçekte ek kapalı kaynak özellikler içeren ürünler yayımlama pratiği, iyi tarafından bakarsanız dürüst değil; kötü tarafından bakarsanız devasa bir dava konusu

    • %100 doğru. Bu akımı Google ve Apple başlattı, MS tamamladı. “Açık kaynak” ürün yaptıklarını söylüyorlar ama gerçekte kapalı kaynak sürüm çıkarıyorlar
      Bu dev şirketler, açık kaynak ürüne zamanını bağışlayan saf yazılım mühendislerinin emeğinden faydalanıyor; fakat son kullanıcıya ulaştırdıkları şey kapalı kaynak sürüm
    • Neyin dürüst olmadığını ve ne için dava açılacağını anlamıyorum. “Ürünü açık kaynak olarak yayımladılar ve ücretsiz dağıttılar ama benim istediğim gibi değil” gerekçesiyle dava açmak zor görünüyor
    • “Devasa bir dava konusu” oldukça iddialı bir ifade. vscode ya da başka bir ürün GPL lisanslı kodu uygunsuz kullanmıyor veya lisans şartlarına uymamazlık etmiyorsa, en azından bildiğim kadarıyla Microsoft’un yanlış yaptığı bir şey yok
      Açık kaynak bir projeyi temel alıp tescilli yazılım yayımlayan sayısız ticari şirketle aynı durum
    • Bu, açık enshittification modeli
    • Burada “açık kaynak” ifadesinin oldukça adil kullanıldığını düşünüyorum. Başkaları kaynak kodu alıp, telemetri gibi şeyler dışında neredeyse aynı derlemeyi yasal olarak dağıtabiliyor
      Gerekli olan şey, F-Droid mağazasındaki gibi anti-özellik ayrımına daha yakın bir şey. Örneğin “bu uygulama başka özgür olmayan uygulamalara bağımlıdır” ya da “özgür olmayan ağ servislerine bağımlıdır veya onları teşvik eder” gibi bir işaret
  • Vscode, bölünmeyi teşvik edecek şekilde tasarlanmış: https://ghuntley.com/fracture/

    • 2022’de zaten tartışılmıştı: https://news.ycombinator.com/item?id=32657709
      Özetle Microsoft, içinde telemetri bulunan Visual Studio Code’u yayımladı; bu yüzden VSCodium gibi projeler telemetrisiz özel derlemeler çıkarmaya başladı. Ancak bu projeler Microsoft lisansına sahip olmadığı için aynı marketplace’i kullanamıyor; yazı başlığındaki bölünme de bu
      Ardından başka tescilli IDE’lerde de sorunlar olduğunu ve GitHub’ın geliştiricileri yakalayıp bölen bir tuzak olduğunu söylüyor
      Microsoft ve açık kaynak etrafındaki bu drama Halloween belgelerini hatırlatıyor: http://www.catb.org/~esr/halloween/
    • O yazının sonunda vardığı ana nokta, Microsoft’un en iyi IDE’yi ve en iyi uzantıları yaptığı; bu yüzden Microsoft kullanmamanın zorlaştığı. Bunun birçok kötü sonucu var
      Hmm… Öyle mi? Kullanırsın ya da kullanmazsın. “Kullanılmayacak kadar iyi” olmasının meşru bir şikâyet olup olmadığından pek emin değilim
    • Bu tanıma göre, genişletilebilirlik sunan ya da uzantılara izin veren ürünler arasında bölünmeyi teşvik edecek şekilde tasarlanmamış bir şey düşünmek gerçekten zor
  • Dün açık kaynak derlemeden geçiş yapmak zorunda kaldım. Güncellemeden sonra Pylance, DRM yüzünden çalışmayı bırakmış gibi görünüyordu
    Her başlatmada, MS’in onaylamadığı bir derlemede kullanmanın lisans ihlali olduğuna dair büyük bir uyarı gösterip hemen duruyordu

    • Bunun yerine pyright kullanılabilir: https://github.com/microsoft/pyright
      pyright’ın özgür ve açık kaynak sürümü ama bazı özellikleri eksik
    • Bu, Pylance kullanmamak için bir neden gibi geliyor
  • İlgili yazılar
    VSCodium – VS Code’un Özgür/Libre Açık Kaynak Yazılım İkili Dosyaları - https://news.ycombinator.com/item?id=31604932 - Haziran 2022, 430 yorum
    Microsoft markalaması/telemetrisi/lisanslaması olmadan VS Code - https://news.ycombinator.com/item?id=23447413 - Haziran 2020, 200 yorum
    VSCodium – İzleyiciler Olmadan Açık Kaynak Visual Studio Code - https://news.ycombinator.com/item?id=19650109 - Nisan 2019, 253 yorum
    VSCodium: VS Code’un %100 Açık Kaynak Sürümü - https://news.ycombinator.com/item?id=19619956 - Nisan 2019, 8 yorum
    VSCodium: MS markalaması, telemetri ve lisanslama olmadan VSCode ikili sürümleri - https://news.ycombinator.com/item?id=17850960 - Ağustos 2018, 113 yorum

  • Bunu uzun süre kullandım ve ekibe de kullanmalarını söyledim ama sonunda vazgeçtim. Remote SSH ve devcontainers özellikleri olmadan, VSCode’dan en iyi şekilde yararlanma tarafında Microsoft’un güçlü bir kilidi var
    Ayrıca Microsoft telemetri konusunda geri adım atmış gibi görünüyor ve artık tamamen devre dışı bırakılabildiği söyleniyor. Yine de “kapalı” olmasının gerçekten öyle olup olmadığını kendim test etmedim

    • Resmî devcontainer eklentisi, temel işlerin çoğunu açık kaynak devcontainer CLI ile yaptığı için herhangi bir IDE dışında da kullanılabilir
      Üstelik Remote OSS kullanırsanız dev container içinde vscodium uzak ana makinesini kullanabilirsiniz. Ayrıntıları bu yorumda yazmıştım: https://news.ycombinator.com/item?id=37386025
  • Hem VSCode hem VSCodium kullanıyorum. Nedeni basit ve pratik: ayar yönetimi ve birbirinden ayırt edilebilen birden fazla pencere
    Benim VSCode’um, Microchip/Atmel/zephyr işleri için gerekli görünen devasa miktarda eklenti tarafından tamamen ele geçirilmiş durumda
    ansible/elixir işleri için VSCodium kullanıyorum

    • İki ayrı ortamı sürdürmek için epey karmaşık bir yol izliyor gibisin
      VSCodium’da tarayıcı profilleri gibi, yalnızca o profil içinde her türlü ayarı değiştirebildiğin bir özellik yok mu? Firefox’ta bunu sık sık böyle kullanıyorum, pencere görünümünü de farklı yapıyorum
  • Bunun sürdürülmeye devam etmesini isterim. Startup’ımızın eklentisi Open VSX Registry’de yer alıyor ve bu şekilde işletmekten oldukça memnunuz

  • Arch’ta eşdeğer paket gibi görünen şey doğrudan code adıyla var