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

Remove xterm and libfile-mimeinfo-perl both has no effect on the temp… #84

Closed
wants to merge 1 commit into from

Conversation

Nurmagoz
Copy link
Contributor

@Nurmagoz Nurmagoz commented Oct 6, 2024

user@Debian-full:~$ sudo apt remove --purge libfile-mimeinfo-perl*
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'libfile-mimeinfo-perl' for glob 'libfile-mimeinfo-perl*'
The following packages were automatically installed and are no longer required:
  libfile-basedir-perl libfile-desktopentry-perl libio-stringy-perl libipc-system-simple-perl
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libfile-mimeinfo-perl*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 119 kB disk space will be freed.
Do you want to continue? [Y/n] 

or xterm, doesnt remove any qubes package.

…late

```
user@Debian-full:~$ sudo apt remove --purge libfile-mimeinfo-perl*
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'libfile-mimeinfo-perl' for glob 'libfile-mimeinfo-perl*'
The following packages were automatically installed and are no longer required:
  libfile-basedir-perl libfile-desktopentry-perl libio-stringy-perl libipc-system-simple-perl
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libfile-mimeinfo-perl*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 119 kB disk space will be freed.
Do you want to continue? [Y/n] 
```

or xterm, doesnt remove any qubes package.
@@ -3,6 +3,4 @@ sudo
dmsetup
psmisc
gnupg
xterm
Copy link
Member

Choose a reason for hiding this comment

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

Some terminal emulator must remain, and xterm is pretty small so it fits the minimal template.

Copy link

Choose a reason for hiding this comment

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

Can't qvm-console-dispvm be used instead?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I see, in this case better to be shifted to qubes-vm-recommended instead?

Maybe i suggest to replace xterm with xfce4-terminal? why?: because it has copy/paste feature inside qubes and other features (saving terminal output to text file..etc) what do you think?

Copy link
Member

Choose a reason for hiding this comment

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

But xfce4-terminal has more dependencies, so it will make minimal template bigger...

Copy link
Member

Choose a reason for hiding this comment

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

Some terminal emulator must remain, and xterm is pretty small so it fits the minimal template.

Sure. Would it be worth adding it to a Qubes meta package instead of is having xterm "loose" in packages_minimal.list best?

Copy link
Member

Choose a reason for hiding this comment

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

No, it isn't 140kB, it's several MB:

root@debian-12-minimal:~# apt -V install xfce4-terminal
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
   adwaita-icon-theme (43-1)
   at-spi2-common (2.46.0-5)
   at-spi2-core (2.46.0-5)
   exo-utils (4.18.0-1)
   gsettings-desktop-schemas (43.0-1)
   gtk-update-icon-cache (3.24.38-2~deb12u2)
   hicolor-icon-theme (0.17-2)
   libatk-bridge2.0-0 (2.46.0-5)
   libatk1.0-0 (2.46.0-5)
   libatspi2.0-0 (2.46.0-5)
   libavahi-client3 (0.8-10)
   libavahi-common-data (0.8-10)
   libavahi-common3 (0.8-10)
   libcolord2 (1.4.6-2.2)
   libcups2 (2.4.2-3+deb12u8)
   libexo-2-0 (4.18.0-1)
   libexo-common (4.18.0-1)
   libgtk-3-0 (3.24.38-2~deb12u2)
   libgtk-3-bin (3.24.38-2~deb12u2)
   libgtk-3-common (3.24.38-2~deb12u2)
   librsvg2-common (2.54.7+dfsg-1~deb12u1)
   libstartup-notification0 (0.12-6+b1)
   libvte-2.91-0 (0.70.6-2~deb12u1)
   libvte-2.91-common (0.70.6-2~deb12u1)
   libwayland-cursor0 (1.21.0-1)
   libwayland-egl1 (1.21.0-1)
   libxcb-util1 (0.4.0-1+b1)
   libxfce4ui-2-0 (4.18.2-2)
   libxfce4ui-common (4.18.2-2)
   libxfce4util-bin (4.18.1-2)
   libxfce4util-common (4.18.1-2)
   libxfce4util7 (4.18.1-2)
   libxfconf-0-3 (4.18.0-2)
   libxkbcommon0 (1.5.0-1)
   libxtst6 (2:1.2.3-1.1)
   xfconf (4.18.0-2)
Suggested packages:
   colord (1.4.6-2.2)
   cups-common (2.4.2-3+deb12u8)
   gvfs (1.50.3-1)
   devhelp (43.0-3)
The following NEW packages will be installed:
   adwaita-icon-theme (43-1)
   at-spi2-common (2.46.0-5)
   at-spi2-core (2.46.0-5)
   exo-utils (4.18.0-1)
   gsettings-desktop-schemas (43.0-1)
   gtk-update-icon-cache (3.24.38-2~deb12u2)
   hicolor-icon-theme (0.17-2)
   libatk-bridge2.0-0 (2.46.0-5)
   libatk1.0-0 (2.46.0-5)
   libatspi2.0-0 (2.46.0-5)
   libavahi-client3 (0.8-10)
   libavahi-common-data (0.8-10)
   libavahi-common3 (0.8-10)
   libcolord2 (1.4.6-2.2)
   libcups2 (2.4.2-3+deb12u8)
   libexo-2-0 (4.18.0-1)
   libexo-common (4.18.0-1)
   libgtk-3-0 (3.24.38-2~deb12u2)
   libgtk-3-bin (3.24.38-2~deb12u2)
   libgtk-3-common (3.24.38-2~deb12u2)
   librsvg2-common (2.54.7+dfsg-1~deb12u1)
   libstartup-notification0 (0.12-6+b1)
   libvte-2.91-0 (0.70.6-2~deb12u1)
   libvte-2.91-common (0.70.6-2~deb12u1)
   libwayland-cursor0 (1.21.0-1)
   libwayland-egl1 (1.21.0-1)
   libxcb-util1 (0.4.0-1+b1)
   libxfce4ui-2-0 (4.18.2-2)
   libxfce4ui-common (4.18.2-2)
   libxfce4util-bin (4.18.1-2)
   libxfce4util-common (4.18.1-2)
   libxfce4util7 (4.18.1-2)
   libxfconf-0-3 (4.18.0-2)
   libxkbcommon0 (1.5.0-1)
   libxtst6 (2:1.2.3-1.1)
   xfce4-terminal (1.0.4-1)
   xfconf (4.18.0-2)
0 upgraded, 37 newly installed, 0 to remove and 34 not upgraded.
Need to get 16.9 MB of archives.
After this operation, 80.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No, it isn't 140kB, it's several MB

Oh yeah because the dependencies tree if not already presented the size will get bigger. got you, thanks.

Copy link

Choose a reason for hiding this comment

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

But xfce4-terminal has more dependencies, so it will make minimal template bigger...

Sorry but I still don't see why qvm-console-dispvm can't be used instead? This way no terminal emulators will be available on a minimal template and all terminal activities will be conducted in a disposable vm. Is there a reason why a terminal emulator has to be included in the template?

Copy link
Member

Choose a reason for hiding this comment

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

Removing xterm doesn't save much (it looks like together with all the dependencies, it's below 1MB), but not having any terminal emulator greatly degrades usability for customizing the template (which is the point of minimal templates). qvm-console-dispvm works fine as a last resort method, but it has several limitations:

  • only one console, you can't really open multiple windows to have multiple shells
  • you are more or less forced to use 80x24 size
  • many terminal control sequences don't work, making various editors etc hard to use (not impossible, but hard)

If one really don't want xterm in their template, it can be removed. Technically, it should be a dependency of qubes-core-agent package (like it is in the rpm package), as it does use xterm in few places like qubes.InstallUpdatesGUI service, but since it seems to be controversial topic, I'm not going to fix this, so you can remove xterm if you really want.

Copy link

Choose a reason for hiding this comment

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

Thanks for the insight.

@@ -3,6 +3,4 @@ sudo
dmsetup
psmisc
gnupg
xterm
libfile-mimeinfo-perl
Copy link
Member

Choose a reason for hiding this comment

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

This may require adding it to documentation for minimal template - from what I see, it's one of the options that xdg-open uses (which we do use), and if you start with minimal template, it's probably the only option. So, without this package opening files from other qubes (for example via qvm-open-in-vm) may stop working.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Interesting, then thats as well should be add it to qubes-vm-recommended, because it has usefulness behind it. (not sure if it possible (easily) to rewrite this functionality into a different better language instead)

Copy link
Member

Choose a reason for hiding this comment

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

The problem (similar to xterm) is that libfile-mimeinfo-perl is just one of the backends xdg-open can use (it's the fallback one, if none other is found). Normally xdg-open tries to use one for matching environment (exo for Xfce, gnome-open for Gnome etc). I'd rather avoid listing all possible alternatives in package dependencies (that will make template customization harder), and I don't see virtual name for this feature in Debian.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I see, then we can keep this.

@Nurmagoz Nurmagoz closed this Oct 10, 2024
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