What makes a Puppy a Puppy, anyhow?

For talk and support relating specifically to Puppy derivatives
Post Reply
Message
Author
Ibidem
Posts: 549
Joined: Wed 26 May 2010, 03:31
Location: State of Jefferson

What makes a Puppy a Puppy, anyhow?

#1 Post by Ibidem »

I'm aware of several different puppy versions, and Woof, and some non-Woof "puplets". I know they all are designed to run live, but...when I see Pupngo, Fatdog64, Quirky, and Lucid, I wonder what they have in common to merit the same name?

So far, I see:
-Live bootable, with initrd
-Usually uses a union FS, with SFS archives and a filesystem image being merged to form /
-Compact
-Tons of scripts and wizards
-Fast

Typical puppy:
-Uses gtkdialog (not pupngo)
-X, often Xvesa/Xfbdev (often configured via wizard)
-Uses .pet packages (= tar of package installed with DESTDIR=./$pkgnam-$ver/, plus $DESTDIR/pet.specs, with MD5sum appended)
-automatic hardware recognition, to some extent...

Many puplets:
-Just about any possible application is covered


(Really, that's not the whole reason I ask: I'm pondering an extremely minimal non-woof based puplet that uses musl, and want to know what Puppians would expect to see in it. I'm currently thinking something with busybox, iwmulticall, wpa_supplicant, and not much more--perhaps Xvesa/Xfbdev, a terminal, a wm, and perhaps a couple more X applications.)

nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#2 Post by nooby »

Apart from the tech side of it I trust you need to get Barry
to approve of it to name it Puppy. I guess you can name it
a derivative without getting that permission or I can get that wrongly.
I use Google Search on Puppy Forum
not an ideal solution though

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#3 Post by amigo »

A very good question -and nearly the right one!
From your list the only one thing that is unique to puppy is the use of *.pet packages -and I assure you nobody else will be using it...
gtkdialog -well maybe nobody else uses it as part of any setup routines or other distro-unique routines.

Usually, the most basic things which distinguish one distro from another are: init procedure, package format and of course, who's doing the compiling. Sorry to all the derivative makers out there -changing the default theme or adding/removing a few packages doesn't make your derivative a 'real' distro. The one 'real' criteria is 'who's doing the compiling'.

simargl

#4 Post by simargl »

.
Last edited by simargl on Sun 01 Sep 2013, 14:42, edited 1 time in total.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#5 Post by sunburnt »

In 7 years I`ve found one other Linux O.S. that uses GtkDialog ( can`t remember what it is...).

Ubuntu calls it`s "version releases" "distros", so the word distro is kinda a loosely used term.
If a O.S. is based on another O.S. then it`s a child of it. Otherwise it`s like Puppy was, an orphan.
So Debian and Red Hat are orphans, but are the main base O.S.s for their many children.
Ubuntu is slowly removing itself from Unix compatibility, much like Android began it`s life.

User avatar
L18L
Posts: 3479
Joined: Sat 19 Jun 2010, 18:56
Location: www.eussenheim.de/

Re: What makes a Puppy a Puppy, anyhow?

#6 Post by L18L »

Sorry, what is bad with woof?

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#7 Post by amigo »

The whole idea of being able to assemble a 'distro' from pieces of other distros is really bad -it can only lead to misery, and especially if you attempt to do that for several distros(or with pieces from several -even worse!). The effort which has been put into making that (sort of) work would have been much better invested in creating a real Puppy toolchain and using that for everything -that would leave time (maybe) for actually fixing bugs which come up, creating new distro-specific utilities which really work and for bringing in new things which have been worked out by contributors.

Having your own toolchain frees you from any outside pressure to upgrade -before you've even finished adapting to the last upstream upgrade, or from having to *un*do parts of the parent distro by re-compiling, re-including or re-excluding anything. Having your own toolchain means you get taken seriously by users and developers of other distros and individual upstream projects. No more "Red-headed stepchild" syndrome!

distro versions are simply that -a new version with upgrades and bugfixes. simargl got even more specific by saying toolchain instead of 'who's doing the compiling', as I said. It takes a huge amount of work just to *maintain* a distro (upgrading, security fixes, etc), much less to create it -deciding what to include, what to leave out, implementing distro-specific stuff (installer or whatever). But, in the long run, it is much less work to do things the Right Way than to always be chasing after someone else's timeline and criteria. 10 years of Puppy and there has yet to be real Puppy toolchain. It's easy to see the result of the wasted time by looking at bug-reports and what happens to these bugs.

User avatar
L18L
Posts: 3479
Joined: Sat 19 Jun 2010, 18:56
Location: www.eussenheim.de/

What makes a Puppy a Puppy, anyhow?

#8 Post by L18L »

amigo, thanks for explaining
(Really, that's not the whole reason I ask: I'm pondering an extremely minimal non-woof based puplet that uses musl, and want to know what Puppians would expect to see in it. I'm currently thinking something with busybox, iwmulticall, wpa_supplicant, and not much more--perhaps Xvesa/Xfbdev, a terminal, a wm, and perhaps a couple more X applications.)
For me any Puppy was good as rescue os
that is much more than just "a couple more X applications".

A Puppy is what Barry Kauler says it is 8)
and at the moment that is woof (even woof2) built.

So I am thinking this project will nicely fit:
For discussions about programming, programming questions/advice, and projects that don't really have anything to do with Puppy.

amigo
Posts: 2629
Joined: Mon 02 Apr 2007, 06:52

#9 Post by amigo »

If you are going to create something using musl. that means you'll be recompiling *everything* so there is no reason to call it pup anything. If you successfully re-compile everything -which you will have to in order to use musl, then you will deserve to give it your own name -that would even be a favor to BK since anything you compile for it will not work on normal Puppies anyway. Otherwise, people will think there is enough of a relationship between your work and BK's that things might be interchangeable. On the other hand, it is highly unlikely that you will succeed -but please do try as it will teach you lots of things!

Why are you likely to not succeed? Because musl is not a full C lib and many, many, many things will have to be patched or gutted in order to compile them against such a small libc. And that is something you will surely not want to do. Congrats to the creators of fatdog who actually managed to create their own toolchain and compile everything for 64-bit arch -at least I think they did.

Ibidem
Posts: 549
Joined: Wed 26 May 2010, 03:31
Location: State of Jefferson

#10 Post by Ibidem »

amigo wrote:If you are going to create something using musl. that means you'll be recompiling *everything* so there is no reason to call it pup anything. If you successfully re-compile everything -which you will have to in order to use musl, then you will deserve to give it your own name -that would even be a favor to BK since anything you compile for it will not work on normal Puppies anyway. Otherwise, people will think there is enough of a relationship between your work and BK's that things might be interchangeable. On the other hand, it is highly unlikely that you will succeed -but please do try as it will teach you lots of things!
It wouldn't be that much less a puppy than some versions of pupngo...and whether pets work depends on if they're static or if you install ld-musl-*.so.1 (yes, I have used musl dynamically installed in parallel with a glibc system--for the last year or two). I'm even tempted to make a musl pet, just to demonstrate. ;)

I think I'll call it Fox Kit Linux, as a pun.
Why are you likely to not succeed? Because musl is not a full C lib and many, many, many things will have to be patched or gutted in order to compile them against such a small libc. And that is something you will surely not want to do. Congrats to the creators of fatdog who actually managed to create their own toolchain and compile everything for 64-bit arch -at least I think they did.
Actually, I've compiled against musl just about everything I'm thinking to include with foxkit--and most stuff compiles OOB or trivially so (>60% of pkgsrc, I hear).
Also, this is not a full-fledged distro I'm talking about. I'm rather a minimalist, and this will initially be fairly restricted (tinyX, links2, and all that). The hard part is working it into a vaguely Puppy-style live-bootable system.

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#11 Post by greengeek »

Ibidem wrote: foxkit
Good name - a Fox is not quite the same as a Puppy, but still a close enough part of the canine family surely? As long as it's got a wizard or two to help me past my ignorance I'll still think of it as a Pup :-)

Ibidem
Posts: 549
Joined: Wed 26 May 2010, 03:31
Location: State of Jefferson

#12 Post by Ibidem »

greengeek wrote:
Ibidem wrote: foxkit
Good name - a Fox is not quite the same as a Puppy, but still a close enough part of the canine family surely? As long as it's got a wizard or two to help me past my ignorance I'll still think of it as a Pup :-)
Yup, and a "kit" is a young fox.
I'm planning to make sure there are wizards, though--that would be the biggest difference from my current secret project, which is more of a hard-core "extract the sets, chroot in, set everything up manually" system. And probably most of the wizards will be based on Puppy wizards, because I've realized that rewriting everything from scratch is slow...that said, I've had my ideas about changes, and I plan to include them.

User avatar
NeroVance
Posts: 201
Joined: Wed 10 Oct 2012, 23:00
Location: Halifax, Canada

#13 Post by NeroVance »

If you want my opinion on what makes a puplet and other puppies, "Puppy"? I'd say it's BKs excellent scripts, and somewhat the internal structure.

If it has Puppy in it's core, no matter what it is built off, it is a Puppy, even if not Puppy Linux, but Puppy BSD or Puppy Solaris. :wink:

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#14 Post by jamesbond »

What makes a puppy these days? One word: Woof. Your "puppi-ness" depends on much Woof ingredients you use. The more, the purer the breed :lol:

But of course, if you're looking into a Puppy-like system (rather than a true Puppy based on musl), then you can probably look at the features rather than taking the scripts from Woof outright. For me:
- Lightweight
- LiveCD that can run with persistent savefile
- ability to boot from many different popular devices (CD, harddisk, USB)
- installation by copying 3 files installation instead of 3-hour copy process
- relatively complete out of the box (wordprocessor, spreadsheet, media player, graphics editor, web browser, email client, calendar, pdf reader, cdrburner).

Amigo,
Fatdog's toolchain was created by T2 SDE. The basic utilities (coreutils, util-linux, etc) also came from T2, but more complex packages (Xorg, Seamonkeys) were hand-compiled. I would like to think that T2 SDE works like an automated LFS - thus qualifying it as an independent toolchain. What do you think? :D
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

Post Reply