On Sat, Jun 05, 2010 at 10:13:32AM +0000, harsha wrote:
> John Yates <john <at> yates-sheets.org> writes:
>
> >
> > The following is in an Ubuntu 9.04 (Jaunty) environment.
> >
> > I am attempting to smooth over switching window managers while
> > preserving much of the gnome environment. To do this is have
> > regularized the /usr/share/xsessions/*.desktop files, introduced
> > individual wrapper scripts and a common start-gnome-session script
> > (see attachments).
> >
> > I am able to switch bump-free between compiz and xmonad. Under this
> > setup awesome does not start and the top of my ~/.xsession-erors shows
> > the following:
> >
> > /etc/gdm/Xsession: Beginning session setup...
> > Setting IM through im-switch for locale=en_US.
> > Start IM through /etc/X11/xinit/xinput.d/all_ALL linked to
> > /etc/X11/xinit/xinput.d/default.
> > gnome-session[8287]: WARNING: Unable to find provider 'awesome' of
> > required component 'windowmanager'
> >
> > Thanks in advance for any help/clues/suggestions,
> >
> > /john
> >
> > Attachment (start-gnome-session): application/octet-stream, 588 bytes
> > Attachment (gnome.desktop): application/octet-stream, 259 bytes
> > Attachment (gnome-gnome): application/octet-stream, 70 bytes
> > Attachment (xmonad.desktop): application/octet-stream, 187 bytes
> > Attachment (gnome-xmonad): application/octet-stream, 71 bytes
> > Attachment (awesome.desktop): application/octet-stream, 162 bytes
> > Attachment (gnome-awesome): application/octet-stream, 72 bytes
I thought it might be helpful if I shared the method I am using. On my
desktopsI build a really light gnome desktop with the basic packages sometimes
without gnome-panel or metacity (I do use nautilus) This requires some gconf
modification.
I start awesome either with .xinit and startx (Or custom session with
GDM) if I dont want the gnome environment. Or I use applications and
xsession desktop entry with a awesome-gnome-session script.
As state previously you need the desktop entry in
/usr/share/applications:
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Awesome
Exec=awesome
NoDisplay=true
# name of loadable control center module
X-GNOME-WMSettingsModule=awesome
# name we put on the WM spec check window
X-GNOME-WMName=Awesome
X-GNOME-Autostart-Phase=WindowManager;Panel
X-GNOME-Provides=windowmanager;panel
X-GNOME-AutoRestart=true
X-GNOME-Autostart-Notify=true
NOTE: gnome-session requires three components by deafult: windowmanager,panel
and filemanager. Notice this provides the windowmanager and panel, so
the panel and metacity will not be started. You also can add filemanager
if you dont want nautilus. However, in that case you might want to
consider modifying or removing the required components in gconf, but
this will be problematic if you ever want to use a full gnome session.
Then my desktop entry in /usr/share/xsessons:
[Desktop Entry]
Encoding=UTF-8
Name=Awesome
Comment=Awesome window manager with GNOME environment
Exec=/usr/local/bin/awesome-gnome-session
TryExec=/usr/local/bin/awesome-gnome-session
Type=Application
I then have the following in awesome-gnome-session available in all
users path (I lifted this from openbox-gnome-session script, so
thank you openbox developers):
#!/bin/sh
SPATH=/desktop/gnome/session
# grab current default session
SESSION=$(gconftool-2 -g $SPATH/default_session 2> /dev/null)
# add awesome to the deafult session
if test -z "$SESSION"; then
SESSION="[awesome]"
elif ! echo "$SESSION" | grep -q awesome; then
SESSION="${SESSION%]},awesome]"
fi
# grab current awesome session
AW_SESSION=$(gconftool-2 -g $SPATH/awesome_session 2> /dev/null)
# create the awesome session or change it if default has changed.
if test x$AW_SESSION != x$SESSION; then
gconftool-2 -t list --list-type=strings -s $SPATH/awesome_session \
"$SESSION" 2> /dev/null
fi
# run awesome/gnome session
exec gnome-session --default-session-key $SPATH/awesome_session
This way any user can run an awesome/gnome session and a awesome_session
will be added to their gconf if need.
This seems to be a really clean way to do this. I also have a .xinitrc
and an Xclients for using awesome without gnome. I hope this helps.
--
To unsubscribe, send mail to [email protected].