问题描述
我最近了解到GIMP是Ubuntu世界中的Photoshop替代品,我知道Photoshop是一个大约500MB的巨大应用程序。在下载gimp之前,我想知道应用程序的大小。我跑了
$ apt-cache --no-all-versions show gimp | grep '^Size: '
Size: 3611842
假设那些是字节,大致转换为3.61兆字节。 3.61 MEGABYTE?我的意思是它是否存在一些隐藏的依赖关系,这些依赖关系会占用我的网络分配?
如果它是3.61兆字节,那么Linux应用程序如何才能这么小呢?
最佳解决办法
Ubuntu中的软件在打包时通常会分成不同的包,分开:
-
architecture-independent数据,(
gimp-data
) -
二进制文件,(
gimp
) -
共享库,(
libgimp2.0
) -
开发标题,(
libgimp2.0-dev
) -
插件,(
gimp-data-extra
) -
文档,(
gimp-help-en
) -
并且任何外部依赖项通常也是单独的包。
结果是主gimp
软件包依赖于其他gimp
相关软件包和许多库。事实上,主gimp
软件包的下载大小约为3 MB。但是,总下载大小将远远超过3 MB。
但是你很少在Ubuntu存储库中看到巨大的整体包。 0ad-data
,一个特别大的包,甚至不是单片的 – 它只包含0 A.D.游戏的数据文件,而二进制文件在0ad
中。
来自存储库外部的包,例如Gitlab omnibus包(~300 MB!),可能是巨大的,因为这些开发人员决定将每个依赖包含在单个包中而不是依赖于存储库包。
至于总下载大小,这取决于您已在系统上安装的库。 apt
将告诉您将下载多少:
$ sudo apt install gimp
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
gimp-data libamd2.4.1 libbabl-0.1-0 libblas-common libblas3 libcamd2.4.1 libccolamd2.9.1 libcholmod3.0.6 libgegl-0.3-0 libgfortran3 libgimp2.0 liblapack3 libsdl1.2debian libumfpack5.7.1 python-cairo python-gobject-2 python-gtk2
Suggested packages:
gimp-help-en | gimp-help gimp-data-extras python-gobject-2-dbg python-gtk2-doc
The following NEW packages will be installed:
gimp gimp-data libamd2.4.1 libbabl-0.1-0 libblas-common libblas3 libcamd2.4.1 libccolamd2.9.1 libcholmod3.0.6 libgegl-0.3-0 libgfortran3 libgimp2.0 liblapack3 libsdl1.2debian libumfpack5.7.1 python-cairo python-gobject-2 python-gtk2
0 upgraded, 18 newly installed, 0 to remove and 0 not upgraded.
Need to get 17.2 MB of archives.
After this operation, 92.5 MB of additional disk space will be used.
Do you want to continue? [Y/n]
次佳解决办法
I recently learned that GIMP is a Photoshop replacement in Ubuntu world
那句话会引起很多火焰战争。两者都是图像编辑包,都有优点和缺点。
I mean is that it or are there some hidden dependencies which are gonna eat my internet allocation away?
gimp分为多个包,其中有三个基本上是强制性的,还有几个可选的包。这些包还将依赖于不属于gimp且可能已安装或未安装的其他库。
三个强制性的是gimp,gimp-data和libgimp,总的下载大小(安装的大小会更大)大约12兆字节,除此之外,有些库不是gimp的一部分,但需要它的确切设置将取决于你已经安装的东西。
then how can Linux apps be this small?
有几个原因,首先是Linux发行版尝试在不同应用程序之间共享尽可能多的代码,而vendor-distributed应用程序(适用于Windows和Linux)往往会嵌入大量库。
其次,图像编辑工具的大部分尺寸不是核心图像编辑功能。它是所有额外的东西,特定额外的价值只与它的大小松散相关。