有没有精简安装包的技术 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
csulyb
V2EX    程序员

有没有精简安装包的技术

  •  
  •   csulyb 2021-05-23 08:13:08 +08:00 4135 次点击
    这是一个创建于 1611 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我用 pygtk 写了一款 PC 软件,因为接入了 AI 的 SDK,加上本身 gtk 和 python 的库,安装包体积到了 50M,想做个下载安装器,有没有人做过安装程序,如何实现? 最好是轻量上手简单的,不要超过 200 行 nsi 脚本, 没有很多精力投在这个安装器上面

    20 条回复    2021-05-31 09:26:53 +08:00
    kokutou
        1
    kokutou  
       2021-05-23 08:39:22 +08:00 via Android
    。。。50m 几秒钟就下完了啊
    tomczhen
        2
    tomczhen  
       2021-05-23 08:57:48 +08:00 via Android   2
    不想投入精力。

    自解压压缩包,又不是不能用.jpg
    直接付费请人弄自己做甲方。
    × 找个社区发帖等一堆方案,然后白嫖。
    OutOfMemery
        3
    OutOfMemery  
       2021-05-23 09:28:58 +08:00
    可以看一下 nsis
    luozic
        4
    luozic  
       2021-05-23 09:36:27 +08:00
    nsis 自己搜一下
    MicroBotter
        5
    MicroBotter  
       2021-05-23 09:50:41 +08:00
    GIMP,Inkscape 和 Mypaint 三个 GTK 的软件的在 windows 上安装包体积都大于 100mb,解决起来应该不简单,建议不解决。
    Osk
        6
    Osk  
       2021-05-23 09:58:37 +08:00
    看看现在一个 apk 多大, 然后就觉得自己的才 50M 而已, 很小了是吧 /doge/
    IvanLi127
        7
    IvanLi127  
       2021-05-23 09:59:49 +08:00 via Android
    传到某些软件下载站 他们会给你搞一 1m 多的下载器 虽然有广告啊植入啊什么的。。。
    Rheinmetal
        8
    Rheinmetal  
       2021-05-23 10:06:18 +08:00
    pyinstaller 可以把其他不调用的包 都干掉
    boboliu
        9
    boboliu  
       2021-05-23 10:15:58 +08:00
    MarkLeeyun
        10
    MarkLeeyun  
       2021-05-23 10:46:03 +08:00
    @Osk pc 软件啊。老哥。
    580a388da131
        11
    580a388da131  
       2021-05-23 11:01:14 +08:00
    新版微信 APK 170M
    50M 已经不算大了
    Lemeng
        12
    Lemeng  
       2021-05-23 11:16:14 +08:00
    50 兆也不是特别大
    csulyb
        13
    csulyb  
    OP
       2021-05-23 12:56:30 +08:00
    多谢已经搞定了,需要的人可以参考:

    SetOutPath "$INSTDIR"
    Nsisdl::download "https://mydomain.com/7z.exe" "7z.exe"
    Nsisdl::download "https://mydomain.com/dl_1.1.7z.001" "dl_1.1.7z.001"
    Nsisdl::download "https://mydomain.com/dl_1.1.7z.002" "dl_1.1.7z.002"

    nsexec::exec '7z.exe x "dl_1.1.7z.001" "-aoa" '

    delete 7z.exe
    delete "dl_1.1.7z.001"
    delete "dl_1.1.7z.002"
    csulyb
        14
    csulyb  
    OP
       2021-05-23 12:57:50 +08:00
    @Rheinmetal #8 我用了 cx_freeze 打的包 我待会去试试你说的这个
    Jirajine
        15
    Jirajine  
       2021-05-23 14:29:14 +08:00 via Android
    不明白,你做个下载的安装器,不还是要下?所需要的资源一点不少,有什么意义么。
    en20
        16
    en20  
       2021-05-23 14:36:06 +08:00   1
    @580a388da131 从程序员角度肯定要优化包体积,为什么要去比烂
    jim9606
        17
    jim9606  
       2021-05-23 16:29:53 +08:00
    python 的话我建议你别折腾了。至少我不觉得一个有 AI 能力的 GUI 程序要 50M 很离谱。
    CEF 的 win64 版都有 200M 了,依赖这玩意的小型应用在我电脑上一抓一大把。
    BingoXuan
        18
    BingoXuan  
       2021-05-23 19:10:18 +08:00 via Android
    才 50m,我一个算 fft 的小工具都 100m 了,因为用了 numpy
    thetbw
        19
    thetbw  
       2021-05-24 19:23:23 +08:00
    electron 写个 hello world 也要几十兆,这年头原生 app 难得
    john6lq
        20
    john6lq  
       2021-05-31 09:26:53 +08:00 via iPhone
    不在乎包体积《==》乱引第三方库《==》不想自己动手写代码《==》摸鱼度日、抱怨内卷
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2792 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 14:42 PVG 22:42 LAX 07:42 JFK 10:42
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86