Looking to deploy xmonad to ~20 employees

Hey all, I've been running xmonad for a while now, and I'm very happy with it, so happy in fact that I'm contemplating moving most of my employees from Windows XP to Linux with xmonad. Most of them are only using a specific set of applications, so we don't really need the extra hassle of having a WM/DE with all sorts of bells and whistles. I do though have a couple of issues: 1. We need to be able to run a legacy Windows application. I plan on solving this with VirtualBox, and I would like for my employees to have this application available fullscreen at workspace 1, but when I fullscreen the virtual XP on this workspace, the bottom part of Windows "fall out" below the monitor. This is because I have xmobar running. If I disable xmobar the problem goes away. But I only want to disable xmobar for this one workspace. Is there a way to disable struts on a single workspace, preferably in xmonad.hs? 2. I want to start a few programs on xmonad startup. What is considered best practice, .xinitrc or .xmonad.hs? 3. How can I change the shift+mod+[c|q] shortcuts to something insanely impossible? I don't want people killing stuff by mistake. 4. VNC access. I'm guessing this works just the same as with KDE/Gnome, but I'd be interested in hearing if anybody got some experiences to share. I guess that's all for now. I'm pretty excited about this, and I do hope everything can be made to work in a satisfactory way. :o) Thomas Løcke

Hi, Am Sonntag, den 13.01.2013, 14:52 +0100 schrieb Thomas Løcke:
1. We need to be able to run a legacy Windows application. I plan on solving this with VirtualBox, and I would like for my employees to have this application available fullscreen at workspace 1, but when I fullscreen the virtual XP on this workspace, the bottom part of Windows "fall out" below the monitor. This is because I have xmobar running. If I disable xmobar the problem goes away. But I only want to disable xmobar for this one workspace. Is there a way to disable struts on a single workspace, preferably in xmonad.hs?
I assume you are using XMonad.Hooks.ManageDocks and avoidStruts to make things avoid xmobar? In that case, try "sendMessage ToggleStruts" to see if that yields the behavior you want, i.e. the VirtualBox window _above_ xmobar. I guess it is possible to enable avoidStruts only on some workspaces, probably with XMonad.Layout.PerWorkspace – I have not used that.
2. I want to start a few programs on xmonad startup. What is considered best practice, .xinitrc or .xmonad.hs?
I’d say .xinitrc.
3. How can I change the shift+mod+[c|q] shortcuts to something insanely impossible? I don't want people killing stuff by mistake.
Remove it completely? Or maybe have them enter commands in a XMonad.Prompt.XMonad. Gruß, Joachim -- Joachim Breitner e-Mail: mail@joachim-breitner.de Homepage: http://www.joachim-breitner.de Jabber-ID: nomeata@joachim-breitner.de

On Sun, Jan 13, 2013 at 3:56 PM, Joachim Breitner
I assume you are using XMonad.Hooks.ManageDocks and avoidStruts to make things avoid xmobar? In that case, try "sendMessage ToggleStruts" to see if that yields the behavior you want, i.e. the VirtualBox window _above_ xmobar.
I guess it is possible to enable avoidStruts only on some workspaces, probably with XMonad.Layout.PerWorkspace – I have not used that.
I do use "sendMessage ToggleStruts" in my own xmonad.hs to toggle xmobar on/off, but I've no idea how to A. make it affect only a specific workspace and B. automatically call it when xmonad is started.
2. I want to start a few programs on xmonad startup. What is considered best practice, .xinitrc or .xmonad.hs?
I’d say .xinitrc.
Yea, it sounds like the most sane route to take.
3. How can I change the shift+mod+[c|q] shortcuts to something insanely impossible? I don't want people killing stuff by mistake.
Remove it completely?
I do want to retain the functionality, I just want to make it a bit harder to hit those keys by mistake.
Or maybe have them enter commands in a XMonad.Prompt.XMonad.
You mean putting the functionality of S-M-c in a prompt? :o) Thomas Løcke

Hi, Am Montag, den 14.01.2013, 10:15 +0100 schrieb Thomas Løcke:
On Sun, Jan 13, 2013 at 3:56 PM, Joachim Breitner
wrote: I assume you are using XMonad.Hooks.ManageDocks and avoidStruts to make things avoid xmobar? In that case, try "sendMessage ToggleStruts" to see if that yields the behavior you want, i.e. the VirtualBox window _above_ xmobar. I guess it is possible to enable avoidStruts only on some workspaces, probably with XMonad.Layout.PerWorkspace – I have not used that.
I do use "sendMessage ToggleStruts" in my own xmonad.hs to toggle xmobar on/off, but I've no idea how to A. make it affect only a specific workspace and B. automatically call it when xmonad is started.
Untested Code: If your current layout looks like this: layoutHook = avoidStruts (tall ||| mirror tall ||| ...) then change it to layoutHook = let common = (tall ||| mirror tall ||| ...) in onWorkspace "1" common (avoidStruts common) Greetings, Joachim -- Joachim Breitner e-Mail: mail@joachim-breitner.de Homepage: http://www.joachim-breitner.de Jabber-ID: nomeata@joachim-breitner.de

Quoting Thomas Løcke
I do use "sendMessage ToggleStruts" in my own xmonad.hs to toggle xmobar on/off, but I've no idea how to A. make it affect only a specific workspace and B. automatically call it when xmonad is started.
I think the best suggestion is the one you ignored: use XMonad.Layout.PerWorkspace to set that workspace's layout to one that doesn't include avoidStruts. See http://hackage.haskell.org/packages/archive/xmonad-contrib/0.11/doc/html/XMo... for details. I've run xmonad inside VNC with no problems before, if you were looking for a testimonial there. If you're looking for advice, can you say what it is you're worried about? ~d

On Mon, Jan 14, 2013 at 2:58 PM,
I think the best suggestion is the one you ignored: use XMonad.Layout.PerWorkspace to set that workspace's layout to one that doesn't include avoidStruts. See http://hackage.haskell.org/**packages/archive/xmonad-** contrib/0.11/doc/html/XMonad-**Layout-PerWorkspace.htmlhttp://hackage.haskell.org/packages/archive/xmonad-contrib/0.11/doc/html/XMo... for details.
I'll take a look at it and see if I can work it out.
I've run xmonad inside VNC with no problems before, if you were looking for a testimonial there. If you're looking for advice, can you say what it is you're worried about?
x11vnc is working flawlessly, so no problems there. :o) Thomas Løcke

On Mon, 14 Jan, 2013 at 09:15:10 GMT, Thomas Løcke wrote:
3. How can I change the shift+mod+[c|q] shortcuts to something insanely impossible? I don't want people killing stuff by mistake.
Remove it completely?
I do want to retain the functionality, I just want to make it a bit harder to hit those keys by mistake.
There is XMonad.Actions.Submap which allows you to put these as something like: Ctrl-Meta-q y and Ctrl-Meta-k y if you really want to. I use Ctrl-I locally as a prefix for XMonad so that other bindings are open for other apps and to minimize damage caused by wayward cats (I also got hooked on prefixes from the time I used ratpoison). --Ben.

Hello On Sun, Jan 13, 2013 at 02:52:54PM +0100, Thomas Løcke wrote:
I've been running xmonad for a while now, and I'm very happy with it, so happy in fact that I'm contemplating moving most of my employees from Windows XP to Linux with xmonad. Most of them are only using a specific set of applications, so we don't really need the extra hassle of having a WM/DE with all sorts of bells and whistles.
I hope they don't eat you alive for that ;-).
1. We need to be able to run a legacy Windows application. I plan on solving this with VirtualBox, and I would like for my employees to have this application available fullscreen at workspace 1, but when I fullscreen the virtual XP on this workspace, the bottom part of Windows "fall out" below the monitor. This is because I have xmobar running. If I disable xmobar the problem goes away. But I only want to disable xmobar for this one workspace. Is there a way to disable struts on a single workspace, preferably in xmonad.hs?
I know that's not exactly what you're asking for, but there are two other possibilities (I think both need the VirtualBox guest additions inside the virtual machine): • Let the Windows auto-resize according to the size of the VirtualBox window. That way, the Window desktop would be slightly smaller, but nothing would be missing. • There's some kind of seamless mode in VirtualBox. It then just takes the windows inside the virtual machine and tries to present them as stand-alone windows in your WM, removing all the Windows desktop and taskbar, etc.
4. VNC access. I'm guessing this works just the same as with KDE/Gnome, but I'd be interested in hearing if anybody got some experiences to share.
It's not VNC as such, but I use xmonad through ssh X11 forwarding (so I have local X server, remote xmonad and all the programs). It works well this way and in mixed mode too (some programs local, some remote, xmonad on either computer). I guess VNC wouldn't make much difference, since it's only transferring the final image somewhere else, so it shouldn't make a difference with the window manager used. With regards -- Commenting perl code is useless. You have to fully parse it anyway to find comments. Michal 'vorner' Vaner

On Sun, Jan 13, 2013 at 4:27 PM, Michal 'vorner' Vaner
I hope they don't eat you alive for that ;-).
They are used to running Windows XP. It is slow, it crashes (mostly due to the legacy application I mentioned) and due to security reasons (XP being what it is) a lot of stuff isn't allowed. With Linux/xmonad we can open up a bit more, and they will get the benefit of running the legacy application in a WM that will reboot lightning fast. The only thing they might eat me alive for, is the lack of easy personal customization of things such as wallpapers. I know that's not exactly what you're asking for, but there are two other
possibilities (I think both need the VirtualBox guest additions inside the virtual machine): • Let the Windows auto-resize according to the size of the VirtualBox window. That way, the Window desktop would be slightly smaller, but nothing would be missing.
It eats too many vertical pixels. The legacy application isn't too pleased with that.
• There's some kind of seamless mode in VirtualBox. It then just takes the windows inside the virtual machine and tries to present them as stand-alone windows in your WM, removing all the Windows desktop and taskbar, etc.
I intend to try this, but I'm not too sure it will work. I suspect the task bar will "fall out" also, unless I can somehow get rid of xmobar on that specific workspace. But seamless is most certainly an option.
It's not VNC as such, but I use xmonad through ssh X11 forwarding (so I have local X server, remote xmonad and all the programs). It works well this way and in mixed mode too (some programs local, some remote, xmonad on either computer).
I guess VNC wouldn't make much difference, since it's only transferring the final image somewhere else, so it shouldn't make a difference with the window manager used.
I need plain old vanilly VNC access for support. If someone is having issues with their system I need to be able to log in and see the problem and help them fix it. This rules out X11 forwarding I believe. :o) Thomas Løcke

On Sun, Jan 13, 2013 at 02:52:54PM +0100, Thomas Løcke wrote:
Hey all,
I've been running xmonad for a while now, and I'm very happy with it, so happy in fact that I'm contemplating moving most of my employees from Windows XP to Linux with xmonad. Most of them are only using a specific set of applications, so we don't really need the extra hassle of having a WM/DE with all sorts of bells and whistles.
I do though have a couple of issues:
1. We need to be able to run a legacy Windows application. I plan on solving this with VirtualBox, and I would like for my employees to have this application available fullscreen at workspace 1, but when I fullscreen the virtual XP on this workspace, the bottom part of Windows "fall out" below the monitor. This is because I have xmobar running. If I disable xmobar the problem goes away. But I only want to disable xmobar for this one workspace. Is there a way to disable struts on a single workspace, preferably in xmonad.hs?
2. I want to start a few programs on xmonad startup. What is considered best practice, .xinitrc or .xmonad.hs?
3. How can I change the shift+mod+[c|q] shortcuts to something insanely impossible? I don't want people killing stuff by mistake.
You can change default keybindings by removing them and then adding new ones. Using http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Util-EZConfig.html makes it fairly simple. -Brent
participants (6)
-
Ben Boeckel
-
Brent Yorgey
-
Joachim Breitner
-
Michal 'vorner' Vaner
-
Thomas Løcke
-
wagnerdm@seas.upenn.edu