Making a Status Bar

From awesome
Jump to: navigation, search

WARNING! this page is outdated!

How to get a status bar, instead of the default "awesome ver# / name".

First, create a file with the name awesome-status and place it where you want to, this will be used to output the information we want to the awesome client.

Next, copy "awesome-client" to /usr/local/bin. If you can't find it, enter the following in a terminal:

$ updatedb
$ locate awesome-client

(Note: If you do not have an awesome-client you will have to compile it from source!)

So, now we have "awesome-client" residing in /usr/local/bin. Next, we need to make awesome-status executable.

$ chmod a+x /path/to/awesome-status

Now add

/path/to/awesome-status | /usr/local/bin/awesome-client &

to ~/.xinitrc before "exec awesome".


All that remains is to place items into the status bar. Below is a possible format of "awesome-status", as well as a few examples of what to place in it.


#!/bin/bash
delim=" | ";
printStatusInfo() 
{	
    /bin/echo "0 setstatustext ${item1}TEXT${delim}${item2}TEXT${delim}";
    # if you do not use xinerama, the next 3 lines are obsolete
    if [ "x$XINERAMA" = "xYES" ]; then
    /bin/echo "1 setstatustext ${item1}TEXT${delim}${item2}TEXT${delim}";
    fi
}
#close printStatusInfo()
while true; do
    printStatusInfo
    sleep 5;
done

Here are a few examples of what to put in place of "item1", "item2", etc.

Date and time:

ctime=`date '+%a, %d %b %H:%M'`;

With this, "awesome-status" would now be modified such:

#!/bin/bash
delim=" | ";
printStatusInfo() 
{	
    ctime=`date '+%a, %d %b %H:%M'`;
    /bin/echo "0 setstatustext Today's date and the current time: ${ctime}${delim}${item2}text${delim}";
    # if you do not use xinerama, the next 3 lines are obsolete
    if [ "x$XINERAMA" = "xYES" ]; then
    /bin/echo "1 setstatustext Today's date and the current time: ${ctime}${delim}${item2}text${delim}";
    fi
}#close printStatusInfo()
while true; do
    printStatusInfo | /usr/local/bin/awesome-client
    sleep 5;
done
Personal tools