Auto-build a Puppy iso; single script with optional gui
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
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
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...
makepup version 0.1.3 uploaded.
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
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
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
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
makepup-0.1.3 - first try = success
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.
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
Re: makepup-0.1.3 - first try = success
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.davids45 wrote: I made the singular kernel2add directory
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
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...
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]
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.
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.
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
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:
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
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
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.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.
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
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
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
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
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).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
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