User:Caze
Here I will note some things concerning diverse stuff around maemo on n900 that might come in handy later for me. Or maybe for you.
Contents |
root
to gain root superuser privileges, which you need e.g. for manual package installation etc, install rootsh, in xTerminal type:
root
partitions
the N900 filesystem is, to my liking, inconveniently set up.
as root:
sfdisk -l cat /etc/fstab
informs you that you have
Device Boot Start End #cyls #blocks Id System /dev/mmcblk0p1 1 884864 884864 28315648 c W95 FAT32 (LBA) /dev/mmcblk0p2 884865 950400 65536 2097152 83 Linux /dev/mmcblk0p3 950401 974976 24576 786432 82 Linux swap / Solaris /dev/mmcblk0p4 0 - 0 0 0 Empty
mounted as
rootfs / rootfs defaults,errors=remount-ro,noatime 0 0 /dev/mmcblk0p1 /home/user/MyDocs vfat noauto,nodev,noexec,nosuid,noatime,nodiratime,utf8,uid=29999,shortname=mixed,dmask=000,fmask=0133,rodir 0 0 /dev/mmcblk0p2 /home ext3 rw,noatime,errors=continue,commit=1,data=writeback 0 0 /dev/mmcblk0p3 none swap sw 0 0
thus, you can only run binaries and scripts if they are in root (227mb; physically, they are on a 256MB OneNAND chip) or in /home (2gb) and not in /home/user/MyDocs (28gb)! (Physically, the latter plus the swap partition reside in a 32GB EMMC, which is capable of about a third the reading speed of the OneNAND.)
optification
Several apps in maemo extra devel repository will install to rootfs, where you have only 227mb. Nice apps (and system components) don't behave like that, they install to /home/opt and are called "optified" when having learned to behave well like that, or are just forced out and merely symbolically linked to their original place.
rootfs size problems
The filesystem rootfs, mounted in /, is a speciel partition of 227,8 mb containing some preinstalled programs, global configuration info and data. Some apps from "maemo extra devel" will also install there. A notable example is Abiword, which, sadly being unoptified yet, currently uses up 10mb on rootfs. You can check how much space is consumed totally by entering "df -h" in xTerminal (usually the first line of output).
Even better, use storageuse, which shows a red circle and via "Scan Packages" function shows also which apps use what, where rootfs usage is in red. When you come close to 100%, a lot of mischief can happen, e.g., you may get "write error - write (28 no space left on device)" when trying to access extras devel in Program Manager.
How to free space? When you reflash, rootfs will be reset also (of course). But you would rather try the methods suggested in Free up rootfs space, e.g., having rootsh installed, in xTerminal:
root apt-get clean apt-get autoclean
There is also a nice script by User:Tanner (see also another one, and a more radical repartitioning method), which i have modified to include some more directories:
#!/bin/sh # N900 script to safely free space on rootfs # (c) 2010 by Thomas Tanner <tanner@maemory.com>, modified by Caze (http://wiki.maemo.org/User:Caze) # licensed under GPLv3 # move root stuff to /home dirs="usr/share/icons usr/share/nokia-maps usr/share/pixmaps usr/share/hildon-welcome usr/share/themes usr/share/fonts usr/share/locale usr/lib/locale var/lib/apt" #optional: var/lib/dpkg if test -d /home/var/cache/apt; then # keep existing apt cache rm -rf /var/cache/apt ln -s /home/var/cache/apt /var/cache/apt else dirs="$dirs var/cache/apt" fi (cd / && du -sc $dirs) for d in $dirs; do test -L /$d && continue echo moving /$d rm -rf /home/$d mkdir -p /home/$d cp -a /$d /home/$d/.. rm -rf /$d ln -s /home/$d /$d done
i suggest you copy this to in some texteditor on your pc, save it, copy it to n900 connected via usb (don't save on fat partition on sd card but on ext3 partition somewhere else), disconnect, having installed rootsh, start xTerminal on n900, cd to where you saved the script,
root chmod +x thisscript.sh ./thisscript.sh
install further apps
you can put the Application Manager in a mode that supports "Install from file", which is, for trivial reasons, called "Red Pill" mode. It is activated by selecting "Application catalogues" from the drop-down menu, tapping "New", entering "matrix" as URL, tapping outside the focus window, selecting "Red".
this does no more than
dpkg -i thusandso.deb
but might be a bit faster when you just have no xterm open. note it does not check package dependencies, as opposed to
apt-get install thusandso
remote desktop
ssh, telnet, vnc (multiple alternatives) and rdesktop (for w2k/nt) work (among others, i suppose). also, logmein should.
java
n900 comes with ThumbEE, a proprietary java optimizer (general JIT, not JVM-specific), a successor of Jazelle which came with N770, N800 and N810. You can have Sun Java SE (for applets, not J2ME, which is what mobile phone games etc in .jar files use) from Easy Debian. for J2ME over J2SE, use MicroEmulator. You could also apt-get netbeans from debian/lenny. See also [1], [2] and [3].
android
you should be able to install nitroid. or wait for vmware on n900?
(older) mac emulation
basilisk II should work.
amiga emulation
is work in progress.
tracker
the media on your phone is automatically catalogued by a tracker daemon called trackerd. it is configured by /home/user/.config/tracker/tracker.cfg . applications like the media player use the information tracker collects. you can change the paths that are searched by manually editing this cfg file, e.g. to include subfolders on your microsd card (mounted as /media/mmc1) or to exclude stuff you want to keep a bit more private. you could use e.g. vi or leafpad for the editing of this file or use tracker-cfg in extras-devel. to restart tracker:
tracker-processes -r /usr/lib/tracker/trackerd &
shortcuts
there are several N900_shortcuts_and_gestures. note also, in the form of context - action - result: - anywhere - double press power button - lock - anywhere - ctrl+backspace - task switcher - menu/multitasing shortcut/icon - long press - back to desktop - text input - double tap ctrl - hold upper case - text input - double tap function key - hold numerics input - text input - ctrl+shift+p - screenshot - text input - ctrl + x/c/c - cut/copy/paste - anywhere - turn phone - open phone (must be activated in phone menu: turning control)