Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Re)move Debian packages in packages.list and packages_minimal.list #6566

Open
adrelanos opened this issue Apr 28, 2021 · 30 comments
Open

(Re)move Debian packages in packages.list and packages_minimal.list #6566

adrelanos opened this issue Apr 28, 2021 · 30 comments
Labels
C: Debian/Ubuntu P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. pr submitted A pull request has been submitted for this issue. T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality.

Comments

@adrelanos
Copy link
Member

adrelanos commented Apr 28, 2021

What's the purpose of these files?

Why are some packages installed there?

full list:

ncurses-term
aptitude
tasksel
sudo
dmsetup
psmisc
gnupg
xterm
libfile-mimeinfo-perl
libglib2.0-bin
ltrace
strace
haveged
wireless-tools
wpasupplicant
dbus-x11

For example, having wpasupplicant there seems most obviously unnecessary. That results in the Whonix template having this package, although not required.

Wouldn't it be better if these packages where referenced in qubes meta packages?

@adrelanos adrelanos added P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists. labels Apr 28, 2021
@andrewdavidwong andrewdavidwong added T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. C: Debian/Ubuntu and removed T: bug Type: bug report. A problem or defect resulting in unintended behavior in something that exists. labels Apr 29, 2021
@andrewdavidwong andrewdavidwong added this to the TBD milestone Apr 29, 2021
@unman
Copy link
Member

unman commented Apr 29, 2021

We could move those to "vm-recommended" where the networking stuff is included.
I dont think the rest are candidates for removal, but I'll check.

@3hhh
Copy link

3hhh commented Jul 1, 2022

haveged nowadays only makes sense for older kernels as newer ones do its job inside the kernel, see #673.

@Nurmagoz
Copy link

Nurmagoz commented Jul 7, 2023

#8330 related.

@marmarek
Copy link
Member

Wireless tools removed here: QubesOS/qubes-builder-debian#74

@Nurmagoz
Copy link

Nurmagoz commented Jul 23, 2023

PR: Remove strace and ltrace

QubesOS/qubes-builder-debian#75

@andrewdavidwong andrewdavidwong added the pr submitted A pull request has been submitted for this issue. label Jul 23, 2023
@Nurmagoz
Copy link

PR: Remove haveged and dbus-x11

QubesOS/qubes-builder-debian#77

@unman
Copy link
Member

unman commented Jul 24, 2023 via email

@unman
Copy link
Member

unman commented Jul 24, 2023 via email

@Nurmagoz
Copy link

The trace packages remain useful for troubleshooting, and have marginal impact.

Thats the exact reason why they need to be removed. (read the title of the ticket)

@Nurmagoz
Copy link

I do not think haveged is unnecessary - it still has a place.

Needs evidence to be proven.

dbus-x11 is marginal, but is of use for KDE.

KDE is Wayland now, but nevertheless, it still requires evidence to be proven.

@3hhh
Copy link

3hhh commented Jul 24, 2023 via email

@adrelanos
Copy link
Member Author

The trace packages remain useful for troubleshooting, and have marginal impact. What is the reason for removing them?

The idea of this ticket is to remove these packages from packages_minimal.list and if worthwhile, properly reintroduce these by adding these to a Qubes meta packages (qubes-meta-packages).

haveged is still useful for entropy with old kernels (e.g. some in-VM kernels). Admittedly these are uncommon configurations for Qubes OS, but they may happen.

Which distributions? In other words, how long do we have to carry this legacy?

It may be better to keep it and install a systemd condition to not start the daemon on newer kernels. The haveged author proposed just that a long time ago. Possibly it even made its way into debian by now - I haven't checked.

Seems a lot effort just to support some outdated (possibly already deprecated?) templates.

dbus-x11 is marginal, but is of use for KDE.

What's the benefit for dbus-x11?

If dbus-x11 is required, let's properly add it to a Qubes meta package instead?

@Nurmagoz
Copy link

Which distributions? In other words, how long do we have to carry this legacy?

Not debian for sure, debian bookworm DVD version (let alone CD version) doesnt has haveged by default.

What's the benefit for dbus-x11?

Zero benefit, Debian bookworm KDE-DVD version doesnt has dbus-x11 by default (let alone CD version).

So unless there is a critical reason why we should have these packages, they're just extra, useless packages not even included by default upstream.

Please, unless someone has proven evidence of the critical benefits of any of the removed packages, they can share it here. Otherwise, this is just spamming the ticket with outdated theories.

@andrewdavidwong
Copy link
Member

andrewdavidwong commented Jul 24, 2023

Why are people arguing about which non-Qubes packages are valuable, useful, or desirable for a Debian template? Isn't our policy about upstream distros intended to avoid precisely these sorts of arguments?

@marmarek
Copy link
Member

The minimal template intentionally deviate from this policy, to be as small base as possible. But this goes only one way - if a package isn't included in default package set of a distribution, surely it shouldn't be included in the minimal template either (unless needed by something qubes-specific, ofc).

@andrewdavidwong
Copy link
Member

The minimal template intentionally deviate from this policy, to be as small base as possible.

Yes, but in that case, it's still irrelevant whether a package is valuable, useful, or desirable. The standard for minimal templates isn't "be as small as possible while including all of the valuable, useful, and desirable stuff." It's just "be as small as possible."

In this case, "possible" really means something more like "practical" or "feasible." In other words, the minimal templates aim to be as small as possible while still serving their function as templates. So, people arguing over whether packages are valuable, useful, or desirable in the context of minimal templates are having the wrong debate. They must instead argue that the template will not work or will not be able to serve its purpose without the package in question, which is a much higher bar.

@Nurmagoz
Copy link

Thank you @marmarek @andrewdavidwong.

#6566 (comment) can we proceed so we i can post the next PR?

@duck09
Copy link

duck09 commented Jul 23, 2024

What about the packages listed in this forum post?

@unman
Copy link
Member

unman commented Jul 25, 2024 via email

@duck09
Copy link

duck09 commented Jul 25, 2024

The minimal template intentionally deviate from this policy, to be as small base as possible. But this goes only one way - if a package isn't included in default package set of a distribution, surely it shouldn't be included in the minimal template either (unless needed by something qubes-specific, ofc).

Does your answer not contradict the comment by marmarek earlier in this thread? This is unless the packages mentioned in the forum post are included by default, I am not sure if that is the case or not.

@adrelanos
Copy link
Member Author

May I suggest to limit the scope of this ticket?

The scope being these two source code files only:

Packages listed there either being removed or moved to qubes meta packages.

This would be specifically useful in case of packages_minimal.list cleanup. Because then other distributions Templates built using qubes-builder-debian can have less packages installed by default.

If a package is not listed in these files, I would appreciate if that could be discussed in a different ticket, mailing list discussion or forum topic.

@andrewdavidwong andrewdavidwong changed the title avoid installation of unnecessary packages / clean up packages_ in Debian based templates (Re)move Debian packages in packages.list and packages_minimal.list Jul 27, 2024
@andrewdavidwong
Copy link
Member

Attempted to update title accordingly.

@Nurmagoz
Copy link

Nurmagoz commented Oct 1, 2024

PR remove aptitude and tasksel:

QubesOS/qubes-builder-debian#83

QubesOS/qubes-builder-debian@3552ef8

@Nurmagoz
Copy link

Nurmagoz commented Oct 6, 2024

PR remove xterm and libfile-mimeinfo-perl:

QubesOS/qubes-builder-debian#84

QubesOS/qubes-builder-debian@3724896

@duck09
Copy link

duck09 commented Oct 6, 2024

Is the inclusion of gnupg and libglib2.0-bin necessary?

@Nurmagoz
Copy link

Nurmagoz commented Oct 9, 2024

Is the inclusion of gnupg and libglib2.0-bin necessary?

QubesOS/qubes-builder-debian#85

@duck09
Copy link

duck09 commented Oct 9, 2024

What's the purpose of these files?

Why are some packages installed there?

full list:

ncurses-term
aptitude
tasksel
sudo
dmsetup
psmisc
gnupg
xterm
libfile-mimeinfo-perl
libglib2.0-bin
ltrace
strace
haveged
wireless-tools
wpasupplicant
dbus-x11

For example, having wpasupplicant there seems most obviously unnecessary. That results in the Whonix template having this package, although not required.

Wouldn't it be better if these packages where referenced in qubes meta packages?

Is the Whonix template built from a minimal debian template?

@Nurmagoz
Copy link

Is the Whonix template built from a minimal debian template?

Yes

@duck09
Copy link

duck09 commented Oct 11, 2024

Do you know if only the Gateway is based on the minimal template or is the Workstation based on it too?

@Nurmagoz
Copy link

Nurmagoz commented Oct 12, 2024

Do you know if only the Gateway is based on the minimal template or is the Workstation based on it too?

We have a section specified for qubes questions in our forum you can ask there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: Debian/Ubuntu P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. pr submitted A pull request has been submitted for this issue. T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality.
Projects
None yet
Development

No branches or pull requests

7 participants