Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 650620 - sys-kernel/dracut-crypt-ssh-1.0.6 should unconditionally depend on net-misc/dhcp
Summary: sys-kernel/dracut-crypt-ssh-1.0.6 should unconditionally depend on net-misc/dhcp
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Christian Baumhof
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-16 07:41 UTC by Marcin Mirosław
Modified: 2018-03-24 12:06 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcin Mirosław 2018-03-16 07:41:08 UTC
Hi,
thanks for taking maintaining of dracut-crypt-ssh.
Dependency on net-misc/dhcp is mandatory, withoyt dhcp client dracut doesn't add network module, so without dhcp client you can't even uses static network configuration. Look at this, output from dracut with net-misc/dhcp installed:
# dracut -H '' -f
dracut: Executing: /usr/bin/dracut -H  -f
dracut: dracut module 'bootchart' will not be installed, because command '/sbin/bootchartd' could not be found!
dracut: dracut module 'dash' will not be installed, because command '/bin/dash' could not be found!
dracut: dracut module 'systemd' will not be installed, because command '/systemd' could not be found!
dracut: dracut module 'systemd-bootchart' will not be installed, because command '/systemd-bootchart' could not be found!
dracut: systemd-initrd needs systemd in the initramfs
dracut: systemd-networkd needs systemd in the initramfs
dracut: dracut module 'plymouth' will not be installed, because command 'plymouthd' could not be found!
dracut: dracut module 'plymouth' will not be installed, because command 'plymouth' could not be found!
dracut: dracut module 'plymouth' will not be installed, because command 'plymouth-set-default-theme' could not be found!
dracut: dracut module 'btrfs' will not be installed, because command 'btrfs' could not be found!
dracut: dracut module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut: dracut module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut: dracut module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut: dracut module 'multipath' will not be installed, because command 'multipath' could not be found!
dracut: dracut module 'cifs' will not be installed, because command 'mount.cifs' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsistart' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut: 95nfs: Could not find any command of 'rpcbind portmap'!
dracut: dracut module 'biosdevname' will not be installed, because command 'biosdevname' could not be found!
dracut: dracut-systemd needs systemd-initrd in the initramfs
dracut: dracut module 'dash' will not be installed, because command '/bin/dash' could not be found!
dracut: dracut module 'btrfs' will not be installed, because command 'btrfs' could not be found!
dracut: dracut module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut: dracut module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut: dracut module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut: dracut module 'multipath' will not be installed, because command 'multipath' could not be found!
dracut: dracut module 'cifs' will not be installed, because command 'mount.cifs' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsistart' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut: 95nfs: Could not find any command of 'rpcbind portmap'!
dracut: *** Including module: bash ***
dracut: *** Including module: i18n ***
dracut: i18n_vars not set!  Please set up i18n_vars in  configuration file.
dracut: No KEYMAP configured.
dracut: *** Including module: network ***
dracut: *** Including module: crypt-ssh ***
dracut: Boot SSH RSA key parameters:
dracut:   fingerprint: 2048 SHA256:fjkLL4w8G6eScJLIfQXIIH6Cf09aKcbrrup0AYPjtV0 root@(none) (RSA)
dracut:   bubblebabble: 2048 xitih-setop-casec-begyv-zymih-cyfil-vabod-zetar-kahit-nohul-nyxex root@(none) (RSA)
dracut: Boot SSH ECDSA key parameters:
dracut:   fingerprint: 256 SHA256:QSmVW27MGuEbg+fLdzbA2digmx9jhFklHsLc8rfzzzs root@gentoo (ECDSA)
dracut:   bubblebabble: 256 xehel-sefyk-nuruz-zobiz-higup-gipyr-gigyd-gohut-lonav-vygiz-voxyx root@gentoo (ECDSA)
dracut: *** Including module: crypt ***
dracut: *** Including module: dm ***
dracut: Skipping udev rule: 64-device-mapper.rules
dracut: Skipping udev rule: 60-persistent-storage-dm.rules
dracut: Skipping udev rule: 55-dm.rules
dracut: *** Including module: kernel-modules ***
dracut: *** Including module: kernel-network-modules ***
dracut: *** Including module: lvm ***
dracut: Skipping udev rule: 64-device-mapper.rules
dracut: Skipping udev rule: 56-lvm.rules
dracut: Skipping udev rule: 60-persistent-storage-lvm.rules
dracut: *** Including module: qemu ***
dracut: *** Including module: resume ***
dracut: *** Including module: rootfs-block ***
dracut: *** Including module: terminfo ***
dracut: *** Including module: udev-rules ***
dracut: Skipping udev rule: 40-redhat.rules
dracut: Skipping udev rule: 50-firmware.rules
dracut: Skipping udev rule: 50-udev.rules
dracut: Skipping udev rule: 91-permissions.rules
dracut: Skipping udev rule: 80-drivers-modprobe.rules
dracut: *** Including module: usrmount ***
dracut: *** Including module: base ***
dracut: *** Including module: fs-lib ***
dracut: *** Including module: shutdown ***
dracut: *** Including modules done ***
dracut: *** Installing kernel module dependencies ***
dracut: *** Installing kernel module dependencies done ***
dracut: *** Resolving executable dependencies ***
dracut: *** Resolving executable dependencies done***
dracut: *** Stripping files ***
dracut: *** Stripping files done ***
dracut: *** Store current command line parameters ***
dracut: Stored kernel commandline:
[...]

and without dhcp (network module is not included now):

 # dracut -H '' -f
dracut: Executing: /usr/bin/dracut -H  -f
dracut: dracut module 'bootchart' will not be installed, because command '/sbin/bootchartd' could not be found!
dracut: dracut module 'dash' will not be installed, because command '/bin/dash' could not be found!
dracut: dracut module 'systemd' will not be installed, because command '/systemd' could not be found!
dracut: dracut module 'systemd-bootchart' will not be installed, because command '/systemd-bootchart' could not be found!
dracut: systemd-initrd needs systemd in the initramfs
dracut: systemd-networkd needs systemd in the initramfs
dracut: dracut module 'network' will not be installed, because command 'dhclient' could not be found!
dracut: dracut module 'plymouth' will not be installed, because command 'plymouthd' could not be found!
dracut: dracut module 'plymouth' will not be installed, because command 'plymouth' could not be found!
dracut: dracut module 'plymouth' will not be installed, because command 'plymouth-set-default-theme' could not be found!
dracut: dracut module 'network' will not be installed, because command 'dhclient' could not be found!
dracut: dracut module 'crypt-ssh' depends on 'network', which can't be installed
dracut: dracut module 'btrfs' will not be installed, because command 'btrfs' could not be found!
dracut: dracut module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut: dracut module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut: dracut module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut: dracut module 'multipath' will not be installed, because command 'multipath' could not be found!
dracut: dracut module 'cifs' will not be installed, because command 'mount.cifs' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsistart' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut: 95nfs: Could not find any command of 'rpcbind portmap'!
dracut: dracut module 'biosdevname' will not be installed, because command 'biosdevname' could not be found!
dracut: dracut-systemd needs systemd-initrd in the initramfs
dracut: dracut module 'dash' will not be installed, because command '/bin/dash' could not be found!
dracut: dracut module 'crypt-ssh' depends on 'network', which can't be installed
dracut: dracut module 'btrfs' will not be installed, because command 'btrfs' could not be found!
dracut: dracut module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut: dracut module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut: dracut module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut: dracut module 'multipath' will not be installed, because command 'multipath' could not be found!
dracut: dracut module 'cifs' will not be installed, because command 'mount.cifs' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsistart' could not be found!
dracut: dracut module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut: 95nfs: Could not find any command of 'rpcbind portmap'!
dracut: *** Including module: bash ***
dracut: *** Including module: i18n ***
dracut: i18n_vars not set!  Please set up i18n_vars in  configuration file.
dracut: No KEYMAP configured.
dracut: *** Including module: crypt ***
dracut: *** Including module: dm ***
dracut: Skipping udev rule: 64-device-mapper.rules
dracut: Skipping udev rule: 60-persistent-storage-dm.rules
dracut: Skipping udev rule: 55-dm.rules
dracut: *** Including module: kernel-modules ***
dracut: *** Including module: lvm ***
dracut: Skipping udev rule: 64-device-mapper.rules
dracut: Skipping udev rule: 56-lvm.rules
dracut: Skipping udev rule: 60-persistent-storage-lvm.rules
dracut: *** Including module: qemu ***
dracut: *** Including module: resume ***
dracut: *** Including module: rootfs-block ***
dracut: *** Including module: terminfo ***
dracut: *** Including module: udev-rules ***
dracut: Skipping udev rule: 40-redhat.rules
dracut: Skipping udev rule: 50-firmware.rules
dracut: Skipping udev rule: 50-udev.rules
dracut: Skipping udev rule: 91-permissions.rules
dracut: Skipping udev rule: 80-drivers-modprobe.rules
dracut: *** Including module: usrmount ***
dracut: *** Including module: base ***
dracut: *** Including module: fs-lib ***
dracut: *** Including module: shutdown ***
dracut: *** Including modules done ***
dracut: *** Installing kernel module dependencies ***
dracut: *** Installing kernel module dependencies done ***
dracut: *** Resolving executable dependencies ***
dracut: *** Resolving executable dependencies done***
dracut: *** Stripping files ***
dracut: *** Stripping files done ***
dracut: *** Store current command line parameters ***
dracut: Stored kernel commandline:
[...]
Comment 1 Marcin Mirosław 2018-03-20 08:03:25 UTC
Also sys-kernel/dracut isn't needed for build time, it can be only runtime dependency.
Comment 2 Christian Baumhof 2018-03-21 21:17:56 UTC
* the configure script does check for dracut, and fails if it doesn't find it. Since dracut-crypt-ssh is pretty useless without dracut, I see no sense in overriding that, even if it wasn't *actually* needed at compile time.

* I was sure that I tested building a static IP image without dhclient available, but I took a look into the network module source, and indeed: it unconditionally depends on dhclient. I'll see to fixing this.
Comment 3 Marcin Mirosław 2018-03-21 22:34:53 UTC
My fault, indeed dracut is needed for compile time.
Comment 4 Christian Baumhof 2018-03-21 23:34:42 UTC
No problem.

I fixed the dependency. As soon as the pull request is accepted the fix will land in portage.

Thanks for reporting the issue.
Comment 5 Larry the Git Cow gentoo-dev 2018-03-24 12:06:52 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ebf0a02b2baa7f056f7723d0719e9aab29397528

commit ebf0a02b2baa7f056f7723d0719e9aab29397528
Author:     Christian Baumhof <gentoo@asgar.de>
AuthorDate: 2018-03-21 23:23:41 +0000
Commit:     Michał Górny <mgorny@gentoo.org>
CommitDate: 2018-03-24 12:06:34 +0000

    sys-kernel/dracut-crypt-ssh: bump to fix RDEPEND
    
    This package requires the network module of dracut, which in turn
    requires dhclient, even if used with a static network configuration.
    Thus the dependency on net-misc/dhclient is unconditional.
    
    Suggested-by: Marcin Mirosław
    Closes: https://bugs.gentoo.org/650620
    Closes: https://github.com/gentoo/gentoo/pull/7545
    Package-Manager: Portage-2.3.24, Repoman-2.3.6

 ...acut-crypt-ssh-1.0.6.ebuild => dracut-crypt-ssh-1.0.6-r1.ebuild} | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)