Trying out LXDE
clux July 28, 2019 [software] #linuxDespite having been a lazy Cinnamon customer since the Linux Mint days, recently some interesting benchmarks started surfacing about input lag in various Window Mangagers, and this made me want to experiment a little.
This is a log of stuff I needed to tweak to get LXDE working well.
LXDE
LXDE is a free desktop environment with comparatively low resource requirements. This makes it especially suitable for use on older or resource-constrained personal computers such as netbooks or system on a chip computers.
Alrighty. A C
based WM using GTK+ 2
. Not used this since Gnome 2, back in the 2012 days.
Installation
Already had Arch Linux running LightDM as my Display Manager, so only needed the base install:
)
Then, logged out of cinnamon
, and switched WM from the login screen to LXDE
. Easy.
Input Lag
Tested this out immediately to see if it felt better. Funnily enough, I can only tell in certain games that require a bunch of precise inputs. Most of my other currently installed games felt the same. But they aren't really twitchy enough to tell.
That said, Necrodancer
definitely felt better. No longer any recogonizable input lag when playing Bolt
or Coda
, and had issues with those before on cinnamon
.
Quirks
Keyboard bindings
To be able to use this at all, I need some keyboard shortcuts to move windows between monitors. I tend to use Super+Left
and Super+Right
.
It was quite akward to set this up with lxhotkey
. The magical incantation (which took almost an hour to figure out) was:
"MoveResizeTo": "monitor:prev" : <Super>Left
"MoveResizeTo": "monitor:next" : <Super>Right
Interestingly, lxhotkey
is a 700 line .c file last touched 3 years ago.
No way to bind Super
to open the main menu AFAIKT, and man, that was hard to unlearn. Not that it matters, because there's no fuzzy start and type on the main menu anyway. Amazing how tied you get to that. Not sure I can deal with not having that now. Maybe there's some kind of fzf
panel type thing I can install?
Missing out of the box
Screen locker
Screensaver button kept spinning, timing out. Turns out xscreensaver
was not installed. Installing it fixed it, but it also pulled in like 15 perl packages, and looked absolutely awful.
Ended up installing slock
straight from pacman instead. No dependencies there, and it's one c file. No user input. Just a tree color screen. Black when locked, blue while typing, red on wrong password.
Didn't have to actually write slock
anywhere. It just worked after installing it (lxlock
apparently figures this out). I had taken out the broken xscreensaver
ref in ~/.config/lxsession/LXDE/autostart
anyway though.
Transparency
This is kind of necessary for me for any terminals as I frequently overlay them on code with ~70% opacity. Installing xcompmgr
straight from pacman and adding xcompmgr &
to ~/.config/lxsession/LXDE/autostart
fixed it.
Look and feel
Main panel
Needed about 15 minutes of configuration, and it ended up being stored in a 129 line file in ~/.config/lxpanel/LXDE/panels/panel
But ended up looking very nice. Transparency on the bar itself was a nice touch.
Though you can see that it gets confused if you have set a different background on each monitor, which is something you can do for some reason.
File manager
Fine, could make it look like nemo
in 5 minutes. You can see it in the background above. Had it's config in a tiny: ~/.config/pcmanfm/LXDE/pcmanfm.conf
.
General Theme
Default theme is quite ugly due to the overly glossy black panel, so you probably have to that transparent anyway. Everything kind of only fits the dark theme IMO. Went for the only decent one: Adwaita-dark
, but put on Mikachu
window borders. Nothing amazing, but completely fine.
Tiny file in ~/.config/lxsession/LXDE/desktop.conf
controls this.
Articles exist online on how to install themes for it, but that's probably the gtk3 version. The few I tried didn't work.
Verdict
The most awkward thing is the lack of a launcher bar so far. Performance is great. Keybindings are mostly workeable. If some better tiling-like commands can be set up maybe you can make do with alacritty
.
Seems completely useable. Most configs stashed in this PR.