Auto-build a Puppy iso; single script with optional gui

A home for all kinds of Puppy related projects
Message
Author
wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#221 Post by wiak »

My goodness. I left makepup running overnight to build xenialpup64 but it's still running hours later! woof-CE really slow with my current set up - presumably because I'll building to a usb2 flash stick (I normally use my harddrive - looks like I'll have to free up space on there afterall because this is too painfully slow and testing/debugging kernel loading would take forever with this arrangement...).

wiak

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#222 Post by wiak »

Testing makepup 0.1.3 at the moment, with modified kernel2add code, which will hopefully work now. Will publish in a few hours once tested, if all working...

wiak

EDIT: my first test of 0.1.3 seems to be working. I had put a slacko 64bit kernel in my new local-repositories/kernel2add (no longer named kernels2add) and seems to have been correctly picked up during the makepup xenialdog64 build (i.e. the new makepup 0.1.3 correctly ignoring the dropdown huge-kernel list selection in this case where kernel2add folder contains a huge_kernel tarball. More testing required though before I upload this.

EDIT2: All went well and the new xenialpup64 booted successfully with the kernel2add slacko 64bit huge_kernel I put in there. I'm now testing the new makepup 0.1.3 version with two different huge_kernels put into local-repositories/kernel2add/ folder. If my other makepup fix works, then woof-CE will then automatically stop makepup and ask the user to select which of the two huge kernels they want to use before proceeding (that is a woof-CE feature I had disabled in makepup but hopefully works fine re-enabled). We will see...

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

makepup version 0.1.3 uploaded.

#223 Post by wiak »

makepup version 0.1.3 uploaded.

Changes ver 0.1.3:

Modified kernels2add to kernel2add routines so huge_kernel tarball placed in local-repositories/kernel2add/ will be automatically used in preference to any other selected. (Note folder name changed from kernels2add into kernel2add (singular).
If more than one huge kernel tarball in local-repositories/kernel2add then script will automatically pause during 3builddistro-Z process and ask user to choose from these kernels.

wiak

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#224 Post by wiak »

Sorry to the one downloader. I made an error - will re-upload makepup ver 0.1.3 shortly.

User avatar
ally
Posts: 1957
Joined: Sat 19 May 2012, 19:29
Location: lincoln, uk
Contact:

#225 Post by ally »

thanks, I was just running it....

:)

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#226 Post by wiak »

Re-uploaded hopefully fixed makepup ver 0.1.3. kernel2add tested as working on this one.

Changes ver 0.1.3:

Modified kernels2add to kernel2add routines so huge_kernel tarball placed in local-repositories/kernel2add/ will be automatically used in preference to any other selected. (Note folder name changed from kernels2add into kernel2add (singular).
If more than one huge kernel tarball in local-repositories/kernel2add then script will automatically pause during 3builddistro-Z process and ask user to choose from these kernels.

wiak

User avatar
ally
Posts: 1957
Joined: Sat 19 May 2012, 19:29
Location: lincoln, uk
Contact:

#227 Post by ally »

hi wiak

_13 ran with huge kernel in >local repositories?huge kernel

the script worked correctly and picked up the kernel (4.4.35) for the build

unable to test the ISO yet as running an upload to archive.org, will test later today

cheers!

:)

User avatar
ally
Posts: 1957
Joined: Sat 19 May 2012, 19:29
Location: lincoln, uk
Contact:

#228 Post by ally »

well my experiment failed, although the ISO built correctly boot failed with xz compression not supported

appreciate the effort wiak, thanks for sorting the add kernel

:)

User avatar
davids45
Posts: 1326
Joined: Sun 26 Nov 2006, 23:33
Location: Chatswood, NSW

makepup-0.1.3 - first try = success

#229 Post by davids45 »

G'day wiak,

I've done a quick try of makepup-0.1.3, setting the default Pup as StretchPup (7.0.0.2a) but with a Xenial kernel.
I made the singular kernel2add directory and copied the Xenial huge kernel (4.9.56-lxpup-32-pae) to that then ran ./makepup.

After a few prompted inputs during the build, I got a new makepup directory, including in the usual place, a StretchPup iso and then used the /build files for a manual Frugal.

This booted and ran, and once I'd loaded up my regular application sfs and pets, and made a few fixes for printing, it all seems to be working despite the mixed build+kernel.

Next, I'll more slowly try something, with the right added pets to fix certain problems and perhaps use a slacko kernel in a Xenial Pup.

Thanks for your continued clever adaptions.

David S.
Attachments
stretch-xenial-pinboard.jpg
Makepup-0.1.3 Stretch-Xenial pinboard with all application icons working
(130.33 KiB) Downloaded 1095 times
stretch-xenial-widgetdetail.jpg
Puppy Linux detail per pwidgets in this mixed Pup
(46.09 KiB) Downloaded 1076 times

mistfire
Posts: 1411
Joined: Wed 05 Nov 2008, 00:35
Location: PH

#230 Post by mistfire »

Hi is it possible to add default desktop environment selection? So we can build puppy without gui, xfce, lxde, or kde build

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

Re: makepup-0.1.3 - first try = success

#231 Post by wiak »

davids45 wrote: I made the singular kernel2add directory
That's fine, David, though there is no need to manually create that kernel2add directory since makepup creates it automaticallyfor you. If using gui, then you just press the kernel2add button and that directory will open up in your filemanager ready for you to copy the huge_kernel_tarball you want for your build into there.

Thanks for your useful continuing reports.

@mistfire: No, I doubt that kind of complexity could or should be added since it is woof-CE github itself that contains the build 'recipes'. Yes, it would be theoretically possible to modify makepup to tinker with these build configurations but very complex in practice. Better to just learn how to configure a build setup on woof-CE (without DE, WM or whatever you want) and that build could then be easily used/automated/added-to by anyone using makepup as frontend.

EDIT: Note that makepup doesn't automate making a distro "build recipe" for woof-CE github. I'm sure there would be a good market for such an app though ;-)

wiak

User avatar
sc0ttman
Posts: 2812
Joined: Wed 16 Sep 2009, 05:44
Location: UK

#232 Post by sc0ttman »

mistfire,

Building a pup without X would require manual hacks in the init and boot scripts, probably starting with /etc/profile, which gets sourced by /root/.bashrc after login..

"De-coupling" puppy from X is something lots of people have wanted to do, and is one of the reasons I suggest we should always endeavor to write CLI apps, with separate GUIs going into the future - so we don't make the problem worse..

As for choosing WMs that use X, that is just a matter of package selection, plus some post-install fixes, to hack /root/.xinitrc and some other stuff (in /etc/, elsewhere)..

The trouble is Puppy system scripts are not only coupled to X far too often, some of them are even coupled to ROX and jwm...

A bit of work in Woof-CE would need to be done to make selecting WMs at build time something wiak (or anyone else) could implement..

To do it, all references to ROX should be replaced with references to 'defaultfilemanager', ,any basic system scripts/tools/etc would need to be de-coupled (separated) from X and gtkdialog, and split into separate CLI+gui scripts.. and so on...
[b][url=https://bit.ly/2KjtxoD]Pkg[/url], [url=https://bit.ly/2U6dzxV]mdsh[/url], [url=https://bit.ly/2G49OE8]Woofy[/url], [url=http://goo.gl/bzBU1]Akita[/url], [url=http://goo.gl/SO5ug]VLC-GTK[/url], [url=https://tiny.cc/c2hnfz]Search[/url][/b]

User avatar
rufwoof
Posts: 3690
Joined: Mon 24 Feb 2014, 17:47

#233 Post by rufwoof »

I did play around with a cli type pup some time back, using mc for file manager, along with a framebuffer so you could run the likes of mplayer for playing videos, and I had a script that could wget a web page and converted the html to pdf where you could display that web page in the framebuffer (graphical). Initial image resolution wasn't good but I found a alternative that had much better image resolution but I've forgotten the name of the program that did that.

Quick search found this https://youtu.be/WgFfKpGK2Pg video of the type of thing. Using console cli apps wasn't that bad. I found a version of sc for instance that supported .xls spreadsheet format etc. A long way from providing Puppy type scripts functionality however, which as sc0ttman suggested would take considerable effort.

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#234 Post by wiak »

In case you haven't already noticed it buried deep in the Applications->Documents section of the forum, makepup now has a fork in the same program-style family called "makeblog".

Makeblog has nothing to do with woof-CE though, being not for woof-CE scripts but rather a frontend for bashblog (a single bash script for creating local or on-the-web blog sites - all stored in single, easy-to-copy directory). Makeblog also provides some enhancements to bashblog and, hopefully like makepup, is simple to use (just run it and press the Do it! button in the gui). You can find makeblog here:

http://www.murga-linux.com/puppy/viewtopic.php?t=112046
Tip: makeblog is also useful as a note-keeping system whether you published the resulting blog pages online or not. Can also help organise your local documents since you can include links in any blog post to where any document (or photo or video or folder) is stored. It is also easy to embed say a youtube video in a blog post. I'll post about how to do that later. You can of course easily also insert images (including animated gifs) in your blog post notes.
I'm actually using this instead of hierarchical notetaker cherrytree, as well as making online github.io blogs with it. Cherrytree was unable to use jpeg image files (everything went to png) and the single cherrytree notes files became larger than suited me. Also rtf isn't as good as html (via bluegriffon or similar wysiwyg html editor) for embedding videos and so on. In fact html is a very powerful method for making and storing docs and making links to existing ones, all of which I use makeblog/enhanced-bashblog for.

NOTE how well cut and paste directly from forum post into makeblog new post works (depends on CSS of course, but matches forum style wonderfully - try doing that with cherrytree or notecase and compare result... However, using cherrytree program is also useful for capturing web-clippings since it does a good job of simplifying the html on complex pages prior to cutting and pasting to makeblog-created blog via bluegriffon or seamonkey-composer).

I have also created a blog post that contains links to folders (trivial to do with bluegriffon as makeblog html editor) and various important files on my system (including folder with music/videos in it, which I can then click to play in background whilst I'm browsing...) so I can easily access these resources immediately from within my browser and also browse my blog notes.

TIP: Make a personal local blog index page the homepage for your browser - and use that local blog ito manage all your notes and contents.

Makeblog doesn't (yet, or ever?) contain any local search for text in post utility, but for now at least I use geany for searching for text strings in my makeblog-generated blog notes - geany has a truly excellent Search -> Find in Files utility that even allows use of regular expressions, so you can quickly find name of note the text is in and then open it in browser etc. Just point geany FInd in FIles to current local makeblog directory and enter search term and the result will pop up. Or simply use grep (or even sed!) from the makeblog folder:

Code: Select all

grep -rn '<text_string_to_search_for>' *.html
with some extra coding could no doubt get grep search result, as part of a gui, in a clickable window to open up in browser or html code editor (but I haven't written that code).

Tested on both Slacko64 and XenialDog32. But should work on pretty much any Puppy.

wiak
Attachments
blogpage.jpg
resulting makeblog page
(72.13 KiB) Downloaded 846 times
makeblog_cutandpaste.jpg
Cutting and pasting from web into makeblog with bluegriffon as html editor
(55.46 KiB) Downloaded 818 times

frake
Posts: 3
Joined: Sat 03 Feb 2018, 12:48
Location: Austria

#235 Post by frake »

Hello wiak,
I tried to generate Xenialpup and ended up with tahrpup6.0.6. I think because Artpup has been added in the meantime.
After selecting ubuntu and 3:slackware instead 2:Xenial, a Xenialpup was created.
Best regards

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#236 Post by wiak »

Thanks frake,

I haven't looked at makepup for a while but realised Artpup wasn't included and wondered if it was now up on woofce and might cause makepup issue you confirm. I was waiting for Bionic (rather that Art) before making any alterations to makepup. I'll look into the problem sometime now that you've brought it up.

wiak

User avatar
OvrMaHd
Posts: 14
Joined: Fri 10 Nov 2017, 05:07

#237 Post by OvrMaHd »

Hello,
From a search, tumbled into your post, Question, is the script listed on page 1 still valid for creating a personalized Puppy? I am a novice and on a steep learning curve and thank you for the software creation.

Have a good Day

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#238 Post by wiak »

OvrMaHd wrote:Hello,
From a search, tumbled into your post, Question, is the script listed on page 1 still valid for creating a personalized Puppy? I am a novice and on a steep learning curve and thank you for the software creation.

Have a good Day
Without admittedly having yet looked further into the issue frake brings up, I would say the script is likely to still work okay aside from the numbering being now wrong (as frake points out). I'm too busy to check immediately, but will announce once I've done that. I imagine Bionic will be added to woof-CE (if it hasn't been already) so I'd prefer to wait for that change since I have no automatic way of determining what is in woof-CE (the numbers currently have to be hardcoded into the script).

It is what it is. People can always run woof-CE manually, but of course I will update makepup in case still useful as an automation.

Also, of course, it is not necessary to use woof-CE to get a Puppy - that is provided as ready-made isos. So depends what you mean by 'a novice' - an absolute novice, who just wants to try Puppy would IMO be better to download and install a readymade Pup. A novice to woof-CE system might indeed find makepup a useful introduction to the build system (a reason I created the makepup build script in the first place).

wiak

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#239 Post by wiak »

I'm planning to look into the issue brought up by frake tomorrow...

Been a while since I worked on this so may take a bit time to get my head round the changes required to makepup, but might be easy... Automating woof-CE is quite a complex process.

wiak

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#240 Post by wiak »

OK, it will be an easy fix. The woof-CE selection mechanism is alphabetically sorted so Artful comes before Trusty which comes before Xenial. So Ubuntu
Artful will be 1, Trusty 2, and Xenial now a 3 as frake noticed. Bedtime here, so will upload fixed version tomorrow. Wiak

Post Reply