+++ This bug was initially created as a clone of Bug #1121646 +++ Description of problem: Installing git pulls in several packages, including systemd for example: Nainstalováno: git.x86_64 0:2.0.1-1.fc22 Nainstalované závislosti: acl.x86_64 0:2.2.52-6.fc22 cryptsetup-libs.x86_64 0:1.6.5-2.fc22 dbus.x86_64 1:1.8.6-2.fc22 dbus-libs.x86_64 1:1.8.6-2.fc22 device-mapper.x86_64 0:1.02.86-2.fc22 device-mapper-libs.x86_64 0:1.02.86-2.fc22 fipscheck.x86_64 0:1.4.1-6.fc22 fipscheck-lib.x86_64 0:1.4.1-6.fc22 kmod.x86_64 0:18-2.fc22 kmod-libs.x86_64 0:18-2.fc22 less.x86_64 0:458-12.fc22 libedit.x86_64 0:3.1-7.20140213cvs.fc22 libgnome-keyring.x86_64 0:3.12.0-2.fc21 libseccomp.x86_64 0:2.1.1-2.fc21 openssh.x86_64 0:6.6.1p1-4.fc22 openssh-clients.x86_64 0:6.6.1p1-4.fc22 perl-Error.noarch 1:0.17022-2.fc21 perl-Git.noarch 0:2.0.1-1.fc22 perl-TermReadKey.x86_64 0:2.32-2.fc21 qrencode-libs.x86_64 0:3.4.2-2.fc21 rsync.x86_64 0:3.1.1-1.fc21 systemd.x86_64 0:215-4.fc22 Aktualizované závislosti: systemd-libs.x86_64 0:215-4.fc22 Why would git need systemd is not obvious for me. Please reduce the dependencies. Version-Release number of selected component (if applicable): # rpm -q git git-2.0.1-1.fc22.x86_64 How reproducible: Always Steps to Reproduce: 1. $ mock -r fedora-rawhide-x86_64 --install git 2. 3. Actual results: Myriad of dependencies is installed. Expected results: Only relevant dependencies are installed (and systemd should not be amongst them IMO) Additional info: --- Additional comment from Ondrej Oprala on 2014-07-21 15:39:43 CEST --- Git requires rsync, which seems to pull in systemd as well :/ --- Additional comment from Vít Ondruch on 2014-07-21 16:00:15 CEST --- Come on, if this is problem or RSync, then it should be reassigned to RSync. If it is problem of git as well as RSync, then please fix the issue on your side and pursue the same fix for RSync. I don't mind opening bug for RSync, but it seems you know better about this dependency. Thank you. --- Additional comment from Ondrej Oprala on 2014-07-22 14:28:19 CEST --- Unfortunately Rsync is not the only dependency that pulls in systemd. There's libcurl -> nss -> nss-sysinit -> coreutils -> util-linux -> systemd as well (and I absolutely cannot kick out libcurl :) ). Now, rsync requires systemd-units because of rsyncd.{socket,service} files it installs. Removing systemd as a dependency of util-linux however, would be a bit more difficult. The default installation of git along with it's necessary subpackages doesn't require systemd directly, only the "standalone" git-daemon package does that.
This are the reduced dependencies just for rsync: Installed: rsync.x86_64 0:3.1.1-1.fc21 Dependency Installed: acl.x86_64 0:2.2.52-6.fc22 cryptsetup-libs.x86_64 0:1.6.5-2.fc22 dbus.x86_64 1:1.8.6-2.fc22 dbus-libs.x86_64 1:1.8.6-2.fc22 device-mapper.x86_64 0:1.02.87-1.fc22 device-mapper-libs.x86_64 0:1.02.87-1.fc22 fipscheck.x86_64 0:1.4.1-6.fc22 fipscheck-lib.x86_64 0:1.4.1-6.fc22 kmod.x86_64 0:18-2.fc22 kmod-libs.x86_64 0:18-2.fc22 libseccomp.x86_64 0:2.1.1-2.fc21 qrencode-libs.x86_64 0:3.4.2-2.fc21 systemd.x86_64 0:215-7.fc22
I think the split up of package into client and systemd/server part is reasonable.
Great! Thanks. Looking forward to it.
Why is it a problem depending on systemd in Fedora? On the other hand, why should such dependency be explicit in packages when systemd is part of the base system?
systemd-libs is part of minimal installation, that is true, but not systemd. Every possibly unnecessary dependency is bloating disk space, slow downs installation, etc.
(In reply to Vít Ondruch from comment #5) > systemd-libs is part of minimal installation, that is true, but not systemd. > Every possibly unnecessary dependency is bloating disk space, slow downs > installation, etc. Can a system without systemd have packages carrying systemd services installed? How would the mechanics around systemd preset work? Is the minimal install expected to work without any such services? Is there any relevant documentation?
I am not systemd expert, but I see no reason, why the service file could not be in its own subpackage, which in turn would depend on systemd. How to package service files is documented here [1]. [1] https://fedoraproject.org/wiki/Packaging:Systemd
(In reply to Vít Ondruch from comment #7) > why the service file could not be in its own subpackage I guess you advocate this idea specifically for rsync and other tools that are more often used as user commands than listening services. A subpackage called rsync-server carrying everything that only a listening server needs (even if it was only a service file in this case) would work for you then.
(In reply to Pavel Šimerda (pavlix) from comment #8) Exactly :)
Please check if the rawhide build works as expected.
Awesome, there are no dependencies installed now: Installed: rsync.x86_64 0:3.1.1-3.fc22 BTW, shouldn't be the -daemon package noarch?
(In reply to Vít Ondruch from comment #11) > BTW, shouldn't be the -daemon package noarch? Fixed.