AlmaLinux / docker-images

Home for AlmaLinux Docker image RootFS files and production version of sources
MIT License
100 stars 27 forks source link

`diffutils` package is not build-in almalinux:9.0 after `yum update` #79

Closed shenxianpeng closed 2 years ago

shenxianpeng commented 2 years ago

I saw the link to report an issue on the official docker homepage pointing here so I report here.

Compared with almalinux:8, almalinux:9.0 doesn't include diffutils package by default after running yum update -y command.

sh-4.2$ docker run -it almalinux:9.0 bash
[root@590de396a6a2 /]# diff
bash: diff: command not found
[root@590de396a6a2 /]# yum update -y
AlmaLinux 9 - AppStream                                                                                                                                                                                                          16 MB/s | 7.8 MB     00:00    
AlmaLinux 9 - BaseOS                                                                                                                                                                                                            6.5 MB/s | 3.4 MB     00:00    
AlmaLinux 9 - Extras                                                                                                                                                                                                             29 kB/s |  12 kB     00:00    
Dependencies resolved.

...

Complete!
[root@590de396a6a2 /]# diff
bash: diff: command not found
[root@590de396a6a2 /]# cat /etc/redhat-release 
AlmaLinux release 9.0 (Emerald Puma)

...

Complete! [root@8b5f3b9e0fce /]# diff diff: missing operand after 'diff' diff: Try 'diff --help' for more information. [root@8b5f3b9e0fce /]# cat /etc/redhat-release AlmaLinux release 8.6 (Sky Tiger)



Thank you!
srbala commented 2 years ago

Try install using the install command dnf install -y diffutils

It is possible diffutils package is an optional package for AL8 existing package list, not for AL9

shenxianpeng commented 2 years ago

Try install using the install command dnf install -y diffutils

It works, thanks.

From the following links, diffutils seems to exist on both AL8 and AL9, but I don't understand why need to install it manually on AL9.

https://repo.almalinux.org/almalinux/8.6/BaseOS/x86_64/os/Packages/diffutils-3.6-6.el8.x86_64.rpm

https://github.com/AlmaLinux/docker-images/blob/c85f20a18171937ee94e25507a3074682095bcbd/kickstarts/almalinux-8-base.ks#L5

https://repo.almalinux.org/almalinux/9/BaseOS/x86_64/os/Packages/diffutils-3.7-12.el9.x86_64.rpm

https://github.com/AlmaLinux/docker-images/blob/c85f20a18171937ee94e25507a3074682095bcbd/kickstarts/almalinux-9-base.ks#L4

srbala commented 2 years ago

From the following links, diffutils seems to exist on both AL8 and AL9, but I don't understand why need to install it manually on AL9.

I agree the diffutils package is available in both repos. The required dependent package or optional package status of diffutils changed in AL8 Vs AL9.

It is possible diffutils package is an optional package for AL8 existing package list, not for AL9

Base docker/containers were created using --setopt install_weak_deps=false to keep the image size optimal.

Check the command below, when you run dnf upgrade, it tends to install optional/weak dependencies which were skipped before. In this case the command Installing weak dependencies as shown below. Try running dnf update --setopt install_weak_deps=false command, which will ignore 5 new package being installed.

% docker run --rm -it almalinux:8
[root@54456cff55f5 /]# dnf update
AlmaLinux 8 - BaseOS                                  3.8 MB/s | 5.9 MB     00:01    
AlmaLinux 8 - AppStream                               5.3 MB/s |  10 MB     00:01    
AlmaLinux 8 - Extras                                   61 kB/s |  18 kB     00:00    
Dependencies resolved.
======================================================================================
 Package                 Arch        Version                     Repository      Size
======================================================================================
Upgrading:
 bash                    x86_64      4.4.20-4.el8_6              baseos         1.5 M
 curl                    x86_64      7.61.1-22.el8_6.4           baseos         351 k
 dbus                    x86_64      1:1.12.8-18.el8_6.1         baseos          40 k
 dbus-common             noarch      1:1.12.8-18.el8_6.1         baseos          45 k
 dbus-daemon             x86_64      1:1.12.8-18.el8_6.1         baseos         239 k
 dbus-libs               x86_64      1:1.12.8-18.el8_6.1         baseos         183 k
 dbus-tools              x86_64      1:1.12.8-18.el8_6.1         baseos          85 k
 device-mapper           x86_64      8:1.02.181-3.el8_6.2        baseos         376 k
 device-mapper-libs      x86_64      8:1.02.181-3.el8_6.2        baseos         409 k
 libcurl-minimal         x86_64      7.61.1-22.el8_6.4           baseos         287 k
 libdnf                  x86_64      0.63.0-8.1.el8_6.alma       baseos         705 k
 openssl-libs            x86_64      1:1.1.1k-7.el8_6            baseos         1.5 M
 pcre2                   x86_64      10.32-3.el8_6               baseos         246 k
 python3-hawkey          x86_64      0.63.0-8.1.el8_6.alma       baseos         116 k
 python3-libdnf          x86_64      0.63.0-8.1.el8_6.alma       baseos         777 k
 systemd                 x86_64      239-58.el8_6.4              baseos         3.6 M
 systemd-libs            x86_64      239-58.el8_6.4              baseos         1.1 M
 systemd-pam             x86_64      239-58.el8_6.4              baseos         483 k
 tzdata                  noarch      2022c-1.el8                 baseos         470 k
 vim-minimal             x86_64      2:8.0.1763-19.el8_6.4       baseos         574 k
Installing dependencies:
 openssl                 x86_64      1:1.1.1k-7.el8_6            baseos         708 k
 xkeyboard-config        noarch      2.28-1.el8                  appstream      782 k
Installing weak dependencies:
 diffutils               x86_64      3.6-6.el8                   baseos         361 k
 libxkbcommon            x86_64      0.9.1-1.el8                 appstream      116 k
 openssl-pkcs11          x86_64      0.4.10-2.el8                baseos          66 k

Transaction Summary
======================================================================================
Install   5 Packages
Upgrade  20 Packages

Total download size: 15 M
Is this ok [y/N]: 
Operation aborted.