fastfetch icon indicating copy to clipboard operation
fastfetch copied to clipboard

[FEAT] dpkg vs apt on debian

Open lgrn opened this issue 1 year ago • 2 comments

Wanted features:

Changing documentation under Installation > Linux > Debian/Ubuntu to use apt instead of dpkg, like:

# apt install ./fastfetch-linux-amd64.deb

Motivation:

My understanding is that dpkg does not take dependencies into account when installing. For this package I guess it's not really a problem as there is only one dependency and it doesn't even specify a version:

$ dpkg -I fastfetch-linux-amd64.deb | grep Depends
 Depends: libc6

This would create an issue in cases where:

  • libc6 is not installed (perhaps extremely unlikely or even impossible, but nevertheless)
  • any future version of fastfetch does state a more specific dependency including version numbering that is then not taken into account.

So unless there is some benefit to using dpkg, apt seems to me as the safer option.

I could just submit a PR, but I thought an issue would be good to discuss it first.

lgrn avatar May 05 '24 11:05 lgrn

and it doesn't even specify a version $ dpkg -I fastfetch-linux-amd64.deb | grep Depends Depends: libc6

Actually it does. fastfetch-linux-amd64.deb depends on glibc 2.31 and fastfetch-linux-aarch64.deb depends on glibc 2.35

I actually have no idea how to specify the dependency of glibc versions. If you do, be sure to submit a PR.

CarterLi avatar May 05 '24 11:05 CarterLi

Just noting that Debian Bookworm ships with 2.36, so in its current state I would assume that it's already using a non-expected version of libc.

From what I can see, Ubuntu Jammy ships with 2.35 and Noble, which has now released, seems to be using 2.39.

I'm not entirely sure how package building works for Debian/Ubuntu but my interpretation of this is that at least on amd64, none of the three variants mentioned above would actually be using 2.31, and the reason that it still works might be that none of the versions mentioned have breaking changes against it.

Regardless, even if keeping the dependency without a version might be a good idea, I'd still think that changing the documentation to use apt would be preferable in case these dependencies do develop or become more specific over time.

lgrn avatar May 05 '24 12:05 lgrn