Puppylinux for the OLPC laptops: XOpup

For talk and support relating specifically to Puppy derivatives
Message
Author
User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#161 Post by mavrothal »

01micko wrote: Early days .. will be fun!
Indeed! :lol:

I already uploaded in datafilehostSlaXOfy.tar.bz2 - NO GO
Expand it at the root of the squashfs-root and your puppy is good for the XOs (provided the right kernel of course)
It has the XO-1.5 driver and xorg.conf for the XO-1 and XO-1.5, power management and keyboard recognition, udev and some modifications in puppy scripts plus rc.local.
Actually it should work for any puppy provided it has a geode driver and that the (truncated) Slackware udev-165 is not going to give any problems.

Latter And since we are up to it,... I also uploaded make_initrds.tar.bz2 that will build the XO-1/XO-1.5 intrd/vmlinuz (based on the xopup-205 kernels) out of any puppy's initrd.gz. - NO GO
Just copy the original initrd.gz into the folder and run the build.sh script.
So when beta2 is coming out? :lol:

PS see 2 posts below
Last edited by mavrothal on Mon 22 Aug 2011, 05:34, edited 2 times in total.
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#162 Post by 01micko »

mavrothal wrote:So when beta2 is coming out?
This week some time.

What I can do is do a specialised woof build for SlaXO, with the prefix and everything in place, also add in scripts which are compat with the main repo. Do you have a browser preference? I can build in any browser, however I prefer not to build in Chrome browsers as they need extray nss/nspr libs from seamonkey, a bit too bloated too. Opera needs them too but isn't so large.

Also, can you point me to specialised pets so they can be included?

Later.. actually I can just pet the SlaXOfy.tar.bz2 file and that should cover it for now, and I can specify in woof to not build all the unnecessary Xorg drivers and other stuff.
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#163 Post by mavrothal »

01micko wrote: What I can do is do a specialised woof build for SlaXO, with the prefix and everything in place, also add in scripts which are compat with the main repo.
Hold on a bit
Actually the make_initrds has the kernels mixed up and the wrong olpc.fth (too late last night :oops: )
The SlaXOfy is mostly OK (just needs a couple of additions) but when I tested on the XO-1 took 2 minutes !!! to do the `udevadm settle' step in rc.sysinit. In XOpup takes about 5 secs. So I have to look over the slackware udev to see what the issue might be .

Give me a couple of days
Do you have a browser preference?
Actually I was delighted to see that Seamonkey 2.3 works in XO-1! Previous2.x versions failed (is XOpup). So Seamonkey it is!

Another thought... maybe we need a new thread for SlaXO?....
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#164 Post by 01micko »

Just a quick play.. no boot though..

Code: Select all

#!/bin/sh

# Make Puppy initrds for the OLPC XO-1 and XO-1.5

#set -x

CWD=`pwd` #just for standards
CORRECTDIR=`echo $CWD | grep make_initrds`

if [ "$CORRECTDIR" = "" ] ; then
	echo "please run the script from within the \"make_initrds\" directory"
	exit 0
fi

if [ ! -f $CWD/initrd.gz ] ; then 
	echo "please copy the puppy initrd.gz into the \"make_initrds\" directory"
 	exit 0
fi



for DIR in XO*

do VER="`echo $DIR|sed -e 's%^XO%%' -e 's%kernel$%%'`"
 case $VER in
  1)VERDIR=10
    XO=XO1 ;;
  1.5)VERDIR=15 
     XO=XO1.5 ;;
  *)echo "not supported" && break && exit 0 ;;
 esac
 
[ -f $CWD/boot${VERDIR}/initrd.* ] && rm -f $CWD/boot${VERDIR}/initrd.*

echo "Making the $XO initrd.gz"

cd $CWD/initramfs

gunzip -c ../initrd.gz | cpio -i
sync
rm -rf lib/modules/*
cp -aR ../$DIR/* .
sync
find . -print | cpio -H newc -o | gzip -9 > ../boot${VERDIR}/initrd.gz
sync

rm -rf $CWD/initramfs/* 
echo "find kernel and initrd in the $DIR diectory"
done

cd $CWD

echo " Done! "
#echo "find kernels and initrds in the \"boot10\" and \"boot15\" folders"
exit 0
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

XOfy

#165 Post by mavrothal »

01micko wrote:Just a quick play.. no boot though..
Looks good to me 8)
Though, before seeing this I had already uploaded XOfy.tar.gz (md5sum: 2403e5eb9cd49d6c745231b02ecce5c6) that has both the corrected kernels and the files and a mini howto that I hope you will script :wink:
I left the full udev out, aiming for a more generic version* and udev can be woofed-in from the distro package list or just installed afterwards.
Some looking into udev solved the loooong module loading process.
Hopefully Barry will include my little suggestion into the next woof (upstreaming :wink: ) and make things a bit simpler.

* Tried it with slack and lupu-258. Actually in lupu worked even without the full udev. Something to look at...
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

SlaXO booting

#166 Post by 01micko »

Hi mavrothal

Nice!

Typing from SlaXO now!

Very painless to set up, remarkable indeed!

There is a bug in the init script where XO can't boot from mmcb1kp1 (internal SD card).. but that should be easy to fix. I am booting from usb stick no problem. I'll report to Barry.

So far, I got 2 barks at a sane volume, Cam works in gnome-mplayer.. sorry no screenshot as mplayer is notorious for not showing in mtpaint captures... woops, just went to blacksceen, something with power management, just hit power button to recover.

I will test ffmpeg (on the XO-1.5 atm) and the equalizer see if they work...YES! pequalizer works perfect! You can save a preset for XO's tinny speakers too, makes an improvement

I'll script up your little tutorial

Cheers!

Later.... Ok, tried on XO-1, same usb stick install with save file from XO-1.5. Naturally had to run xorgwizard and alsa was messed but fixed easily. The equalizer works there too, so does the Cam. Seamonkey is a bit like treacle but stable. I might compile Dillo with a view for using in XO-1, it's very light and will be swift on the limited hardware.

Start a new thread I think, as I said, early days for SlaXO
Attachments
SlaXO-1.png
XO-1
(160.61 KiB) Downloaded 1178 times
SlaXO.png
XO-1.5
(78.89 KiB) Downloaded 1243 times
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

Re: SlaXO booting

#167 Post by mavrothal »

01micko wrote:
There is a bug in the init script where XO can't boot from mmcb1kp1 (internal SD card).. but that should be easy to fix. I am booting from usb stick no problem. I'll report to Barry.
I'm not sure about this.
I have modified pup_event_frontend_d NOT to automount the internal SDcard of the XO-1.5, so users will not inadvertently messup with it.
This maybe affecting the boot process. Just put back the original and see.

I do not know what you have in the internal SDcard but I think that the issue might be that you put the files in the big mmcblk0p2 partition?
OFW can not read this because is etx4. The boot* folders must go to the ext2 mmcblk0p1 but then the init must be instructed to look in another partition for the sfs. :?

...or it could be the olpc.fth setup. The way it is now defines the internal SD as "PDEV1=mmcblk1p1", but without an external card the internal is "mmcblk0p1". Change line 106 of /boot/olpc.fth accordingly and see what happens. Actually this looks like the most likely reason since pup_event is not coming into play during init boot.
Anyway I would stay out of the internal SDcard/NAND as principle, but if people ask it can be done properly at the /boot/olpc.fth level.
woops, just went to blacksceen, something with power management, just hit power button to recover.
Yes, if you do not have the full udev installed the user activity monitoring daemon (kbdshim-udev) is not working.
Later.... Ok, tried on XO-1, same usb stick install with save file from XO-1.5. Naturally had to run xorgwizard and alsa was messed but fixed easily
.
Actually, you do not need to do that. Just delete xorg.conf and reboot or copy the included /etc/X11/xorg.conf.XO-1 to xorg.conf and startx :)
I guess this could be automated in the rc.local where the xorg.conf selection is done but I did not think that many "normal" users will do that, and X takes too long to load as it is already.
Start a new thread I think, as I said, early days for SlaXO
Me?...

Actually, I was thinking to try XO-drake*. Is the only rpm-based puppy spin and then maybe jump to Fed(ora)-X(O) :lol: to be closer to base. Combining the 3 upstreams woof, OLPC and Fedora will make the project just a packaging issue :wink:

* Yep, XO-drake works :D . Some hiccups but mostly OK

Come on. There are no puppy-fedora lovers? :P (though I would stay out of F14+)
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

even faster

#168 Post by mavrothal »

If you want to cut another 3-6 seconds from the XOpup-2.2 (xopup-205) boot time install the attached init-1.pet.

Do not install in earlier versions
Attachments
init-1.pet
rc.sysinit for XOpup-2.2
(5.18 KiB) Downloaded 843 times
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#169 Post by 01micko »

Latest Wary .. 8) more later

Ok, here it is....

create_xo_puppy-0.1.tar.bz2 9752K

4269fc10c76b51b127f772c5d33c32b1 create_xo_puppy-0.1.tar.bz2


Fully automated building of a bootable Puppy on the XO hardware

Code: Select all

./create_xo_puppy -i /initrd/mnt/dev_save/wary-5.1.3.2.iso
That built me an almost sane Wary.. of course you need the exact path to an iso on your machine! Only works in Puppy. It works ok on XO-1 but the chrome driver is no good on the XO-1.5.

I tested with an earlier spup aka slacko and no problem.

Have fun! :lol:
Attachments
waryXO.png
(131.91 KiB) Downloaded 1101 times
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#170 Post by mavrothal »

01micko wrote: create_xo_puppy-0.1.tar.bz2 9752K

4269fc10c76b51b127f772c5d33c32b1 create_xo_puppy-0.1.tar.bz2


Fully automated building of a bootable Puppy on the XO hardware
Man... This is WAY cool :lol:

I'll tested latter but looks good on paper. :!:

The chrome driver must be compiled agains the puppy's xserver, but I already have the ubuntu and compiling for wary, drake, Dpup etc (hopefully) should not be a problem.
Unless of course if you want to script it from an included source 8) with a (modified) src2pet, hoping that the devx will have all the dependencies :wink:
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#171 Post by 01micko »

mavrothal wrote:Man... This is WAY cool :lol:
Well, I have some more ideas. Actually, the old seamonkey was quite usable on the Xo-1, it is a lot lighter, I just hate all the nag screens.. :roll: Maybe that can be in the base package and replace the main browser (except lupu, it has midori)?

Also, forget compiling on the fly, this works without the devx installed, why complicate? I'll compile Wary driver, you take care of Drake, and when I get to it I'll do squeeze. They are small, just put them in the package.

Also, all the stuff not used on XO platform can be discarded or packed into an sfs on the fly, also default font sizes can be changed, heaps of tweaks can be accomplished, all at only the cost of a bit rough bash coding. (I already found a bug with the size check :roll: )

I think this is a bit of a break through. :) You wait til you fire it up.. it's fun too!
Attachments
create_xo.png
the usage instructions
(10.35 KiB) Downloaded 1133 times
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#172 Post by mavrothal »

01micko wrote: Well, I have some more ideas. Actually, the old seamonkey was quite usable on the Xo-1, it is a lot lighter, I just hate all the nag screens.. :roll: Maybe that can be in the base package and replace the main browser (except lupu, it has midori)?
I think that Webkit browsers are better on the XOs. The lupu included Midori is a truncated version, and the full one from the Lupu repo, never worked well. Compiling for/on XO may be a way to go.
Is a pretty good browser.
Also, forget compiling on the fly, this works without the devx installed, why complicate? I'll compile Wary driver, you take care of Drake, and when I get to it I'll do squeeze. They are small, just put them in the package.
Agree. We'll do drake.
Also, all the stuff not used on XO platform can be discarded or packed into an sfs on the fly, also default font sizes can be changed, heaps of tweaks can be accomplished, all at only the cost of a bit rough bash coding.
Oh sure.
The major bulk is kernel and firmware (for builds w/o zdrv), the video drivers (since you only need geode, ztv, sisusb and the provided chrome), all dri and a bunch of intel/ati libraries. Is a good 20MB+ !
There are other little things but I do not think it worths the hassle.
The font sizes both for ROX and ruvtx are taken care of in the installed /root/.X* files and I remember seeing a hack that does that globally (from the /etc/fonts/ I think)
There are also other little things from XOpup that I did not put in the original files, like the easy access to internal SDcard/NAND, the freeram daemon, the make-swap.sh script, a couple of XO-1 touchpad apps, welcome/first screen, quickpet mod, etc.
create_xo.png
Waaaay, way cool. With the logo and everything! :lol:
Next thing you know is in the puppy-common repo :lol:


Latter Thinking about it... this approach could be the base for customizing any puppy for any specific hardware! Make the puppy even lighter and customized! Like a re-master puppy but with predefined changes and USB boot.

In any case put the next version in new thread something like "Hardware-specific customization of puppy; the XO case" :lol:
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#173 Post by 01micko »

I was thinking (can be dangerous!) .. where to put the new thread.. ?

It is cutting edge stuff but that may scare off new comers..it isn't a puplet.. just how to make one.. so I guess "HOWTO" section.

Will do it tomorrow, or next day.. bit busy tomorrow.
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#174 Post by mavrothal »

01micko wrote: so I guess "HOWTO" section.
Agree.

BTW here is some other stuff you can safely remove from XO builds (besides kernel, firmware) as reported in
/root/.packages/buitin_files :wink:
grub
grub4dos
915resolution
flsynclient
floppy_format
makebootfat
powerapplet_tray
xserver_xvesa_*
xf86-vedeo-* BUT the -geode

Also
/usr/sbin/
puppyinstaller
bootflash
wakepup2
/usr/share/applications/
Puppy-universal-installer.desktop
BootFlash-usb-installer.desktop
WakePup2.desktop

and if present
/usr/lib or /usr/X11R7/lib
libIntelXvMC.*
libI810XvMC.*
libdrm_*
dri/
other video driver specific libs?
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#175 Post by mavrothal »

Just uploaded create_xo_puppy-0.2.tar (md5sum : 5d4e07966ff27d7d6a3520629f84cf8e)
Has some additions of programs and some changes in the script but not major. Runs nice in Fedora :shock:
Did not try to use the buildin files to remove unneeded pets, though I remember having seen this somewhere in the forum :?: (yep, is here)

BTW, drake is a nightmare in XO-1.5. Tried hours to get keyboard/mouse to work and nothing :evil: but the video driver works :)
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#176 Post by 01micko »

Ha!

Script now works with dpup squeezed Exprimo!

:D
Attachments
squeeze.png
(109.47 KiB) Downloaded 1096 times
Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#177 Post by mavrothal »

01micko wrote:Ha!

Script now works with dpup squeezed Exprimo!

:D
:lol:

So the question now is which one of the 50+ puppies and puplets out there will work best on the XOs out of the box :lol:
(still like XOpup-2.2 though :oops: )

See if I can finish this kernel building script anytime soon :wink:
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

#178 Post by 01micko »

Puppy Linux Blog - contact me for access

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

PPM patch

#179 Post by mavrothal »

One of the (few) things that bother me with PPM is that when you update the repos is an all-or-nothing process.
Given the XO's processing power this can be painful if you just want to update the puppy-lucid repo for example and you are forced to process the entire Ubuntu repo first.
So here is a little patch that will modify PPM and allow skipping repos that you do not want to update.

This patch should work with all puppies, though is tested only in XOpup/Lupu and Slacko

Is a "p0" patch so after you download and decompress the file, you need to type in terminal

Code: Select all

patch -p0 < /path-to-patch/0setup.patch
Attachments
0setup.patch.gz
(545 Bytes) Downloaded 486 times
== [url=http://www.catb.org/esr/faqs/smart-questions.html]Here is how to solve your[/url] [url=https://www.chiark.greenend.org.uk/~sgtatham/bugs.html]Linux problems fast[/url] ==

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#180 Post by Aitch »

Wow....just been reading.....you guys are buzzin' ! :lol:

Nice job.....makes me want an XO to try..... :wink:

Aitch :)

Post Reply