N900 The Perfect Setup

(Disk Encryption)
Line 1: Line 1:
=Introduction=
=Introduction=
-
This page serves the purpose of assembling a complete and current howto-guide for the perfect N900 setup.  
+
Since the [[N900]] has been release many developments have been made by the community. This page is to provide a generic guide to getting started with good foundations.
-
The initial information here is based on my personal experience and the rich trove of experience which is talk.maemo.org.
+
This page will mainly link all the useful bits of the wiki and other useful information together.
-
Please keep this page alive by adding your improvements and keeping it up to date as Maemo evolves.
+
-
{{warning}} '''Disclaimer:''' ''This page is a work in progress and will probably never be finished. Some of the procedures might prove to be quite risky. There's no guarantee that your phone won't start to eat your cat. You do everything at your own risk.''
+
=Hardware=
-
= Recommended hardware =
+
==Hardware Accessories==
-
* A Nokia N900, obviously
+
Information on all recommended hardware accessories is [http://wiki.maemo.org/N900_Accessories here.]
-
* SanDisk Ultra 32GB Class 10 / UHS-1 SDHC Card (SU32-G)
+
-
* PolarCell 1520 mAh battery
+
-
* Standalone battery charger
+
-
* USB A-A adapter
+
-
* (Linux box)
+
-
=== Hardware Specifications ===
+
==Hardware Specifications==
-
NAND Layout
+
-
  '''dev'''    '''size'''  '''erasesize'''  '''name'''
+
Information on the specs can be found [http://wiki.maemo.org/N900_Hardware_Subsystems here]
-
  mtd0: 00020000 00020000 "bootloader"
+
-
  mtd1: 00060000 00020000 "config"
+
-
  mtd2: 00040000 00020000 "log"
+
-
  mtd3: 00200000 00020000 "kernel"
+
-
  mtd4: 00200000 00020000 "initfs"
+
-
  mtd5: 0fb40000 00020000 "rootfs"
+
-
eMMC Partition Layout
+
==Recommended Hardware Modifications==
-
  '''dev'''        '''size'''      '''fs'''    '''mountpoint'''
+
-
  mmcblk0p1  27648MiB  vfat  /home/user/MyDocs
+
-
  mmcblk0p2    2048MiB  ext2  /home
+
-
  mmcblk0p3    768MiB  swap
+
-
[http://natisbad.org/N900/n900-commented-hardware-specs.html Detailed specs]
+
One of the most common issues with the [[N900]] is the surface mounted USB port.
 +
If you are not careful with it, the port can be ripped from the PCB.
 +
Due to the design of the port if this occurs, it can be vary difficult to repair successfully.
-
[http://talk.maemo.org/showthread.php?t=65568 N900 battery options]
+
Therefore it is highly recommend to reinforce your USB port by soldering the casing of the USB to the PCB. Information on this is covered in great extent on talk.maemo.org
-
=== Hardware modifications ===
+
[http://talk.maemo.org/showthread.php?t=75920 talk.maemo.org Fixing USB Thread]
-
/* TODO: USB pre-broken fix */
+
Another common modification is to remove the locking pins on all your microUSB cable connectors. This can be done by filing them down carefully with a small file.
-
[http://talk.maemo.org/showthread.php?t=75920]
+
The latter is important, especially if you don't feel confident in taking your N900 apart to reinforce the port.
-
[http://talk.maemo.org/showthread.php?t=79878]
+
-
= Initial setup =
+
==File System==
-
[http://wiki.maemo.org/Updating_the_tablet_firmware#N900 Everything about Firmware Flashing]
+
 +
[http://wiki.maemo.org/N900_filesystem File System information]
-
Download flasher from the repositories
+
=Firmware=
-
/* TODO: Use open source flasher */
+
==Initial Firmware Setup==
-
Download the firmware flasher:
+
So you have your [N900]
-
[http://skeiron.org/tablets-dev/maemo-dev-env-downloads/ Flasher & SDK Downloads]
+
The first step especially if it's used is to flash the firmware.
 +
This can be used to clean off any unstable software and make a clean start.
-
Download the latest official Nokia Firmware Images for your N900:
 
-
[http://skeiron.org/tablets-dev/nokia_N900/ Firmware Image Downloads]
 
-
  RX-51_2009SE_10.2010.13-2.VANILLA_PR_EMMC_MR0_ARM.bin
 
-
  md5sum: 488809ff96a0a05479d692e9f77aeb4f
 
-
  RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin
 
-
  md5sum: b9f8690318a3be61767826d15b8c1784
 
-
== Flashing the device ==
+
It's recommended to download the latest Nokia firmware images for your region.
-
The following flashing procedure has proven the most stable to me:
+
The latest versions are highlighted.
-
{{warning}}Always use a fully charged battery!
+
[http://wiki.maemo.org/Updating_the_tablet_firmware#N900 Firmware Flashing]
-
* Turn your device off, disconnect USB
+
==Highly Recommended Further Setup==
-
* (As root) flash the FIASCO firmware image:
+
-
  flasher-3.5 -F RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin -f
+
-
* When you get "No suitable USB device found" connect your N900 through USB.
+
-
* Wait for the flashing to finish.
+
-
{{warning}} Don't reboot
+
-
* Flash original eMMC image:
+
===Importance of CSSU===
-
  flasher-3.5 -F RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin -f
+
-
* Wait for the flashing to finish.
+
-
* Reboot the device by _reinserting_ the battery
+
-
Upon first login, enter your locale settings (Timezone, local time, etc.).
+
If you have flashed your firmware as above, your [N900] will now be on the last major Nokia release (PR1.3). From here onwards the Maemo Community are providing vital security updates, fixing bugs and generally moving the device forward. This is known as CSSU or Community SSU.
-
Run latest official Nokia SSU (upgrades your device firmware to V1.3.1) by launching App manager / Update from the applications menu.
+
It is recommended all users install [[CSSU]], of which there are two versions.
-
== Getting root access ==
+
More information on this is [http://wiki.maemo.org/CSSU here]
-
[http://wiki.maemo.org/Root_access 1001 ways of becoming root]
+
-
* Add the Extras-Testing repository to the Hildon Application Managers catalog
+
==Recommended Further Setup==
-
  name: Maemo extras-testing
+
-
  uri: deb http://skeiron.org/repo/repository.maemo.org/extras-testing/ fremantle free non-free
+
-
  dist: fremantle
+
-
  components: free non-free
+
-
* Add the Extras-Devel repository as well
+
===Kernel Power===
-
  name: Maemo extras-development
+
-
  uri: http://extras-devel.merlin1991.at/ fremantle free non-free
+
-
  dist: fremantle
+
-
  components: free non-free
+
-
* Disable OVI repository (conflicts with CSSU)
+
[[Kernel Power]] is a community developed Kernel that provides addition features and fixes to the Kernel. [[Kernel Power]] also provides the ability to overclock the device with an additional package '''kernel-power-settings'''
-
* Wait for repository update to finish (Hildon Application Manager is slooow) and install 'rootsh' from the system section.
+
While overclocking is not recommended and has been known to reduce the lifetime of the device, the [Kernel Power] package on it's own is recommended and will not alter your device from the standard 250Mhz-600Mhz clock speed.
-
* To get remote access over the network (way more comfy) install SSH server by launching XTerminal from the application menu and running:
+
It provided important features like stable [[Smartreflex]] which will significantly increase battery life.
-
  sudo gainroot
+
-
  apt-get install openssh
+
-
You will be asked for your new root password.
+
-
/*TODO: Change PW hash to enable passwords > 8 chars */
+
-
* Finally launch xterm and run
+
More information on this is [http://wiki.maemo.org/Kernel_Power here]
-
  ifconfig wlan0
+
Please note Kernel Power page is heavily biased on overclocking and is provided for further reference only.
-
* Write down the IP address - from now on you can use the SSH client of your choice to connect to your favorite pocket computer - enjoy!
+
===Utilise the SD Card===
-
= Upgrade to CSSU-thumb =
+
The [[N900]] has a uSD card slot, it's a good to use this as much as possible to reduce flash wear from the devices eMMC.
-
[http://wiki.maemo.org/CSSU What's CSSU?]
+
-
[http://talk.maemo.org/showthread.php?t=84829 What's thumb2 ISA?]
+
Many users setup there swap space(s) on the uSD card this frees up the I/O of the device.
-
{{info}} cssu-thumb contains a kernel based on kp51r1, therefore you automatically benefit from all kernel-power features (undervolting, overclocking, framebuffer, ...). See [http://wiki.maemo.org/Kernel_Power Kernel Power Wiki] and [http://talk.maemo.org/showthread.php?t=85665 Kernel Power 51r1 on tmo]
+
There has been much discussion on this and applications written to help with this.
-
== Repositories ==
+
Further reading
-
Disable extras-testing - it will be replaced by its thump-compiled counterpart from the CSSU repository. Make sure Nokia and Maemo Extras repositories are enabled though.
+
-
To avoid thumb-compiled binaries being overwritten by upgrades from non-thumb repositories use the following /etc/apt/preferences file
+
[http://wiki.maemo.org/Swap_on_microSD Swap on microSD wiki]
-
  Package: *
+
[http://talk.maemo.org/showthread.php?t=84296 talk.maemo.org DISCUSS SDCard Swap]
-
  Pin: release a=community-thumb
+
-
  Pin-Priority: 700           
+
-
               
+
-
  Package: *     
+
-
  Pin: release a=Extras-devel-light
+
-
  Pin-Priority: 500               
+
-
               
+
-
  Package: *     
+
-
  Pin: release l=Extras
+
-
  Pin-Priority: 550   
+
-
               
+
-
  Package: *     
+
-
  Pin: release l=community-testing
+
-
  Pin-Priority: 600
+
-
== Remove unneeded software ==
+
===Swappolube===
-
[http://talk.maemo.org/showthread.php?s=bcad4cd2389b67dd0911decdebb4b503&t=82641 tmo thread]
+
Swappolube is a package to modify memory management.
 +
Most users tweak this to suit there device and usage.
 +
If your unsure were to start the proposed settings are a good base.
-
apt-get remove --purge hildon-theme-beta osso-chess-ui gnuchess osso-graphics-game-chess osso-lmarbles osso-graphics-game-lmarbles osso-sounds-game-chess maemoblocks ap-installer amazon-installer foreca-installer facebook-installer skype-installer dtg-installer tutorial-home-applet osso-tutorial-l10n-engb osso-tutorial-l10n-ptpt osso-tutorial-l10n-frca osso-tutorial-l10n-nlnl osso-tutorial-l10n-cscz osso-tutorial-l10n-itit osso-tutorial-l10n-eses osso-tutorial-l10n-svse osso-tutorial-l10n-frfr osso-tutorial-l10n-dede osso-tutorial-l10n-fifi osso-tutorial-l10n-nono osso-tutorial-l10n-esmx osso-tutorial-l10n-enus osso-tutorial-l10n-ruru osso-tutorial-l10n-mr0 osso-tutorial-l10n-plpl cherry osso-systemui-splashscreen sharing-service-flickr sharing-service-ovi chinese-font google-search-widget tutorial-home-applet osso-mahjong osso-graphics-game-mahjong osso-sounds-game-mahjong ovi-promotion-widget
+
More information can be found [http://wiki.maemo.org/Swappolube here]
-
== Installing CSSU-Thumb ==
+
=Software=
-
* Visit this link using your N900s web browser: http://maemo.merlin1991.at/cssu/community-thumb/community-thumb-fremantle.install and confirm the prompts displayed in HAM
+
-
* Launch community SSU from applications menu.
+
==Repositories==
-
* Install the proposed updates.
+
-
= Essential software packages =
+
Maemo software works in the same way as most Linux distribution's, repositories provide a secure and easy method of supplying software to end-users.
-
The following is a list of applications which (IMHO) constitute a reasonable base set
+
-
apt-get install <pkgname>
+
-
{|
+
-
! align="left"| Package Name
+
-
! Description
+
-
! Votes
+
-
|-
+
-
|backupmenu
+
-
|
+
-
|
+
-
|-
+
-
|busybox-power
+
-
|Required for encryption (s. below)
+
-
|
+
-
|-
+
-
|tracker-cfg
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|tracker-extractor-vorbis
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|gstreamer0.10-plugins-good-extra-formats
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|filebox
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|catoriseplus
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|mce-ledpattern
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|cssufeatures
+
-
|
+
-
|
+
-
|
+
-
|
+
-
|-
+
-
|cl-launcher
+
-
|
+
-
|
+
-
|
+
-
|}
+
-
Other recommendations include: xournal fm-boost fmradio recaller swappolube flashlight-applet cal-home-widget adflashblock-css
+
Information about the different repositories can be found [http://wiki.maemo.org/Extras here]
-
== Install non-optified cryptsetup ==
+
==Getting Root==
-
  wget http://maemo.merlin1991.at/apt-mirror/extras-devel/pool/fremantle/free/c/cryptsetup/cryptsetup_1.0.4%2bsvn26-3_armel.deb
+
-
  dpkg -i cryptsetup_1.0.4%2bsvn26-3_armel.deb
+
-
  echo "cryptsetup hold" | dpkg --set-selections
+
-
== Install & configure bootloader ==
+
[http://wiki.maemo.org/Root_access Root Access]
-
  apt-get install u-boot-flasher kernel-cssu-bootimg
+
-
  ln -s /etc/bootmenu.d/20-Maemo5-kernel-cssu-2.6.28.10-cssu3.item /etc/default/bootmenu.item
+
-
  u-boot-update-bootmenu
+
-
== USB Host mode ==
+
=Common Modifications=
-
[http://talk.maemo.org/showthread.php?t=85658 Host mode announcement]
+
-
  wget http://atrey.karlin.mff.cuni.cz/~pali/usbmode/usbmode_1.0-3_armel.deb
+
-
  dpkg -i usbmode_1.0-3_armel.deb
+
-
* USB mode can be set through the status menu
+
Please note these common modifications are here for reference.
-
* To connect USB peripherals use a [http://www.cablechick.com.au/product_images/usb-adaptor-a-female-to-a.jpg USB A-to-A adapter]
+
If you are a complete beginner and do not understand you must be aware that you could damage parts of your filesystem if you mess up.
-
== Configure openmediaplayer ==
+
==Purging Unnecessary Software==
-
[http://wiki.maemo.org/Open_Media_Player OMP Wiki]
+
-
* Get a thumb-compiled version of openmediaplayer [http://www69.zippyshare.com/v/23534616/file.html OMP-thumb download]
+
The following is deemed safe use run in a [Terminal] as [Root] to remove unnecessary software provided with the Nokia firmware.
-
dpkg -i openmediaplayer_20121220-1+thumb0_armel.deb
+
-
* As [[root]], edit file:
+
apt-get remove --purge hildon-theme-beta osso-chess-ui gnuchess osso-graphics-game-chess osso-lmarbles osso-graphics-game-lmarbles osso-sounds-game-chess maemoblocks ap-installer amazon-installer foreca-installer facebook-installer skype-installer dtg-installer tutorial-home-applet osso-tutorial-l10n-engb osso-tutorial-l10n-ptpt osso-tutorial-l10n-frca osso-tutorial-l10n-nlnl osso-tutorial-l10n-cscz osso-tutorial-l10n-itit osso-tutorial-l10n-eses osso-tutorial-l10n-svse osso-tutorial-l10n-frfr osso-tutorial-l10n-dede osso-tutorial-l10n-fifi osso-tutorial-l10n-nono osso-tutorial-l10n-esmx osso-tutorial-l10n-enus osso-tutorial-l10n-ruru osso-tutorial-l10n-mr0 osso-tutorial-l10n-plpl cherry osso-systemui-splashscreen sharing-service-flickr sharing-service-ovi chinese-font google-search-widget tutorial-home-applet osso-mahjong osso-graphics-game-mahjong osso-sounds-game-mahjong ovi-promotion-widget cherry
-
:''/usr/share/dbus-1/services/com.nokia.mediaplayer.service''
+
-
so the line:
+
-
Exec=/usr/bin/mediaplayer
+
-
...becomes:
+
[http://talk.maemo.org/showthread.php?s=bcad4cd2389b67dd0911decdebb4b503&t=82641 talk.maemo.org Safe to remove?]
-
Exec=/usr/bin/openmediaplayer
+
-
This will replace execution of '''MP''' binary with '''OMP''' one - without physically replacing files, so you can revert back to '''MP''' by reverting changes.
+
==Disable Nokia Hands==
 +
There are two main methods to do this.
-
* tracker-cfg
+
===Method 1===
-
/* TODO */
+
Rename the file
 +
: /opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi
 +
to
 +
: /opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi.disabled
-
== Faking Flash Player 12 ==
+
===Method 2===
-
[http://talk.maemo.org/showpost.php?p=1276589&postcount=2219 Flash Player on tmo]
+
Use a text editor to edit the file
 +
:''/etc/hildon-welcome.d/default.conf''
 +
Comment out the last line.
 +
: filename=Hands-v32-h264.avi
 +
 
 +
 
 +
==Faking Flash Player 12 for MicroB==
 +
[http://talk.maemo.org/showpost.php?p=1276589&postcount=2219 Post on talk.maemo.org]
* Get [http://www.sendspace.pl/download/YTo0OntzOjc6ImRhdGVfaW4iO2k6MTM0Mzc4MTUxMTtzOjU6InRpdGxlIjtzOjA6IiI7czo5OiJmaWxlX25hbWUiO3M6MjQ6ImFkb2JlLWZsYXNocGxheWVyLTEwLmRlYiI7czo1OiJ0b2tlbiI7czoyMzoiY2MzM2I0MDcyZTgyM2VlMTU4MDkzOWIiO30dfASDF34vasd3245bvs flashplayer 10 binaries] for maemo.
* Get [http://www.sendspace.pl/download/YTo0OntzOjc6ImRhdGVfaW4iO2k6MTM0Mzc4MTUxMTtzOjU6InRpdGxlIjtzOjA6IiI7czo5OiJmaWxlX25hbWUiO3M6MjQ6ImFkb2JlLWZsYXNocGxheWVyLTEwLmRlYiI7czo1OiJ0b2tlbiI7czoyMzoiY2MzM2I0MDcyZTgyM2VlMTU4MDkzOWIiO30dfASDF34vasd3245bvs flashplayer 10 binaries] for maemo.
Line 262: Line 144:
* Press CTRL+S then "y" again.
* Press CTRL+S then "y" again.
* Close terminal and enjoy new faked v12.1.98.88 flash player
* Close terminal and enjoy new faked v12.1.98.88 flash player
-
 
-
= Tweaks =
 
-
 
-
== Kernel Power Settings ==
 
-
/* TODO: Rewrite this section using smartreflex */
 
-
 
-
To enable overclocking (more horsepower) and undervolting (less power consumption) run the following commands
 
-
kernel-config save stock
 
-
kernel-config load ideal
 
-
kernel-config default ideal
 
-
 
-
To revert to stock settings run
 
-
kernel-config load stock
 
-
kernel-config default stock
 
-
 
-
== swappolube ==
 
-
[http://wiki.maemo.org/Swappolube Config details]
 
-
 
-
== cssu-features ==
 
-
* Launch cssu-features from the applications menu
 
-
* On first run choose "Fix config"
 
-
* Launch cssu-features again
 
-
* Configure to your [http://wiki.maemo.org/CSSU_Features_Configuration_Editor taste]
 
-
 
-
== Theme customizer ==
 
-
* Set nokia-pure as default font
 
-
 
-
== Disable Nokia Hands ==
 
-
* Edit the file
 
-
:''/etc/hildon-welcome.d/default.conf''
 
-
[hildon-welcome]
 
-
filename=Hands-v32-h264.avi
 
-
* Comment out the last line or specify gstreamer compatible movie file
 
-
 
-
= Backup your device =
 
-
* Don't backup unnecessary stuff, so
 
-
rm /var/cache/apt/archives/*
 
-
* Reboot with keyboard open
 
-
* Select default kernel
 
-
* In backupmenu press 'b' to start backup
 
-
* Press 'q' to backup both rootfs and optfs
 
-
* Select 'p' twice to store backup on /home/user/MyDocs
 
-
* Wait for backup to finish
 
-
* Connect USB to Linux box
 
-
* Press 'w' to export eMMC as mass storage device
 
-
* On your Linux box check 'dmesg' to identify device names (e.g. /dev/sdX), mount /dev/sdX1, switch to the mount point (e.g. /media/usb) and run
 
-
tar -cf /home/user/MyDocs_backup.tar
 
-
 
-
= Adjust eMMC partitioning =
 
-
/* TODO: Evaluate better filesystems and possibly alignment */
 
-
* With eMMC still exported as mass storage device using backupmenu point your favorite partition manager to /dev/sdX
 
-
* Adjust partitions to your needs (align to MiB, not cylinders), for example
 
-
  '''dev'''        '''size'''      '''fs'''    '''mountpoint'''
 
-
  mmcblk0p1  24576MiB  vfat  /home/user/MyDocs
 
-
  mmcblk0p2    5120MiB  ext2  /home
 
-
  mmcblk0p3    835MiB  swap
 
-
 
-
It's recommended to leave /dev/mmcblk0p1 as vfat for /home/user/MyDocs as it needs less tweaks to maemos mmc-scripts. For other options visit [http://wiki.maemo.org/Repartitioning_the_flash repartitioning the flash]
 
-
 
-
= Disk Encryption =
 
-
/* TODO: Verify that HW accel is being used */
 
-
 
-
/* TODO: Use initrd in NAND and encrypt rootfs */
 
-
 
-
[http://talk.maemo.org/showthread.php?t=40154 Discussion on tmo]
 
-
 
-
== Preparing userland ==
 
-
{{warning}} Don't reboot your device before having performed all steps described in this chapter or else you'll have to reflash your phone!
 
-
 
-
* Make sure cryptsetup and busybox-power packages are installed to rootfs
 
-
dpkg -L <pkgname>
 
-
 
-
* Get modified [https://gitorious.org/maemo5-encrypted-home rcS and rcS-late scripts] and copy them to your device
 
-
scp rcS root@<n900-ip-addr>:/etc/init.d/
 
-
scp rcS-late root@<n900-ip-addr>:/etc/event.d/
 
-
 
-
* Edit the file
 
-
:''/sbin/preinit''
 
-
and insert the command ''modprobe fbcon'' as the last line in function init_system() (just above the })
 
-
 
-
* Get an [http://bazaar.launchpad.net/~pali/+junk/maemo_recovery-boot/view/head:/nokia-n900.map n900 keymap] and convert it (on your Linux box):
 
-
loadkeys -b nokia-n900.map > nokia-n900.kmap
 
-
 
-
* Copy the keymap to your phone's root directory
 
-
scp nokia-n900.kmap root@<n900-ip-addr>:/
 
-
 
-
* Create [http://wiki.maemo.org/Community_SSU/Features/ke-recv /etc/default/osso-mmc-blacklist.sh] and corresponding /etc/default/osso-mmc-blacklist containing devices which should not be mounted to MyDocs - /dev/dm-0 and /dev/dm-1)
 
-
Edit the files
 
-
:''/usr/sbin/osso-usb-mass-storage-enable.sh'' and :''/usr/sbin/osso-usb-mass-storage-disable.sh''
 
-
and add the following lines at the beginning
 
-
case $1 in
 
-
  /dev/dm-*)
 
-
    set /dev/mmcblk0p1
 
-
    ;;
 
-
esac
 
-
 
-
== Move optfs to encrypted partition ==
 
-
* On your Linux box extract the :''optfs.tar'' file from the previously created MyDocs backup
 
-
  cd /tmp
 
-
  tar -xf ~/backups/MyDocs_backup.tar
 
-
 
-
* Boot your phone into boot manager and export eMMC to USB. On your linux box run the following commands to create an encrypted ext3 filesystem on mmcblk0p2
 
-
cryptsetup luksFormat /dev/sdX2      # Confirm by typing YES, specify a looong passphrase
 
-
cryptsetup luksOpen /dev/sdX2 n900
 
-
mkfs.ext3 /dev/mapper/n900
 
-
 
-
* Now you can restore your optfs backup to the encrypted partition
 
-
mount /dev/mapper/n900 /mnt
 
-
cd /mnt
 
-
tar -xf /tmp/systemBackups/optfs.tar
 
-
umount /mnt
 
-
cryptsetup luksClose n900
 
-
 
-
* Reboot your phone and enjoy the password prompt!
 
-
 
-
= SD card usage =
 
-
== Testing ==
 
-
== Alignment ==
 
-
== Swap on SD card ==
 
-
To avoid concurrent I/O access to swap and optfs (both mmcblk0), move swap to your SD card (mmcblk1)
 
-
* On your SD card create a swap partition /dev/mmcblk1pX of approx. 1.5GiB
 
-
* Edit /etc/event.d/rcS-late and change the line
 
-
/sbin/cryptsetup -d /dev/urandom create swapenc /dev/mmcblk0p3
 
-
 
-
to
 
-
 
-
/sbin/cryptsetup -d /dev/urandom create swapenc /dev/mmcblk1pX
 
-
 
-
 
-
=== More swap tweaks ===
 
-
/* TODO: Find current best practice for running swap on sd card */
 
-
* [http://wiki.maemo.org/Ereswap Fight swap fragmentation]
 
-
* [http://wiki.maemo.org/Swap_on_microSD#Using_microSD_partition_as_swap Swap on wiki]
 
-
 
-
= Miscellaneous =
 
-
== VoIP ==
 
-
=== Encrypted SIP ===
 
-
* linphone
 
-
 
-
== eMail ==
 
-
=== GPG support ===
 
-
* mutt
 
-
* claws
 
-
* patches for modest anyone?
 
-
 
-
== Camera ==
 
-
* pcam
 
-
* stock/cssu
 
-
* blessn900
 
-
* fcam
 
-
* hdr
 
-
* lowlight
 
== Watch 720p movies ==
== Watch 720p movies ==
-
[http://talk.maemo.org/showthread.php?t=77695 HD movie guide]
+
[http://talk.maemo.org/showthread.php?t=77695 720p Thread - talk.maemo.org]
-
== Synchronization ==
+
==Customizing Maemo==
-
=== dpush ===
+
Customizing the appearance of Maemo
-
=== Certificates ===
+
-
=== Client configuration ===
+
-
== Battery calibration ==
+
[http://wiki.maemo.org/Customizing_Maemo wiki.maemo.org]
-
 
+
-
== Unbricking ==
+
-
=== Dead battery ===
+
= Additional information =
= Additional information =
-
* [http://talk.maemo.org The one and only]
+
* [http://talk.maemo.org The one and only - talk.maemo.org]
* [http://talk.maemo.org/showthread.php?t=88707 Repository Mirrors]
* [http://talk.maemo.org/showthread.php?t=88707 Repository Mirrors]
* [http://symbians60soft.blogspot.com Blog still posting some maemo news]
* [http://symbians60soft.blogspot.com Blog still posting some maemo news]
Line 436: Line 161:
My thanks go to jebba, titan, pali, NIN101, MentalistTraceur, sixwheeledbeast, DocScrutinizer05, sEKI, kerio, freemangordon, qwazix, ShadowJK and everyone on #maemo
My thanks go to jebba, titan, pali, NIN101, MentalistTraceur, sixwheeledbeast, DocScrutinizer05, sEKI, kerio, freemangordon, qwazix, ShadowJK and everyone on #maemo
-
[[Category:Power users]]
+
=Wiki Update Info=
 +
:''Last Updated - sixwheeledbeast - 31 Jan 2013 21:41 UTC''
 +
Huge rewrite to be generic and beginner friendly original page is in Discussion (talk page)
 +
Page still under development
 +
 
 +
[[Category:Beginners]]
[[Category:N900]]
[[Category:N900]]

Revision as of 21:52, 31 January 2013

Contents

Introduction

Since the N900 has been release many developments have been made by the community. This page is to provide a generic guide to getting started with good foundations. This page will mainly link all the useful bits of the wiki and other useful information together.

Hardware

Hardware Accessories

Information on all recommended hardware accessories is here.

Hardware Specifications

Information on the specs can be found here

Recommended Hardware Modifications

One of the most common issues with the N900 is the surface mounted USB port. If you are not careful with it, the port can be ripped from the PCB. Due to the design of the port if this occurs, it can be vary difficult to repair successfully.

Therefore it is highly recommend to reinforce your USB port by soldering the casing of the USB to the PCB. Information on this is covered in great extent on talk.maemo.org

talk.maemo.org Fixing USB Thread

Another common modification is to remove the locking pins on all your microUSB cable connectors. This can be done by filing them down carefully with a small file.

The latter is important, especially if you don't feel confident in taking your N900 apart to reinforce the port.

File System

File System information

Firmware

Initial Firmware Setup

So you have your [N900] The first step especially if it's used is to flash the firmware. This can be used to clean off any unstable software and make a clean start.


It's recommended to download the latest Nokia firmware images for your region. The latest versions are highlighted.

Firmware Flashing

Highly Recommended Further Setup

Importance of CSSU

If you have flashed your firmware as above, your [N900] will now be on the last major Nokia release (PR1.3). From here onwards the Maemo Community are providing vital security updates, fixing bugs and generally moving the device forward. This is known as CSSU or Community SSU.

It is recommended all users install CSSU, of which there are two versions.

More information on this is here

Recommended Further Setup

Kernel Power

Kernel Power is a community developed Kernel that provides addition features and fixes to the Kernel. Kernel Power also provides the ability to overclock the device with an additional package kernel-power-settings

While overclocking is not recommended and has been known to reduce the lifetime of the device, the [Kernel Power] package on it's own is recommended and will not alter your device from the standard 250Mhz-600Mhz clock speed.

It provided important features like stable Smartreflex which will significantly increase battery life.

More information on this is here Please note Kernel Power page is heavily biased on overclocking and is provided for further reference only.

Utilise the SD Card

The N900 has a uSD card slot, it's a good to use this as much as possible to reduce flash wear from the devices eMMC.

Many users setup there swap space(s) on the uSD card this frees up the I/O of the device.

There has been much discussion on this and applications written to help with this.

Further reading

Swap on microSD wiki talk.maemo.org DISCUSS SDCard Swap

Swappolube

Swappolube is a package to modify memory management. Most users tweak this to suit there device and usage. If your unsure were to start the proposed settings are a good base.

More information can be found here

Software

Repositories

Maemo software works in the same way as most Linux distribution's, repositories provide a secure and easy method of supplying software to end-users.

Information about the different repositories can be found here

Getting Root

Root Access

Common Modifications

Please note these common modifications are here for reference. If you are a complete beginner and do not understand you must be aware that you could damage parts of your filesystem if you mess up.

Purging Unnecessary Software

The following is deemed safe use run in a [Terminal] as [Root] to remove unnecessary software provided with the Nokia firmware.

apt-get remove --purge hildon-theme-beta osso-chess-ui gnuchess osso-graphics-game-chess osso-lmarbles osso-graphics-game-lmarbles osso-sounds-game-chess maemoblocks ap-installer amazon-installer foreca-installer facebook-installer skype-installer dtg-installer tutorial-home-applet osso-tutorial-l10n-engb osso-tutorial-l10n-ptpt osso-tutorial-l10n-frca osso-tutorial-l10n-nlnl osso-tutorial-l10n-cscz osso-tutorial-l10n-itit osso-tutorial-l10n-eses osso-tutorial-l10n-svse osso-tutorial-l10n-frfr osso-tutorial-l10n-dede osso-tutorial-l10n-fifi osso-tutorial-l10n-nono osso-tutorial-l10n-esmx osso-tutorial-l10n-enus osso-tutorial-l10n-ruru osso-tutorial-l10n-mr0 osso-tutorial-l10n-plpl cherry osso-systemui-splashscreen sharing-service-flickr sharing-service-ovi chinese-font google-search-widget tutorial-home-applet osso-mahjong osso-graphics-game-mahjong osso-sounds-game-mahjong ovi-promotion-widget cherry

talk.maemo.org Safe to remove?

Disable Nokia Hands

There are two main methods to do this.

Method 1

Rename the file

/opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi

to

/opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi.disabled

Method 2

Use a text editor to edit the file

/etc/hildon-welcome.d/default.conf

Comment out the last line.

filename=Hands-v32-h264.avi


Faking Flash Player 12 for MicroB

Post on talk.maemo.org

apt-get remove --purge adobe-flashplayer
apt-get install hexedit
dpkg -i adobe-flashplayer-10.deb
hexedit /usr/lib/browser/plugins/libflashplayer.so
  • Once in Hexedit, press CTRL+S and type in 31302e31 and press enter, the string you've just found need to be changed to 31322e31
  • Now, press CTRL+S, type "y" and search for 31302c31 and change it to 31322c31
  • Press CTRL+S then "y" again.
  • Close terminal and enjoy new faked v12.1.98.88 flash player

Watch 720p movies

720p Thread - talk.maemo.org

Customizing Maemo

Customizing the appearance of Maemo

wiki.maemo.org

Additional information

Credits

My thanks go to jebba, titan, pali, NIN101, MentalistTraceur, sixwheeledbeast, DocScrutinizer05, sEKI, kerio, freemangordon, qwazix, ShadowJK and everyone on #maemo

Wiki Update Info

Last Updated - sixwheeledbeast - 31 Jan 2013 21:41 UTC

Huge rewrite to be generic and beginner friendly original page is in Discussion (talk page) Page still under development