Bug 2031873

Summary: Oddly packaged systemd cryptsetup plugins
Product: [Fedora] Fedora Reporter: Ondrej Kozina <okozina>
Component: systemdAssignee: systemd-maint
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: evan, fedoraproject, filbranden, flepied, gmazyland, lnykryn, msekleta, ryncsn, ssahani, s, systemd-maint, yuwatana, zbyszek
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: systemd-250.3-8.fc36 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2064804 2074833 (view as bug list) Environment:
Last Closed: 2022-03-29 20:12:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2064804, 2074833    
Attachments:
Description Flags
Example patch
none
Fix regex for -devel none

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.