Subject: apt: Unexpected linkage dependency on libsystemd

From: Andreas Messer <[email-masked]>
Date: Mon, 7 Oct 2019 19:50:34 +0200

Package: apt
Version: 1.8.2
Severity: normal

I observed a linkage dependency on libsystemd. This was unexpected for me
since I wouldn't expect a package manager depend on it. A package manager should
be as lean as possible.

Having reviewed the code, the only function using libsystemd is used to talk on dbus 
to inhibit system shutdown. Something which will work for systemd only.

Would it make sense to use dlopen() to dynamically load libsystemd when needed
and avoid the hard dependency on libsystemd? If systemd is installed, libsystemd
will be available anyways.

-- Package-specific info:

-- (no /etc/apt/preferences present) --
-- (/etc/apt/preferences.d/avoid-systemd present, but not submitted) --
-- (/etc/apt/sources.list present, but not submitted) --
-- (/etc/apt/sources.list.d/devuan.list present, but not submitted) --

-- System Information:
Debian Release: 10.0
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-6-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages apt depends on:
ii  adduser                 3.118
ii  debian-archive-keyring  2019.1
ii  gpgv                    2.2.12-1+deb10u1
ii  libapt-pkg5.0           1.8.2
ii  libc6                   2.28-10
ii  libgcc1                 1:8.3.0-6
ii  libgnutls30             3.6.7-4
ii  libseccomp2             2.3.3-4
ii  libstdc++6              8.3.0-6

Versions of packages apt recommends:
ii  ca-certificates  20190110

Versions of packages apt suggests:
pn  apt-doc         <none>
ii  aptitude        0.8.11-7
ii  dpkg-dev        1.19.7
ii  gnupg           2.2.12-1+deb10u1
ii  powermgmt-base  1.34
ii  synaptic        0.84.6

-- no debconf information

-- 
gnuPG keyid: 8C2BAF51
fingerprint: 28EE 8438 E688 D992 3661 C753 90B3 BAAA 8C2B AF51

---

From: Mark Hindley <[email-masked]>
Date: Sat, 28 Mar 2020 12:02:20 +0000

> since I wouldn't expect a package manager depend on it. A package manager should

Andreas,

Thanks for this.

You are quite right that this dependency would be much better avoided.

I am interested in us fixing this in ceres/chimaera.

I know you have patched version 1.8  to remove libsystemd0. Would you care to
update that for the current ceres/chimaera version 2.0.1? We can then look at
including it in devuan-packages.

Thanks

Mark

---

From: Andreas Messer <[email-masked]>
Date: Wed, 1 Apr 2020 22:49:04 +0200

Mark,

> including it in devuan-packages.

Sorry, missed that mail. Yes I can give it a try tomorrow. 

cheers,
Andreas