Skip to content

fix(26.04): util-linux no longer needs liblastlog - #1147

Open
cjdcordeiro wants to merge 2 commits into
canonical:ubuntu-26.04from
cjdcordeiro:26.04/fix-util-linux
Open

fix(26.04): util-linux no longer needs liblastlog#1147
cjdcordeiro wants to merge 2 commits into
canonical:ubuntu-26.04from
cjdcordeiro:26.04/fix-util-linux

Conversation

@cjdcordeiro

@cjdcordeiro cjdcordeiro commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Proposed changes

Removed unneeded dependency from util-linux_login.

IMPORTANT NOTE: this is an interesting case where the opening of a new release carried a change that cause orphaned dependencies. In #662, @lengau introduced a missing dependency to util-linux, that was needed for the lslogins binary.

In 26.04, that binary is no longer in the pkg and consequently no longer in the util-linux_login slice. However, the liblastlog2-2 is left over from #662, and is getting unnecessarily installed. That's not good, cause it goes against what we try to do with Chisel -> remove everything that is unnecessary

I noticed this because liblastlog2-2 brings in sqlite3 libs too, which completely caught me off guard.

So what's the takeaway? We're doing a good job at detecting and testing dependencies that are missing, and we don't do enough checks to ensure that we are not shipping unnecessary. lslogins was removed in https://github.com/canonical/chisel-releases/pull/857/changes#diff-19d63239e73ac43045433aa7c62758e215be4782ad63accaec2435ddaf8254d0L156. The CI that list the dependency diff did NOT run in #857, unfortunately. That would have (hopefully) said that there was an unnecessary dependency. BUT, even with that, it would have just been an informative comment, while IMO this should've been a CI error. @lczyk can you pls ACK, weigh in, and if agreeing, create a candidate roadmap item for us to tackle this in future releases?

Related issues/PRs

#662

Forward porting

#1146

Checklist

@github-actions

Copy link
Copy Markdown

Test Coverage

Average Total Coverage: 87.50%


Arch: aarch64

Coverage: 87.50%

util-linux: 🌂 87.50% (3 missing)
util-linux_bins
util-linux_mime
util-linux_services

Arch: ppc64le

Coverage: 87.50%

util-linux: 🌂 87.50% (3 missing)
util-linux_bins
util-linux_mime
util-linux_services

Arch: s390x

Coverage: 87.50%

util-linux: 🌂 87.50% (3 missing)
util-linux_bins
util-linux_mime
util-linux_services

Arch: x86_64

Coverage: 87.50%

util-linux: 🌂 87.50% (3 missing)
util-linux_bins
util-linux_mime
util-linux_services

@github-actions

Copy link
Copy Markdown

Diff of dependencies:

slices/util-linux.yaml
@@ -1,3 +1,4 @@
+base-files
 libblkid1
 libc6
 libcap-ng0

@lengau lengau left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

The login slice ships only sulogin, whose DT_NEEDED is libc6, libcrypt1
and libselinux1 on every supported architecture. libsmartcols1 and
libsystemd0 were only ever required by lslogins, which moved to
util-linux-extra.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants