Kyle->GetThoughts();



Removing the Cruft from the Nokia N810 - 3
11 February 2009 @ 04:05 PM MST
Current Music: Something good
Current Mood: Well
I was going to tackle ad-blocking for the built in MicroB browser next, but I want to do the customization stuff first instead. This entry will be more exciting because I remembered to add pictures! And, I figured out how to grab screenshots to make it all easier.

5. MAKING IT PRETTY:
Now, the themes that came pre-installed on the n810 look fine and all, but we can really do so much more to make this device wow-worthy when you show it off. Here's what I had after starting it up and playing around for a few minutes:

Boring n810 home screen


Not very exciting.

5.1 TAKING SCREENSHOTS:
Before we begin with making things pretty, lets set it up so we can take screenshots to make showing off the pretty easier. On the Maemo Development Tools page we can find some handy little tools. Most of these will be of no interest to anyone but developers or command-line enthusiasts. The one we want, however is the screenshot-tool. In order to install it we have to enable the "tools" application repository. Instructions on how to do that are on the bottom of the page listing the tools, here they are for your convenience:
Installation

These tools can be installed in the device by activating the Diablo tools repository in the Application manager. Developers can also install them to the device or in Scratchbox using the command line interface.

To activate the tools repository with the Application manager, create a new catalogue like this:
1. Start the Application manager
2. From its menu bar select Tools and then Application catalogue...
3. Press the New button
4. Enter the following:

Catalogue name: diablo tools
Web address: http://repository.maemo.org
Distribution: diablo/tools
Components: free non-free
Disabled: leave unchecked
Click OK


After setting up the repository it should go and grab the index and you'll be ready to install the tool. Note that you won't be able to access these tools from the Application Manager without being in Red Pill Mode, however we can still install them just fine from the command line:
~ $ root
BusyBox v1.6.1 (2008-09-18 09:43:17 EEST) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
Nokia-N810-43-7:~# apt-get install screenshot-tool


Now you should be good to go. In order to take a screenshot you can just do:
~ $ screenshot-tool screenshot.png or
~ $ screenshot-tool -d 5 delayed_by_5s.png
Where "-d x" delays the screenshot by x seconds (and gives you a little countdown in the terminal), this is nice for when you want to take a screenshot of some application other than the XTerm.

5.2 PERSONALIZING:
Let's make the Task Navigator (the ever-present left-hand menu) more useful and prettier. After much fiddling, fussing, breaking, (attempted) fixing, and reflashing, I've learned that there seems to be no user-adjustable way to remove the Contacts widget from the Task Navigator completely. The layout manager requires you to have 3 Large buttons in there. These 3 large buttons default to the Contacts, Web, and Applications widgets. I was hoping to just make it two buttons, but, alas, was not successful. So I did the next best thing. I installed the "Personal Menu" application and then via "Control Panel -> Panels" you can select the Personal Menu rather than Contacts to show up, which is much more helpful, since I won't be using the Contacts widget, but quickly accessing common applications is really nice.

Don't forget to customize the Personal Menu and then what remains in the Applications Launcher. (In the Applications Launcher I created a folder called "In Launcher" and moved all the apps that I included in my Personal Menu to that folder, and tucked it down at the bottom of the menu, out of the way).

The unfortunate thing is the icon of the Personal Menu (the little gear with an arrow in it), it's really not that appealing, or personal. So I decided to do something about it. Here's where things get fun. Doing some digging I easily found that variously sized versions of the icon existed at the following locations:

/usr/share/icons/hicolor/26x26/hildon/personal-menu.png
/usr/share/icons/hicolor/40x40/hildon/personal-menu.png
/usr/share/icons/hicolor/scalable/hildon/personal-menu.png


However, replacing these icons results in no change. Doing more digging I found out about the "gtk-update-icon-cache" command which builds a cache file of the available icons for more efficient access by the system. But, running this:
Nokia-N810-43-7:~# gtk-update-icon-cache /usr/share/icons/hicolor/ --force
Still had no effect. I tried a number of variations on this theme as well as rebooting a few times after making changes, but nothing worked. I was starting to get really frustrated. I went through several tuorials on creating custom applications to find that they seem to recommend placing icons in /usr/share/icons/hicolor/.../apps/ rather than .../hildon/. Which makes sense since it's an application icon rather than a system icon. But, this still ran contrary to the fact that those personal-menu.png files (which contain the image being used) were in the .../hildon/ directory.

So, in a last ditch effort I put a new icon into:

/usr/share/icons/hicolor/26x26/apps/personal-menu.png
/usr/share/icons/hicolor/40x40/apps/personal-menu.png
/usr/share/icons/hicolor/scalable/apps/personal-menu.png


And things started working the way I wanted (even without removing the other files from the .../hildon/ directories). It may not have been necessary, but I ran the gtk-update-icon-cache command again after making these changes. So far everything is good.

So, you ask, what did I change my Personal Menu icon to? I changed it to my Mii!. So now it's more of a Mii Menu. Of course, making this change was no small feat. There is no easy way to transfer Mii images from the Wii, and I don't have a video capture card. So I setup my projector and displayed the Mii onto a white sheet and took a picture. With some GIMP magic I was able to color correct it, crop, and resize it to what I wanted. Since personal-menu.png only appeared in 3 locations I created a 26x26 pixel version, a 40x40 pixel version (those go in the two respectively named directory hierarchies), and the one in 'scalable' is just a 64x64 pixel version (like the original personal-menu.png file in the .../hildon/ directory).

Now my desktop has a Mii for my Personal Menu, which makes me smile everytime I see it:

Personal Menu becomes Mii Menu



5.3 BACKGROUNDS:
I like nice backgrounds and getting them is really easy over at interfacelift.com. You can sort by resolution, and then popularity, etc. It's really quite nice. I grabbed a handful for my n810 background to use with the built-in Glasser theme. Here's my current one:

Customized n810 home screen



Alright, next up will be ad-blocking.

[This Entry]