
Hi, Currently I have set up my installation of ArchLinux to auto-login two users on two different virtual consoles, starting one X server each. One X server runs Xmonad and the other one runs Gnome. This way it's possible to switch between the the two users' desktops with Ctrl-Alt-F1/F2. It works quite nicely, apart from the fact that virtual console switching is a bit slow. That could maybe change in the future, with kernel mode setting etc. However, I am pondering a different setup, where I only start one Xserver running Xmonad. Then I would let that instance of Xmonad start two instances of Xephyr (a nested X server), one that runs another instance of Xmonad and one that runs Gnome. I could switch between the users's desktops by appropriate key bindings in the bottom Xmonad instance. The first Xmonad instance would run as a separate user, or maybe the root user. I can see several advantages with this approach; faster user switching, global key actions configurable in Haskell, global Xmobar panel. Do you think this is a feasible setup? Is Xmonad lightweight enough for this configuration? Can the key bindings in the two Xmonad instances be coordinated easily (can I somehow create a "clean" configuration in the root Xmonad, removing all defaults and just add a few global key bindings)? Or do you think it would just become one big mess? :) Regards, Rickard Nilsson

Rickard Nilsson
However, I am pondering a different setup, where I only start one Xserver running Xmonad. Then I would let that instance of Xmonad start two instances of Xephyr (a nested X server), one that runs another instance of Xmonad and one that runs Gnome. I could switch between the users's desktops by appropriate key bindings in the bottom Xmonad instance. The first Xmonad instance would run as a separate user, or maybe the root user.
[...]
Do you think this is a feasible setup? Is Xmonad lightweight enough for this configuration? Can the key bindings in the two Xmonad instances be coordinated easily (can I somehow create a "clean" configuration in the root Xmonad, removing all defaults and just add a few global key bindings)?
This should work fairly well, I would think. The only problem I can think of is that the configuration for xmonad isn't configurable, so you would need to write one configuration that decided whether or not it was the master and set things up differently in that case, which might be a little bit messy.

Quoting mail@justinbogner.com:
Rickard Nilsson
writes: However, I am pondering a different setup, where I only start one Xserver running Xmonad. Then I would let that instance of Xmonad start two instances of Xephyr (a nested X server), one that runs another instance of Xmonad and one that runs Gnome. I could switch between the users's desktops by appropriate key bindings in the bottom Xmonad instance. The first Xmonad instance would run as a separate user, or maybe the root user.
[...]
Do you think this is a feasible setup? Is Xmonad lightweight enough for this configuration? Can the key bindings in the two Xmonad instances be coordinated easily (can I somehow create a "clean" configuration in the root Xmonad, removing all defaults and just add a few global key bindings)?
This should work fairly well, I would think. The only problem I can think of is that the configuration for xmonad isn't configurable, so you would need to write one configuration that decided whether or not it was the master and set things up differently in that case, which might be a little bit messy.
I would probably run the first Xmonad as a dedicated user. Then I would have two different configuration files, say ~xmonad/.xmonad/xmonad.hs and ~rickard/.xmonad/xmonad.hs for the different instances. It would solve that problem, wouldn't it? Of course it could maybe be more convenient with just one configuration file. But then again, I might set up one more xmonad user instance and then it makes more sense with one global xmonad.hs and two user configurations. / Rickard

If the the outer xmonad is run as another user (please, not as root!)
that will not be a problem.
There are only two problems I can see and none of them are xmonad
specific. The first one is that you are running Xephyr and when I
tried it the other day I was a bit disappointed with the performance.
It was slow and the mouse and keyboard grabbing was misbehaving quite
a bit.
The second problem is with the global xmobar panel. You may wish to
remove it while watching a movie or something else in full screen,
that will be hard since then you need to change resolution in Xephyr.
If this a development workstation or something and those things
doesn't matter for you, then I think that your idea should work just
fine.
/Anders
On Fri, May 15, 2009 at 17:16,
Rickard Nilsson
writes: However, I am pondering a different setup, where I only start one Xserver running Xmonad. Then I would let that instance of Xmonad start two instances of Xephyr (a nested X server), one that runs another instance of Xmonad and one that runs Gnome. I could switch between the users's desktops by appropriate key bindings in the bottom Xmonad instance. The first Xmonad instance would run as a separate user, or maybe the root user.
[...]
Do you think this is a feasible setup? Is Xmonad lightweight enough for this configuration? Can the key bindings in the two Xmonad instances be coordinated easily (can I somehow create a "clean" configuration in the root Xmonad, removing all defaults and just add a few global key bindings)?
This should work fairly well, I would think. The only problem I can think of is that the configuration for xmonad isn't configurable, so you would need to write one configuration that decided whether or not it was the master and set things up differently in that case, which might be a little bit messy.
_______________________________________________ xmonad mailing list xmonad@haskell.org http://www.haskell.org/mailman/listinfo/xmonad

On Fri, May 15, 2009 at 02:03:32PM +0200, Rickard Nilsson wrote:
(can I somehow create a "clean" configuration in the root Xmonad, removing all defaults and just add a few global key bindings)?
Yes, quite easily: main = xmonad { keys = [...] } will assign only the key bindings you specify in the list. Ditto for mouseBindings. -- The only good is knowledge and the only evil is ignorance. Lucky Numbers 40, 27, 46, 28, 14, 5 LEARN CHINESE - Fish Yu 魚
participants (4)
-
Anders Engström
-
Devin Mullins
-
mail@justinbogner.com
-
Rickard Nilsson