66 lines
3.6 KiB
Markdown
66 lines
3.6 KiB
Markdown
A fried of mine installed [Archlinux](http://archlinux.org) on his PC
|
|
the other day, for which I applaud him as it **is** the best distro
|
|
out there, and it got me thinking about some of the programs I've
|
|
found after venturing outside of the safety of a desktop environment
|
|
like [GNOME](http://gnome.org) or [KDE](http://kde.org).
|
|
|
|
The closest thing I've come to a desktop environment *outside* of one
|
|
was the [awesome](http://awesome.naquadah.org) window manager. By
|
|
default it comes with a system tray and notifications (daemon). This
|
|
makes for a very easy transition as those are two of the things that
|
|
seem to be in a bit of a short supply. There are plenty of file
|
|
managers (although [ZSH](http://zsh.sourceforge.net/) and
|
|
[Emacs](http://gnu.org/software/emacs) are good enough for me) and, of
|
|
course, window managers. Another cool thing is that it is one of the
|
|
most programmable window managers around. If you learn a bit of lua
|
|
you can make some very nice customizations.
|
|
|
|
There are lots, or at least a couple, of tray applications, like
|
|
[Stalonetray](http://stalonetray.sourceforge.net/) and *trayer* (part
|
|
of the [FVWM-Crystal](http://home.gna.org/fvwm-crystal/) project, but
|
|
seemingly also usable stand-alone), but I've never really tried them
|
|
since I don't use any applications that show an icon there.
|
|
|
|
A notifications daemon seemed most difficult to find back when I
|
|
stopped using *GNOME*. I did without for a while, but eventually
|
|
someone wrote [dunst](http://knopwob.github.com/dunst/) and my problem
|
|
was solved. It's very easy, and is fairly configurable. Just start
|
|
it in the background from your `.xinitrc` and all should be well.
|
|
|
|
[dmenu](http://tools.suckless.org/dmenu/) is a very nice menu system
|
|
with very few dependencies. *dunst* also seems to have based its
|
|
funcion/look on *dmenu*. I mostly use it as a program launcher, but
|
|
give it a list of possibilities and configure it the way you like and
|
|
you can use it for pretty much any kind of selection.
|
|
|
|
[dzen2](https://sites.google.com/site/gotmor/dzen) is another very
|
|
versatile piece of software. It can be used to create a status bar.
|
|
It has a funky syntax, but once you get the hang of it it's really
|
|
cool. The most interesting part is that takes whatever you want it to
|
|
show from `stdin` and parses it for its own syntax and that's about
|
|
it. This means that it's pretty much configurable in *any* language.
|
|
A shell script might be most obvious, since piping input and output is
|
|
really easy, but if you know your way around python, lisp, C or pretty
|
|
much anything that can open pipes to other applications you can use
|
|
that too.
|
|
|
|
If you have a window manager with some kind of IPC or another way to
|
|
call commands through an external application, like the
|
|
`awesome-client` for *awesome* you could also use
|
|
[xbindkeys](http://www.nongnu.org/xbindkeys/xbindkeys.html), which
|
|
offers a pretty nice way to configure your keybindings in a
|
|
WM-independent way. If you have it compiled with support for guile it
|
|
gets even cooler, because then you have a complete programming
|
|
language to configure it with, which offers tricks like multi-level
|
|
keybindings, kind of like *Emacs* (for example `C-i w` or `C-i p b c`
|
|
and things like that).
|
|
|
|
That's most if what I've found that I still use. These don't replace
|
|
everything a desktop environment offers, of course, but automounting
|
|
is not something I miss a lot, though that too is
|
|
[possible](https://wiki.archlinux.org/index.php/Automount#Udisks), and
|
|
I don't even remember anything else a desktop environment does. So I
|
|
hope there is at least one interesting application you might use in
|
|
here. If you know any others, feel free to let me know about them.
|
|
|
|
[[!tag wm linux software desktop]]
|