Snap ve flatpak kullanmak mantıklı mı?

Bloat'tan kastının ne olduğuna göre değişir. Safi kullandığı alan ise haklısın. Onun dışında aksine sistemi çöplüğe çevirmemeye yarayan yapıları var.
Ben kullanmıyorum, sistemim çöplük gibi de değil aslında.

Bloattan kastım 2.5MB lık paket uğruna sisteme 600MB dosya indirmemek denebilir.
 
Ben bildiğim kadarıyla yanıtlayım, kullanım durumuna göre değişir. Eğer hız ve sistem optimize olmasıysa kastın, sıfırdan derlemek en iyisi, sonrası dpkg (debian türevleri için), sonrası appimage-flatpak-snap olarak geliyor. Güzel özellikleri var. Şu şekilde:
  • AppArmour: Bu özellik benim en sevdiğim. İndirdiğin program komple bir image halinde geliyor. Bu şu demek: herhangi bir conflict (çakışma), dependency(çalışması için gerekli kütüphane/programların) eksikliği gibi sorunlar yaşanmıyor. Aynı zamanda image yapısı benimsendiği için yazılım kötü niyetliyse sisteme herhangi bir zararı olmuyor. Programı kaldırdığında herhangi bir residual (kalıntı) bırakmıyor. Yani uzun lafın kısası, sistemle bir eyvallahı olmuyor, olduğu gibi geliyor ve gidiyor.
  • Cross-distribution: Paket yöneticisinin ne olduğu önemli olmuyor. Böylelikle yeni çıkan linux dağıtımlarının da önünü açmaya yarıyor. Aynı zamanda yayıncı için muazzam bir kolaylık sağlıyor.
  • Yönetim/Güncelleme kolaylığı: Bu bir önceki ile biraz bağlantılı. Geliştiriciler son sürümlerini debian main repolarına koymakta zorluk çekiyorlar ve bundan dolayı debian repoları geriden geliyor. Bazen bu durumlarda derlemek de sistemde istenmeyen kalıntılar bırakabiliyor. Snap ve flatpak bu konuda çok daha büyük kolaylıklar sağlıyor ve son sürümler daha rahat bulunabiliyor.
Eksiler:
  • Yavaşlık: İmage yapısından dolayı bir miktar yavaş. (Ben bu yavaşlığı açılışta görüyorum daha çok)
  • Temalama: Tema olayları için ekstradan uğraş gerekebiliyor.
  • Kişiye özel modifikasyon: Bazı uygulamalarda kişi kendi modifikasyonlarını yapmak isteyebilir. AppArmour özelliği bu konuda sıkıntı çıkaracaktır.
  • Kaplanan alan: Image mantığı olduğu için komple bir paket olarak geliyor. Bu da paket yöneticilerinin sık kullandığı dependency re-use (temel paketleri yeniden kullanma) olayına ters.
Ben kullanmıyorum, sistemim çöplük gibi de değil aslında.

Bloattan kastım 2.5MB lık paket uğruna sisteme 600MB dosya indirmemek denebilir.

Sistemi bol dependencyli şeyler ile sık sık yoğuruyorsak çöplüğe dönüştürmemek büyük başarı tebrik ederim. Çünkü normal silerken dependcyler kalabiliyor, purgelersek başka uygulamaların kullandığı dependencyleri de yanlışlıkla silme ihtimali oluyor bazen.
 
Son düzenleme:
Ben bildiğim kadarıyla yanıtlayım, kullanım durumuna göre değişir. Eğer hız ve sistem optimize olmasıysa kastın, sıfırdan derlemek en iyisi, sonrası dpkg (Debian türevleri için), sonrası appimage-flatpak-snap olarak geliyor. Güzel özellikleri var. Şu şekilde:
  • AppArmour: Bu özellik benim en sevdiğim. İndirdiğin program komple bir image halinde geliyor. Bu şu demek: Herhangi bir conflict (çakışma), dependency(çalışması için gerekli kütüphane/programların) eksikliği gibi sorunlar yaşanmıyor. Aynı zamanda image yapısı benimsendiği için yazılım kötü niyetliyse sisteme herhangi bir zararı olmuyor. Programı kaldırdığında herhangi bir residual (kalıntı) bırakmıyor. Yani uzun lafın kısası, sistemle bir eyvallahı olmuyor, olduğu gibi geliyor ve gidiyor.
  • Cross-platform: Paket yöneticisinin ne olduğu önemli olmuyor. Böylelikle yeni çıkan Linux dağıtımlarının da önünü açmaya yarıyor. Aynı zamanda yayıncı için muazzam bir kolaylık sağlıyor.
  • Yönetim/Güncelleme kolaylığı: Bu bir önceki ile biraz bağlantılı. Geliştiriciler son sürümlerini Debian main repolarına koymakta zorluk çekiyorlar ve bundan dolayı Debian repoları geriden geliyor. Bazen bu durumlarda derlemek de sistemde istenmeyen kalıntılar bırakabiliyor. Snap ve flatpak bu konuda çok daha büyük kolaylıklar sağlıyor ve son sürümler daha rahat bulunabiliyor.
Eksiler:
  • Yavaşlık: İmage yapısından dolayı bir miktar yavaş. (Ben bu yavaşlığı açılışta görüyorum daha çok)
  • Temalama: Tema olayları için ekstradan uğraş gerekebiliyor.
  • Kişiye özel modifikasyon: Bazı uygulamalarda kişi kendi modifikasyonlarını yapmak isteyebilir. AppArmour özelliği bu konuda sıkıntı çıkaracaktır.

1- Programı repodan indirdikten sonra zaten bir çakışma yaşamazsın.

2- Cross Platform bunun için kullanılmıyor. Cross Platform farklı mimarilerde ve İşletim sistemlerinde (Linux değil) çalışabileceği anlamına geliyor.

3- Açıkcası kullandığım işletim sistemi kuracağım paketin versiyonunu seçmeme izin verdiği için ihtiyaç olarak görmüyorum. Bu konuda haklısın bazı dağıtımlarda kullanışlı olabilir. 2MB'lık paket için 600 MB download yapmayı göze alıyorsan tabii.
 
1- Programı repodan indirdikten sonra zaten bir çakışma yaşamazsın.

2- Cross Platform bunun için kullanılmıyor. Cross Platform farklı mimarilerde ve İşletim sistemlerinde (Linux değil) çalışabileceği anlamına geliyor.

3- Açıkcası kullandığım işletim sistemi kuracağım paketin versiyonunu seçmeme izin verdiği için ihtiyaç olarak görmüyorum. Bu konuda haklısın bazı dağıtımlarda kullanışlı olabilir. 2MB'lık paket için 600 MB download yapmayı göze alıyorsan tabii.

1- Daha önceden daha sık yaşanıyordu bu sorun. Örneğin MATLAB'ı yüklerken libncurses6.so dependencysini her seferinde kendim yüklemem gerekiyordu.
2- Uyardığın için teşekkür ederim. Düzelttim.
3- Verdiğin örnek sanırım biraz sıradışı. Hangi pakette gördün belirtebilir misin? 2-3 hatta 4 kata kadar fazla boyutlarla karşılaştım ama 300 katlık farkı ilk defa görüyorum.

Ayrıca data aktarımı ve depolama artık çok ucuzladı. İleriki vakit kayıplarını minimize etmek için bir kaç dakika (hatta bir kaç saat) fazladan beklemek (ki repodan kod çekip compile etmek genelde çok daha uzun sürüyor) ve biraz fazla alan kullanmak çoğu kişiler için sıkıntı değil diye düşünüyorum.
 
1- Daha önceden daha sık yaşanıyordu bu sorun. Örneğin MATLAB'ı yüklerken libncurses6.so dependencysini her seferinde kendim yüklemem gerekiyordu.
2- Uyardığın için teşekkür ederim. Düzelttim.
3- Verdiğin örnek sanırım biraz sıradışı. Hangi pakette gördün belirtebilir misin? 2-3 hatta 4 kata kadar fazla boyutlarla karşılaştım ama 300 katlık farkı ilk defa görüyorum.

Ayrıca data aktarımı ve depolama artık çok ucuzladı. İleriki vakit kayıplarını minimize etmek için bir kaç dakika (hatta bir kaç saat) fazladan beklemek (ki repodan kod çekip compile etmek genelde çok daha uzun sürüyor) ve biraz fazla alan kullanmak çoğu kişiler için sıkıntı değil diye düşünüyorum.
2.5MB'lık GreenWithEnvy, 700MB+ download istemişti kurmadım tabiki. Github'dan derledim. Herhangi bir Plasma programı kurmaya çalışsan, 1GB+ downloadla karşılaşabilirsin.
 
Hocam, Octave programını neden kullanmıyorsunuz? Matlab kodlarını neredeyse tamamen çalıştırıyor. Şimdiye kadar 1 tane çalışmayan fonksiyon ile karşılaştım.

Octave'ı da sık kullanıyorum, hatta arayüzünü filan daha çok beğeniyorum ama MATLAB iyi yazılmış bir ortam. Sürekli gelişiyor. Çok sağlam bindingleri var, ve çok daha hızlı. Özellikle sağlam vectorized implementasyonlarda (lineer cebiri sağlam kullandığında) matlabın çok kaliteli mkl librarylerine erişimi olduğundan bir kaç kat hız farkı olabiliyor. Aynı zamanda matlabın görselleştirmeleri de iyi. Bir de octave ın paket yönetimi bazen dişlerimi gıcırdattırıyor.
 
Octave'ı da sık kullanıyorum, hatta arayüzünü filan daha çok beğeniyorum ama MATLAB iyi yazılmış bir ortam. Sürekli gelişiyor. Çok sağlam bindingleri var, ve çok daha hızlı. Özellikle sağlam vectorized implementasyonlarda (lineer cebiri sağlam kullandığında) matlabın çok kaliteli mkl librarylerine erişimi olduğundan bir kaç kat hız farkı olabiliyor. Aynı zamanda matlabın görselleştirmeleri de iyi. Bir de octave ın paket yönetimi bazen dişlerimi gıcırdattırıyor.

Matlab aşırı kasıntı bir program değil mi? Bilgisayara yüklediğimde ağlıyor bilgisayar çalışırken.

Ben çok büyük matrislerle çalışmadığım için farketmedim hız farkını.

Görselleştirme konusunda da aşırı ihtiyacım olmadı ancak yine de beğeniyorum Octave'den aldığım görsel çıktılarını. Siz hangi komutları kullanıyorsunuz görsel çıktısı alırken, belki sizizn kullandıklarınız güzel görünüşlü değildir?

Paket yönetiminden kastınız bazı paketleri yükleme ihtiyacı ve her seferinde pkg load symbolic yazmak çok kötü bir durum tabi ki.
 
2.5MB'lık GreenWithEnvy, 700MB+ download istemişti kurmadım tabiki. Github'dan derledim. Herhangi bir Plasma programı kurmaya çalışsan, 1GB+ downloadla karşılaşabilirsin.

Söylediğiniz programın flatpakini buldum ama snapini bulamadım. Haklı olabilirsiniz çünkü program nvidia binarylerine erişimi gerekiyor gibi duruyor (nvidia-smi gibi). KDE uygulamaları veya gwe gibi sağlam sistem entegrasyonları isteyen uygulamalar için bence zaten mantığını yitiriyor bu tarz paket yönetimleri.
Matlab aşırı kasıntı bir program değil mi? Bilgisayara yüklediğimde ağlıyor bilgisayar çalışırken.

Ben çok büyük matrislerle çalışmadığım için farketmedim hız farkını.

Görselleştirme konusunda da aşırı ihtiyacım olmadı ancak yine de beğeniyorum Octave'den aldığım görsel çıktılarını. Siz hangi komutları kullanıyorsunuz görsel çıktısı alırken, belki sizizn kullandıklarınız güzel görünüşlü değildir?

Paket yönetiminden kastınız bazı paketleri yükleme ihtiyacı ve her seferinde pkg load symbolic yazmak çok kötü bir durum tabi ki.

Benim yazdığım simülasyonlar genelde büyük çaplı oluyor ve vectorized yapılmayınca aylar sürebiliyor.

Plotlar zaten çok kötü değil, ama makaleye konulacak düzeyde de görmüyorum açıkçası. Ondan dolayı aslında. Ayrıca 3 boyutlu fazla vertex vektörlü plotlarda plotun sağına soluna bakmak da zulüme dönüşebiliyor.

Son olarak da evet, dediğin şey zaten sıkıntılı, bir de bu paket için önce bu paket olması lazım diye söyleyip dependencyleri teker teker elle kurduruyor ya, acayip canımı sıkıyor.
 

Geri
Yukarı