Bug 2031873 - Oddly packaged systemd cryptsetup plugins
Summary: Oddly packaged systemd cryptsetup plugins
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: systemd
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: systemd-maint
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2064804 2074833
TreeView+ depends on / blocked
 
Reported: 2021-12-13 15:54 UTC by Ondrej Kozina
Modified: 2022-04-13 08:30 UTC (History)
13 users (show)

Fixed In Version: systemd-250.3-8.fc36
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 2064804 2074833 (view as bug list)
Environment:
Last Closed: 2022-03-29 20:12:47 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Example patch (2.15 KB, application/mbox)
2021-12-13 15:54 UTC, Ondrej Kozina
no flags Details
Fix regex for -devel (1.06 KB, patch)
2022-03-13 23:18 UTC, Evan Anderson
no flags Details | Diff

Description Ondrej Kozina 2021-12-13 15:54:36 UTC
Created attachment 1846108 [details]
Example patch

Description of problem:

Seems that systemd cryptsetup plugins are oddly packaged in systemd-devel sub-package (therefore not installed usually). Not sure what final destination should be, but I have used attached patch to create systemd-cryptsetup-plugins subpackage when I was devel/testing it.

There should probably be some dependencies so that systemd-cryptsetup and systemd-cryptenroll pull the plugins in.

Version-Release number of selected component (if applicable):
systemd-250~rc1-2.fc36

Comment 1 Zbigniew Jędrzejewski-Szmek 2021-12-13 20:26:17 UTC
Hmm, why create a separate subpackage? I'd just put those files in systemd-udev.
Or in other words, when would you install systemd-cryptsetup-plugins but not system-udev?

Comment 2 Zbigniew Jędrzejewski-Szmek 2021-12-14 18:09:25 UTC
I moved those plugins to -udev for now.

Comment 3 Ondrej Kozina 2021-12-14 19:15:31 UTC
Ok, thanks! It seems to work just fine.

Comment 4 Evan Anderson 2022-03-13 19:26:17 UTC
This appears to be broken again on F36. The systemd-devel package is back to providing libcryptsetup-token-system-* libraries. https://koji.fedoraproject.org/koji/rpminfo?rpmID=29600259

Comment 5 Evan Anderson 2022-03-13 23:18:50 UTC
Created attachment 1865807 [details]
Fix regex for -devel

The issue stems from how the devel regex in split-files.py treats .so files. It assumes that any .so file in a lib directory, with the exception of libsystemd-shared-*.so, are development libraries. The newly added libcryptsetup-token* shared libraries break this assumption. The regex needs to be updated to ignore the cryptsetup libs since those will be picked up later by the matching rule for -udev. I've attached a patch that makes this correction.

Comment 6 Milan Broz 2022-03-14 07:10:06 UTC
(In reply to Evan Anderson from comment #5)
> Created attachment 1865807 [details]
> Fix regex for -devel

Can you please reopen the bug then or create a new one? That patch is not in systemd build yet.

Comment 7 Ondrej Kozina 2022-03-16 15:26:09 UTC
I can confirm it reappears in systemd-devel package.

Comment 8 Evan Anderson 2022-03-18 02:17:21 UTC
Looks like the change messed up the packaging even more. systemd no longer provides libsystemd-shared-250.so, which results in broken dependencies. Culprit looks to be the use of re.match instead of re.search in the change [1], combined with the use of the * instead of .* for the libsystemd-shared matching. re.match only matches from the beginning of the line, and * in regex matches 0 or more of the preceding character (in this case, -).

[1] https://src.fedoraproject.org/rpms/systemd/c/0078f9a1029bbfd9dc12e79032072a7ff46182a6?branch=rawhide)

Comment 9 Zbigniew Jędrzejewski-Szmek 2022-03-18 12:41:18 UTC
Arrgh. It was late, and I was tired and didn't want to wait for the full build and I thought the change is simple enough to "just work".
Should be fixed with the version that is building now.

Comment 10 Zbigniew Jędrzejewski-Szmek 2022-03-29 20:12:47 UTC
This was fixed in F36 and rawhide in the last build.


Note You need to log in before you can comment on or make changes to this bug.