Efektivní zabalení souborů pro distribuci na Windows

Dobry den.

Mam program ktory ma aj kompletne cca 200 MB. Aktualne to distribuujem tak ze si uzivatel jednoducho stiahne zip. Velmi sa mi to nepaci lebo kompresia je relativne mala a celkovo by som radsej presiel na instalator resp. next next system na rozbalenie. A tu sa dostavam k jadru otazky. Aky program pozit? Idealne s co najlepsov kompresiou? Zaujimaju ma hlavne prakticke skusenosti.

Dakujem
« Poslední změna: 10. 09. 2019, 09:43:58 od Petr Krčmář »


Re:Co pouzit na efektivne zabalenie suborov pre distribuciu na Windows?
« Odpověď #1 kdy: 10. 09. 2019, 08:49:54 »
Inno Setup http://www.jrsoftware.org/isinfo.php + Inno Script Studio. Spravi to jeden samorozbalovaci exe. Instalacia so spustou nastaveni. Scriptovaci jazyk aka Pascal.

Re:Co pouzit na efektivne zabalenie suborov pre distribuciu na Windows?
« Odpověď #2 kdy: 10. 09. 2019, 09:34:35 »
Inno Setup (IS) také vřele doporučuji.

Už roky jej používám k distribuci jednoho svého programu v Javě SE a osvědčil se.
Tvorba instalačního programu se řídí skriptem, jehož "překladač" lze spustit z příkazového řádku, takže lze snadno zařadit do automatizovaného sestavení. Podporuje algoritmus LZMA a kompresi kdy nejprve sloučí všechny soubory do jednoho a pak vše zkomprimuje (stejně jako "solid" archiv u RARu).

Skriptovací jazyk je dobře zdokumentovaný a k dispozici je i jednoduché IDE.

Jak jednoduchý skript vypadá?
https://sourceforge.net/p/turgen/turgen-code/ci/master/tree/ts.iss

Další možností je zkusit Windows Installer. Ten je ale podstatně složitější.

Medo77

  • ****
  • 288
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #3 kdy: 10. 09. 2019, 15:13:12 »
Kedysi bol (aspon v mojom ponimani - sem tam nan este narazim) popularny NSIS ...
https://sourceforge.net/projects/nsis/

oss

  • ***
  • 229
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #4 kdy: 10. 09. 2019, 16:02:20 »
Chces to len zbalit, tak pouzi WinRar, ak chces pouzit samorozbalovacie exe (tak tiez mozes pouzit WinRar).
Inak samorozbalovacie exe naozaj neodporucam.

Ak chces robit instalator, tak sa vykasli na podivne programy a pouzi WIX, co sa uz dlhe roky povazuje za standard pre robenie instalcnych balickov.

Ak targetujes len Windows 10, pouzi msix balicky (podpruje ich Visual Studio).


ETNyx

Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #5 kdy: 10. 09. 2019, 16:16:35 »
Chces to len zbalit, tak pouzi WinRar, ak chces pouzit samorozbalovacie exe (tak tiez mozes pouzit WinRar).
Inak samorozbalovacie exe naozaj neodporucam.

Hlavně to ne! Zabalte to do rar a všem k tomu ještě pošlete ten jejich shareware/malware/adware nebo jak ten hnus dneska nazývají, nebo rovnou fakturu za instalaci WinRar? Když už to musí být tak použijte zip ten s trochou štěstí většina BFU rozbalí na cílovým systému hned po čistý instalaci

Mlocik97

  • *****
  • 831
  • Ubunťák, JS dev.
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #6 kdy: 10. 09. 2019, 16:58:32 »
NSIS

Kit

  • *****
  • 704
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #7 kdy: 10. 09. 2019, 18:35:26 »
Dobry den.

Mam program ktory ma aj kompletne cca 200 MB. Aktualne to distribuujem tak ze si uzivatel jednoducho stiahne zip. Velmi sa mi to nepaci lebo kompresia je relativne mala a celkovo by som radsej presiel na instalator resp. next next system na rozbalenie. A tu sa dostavam k jadru otazky. Aky program pozit? Idealne s co najlepsov kompresiou? Zaujimaju ma hlavne prakticke skusenosti.

Dakujem

Zip je natolik uznávaný, že jsou v něm i všechny dokumenty nejen MS Office, ale i Libre Office. Nic důvěryhodnějšího než zip už není a jeho podpora je již součástí operačního systému. Rozbalí ho každý.

Pokud v tom programu máš hodně obrázků, zvuků a videí, což předpokládám, tak už to ani lépe zkomprimovat nepůjde. Spíš bych se zamyslel nad tím, proč jsi z něj udělal takového molocha.

Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #8 kdy: 10. 09. 2019, 21:11:23 »
upx.github.io

Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #9 kdy: 11. 09. 2019, 09:30:30 »
tiez sa priklanam k Inno setup. Ak potrebujes len rozbalit subory, pripadne nieco spustit, nastavit v registri, tak je to idealny nastroj. vies si tam zakomponovat aj readme, ktory sa zobrazi po spusteni, dat vlastne logo atd. pripadne pre pokrocilejsie veci je tam skriptovanie v pascale.

martyd420

  • ***
  • 193
  • K U B U N T U
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #10 kdy: 12. 09. 2019, 09:31:49 »
Chces to len zbalit, tak pouzi WinRar
Proboha, je rok 2019, nechte už ten winrar umřít!
Tohle radit lidem je fakt smutné, čistit systém po podobných akcích je fakt zábavička...
Když už jen zabalit, tak stačí kliknout pravým a "odeslat do - Komprimovaná složka ZIP"

Ale k původnímu dotazu: Přidávám se k inno setup :)  Používám už dlouho, bez problému.
« Poslední změna: 12. 09. 2019, 09:33:41 od Vykolej Rozkašil »
T_PAAMAYIM_NEKUDOTAYIM  |  Nemám rád IPv6 influencery :P

Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #11 kdy: 13. 09. 2019, 07:46:38 »
Mno, když to distribuuješ jako zip, tak to instalák (ve smyslu blití do registru) úplně nepotřebuje. Co sfx pomocí 7zipu? Je to bezplatný, LZMA umí účinnější kompresi než základní LZ, a systém to nezasírá. Dá se to stáhnout i jako portable appka.


Kit

  • *****
  • 704
    • Zobrazit profil
    • E-mail
Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #13 kdy: 13. 09. 2019, 11:16:16 »
Mno, když to distribuuješ jako zip, tak to instalák (ve smyslu blití do registru) úplně nepotřebuje. Co sfx pomocí 7zipu? Je to bezplatný, LZMA umí účinnější kompresi než základní LZ, a systém to nezasírá. Dá se to stáhnout i jako portable appka.

To získané jedno procento místa nestojí za to, aby na příponu "7z" uživatel čuměl jak puk a nevěděl, co s tím.

Re:Efektivní zabalení souborů pro distribuci na Windows
« Odpověď #14 kdy: 13. 09. 2019, 23:31:16 »
To získané jedno procento místa nestojí za to, aby na příponu "7z" uživatel čuměl jak puk a nevěděl, co s tím.

Právě jsem si zkusil zabalit portable verzi krita-x64-4.0.0  do zip a 7z.  A 7zip archiv je o 35% menší což není úplně málo.
A to včetně sfx - což znamená že archiv je běžně spustitelný soubor který se rozbalí do uživatelsky vybraného adresáře.
Navíc nainstalovat 7z už dneska nebývá takový problém, a pokud to bude alternativa k zip, nevidím problém.

Spíše bych ale upozornil na rozdíl mezi "portable" a klasickou instalací.
U standardní instalace se obvykle předpokládá že se instaluje do adresářů pro programy určených, tj. adresářů kde by neměli být pracovní soubory programu(protože tam, mimo instalaci, často není právo zápisu).
Pro ukládání/zapisování dat je pak potřeba použít ty správné adresáře(dle OS)