On Mon, 2008-07-14 at 09:28 -0300, Herbert P Fortes Neto wrote: > On Sun, 13 Jul 2008 21:41:21 +0100 > Neil Williams <codehelp@debian.org> wrote: > > > On Sun, 2008-07-13 at 17:14 -0300, Herbert P Fortes Neto wrote: > > > Hi, > > > > > > I would like to know who is working on i386. > > > > Is that a volunteer I see? > > Yes. Excellent! Which architecture are you going to use to build the packages? i386 or amd64 (in a 32bit chroot) would be advisable. > Is the thinkpad 600e i use as server(home, domestic). At least > until now, only text mode. I believe programs will run more > easily. Hmm, you will be able to fit more programs onto the device but an increase in speed is not the main driver behind Emdebian - space is the issue generally. The programs themselves are not that much smaller, what is taken out are documentation, unwanted dependencies and some optional components. We've only recently got a working system (ARM) so it is only now that I can realistically start working out which components are optional and which omissions are breaking things at runtime. > > Until someone else volunteers, that is the state of play. Goswin did > > look at some i386 builds just today - not sure how much work Goswin is > > wanting to do on that. > > As i said, i am a volunteer. But i need to follow steps. I can not do > everything by myself. Not enough knowledge for that. Maybe i have someone > to check the work done, but is important to have a mentor. Or the docs on > emdebian.org is enough clear? The docs on emdebian.org certainly need improving - especially for native builds like yours. Use the Wiki to create your own docs as you go and help us identify where the current docs are lacking. > What i can say is: i want to see emdebian on i386 and i can spend > some time working on it. For quicker advice, join us on IRC but the basics would be: On AMD64, set up a 32bit chroot (debootstrap should be able to do that for you, select i386 as the --foreign arch and Sid or unstable as the suite). Install emdebian-tools in the chroot. Run all your builds inside the chroot. Keep the chroot updated with a cron task. On i386, simply install emdebian-tools. emsource gets the Debian source package and applies our patches to reduce the final package size. You can use emdebuild but as this is native, you can just as easily use debuild or dpkg-buildpackage after emsource has applied the patches. If packages fail to build, check the Emdebian autobuilder report to see if it is also happening for the ARM builds then ask me. You will need either access to the Emdebian repository or a local repository of your own (use reprepro). As you build the packages, check them with emdebcheck and / or use emrecent to upload them to the repo. At some stages, you will need to overrule emdebcheck and allow certain uploads even if the dependencies are not yet built - you have to start somewhere so start with busybox, glibc and gcc-4.3 (yes, I know, the hardest + longest ones first - sorry). You only need libgcc1 and libstdc++6 from gcc-4.3 but the build prepares most of the rest too. Once you have all the dependencies you need in the repo, you can finally use emsandbox to create a root filesystem. If the device is already running Debian, you could probably switch the source in /etc/apt/sources.list to your repo and the higher Emdebian version strings will allow your machine to "upgrade" to Emdebian. Hopefully, you should find more disc space on the system but you may still have to remove some packages and as these would be the original Debian ones that Emdebian no longer needs, apt may well complain about removing "Essential" packages - ignore it. If you want a clean install (which will gain you the most space with the least pain overall), you need to decide how to install the kernel, modules and root filesystem. That stage has only been done for ARM and is quite customised. Most of the benefit for i386 will not be seen until we have things like dpkg variants supported in Debian where we can set options to disable what we don't need. A lot of those options are currently implemented in conditionals that detect a cross-build. In a native build, those are ignored because we need to be able to get as many of our patches into the Debian packages without changing Debian behaviour. Dpkg variants should allow us to enforce the options in a native build by persuading dpkg that the build is almost-but-not-quite-normal-Debian. Naturally, that is easier to do in a cross-build because normal Debian packages are not cross-built. Building for i386 presents a few problems that are unique to that build setup so changes may well be needed to fully support it. Without i386 test hardware, I need info on where things are breaking. -- Neil Williams ============= http://www.data-freedom.org/ http://www.nosoftwarepatents.com/ http://www.linux.codehelp.co.uk/
Attachment:
signature.asc
Description: This is a digitally signed message part