Changing fonts on boxee box
Out of the box (pun not intended), the boxee box works does most of what it promises fairly well. It needs a bit of spit and polish, but it's a decent attempt - plus if it was done perfectly, there wouldn't be a way to get around the update screen on startup :)
Unfortunately, boxee, and therefore the boxee box, isn't very multilingual. In particular, the default skin font, Museo Sans, doesn't contain the glyphs needed to display non-Latin alphabet languages, e.g. Chinese, Japanese or Hebrew. It is a well known problem, but fortunately, there is a workaround - replace the skin font with another font that does contain those glyphs.
This is easy to do on a standard PC because you have full access to everything. Not quite the same on the boxee box - the main system runs off a read-only ISO (that isn't really an ISO, but close enough). Fortunately, there are some writable areas, including the area that stores user settings and metadata, as well as skins (boxee supports custom skins, but there's no UI to support this).
To change the fonts, you need to be running firmware version 0.9. On later firmware releases (version 1.0 or later), the box has been locked down a lot more and the hack used to gain command line access no longer works. There are various ways to downgrade back to version 0.9 though. This process is relatively fiddly; you should have some experience with the Linux commands if you're trying this.
Bypassing the initial update and future updates
- When you first turn on your boxee box, it should be running v0.9, but it will automatically try to download the latest update. To circumvent this, either connect to wifi, or disconnect the ethernet cable. If you're connecting via a cable, plug the cable back in once you get to the wireless configuration screen. If you get stuck at the update screen, power off the box and try again.
- Complete the rest of the configuration.
- Go to Settings -> Appearance -> Screensaver, and change Screensaver mode to Off. Note that Black is not the same as Off, and doing this may lead to potential burn-in on your display. If you leave the screensaver on though, boxee will pop up a dialog at some random point and you'll have to update or power off to get rid of it.
Getting access to the terminal
- Go to Apps -> Repositories (under Extras) .
- Click Add Repository, enter the following URL and click Done - http://erikkristensen.com/boxee/
- Select Erik's App Repository, then UnBoxed. Click Start to start the app.
- Click the Enable telnet button, and take note of your boxee box's IP address.
- Using telnet (if you're using Windows, try executing telnet in the command prompt; if it doesn't work, download and use PuTTY) connect to your boxee box at the default telnet port. No credentials are needed to connect.
Changing the font
To change the font, you first need to make a copy of boxee's default skin into the userdata area, before changing the skin fonts and finally the config to point to this new skin.
Make a copy of the default skin
Simply execute the commands below in order in the telnet session. The trailing dots are very important.
ln -s /opt/boxee/skin/boxee/720p .
ln -s /opt/boxee/skin/boxee/colors .
ln -s /opt/boxee/skin/boxee/media .
ln -s /opt/boxee/skin/boxee/sounds .
cp -r /opt/boxee/skin/boxee/Fonts .
cp /opt/boxee/skin/boxee/skin.xml .
Replace the font
The most complete free font I've found so far is the Droid Sans set of fonts, designed for the Android operating system. You could also use Arial Unicode MS (installed with Windows, located in C:\Windows\Fonts), but that doesn't look very nice in my opinion, especially on the big screen. The Droid Sans set of fonts are freely available here, or directly downloadable here in .tar.gz format. I've re-hosted a recent snapshot of the font though, so you won't need to download it manually.
Execute the following commands to replace with the Droid Sans font; adjust steps 2, 5, 6, 7 accordingly for other fonts. These steps pick up from the previous steps. You can get fonts on to the device either via the web with wget, a network share, or by plugging in an USB drive.
cp DroidSansFallback.ttf MuseoSans_500.ttf
cp DroidSansFallback.ttf MuseoSans_700.ttf
Changing the active skin
This last set of steps activates the derived skin on your boxee box. Because of the limited space on the device, the only interactive text editor available is vi, which can be intimidating to some people. An alternative would be to set up a network share or use a USB stick to transfer the file to a computer, modify it, and transfer it back.
Either way, to activate this alternative skin, you need to modify /.boxee/UserData/guisettings.xml. Once loaded, locate the following segment -
<lookandfeel> ... <skin>boxee</skin> ... </lookandfeel>
Now chance the value of the skin element to boxee-customfont, like this,
<lookandfeel> ... <skin>boxee-customfont</skin> ... </lookandfeel>
Save, transfer the file back to the boxee box if needed, then restart the boxee box. The default font should now have changed to whatever you changed it to, enabling you to see some CJK glyphs, instead of boxes.
To revert these changes, simply revert the changes under Changing the active skin, then delete the /.boxee/UserData/skin/boxee-customfont directory.
I haven't worked out a way to suppress the update notifications, so they'll be a bit annoying but bearable. If you upgrade, this hack may break and you won't be able to get terminal access to the box again without downgrading.
Thumbs up to the info over at boxeeboxwiki.org for the info on how to do this.