Jak dostat vlastní software do oficiálních repozitářů?

Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #30 kdy: 15. 05. 2023, 15:53:20 »
Citace
No ta hlavní námitka o tom, že autor gpxsee nepřijímá žádné patche je pro Debian dost zásadní.
Debian si zakládá na některých principech, které ostatní moc neřeší. A tohle je červený hadr na býka.

"Zakládat si na principech" si teda představuju jinak, než že je pro někoho něco "zásadní" jenom tam, kde se mu to hodí... Kdyby skutečně šlo o principy, tak v Debianu není třeba SQLite, asi nejznámější příklad Open-Source, not Open-Contribution SW co v Debianu je.

A to se ještě vůbec nebavíme o tom, proč by to měl být nějaký zásadní problém zrovna pro Debian, když ostatní distribuce s tím žádné problémy během těch let co tam GPXSee je nezaznamenaly...


Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #31 kdy: 15. 05. 2023, 16:07:09 »
Citace
Jenže Flatpak funguje jinak. Je hierarchický, takže všechny hlavní závislosti se automaticky upgradují jen jednou pro každý Runtime (a těch je jen pár). Appimage i aplikace v App storech mají závislosti bundlované a neumí je updatovat...

Ten problém je ale právě v tom, že funguje jinak. Jinak než těch 274 dalších balíčkovacích mechanismů, které by preferoval zase někdo jiný. Pokus nahradit DEB/RPM, Appimage, NPM, CPAN, ..., pomocí Flatpacku opravdu neskončí jedním univerzálním standardem...

Citace
Třeba u toho zmíněného gpxsee to autor explicitně odmítl. Před pěti lety.. trošku jsem do něj šťouchnul, třeba ho to přiměje se zamyslet

Autor GPXSee se na toto téma zamýšlí pokaždé, když narazí na nějaký další SW distribuovaný pomocí dalšího balíčkovacího systému, který ještě ve svém OS nemá. Ale zatím vždy došel k závěru, že sám pomáhat tomuto šílenství nehodlá...

Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #32 kdy: 15. 05. 2023, 16:20:58 »
Ten problém je ale právě v tom, že funguje jinak. Jinak než těch 274 dalších balíčkovacích mechanismů, které by preferoval zase někdo jiný. Pokus nahradit DEB/RPM, Appimage, NPM, CPAN, ..., pomocí Flatpacku opravdu neskončí jedním univerzálním standardem...

Jenže žádný z těch 274 balíčkovacích systémů (a tolik jich zase není) neřeší nezávislost desktopových aplikací na jádru systému. Takže každý uživatel pak musí řešit, že si aplikaci nemůže pustit v té verzi, kterou potřebuje. A to nemluvím o tom, že musí mít práva instalovat balíčky.

AppImage je konkurence Flatpaku, ale neumí updaty, neumí Runtimes atd. NPM, CPAN, pip, cargo a podobně nejsou konkurencí. Systémové knihovny by měly být zabalené, desktopové (nezávislé na systému) si to nějak musí zařídit a pro vývoj se dá instalovat jiná sada knihoven pro každý projekt.

Takže ve skutečnosti by desktopová aplikace dneska vůbec nemusela podporovat třeba RPM, protože Fedora podporuje Flatpak ve všech spinech. A možná ani DEB, protože Ubuntu zase preferuje AppImage...

Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #33 kdy: 15. 05. 2023, 16:23:12 »
Kdyby skutečně šlo o principy, tak v Debianu není třeba SQLite, asi nejznámější příklad Open-Source, not Open-Contribution SW co v Debianu je.

Ale SQLite přijímá patche

"the project does not accept patches from people who have not submitted an affidavit dedicating their contribution into the public domain."

stačí jen "podepsat" formu CLA. Jenže gpxsee toto neumožňuje (na webu má jen vágní komentář, že možná někdy..).

Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #34 kdy: 15. 05. 2023, 16:48:24 »
Citace
Ale SQLite přijímá patche

Já tam teda čtu toto: "In order to keep SQLite completely free and unencumbered by copyright, the project does not accept patches. If you would like to make a suggested change, and include a patch as a proof-of-concept, that would be great. However please do not be offended if we rewrite your patch from scratch."

Navíc celé je to taková akademická diskuze, protože mezi ty "principy" otevřeného přispívání z hlediska Debianu těžko bude patřit nutnost souhlasit s nějakým CLA (a že některé ty CLA, třeba u Qt jsou dost "výživný"). To by jeden taky mohl klidně tvrdit, že i přispívat do GPXSee je v pohodě možné, protože některé druhy patchů ten projekt přijímá a v případě zajímavých patchů je tu příslib tuto množinu rozšířit...


Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #35 kdy: 15. 05. 2023, 17:06:04 »
Citace
Jenže žádný z těch 274 balíčkovacích systémů (a tolik jich zase není) neřeší nezávislost desktopových aplikací na jádru systému. Takže každý uživatel pak musí řešit, že si aplikaci nemůže pustit v té verzi, kterou potřebuje.

Tohle dnes řeší minimálně 3 balíčkovací systémy - Appimage, Flatpack a Snap. Každý z nich má samozřejmě nějaká plus a nějaká mínus. Vy preferujete Flatpack, ale někdo jiný Snap a další zase Appimage. Výsledek pak je, že uživatel potřebuje 4 (se systémovým mechanismem - RPM/DEB/...) různé systémy pro instalaci programů.

Citace
NPM, CPAN, pip, cargo a podobně nejsou konkurencí.
Těžko říct, jestli to nazývat konkurencí, ale rozhodně to jsou další balíčkovací systémy, které musí uživatel mít, pokud si chce instalovat nějaký program. Třeba spustit si běžný moderní(čti: hipsterský) JS program z Githubu je bez NPM prakticky nerealizovatelné. A dtto pro Python a PIP.

Re:Jak dostat vlastní software do oficiálních repozitářů?
« Odpověď #36 kdy: 15. 05. 2023, 18:53:45 »
Citace
Jenže žádný z těch 274 balíčkovacích systémů (a tolik jich zase není) neřeší nezávislost desktopových aplikací na jádru systému. Takže každý uživatel pak musí řešit, že si aplikaci nemůže pustit v té verzi, kterou potřebuje.

Tohle dnes řeší minimálně 3 balíčkovací systémy - Appimage, Flatpack a Snap. Každý z nich má samozřejmě nějaká plus a nějaká mínus. Vy preferujete Flatpack, ale někdo jiný Snap a další zase Appimage.

Máte pravdu, na Snap jsem zapomněl. Canonical ten jeho "App store" drží bohužel dost "uzavřený".

Appimage se neinstaluje a typicky nemá žádnou integraci se systémem balíčků, je to takový ekvivalent DMG z OS X.

O Flatpaku už jsem mluvil. Je zaštítěný Free Desktopem, nativní v Gnome, umožňuje repozitáře třetích stran... takže chápete proč ho mám raději než Snap. (Ale uživatelé Ubuntu by možná mluvili jinak)

Výsledek pak je, že uživatel potřebuje 4 (se systémovým mechanismem - RPM/DEB/...) různé systémy pro instalaci programů.

RPM/DEB se postupně ukázaly jako nevhodné pro rychle se vyvíjející desktopové aplikace. Obzvláště je to patrné na tom Debianu, který je hodně konzervativní. Provozovat stable základ a zároveň aktuální unstable/testing aplikace není až tak úplně triviální.

Fedora měla zase jiný problém, upgrade každého půl roku, často komplet překopané knihovny..

A obojí jak RPM tak DEB vyžaduje práva administrátora pro instalaci aplikací. Do příchodu AppImage byly jedinou uživatelskou možností statické binárky nebo configure/make do lokálního prefixu.

Navíc v dnešní době malware je poněkud riskantní instalovat věci ze zdrojáků. I ty AppImage jsou dost na hraně.

Flatpak nebo Snap tyto problémy řeší, poskytují sandbox s omezením práv aplikace.

Citace
NPM, CPAN, pip, cargo a podobně nejsou konkurencí.
Těžko říct, jestli to nazývat konkurencí, ale rozhodně to jsou další balíčkovací systémy, které musí uživatel mít, pokud si chce instalovat nějaký program. Třeba spustit si běžný moderní(čti: hipsterský) JS program z Githubu je bez NPM prakticky nerealizovatelné. A dtto pro Python a PIP.

To je asi tak stejná úroveň, jako nutnost použít cargo pro nainstalování závislostí Rust zdrojáků. Tohle je typicky vývojářské použití a většina obyčejných uživatelů npm používat nebude (osobně mi pár _Gigabyte_ javascriptových zdrojáků u malého webového projektu přišlo dost šílené).

Pip / Virtualenv pro Python jsou na tom podobně. Obzvláště ve chvíli, kdy uděláte upgrade systémového Pythonu a venv prefixy přestanou fungovat, protože symlinky jsou na konkrétní verzi, která zmizela.