XOpup Interest Group. Puppy Linux for the OLPC XO-1 laptop

A home for all kinds of Puppy related projects
Post Reply
Message
Author
User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#81 Post by ttuuxxx »

mavrothal wrote:
ttuuxxx wrote:Thanks for the images Raffy, I managed to get it 50% apart and then came across mavrothal input, lol

Ok mavrothal how to I change the bios so it boot with SD card under the monitor. I don't see any bios options when booting.
ttuuxxx
No BIOS :shock:
XO is using OFW (see previous page).
Basically the OFW looks in order to the USB, SDcard, Internal NAND to find a /boot folder and an olpc.fth file within this folder and does whatever this olpc.fth file is telling it. Basically 3 things, what is the root partition and its file system, the path to vmlinuz and the path to initrd (if used).
Here is my olpc.fth located in the SDcard that will boot Ubuntu from the SDcard if the "O" game key is pressed, and Fedora/Suagr from the NAND if not.
/boot/olpc.fth (in the SDcard)

Code: Select all

\ Boot script
\
\ overclock first
\
7de009e
5dd
4c000014
wrmsr
\
\ end of overclock
\
\ boot option
\ 
game-key-mask h# 80 and if
    " ro root=/dev/mmcblk0p1 rootfstype=ext2 console=tty0 fbcon=font:SUN12x22 video=fb:1200x900 loglevel=3 splash" to boot-file
    " sd:\boot\vmlinuz" to boot-device
    " sd:\boot\olpcrd.img" to ramdisk
else
\ original teapot's version
\
\    " ro root=mtd0 rootfstype=jffs2 console=tty0 fbcon=font:SUN12x22" to boot-file
\    " nand:\boot\vmlinuz" to boot-device
\    " nand:\boot\olpcrd.img" to ramdisk
\
\ f11-xo1 vesion
\
    " root=/dev/mtdblock0 rootfstype=jffs2 console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22 selinux=0" to boot-file
    " nand:\boot\vmlinuz" to boot-device
    " nand:\boot\initrd.img" to ramdisk
    setup-smbios
    unfreeze
    dcon-unfreeze
    visible
then
boot
The commented out "original version" is for booting F9-based/os802 (the one that came with the XO). The other is for F11-based system.
Now, the "setup-smbios" you need to simulate a "normal" BIOS. The unfreeze etc is so you get to see the console during boot.
Setting console, fonts, etc is not nessecary but good to have before you know you do not need...
( I hope you noticed the "overclock" :D )


look here for more OFW and here for a booting specifically

PS: If you copy/paste my olpc.fth file make sure there is no <return> in the long lines that look-like they are braking. The lines that end with: to boot-file. Should be in one line.
I'm reading this file over and well its a bit confusing when thinking img's, puppy doesn't do img by default it uses iso files, do you have a script that would work with puppy, say like for a frugal sd install ?
these are the files that are in 2.14X

boot.cat
boot.msg
f2
initrd.gz
isolinux.bin
isolinux.cfg
pup_214X.sfs
vmlinuz
zdrv_214X.sfs

ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

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

#82 Post by mavrothal »

ttuuxxx wrote: I'm reading this file over and well its a bit confusing when thinking img's, puppy doesn't do img by default it uses iso files, do you have a script that would work with puppy, say like for a frugal sd install ?
these are the files that are in 2.14X
ttuuxxx
All OFW does is to load initrd (compressed or not) vmlinuz and set the root file system. Then you are on your own.
OFW reads the /boot/olpc.fth file in the devices in the order USB, SDcard, internal NAND and executes the first it finds.
So here is a simple olpc.fth file. Assuming that the iso content is copied to a USB stick that will load in /dev/sda1 and that the olpc.fth file is in the boot folder at the root of the stick.

Code: Select all

\ Boot script
\
" ro root=/dev/sda1 rootfstype=vfat console=tty0 fbcon=font:SUN12x22 video=fb:1200x900" to boot-file
" u:\vmlinuz" to boot-device
" u:\olpcrd.gz" to ramdisk
setup-smbios
unfreeze
dcon-unfreeze
visible
boot
OFW accepts iso, fat, vfat, ext2 and ext3 boot files and compressed or uncompressed initrd and vmlinuz. However I believe it does _not_ decompress lzma. (So basically it can not open the vmlinuz you provide with the xo-1.iso).
I would say that for start is better to go with a full install on a stick and include the olpc.fth file in the boot folder.
There are scripts that can copy fedora-based iso boot disks to the XO internal NAND with variable success. Check the iso-to-dosk scripts from here.
More latter.
[/quote]

quickboot
Posts: 7
Joined: Mon 17 Nov 2008, 09:18

#83 Post by quickboot »

Just cheering on all of your efforts to get Puppy running on the XO! Thrilled to stumble on this thread and see hope!

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

#84 Post by mavrothal »

Image

There is a start :D
Is not rally working but is nice to see the puppy logo on the OLPC XO-1

Just some info about it in case someone has some ideas. :wink:
This is running from a USB sticks that boots and runs the olpc kernel 2.6.31 version xo1-20091208.1634.1.olpc.7a5228e.i586 patched with unionfs and recompiled to include unionfs, suqashfs and hfsplus (so I can connect my iPod :D ) support, and a manual (copy sfs content) full install of playdayz' uPup

The xorgwizard does not really recognizes the hardware. I just manually entered the screen refresh rates (30-68 hor, 48-52 ver) and on "test" dropped me back to console.
From there typing "xwin" gave me this screen! The Xorg.log shows that everything is configured appropriately for the XO-1 screen).

The keyboard kind-of works but the mouse is dead.
XO keyboard and mouse in Fedora use the evdev driver with these options

Code: Select all

Section "InputDevice"
        Identifier "ATKbd"
        Driver     "evdev"

        Option  "Name"  "AT Translated Set 2 keyboard"
        Option  "evBits"    "+1"
        Option  "keyBits"   "~1-255 ~352-511"
        Option  "Pass"      "2"
EndSection
Section "InputDevice"
        Identifier "Keyboard"
        Driver     "evdev"

        Option  "evBits"    "+1"
        Option  "keyBits"   "~1-115 ~117-255"
        Option  "Pass"      "3"
EndSection

Section "InputDevice"
        Identifier "Mouse"
        Driver     "evdev"

        Option  "evBits"    "+1-2"
        Option  "keyBits"   "~272-287"
        Option  "Pass"      "3"
EndSection
Section "InputDevice"
        Identifier "GS"
        Driver     "evdev"

        Option  "Name" "OLPC ALPS GlideSensor"
        Option  "evBits"    "+1 +3"
        Option  "keyBits"   "~272-287"
        Option  "absBits"   "~0-2 ~24"
        Option  "Pass"      "2"
        Option  "Mode"      "Relative"
EndSection
and the evdev driver is included in the build. However, when I manually edit the xorg.conf with these settings it fails to load.
Running the xorgwizard again gives me the original xorg.config and here we go again...

I guess my question is does puppy keeps the configured xorg.conf somewhere else? and if not how do I edit xorg.conf and make it stick?

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#85 Post by ttuuxxx »

Hi my main questions is what is the size?
I'm thinking around 90MB iso should be the starting point. I know it XO doesn't use iso's but If it was a iso.
ttuuxxx.
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

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

#86 Post by mavrothal »

ttuuxxx wrote:Hi my main questions is what is the size?
I'm thinking around 90MB iso should be the starting point. I know it XO doesn't use iso's but If it was a iso.
ttuuxxx.
As it stands should be ~150MB. 126MB for the uPup minus its initrd and vmlinuz plus the XO /boot folder and the OLPC kernel. Of course the uPup kernel could be removed and probably many xorg drivers and other things. But I doubt it could go to 90MB.

Any idea about the xorg.conf, xorgwizard?

fsabatino
Posts: 46
Joined: Wed 23 Sep 2009, 14:03
Location: Montevideo, Uruguay

#87 Post by fsabatino »

Mavrothal and ttuuxxx,

You have absolutely NO idea the level of hope this brings to sooooo many people here in Uruguay... ok.. I'll speak for myself... it brings to me.

Please keep up the tremendous work.

Thank you for your time, and thanks for shifting your collective intelligence into this project!

We patiently look forward to more updates.

Fer

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

#88 Post by mavrothal »

fsabatino
ttuuxxx and the other puppy developers are the "intelligence"! I'm just "cheerleading" :lol:

fsabatino
Posts: 46
Joined: Wed 23 Sep 2009, 14:03
Location: Montevideo, Uruguay

#89 Post by fsabatino »

Hey Mavrothal, I've read your posts.. you are not a cheerleader!!
Be that as it may... to all of you, please continue. This will change the XO mindset worldwide. You guys are aware of that, right?

raffy
Posts: 4798
Joined: Wed 25 May 2005, 12:20
Location: Manila

quirky

#90 Post by raffy »

I understand that quirky has the same advanced kernel version as playdayz' upup? Have you tried it?

Will it be easier for the interested parties (Uruguay govt, for example) to change the BIOS of the XO? I can help access contacts in Taiwan for this.
Puppy user since Oct 2004. Want FreeOffice? [url=http://puppylinux.info/topic/freeoffice-2012-sfs]Get the sfs (English only)[/url].

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#91 Post by ttuuxxx »

Tomorrow and Sunday I'll spend time on it, My goal is around 90MB or less, most of kernel size is for other unneeded drivers etc, after I get booting and bring some other apps, hopefully 100MB or so including gimp. The Xo version I'm trying to build will be XO specific that way the size would be drastically reduced.

also mavrothal your doing your share :) Your cheerleading does bring the spark back, but your providing much more than that :)
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

Re: quirky

#92 Post by ttuuxxx »

raffy wrote:I understand that quirky has the same advanced kernel version as playdayz' upup? Have you tried it?

Will it be easier for the interested parties (Uruguay govt, for example) to change the BIOS of the XO? I can help access contacts in Taiwan for this.
thats where I got the 90MB iso size, If Quirky can be that small, so can XO-pup. Plus earlier puppy version were around that size.
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

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

kernel

#93 Post by mavrothal »

I haven't tried BK's 2.6.31 kernel source but I did try 2.6.30 source and even with the olpc config it does not compile (to anything usable). Also I know that there are still OLPC kernel hacks that are not upstream, and finally playdayz' uPup does not boot with its kernel/initrd. I provided an OLPC based modified kernel /initrd/modules to "convince" the XO to boot.
Initrd is the other headache. OFW does several checks that must see in the initrd and if it doesn't it just stops. So "modifying" the OLPC initrd is much easier than rebuilding puppy's/your own.

I would strongly "advise" to start with an OLPC initrd/kernel/source but I'm really not an expert (I started in linux 1.5 years ago and I have no formal computer training of any kind. Just a user for 20 some years-really a cheerleader).
My very rudimentary approach is described (among other things) here, but I know is not the proper one.
The official way is to git clone the olpc kernel, patch it, modify the dracut init scripts as needed and rpm-build to get your kernel and initrd. The puppy way,... I have no clue :lol: (once I tried with the 431 devx and I got millions of errors).

But I guess the biggest advantage in using the OLPC kernels is that the builds can be readily adapted for XO-1.5 when it becomes available, by just switching the kernel (and minor changes). More important, if is build with an official signed build, it can boot ANY XO even if it is "locked"! (this was the case with an Ubuntu build)

Now regarding OFW and reflashing with a "real" BIOS that's up to the Governments and Quanta (the manufacturer) assuming that there is no OLPC-clause about it.
But really OFW is not a problem. What OFW does is to check that your XO is not stolen, allow for network booting, batch re-flashing the machines, test your hardware, play some games :) and all other nice things. And if there is any FORTH programmer among puppy experts (s)he could really turn it to anything you want.

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#94 Post by ttuuxxx »

Hi I just rebuilt woof 220 and used less modules, and the iso was 94MB, well I needed the devx to recompile the kernel, so I figured why not see the size, I'm thinking about ditching gnumeric and using a static Abiword without goffice and that would save a couple more MB.
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

hailpuppy
Posts: 73
Joined: Wed 28 Oct 2009, 07:49

#95 Post by hailpuppy »

HI Guys!!!! You cant imagine how thrilled I am to see our puppy on XO!!! This is the one way to bring life to XO. Thanksss for the effort and do continue til one day we can change the fate of XO.

And Mavrothal, is it true that you can speed this process up by a FORTH programmer. Im clueless about programming but I just tried a FORTH user group and cant we find a good FORTH guy to work on this. Well i personally believe that Puppy can be the best Linux distro out there and this effort to make an xopup just adds more testimony to that. In Sri Lanka also there are a set of FOSS guys working on OLPC project and they seem to have managed to workout Ubuntu on XO.

And ttuuxxx, well dropping Gnumeric may be a good idea at first but hopefully our goal is to make xo a real usable computer right? well im sure you guys will continue to work on this on behalf of us all. Both of you are doing a great job guys. Please do keep it up!!!

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#96 Post by ttuuxxx »

hailpuppy wrote:
And ttuuxxx, well dropping Gnumeric may be a good idea at first but hopefully our goal is to make xo a real usable computer right? well im sure you guys will continue to work on this on behalf of us all. Both of you are doing a great job guys. Please do keep it up!!!
The thing about Gnumeric is that its very large, Its around 3MB of 94MB iso image, actually its the second largest application on puppy next to Gxine/xinelibs/ffmpeg media player. Only lately you can build abiword without Goffice, where before Gnumeric and Abiword both shared Goffice. And to tell you the truth I've never used Gnumeric and probably around 90% of puppy users never uses it either. But gimp at around 5MB pet would be used by around 80% of the people. Don't forget I'll build a Gnumeric pet package with a single click install. etc. By my figures if I drop Gnumeric I could add Gimp and about 10 other useful apps and still keep it under 100MB.
If anything it would be a more useful version for general public.
Maybe even I could add one of the inkscape statics also and keep around 100-102MB iso or img I guess. :)
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

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

#97 Post by mavrothal »

ttuuxxx wrote:Hi I just rebuilt woof 220 and used less modules, and the iso was 94MB, well I needed the devx to recompile the kernel, so I figured why not see the size, I'm thinking about ditching gnumeric and using a static Abiword without goffice and that would save a couple more MB.
ttuuxxx
Can we see it, can we see it,?.... :lol:

I would leave Goffice in. Most likely users will need it and the libs are useful for other apps I think.
If you make an XO specific build you can eliminate a lot of things from the xorgwizard(!) and all the video drivers but the intel and geode, all the firmware, all the wireless (but the marvel usb8xxx), I would say most modems but wireless 3G modems, and other dead wight that is required for general use but not for the one specific piece of hardware.
Besides a couple more MB is not going to kill anyone :D

Oh..., and besides kernel and video you may need some other (but small XO specific) things like olpc-keys (some of the keys are going through the embedded controller!) power management, special key scripts etc probably less that 1MB, but stll.
Last edited by mavrothal on Sat 12 Dec 2009, 07:33, edited 1 time in total.

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#98 Post by ttuuxxx »

mavrothal wrote:
ttuuxxx wrote:Hi I just rebuilt woof 220 and used less modules, and the iso was 94MB, well I needed the devx to recompile the kernel, so I figured why not see the size, I'm thinking about ditching gnumeric and using a static Abiword without goffice and that would save a couple more MB.
ttuuxxx
Can we see it, can we see it,?.... :lol:

I would leave Goffice in. Most likely users will need it and the libs are useful for other apps I think.
If you make an XO specific build you van eliminate a lot of things from the xorgwizard(!) and all the video drivers but the intel and geode, all the firmware, all the wireless (but the marvel usb8xxx), I would say most modems but wireless 3G modems, and other dead wight that is required for general use but not for the one specific piece of hardware.
Besides a couple more MB is not going to kill anyone :D
Goffice is only used by 2 applications Abiword and Gnumeric, And the latest Abiword doesn't need it. Barry's inkscape full static is actually smaller than gnumeric, Also the main audience is the youth, do you think many youth would rather gnumeric over gimp or inkscape?
I don't think so, like I said I will provide a link to a single package install, that will have gnumeric and Goffice.
The drivers modules we'll have to weed-out later.
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#99 Post by ttuuxxx »

I re-read my previous post and when I read it, it came across a bit harsh, So I didn't intentionally mean for it to be as such. Puppy was always under 100MB, and with 2.14X I came across tons of excellent useful apps, when I look at 3MB that hardly gets used by most users, I think like
Gnumeric VS Xfburn+BMP-with ladspa+5BallGame+Fileroller+Xarchiver+RipperX+Asunder+Streamsniffer+Transmission and still have over 1MB left over.
Gnumeric has always been a bad addition to puppy, yes it gives you a fuller Office package but only a few ever use it.
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

hailpuppy
Posts: 73
Joined: Wed 28 Oct 2009, 07:49

#100 Post by hailpuppy »

ttuuxxx, come on buddy never get worried about you being harsh or anything. We al love puppy and thats the bond we all have. Damn it!!!! you just dont know how badly i want to help you guys out by lending a helping hand in coding but alas of coding i have zero expertise. The good thing is ive made a resolution that my devotion is for puppy.(good for others who love other distros coz our main thing is to keep linux up and running).. Well buddy I still am for Gnumeric because with both Abiword and Gnumeric no one can complain that Puppy is incomplete..well what you say about Inkscape and Gimp is true also.Hmm infact when i saw the puppy 4.3.1 being 105MB my heart sank coz of the extra 5 MB! :cry: simply coz with that 5 MB i cant brag to friends that puppy is just 100MB!!! in addition this 27 th or so Sri Lankan FOSS community is going to have a meeting where I intend to distribute some puppy is to impress them. The catch is, among the attendants to meeting are some key officers who working with OLPC project in Sri Lanka. Lets see im going to put all my efforts to see that they will seriously take puppy in relation to XO...GOD..I just cant see why these people see the endless possibilities with Puppy+XO :x ????

Post Reply