# Configuration Variables
MODKEY=Mod4
WMII_TERM="mrxvt"
And then added my status bar script. Surprisingly (or not), I made a few mistakes in my last status bar script I posted previously. You see, I copied the script by typing manually to blogspot, rather than using a text editor's copy/paste function. Furthermore, some of the mistakes are less forgiven in OpenBSD 4.8 than in previous installation. The battery status is not working properly in 4.8. I guess I haven't tested the script thoroughly before although I think previously the script was working ok. Now I've rewritten the battery status script and it seems to be working fine now. So here I'll post the (hopefully) working version of my status bar script. It's still displaying the system cpu usage, free memory, main/extended battery status, a/c adapter status & date time. As for WMII_TERM="mrxvt", that's because I installed mrxvt to replace xterm in wmii.
Here's the updated script for my wmii Status Bar:
# Status Bar info
status() {
# This is for the main battery, if there's none, just display nothing.
if [[ $(sysctl -n hw.sensors.acpibat0) != '' ]]; then
bat0full=$(sysctl -n hw.sensors.acpibat0.amphour0 | sed s/.A.*//)
bat0warn=$(sysctl -n hw.sensors.acpibat0.amphour1 | sed s/.A.*//)
bat0low=$(sysctl -n hw.sensors.acpibat0.amphour2 | sed s/.A.*//)
bat0now=$(sysctl -n hw.sensors.acpibat0.amphour3 | sed s/.A.*//)
# Get the battery capacity in percentage
bat0cap=`echo "100 * ${bat0now} / ${bat0full}" | bc`
bat0p="$bat0cap%"
# Get the charging status of the battery, replace with symbols
bat0s=$(sysctl -n hw.sensors.acpibat0.raw0 | sed 's/'0'.*//; s/'1'.*/-/; s/'2'.*/+/; s/'4'.*/!/')
else
bat0p=`echo ""`
bat0s=`echo ""`
fi
# This is for extended battery, if it's installed, display the status. Else just display nothing.
if [[ $(sysctl -n hw.sensors.acpibat1) != '' ]]; then
bat1full=$(sysctl -n hw.sensors.acpibat1.amphour0 | sed s/.A.*//)
bat1warn=$(sysctl -n hw.sensors.acpibat1.amphour1 | sed s/.A.*//)
bat1low=$(sysctl -n hw.sensors.acpibat1.amphour2 | sed s/.A.*//)
bat1now=$(sysctl -n hw.sensors.acpibat1.amphour3 | sed s/.A.*//)
# Get the battery capacity in percentage
bat1cap=`echo "100 * ${bat1now} / ${bat1full}" | bc`
bat1p="$bat1cap%"
# Get the charging status of the battery, replace with symbols
bat1s=$(sysctl -n hw.sensors.acpibat1.raw0 | sed 's/'0'.*//; s/'1'.*/-/; s/'2'.*/+/; s/'4'.*/!/')
else
bat1p=`echo ""`
bat1s=`echo ""`
fi
# Get the AC Adapter status
ac0=$(sysctl -n hw.sensors.acpiac0.indicator0 | sed s/.'('.*//)
# Get the free memory data using top
memfree=$(top | grep Memory | sed 's/.*Free:.//; s/.Swap.*//')
# Get the CPU usage via top
cpuuse=$(top | grep 'CPU states:' | sed 's/.*nice..//; s/.sys.*//')
# Display the status bar
echo CPU: $cpuuse '|' Mem: $memfree '|' Bat: ${bat0p}${bat0s} ${bat1p}${bat1s} '|' AC: $ac0 '|' $(date)
}
Another thing, I changed the X Display Manager to Simple LogIn Manager (SLiM). I would've stick with xdm if not for the fact that xdm (currently) can't let me choose which X session I want to start (wmii or XFCE4). After I installed SLiM, I opened up /etc/rc.local and added:
# Add your local startup actions here.
# This is for SLiM
if [ -x /usr/local/bin/slim ]; then
echo -n ' slim'; /usr/local/bin/slim -d &
fi
echo '.'
Do make sure that xdm has been disabled in /etc/rc.conf.local or /etc/rc.conf. After that I edited SLiM's config file /etc/slim.conf:
# NOTE: if your system does not have bash you need
# to adjust the command according to your preferred shell,
# i.e. for freebsd use:
login_cmd exec /bin/ksh -l ~/.xinitrc %session
# Available sessions (first one is the default).
# The current chosen session name is replaced in the login_cmd
# above, so your login command can handle different sessions.
# see the xinitrc.sample file shipped with the slim sources
sessions wmii,xfce4
Unfortunately installing the SLiM from package doesn't provide me with xinitrc.sample stated above. After googling for samples, I managed to edit my ~/.xinitrc for SLiM's use:
# This is for SLiM
DEFAULT_SESSION=wmii
case $1 in
wmii)
xscreensaver &
eval `cat ~/.fehbg`
exec wmii
;;
xfce4)
exec startxfce4
;;
*)
xscreensaver &
eval `cat ~/.fehbg`
exec $DEFAULT_SESSION
;;
esac
Now at SLiM's login screen, I can choose the window manager I want to use with F1.
Oh yeah, I'm back on wmii. Not that I don't like xfce. Well xfce is a great desktop environment. But there's something about wmii that kept getting back at me. Currently I'm still using Thunderbird with DavMail, still trying to set up Alpine with DavMail. Will post something on that later.
Update: I'm back to xterm instead of mrxvt. Using xterm-256color is enough for me.
Update: I was thinking about giving a preview on what will be displayed on the status bar. So here it is. This preview is my machine on extended battery (which is charging), on AC adapter. Sorry no fancy picture or anything:
CPU: 4.5% | Mem: 456M | Bat: 100% 76%+ | AC: On | Fri Dec 10 15:27:10 MYT 2010
No comments:
Post a Comment