Software projects/OS/Slackware/Build-system
From Pandora Wiki
Contents
Disclaimer
- Same as here.
- The build system is GPL V3.
Principles
- The target directory is likely to be a SD card. 8G recommended.
- Phase 1 populates the target directory with the main ARMedslack Linux distribution.
- Phase 2 populates the target directory with parts from official Open Pandora OS and tweaked stuff.
- A specific part of rc.local is executed during the first boot on a Pandora.
- The files folder contains tweaked stuff.
- The pkg folder contains pre-built packages from a previous alpha build.
- The sources folder contains sources for essential programs.
- Some proprietary stuff is missing, like 3D drivers.
Get the build system
- Get the archive here.
- If you don't run a Slackware or a derivative, get the Slackware's installpkg script here.
- Put it in /sbin and make it executable.
Dependencies
- You need to download the official Open Pandora rootfs: http://openpandora.org/firmware/pandora-rootfs.tar.bz2
- Uncompress it as root anywhere and link it to the build directory as "pandora-rootfs".
- 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.
Phase 1
- Run as su -.
- You'll see packages errors because it's a first run.
Phase 2
- Run as su -.
- For this very first alpha build, don't remove the SD card now, you have to edit ie.: /media/SLACK/etc/rc.d/rc.local
rc.local
- Remove simple-comments in order to produce the needed packages during the first boot.
- Put the SD card in the Pandora, and power it on.
- The Pandora will generate all (or almost all) needed packages.
- The Pandora will power off after having done the job. May last for one hour or two.
- Remove the card.
- Save all /media/SLACK/tmp/*.t?z in the PHASE-1.sh
MYPKGS="/mnt/hd/sdb4/stockage/pandora/armed-pack/sbopkg/Aaa-base/"
folder of the build system.
- Now, you can boot normally this alpha build.
In-between steps
- Plug the net.
- Launch sbopkg as su -, load the vrac1 queue file, process it saying yes (Q) to options and wait. This is gonna be very long. I really mean very.
- Do the same with vrac2 and vrac3.
- Save all /tmp/*.t?z in the MYPKGS="/mnt/hd/sdb4/stockage/pandora/armed-pack/sbopkg/Aaa-vrac/" folder of the build system.
- Be careful with disk space, you may fill the card. If so, save and erase all /tmp/*.t?z between queues processing.
Final step
- Create a new rootfs, with PHASE-1.sh and PHASE-2.sh
- Edit /media/SLACK/etc/rc.d/rc.local to build the remaining packages to put in $MYPKGS/AAA-base/
- Put the SD card in the Pandora, and power it on.
- The Pandora will generate final needed packages.
- The Pandora will power off after having done the job. May last for one hour or two.
- Remove the card.
- Save all /media/SLACK/tmp/*.t?z in $MYPKGS/AAA-base/ folder of the build system.
- Now, you can create a complete rootfs.
Special packages
- In the sources folder, you'll find some programs that aren't automatically generated by the build system.
- I ship a light, but optimized version of mplayer. If you want a big bunch of new features, just compile it after having installed many dependencies from /extra.
I don't list those dependencies for now, because i do more useful things ^^.
- Xmms may just needs libmikmod.
- Qt3 is a bit long to build. It should be built before the big playlist. I will probably include it in the alpha building.
Notes
- 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.
- 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
- The -current build system is under work and is not released yet.