📦Узнаем установочный размер пакета с помощью Pacman и Apt

Как узнать размер пакетов Pacman и Apt

by itisgood

Иногда, когда мы задумываемся об установке нескольких сопоставимых пакетов, но выбираем только один, становится любопытно, насколько большим будет пакет.

Мы не всегда оптимизируем работу с учетом экстремального минимализма, но в целом мы об этом помним.

📦 Как определить менеджер пакетов в системе Linux

Pacman

Вот несколько результатов сравнения двух популярных инструментов для установки обоев с Wayland:

$ pacman -Si swaybg

...
Depends On      : wayland  cairo  gdk-pixbuf2
Download Size   : 14.80 KiB
Installed Size  : 33.72 KiB
...
$ pacman -Si swwww

...
Depends On      : dav1d  gcc-libs  glibc  lz4
Download Size   : 2.33 MiB
Installed Size  : 8.43 MiB
...

Если вы хотите увидеть истинный размер установки, вы можете начать ее установку, но затем отменить с помощью n:

$ pacman -Syu swaybg

Package (1)   New Version  Net Change  Download Size

extra/swaybg  1.2.1-1        0.03 MiB       0.01 MiB

Total Download Size:   0.01 MiB
Total Installed Size:  0.03 MiB

:: Proceed with installation? [Y/n]

В моей системе не нужно было устанавливать зависимости swaybg, потому что они у меня уже есть.

То же самое произошло с swww, поэтому в этом случае истинный размер установки – это размер пакета, указанный выше.

Убедитесь, что зависимость установлена

Вы можете запустить pacman Q | grep cairo или любой другой пакет, который хотите проверить.

Если вы получите ответ grep, значит, он уже установлен:

$ pacman -Q | grep -E "(wayland|cairo|gdk-pixbuf2)"

cairo 1.18.4-1
gdk-pixbuf2 2.44.3-1
wayland 1.24.0-1

Apt

Как и в случае с pacman, мы можем получить аналогичную статистику.

Это для самого пакета без зависимостей:

$ apt show curl

...
Depends: libc6 (>= 2.34), libcurl4t64 (= 8.14.1-2), zlib1g (>= 1:1.1.4)
Download-Size: 269 kB
Installed-Size: 506 kB
...
$ apt show wget

...
Depends: libc6 (>= 2.38), libgnutls30t64 (>= 3.8.1), libidn2-0 (>= 0.6), libnettle8t64, libpcre2-8-0 (>= 10.22
), libpsl5t64 (>= 0.16.0), libuuid1 (>= 2.16), zlib1g (>= 1:1.1.4)Download-Size: 984 kB
Installed-Size: 3875 kB
...

Чтобы получить истинный размер установки, можно также начать установку пакета, но отменить ее:

$ apt-get install --no-install-recommends curl

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libbrotli1 libcom-err2 libcurl4t64 libffi8 libgnutls30t64 libgssapi-krb5-2 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap2 libnghttp2-14 libnghttp3-9 libp11-kit0 libpsl5t64 librtmp1 libsasl2-2 libsasl2-modules-db libssh2-1t64 libtasn1-6
  libunistring5
Suggested packages:
  gnutls-bin krb5-doc krb5-user
Recommended packages:
  bash-completion ca-certificates krb5-locales libldap-common publicsuffix libsasl2-modules
The following NEW packages will be installed:
  curl libbrotli1 libcom-err2 libcurl4t64 libffi8 libgnutls30t64 libgssapi-krb5-2 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap2 libnghttp2-14 libnghttp3-9 libp11-kit0 libpsl5t64 librtmp1 libsasl2-2 libsasl2-modules-db libssh2-1t64 libtasn1-6
  libunistring5
0 upgraded, 23 newly installed, 0 to remove and 2 not upgraded.
Need to get 4905 kB of archives.
After this operation, 14.8 MB of additional disk space will be used.
Do you want to continue?

Имейте в виду, что я запускал примеры apt в новом контейнере Docker с помощью docker container run it rm debian:stable, где я запускал только aptget update.

В реальной системе у вас, возможно, уже установлены некоторые зависимости curl.

То же самое относится и к wget.

см. также:

 

Loading

You may also like

Leave a Comment