Customizing the Nokia N800 (and 770) or how to configure the device for your purposes
Index:
- Introduction and Requirements
- STEP 1: Creating the necessary (startup)scripts and files
- STEP 2: Specific applications to be installed
- STEP 3: Customizing the look and feel
- STEP 4: Setting the basics in GCONF on Maemo
- Step 5: Other GCONF Settings: The Device Lock and SWAP
- STEP 6: adding the last lines: cleanup
- Delivery and Appendix: Interesting files
Step 5: Other GCONF Settings: The Device Lock and SWAP
Good you made it so far. I know, it is a long read but here are a few tips you could use still. As it is a corporate device, you need to ensure some sort of security. So why don’t we enable the pin code protection with GConf? The initial pin is everywhere the same but you need to give “easy” instruction on how to change this in the custom documentation you will deliver with the device. You were gonna make a small document for the management, weren’t you?
Right the lines for the device lock are this:
#Device lock we enable it and set it for 10 minutes.
#This locks the device after 10 minutes of being unused
/usr/bin/gconftool-2 --type bool --set /apps/osso/applet/osso-applet-devicelock/device_lock true
/usr/bin/gconftool-2 --type int --set /apps/osso/applet/osso-applet-devicelock/autolock_period 10
/usr/bin/gconftool-2 --type bool --set /system/osso/dsm/locks/devicelock_autolock_enabled true
/usr/bin/gconftool-2 --type int --set /system/osso/dsm/locks/devicelock_autolock_timeout 10
On the Nokia 770 you would make it like this:
#Device lock we enable it and set it for 10 minutes.
#This locks the device after 10 minutes of being unused
/usr/bin/gconftool-2 --type bool --set /system/osso/dsm/locks/devicelock_autolock_enabled true
/usr/bin/gconftool-2 --type int --set /system/osso/dsm/locks/devicelock_autolock_timeout 10
Of course there are many more and one interesting feature in the N800 is that you can enable SWAPPING from GCONF so that more memory is always available. I have not gotten this to work on my 770 though.
#Build internal SWAP
/usr/bin/gconftool-2 --type bool --set /system/osso/af/internal-mmc-swap true
This should enable swapping on the N800
Popularity: 100% [?]
Where *nix and security meet the general public
What is, or how I enable N800’s root password?
technically you don’t need it but you could just create a fake package with with an init script that modifies the sudoers file (or overwrites it) or you could just use the old flasher method (./flasher-3.0 –enable-rd-mode –reboot) this at least worked with beta products and the one production device I have. After you have flashed into r&d mode you can use the gainroot script to become root. This way is harder but might work https://maemo.org/maemowiki/HowDoiBecomeRoot2 or you could just try installing the 770 becomeroot package from here
cheers
//Flosse
Basically, I am not interested in flashing into the R&D mode, I am just interested in being able using sudo to install packages. You see, currently it asks me for a password when I use a terminal to install a package, but I don’t know what password to put there. The empty password doesn’t seem to cut it, neither the “maemo” one.
what about rootme ? otherwise, by tomorrow i can have a solution for you (mainly a root package that will give you root in xterm)
//Flosse
BTW, the reason I want to use the command line to install apps, is because the UI does not work! I have subscribed to about 5-6 hacker/Maemo.org repositories, some of them for Mistral instead of Bora, but the “installable applications” screen only shows me about 20-30 available apps, while there should be about 300 in there! I remember during one refresh, a few days ago seeing a lot of apps there, but then, they just vanished, and I never got them again. Any ideas what’s going on, and if the Application Manager automatically rejects Mistral apps from the listing? If yes, my only chance would be to use dpkg from the command line…
Here is the link to show how to become root on the 770 and 800:
http://maemo.org/maemowiki/HowDoiBecomeRoot2
You know the rules, right?
to see all the packages you have to activate the red pill mode:
https://maemo.org/maemowiki/ApplicationManagerRedPillMode
Btw, the becomeroot package i referred to earlier works like a dream on the N800. this will give you a root shell by typing sudo gaainroot, without prompting for a password.
//flosse
As seen at the top of the article, I made a package that will give you root access to the N800 without entering R&D mode. install package, open a shell and type sudo gainroot. Done, you have a rootshell. works like a charm and has been tested on several N800 devices with several software versions. IT is based on the original becomeroot package. Enjoy!
//Flosse
Thanks for the package! Quite useful. (And ditto the red pill tip from Sebi.)
I want to write mathematics and physics papers. The keyboard symbols currently only include superscripts for writing exponents up to 3 (i.e. “cubed”). How can I extend the possible symbols to include any superscripts, subscripts and Greek alphabet?
I am in progress setting up a N800 for a hand slideshow demo. Do you know what or where I need to modify in order to auto lanch the image viewer upon startup. I doesn’t look like the normal Linux routes work. Thanks.
Did you find a way to replace the initial NOKIA boot image?
hmm you CAN replace teh Nokia boot image but I am not sure if you should.as far as launching the slideshow, there are ways to modify of course the RC levels and add a line to it. on another note, if you want to launch a slideshow upon startup how would you exit it? If you dig through maemo.org you can find a descrption how the window manager is started, this can also be used to launch applications.
Should and interested in trying it out are 2 different things. Care to point me in the right direction? Thanks for the other tips.
ok adding the rc files is easy really as it is described in this article.. there is a discussion I found here: http://maemo.org/pipermail/maemo-developers/2006-September/005615.html
that touches the subject. probably hacking maemo-launcher and rc scripts would be the best way of doing it.
You can test this by installing the godmode.deb and xterm to get a root shell. that way you can hack the system. Installing your own deb will be done as root so you will get more or less teh same results.
You gotta love development
I was hoping for a pointing in a direction for the boot image. Yup. Development is VERY fun
oh.. the boot image.. hmmm… if i could only remember where i saw that…. i will have to get back to you on that one…
uh. huh. OK.
Hi JB, here is the info I was able to gather. You will have to do actual development and make a custom kernel boot image based on the scratchbox and development documentation here: http://maemo.org/development/documentation/tutorials/Maemo_tutorial_bora.html . That is is possible, to do so can be seen here: http://maemo.org/downloads/product/kernel/ as this is a custom kernel that you can flash with flasher-3.0 -k zImage-file -f -R. The problem is since Maemo is not the always standard Linux distro, reading will be needed and I am not that much of a developer.
sorry I can’t be more help but this is a bit outside what I tried to accomplish with this tutorial.
//flosse
Thanks. Any direction has helpful. Now I’m off to see what I can do.
I found this tutorial and it is exactly what I need, but the links to user environment file (user.tar.gz) no longer work. Can you point me in the right direction to get this file so that i can continue with the tutorial?
hi, I wonder if you can give a force with this problem..i am trying to install my custom deb (great article btw) in the SDK using fakeroot dpkg -i jiboia.deb and i get dpkg: error processing jiboia.deb (–install): error creating directory `./home/user’: Permission denied
the deb is lintian and linda clean
Something on debugging/testing your customizations in your follow up article would be great!!
Hi Ian, I would check. are you creating your home/user directory in your postinst script? it shouldn’t try to create the directory if it already exists, which it should since you are using scratchbox. I have never used scratchbox, I like to test with a live device simply because a) you cannot brick it easily, you can always reflash and b) you will then know the user experience as it will be on the devices. I will check into this though…
My process was:
1. Made the deb in system (ubuntu Feisty) home directory /home/vern like this (fakeroot dpkg -b jiboia jiboia.deb)
2. Copied the deb like this to scratchbox (on same machine):
vern@N800-hacker:/home/vern# cp jiboia.deb /scratchbox/users/vern/home/vern/
3. Tried to install the deb:
[sbox-SDK_ARMEL: ~] > fakeroot dpkg -i jiboia.deb
(Reading database … 17741 files and directories currently installed.)
Unpacking jiboia (from jiboia.deb) …
dpkg: error processing jiboia.deb (–install):
error creating directory `./home/user’: Permission denied
dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
jiboia.deb
So to get round this we need to create a symbolic link
in /scratchbox/users/vern/home/ from user/ to vern/
ln -s vern user
This way any script that uses the hard-coded path ‘/home/user’ will actually use your home dir through the link.
The links to user environment file (user.tar.gz) no longer work. Where can I download the files for the N800?
The N800 link for the ‘user.tar.gz’ file can be found by going to the parent directory of the broken link:
http://blog.2blocksaway.com/files/
you’ll see the filename should actually be ‘user-800.tar.gz’
ok, I think this is fixed now. why it wasn’t I do not know but the link now works.
//Flosse
I am trying to tether the 770 to my LG VX8300 phone. To date no luck. Has anybody done this?
dano, you mean you cant pair via bluetooth?? Any specific error messages?
Do you know of the file/setting that will increase the amount of time it takes to show the right-click menu of an application. Currently, if you hold the stylus down for more than 1 second, a context menu appears. I want to increase this time. Specifically, I want to stop (delay) the context menu of a Flash application.
Thanks
SW
How to disable right-click feature at all?
[…] статьи от flosse “Customizing the Nokia N800 (and 770) or how to configure the device for your purposes” оригинал на английском в pdf - […]
[…] published several articles on tweako.com and some of them became VERY popular. My Nokia N800 and N770 article got picked up, through tweako , by Tabletblog and Wired’s blog […]
[…] published several articles on tweako.com and some of them became VERY popular. My Nokia N800 and N770 article got picked up, through tweako , by Tabletblog and Wired’s blog […]
[…] müssen wir uns den Root-Zugang zu unserem N800 besorgen. Surft dazu mit den N800 das 2 Blocks away Blog an, scrollt runter (muss man ewig scrollen, bis der Text in der mittleren Spalte erscheint) und […]