Re: Splitting udev-udeb out of src:systemd

2025-01-24 Thread Luca Boccassi
On Thu, 23 Jan 2025 at 14:01, Luca Boccassi  wrote:
>
> On Thu, 23 Jan 2025 at 11:56, Luca Boccassi  wrote:
> >
> > On Thu, 23 Jan 2025 at 11:13, Cyril Brulebois  wrote:
> > >
> > > Hi,
> > >
> > > Luca Boccassi  (2025-01-15):
> > > > I plan to split out udev-udeb and libudev1-udeb from the current
> > > > src:systemd source package/repo into a new src:systemd-udeb (forked
> > > > from the old one, so generated udebs will be the same).
> > >
> > > The current set of packages doesn't work as the shlibs now only
> > > references the libudev1 deb (without the extra udeb line), and
> > > mdadm-udeb just picked up a dependency on libudev1.
> > >
> > > (I'll file the mdadm bug report later on, I'm on my way out.)
> >
> > Thanks for the report, this looks like to be the problem, in DEBIAN/shlibs:
> >
> > libudev 1 libudev1 (>= 257.2)
> > udeb: libudev 1 libudev1-udeb (>= 257.2)
> >
> > became
> >
> > libudev 1 libudev1 (>= 257.2)
> >
> > I'll do a few experiments and upload a fix as soon as I have it
>
> Ok I have a fix that results in:
>
> Package: mdadm-udeb
> Source: mdadm
> Version: 4.4-2
> Architecture: amd64
> Maintainer: Daniel Baumann 
> Installed-Size: 1040
> Depends: libc6-udeb (>= 2.40), libudev1-udeb (>= 247)
>
> Which looks correct to me, so I'll upload that. mdadm will require a
> rebuild afterwards. Thanks for finding this!

The fix is in unstable for all release arches, and I've re-tested the
mdadm build and the generated dependencies look correct, so mdadm can
be rebuilt now and it should work again. Please let me know if more
such issues appear.



Re: Splitting udev-udeb out of src:systemd

2025-01-24 Thread Luca Boccassi
On Fri, 24 Jan 2025 at 08:43, Pascal Hambourg  wrote:
>
> On 18/01/2025 at 11:46, Luca Boccassi wrote:
> > On Sat, 18 Jan 2025 at 06:30, Cyril Brulebois  wrote:
> >>
> >> I'm seeing a lot of things that are different, for what should be just a
> >> new revision/move. Are those expected? (diff generated on amd64, diffing
> >> udev-udeb between testing and unstable)
> >>
> >>  Files in second .deb but not in first
> >>  -
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-autosuspend.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-dmi-id.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-drm.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-evdev.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-fido-id.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-infiniband.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-persistent-alsa.rules
> >>  -rw-r--r--  root/root   
> >> /usr/lib/udev/rules.d/60-persistent-storage-mtd.rules
> >>  -rw-r--r--  root/root   
> >> /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-persistent-v4l.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-sensor.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-serial.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-camera.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-joystick.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-memory.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-mouse.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-touchpad.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/78-sound-card.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/81-net-dhcp.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/90-iocost.rules
> >>  -rw-r--r--  root/root   /usr/lib/udev/rules.d/99-systemd.rules
> >>  -rwxr-xr-x  root/root   /usr/lib/udev/dmi_memory_id
> >>  -rwxr-xr-x  root/root   /usr/lib/udev/fido_id
> >>  -rwxr-xr-x  root/root   /usr/lib/udev/iocost
> >>  -rwxr-xr-x  root/root   /usr/lib/udev/mtd_probe
> >>  -rwxr-xr-x  root/root   /usr/lib/udev/v4l_id
> >>
> >>  Files in first .deb but not in second
> >>  -
> >>  -rw-r--r--  root/root   
> >> /usr/lib/systemd/network/73-usb-net-by-mac.link
> >>  -rw-r--r--  root/root   /usr/lib/systemd/network/99-default.link
> (...)
> > I think the changes here are right and I did them intentionally, but
> > correct me if I'm wrong. It seems correct that all rules files (and
> > all helper tools that are called in them) are shipped, rather than an
> > arbitrary subset. Those are all rules and tools that were added since
> > the last time udev-udeb.install was changed.
>
> Does the installer really need rules for joysticks, cameras, v4l... ?
> The new package installed size grows by 500kB (mostly due to additional
> helper tools), which can be significant on low memory systems.

Most of these seem to be useful, yes - storage, network, input
devices, output devices. I don't think it's worth excluding a couple
of small rules files, unless they actively cause trouble.

> > And it seems to me the network files serve no purpose, as there's no
> > networkd udeb, no?
>
> I suspect that bug #1093907 ("predictable" name is not enforced) is
> caused by the removal of these files.

Strange, I guess these are used in some form then. I'll upload shortly
with these added back, thanks for the report.



Re: Splitting udev-udeb out of src:systemd

2025-01-24 Thread Pascal Hambourg

On 18/01/2025 at 11:46, Luca Boccassi wrote:

On Sat, 18 Jan 2025 at 06:30, Cyril Brulebois  wrote:


I'm seeing a lot of things that are different, for what should be just a
new revision/move. Are those expected? (diff generated on amd64, diffing
udev-udeb between testing and unstable)

 Files in second .deb but not in first
 -
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-autosuspend.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-dmi-id.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-drm.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-evdev.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-fido-id.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-infiniband.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-persistent-alsa.rules
 -rw-r--r--  root/root   
/usr/lib/udev/rules.d/60-persistent-storage-mtd.rules
 -rw-r--r--  root/root   
/usr/lib/udev/rules.d/60-persistent-storage-tape.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-persistent-v4l.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-sensor.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/60-serial.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-camera.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-joystick.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-memory.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-mouse.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/70-touchpad.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/78-sound-card.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/81-net-dhcp.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/90-iocost.rules
 -rw-r--r--  root/root   /usr/lib/udev/rules.d/99-systemd.rules
 -rwxr-xr-x  root/root   /usr/lib/udev/dmi_memory_id
 -rwxr-xr-x  root/root   /usr/lib/udev/fido_id
 -rwxr-xr-x  root/root   /usr/lib/udev/iocost
 -rwxr-xr-x  root/root   /usr/lib/udev/mtd_probe
 -rwxr-xr-x  root/root   /usr/lib/udev/v4l_id

 Files in first .deb but not in second
 -
 -rw-r--r--  root/root   /usr/lib/systemd/network/73-usb-net-by-mac.link
 -rw-r--r--  root/root   /usr/lib/systemd/network/99-default.link

(...)

I think the changes here are right and I did them intentionally, but
correct me if I'm wrong. It seems correct that all rules files (and
all helper tools that are called in them) are shipped, rather than an
arbitrary subset. Those are all rules and tools that were added since
the last time udev-udeb.install was changed.


Does the installer really need rules for joysticks, cameras, v4l... ?
The new package installed size grows by 500kB (mostly due to additional 
helper tools), which can be significant on low memory systems.



And it seems to me the network files serve no purpose, as there's no
networkd udeb, no?


I suspect that bug #1093907 ("predictable" name is not enforced) is 
caused by the removal of these files.