XFCE and Sugar: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Link to main XFCE page.)
(→‎Modifications to standard build: made last step somewhat clearer to help avoid a simple mistake which will cause the xo to fail to boot)
 
(3 intermediate revisions by 3 users not shown)
Line 27: Line 27:
**gnome-icon-theme (needed for filemanager icons)
**gnome-icon-theme (needed for filemanager icons)
* Add <code>Inherits=gnome</code> after the <code><nowiki>[Icon Theme]</nowiki></code> line in <code>/usr/share/icons/sugar/index.theme</code>, so that sugar's theme properly pulls in the gnome filemanager icons (in <trac>7939</trac> we suggest adding appropriate sugarized icons for folders, etc) ([http://dev.laptop.org/git?p=projects/pilgrim;a=commitdiff;h=1352336fc9c0354911ad2f9691b24a3b078ed6a6 pilgrim patch])
* Add <code>Inherits=gnome</code> after the <code><nowiki>[Icon Theme]</nowiki></code> line in <code>/usr/share/icons/sugar/index.theme</code>, so that sugar's theme properly pulls in the gnome filemanager icons (in <trac>7939</trac> we suggest adding appropriate sugarized icons for folders, etc) ([http://dev.laptop.org/git?p=projects/pilgrim;a=commitdiff;h=1352336fc9c0354911ad2f9691b24a3b078ed6a6 pilgrim patch])
* Add <code><nowiki>[ -f "$HOME/.xsession-xfce" ] && . "$HOME/.xsession-xfce"</nowiki></code> before <code>/usr/bin/ck-xinit-session</code> in <code>/usr/bin/olpc-session</code> in order to trigger xfce when it is selected. ([http://dev.laptop.org/git?p=projects/pilgrim;a=commitdiff;h=946101b82388b46bbeb06c7cac9d5d2a33865d92 pilgrim patch])
* Add <code><nowiki>[ -f "$HOME/.xsession-xfce" ] && . "$HOME/.xsession-xfce"</nowiki></code> before the <code>exec /usr/bin/ck-xinit-session</code> line at the end of <code>/usr/bin/olpc-session</code> in order to trigger xfce when it is selected. ([http://dev.laptop.org/git?p=projects/pilgrim;a=commitdiff;h=946101b82388b46bbeb06c7cac9d5d2a33865d92 pilgrim patch])


These last two modifications are candidates for upstream inclusion into standard OLPC builds. Along with adding an appropriate http://dev.laptop.org/~cscott/xfce as a repo into our stock yum configuration, and the appropriate dependencies to (say) sugar-xfce-control, this could make installing the XFCE alternative desktop as easy as <code>yum install sugar-xfce-control</code>.
These last two modifications are candidates for upstream inclusion into standard OLPC builds. Along with adding an appropriate http://dev.laptop.org/~cscott/xfce as a repo into our stock yum configuration, and the appropriate dependencies to (say) sugar-xfce-control, this could make installing the XFCE alternative desktop as easy as <code>yum install sugar-xfce-control</code>.

In the meantime, these modifications can be made to the 8.2-760 test build (or any other build) in order to add this functionality to a more stable build. All the files you need are here: http://www.filedropper.com/xfce-sugarfiles . Just install the RPMs and then copy into the appropriate directories the index.theme, olpc-session, and .xsession-xfce files.

[[Category:Linux distributions]]
[[Category:Sugar]]

Latest revision as of 17:31, 3 January 2010

This page documents the XFCE/Sugar dual-desktop integration work c-scott did around 05-Aug-2008. Build faster-2263 was the end result of this work. For more general information on using XFCE on an XO, see the XFCE page.

Bottom line

olpc-update faster-2263 will give you a minimal XFCE/Sugar system. There is a sugar control panel to let you switch, and you can access the sugar control panel from XFCE to switch back.

The resulting system is 45M (15%) larger than our current builds, and the XFCE functionality is exceedingly minimal: no web browser, no network manager. But you have a terminal, a text editor, and a file manager. Additional applications would, of course, increase the size overhead further.

Known bugs:

  • Some XFCE popup menus are invisible until hovered over. <trac>7839</trac>
  • After you select the sugar desktop to switch back from XFCE, sugar asks if you'd like to restart now or later. "Later" works fine, but if you select "restart now", nothing happens (XFCE doesn't seem to understand Sugar's session shutdown request) -- and then the only button left is the 'cancel' button, which will revert the change in desktop.
  • Our build of network manager doesn't include NetworkManager-gnome, and I was unable to tweak the spec file to get it built. So there's no networking on the XFCE side.
  • Installing firefox seems to have problems; haven't looked deeply into why.

Modifications to standard build

The following changes were made to transform joyride-2263 into faster-2263: (git log)

  • Add the sugar-xfce-control package for a 'desktop switcher' control panel in Sugar. (source code, src rpm, rpm)
  • Add the sugar-mcs-plugin package to integrate the sugar control panel into XFCE's "Settings Manager". This allows you to switch back from XFCE to Sugar using the same mechanism you use to switch from Sugar to XFCE. (source code, src rpm, rpm, debuginfo rpm)
  • Add the following packages from the standard Fedora repository:
    • xfce-utils (pulls in via dependencies all the main xfce packages)
    • xfce4-session (required to allow you to quit from xfce)
    • gnome-icon-theme (needed for filemanager icons)
  • Add Inherits=gnome after the [Icon Theme] line in /usr/share/icons/sugar/index.theme, so that sugar's theme properly pulls in the gnome filemanager icons (in <trac>7939</trac> we suggest adding appropriate sugarized icons for folders, etc) (pilgrim patch)
  • Add [ -f "$HOME/.xsession-xfce" ] && . "$HOME/.xsession-xfce" before the exec /usr/bin/ck-xinit-session line at the end of /usr/bin/olpc-session in order to trigger xfce when it is selected. (pilgrim patch)

These last two modifications are candidates for upstream inclusion into standard OLPC builds. Along with adding an appropriate http://dev.laptop.org/~cscott/xfce as a repo into our stock yum configuration, and the appropriate dependencies to (say) sugar-xfce-control, this could make installing the XFCE alternative desktop as easy as yum install sugar-xfce-control.

In the meantime, these modifications can be made to the 8.2-760 test build (or any other build) in order to add this functionality to a more stable build. All the files you need are here: http://www.filedropper.com/xfce-sugarfiles . Just install the RPMs and then copy into the appropriate directories the index.theme, olpc-session, and .xsession-xfce files.