HowTo -convert Puppy to OLPC

How to do things, solutions, recipes, tutorials
Message
Author
User avatar
01micko
Posts: 8741
Joined: Sat 11 Oct 2008, 13:39
Location: qld
Contact:

HowTo -convert Puppy to OLPC

#1 Post by 01micko »

A kit to make any Puppy* OLPC compatible


Image

*any Puppy means that it should work in most recent woof builds of Puppy
*this is alpha at the moment, use with caution


This is a build kit and script developed by mavrothal and myself to make it easy to convert a Puppy build into an OLPC compatible build

The kit includes:
  • *OLPC kernels for XO-1 and XO-1.5
    *appropriate firmware
    *extra Xorg chrome drivers for OLPC
    *extra progs , OLPC specific
    *a script that does all the conversion and strips out useless stuff to the OLPC
    *README and help
It's really easy. There is pretty good documentation (sorry English only, Spanish on the drawing board).

Alls you do is invoke the program and point it to a Puppy iso of your choosing, the rest is automatic. The script runs on any Linux and does a check for makesquashfs, which is of course an essential dependency.

Code: Select all

./create_xo_puppy --iso /path/to/my/Puppy.iso
Get it Here:

create_xo_puppy-0.3.tar.bz2 12M (includes kernel etc)

f42b3b8cd226a55751bea5360f1046b9 create_xo_puppy-0.3.tar.bz2

Important edit:reuploaded 10:50am AEST (Australian Eastern Standard Time), corrupt upload at first, sorry

Known working isos and state:
  • o Lupu.. good
    o Slacko.. good
    o Squeeze.. good
    o Next.. fair.. (left click issue, also requires a build host with xz compression)
    o Wary.. fair (XO-1 only, fails on XO-1.5, xorg issue)
    o Drake.. bad (boots to X ok but input devices unresponsive in X)
Quirky is not supported, though if you are the technical type then you could make it work.. QuirkyNOP may be a good choice.

Isos that probably will work
Dlite -stu90
next -Iguleder (update, tested working XO-1.5)
Spup-100 -01micko
Luci -playdayz

Many Puplets may work. Suggested NOT to use an ISO over 180MB. Of course 64 bit isos will not work. Kernel version is irrelevant as the kernel is replaced. The resulting files will only attempt to boot in OLPC XO-1 and 1.5 isos.
XO-I.75 and above are unsupported.

Disclaimer:
/* GPL v3
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*/ SEE /usr/share/doc/legal/ for the licence

While all care is taken, NO responsibility is accepted
Puppy Linux Blog - contact me for access

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

#2 Post by 01micko »

Here are some screenies of the script in action and some of the resulting builds in action on XO-1 and XO-1.5

The script:

Image

--------------------------------------------------------------------------------------------------------------

Slacko on XO-1.5:

Image

--------------------------------------------------------------------------------------------------------------

Slacko on XO-1:

Image

--------------------------------------------------------------------------------------------------------------

Squeeze on XO-1.5:

Image

--------------------------------------------------------------------------------------------------------------

Wary on XO-1:

Image

--------------------------------------------------------------------------------------------------------------

Next on XO-1.5:

Image

--------------------------------------------------------------------------------------------------------------

Attached is the script. just for perusal. It won't run unless all the support files are there.
Attachments
create_xo_puppy-3.gz
wont run
(4.69 KiB) Downloaded 755 times
Puppy Linux Blog - contact me for access

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#3 Post by Lobster »

Congratulation to Mick and everyone involved in XOpup :)
http://puppylinux.org/wikka/XOPup

I am beginning to think that targeting Puppy to work
on specific hardware platforms is the way to go. 8)

I am keeping a close eye on the new amazon tablet
- likely to be intel based - expected October 2011
http://www.pcworld.com/article/235699/r ... _fall.html
Using DORG technology (not yet available) and Woof
we may be able to offer a Puppy on Amazon

oh boy . . have I gone off topic . . . again :oops:

Well done on the conversion :)
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
sc0ttman
Posts: 2812
Joined: Wed 16 Sep 2009, 05:44
Location: UK

#4 Post by sc0ttman »

Holy crap 01micko!! I always thought that the OLPC is a fantastic project, not perfect, but a step in the right direction for those who need it. I also think XOpup is a great idea, and a worthy project. And this script is great!

I know you said it's for Woof built pups, but I am hoping to get this working with Puppy Arcade and Akita Linux :) (They have DISTRO_SPECS and a few other 'Woof' style updates, so I'll see what I can do!)
[b][url=https://bit.ly/2KjtxoD]Pkg[/url], [url=https://bit.ly/2U6dzxV]mdsh[/url], [url=https://bit.ly/2G49OE8]Woofy[/url], [url=http://goo.gl/bzBU1]Akita[/url], [url=http://goo.gl/SO5ug]VLC-GTK[/url], [url=https://tiny.cc/c2hnfz]Search[/url][/b]

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

#5 Post by 01micko »

sc0ttman wrote:Holy crap 01micko!! I always thought that the OLPC is a fantastic project, not perfect, but a step in the right direction for those who need it. I also think XOpup is a great idea, and a worthy project. And this script is great!

I know you said it's for Woof built pups, but I am hoping to get this working with Puppy Arcade and Akita Linux :) (They have DISTRO_SPECS and a few other 'Woof' style updates, so I'll see what I can do!)
Hi sc0ttman,

It's all dependent on Xorg really.. what version of Xorg is Akita using.. ?? 7.3? If so, then the XO-1 will be ok, but we need an expert to get the chrome driver for the XO-1.5 to link against Xorg-7.3. Previously it was openchrome driver, which is a fail on the XO :cry: .

So Akita may well be a candidate for XO-1, which it would suit anyways I think.

I'll download your latest and see if I can "fit it in" :wink: :wink: (I'll have my shoe horn at the ready)

Cheers.
Puppy Linux Blog - contact me for access

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

Make the kernel for create_xo_puppy

#6 Post by mavrothal »

Excellent Micko !!! :D

The image below shows luci-258 running in the XO-1.5 made with "create_xo_puppy-0.3", but look at the date of the kernel :wink:

Image

It is made with the attached script that will download the latest 2..6.35.xx OLPC-kernel and Aufs2.2-standalone from the gits, plus some more pappy and config patches and will make the kernels.
It is fairly flexible and can build either or both kernels. Can be stopped at various point and continue as needed.
It and can be easily automated (Note:check 4 posts below) to run without any user input, but reckoned that the casual user may not need both kernels or stop and have a look if something fails, as the development of both OLPC kernel and Aufs goes on.
Of course in need a good connection to download ~600MB, about 1GB of disk space and a decent processor to compile the 2 kernels, headers, source etc.

It might be useful to others that are looking for automatic kernel building.

Now Mick you have to combine the 2 for v 0.4 :lol:
I tried to be consistent with create_xo_puppy folders. :wink:
Attachments
XOpup_kernel_builder.sh.gz
Automatic kernel building for the OLPC XO-1 and XO-1.5 puppy kernels
(2.39 KiB) Downloaded 759 times
Last edited by mavrothal on Sun 28 Aug 2011, 18:53, edited 1 time 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
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#7 Post by mavrothal »

Lobster wrote: I am keeping a close eye on the new amazon tablet
Actually the next XO version (XO-1.75) is running on ARM and is a prelude to their tablet (XO-3).
What is important in this case though, is that by now is running mainstream Fedora 14! Not an ARM-version of Fedora.
This means that with just deferent kernels you have the same userspace files (eg main sfs) running in both x86 and ARM machines!

Too bad nobody makes a Fedora-compatible puppy… :(
(what happened to Iguleder's Scientific Linux puppy?)
== [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] ==

nancy reagan
Posts: 544
Joined: Thu 22 Jan 2009, 14:20

what is OLPC

#8 Post by nancy reagan »

Could never figure out what tha xolpc is about, first thought "old" etc.

Q1 But if OLPC is a distro on its own why convert others to it ?

Q2 Bought very cheap tablet yesterday Yarvik TAB311 and was wondering whether it could also be transferred to this tab ????

regards from a very- low- profile- wannabee user

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

#9 Post by 01micko »

Hi nancy reagan
Q1 But if OLPC is a distro on its own why convert others to it ?
OLPC (wikipedia) isn't a distro, it's an organisation. :wink: It has a basic aim of distributing laptops to poor kids all over the world. The XO series laptops are the hardware. They normally come with a modified fedora installation. The hardware is new but very limited to keep costs down. mavrothal has been instrumental in making XoPup, a modded lupu puplet specific to XO hardware. This "HowTo" is just a program to make any Puppy run on XO hardware. It's a fun experiment. For everyday use on XO hardware it's recommended to use XoPup.
Q2 Bought very cheap tablet yesterday Yarvik TAB311 and was wondering whether it could also be transferred to this tab ????
Sorry, this proggy wont help with that!

Cheers
Puppy Linux Blog - contact me for access

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

Re: Make the kernel for create_xo_puppy

#10 Post by mavrothal »

Version 2 of the XOpup_kernel_builder
has the feel and look (and code :wink: ) of create_xo_puppy,
does not require any user input other than the original command
and will run on any distro provided the kernel building tools are present.

Image

Enjoy :wink:

Update Version 3 will maintain the structure of the git archives for future use and will update them just before compilation. So there is no need to re-download the 600MB if something goes wrong.
Also now the kernel source package has the sources in the "traditional" directory (/usr/src/linux)

Update Version 4 also checks and updates patches if needed

Note: the git repo in the link on the next post has updated versions of this script. Currently at version 8...
Attachments
XOpup_kernel_builder-4.sh.gz
Version 3+ of the XOpup_kernel_builder, is distro independent and maintains git integrity.
(3.59 KiB) Downloaded 700 times
Last edited by mavrothal on Sat 03 Sep 2011, 11:44, edited 1 time 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
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

convert puppy git

#11 Post by mavrothal »

I generated a git repository in Github https://github.com/mavrothal/Pox_git

Cloning it or downloading will allow you to build an OLPC-compatible puppy, but this you can do anyway already :wink:

The idea is that you can browse the code without the need to download and run everything, and hopefully come up with suggestions/modifications.
== [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

Slacko beta2

#12 Post by mavrothal »

The current version from the git in the above post, will build a sane Slacko beta2 :D
== [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

3.1 kernel

#13 Post by mavrothal »

The latest update of the build scripts support the 3.1 kernel that landed in the olpc kernel git.

What I like is how little memory appears to be used.
As the picture below shows Racy on the XO-1 (immediately after the first boot) uses just 53MB :!: :?:

Image
== [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
rpkopreski
Posts: 19
Joined: Fri 03 Jul 2009, 20:39
Location: New England
Contact:

Arcade Puppy

#14 Post by rpkopreski »

Hi, I know this thread is a bit dated now. Firstly, thank you 01micko and mavrothal (and all the others) for your work on this. I just got an xo-1 and it has been a fun project machine. Currently I am trying to figure out how to get ArcadePuppy to boot up on the xo-1. My goal is to have a full (or nearly) screen display of games that can be controlled in tablet mode with the game keys.

Anyone have any success with this or helpful tips? I left off not being able to connect wireless with Arcade booted on my Vaio which I think was causing the "make" script to fail.
synergenerator
H: Ubuntu Studio 8.04 / XP Black (unattended)
W: Ubuntu 9.04 / XP
M: Crunchbang / Puppy-4.2.1 - ChemPup-0.2.5 / XP

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

Re: Arcade Puppy

#15 Post by mavrothal »

rpkopreski wrote:Hi, I know this thread is a bit dated now. Firstly, thank you 01micko and mavrothal (and all the others) for your work on this. I just got an xo-1 and it has been a fun project machine. Currently I am trying to figure out how to get ArcadePuppy to boot up on the xo-1. My goal is to have a full (or nearly) screen display of games that can be controlled in tablet mode with the game keys.

Anyone have any success with this or helpful tips? I left off not being able to connect wireless with Arcade booted on my Vaio which I think was causing the "make" script to fail.
It should work.
Just download and run the build scripts. If you have the kernel will be ready in 5 minutes. Add ~1h to download and build the kernel if not (the build script does that for you).
Tried to download Puppy Arcade 10 to try it from the link provided but says that the iso file does not exist.
What the currect download link for the ISO
== [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
rpkopreski
Posts: 19
Joined: Fri 03 Jul 2009, 20:39
Location: New England
Contact:

#16 Post by rpkopreski »

If I'm not mistaken, I downloaded from one of the mirrors here:

http://scottjarvis.com/page105.htm

Thanks for the info, it tells me I am on the right track. I had first tried to build w/o the kernel and it didn't boot, so I then tried to "make" with the kernel and wondered why it was taking so long when puppy is so small! I have no kernel experience, but it must be there are just so many small files to download and compile. I don't know how to determine whether I need the kernel or not, can I just take the kernel file from (for example) XOpup?

Anyway, the build failed after 30+ min. because I was building on my debian system. Then I booted the Puppy Arcade disk as indicated by the script, but never got it to work since I was (surprisingly) having wireless trouble. Never had a problem with puppy on my vaio before, so maybe unique to the Puppy Arcade build.

Thanks Again!
synergenerator
H: Ubuntu Studio 8.04 / XP Black (unattended)
W: Ubuntu 9.04 / XP
M: Crunchbang / Puppy-4.2.1 - ChemPup-0.2.5 / XP

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

#17 Post by mavrothal »

rpkopreski wrote:If I'm not mistaken, I downloaded from one of the mirrors here:

http://scottjarvis.com/page105.htm
thanks
I'll probably try it tomorrow
rpkopreski wrote:Thanks for the info, it tells me I am on the right track. I had first tried to build w/o the kernel and it didn't boot, so I then tried to "make" with the kernel and wondered why it was taking so long when puppy is so small! I have no kernel experience, but it must be there are just so many small files to download and compile. I don't know how to determine whether I need the kernel or not, can I just take the kernel file from (for example) XOpup?
you definitively need an XO-specific kernel. building your own is pretty automatic with the scripts but you need an internet connection.
The scripts work both in puppy and in other distros as long as you have the respective dev tools and run some commands as root.
You could use the XOpup kernel too. You will need to coppy boot10 folder as such and /lib/modules in a folder named XO1kernel in your build dir.
== [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

#18 Post by mavrothal »

mavrothal wrote:
rpkopreski wrote:If I'm not mistaken, I downloaded from one of the mirrors here:

http://scottjarvis.com/page105.htm
thanks
I'll probably try it tomorrow
I did. No go :(
The XO build boots fine but does not go to desktop because the geode video driver is not included in the iso.
Even if you find it somewhere will be an old version an anything before 2.11.10 is too slow, especially for gaming.
You'll need to compile a newer one, assuming that all needed files are in the 420 devx and there are not other issues with the older xserver that 420/Arcade has and the newer geode drivers.
== [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
rpkopreski
Posts: 19
Joined: Fri 03 Jul 2009, 20:39
Location: New England
Contact:

#19 Post by rpkopreski »

mavrothal, thanks so much for giving it a try! I am thinking maybe it will be easier to start with xopup-2.2 as a base then, and maybe add the packages from puppy arcade directly. There was clearly a lot of work that went into both puplets, so merging them will be a major challenge for me, and could be a good new project! I really like the ROM launcher for puppy-arcade which can be navigated in tablet mode on the xo-1. I like the idea of turning the xo-1 into a great kids game system, like an oversized gameboy!

If I can manage a hybrid ISO, I will post here.
synergenerator
H: Ubuntu Studio 8.04 / XP Black (unattended)
W: Ubuntu 9.04 / XP
M: Crunchbang / Puppy-4.2.1 - ChemPup-0.2.5 / XP

Yogi12
Posts: 7
Joined: Sun 03 Apr 2011, 11:43
Location: Wales, UK

HowTo -convert Puppy to OLPC

#20 Post by Yogi12 »

I think the OLPC XO-1 is a marvellous piece of hardware, let down badly by the software. (I bought 6) A while ago I tried running puppy, but was continuously frustrated with applications requiring a more up to date kernel. I really wanted to know: In what way is the OLPC so different from any other laptop? I know it doesn't boot the same way. (Rather than load an MBR at 0000:0007ch & run it, it has this forth driven load system), but are the other BIOS INT calls different? I thought Linux did not use these calls anyway once up and running. Why does the kernel need patching, and what does this do? Why does the rest of puppy need changing?

I thought this thread, (which I have only just discovered) would let me answer this, but I am confused. It starts with 'Create_xo_puppy-0.3.tar.bz2' which seems to be a broken link & I can't find it anywhere. Then there is XOpup_kernel_builder-4.sh.gz. This seems to patch the Kernel source code using downloaded patch instructions, but little indication as to what this achieves. However, it seems to work on the kernel & that alone. Then there is, the Pox_git entry, create_xo_puppysh.html which when separated from the HTML seems to be a script that is claimed to magically do the whole thing from just an ISO download (which surely does not have the kernel sourcecode). It appears to modify many things, but not the kernel. (well if it does, I have not found where.) Duh????? I have not actually run any of them yet.

In order to take a short cut and actually upgrade my OLPC's, if converting any puppy is now supposed to be so easy, (even if time consuming), could someone who has done the latest two ISO's not make the result available for direct download?

Please help.

Yogi12

Post Reply