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

Debian Templates: /usr/bin/qubes-desktop-file-install - ImportError: No module named xdg.DesktopEntry #1113

Closed
adrelanos opened this Issue Aug 11, 2015 · 9 comments

Comments

Projects
None yet
3 participants
@adrelanos
Member

adrelanos commented Aug 11, 2015

Setting up qubes-core-agent (3.0.15-1+deb8u1) ...

Configuration file '/etc/fstab'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
 ==> Using new file as you requested.
Installing new version of config file /etc/fstab ...

Configuration file '/etc/iptables/rules.v4'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
 ==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v4 ...

Configuration file '/etc/iptables/rules.v6'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
 ==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v6 ...
Running in chroot, ignoring request.
Adding 'diversion of /etc/init/plymouth-shutdown.conf to /etc/init/plymouth-shutdown.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/prefdm.conf to /etc/init/prefdm.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/splash-manager.conf to /etc/init/splash-manager.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/start-ttys.conf to /etc/init/start-ttys.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/tty.conf to /etc/init/tty.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/serial.conf to /etc/init/serial.conf.qubes-orig by qubes-core-agent'
Failed connect to local daemon
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Setting up qubes-gui-agent (3.0.10+deb8u1) ...
Processing triggers for libc-bin (2.19-18) ...
Processing triggers for menu (2.1.47) ...
Processing triggers for systemd (215-17+deb8u1) ...
Processing triggers for dbus (1.8.18-0+deb8u1) ...
Processing triggers for qubes-core-agent (3.0.15-1+deb8u1) ...
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-file-install", line 88, in <module>
    import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry

Missing dependency? (Flavor: minimal + no-recommends)

@nrgaway

This comment has been minimized.

Show comment
Hide comment
@nrgaway

nrgaway Aug 11, 2015

On 11 August 2015 at 00:39, Patrick Schleizer notifications@github.com
wrote:

Setting up qubes-core-agent (3.0.15-1+deb8u1) ...

Configuration file '/etc/fstab'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/fstab ...

Configuration file '/etc/iptables/rules.v4'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v4 ...

Configuration file '/etc/iptables/rules.v6'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v6 ...
Running in chroot, ignoring request.
Adding 'diversion of /etc/init/plymouth-shutdown.conf to /etc/init/plymouth-shutdown.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/prefdm.conf to /etc/init/prefdm.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/splash-manager.conf to /etc/init/splash-manager.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/start-ttys.conf to /etc/init/start-ttys.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/tty.conf to /etc/init/tty.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/serial.conf to /etc/init/serial.conf.qubes-orig by qubes-core-agent'
Failed connect to local daemon
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Setting up qubes-gui-agent (3.0.10+deb8u1) ...
Processing triggers for libc-bin (2.19-18) ...
Processing triggers for menu (2.1.47) ...
Processing triggers for systemd (215-17+deb8u1) ...
Processing triggers for dbus (1.8.18-0+deb8u1) ...
Processing triggers for qubes-core-agent (3.0.15-1+deb8u1) ...
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry

Missing dependency? (Flavor: minimal + no-recommends)

Yes, there will be many recommends not installed with minimal. Maybe the
python-xdg should be moved to depends.

The Debian packaging will need to be split up in that case to have a debian
directory for wheezy, and one for the rest. That's not too difficult to do
since the framework is in place to allow that and soft-link files to main
debian from wheezy debian. Or you could place it in template package list
packages_jessie_minimal.list.

  • time
  • chrony
    • ntpdupdate
  • printing
  • cups
    • system-config-printer
  • Appearance
    • gnome-themes-standard
    • xsettingsd
  • Notifications
    • libnotify-bin
    • mate-notifications-daemon
  • GUI Updates
  • gnome-packagekit
  • Misc
  • gnome-terminal
    • haveged
  • qubes-desktop-run
  • python-xdg
  • Allow VM to run as proxy (sys-firewall)
  • network-manager
    • tinyproxy
    • yum
    • yum-utils
    • Nautilus Context Menu (send-to, etc)
  • python-nautilus

nrgaway commented Aug 11, 2015

On 11 August 2015 at 00:39, Patrick Schleizer notifications@github.com
wrote:

Setting up qubes-core-agent (3.0.15-1+deb8u1) ...

Configuration file '/etc/fstab'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/fstab ...

Configuration file '/etc/iptables/rules.v4'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v4 ...

Configuration file '/etc/iptables/rules.v6'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
==> Using new file as you requested.
Installing new version of config file /etc/iptables/rules.v6 ...
Running in chroot, ignoring request.
Adding 'diversion of /etc/init/plymouth-shutdown.conf to /etc/init/plymouth-shutdown.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/prefdm.conf to /etc/init/prefdm.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/splash-manager.conf to /etc/init/splash-manager.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/start-ttys.conf to /etc/init/start-ttys.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/tty.conf to /etc/init/tty.conf.qubes-disabled by qubes-core-agent'
Adding 'diversion of /etc/init/serial.conf to /etc/init/serial.conf.qubes-orig by qubes-core-agent'
Failed connect to local daemon
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Setting up qubes-gui-agent (3.0.10+deb8u1) ...
Processing triggers for libc-bin (2.19-18) ...
Processing triggers for menu (2.1.47) ...
Processing triggers for systemd (215-17+deb8u1) ...
Processing triggers for dbus (1.8.18-0+deb8u1) ...
Processing triggers for qubes-core-agent (3.0.15-1+deb8u1) ...
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry
Traceback (most recent call last):
File "/usr/bin/qubes-desktop-file-install", line 88, in
import xdg.DesktopEntry
ImportError: No module named xdg.DesktopEntry

Missing dependency? (Flavor: minimal + no-recommends)

Yes, there will be many recommends not installed with minimal. Maybe the
python-xdg should be moved to depends.

The Debian packaging will need to be split up in that case to have a debian
directory for wheezy, and one for the rest. That's not too difficult to do
since the framework is in place to allow that and soft-link files to main
debian from wheezy debian. Or you could place it in template package list
packages_jessie_minimal.list.

  • time
  • chrony
    • ntpdupdate
  • printing
  • cups
    • system-config-printer
  • Appearance
    • gnome-themes-standard
    • xsettingsd
  • Notifications
    • libnotify-bin
    • mate-notifications-daemon
  • GUI Updates
  • gnome-packagekit
  • Misc
  • gnome-terminal
    • haveged
  • qubes-desktop-run
  • python-xdg
  • Allow VM to run as proxy (sys-firewall)
  • network-manager
    • tinyproxy
    • yum
    • yum-utils
    • Nautilus Context Menu (send-to, etc)
  • python-nautilus

@adrelanos adrelanos referenced this issue in marmarek/old-qubes-core-agent-linux Aug 11, 2015

Merged

moved python-xdg from Recommends to Depends #19

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 11, 2015

Member

Maybe the python-xdg should be moved to depends.

Yes. Pull request:
https://github.com/marmarek/qubes-core-agent-linux/pull/19

Member

adrelanos commented Aug 11, 2015

Maybe the python-xdg should be moved to depends.

Yes. Pull request:
https://github.com/marmarek/qubes-core-agent-linux/pull/19

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 11, 2015

Member

The Debian packaging will need to be split up in that case to have a debian directory for wheezy, and one for the rest.

Now you lost me. What case?

[The Whonix case / changes that likely triggered this... Now using flavors minimal and no-recommends as per [qubes-template-whonix builder.conf].]

Or you could place it in template package list packages_jessie_minimal.list.

Thanks for that list! I improved the formatting of your list a bit so I can get a better overview and add [comments and questions]. Agreed and no comments/questions to those which don't have comments.

time

  • time [useful to have]
  • chrony [We don't need it. That was #1102. Quote marek "chrony can (and probably should) be removed." If you disagree please comment on #1102.]
  • ntpdate [We don't want that package installed in Whonix. Therefore can it be avoided to have it in packages*minimal.list?]

printing

  • cups [Useful to have also in Whonix?]
  • system-config-printer [Useful to have also in Whonix?]

Appearance

  • gnome-themes-standard
  • xsettingsd

Notifications

  • libnotify-bin [Now that we switched to mate for notifications by default, is libnotify-bin still required?]
  • mate-notifications-daemon

GUI Updates

  • gnome-packagekit

Misc

  • gnome-terminal
  • haveged

qubes-desktop-run

  • python-xdg [We have https://github.com/marmarek/qubes-core-agent-linux/pull/19 for that. Therefore no need to add it to packages*minimal.list?]

Allow VM to run as proxy (sys-firewall)

  • network-manager
  • tinyproxy
  • yum
  • yum-utils

Nautilus Context Menu (send-to, etc)

  • python-nautilus
Member

adrelanos commented Aug 11, 2015

The Debian packaging will need to be split up in that case to have a debian directory for wheezy, and one for the rest.

Now you lost me. What case?

[The Whonix case / changes that likely triggered this... Now using flavors minimal and no-recommends as per [qubes-template-whonix builder.conf].]

Or you could place it in template package list packages_jessie_minimal.list.

Thanks for that list! I improved the formatting of your list a bit so I can get a better overview and add [comments and questions]. Agreed and no comments/questions to those which don't have comments.

time

  • time [useful to have]
  • chrony [We don't need it. That was #1102. Quote marek "chrony can (and probably should) be removed." If you disagree please comment on #1102.]
  • ntpdate [We don't want that package installed in Whonix. Therefore can it be avoided to have it in packages*minimal.list?]

printing

  • cups [Useful to have also in Whonix?]
  • system-config-printer [Useful to have also in Whonix?]

Appearance

  • gnome-themes-standard
  • xsettingsd

Notifications

  • libnotify-bin [Now that we switched to mate for notifications by default, is libnotify-bin still required?]
  • mate-notifications-daemon

GUI Updates

  • gnome-packagekit

Misc

  • gnome-terminal
  • haveged

qubes-desktop-run

  • python-xdg [We have https://github.com/marmarek/qubes-core-agent-linux/pull/19 for that. Therefore no need to add it to packages*minimal.list?]

Allow VM to run as proxy (sys-firewall)

  • network-manager
  • tinyproxy
  • yum
  • yum-utils

Nautilus Context Menu (send-to, etc)

  • python-nautilus
@nrgaway

This comment has been minimized.

Show comment
Hide comment
@nrgaway

nrgaway Aug 11, 2015

On 11 August 2015 at 09:14, Patrick Schleizer notifications@github.com
wrote:

The Debian packaging will need to be split up in that case to have a
debian directory for wheezy, and one for the rest.

Now you lost me. What case?

The case in which we would move python-xdg to depends from reccommends :)

[The Whonix case / changes that likely triggered this... Now using flavors

minimal and no-recommends as per [qubes-template-whonix builder.conf
https://github.com/adrelanos/qubes-template-whonix/blob/master/builder.conf
].]

Or you could place it in template package list
packages_jessie_minimal.list.

Thanks for that list! I improved the formatting of your list a bit so I
can get a better overview and add [comments and questions]. Agreed and no
comments/questions to those which don't have comments.

time

  • time [useful to have]
  • chrony [We don't need it. That was #1102
    https://github.com/QubesOS/qubes-issues/issues/1102. Quote marek "
    chrony can (and probably should) be removed." If you disagree please
    comment on #1102 https://github.com/QubesOS/qubes-issues/issues/1102
    .]
  • ntpdate [We don't want that package installed in Whonix. Therefore
    can it be avoided to have it in packages*minimal.list?]

None of these packages would install in a minimal installation. You can
add missing packages like notifications to
template-whonix/whonix-gateway/packages_whonix.list and add back in to
template-whonix/whonix-gateway/02_install_groups_pre.sh:

info ' Installing extra packages in packages_whonix.list file'

'----------------------------------------------------------------------

installPackages packages_whonix.list

printing

  • cups [Useful to have also in Whonix?]
  • system-config-printer [Useful to have also in Whonix?]

Might be useful; I find having print ability useful

Appearance

  • gnome-themes-standard
  • xsettingsd

Notifications

  • libnotify-bin [Now that we switched
    https://github.com/marmarek/qubes-core-agent-linux/commit/edc9dd404d9159ae798a4c5b673b9b7d7277064d
    to mate for notifications by default, is libnotify-bin still required?]

Yes, notifications tend to rely on the libnotify-bin package; I removed
the notify-osd package that was causing problems.

  • mate-notifications-daemon

GUI Updates

  • gnome-packagekit

Misc

  • gnome-terminal
  • haveged

qubes-desktop-run

  • python-xdg [We have marmarek/qubes-core-agent-linux#19
    https://github.com/marmarek/qubes-core-agent-linux/pull/19 for that.
    Therefore no need to add it to packages*minimal.list?]

Allow VM to run as proxy (sys-firewall)

  • network-manager
  • tinyproxy
  • yum
  • yum-utils

Nautilus Context Menu (send-to, etc)

  • python-nautilus


Reply to this email directly or view it on GitHub
#1113 (comment)
.

nrgaway commented Aug 11, 2015

On 11 August 2015 at 09:14, Patrick Schleizer notifications@github.com
wrote:

The Debian packaging will need to be split up in that case to have a
debian directory for wheezy, and one for the rest.

Now you lost me. What case?

The case in which we would move python-xdg to depends from reccommends :)

[The Whonix case / changes that likely triggered this... Now using flavors

minimal and no-recommends as per [qubes-template-whonix builder.conf
https://github.com/adrelanos/qubes-template-whonix/blob/master/builder.conf
].]

Or you could place it in template package list
packages_jessie_minimal.list.

Thanks for that list! I improved the formatting of your list a bit so I
can get a better overview and add [comments and questions]. Agreed and no
comments/questions to those which don't have comments.

time

  • time [useful to have]
  • chrony [We don't need it. That was #1102
    https://github.com/QubesOS/qubes-issues/issues/1102. Quote marek "
    chrony can (and probably should) be removed." If you disagree please
    comment on #1102 https://github.com/QubesOS/qubes-issues/issues/1102
    .]
  • ntpdate [We don't want that package installed in Whonix. Therefore
    can it be avoided to have it in packages*minimal.list?]

None of these packages would install in a minimal installation. You can
add missing packages like notifications to
template-whonix/whonix-gateway/packages_whonix.list and add back in to
template-whonix/whonix-gateway/02_install_groups_pre.sh:

info ' Installing extra packages in packages_whonix.list file'

'----------------------------------------------------------------------

installPackages packages_whonix.list

printing

  • cups [Useful to have also in Whonix?]
  • system-config-printer [Useful to have also in Whonix?]

Might be useful; I find having print ability useful

Appearance

  • gnome-themes-standard
  • xsettingsd

Notifications

  • libnotify-bin [Now that we switched
    https://github.com/marmarek/qubes-core-agent-linux/commit/edc9dd404d9159ae798a4c5b673b9b7d7277064d
    to mate for notifications by default, is libnotify-bin still required?]

Yes, notifications tend to rely on the libnotify-bin package; I removed
the notify-osd package that was causing problems.

  • mate-notifications-daemon

GUI Updates

  • gnome-packagekit

Misc

  • gnome-terminal
  • haveged

qubes-desktop-run

  • python-xdg [We have marmarek/qubes-core-agent-linux#19
    https://github.com/marmarek/qubes-core-agent-linux/pull/19 for that.
    Therefore no need to add it to packages*minimal.list?]

Allow VM to run as proxy (sys-firewall)

  • network-manager
  • tinyproxy
  • yum
  • yum-utils

Nautilus Context Menu (send-to, etc)

  • python-nautilus


Reply to this email directly or view it on GitHub
#1113 (comment)
.

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 11, 2015

Member

I am not a big fan of packages*.list files. Not something horrible, but something to avoid. It's a nice feature for user customization, custom builds, but generally for package installation by the derivative (Qubes-Whonix), I think using Depends: or Recommends: as appropriate should be the preferred solution. This is because those packages count as "user installed". It's a problematic state. 'apt-get autoremove' will never suggest to remove any of these. On the other hand, packages listed under Depends:, if these are later on upgrade removed from Depends:, dpkg will not have lost track of them. Those will be suggested for apt-get auto removal.


Alternatives to avoid packages_whonix.list

a) Rather add them to the qubes-whonix package under Depends: or Recommends:?


For Whonix 12, I planned to have, Whonix's build script as well as Qubes Builder to use no-recommends.


b) A preferred solution of mine would be to create another meta package. In qubes-whonix's debian/control below the qubes-whonix package. Adding a new package qubes-whonix-packages-recommended or so. Like this:

Package: qubes-whonix-packages-recommended
Architecture: all
Depends: nautilus-open-terminal,
 gnome-packagekit,
 gnome-terminal,
 network-manager (>= 0.8.1-1),
 network-manager-gnome,
 [+ the other packages from your above list]
Description: Recommended packages for both, Qubes-Whonix-Gateway and Qubes-Whonix-Workstation
 A metapackage, which includes recommended packages to ensure, Qubes-Whonix
standard tools are available.
.
Safe to remove, if you know what you are doing.
Member

adrelanos commented Aug 11, 2015

I am not a big fan of packages*.list files. Not something horrible, but something to avoid. It's a nice feature for user customization, custom builds, but generally for package installation by the derivative (Qubes-Whonix), I think using Depends: or Recommends: as appropriate should be the preferred solution. This is because those packages count as "user installed". It's a problematic state. 'apt-get autoremove' will never suggest to remove any of these. On the other hand, packages listed under Depends:, if these are later on upgrade removed from Depends:, dpkg will not have lost track of them. Those will be suggested for apt-get auto removal.


Alternatives to avoid packages_whonix.list

a) Rather add them to the qubes-whonix package under Depends: or Recommends:?


For Whonix 12, I planned to have, Whonix's build script as well as Qubes Builder to use no-recommends.


b) A preferred solution of mine would be to create another meta package. In qubes-whonix's debian/control below the qubes-whonix package. Adding a new package qubes-whonix-packages-recommended or so. Like this:

Package: qubes-whonix-packages-recommended
Architecture: all
Depends: nautilus-open-terminal,
 gnome-packagekit,
 gnome-terminal,
 network-manager (>= 0.8.1-1),
 network-manager-gnome,
 [+ the other packages from your above list]
Description: Recommended packages for both, Qubes-Whonix-Gateway and Qubes-Whonix-Workstation
 A metapackage, which includes recommended packages to ensure, Qubes-Whonix
standard tools are available.
.
Safe to remove, if you know what you are doing.

adrelanos added a commit to adrelanos/qubes-template-whonix that referenced this issue Aug 13, 2015

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 27, 2015

Member

Can you please have a look at these package lists? If any dependencies / recommended default installed packages are missing?

Specifically, I think printing utilities (cups, system-config-printer) are better not installed on the gateway. And there is no need to have network-manager, tinyproxy, yum, yum-utils installed on the workstation. Unless I am missing something.

Member

adrelanos commented Aug 27, 2015

Can you please have a look at these package lists? If any dependencies / recommended default installed packages are missing?

Specifically, I think printing utilities (cups, system-config-printer) are better not installed on the gateway. And there is no need to have network-manager, tinyproxy, yum, yum-utils installed on the workstation. Unless I am missing something.

@nrgaway

This comment has been minimized.

Show comment
Hide comment
@nrgaway

nrgaway Aug 27, 2015

On 27 August 2015 at 13:05, Patrick Schleizer notifications@github.com
wrote:

Can you please have a look at these package lists? If any dependencies /
recommended default installed packages are missing?

Specifically, I think printing utilities (cups, system-config-printer)
are better not installed on the gateway. And there is no need to have
network-manager, tinyproxy, yum, yum-utils installed on the workstation.
Unless I am missing something.

We could move to recommends and they will be installed with +standard
template installation.

We can also create the control file dynamically. I already have extensions
implemented for some time that allow separate build-depends for different
dists within a shared control file (Currently vmm-xen uses this feature;
IE: X-Qubes-Build-Depends-jessie: libpython2.7-dev)

Or instead of dynamic have separate control files named
control.whonix-gateway that would be used if they exist based on
distribution being built. I had implemented that already; never commited it
though since it was not needed at the time (I thought it was, but was
mistaken). I would just need to expose the TEMPLATE_FLAVOR to allow it to
function with whonix. It is only a few lines of code to make this work;
one in Makefile.builder and possible change in Makefile.generic to send
TEMPLATE_FLAVOR

nrgaway commented Aug 27, 2015

On 27 August 2015 at 13:05, Patrick Schleizer notifications@github.com
wrote:

Can you please have a look at these package lists? If any dependencies /
recommended default installed packages are missing?

Specifically, I think printing utilities (cups, system-config-printer)
are better not installed on the gateway. And there is no need to have
network-manager, tinyproxy, yum, yum-utils installed on the workstation.
Unless I am missing something.

We could move to recommends and they will be installed with +standard
template installation.

We can also create the control file dynamically. I already have extensions
implemented for some time that allow separate build-depends for different
dists within a shared control file (Currently vmm-xen uses this feature;
IE: X-Qubes-Build-Depends-jessie: libpython2.7-dev)

Or instead of dynamic have separate control files named
control.whonix-gateway that would be used if they exist based on
distribution being built. I had implemented that already; never commited it
though since it was not needed at the time (I thought it was, but was
mistaken). I would just need to expose the TEMPLATE_FLAVOR to allow it to
function with whonix. It is only a few lines of code to make this work;
one in Makefile.builder and possible change in Makefile.generic to send
TEMPLATE_FLAVOR

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Aug 27, 2015

Member

I fear dynamic debian/control files would make things more difficult to grasp. For me. A qubes-whonix/debian/control.whonix-gateway would be problematic, because there is only one remote apt repository. Not gateway / workstation separate. So if an update is about to be released, it could just be for one flavor, not both. While a control.whonix-gateway mechanism would work well enough if there was only new template releases, no upgrade support, I don't think it can be used if we want to support upgrades.

The Recommends: field is problematic in any case. New packages added to the Recommends: field would not be installed when the meta package that Recommends: them gets upgraded. This is because packages listed after the Recommends: field only get installed during their initial sudo apt-get install package-name installation.


This ticket moved far off-topic. To get it back on track... The very first comment here applies:
#1113 (comment)
More discussion and waiting for @nrgaway in this pull request:
https://github.com/marmarek/qubes-core-agent-linux/pull/19

Member

adrelanos commented Aug 27, 2015

I fear dynamic debian/control files would make things more difficult to grasp. For me. A qubes-whonix/debian/control.whonix-gateway would be problematic, because there is only one remote apt repository. Not gateway / workstation separate. So if an update is about to be released, it could just be for one flavor, not both. While a control.whonix-gateway mechanism would work well enough if there was only new template releases, no upgrade support, I don't think it can be used if we want to support upgrades.

The Recommends: field is problematic in any case. New packages added to the Recommends: field would not be installed when the meta package that Recommends: them gets upgraded. This is because packages listed after the Recommends: field only get installed during their initial sudo apt-get install package-name installation.


This ticket moved far off-topic. To get it back on track... The very first comment here applies:
#1113 (comment)
More discussion and waiting for @nrgaway in this pull request:
https://github.com/marmarek/qubes-core-agent-linux/pull/19

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Sep 3, 2015

Member

Merged that PR.

Member

marmarek commented Sep 3, 2015

Merged that PR.

@marmarek marmarek closed this Sep 3, 2015

adrelanos added a commit to Whonix/qubes-template-whonix that referenced this issue Sep 5, 2015

adrelanos added a commit to adrelanos/qubes-template-whonix that referenced this issue Oct 12, 2015

removed 'workaround for missing qubes-core-agent's missing dependency…
… on python-xdg' (QubesOS/qubes-issues#1113) and 'workaround for missing qubes-core-agent-linux's missing dependency on python-dbus' (https://github.com/marmarek/qubes-core-agent-linux/pull/27) because fixed were merged in Qubes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment