Software projects/OS/Slackware

From Pandora Wiki
Revision as of 11:12, 14 April 2012 by Linux-SWAT (talk | contribs) (Firmwares - Realtek Wi-Fi USB dongles)
Jump to: navigation, search

Disclaimer

Hi, this is Linux-SWAT.

Welcome to the SL4P, Slackware for Pandora, Wiki page.

The 13.37 release page is located here: http://boards.openpandora.org/index.php?/topic/7574-rebirth-competition-slackware-for-pandora-pre-release-thread/

The technical forum page is located here: http://boards.openpandora.org/index.php?/topic/1524-slackware-inside-pandora/

I'm the maintainer of this Slackware port, and you can find me here: http://boards.openpandora.org/index.php?/user/1035-linux-swat/

SL4P is an ARMedslack overlay. ARMedslack is the official ARM Slackware port.

Important notes: SL4P is not affiliated in any way with Slackware or ARMedslack.
Please DO NOT contact any of them if you have problems with it. Contact ME.

SL4P is not affiliated in any way with Open Pandora gmbh or Open Pandora ltd.
Please DO NOT contact any of them if you have problems with it. Contact ME.

This software is distributed as is. You are on your own responsibility when using it.

Stable or -current ?

  • -current is a work in progress. Although it's pretty usable, some things may be broken/unstable.
  • Stable is for production use, ie. for work, as a server etc..
  • ARMedslack stable is armv4t, -current is armv5te, so -current should be a little faster and less battery-greedy.
  • I won't rebuild the 13.37 if there's no big bad bug, i'll just add important features as packages. Of course, official Slackware updates are available.
  • If you want to help, i prefer that you use -current.

Installation

  • Format a 8G or more SD card with the Ext2 filesystem. To make explanations clear, name it SLACK.
  • If you don't know how to format a drive, use GParted under Linux, or run their Live-CD. Here's the manual.
  • It's highly recommended to have a second partition formated as a swap. 256M or more is a good choice.
  • Grab the latest 13.37 (stable) rootfs here.
  • Or the latest -current (unstable) rootfs here.
  • Uncompress the rootfs on your SD. Be root, using su -, or sudo:
sudo tar jxvfp SL4P-[version]-[build].tar.bz2 -C /media/SLACK/ --numeric-owner

First run

  • Be sure your Pandora's clock is set. Otherwise, your filesystem will be checked.
  • Power down your Pandora, insert the SD card in slot 1, and power on your unit.
  • You will be prompted to choose a password for the root user.
  • You will be prompted to create an user. At some explicit point, push up to put this user in adequate groups.
  • You will be prompted to choose your desktop environment.
  • When you log in as an user, the desktop environment is automatically launched.
  • To disable this feature, remove your .bash_profile, or comment the startx command in it.
  • Note: connecting with ssh will also launch startx. You can use Ctrl+C to kill it in a very dirty way ^^.
Last minute bug: Very unlikely to happen, but after login, you can be blocked at a black screen. Use pandora button + power to reboot. Working on this.

Basic usage

  • In order to type commands as root, you have to type su -. You can use just su, but i don't recommend it because you won't have the full root environment.
  • In order to unmount drives or SD cards under Xfce, you have an icon in the bar. You can also manually use pumount as user.
  • Power button is disabled for now, so you won't crash your system putting it in ram suspend.
  • When using adduser, at some explicit point, push up to put this user in adequate groups.

Basic tools

  • To enable or disable services at boot, become root, then type pkgtool, then go in setup -> services, check the option with space then push enter.
  • Some services are not listed here. To activate nfs server permanently, tweak /etc/exports and /etc/hosts.allow, then:
 chmod +x /etc/rc.d/rc.nfsd
 /etc/rc.d/rc.nfsd start (not needed after a reboot)
  • To choose a window manager, type xwmconfig.

Installing a program - Tools

  • Slackware archives are .tgz or .txz
  • Slackware uses three powerful tools: installpkg, removepkg and upgradepkg.
  • A fourth tool named makepkg build packages from compiled sources.

Installing a program from source

  • The cleanest way to do it is to use a SlackBuild script: http://slackbuilds.org/guidelines/
  • Many SlackBuilds for Slackware 13.37 are already available here: http://slackbuilds.org/repository/13.37/
  • I shipped a tool named sbopkg, which does the job for you. Become root using su -, then run sbopkg.
  • Note that Slackware does not check dependencies, so you have to get the right build orders looking here: http://slackbuilds.org/
  • Also note that gnome libraries must be compiled in a certain order. I already did the job, and shipped them in the rootfs.
  • If you don't use a SlackBuild script, then the procedure almost always ends like:
make install DESTDIR=/tmp/whatever/
cd /tmp/whatever/
makepkg /tmp/whatever-1.0.0-arm-1.tgz
installpkg /tmp/whatever-1.0.0-arm-1.tgz

Installing a program with a precompiled archive

  • I compiled a lot of packages from http://slackbuilds.org/. You can find 13.37 ones here, and -current ones here.
  • Download what you need, checking the dependencies for your version here: http://slackbuilds.org/
  • Put all needed .tgz or .txz in a folder, go root using su -, then type:
installpkg /path/to/your/folder/*.t?z

About SL4P precompiled archives

  • All extra archives are compiled with sbopkg without any modification.
  • The links to the sources are located here: http://slackbuilds.org/repository/
  • The building order is fixed in queue files, kind of build playlist.
  • The queues are located in /var/lib/sbopkg/queues/
  • About shipped archives, that you don't need to download as it's already in the rootfs, see this.

Updates

  • Plug the net, become root using su -, then type:
slackpkg update
slackpkg upgrade-all
  • Slackware usually provides updates during 10 years.
  • Do not do this when using a -current. Instead, look at the changelog, download packages from here, become root using su -, then type:
upgradepkg /path/to/the/updates/*.t?z

SL4P-specific updates

  • I provide Pandora fixes, available as Slackware archives.
  • 13.37 fixes are located here.
  • Grab them, become root using su -, then type:
upgradepkg /path/to/the/updates/*.t?z

Installing KDE

  • Plug the net, become root using su -, then type:
slackpkg update
slackpkg install kde
  • Note that although i already slimmed down KDE configuration files, the 512M Pandora is recommended to run the full desktop.
  • Anyway, you can run any KDE application (konqueror, kwrite...) flawlessly with the 256M version.

Fast boot tweak

  • I moved some of the boot stuff (ldconfig, font cache, mime database) in /etc/rc.d/rc.local_shutdown.
  • The reboot/power off process is slowered, but the OS integrity is safe.

Autologin

  • As i didn't succeded to compile the Slim display manager, no clean auto logger is available at this time.
  • KDM works, but is too heavy. You have to edit /etc/rc.d/rc.4 in order to use it.

PND compatibility list

Automounting a SD card or an USB drive

  • No system-wide automounter is enabled for now. It's still a wip and not perfect so i don't include this for now.
  • Only Xfce automounts.
  • As Xfce mounts devices at insertion, if you booted with a second SD card or an USB drive plugged in, you have to remove, then plug back the device.
  • If you plan to use Minimenu, you currently have to automount under Xfce, run xwmconfig, then log out to run Minimenu. This is the best method to save RAM.
  • You can also launch Minimenu under Xfce. Open a terminal and type:
mmwrapper -fmmenu

Booting another kernel

  • I provide kernel updates, and also a real time kernel.
  • If you use the 13.37-2 or -current-1, grab the latest kernel pack from here.
  • Install it with:
su -
upgradepkg --install-new kernels-20120408-1-arm.tgz
  • If you use the latest -current-2, it's already shipped in the rootfs.
  • To enable the new 3.2.14 or the 3.2.14-rt, boot the rootfs, then:
cd /boot
rm uImage
cp uImage-3.2.14 uImage

or:

cd /boot
rm uImage
cp uImage-3.2.14-rt uImage

And reboot.

  • If lsmod reports that no modules are loaded (that means, ie., no touchscreen), then run as root:
depmod -a

And reboot again.

  • You can switch back to the old slow kernel with:
cd /boot
rm uImage
cp uImage-3.2.1 uImage

Firmwares - Realtek Wi-Fi USB dongles

  • The realtek Wi-Fi dongles firmwares are missing in 13.37 =< 3, and -current =< 4.
  • Grab the package here.
  • Install it with:
su -
upgradepkg --install-new realtek-firmware-0.35-1-arm.tgz

Xfce layout chooser

  • The icon is located in "System".
  • I'm developing it, it's currently in beta stage.
  • You can save your own Xfce configuration, and load others.
  • If you want to use it, please use the save feature prior to anything else.
  • Only one custom layout is available right now.

Sources

  • See the Build system, right under.

Build system

  • I distribute it under the GPL 3 license.
  • It may look a bit messy for now (and indeed, some part have to be cleaned), but it's versatile, as i intended from the start.
  • It's mainly two bash scripts.
  • You need a Pandora to run the second one.
  • Depending on what you comment/uncomment, you can produce an alpha build, very minimal, or a full build.
  • Depending on what you edit, you can use it to port any *NIX to Open Pandora, and maintain your build very easily.
  • Get it here, along the more detailed instructions.

Ask a question/Report a bug