Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have byobu installed on FreeBSD, with the users, uptime, load average, cpu count, cpu freq, mem available, mem used, date, and time notification modules enabled, in that order.

No matter what I do, I can not seem to figure out why the colors from the cpu freq module are 'bleeding right', and over-writing the colors for all the enabled modules behind it. I've gone over and over every single script enabled, and there seems to be nothing wrong yet still, "2.7GHz" is displayed white on grey, and that white on gray overlaps the memory which is supposed to be green, and the date and time which are supposed to have no colors. The cpu_freq module script is as follows:

color 2>/dev/null || color() { true; }

freq=$(sysctl hw.clockrate | awk '{ printf "%.1f", $2 / 1000 }')
printf "$(color b c W)%s$(color -)$(color c W)%s$(color -) " "$freq" "GHz"

screenshot of the issue:

Does anyone have any information on what could be causing this?

share|improve this question
up vote 1 down vote accepted

Good question...

The behavior you're seeing here is due to a bug (or limitation) in your version of screen.

If you look at the source of the file /usr/share/byobu/profiles/common, you'll see a note toward the bottom:

# NOTE: Older version of Screen have an arbitrary limit of only being able
# to change colors 16 times in this 'hardstatus string'.
# Ubuntu (fixed in Jaunty):
#  *
# Upstream:
#  *

The fix was applied to GNU Screen's git repository in January of 2010, but GNU Screen hasn't been released in 5+ years. Some distributions of GNU Screen (such as Debian and Ubuntu) have cherry-picked this simple, one-line fix. You might request that FreeBSD do the same.

Full disclosure: I'm the author and maintainer of Byobu, as well as the author of the fix as committed to the upstream GNU Screen source repository.

share|improve this answer
I actually just figured that out not 15 minutes ago while poking around the screen bugtracker. Now I'm trying to figure out how to apply that one line fix to screen and recompile it from the port to fix the issue. Thanks for the information! – tip120 May 7 '12 at 6:03

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.