Arch Screenshot

Arch Linux is a far cry from the feature laden, n00b friendly, stable Zorin distro I last wrote about. Though Arch can incorporate all of the features usually installed by default in popular desktop distros like Ubuntu and Mint, its initial installation is arguably lighter weight than even Ubuntu minimal. Though it’s highly configurable and uses a rolling release model a la Gentoo, Arch uses a package manager (pacman) that installs precompiled binaries from the Arch community repositories. Arch has a fantastic wiki, so rather than rambling about its philosophy, advantages, and disadvantages, I’ll simply recommend reading The Arch Way.

In pursuit of a Linux distro upon which to build an HTPC/media center, I stumbled upon CrunchBang. I really liked the lightweight desktop environment and familiar apt package management, but the Debian backbone fell short when it came to up to date software. I wound up compiling a lot of software from source code, which ultimately led me to drop CrunchBang as an HTPC candidate. I’d wanted to try Arch for a while, so I set out to create a CrunchBang-styled installation using Arch.

Arch is not for the faint of heart. The base installation will present the user with nothing more than a login shell and root prompt. Though the learning curve was a bit steep, I managed to get up and running after a couple of evenings of tinkering. The result is a suite of media software along with my usual smattering of development tools alongside a lightweight, snappy, standalone installation of OpenBox (no desktop environment!). I’m likely to stick with it for quite some time!

Since a complete, step-by-step guide would be quite lengthy and largely just repeat what’s already covered in the Arch wiki, I’ll give an overview of my installation and provide some of my config files via GitHub.

openbox standalone

If you want a lightweight X environment, it doesn’t get much better than OpenBox. OpenBox is one of few window managers that provides window decorations and a desktop (right click) menu without the usual host of desktop environment helper apps. Add tint2 (task manager), and a couple of taskbar applets (volumeicon, nm-applet), and you’ve got a very sleek, capable desktop without the overhead of GNOME, KDE, or even Xfce. Add some fonts and theming, compton (compositing), hsetroot (wallpaper), and conky (desktop widget) to round out the look and feel of a more traditional DE.

transparent desktop terminal

Arch Screenshot I chose urxvt as my default terminal app. It’s very lightweight and surprisingly configurable via .Xresources. I even managed to “theme” it with solarized colors. Rather than installing tilda, guake, yakuake, etc, I decided to see if urxvt could reside semi-permanently and unobtrusively on my desktop…and it can! The trick is to use the -name flag to give the window a unique name, make the window title static/identifiable, and then tell OpenBox and compton to treat that window somewhat uniquely. Search for UrxvtDesktop in these files for the details:
autostart
.bashrc
compton.conf
rc.xml
.Xresources

transparency in configuration

I created a GitHub repo with many of my config files. You’re welcome to dig through them and see what works for you. For starters, look at .config/tint2/tint2rc, the keybindings in .config/openbox/rc.xml, the custom commands in .config/openbox/menu.xml, the opacity rules in .config/compton.config, and the .config/openbox/autostart script. I’ll try to keep the repo updated with my latest hacks.
GitHub repo: yuri_config
The table below includes some more software recommendations. Enjoy!

yuri’s software picks

package namedescription
accountsservicemanage users - supported by lightdm
acpibattery status (cli)
alsa-utilssound utilities (cli)
archeydisplay system info (cli)
astylesource code formatter - can be integrated with vim
chromiumbrowser of choice...for now
chromium-libpdfbrowser pdf plugin
chromium-pepper-flashbrowser flash plugin
compton-gitwm compositor - "compiz light"
conky-luasystem monitor (X)
faenza-crunchbang-icon-themesubdued icon theme
faenza-icon-themecolorful icon theme
fdupesremove duplicate files (cli)
fehimage previewer
gmrunGUI run command w/autocompletion
gnome-themes-standardfamiliar widget themes
gstreamer0.10-bad-pluginsrequired by some xbmc plugins
gstreamer0.10-good-pluginsrequired by some xbmc plugins
gstreamer0.10-ugly-pluginsrequired by some xbmc plugins
gvimgraphical editor, also installs vim
hsetrootset desktop wallpaper
lightdmlightweight graphical login manager
lightdm-gtk-greeter-settingsGUI configuration for gtk greeter
lightdm-gtk3-greeter-devellightdm greeter theme
lxappearance-obconfGUI configuration for openbox
mediterraneannight-theme-gitdark widget themes
mesa3d graphics
mp3gainnormalize mp3 audio files (cli)
network-manager-appletsystem tray applet for network-manager
networkmanagermanage networks (wifi)
nodejsjavascript platform
obconfGUI configuration for openbox
obmenuGUI configuration for openbox menus
openbox-themeswidget themes
packerwrapper for pacman - seamlessly integrates AUR
rxvt-unicodelightweight terminal
scrotscreenshot (cli)
thunarfile manager (Xfce's default)
tint2-svntask manager
ttf-dejavuVera based font family
ttf-google-fonts-gitTONS of fonts - Arimo, Cousine, Droid, Inconsolata, Roboto, etc
ttf-mac-fontsmac fonts - Garamond, Lucida Grande, etc
ttf-microsoft-consolasnice terminal font
ttf-ms-fontsfonts for when other fonts don't work
udiskieautomount usb drives - try udiskie --tray &
vlcmedia player
volumeiconsystem tray volume icon
waldorf-ui-themesubdued widget theme
wmctrlmanipulate X windows (cli)
xbmcmedia center
xclipX clipboard (cli)
xcursor-vanilla-dmzmouse cursor theme
xf86-video-intelIntel video drivers
xfburnGUI cd burner (Xfce's default)
xfce4-notifydX notify daemon (Xfce's default)
youtube-dldownload youtube video/audio (cli)


blog comments powered by Disqus

Published

05 June 2014

Category

Geekery

Tags