s243a / woof-next

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RETIREMENT NOTICE

Due to lack of interest from puppy builders, this project is now
retired. There will be no further effort expended for this.

The build system should continue to work regardless. Please feel free
to fork, experiment and improve on the codebase as you wish.

I may change this decision if I get enough interests from others,
but for now, this is it.

The codebase for this, however, will continue to live on in a different
project: the "Fatdog-Like" project, which I will announce in due course.

/james 2015-10-06

====== Original README follows ======

The Next-Generation of Woof (Woof-NG aka Woof3) branch.
This is a new and experimental branch of Woof build system for 
Puppy Linux, aiming for a new simplified and possibly
more standard-compliant puppy building system.

Currently this branch will build a very basic Ubuntu, Debian and
Slackware Puppy, which boots to graphical desktop with jwm and 
ROX Filer. Native package management is working (dpkg/apt-get/synaptic
for Debian/Ubuntu puppy, slapt-get/gslapt for Slackware puppy).

As time passes, the plans is to bring it to parity with the older 
build system (Woof2) and also to add more source distros, supporting 
more versions of the same parent distro, and may supporting 
cross-platform builds (e.g. ARM). The last one is a big "maybe" :)

Main reason for this branch? To bring the fun back in puppy-building :)

How to use:
-----
1. Clone this branch, put it in a largish directory *OUTSIDE* your
   save file (e.g. in some external partition like /mnt/sda3 that uses
   Unix partition - ext2/3/4 btrfs xfs f2fs etc will be good).
   
2. Run ./setup.sh. Answer a few questions, and you will get a "workdir".

3. cd workdir

4. ./build-sfs.sh --- this will build the puppy.sfs (basesfs) in 
   iso/iso-root.

5. ./build-iso.sh --- this will make an ISO, the iso is located in
   iso/puppy.iso
   
6. If you have qemu, you can then ./runqemu.sh to boot that puppy.iso.

7. Ready for more? Run "./setup.sh work2" from the top directory, and 
   choose another build parameters. 
   "cd work2", and re-do step 4-6 above to create another puppy build.
   You can keep multiple builds in its own separate directory this way.
   
   Or you can modify the "basesfs" package list. This file contains
   the selection of the packages that get built. Add/remove packages
   to tailor to your own needs.
   
   Build your own kernel with kernel-kit (see the README inside).
   Enable Fatdog-style kernel build, and put the resulting vmlinuz and 
   kernel-modules.sfs to iso/iso-root of your work directory.
   
   Build your own devx by running "./build-sfs.sh devx" from the
   work directory. If you need NLS, then "nls-holder" contains the
   locale files removed from the basesfs build, simply "mksquashfs" 
   them.
   
   The possibilities are endless!

What has been tested (in qemu):
- 32/64-bit ubuntu trusty build (this still works on May 2019)
- 32/64-bit devuan ascii build (tested to work on May 2019)
- 32/64-bit slackware 14.1 build (this still works on May 2019)
- 32/64-bit debian stretch build (added and tested May 2019, see note
  below about new kernel needed)
- 32/64-bit debian sid build (this wprked on 2015, tested to work on
  May 2019 but it needs a recent kernel (tested with 4.19) because of
  new systemd-udevd. The kernels in ibiblio cannot do it.).

Have fun.

/James

NOTE: If you're trying to build 64-bit system, please make sure that 
your own OS is 64-bit. You can't build 64-bit on 32-bit system.
On the other hand, 64-bit system will happily build 32-bit puppies.

About

License:GNU General Public License v2.0


Languages

Language:Shell 88.1%Language:HTML 6.9%Language:C 2.2%Language:Roff 1.6%Language:Modelica 0.9%Language:Perl 0.1%Language:CSS 0.1%Language:Makefile 0.0%