Bug#771576: tasksel: tasks=mate still also installs gnome
Package: tasksel
Version: 3.29
Severity: important
Hello,
I wanted to make brltty and speakup auto-preseed tasks=mate so as to
automatically install the most accessible desktop by default, but while
doing so indeed enables installation of the mate desktop, the gnome
desktop also gets installed: when using tasks=mate, both gnome and mate
choices get ticked by default, and then the user session will default to
the (lesser accessible) gnome desktop.
Apparently this comes from the logic in the default-desktop script:
if db_get "tasksel/desktop" && echo "$RET" | grep -q "$DESKTOPNAME"; then
check_desktop_wanted
else
if [ "$DESKTOPNAME" = "$(default_desktop_for_arch $(dpkg --print-architecture))" ]; then
check_desktop_wanted
fi
fi
AIUI, this will make the gnome case skip the "then" part (since grep
will fail), and since it's the default desktop for the amd64 arch,
check_desktop_wanted will get called, and thus gnome always get ticked.
Shouldn't it be rather the following? At least in my tests it works as
I would expect: only tick the preseeded desktop choice.
if db_get "tasksel/desktop" ; then
if echo "$RET" | grep -q "$DESKTOPNAME"; then
check_desktop_wanted
fi
else
if [ "$DESKTOPNAME" = "$(default_desktop_for_arch $(dpkg --print-architecture))" ]; then
check_desktop_wanted
fi
fi
With some preseeding, the mate case will enter the first "then" and the
second "then", and thus get ticked, while the gnome case will enter the
first "then", but not the second "then". Without preseeding, all cases
will enter the first "else", and then only the default desktop for the
arch will enter the corresponding "then".
Samuel
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.17.0 (SMP w/8 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages tasksel depends on:
ii apt 1.0.9.3
ii cdebconf [debconf-2.0] 0.192
ii debconf [debconf-2.0] 1.5.53
ii liblocale-gettext-perl 1.05-8+b1
ii perl-base 5.20.1-3
ii tasksel-data 3.29
tasksel recommends no packages.
tasksel suggests no packages.
-- debconf information excluded
Reply to: