ubuntu-mate-settings package needs updating

Bug #1427182 reported by Martin Wimpress 
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu MATE
Fix Released
Critical
Unassigned
ubuntu-mate-settings (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

The ubuntu-mate-settings package requires an update for 15.04 Beta 2. The package is available in the following repository.

  * lp:~ubuntu-mate-dev/ubuntu-mate/ubuntu-mate-settings

Changed in ubuntu-mate:
importance: Undecided → Critical
Revision history for this message
Iain Lane (laney) wrote :

I have comments

diff -Nru ubuntu-mate-settings-0.4.2ubuntu1/debian/control ubuntu-mate-settings-0.4.3ubuntu1/debian/control
--- ubuntu-mate-settings-0.4.2ubuntu1/debian/control 2015-02-13 16:38:54.000000000 +0000
+++ ubuntu-mate-settings-0.4.3ubuntu1/debian/control 2015-03-02 16:17:39.000000000 +0000
@@ -13,6 +13,7 @@
 Depends: ${misc:Depends}, libglib2.0-bin, mate-panel, ttf-ubuntu-font-family
 Replaces: policykit-desktop-privileges-ubuntu-mate
 Suggests: mate-desktop-environment-core (>= 1.8.0)
+Conflicts: xubuntu-default-settings
 Description: Default settings for Ubuntu MATE
  Various system settings tailored for Ubuntu MATE.

This seems quite bad. Is it for Qt settings? Could we instead change Qt to look for a Trolltech-$session.conf file? As a bonus it could then be in a system location instead of in the skel directory, which only works for new users.

I think that would probably even be acceptable for Qt upstream.

diff -Nru ubuntu-mate-settings-0.4.2ubuntu1/debian/ubuntu-mate-default-settings.postinst ubuntu-mate-settings-0.4.3ubuntu1/debian/ubuntu-mate-default-settings.postinst
--- ubuntu-mate-settings-0.4.2ubuntu1/debian/ubuntu-mate-default-settings.postinst 1970-01-01 01:00:00.000000000 +0100
+++ ubuntu-mate-settings-0.4.3ubuntu1/debian/ubuntu-mate-default-settings.postinst 2015-03-02 16:17:39.000000000 +0000
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -e
+
+if [ -f /etc/xdg/autostart/nm-applet-mate.desktop ]; then
+ rm -f /etc/xdg/autostart/nm-applet-mate.desktop
+fi
+
+if [ -f /etc/xdg/autostart/tilda.desktop ]; then
+ rm -f /etc/xdg/autostart/tilda.desktop
+fi
+
+#DEBHELPER#

You should use dpkg-maintscript-helper, so that user changes are preserved.

diff -Nru ubuntu-mate-settings-0.4.2ubuntu1/etc/profile.d/qt-accessibility.sh ubuntu-mate-settings-0.4.3ubuntu1/etc/profile.d/qt-accessibility.sh
--- ubuntu-mate-settings-0.4.2ubuntu1/etc/profile.d/qt-accessibility.sh 1970-01-01 01:00:00.000000000 +0100
+++ ubuntu-mate-settings-0.4.3ubuntu1/etc/profile.d/qt-accessibility.sh 2015-03-02 16:17:39.000000000 +0000
@@ -0,0 +1 @@
+export QT_ACCESSIBILITY=1

Can you please restrict this to your session too?

Changed in ubuntu-mate-settings (Ubuntu):
status: New → Incomplete
Revision history for this message
Iain Lane (laney) wrote :

Please change from incomplete to new once someone should review again

Revision history for this message
Iain Lane (laney) wrote :

Also I think it would be better if the folder-color change could instead (or as well) be controlled by gsettings, for the same reasons of /etc/skel avoidance

Revision history for this message
Martin Wimpress  (flexiondotorg) wrote :

The TrollTech.conf was in the package before, this is not an addition. There is no other facility to change the default Qt4 settings, which is why Ubuntu MATE and Xubuntu drop Trolltech.conf in /etc/skel/. I have agreed with the Xubuntu team that we will mutually conflict our default settings packages and review what we can do in 15.10.

The only facility that currently exists in folder-color to diable the donation menu entry is via ~/.config, hence the inclusion of folder-color in /etc/skel. The Folder Color author actually requested we add this setting. I'll ask the Folder Color developer to make this a system setting but until that is an option can this change be permitted?

I'll revise the a11y settings for QT and also do the same for GTK since it has never been session restricted either. I'll also make use of dpkg-mainscript-helper.

Revision history for this message
Martin Wimpress  (flexiondotorg) wrote :

I've pushed the changes.

  * I've consolidated exports of environment variables to /etc/X11/Xsession.d/99mate-environment which are only set if 'mate' is the current session.
  * debian/ubuntu-mate-default-settings.postinst now uses dpkg-mainscript-helper.
  * etc/profile.d/gtk-accessibility.sh not set the GTK a11y export in a non-destructive fashion.

Changed in ubuntu-mate-settings (Ubuntu):
status: Incomplete → New
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

Despite changing etc/X11/Xsession.d/99mate-environment to set QT_ACCESSIBILITY=1 only when starting the mate session, you still have etc/profile.d/qt-accessibility.sh which always sets it.

I personally think accessibility support should always be enabled if it's a switch that doesn't change behavior for all users and just makes the use of accessibility features easier (orca, etc.), but is this on purpose?

What change in behavior do you need QT_ACCESSIBILITY to be set for?

Revision history for this message
Iain Lane (laney) wrote :

I'm aware that the conf file was there before, but now you're discovering that you want to add Conflicts because of it. And also it only works for new users, so I made a suggestion that you might want to look into changing Qt itself to be able to load this file from a system location which uses XDG_CURRENT_DESKTOP or similar.

Revision history for this message
Martin Wimpress  (flexiondotorg) wrote :

I'll remove etc/profile.d/qt-accessibility.sh shortly.

The "export QT_ACCESSIBILITY=1" will load all installed accessibility-plugins (such as the Qt AT-SPI) to provide accessibility-services. You still need to activate a screen reader for applications to become accessible. Exporting this environment variable just makes sure that when a user activates Orca it can start screen reading straight away. I work with the Accessible Computing Foundation, they are likely to start using Ubuntu MATE, and requested that export QT_ACCESSIBILITY=1 be added so that Skype and Mumble (Qt applications they rely on) can screen read just like the GTK applications.

I've thought of a way to provide the user settings Ubuntu MATE requires without putting stuff in `/etc/skel`. I'll update the repo later.

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Iain Lane wrote:
> This seems quite bad. Is it for Qt settings? Could we instead change Qt
> to look for a Trolltech-$session.conf file? As a bonus it could then be
> in a system location instead of in the skel directory, which only works
> for new users.

I agree that it is very bad, Conflicts should not be used such way.
@Martin: can you just let Qt 4 use its default settings? After all, there are not so many Qt 4 apps left.

> I think that would probably even be acceptable for Qt upstream.

Qt 5 no longer uses Trolltech.conf at all (and Qt 4 receives only critical bug fixes), so this is not acceptable for upstream :-)

Revision history for this message
Martin Wimpress  (flexiondotorg) wrote :

I have removed all files from /etc/skel and re-factored how user level settings are applied when no system wide capability exists. Therefore, ubuntu-mate-default-settings no longer conflicts with xubuntu-default-settings.

The package is ready for review again.

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

usr/lib/ubuntu-mate/ubuntu-mate-settings-overlay:
* Not a very big fan of this script, especially as you are using a fixed filename. Please rather user mktemp to randomize the name and use a pattern.
* chown -R ${USER}: "${USER_DIR}" -> why do you need to chown as the user, I hope this script isn't used at root? (when is it executed exactly?)

Just a note (not a blocker), we tend to use with rm_conffiles and such <new_version_without_conffiles>~. That enables if you backported to ppa previous version or if there is a SRU (not applicable in this case) to ensure that even if new packages on older series were releases, those would get their conffiles cleaned up as well.

Changed in ubuntu-mate-settings (Ubuntu):
status: New → Incomplete
Revision history for this message
Martin Wimpress  (flexiondotorg) wrote :

I pushed a revision to update usr/lib/ubuntu-mate/ubuntu-mate-settings-overlay. I've removed the debug and the chown. The script runs in the user context.

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

I fixed the version to be a native package without the ubuntu string as it's a native package.
Otherwise, every sounds good, sponsored, thanks!

Changed in ubuntu-mate-settings (Ubuntu):
status: Incomplete → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-mate-settings - 0.4.3

---------------
ubuntu-mate-settings (0.4.3) vivid; urgency=medium

  * Qt accessibility modules enabled.
  * Qt theme is overridden with GTK+ when MATE session is detected.
  * Enabled Ambiant-MATE theme in the live session.
  * Relocated autostart files to /usr/share/mate/autostart
  so they do not conflict with other desktop environments.
  * Removed all configuration from /etc/skel. (LP: #1426862)
  * Closes (LP: #1427182)
 -- Martin Wimpress <email address hidden> Thu, 26 Feb 2015 11:42:10 +0000

Changed in ubuntu-mate-settings (Ubuntu):
status: Fix Committed → Fix Released
Changed in ubuntu-mate:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.