Ricing Out Your Linux Box
How to make your win32 friends drool
Chris Clymer/Omal
Ohio 2600/Cleveland LUG
What we'll cover:
- Prettying up your terminal
- Pimping out your desktop
- Using and creating your own desktop applets
[any material that should appear in print but not on the slide]
Which terminals to rice?
- aterm - very lightweight, small footprint. Fewer features.
- Eterm - medium footprint, oodles of esoteric features. Needs imlib2.
- konsole - built-in to KDE, extremely themeable. Large footprint if not running KDE, needs KDE's libraries
[any material that should appear in print but not on the slide]
Why these terminals?
aterm, Eterm, and konsole all have a few features in common:
- pseduo-transparency
- custom wallpaper, fonts, colors
- ability to hide scrollbars, widgets, window decorations
[any material that should appear in print but not on the slide]
aterm
[any material that should appear in print but not on the slide]
Eterm
[any material that should appear in print but not on the slide]
konsole
[any material that should appear in print but not on the slide]
Pimp out your desktop
Start with some new wallpaper, themes, and iconsets
- http://deviantart.com
- http://kde-look.org
- http://gnome-look.org
Don't be fooled by names, all of these sites have a variety of good platform-neutral content
[any material that should appear in print but not on the slide]
Applying wallpaper
- Fluxbox can't set wallpaper on its own. I use Eterm's "Esetroot"
- "fbsetbg" is just a frontend that looks apps like esetroot and hsetroot and uses them
- Desktop Environments like KDE and GNOME have their own built-in tools for this
[any material that should appear in print but not on the slide]
Fluxbox
[any material that should appear in print but not on the slide]
Fluxbox Icons
[any material that should appear in print but not on the slide]
How to get these
- Download and extract a set of icons
- Append a reference to the appropriate icon in ~.fluxbox/menu
- [exec] (firefox) {firefox} <~/.icons/ice/firefox/_48x48.xpm>~/.icons/ice/firefox/_48x48.xpm>
[any material that should appear in print but not on the slide]
Desktop applets
- Windowmaker Dockapps - http://dockapps.org
- Superkaramba - http://netdragon.sourceforge.net
- Gdesklets - http://www.gdesklets.org
- adesklets - http://adesklets.sourceforge.net
[any material that should appear in print but not on the slide]
Windowmaker Dockapps
- Written in C
- Work well in Windowmaker, Blackbox, Fluxbox, Enlightenment
- Pain in the ass to write your own
[any material that should appear in print but not on the slide]
adesklets
- Written in Python
- Uses Imlib2, just like Eterm and Esetroot
- relatively lightweight, good match for fluxbox, especially if you're using Eterm already.
- Not as many of them out there
[any material that should appear in print but not on the slide]
gdesklets
- Written in python
- Good match for Gnome, but also fairly platform-neutral
- Quite a few themes out there
[any material that should appear in print but not on the slide]
Superkaramba
- Written in Python
- Work well with KDE, uses its libraries
- A large library of them exist
- Stupidly easy to write your own!
[any material that should appear in print but not on the slide]
Slack Track
karamba x=0 y=0 w=230 h=150 interval=2000 locked=false mask="background.png"
image x=0 y=0 path="shadow.png"
defaultfont font="Arial" fontsize=9 color=255,255,255
text x=20 y=3 shadow=1 fontsize=16 bgcolor=100,100,100 value="Slackware-Current"
text x=20 y=20 value="Last Change:"
text x=20 y=30 color=255,0,0 sensor=program program="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt | head -1"
text x=20 y=40 value="Recent Changes:"
text x=20 y=50 color=255,0,0 sensor=program program="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt | grep / | grep -v // | cut -f1 -d : | head -5"
clickarea x=5 y=5 w=220 h=140 onclick="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt > ChangeLog.txt; kdialog --textbox ChangeLog.txt 600 500"
[any material that should appear in print but not on the slide]
Code
# set some sensible defaults, set a mask and background image to make it pretty
karamba x=0 y=0 w=230 h=150 interval=2000 locked=false mask="background.png"
image x=0 y=0 path="shadow.png"
defaultfont font="Arial" fontsize=9 color=255,255,255
[any material that should appear in print but not on the slide]
Code
text x=20 y=3 shadow=1 fontsize=16 bgcolor=100,100,100 value="Slackware-Current"
text x=20 y=20 value="Last Change:"
[any material that should appear in print but not on the slide]
Code
# this grabs date of last change by dumping top line of the changelog
text x=20 y=30 color=255,0,0 sensor=program program="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt | head -1"
#print "recent changes"
text x=20 y=40 value="Recent Changes:"
[any material that should appear in print but not on the slide]
Code
# this grabs the names of the last 5 packages changed
text x=20 y=50 color=255,0,0 sensor=program program="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt | grep / | grep -v // | cut -f1 -d : | head -5"
[any material that should appear in print but not on the slide]
Code
# this provides a click area which pops up the full changelog when clicked
clickarea x=5 y=5 w=220 h=140 onclick="lynx -dump ftp://ftp.slackware.com/pub/slackware/slackware-current/ChangeLog.txt > ChangeLog.txt; kdialog --textbox ChangeLog.txt 600 500"
[any material that should appear in print but not on the slide]
Slack Track Theme
[any material that should appear in print but not on the slide]