Page 1 of 1

How to build a custom Puppy?

Posted: Sat Sep 10, 2022 10:05 pm
by Neo_78

If you want to build a custom puppy based on the latest linux distribution of your choice (only selected packages, custom configurations, user management, updateable, usable in RAM-only mode), what are the options?

Is there a guide that explains the involved steps, design decisions and safety implications?

I noticed a couple of build scripts that have been mentioned, but I am unsure which approach is recommended... :roll:

Ideally the output is an image that can be written to a USB pendrive and is then ready to use.

Would appreciate your recommendations and feedback based on your experience! :thumbup:


Re: How to build a custom Puppy?

Posted: Sat Sep 10, 2022 10:15 pm
by rockedge

@Neo_78 Start here -> https://github.com/puppylinux-woof-CE/woof-CE

Read what you can and you will be able to build the distro you design directly on GitHub servers.
It might be a bit of a learning curve but you can really customize when you get the hang of it.

I use @wiak's WeeDog scripts more often because I figured out how to make the recipes.

Once you can start making woof-CE recipes that fit your requirements that build successfully you're going to be ready to push out some special distro's


Re: How to build a custom Puppy?

Posted: Sat Sep 10, 2022 11:14 pm
by Neo_78

Thanks @rockedge. So you have to get a Github account, fork the woof-CE repository, make your customizations and complete the build online, correct? No need to download anything during the build process?

Base distributions are limited to Slackware, Debian and Ubuntu?

Will give that a shot... :thumbup2:


Re: How to build a custom Puppy?

Posted: Sat Sep 10, 2022 11:27 pm
by rockedge

Yes that is correct! I've had good results with my fork. But I build on a local machine.

Clone the fork using git on your local machine. Work on the pieces on those files then push the changes as a commit to your fork on GitHub. Once the work flows are enabled the commit will trigger a build of the fork on the GitHub servers. Should produce a complete ISO release. The steps are documented.

Would you share the steps you take to make a successful build run?

VoidPup (Void Linux base binaries and package manger) is being made with woof-CE and @peebee has the information on how that is done. But those are the main choices at this time.


Re: How to build a custom Puppy?

Posted: Sun Sep 11, 2022 12:59 pm
by Neo_78

Apart from the Readme-file in the Github repository, is there a guide or tutorial that walks you over the different customization options with an example?

Let's say you want to use Debian Bullseye with a specific kernel version (https://cdn.kernel.org/pub/linux/kernel/v5.x/) and stripped down packages to use only Firefox, Geany and Libreoffice. How do you go about that?


Re: How to build a custom Puppy?

Posted: Mon Sep 12, 2022 3:59 pm
by rockedge

@Neo_78 I am joining your quest to learn how to work with woof-CE in a much more advanced fashion.

I want to see if I can get a real grip on configuring woof-CE to build much more detailed to certain specs, different Puppy's.

So I am going to look through my fork of woof-CE at all of the steps and the configurations needed to get something more than default settings.

I am though more advanced on using WDL build script + PLUG file system to produce distros. I mostly build Void Linux based distro's with it but it is very possible to build using Arch or Ubuntu/Debian as the bases.

The main reason is the ease of usage. The WDL+PLUG build system is easy to understand and modify to tailor to one's exact specifications to build a foundation OS as a start to polish. There is a lot of room to wiggle using it.

If I can learn enough about how woof-CE works maybe it would be possible to build a Puppy Linux using the WDL+PLUG system which also could be polished to be GUI or not.

What?.......you say???

Yes I am wondering if it is possible to perform a Puppy Linux (type) build by PLUG file recipe. Use pkg or pkg2 as the main package manager to start off with........

But it all starts with more knowledge and practical examples of controlling woof-CE to create different Puppy Linux builds.

Good idea to look at how @peebee is configuring woof-CE to build VoidPup's from some examples.


Re: How to build a custom Puppy?

Posted: Thu Sep 15, 2022 8:42 pm
by Neo_78

woof-CE is probably very straight forward to use if you know, which steps you have to follow. I am struggling a bit with the file organization and where to get started as the documentation is limited:

- woof-arch : architecture-dependent (x86_64, x86, ARM) files, mostly binary executables.
- woof-code : the core of Woof. Mostly scripts.
-woof-distro : distro-configuration (Debian, Slackware, etc.) files.
- kernel-kit : scripts to download, patch, configure and build the kernel.
- initrd-progs: scripts and files to generate the initial ramdisk

A practical example in the docs would be great.

Does your WDL build script + PLUG provide more detailed documentation @rockedge?