How to contribute?

New to Puppy and have questions? Start here

Moderator: Forum moderators

Post Reply
jfw01
Posts: 19
Joined: Thu Aug 12, 2021 3:16 am
Location: New Zealand
Has thanked: 3 times
Been thanked: 2 times

How to contribute?

Post by jfw01 »

Minimum information we need:
What specific Puppy version?
Bionicpup32 8.0+28

Computer specs or make and model?
MacBookPro 8.1
8GB memory
I plan to attach a summary pup-sysinfo.

How is Puppy installed?
I think that the right answer is live, but see below to confirm this.

Hard drive, USB flash, emmc, SD Card, CD/DVD, etc.....?
Booting off dvd-r, with a remaster of the standard ISO image, with the pupSaves in an SD Card attached as a USB flash drive.

--- Context ----

On about the 4th of August, I booted Bionic Puppy, and followed the advice at line 490 in /usr/sbin/shutdownconfig, that "You are only allowed to save one-deep ...", so the savefile was /mnt/sdb1/puppyLinux/upupbbsave-v_pre_0.4fs

When I booted, it was not found, and it was unclear what my next steps should be.

Because I am unreasonable, I decided to start understanding and fixing things, rather than buy a new flash drive and store everything in the root.

At some stage, I hacked around pmedia= and became able to restore pupSaves (in PUPMODE=13), and discovered that my machine will not sleep without unmounting writeable drives, so I am partway through adding a PUPMODE.

--------- What I have -------

Attached /initrd/init and diff, which add three developability features, enable wildcards in psave=, and begin adding a PUPMODE where the pupSave lives in /initrd/mnt/tmpfs/ with the system .sfs, and the beginnings of a future /usr/sbin/save2removable to save content from it back onto the external media.

I also have projects to:
- extend the syntax of psave=, to enable the claim in shutdownconfig to be true
- ask whether ext4 is the optimal in-memory pupSave format on machines without swap, and possibly implement another one
- make something happen during a second boot where no save file is found, to help people toward usability

Of these, only the developability features are settled enough to submit.

The developability changes are:
pfix=trace
turn on set -x in the shell, without remastering a dvd

pfix=rdsh0
get into a ramdisk shell very early; in fact, early enough to load and run a different /initrd/init from removeable media

forked /initrd/init (always on)
most of the work done by init is ordinary execution that does not have to be in process 1. If it is, and fails badly, the only feedback is a kernel panic. If init is forked, the feedback is an error message, a shell and an intact initrd mounted on /

---------- What I am asking for --------

Please may I have advice, including links to the standard advice if there is one, about how to start contributing code to Puppy Linux?

If it is consistent with the usual process, then I am pre-emptively offering to make clean separations of the three features.

Regards,
James.

Attachments
init-29.diff.txt
Extended .txt because the forum demands a file type
(11.93 KiB) Downloaded 19 times
init-29.txt
/initrd/init with added features as discussed
(56.53 KiB) Downloaded 22 times
pup-sysinfo.txt
(11.66 KiB) Downloaded 23 times
Last edited by jfw01 on Thu Aug 12, 2021 5:05 am, edited 1 time in total.
jfw01
Posts: 19
Joined: Thu Aug 12, 2021 3:16 am
Location: New Zealand
Has thanked: 3 times
Been thanked: 2 times

Re: How to contribute?

Post by jfw01 »

Attempting to add the fourth attachment.

Attachments
save2removable-17.sh.txt
(3.81 KiB) Downloaded 21 times
jfw01
Posts: 19
Joined: Thu Aug 12, 2021 3:16 am
Location: New Zealand
Has thanked: 3 times
Been thanked: 2 times

Re: How to contribute?

Post by jfw01 »

I am currently running @peebee's fossa, with sfs savefiles, because the kernel has CONFIG_AUFS_SHWH=y, which enables the generations of read+write->read-only trick.

Here is a diff of the init that gives me options from the kernel command-line:

diff-fossa-00-to-28.txt
tracing, wildcard savefile, wildcard init without remaster, more survivable init script failure
(20.48 KiB) Downloaded 17 times

I think that pfix=trace is mature. I think that pfix=altInit and pfix=rdsh0 would benefit from being REPL loops, so that people could see the state of the shell, and that a better theory is needed, of what to do after people exit from them.

Please find attached the savefile saver that goes with that init and sfs savefiles.

save2sfs-09.sh.txt
save an sfs plus a tmpfs into a new sfs
(1.39 KiB) Downloaded 20 times

.
Please find attached (possibly over several posts) the set of scripts that I am mostly using to remaster. Booting on a MacBookPro 8,1 I have not yet succeeded in building an ISO that will not have a 'Windows' ~= CSM option.

fakePreviousRemaster.sh.txt
Gather content to avoid remastering
(582 Bytes) Downloaded 19 times
jfw01
Posts: 19
Joined: Thu Aug 12, 2021 3:16 am
Location: New Zealand
Has thanked: 3 times
Been thanked: 2 times

Re: How to contribute?

Post by jfw01 »

add-init-to-init.sh.txt
Add the current version of init to the initrd.
(919 Bytes) Downloaded 39 times
nonHybridIso.sh.txt
Burn an iso without a graphical front-end.
(928 Bytes) Downloaded 42 times
User avatar
Flash
Moderator
Posts: 923
Joined: Tue Dec 03, 2019 3:13 pm
Location: Arizona, U.S.
Has thanked: 47 times
Been thanked: 113 times

Re: How to contribute?

Post by Flash »

Grab a root and growl.

Chaos coordinator :?
User avatar
Phoenix
Posts: 339
Joined: Fri Feb 12, 2021 2:03 am
Location: Canada
Has thanked: 4 times
Been thanked: 48 times

Re: How to contribute?

Post by Phoenix »

You can get started by forking Woof-CE here: https://github.com/puppylinux-woof-CE/woof-CE
You will need to sign up.
You can then make changes and PR it to the parent repository. It can be rejected though for a variety of reasons.

IRC: firepup | Time to hack Puppy!

jfw01
Posts: 19
Joined: Thu Aug 12, 2021 3:16 am
Location: New Zealand
Has thanked: 3 times
Been thanked: 2 times

Re: How to contribute?

Post by jfw01 »

Thanks. Is there an equivalent plan for sourceforge, from which peebee distributes?

dimkr
Posts: 2122
Joined: Wed Dec 30, 2020 6:14 pm
Has thanked: 42 times
Been thanked: 985 times

Re: How to contribute?

Post by dimkr »

Phoenix wrote: Sat Feb 26, 2022 4:39 am

It can be rejected though for a variety of reasons.

It won't get rejected if you contribute a minimal and safe fix for an issue from https://github.com/puppylinux-woof-CE/woof-CE/issues. https://github.com/puppylinux-woof-CE/w ... ssues/2837 looks like a good exercise.

User avatar
peebee
Posts: 1519
Joined: Mon Jul 13, 2020 10:54 am
Location: Worcestershire, UK
Has thanked: 150 times
Been thanked: 618 times
Contact:

Re: How to contribute?

Post by peebee »

jfw01 wrote: Sat Feb 26, 2022 5:20 am

Thanks. Is there an equivalent plan for sourceforge, from which peebee distributes?

FocalPup32 (UPupFF+D) is built from a version of GitHub Woof-CE (not necessarily the very latest - see /etc/DISTRO_SPECS) so changes that get into Woof-CE will (eventually) get into FocalPup32. (sooner if I'm made aware they're needed)

SourceForge is purely used as a storage area (with automatic mirroring) for the built items.

56c6d06acc810a9ca654a50737f783f7 UPupFF+D-20.12+11.iso
is
BUILD_FROM_WOOF='testing;3b6c7801c;2021-11-29 19:50:51 +0200'

Builder of LxPups, SPups, UPup32s, VoidPups; LXDE, LXQt, Xfce addons; Chromium, Firefox etc. sfs; & Kernels

Post Reply

Return to “Beginners Help”