Difference between revisions of "Pandian"

From Pandora Wiki
Jump to: navigation, search
(refinement)
m (Up-To-Date Home directory)
 
(30 intermediate revisions by 4 users not shown)
Line 2: Line 2:
  
 
'''Pandian is an debian-based armhf desktop and CLI distro for your Pandora.'''
 
'''Pandian is an debian-based armhf desktop and CLI distro for your Pandora.'''
 +
Ideas, Bugs, or feature-requests? Report to:
 +
https://www.evilbrain.de/review/index.php?project=4
  
 
=== Main Features ===
 
=== Main Features ===
 
* The debian way.
 
* The debian way.
* Access to all packages from debian software repositories.
+
* Access to all packages from Debian software repositories.
* Everything from the Debian software repositories.  
+
* Pandian hosts its own Debian repo http://pandian.openpandora.org with up to date scripts, all settings and extra programs.
* Pandian hosts its own debian repo http://pandian.openpandora.org with the extra up to date scripts, settings and programs.
+
* armhf-build, which means '''f'''loat operations are relegated to special '''h'''ardware rather than taxing the main cpu with them (as with softfloat)
* armhf means '''f'''loat operations are relegated to special '''h'''ardware for this rather than taxing the main cpu (as with softfloat)
 
  
== Help / Bugs / Features ==
+
== '''Pandian''' - '''MARK 2''' The newest release  ==
Ideas, Bugs, or features-requests? Report to:
+
Second version of Pandian<br />
http://www.evilbrain.de/projects/pandian/issues
 
 
 
== MARK2 ==
 
Second version <br />
 
 
'''Full Debian GNU/Linux based on sid branch with LXDE desktop environment (normal) or CLI (minimal-) build.''' <br />  
 
'''Full Debian GNU/Linux based on sid branch with LXDE desktop environment (normal) or CLI (minimal-) build.''' <br />  
 
'''hardfloat armv7l''' yule release '''Date: 29.12.2013'''
 
'''hardfloat armv7l''' yule release '''Date: 29.12.2013'''
 
[http://boards.openpandora.org/topic/15302-pandian-mark2/ forum link]
 
[http://boards.openpandora.org/topic/15302-pandian-mark2/ forum link]
  
=== Requirements ===
+
=== '''Installation''' requirements===
* Of course a Pandora ;) All versions fine?
+
* '''Pandora''' ;) All versions fine?
* SD card minimum 2GB ( was tested with 4GB )
+
* '''SD card''' minimum 2GB ( was tested with 4GB )
* A Linux or Windows PC for putting the install on the aforementioned SD-card.
+
* '''PC''' Linux|GNU, BSD, Mac, or Windows for putting the install on the aforementioned SD-card.
  
=== Pick a version to download ===
+
==== '''Download''' a version of Pandian ====
 
There are two different versions of the "MARK2" release:
 
There are two different versions of the "MARK2" release:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Version !! Description !! Includes !! Link !! Checksums (sha256)
+
! Version !! Description !! Includes !! Link !! Size !! Checksums (sha256)
|-
 
| '''normal''' || pandian for regular users, with full Desktop environment ( LXDE ) || network-manager MediaPlayer ( mpd with gurlp ) nub-support calibrator-application medit Text editor. mpd audio player backend, glurp as frontend || [http://www.filedropper.com/pandian-mark2-hf2014-01-02 filedropper: pandian-mark2-hf2014-01-02]<br />[http://pandian.openpandora.org/releases/pandian-mark2-hf_2014-01-02.7z pandian.openpandora.org: pandian-mark2-hf_2014-01-02.7z] || pandian-mark2-hf_2014-01-02.7z 3731d70a4d8ec59e79a046f34f69c5c809be73e38cfc91a5b580478b8f8c222f<br />pandian-mark2-hf_2014-01-02.img 83b8d3fa5bd0588cfb8b11cfe6b827819e6311e98396a6e32c46c9692f072e96
 
 
|-
 
|-
| '''minimal''' || pandian without any Desktop environment but with the basic pandian package || ACPI support for brighter/darker-buttons, for lid and for low-power-mode. pdcmd nano || [http://www.filedropper.com/pandian-mark2-minimal-hf2014-01-03 filedropper: pandian-mark2-minimal-hf_2014-01-03.7z]<br />[http://pandian.openpandora.org/releases/pandian-mark2-minimal-hf_2014-01-03.7z pandian.openpandora.org: pandian-mark2-minimal-hf_2014-01-03.7z] || pandian-mark2-minimal-hf_2014-01-03.7z 9f5989d8fa4dec74c827b2f54a676edc61e83d2e913d5efbdd42c73ed2ad6165<br />pandian-mark2-minimal-hf_2014-01-03.img 2540eea88773342f1e6f68b7e4ff759ea8b36b9acee178c6c552a975621727d3
+
| '''base''' || pandian for advanced users, without any Desktop environment but with basic network-tools ( iw, ceni ) || ceni ( network-manager) network-manager MediaPlayer ( mpd ) iw (wireless-tools) || [http://www.filedropper.com/pandian-mark2-base-hf2014-01-05 filedropper: pandian-mark2-base-hf2014-01-05.7z]<br />[http://pandian.openpandora.org/releases/pandian-mark2-base-hf_2014-01-05.7z pandian.openpandora.org: pandian-mark2-base-hf_2014-01-05.7z] || 161MB || pandian-mark2-base-hf_2014-01-05.'''7z'''↓ b11ffe9cc4fd6111775d0b48c133b1e1afcf6865de784b9865db0cea29674d85<br />pandian-mark2-base-hf_2014-01-05.'''img'''↓ c1903423a5b5e0d04563f14526e8161fbe77a102e64d5d571bcf3b87870fa211 
 
|-
 
|-
| minimal-networking fix|| HotFix for pandian-mark2-minimal-hf_2014-01-02 [[#Network_Fix_for_pandian-minimal|Instructions]] || dhcp, network manager || [http://www.filedropper.com/pandian-mark2-minimal-networking2014-01-02tar filedropper: pandian-mark2-minimal-networking_2014-01-02.tar.gz]<br />[http://pandian.openpandora.org/releases/pandian-mark2-minimal-networking_2014-01-02.tar.gz pandian.openpandora.org: pandian-mark2-minimal-networking_2014-01-02.tar.gz] || 4cf802391360e5bf183e9d4b5fe8b6f407b3e476baec7b5b0aa7340796680ae6  pandian-mark2-minimal-networking_2014-01-02.tar.gz
+
| '''normal''' || pandian for regular users, with full Desktop environment (LXDE) || network-manager MediaPlayer ( mpd with gurlp ) nub-support calibrator-application medit Text editor. mpd audio player backend, glurp as frontend || [http://www.filedropper.com/pandian-mark2-hf2014-01-02 filedropper: pandian-mark2-hf2014-01-02]<br />[http://pandian.openpandora.org/releases/pandian-mark2-hf_2014-01-02.7z pandian.openpandora.org: pandian-mark2-hf_2014-01-02.7z] || 394MB || pandian-mark2-hf_2014-01-02.'''7z'''↓ 3731d70a4d8ec59e79a046f34f69c5c809be73e38cfc91a5b580478b8f8c222f<br />pandian-mark2-hf_2014-01-02.'''img'''↓ 83b8d3fa5bd0588cfb8b11cfe6b827819e6311e98396a6e32c46c9692f072e96
 
|}
 
|}
 
Notes:
 
Notes:
* If you don't like LXDE as Desktop you can change it, adding a user interface atop the minimal install is more advanced as setup of USB-Networking or interfaces for wifi is needed to do so.
+
* It is trivial to change from LXDE to [[Xfce]] (or any other desktop environment), adding a new user interface atop the minimal install is more advanced as manual setup of USB-Networking or wifi is needed to do so.
All images have automount ( for USB-Stick, external Hard-Drives etc ) and alsa sound support
+
* All images have automount ( for USB-Sticks, external Hard-Drives etc. ) and ALSA sound support
* [[#Upgrade_from_.22minimal.22_to_.22normal.22|See here to upgrade from "minimal" to "normal"]]
 
  
==== verify that your download is OK ====
+
==== '''Verify''' that your download is OK ====
* After you download the version you picked, verify its checksum to make sure the integrity of the file downloaded matches (in being an exact copy of the file downloaded from the server)
+
* After you download the version you picked, verify its checksum to make sure the integrity of the downloaded file matches (in being an exact copy the one on the server)
  
 
#open up a terminal
 
#open up a terminal
Line 49: Line 43:
 
# make sure it matches the given md5sum, if not, try to download another copy. This step isnt mandatory, but its there to make sure everything is fine before we proceed.
 
# make sure it matches the given md5sum, if not, try to download another copy. This step isnt mandatory, but its there to make sure everything is fine before we proceed.
  
==== Unzip the downloaded image ====
+
==== '''Unzip''' the downloaded image ====
# Unzip with 7z ( in Linux with "'''7zr e <image.7z>'''" )
+
*Unzipping 7z archives
 +
# Open up a terminal (or do it your way)
 +
# Enter"'''7zr e <image.7z>'''"  
 +
# You now have an unzipped image
  
==== Putting the unzipped image onto an SD-card ====
+
==== (Optional) '''Preparation''', find out where to install ====
  
First we must find out how the SD card is mounted.<br />
+
This step helps you find out where the SD card is mounted.<br />
  
 
If you have an build in SD-Card-Reader this is normally /dev/mmcblk0p1 ( in Debian )
 
If you have an build in SD-Card-Reader this is normally /dev/mmcblk0p1 ( in Debian )
 
If you have an USB-Card-Reader this is something like /dev/sdc ( in Debian )
 
If you have an USB-Card-Reader this is something like /dev/sdc ( in Debian )
 
* Open an Terminal and input "'''lsblk'''"
 
* Open an Terminal and input "'''lsblk'''"
* You get an list with the actual Block-Devices
+
* You will get a list with the actual Block-Devices
* The SD-Card should be as type disk
+
* The SD-Card should be of type 'disk'
  
You can also try gparted to see which devices you have and identify the SD-card
+
You can also try gparted to see which devices you have and identify the SD-card from there
  
==== Copy the image to the SD-Card ====
+
==== '''Install''' the image to the SD-Card ====
 
{{warning
 
{{warning
 
| Warning, this will destroy everything on the device ! So please be very sure which device is you SD-Card !
 
| Warning, this will destroy everything on the device ! So please be very sure which device is you SD-Card !
 
}}
 
}}
# Here it will be /dev/sdx
+
# Here it will be /dev/sd'''x'''
  
(note that its sd and then a letter, sdc for example not the following number, as that is the partition, we are using the base card here) This means considerations for partitions and filesystem are taken care of, so no need to worry about that. Do not pick the wrong drive however, since dd will happily write the image to somewhere it isnt supposed to if you tell it to)
+
(note that the x after the sd is the drive letter, it could be ''sd'''b''''' sd'''c''''' or ''sd'''d''''' and so on, lets say its sd'''c'''. Which means c is the drive letter for the SD-card and that sd- a and -b are in use for other things. <br />
 
+
<br />
# Copy image to SD-Card with "'''dd if=<image.img> of=/dev/sdx'''"
+
When writing to the device, make sure not to include the following number, which is the partition ''sdc'''1''''' ''sdc'''2''''' etc. since we are using the base card here) <br />
 +
<br />
 +
This means considerations for partitions and filesystem are taken care of, so no need to worry about that. Do ''not'' pick the wrong drive however, since dd will happily write the image to somewhere it isn't supposed to if you just give it root privileges and hit enter.)<br />
 +
<br />
 +
#Copy image to SD-Card with "'''dd if=<image.img> of=/dev/sdx'''"
  
 
You now have Pandian installed on your SD card and its ready to go. :) However after copying the image to the SD-Card resizing the partitionspartitions is needed to fully utilize the space, since by default the install is limited to 2GB. (If your card is bigger Pandian is still limited to those 2GB)
 
You now have Pandian installed on your SD card and its ready to go. :) However after copying the image to the SD-Card resizing the partitionspartitions is needed to fully utilize the space, since by default the install is limited to 2GB. (If your card is bigger Pandian is still limited to those 2GB)
  
==== Resize SD-Card ====
+
====(Optional) '''Resize''' SD-Card ====
  
 
* This can be done with gparted on linux|gnu
 
* This can be done with gparted on linux|gnu
Line 90: Line 91:
 
<br />Press Apply if everything is correct.]]
 
<br />Press Apply if everything is correct.]]
  
* After everything is fine, you have your new fresh Pandian on you SD-Card
+
* After everything is fine, you have a fresh install of Pandian on you SD-Card
 
<br />
 
<br />
  
=== First-start ===
+
=== '''Startup''' wizard ===
 
* Upon first boot of Pandian, there is a first-start-wizard which guides you through some basic settings.
 
* Upon first boot of Pandian, there is a first-start-wizard which guides you through some basic settings.
Locale, timezone, time and date, password for admin and user setup and calibration of touchscreen.
+
These are: Locale, timezone, time and date, password for admin and user setup and finally calibration of the touchscreen.
Located in /usr/sbin/pdSetup should you need to run it again
+
The script is located in /usr/sbin/pdSetup should you need to run it again.
  
 
==== Navigation ====
 
==== Navigation ====
* Inside a dialog you can navigate with the cross
+
* Inside a dialog you can navigate with the cross/dpad
* With space you select a checkbox
+
* Hit space to select a checkbox
 
* Moving between <Ok> and <Cancel> can be down with the use of TAB ( Tap Fn then tap Space )
 
* Moving between <Ok> and <Cancel> can be down with the use of TAB ( Tap Fn then tap Space )
 
* Acknowledge with Enter
 
* Acknowledge with Enter
  
=== Network Fix for pandian-minimal ===
+
*All done, enjoy :)
If you download the '''pandian-mark2-minimal-hf_2014-01-02''' image there is a lack of tools for setup wifi networking. <br />
+
 
'''Note: For the actual download of pandian-minimal, wifi-network-tools are included'''
+
[[File:PandianDesktop.png|frameless]]
* Therefore download the fix and place it on the SD-Card where pandian is installed. (you need to have local superuser privileges on your own system as the SD contents aren't owned by your user)
+
 
* Boot pandian-minimal
+
=== '''Network''' connection instructions:===
* login with user: "root"
+
 
* switch to root-directory: "cd /"
+
====normal ====
* untar the network-fix: "tar -xf /path-where-file-is-located/pandian-mark2-minimal-networking_2014-01-03.tar.gz"
+
* Use network-manager
* setup the fix with command "pdMinimalNetwork"
+
 
* after the script is finished, run "ceni" and setup your wifi-connection
+
====minimal====
 +
* Use ceni network manager
  
==== Update ( Optional ) ====
+
===(Optional) '''Update''' of Pandian system ===
 
* After you setup your Pandora, it is useful to update your system. It is a rolling release, which means since the image was made, the system is forever updated with new packages.
 
* After you setup your Pandora, it is useful to update your system. It is a rolling release, which means since the image was made, the system is forever updated with new packages.
 
* open a terminal
 
* open a terminal
Line 122: Line 124:
 
* enter "apt-get upgrade" to update all packages that are out of date
 
* enter "apt-get upgrade" to update all packages that are out of date
 
(pandian packages are also updated this way :)
 
(pandian packages are also updated this way :)
 +
* Note: to update only the pandian-packages enter "apt-get install pandian-full"
 +
 +
==== Up-To-Date Home directory ====
 +
Normally files inside users home get overwritten ( if you say yes ) during upgrade. <br />
 +
Since an change of this behavior, files inside the users home don't get changed anymore by pandian packages. <br />
 +
Now settings of fluxbox and xinit/xinitrc are links. So The user can just unlink some of the settings and write there own, without getting overwritten from an upgrade. <br />
 +
<br />
 +
To get up-to-date with the fixes in pandian, you can initialize the home directory to default state. <br />
 +
To do this, just run in an terminal ( as USER ):
 +
* cp -a /etc/skel/. /home/<YourUserName>/
 +
 +
==== '''Upgrade Warnings''' ====
 +
* if mpd is running, upgrade will fail. How to fix this:
 +
** Open an terminal
 +
** Login as root ( command "su" )
 +
** Enter root password
 +
** stop mpd with: /etc/init.d/mpd stop
 +
** Kill it ( to be sure ): killall mpd
 +
** upgrade again: apt-get dist-upgrade
  
===== Upgrade from "minimal" to "normal" =====
+
==== Upgrade from "minimal" to "normal" ====
 
It is possible to upgrade from the "minimal"-image to the "normal"-image.
 
It is possible to upgrade from the "minimal"-image to the "normal"-image.
 
This can simlpy be done by installing the  pandian-lxde debian package
 
This can simlpy be done by installing the  pandian-lxde debian package
Line 130: Line 151:
 
* get root ( with command: "su" )
 
* get root ( with command: "su" )
 
* update package list with: "apt-get update"
 
* update package list with: "apt-get update"
* install debian-lxde with "apt-get install debian-lxde"
+
* install pandian-lxde with "apt-get install pandian-lxde"
 +
* after everything is finished login with the user you setup before
 +
* open an terminal
 +
* get root ( with command: "su" )
 +
* load keymap with "xmodmap /etc/skel/.pndXmodmap"
 +
* the easiest way is to activate the first-start-wizard with "insserv firstuse"
 +
* reboot and go through the wizard
 +
 
 +
===(Optional) '''Information''' ===
  
 
=== Additional Users/Groups ===
 
=== Additional Users/Groups ===
Line 139: Line 168:
 
* mpd
 
* mpd
 
:This user/group has access to mpd-related files ( socket, pid-files )
 
:This user/group has access to mpd-related files ( socket, pid-files )
 
=== User-Guide Section===
 
  
 
==== Power-Modes ====
 
==== Power-Modes ====
Line 173: Line 200:
 
| /usr/sbin/pdcmd WLANTrigger || Enable Wifi. If Wifi is enabled it will be disabled
 
| /usr/sbin/pdcmd WLANTrigger || Enable Wifi. If Wifi is enabled it will be disabled
 
|}
 
|}
 +
 +
==== Several tweaks ====
 +
 +
==== '''Fluxbox''' ====
 +
Fluxbox is the actual Desktop Environment for pandian. It is simple fast and easy to configure.
 +
 +
===== custom menu =====
 +
You can setup your own menu-entry's for fluxbox:
 +
* open an terminal ( or an editor ) as root
 +
* create a new file in ./fluxbox/menu-mymenu
 +
( Note: the menu -filename must be named menu-* )
 +
* run: "gen-menu-fluxbox <username>" as normal user, to generate the menu-file
 +
* your new menu is ready for use
 +
 +
===== autostart =====
 +
You can setup your own autostart script in ~/.fluxbox/startup-*
 +
for example you can use: ~/.fluxbox/startup-mystart
 +
Nothing else must be done, just logout and login to test it ( or reboot )
 +
===== Fixing broken keyboard layout =====
 +
If your Pandian has a German keyboard layout, you might have some trouble because it does absolutely not fit US layout on the Pandora.
 +
There is a work around this isse.
 +
 +
*Make sure, the file .pndXmodmap is read in on startup. Open the file ''.xsessionrc'' in your ''home'' directory and, if not existent, add following lines at the bottom of the file
 +
  setxkbmap en_US
 +
  xmodmap /home/yourUsername/.pndXmodmap
 +
*There must be the absolute path (no "~/").
 +
 +
===== Making the Pandora Button work like the Windows key =====
 +
Many users complained, their Pandora Button has no function in Pandian. This can be changed by mapping the button as ''"mod4"''.
 +
 +
*Insert in the last line of the .pndXmodmap from your ''home'' directory:
 +
  add mod4 = XF86MenuKB
 +
 +
===== Openbox =====
 +
Pandian comes with an unconfigured Openbox as a possible session. Here are some config templates.
 +
 +
====== Use the Pandora key to start the menu ======
 +
*If not existent,
 +
  cp /etc/xdg/openbox/rc.xml /home/yourUserName/.config/openbox/
 +
* Open the rc.xml with a text editor and search for the section <keyboard>.
 +
* Insert the new keybind:
 +
  <keybind key="XF86MenuKB">
 +
      <action name="ShowMenu">
 +
        <menu>root-menu</menu>
 +
      </action>
 +
  </keybind>
 +
 +
===== Intuitive Openbox configuration template =====
 +
Prerequisites:
 +
*mapped 'Pandora key' as 'Windows key'(see above)
 +
*optional: use tint2 as panel
 +
 +
Features:
 +
*Changing window by '''[Ctrl] + [up]/[down]'''
 +
*Changing workspace by '''[Ctrl] + [left]/[right]'''
 +
*Closing window by '''[Ctrl] + [Q]'''
 +
*Screenshot (window): '''[Ctrl] + [Shift] + [Alt] + [F11]'''
 +
*Screenshot (whole desktop): '''[Ctrl] + [Shift] + [Alt] + [F12]'''
 +
*and some more
 +
 +
'''Download:'''
 +
[https://www.dropbox.com/s/ud0muusrxq9g9va/rc.xml rc.xml]
 +
 +
===== Intuitive Openbox menu template =====
 +
Features:
 +
*Most important programms in root menu
 +
*menu entries for WLAN, USB host and low power mode
 +
'''Download:'''
 +
[https://www.dropbox.com/s/fqjxg5xoymg5fep/menu.xml menu.xml]
 +
 +
== Mounting internal NAND to /mnt ==
 +
 +
Pandora internal NAND exposes a raw flash interfaces. For such devices, the
 +
Linux kernel exposes a special MTD abstraction and "mtd aware" filesystems may
 +
give a better performance. Pandora uses UBIFS, which needs UBI volume
 +
management to work.
 +
 +
# Install mtd-utils
 +
# Run the following commands
 +
 +
<syntaxhighlight lang="bash">
 +
# Attach mtd device 4 to UBI volume management 0
 +
ubiattach -m 4 -d 0
 +
# Mount first partition of the UBI group 0 to /mnt
 +
mount -t ubifs /dev/ubi0_0 /mnt
 +
# Attach mtd device 3 to UBI volume management 1
 +
ubiattach -m 3 -d 1
 +
# Mount first partition of the UBI group 1 to /mnt
 +
mount -t ubifs /dev/ubi1_0 /mnt/boot
 +
</syntaxhighlight>
  
 
== Old releases ==
 
== Old releases ==
 +
 +
=== Mark2 minimal-hf2014-01-02 ===
 +
 +
{| class="wikitable"
 +
|-
 +
! Version !! Description !! Included !! Link !! Checksums (sha256)
 +
|-
 +
| minimal || pandian without any Desktop environment but with the basic pandian package || nano || [http://www.filedropper.com/pandian-mark2-minimal-hf2014-01-02 filedropper: pandian-mark2-minimal-hf2014-01-02]<br />[http://pandian.openpandora.org/releases/pandian-mark2-minimal-hf_2014-01-02.7z pandian.openpandora.org: pandian-mark2-minimal-hf_2014-01-02.7z] || pandian-mark2-minimal-hf_2014-01-02.'''7z'''↓ a35106473e54c55d64c7eae2088d8c267b605baf17d5338b8e2938dbfe3c01ca<br />pandian-mark2-minimal-hf_2014-01-02.'''img'''↓ c68a42c1aef0238c1dd6ff33b628a2c0dea812a7b5b2d906afb185f93f940f84
 +
|-
 +
| minimal-networking fix|| HotFix for pandian-mark2-minimal-hf_2014-01-02 [[#Network_Fix_for_pandian-minimal|Instructions]] || dhcp, network manager || [http://www.filedropper.com/pandian-mark2-minimal-networking2014-01-02tar filedropper: pandian-mark2-minimal-networking_2014-01-02.tar.gz]<br />[http://pandian.openpandora.org/releases/pandian-mark2-minimal-networking_2014-01-02.tar.gz pandian.openpandora.org: pandian-mark2-minimal-networking_2014-01-02.tar.gz] ||pandian-mark2-minimal-networking_2014-01-02.'''tar.gz'''↓ 4cf802391360e5bf183e9d4b5fe8b6f407b3e476baec7b5b0aa7340796680ae6
 +
|}
 +
 +
===== Network Fix for pandian-minimal =====
 +
If you download the '''pandian-mark2-minimal-hf_2014-01-02''' image there is a lack of tools for setup wifi networking. <br />
 +
'''Note: For the actual download of pandian-minimal, wifi-network-tools are included'''
 +
* Therefore download the fix and place it on the SD-Card where pandian is installed. (you need to have local superuser privileges on your own system as the SD contents aren't owned by your user)
 +
* Boot pandian-minimal
 +
* login with user: "root"
 +
* switch to root-directory: "cd /"
 +
* untar the network-fix: "tar -xf /path-where-file-is-located/pandian-mark2-minimal-networking_2014-01-03.tar.gz"
 +
* setup the fix with command "pdMinimalNetwork"
 +
 +
* after the script is finished, run "ceni" and setup your wifi-connection
  
 
=== 01 ===
 
=== 01 ===

Latest revision as of 14:21, 10 April 2014

Logo

Pandian is an debian-based armhf desktop and CLI distro for your Pandora. Ideas, Bugs, or feature-requests? Report to: https://www.evilbrain.de/review/index.php?project=4

Main Features

  • The debian way.
  • Access to all packages from Debian software repositories.
  • Pandian hosts its own Debian repo http://pandian.openpandora.org with up to date scripts, all settings and extra programs.
  • armhf-build, which means float operations are relegated to special hardware rather than taxing the main cpu with them (as with softfloat)

Pandian - MARK 2 The newest release

Second version of Pandian
Full Debian GNU/Linux based on sid branch with LXDE desktop environment (normal) or CLI (minimal-) build.
hardfloat armv7l yule release Date: 29.12.2013 forum link

Installation requirements

  • Pandora ;) All versions fine?
  • SD card minimum 2GB ( was tested with 4GB )
  • PC Linux|GNU, BSD, Mac, or Windows for putting the install on the aforementioned SD-card.

Download a version of Pandian

There are two different versions of the "MARK2" release:

Version Description Includes Link Size Checksums (sha256)
base pandian for advanced users, without any Desktop environment but with basic network-tools ( iw, ceni ) ceni ( network-manager) network-manager MediaPlayer ( mpd ) iw (wireless-tools) filedropper: pandian-mark2-base-hf2014-01-05.7z
pandian.openpandora.org: pandian-mark2-base-hf_2014-01-05.7z
161MB pandian-mark2-base-hf_2014-01-05.7z↓ b11ffe9cc4fd6111775d0b48c133b1e1afcf6865de784b9865db0cea29674d85
pandian-mark2-base-hf_2014-01-05.img↓ c1903423a5b5e0d04563f14526e8161fbe77a102e64d5d571bcf3b87870fa211
normal pandian for regular users, with full Desktop environment (LXDE) network-manager MediaPlayer ( mpd with gurlp ) nub-support calibrator-application medit Text editor. mpd audio player backend, glurp as frontend filedropper: pandian-mark2-hf2014-01-02
pandian.openpandora.org: pandian-mark2-hf_2014-01-02.7z
394MB pandian-mark2-hf_2014-01-02.7z↓ 3731d70a4d8ec59e79a046f34f69c5c809be73e38cfc91a5b580478b8f8c222f
pandian-mark2-hf_2014-01-02.img↓ 83b8d3fa5bd0588cfb8b11cfe6b827819e6311e98396a6e32c46c9692f072e96

Notes:

  • It is trivial to change from LXDE to Xfce (or any other desktop environment), adding a new user interface atop the minimal install is more advanced as manual setup of USB-Networking or wifi is needed to do so.
  • All images have automount ( for USB-Sticks, external Hard-Drives etc. ) and ALSA sound support

Verify that your download is OK

  • After you download the version you picked, verify its checksum to make sure the integrity of the downloaded file matches (in being an exact copy the one on the server)
  1. open up a terminal
  2. "sha256sum ~/downloads/pandian/<image.7Z>" (input where you have the file and the one you chose to download)
  3. make sure it matches the given md5sum, if not, try to download another copy. This step isnt mandatory, but its there to make sure everything is fine before we proceed.

Unzip the downloaded image

  • Unzipping 7z archives
  1. Open up a terminal (or do it your way)
  2. Enter"7zr e <image.7z>"
  3. You now have an unzipped image

(Optional) Preparation, find out where to install

This step helps you find out where the SD card is mounted.

If you have an build in SD-Card-Reader this is normally /dev/mmcblk0p1 ( in Debian ) If you have an USB-Card-Reader this is something like /dev/sdc ( in Debian )

  • Open an Terminal and input "lsblk"
  • You will get a list with the actual Block-Devices
  • The SD-Card should be of type 'disk'

You can also try gparted to see which devices you have and identify the SD-card from there

Install the image to the SD-Card



  1. Here it will be /dev/sdx

(note that the x after the sd is the drive letter, it could be sdb sdc or sdd and so on, lets say its sdc. Which means c is the drive letter for the SD-card and that sd- a and -b are in use for other things.

When writing to the device, make sure not to include the following number, which is the partition sdc1 sdc2 etc. since we are using the base card here)

This means considerations for partitions and filesystem are taken care of, so no need to worry about that. Do not pick the wrong drive however, since dd will happily write the image to somewhere it isn't supposed to if you just give it root privileges and hit enter.)

  1. Copy image to SD-Card with "dd if=<image.img> of=/dev/sdx"

You now have Pandian installed on your SD card and its ready to go. :) However after copying the image to the SD-Card resizing the partitionspartitions is needed to fully utilize the space, since by default the install is limited to 2GB. (If your card is bigger Pandian is still limited to those 2GB)

(Optional) Resize SD-Card

  • This can be done with gparted on linux|gnu
  • start gparted
The actual partitions of the SD-CARD. Please select the correct device at the top right corner.
Rightclick to the second partition and select Resize/Move
You see the actual Size of this partition
Move the slider to the right, or set "Free space following" to 0
After you press the "Resize/Move" button, you get the preview of the new partition structure
When you press "Apply all operations", youve got a warning that you can loss your Data.
THIS IS THE LAST CHANGE TO CHECK IF YOU SELECTED THE CORRECT DEVICE.
Press Apply if everything is correct.
  • After everything is fine, you have a fresh install of Pandian on you SD-Card


Startup wizard

  • Upon first boot of Pandian, there is a first-start-wizard which guides you through some basic settings.

These are: Locale, timezone, time and date, password for admin and user setup and finally calibration of the touchscreen. The script is located in /usr/sbin/pdSetup should you need to run it again.

Navigation

  • Inside a dialog you can navigate with the cross/dpad
  • Hit space to select a checkbox
  • Moving between <Ok> and <Cancel> can be down with the use of TAB ( Tap Fn then tap Space )
  • Acknowledge with Enter
  • All done, enjoy :)

PandianDesktop.png

Network connection instructions:

normal

  • Use network-manager

minimal

  • Use ceni network manager

(Optional) Update of Pandian system

  • After you setup your Pandora, it is useful to update your system. It is a rolling release, which means since the image was made, the system is forever updated with new packages.
  • open a terminal
  • get root ( command is: "su" )
  • enter "apt-get update" to download package information from the repositories
  • enter "apt-get upgrade" to update all packages that are out of date

(pandian packages are also updated this way :)

  • Note: to update only the pandian-packages enter "apt-get install pandian-full"

Up-To-Date Home directory

Normally files inside users home get overwritten ( if you say yes ) during upgrade.
Since an change of this behavior, files inside the users home don't get changed anymore by pandian packages.
Now settings of fluxbox and xinit/xinitrc are links. So The user can just unlink some of the settings and write there own, without getting overwritten from an upgrade.

To get up-to-date with the fixes in pandian, you can initialize the home directory to default state.
To do this, just run in an terminal ( as USER ):

  • cp -a /etc/skel/. /home/<YourUserName>/

Upgrade Warnings

  • if mpd is running, upgrade will fail. How to fix this:
    • Open an terminal
    • Login as root ( command "su" )
    • Enter root password
    • stop mpd with: /etc/init.d/mpd stop
    • Kill it ( to be sure ): killall mpd
    • upgrade again: apt-get dist-upgrade

Upgrade from "minimal" to "normal"

It is possible to upgrade from the "minimal"-image to the "normal"-image. This can simlpy be done by installing the pandian-lxde debian package

  • get an connection to the internet(tm) with ceni
  • open an terminal
  • get root ( with command: "su" )
  • update package list with: "apt-get update"
  • install pandian-lxde with "apt-get install pandian-lxde"
  • after everything is finished login with the user you setup before
  • open an terminal
  • get root ( with command: "su" )
  • load keymap with "xmodmap /etc/skel/.pndXmodmap"
  • the easiest way is to activate the first-start-wizard with "insserv firstuse"
  • reboot and go through the wizard

(Optional) Information

Additional Users/Groups

There are additional Users/Groups added to the standard debian-users

Groups

  • admin
This superuser privilege is used by sudo for admin task like shutdown etc.
  • mpd
This user/group has access to mpd-related files ( socket, pid-files )

Power-Modes

LID-Close
  • If the lid is closed only the screen will be disabled
Low-Power-Mode / Shutdown
Switch
  • Switch to left: Pandora will go to low power mode ( reduce CPU, Disable LID, Pause processes )
  • Switch to right: Shutdown the pandora

pdcmd

  • This script handles all system-related stuff, like lid, low-power, usb or wifi.
  • This should run as root


Usage:

Command What's done
/usr/sbin/pdcmd LCDBright + Increase the light of the lid
/usr/sbin/pdcmd LCDBright - Decrease the light of the lid
/usr/sbin/pdcmd LCDBright 10 Set the Brightness of the lid to 10
/usr/sbin/pdcmd LCDTrigger Trigger the lid ( WARNING: THIS DISABLES THE LID ! )
/usr/sbin/pdcmd USBNetTrigger Enable the USB-Networking (module g_ether). If usbnetworking is on, it will disable it
/usr/sbin/pdcmd USBHostTrigger Enable the USB-Host (module ehci-hcd). If USB-Host is on, it will disable it
/usr/sbin/pdcmd WLANTrigger Enable Wifi. If Wifi is enabled it will be disabled

Several tweaks

Fluxbox

Fluxbox is the actual Desktop Environment for pandian. It is simple fast and easy to configure.

custom menu

You can setup your own menu-entry's for fluxbox:

  • open an terminal ( or an editor ) as root
  • create a new file in ./fluxbox/menu-mymenu

( Note: the menu -filename must be named menu-* )

  • run: "gen-menu-fluxbox <username>" as normal user, to generate the menu-file
  • your new menu is ready for use
autostart

You can setup your own autostart script in ~/.fluxbox/startup-* for example you can use: ~/.fluxbox/startup-mystart Nothing else must be done, just logout and login to test it ( or reboot )

Fixing broken keyboard layout

If your Pandian has a German keyboard layout, you might have some trouble because it does absolutely not fit US layout on the Pandora. There is a work around this isse.

  • Make sure, the file .pndXmodmap is read in on startup. Open the file .xsessionrc in your home directory and, if not existent, add following lines at the bottom of the file
 setxkbmap en_US
 xmodmap /home/yourUsername/.pndXmodmap
  • There must be the absolute path (no "~/").
Making the Pandora Button work like the Windows key

Many users complained, their Pandora Button has no function in Pandian. This can be changed by mapping the button as "mod4".

  • Insert in the last line of the .pndXmodmap from your home directory:
 add mod4 = XF86MenuKB
Openbox

Pandian comes with an unconfigured Openbox as a possible session. Here are some config templates.

Use the Pandora key to start the menu
  • If not existent,
 cp /etc/xdg/openbox/rc.xml /home/yourUserName/.config/openbox/
  • Open the rc.xml with a text editor and search for the section <keyboard>.
  • Insert the new keybind:
 <keybind key="XF86MenuKB">
     <action name="ShowMenu">
       <menu>root-menu</menu>
     </action>
 </keybind>
Intuitive Openbox configuration template

Prerequisites:

  • mapped 'Pandora key' as 'Windows key'(see above)
  • optional: use tint2 as panel

Features:

  • Changing window by [Ctrl] + [up]/[down]
  • Changing workspace by [Ctrl] + [left]/[right]
  • Closing window by [Ctrl] + [Q]
  • Screenshot (window): [Ctrl] + [Shift] + [Alt] + [F11]
  • Screenshot (whole desktop): [Ctrl] + [Shift] + [Alt] + [F12]
  • and some more

Download: rc.xml

Intuitive Openbox menu template

Features:

  • Most important programms in root menu
  • menu entries for WLAN, USB host and low power mode

Download: menu.xml

Mounting internal NAND to /mnt

Pandora internal NAND exposes a raw flash interfaces. For such devices, the Linux kernel exposes a special MTD abstraction and "mtd aware" filesystems may give a better performance. Pandora uses UBIFS, which needs UBI volume management to work.

  1. Install mtd-utils
  2. Run the following commands
# Attach mtd device 4 to UBI volume management 0
ubiattach -m 4 -d 0
# Mount first partition of the UBI group 0 to /mnt
mount -t ubifs /dev/ubi0_0 /mnt
# Attach mtd device 3 to UBI volume management 1
ubiattach -m 3 -d 1
# Mount first partition of the UBI group 1 to /mnt
mount -t ubifs /dev/ubi1_0 /mnt/boot

Old releases

Mark2 minimal-hf2014-01-02

Version Description Included Link Checksums (sha256)
minimal pandian without any Desktop environment but with the basic pandian package nano filedropper: pandian-mark2-minimal-hf2014-01-02
pandian.openpandora.org: pandian-mark2-minimal-hf_2014-01-02.7z
pandian-mark2-minimal-hf_2014-01-02.7z↓ a35106473e54c55d64c7eae2088d8c267b605baf17d5338b8e2938dbfe3c01ca
pandian-mark2-minimal-hf_2014-01-02.img↓ c68a42c1aef0238c1dd6ff33b628a2c0dea812a7b5b2d906afb185f93f940f84
minimal-networking fix HotFix for pandian-mark2-minimal-hf_2014-01-02 Instructions dhcp, network manager filedropper: pandian-mark2-minimal-networking_2014-01-02.tar.gz
pandian.openpandora.org: pandian-mark2-minimal-networking_2014-01-02.tar.gz
pandian-mark2-minimal-networking_2014-01-02.tar.gz↓ 4cf802391360e5bf183e9d4b5fe8b6f407b3e476baec7b5b0aa7340796680ae6
Network Fix for pandian-minimal

If you download the pandian-mark2-minimal-hf_2014-01-02 image there is a lack of tools for setup wifi networking.
Note: For the actual download of pandian-minimal, wifi-network-tools are included

  • Therefore download the fix and place it on the SD-Card where pandian is installed. (you need to have local superuser privileges on your own system as the SD contents aren't owned by your user)
  • Boot pandian-minimal
  • login with user: "root"
  • switch to root-directory: "cd /"
  • untar the network-fix: "tar -xf /path-where-file-is-located/pandian-mark2-minimal-networking_2014-01-03.tar.gz"
  • setup the fix with command "pdMinimalNetwork"
  • after the script is finished, run "ceni" and setup your wifi-connection

01

Full debian GNU/Linux 7.2 codename Wheezy (stable) with LXDE desktop environment
hardfloat armv7l released Date: 29.09.2013 forum link

Features

  • Hard-Float-ABI
  • Ext4 Root for better performance
  • Working Touch-Screen
  • Working Nubs
  • Screen-Off on LID-Close
  • Low-Power-Mode
  • WLAN
  • Music ( with Sonata/MPD )
  • Automount

Upcoming/Ideas

  • Assistant for tzdata
  • libpnd - PND-Support
  • OpenGL not tested yet
  • Aptitude
  • Minimal-Network-Installation
  • Pandian-Debian-Repository for special packages ( libpnd, touch-screen-calibrator )
  • of course, in-system-documentation ( Documentation on the pandora )

Download here

Forum thread

Installation

note: It is assumed here, that the card-reader load the card as /dev/sdc. Please check before which device is your SD-card ! This can be checked with gparted. Minimum requirement 2GB SD-card.

  1. Download Image ( as 7z )
  2. Verify md5-checksum:
    pandian-stable-hf_2013-09-29.001.7z 2a85bbb40bbe7c6e8f92f058e150951a
    pandian-stable-hf_2013-09-29.001.img e62d101dc708de49af1ca7743e2df2bd
  3. Unzip with 7z ( in Linux with 7zr e <image.7z> )
  4. Copy image to SD-Card ( dd if=<image.img> of=/dev/sdx ) Don't specify "bs="

Username: Pandian
Root password: Root (change after intsallation as per instructions below)

  1. Open a terminal
  2. Type "su"
  3. Type "passwd"
  4. Enter your new root password when prompted, and then again to confirm.
  5. Dont forget your password

Resize

Default installation is limited to 2GB, if you want to expand it, you can, provided you have installed it on a bigger SD-card and want to make use of the space.

  • Size will be changed with parted
  • parted /dev/sdx
  • show size with "print free"
  1. (parted) print free # Model: USB Mass Storage Device (scsi)
  2. Disk /dev/sdc: 7965MB# Sector size (logical/physical): 512B/512B# Partition Table: msdos
Number Start End Size Type File system Flags
32,3kB 1049kB 1016kB Free Space
1 1049kB 53,5MB 52,4MB primary fat32
2 53,5MB 1933MB 1879MB primary ext4
1933MB 7965MB 6032MB Free Space

we would like to resize the second partition to the nearly end ( -512MB for swap )

  1. (parted) resizepart # Partition number? 2 # Warning: Partition /dev/sdc2 is being used. Are you sure you want to continue?# Yes/No? YES # End? [1933MB]? 7453MB this is how the partitions looks like after

(parted) print free * Model: USB Mass Storage Device (scsi)* Disk /dev/sdc: 7965MB* Sector size (logical/physical): 512B/512B* Partition Table: msdos

Number Start End Size Type File system Flags
32,3kB 1049kB 1016kB Free Space
1 1049kB 53,5MB 52,4MB primary fat32
2 53,5MB 7453MB 7400MB primary ext4
7453MB 7965MB 512MB Free Space

create Swap (optional)

(parted) mkpart primary linux-swap Start? 7453MB End? 7965MB

this is how the partitions looks like after

(parted) print free * Model: USB Mass Storage Device (scsi)* Disk /dev/sdc: 7965MB* Sector size (logical/physical): 512B/512B* Partition Table: msdos


Number Start End Size Type File system Flags
32,3kB 1049kB 1016kB Free Space
1 1049kB 53,5MB 52,4MB primary fat32
2 53,5MB 7453MB 7400MB primary ext4
7453MB 7453MB 278kB Free Space
7453MB 7965MB 512MB primary Free Space

disregard the 4th entry, the new resized partition is the last one.

resize filesystem

  • resize2fs /dev/sdc2

create swap

  • mkswap /dev/sdc3