Bug 760621 - xfconf-migration restores old settings
Summary: xfconf-migration restores old settings
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: xfce-utils
Version: 16
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Kevin Fenzi
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-12-06 16:28 UTC by Jeff Bastian
Modified: 2011-12-26 19:18 UTC (History)
3 users (show)

Fixed In Version: xfce-utils-4.8.3-2.fc16
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-12-26 19:16:59 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Jeff Bastian 2011-12-06 16:28:33 UTC
Description of problem:
I recently logged in to Gnome to test something, and when I returned to Xfce it was like I had stepped back in time: all my Xfce settings and tweaks were lost.

Apparently /etc/xdg/autostart/xfconf-migration-4.6.desktop ran when I logged into Gnome and copied my old 4.6 settings back into place.

I think Gnome 3 uses 
  X-GNOME-Autostart-enabled=false
in the autostart desktop files instead of
  Hidden=true
to prevent a service from automatically starting on login.

Should the system-wide /etc/xdg/autostart/xfconf-migration-4.6.desktop contain this setting?  Or possibly
  OnlyShowIn=XFCE
also?

Version-Release number of selected component (if applicable):
xfce-utils-4.8.3-1.fc16.x86_64

How reproducible:
every time (?) (I'm afraid to try again!)

Steps to Reproduce:
1. log out of Xfce
2. log in to Gnome
3. return to Xfce
  
Actual results:
recent Xfce tweaks and settings are lost

Expected results:
Xfce profile is left undisturbed

Additional info:

Comment 2 Jeff Bastian 2011-12-06 18:16:03 UTC
Here's a more detailed reproducer that keeps your personal settings safe by using a test account.


1. Create a test user

useradd testxfce
echo password | passwd --stdin testxfce
su - testxfce

2. Create an "old" Xfce 4.6 settings directory and create an xfwm4.xml 
   file that enables box (aka transparent or wireframe) window moving 
   and resizing  

mkdir -p ~/.config/xfce4/mcs_settings
cat > ~/.config/xfce4/mcs_settings/xfwm4.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mcs-option SYSTEM "mcs-option.dtd">

<mcs-option>
        <option name="Xfwm/BoxMove" type="int" value="1"/>
        <option name="Xfwm/BoxResize" type="int" value="1"/>
</mcs-option>
EOF

3. Start a VNC server with Xfce

cat > ~/.Xclients <<EOF
#!/bin/bash

exec /usr/bin/startxfce4
EOF
chmod 755 .Xclients
vncserver

4. Connect to the VNC session and verify that windows are moved and 
   resized in box mode.

vncviewer localhost:1

5. Change the setting back to opaque mode.  Go to
      Aplications -> Settings -> Window Manager -> Advanced
   and uncheck the hide content boxes under "Box move and resize"

6. Logout of Xfce and save your session.  Kill the VNC session.

vncserver -kill :1

7. Change to Gnome and start a new VNC session

cat > ~/.Xclients <<EOF
#!/bin/bash
  
exec /usr/bin/gnome-session
EOF
chmod 755 .Xclients
vncserver

8. Logout of Gnome and kill the VNC session

vncserver -kill :1

9. Switch back to Xfce and start a VNC session

cat > ~/.Xclients <<EOF
#!/bin/bash
  
exec /usr/bin/startxfce4
EOF
chmod 755 .Xclients
vncserver

10. Notice that windows are reverted back to box moving and resizing!

Comment 3 Jeff Bastian 2011-12-06 18:28:11 UTC
Adding the following 2 lines to /etc/xdg/autostart/xfconf-migration-4.6.desktop fixed the problem for me:

X-GNOME-Autostart-enabled=false
OnlyShowIn=XFCE


The full file:

[Desktop Entry]
Version=1.0
Name=Xfconf Migration Script
Exec=/usr/lib64/xfce4/xfconf-migration/xfconf-migration-4.6.pl
Terminal=false
Type=Application
StartupNotify=false
X-GNOME-Autostart-enabled=false
OnlyShowIn=XFCE
Categories=Utility;

Comment 4 Kevin Fenzi 2011-12-09 23:08:56 UTC
This fix has already been commited upstream too. ;) 

I'll push out a update in a few here. Thanks for tracking this down and providing a fix!

Comment 5 Kevin Fenzi 2011-12-09 23:19:42 UTC
The upstream commit seems to be lacking a ; at the end of the OnlyShowIn=XFCE line (which causes a build failure here). 


diff -Nur xfce-utils-4.8.3.orig/scripts/xfconf-migration-4.6.desktop.in xfce-utils-4.8.3/scripts/xfconf-migration-4.6.desktop.in
--- xfce-utils-4.8.3.orig/scripts/xfconf-migration-4.6.desktop.in	2011-12-09 16:02:58.689214217 -0700
+++ xfce-utils-4.8.3/scripts/xfconf-migration-4.6.desktop.in	2011-12-09 16:04:31.347779838 -0700
@@ -5,4 +5,6 @@
 Terminal=false
 Type=Application
 StartupNotify=false
+X-GNOME-Autostart-enabled=false
+OnlyShowIn=XFCE;
 Categories=Utility;

Comment 6 Fedora Update System 2011-12-09 23:37:31 UTC
xfce-utils-4.8.3-2.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/xfce-utils-4.8.3-2.fc16

Comment 7 Fedora Update System 2011-12-09 23:50:09 UTC
xfce-utils-4.8.3-2.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/xfce-utils-4.8.3-2.fc15

Comment 8 Fedora Update System 2011-12-11 21:49:40 UTC
Package xfce-utils-4.8.3-2.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing xfce-utils-4.8.3-2.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2011-16960/xfce-utils-4.8.3-2.fc16
then log in and leave karma (feedback).

Comment 9 Fedora Update System 2011-12-26 19:16:59 UTC
xfce-utils-4.8.3-2.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2011-12-26 19:18:38 UTC
xfce-utils-4.8.3-2.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.