Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sun 24 Sep 2017, 19:12
All times are UTC - 4
 Forum index » Advanced Topics » Puppy Projects
Create Debian 9 (Stretch) minimal ISO similar to DebianDog
Moderators: Flash, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 41 [611 Posts]   Goto page: 1, 2, 3, ..., 39, 40, 41 Next
Author Message
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Tue 01 Aug 2017, 17:20    Post subject:  Create Debian 9 (Stretch) minimal ISO similar to DebianDog
Subject description: Or not so minimal... :)
 

*** Create a Debian 9 (Stretch) minimal live ISO similar to 'DebianDog' ***

Updated on 2017-09-17
Thanks All for the contributions, suggestions, testing and any other feedback, specially:
dancytron, belham2, rcrsn51, wiak, jd7654, backi, AndresC2, peebee

See here for updates and fixes

===================
EDIT 2017-08-04 Forum member wiak found that debootstrap can work from Puppy and provided a pet for it:
http://murga-linux.com/puppy/viewtopic.php?t=111222
===================

With aufs support and porteus-boot style included
It's required to have at least 3 GB free space and to run the script on a Linux filesystem, e.g. ext4
Should work running from any Debian based OS, I tested on Stretch Dog 32 and 64 bit.

Similar to This (for Jessie) but this is **way** better, easier, faster! (using debootstrap)

Just download and run This 'mklive-stretch' script (right-click > Save link as)
Before running, make it executable:
Code:
chmod +x mklive-stretch

And run from terminal:
Code:
./mklive-stretch

Update 2017-08-18: Without option (such as: -gui will show the help text, GUI and CLI options available now, and use of external config file.
Update 2017-08-26: Choice of Desktop Environments (GUI only), more info: Here
Updates: Added DDog, Kiosk and DE choice with CLI
And two more

Run from terminal:
Code:
./mklive-stretch -gui



Wait... and.. That's all ! (except for some questions to answer and to set the root password during the build)
Took for me 15 minutes to create ISO, size: 164 MB (xz compressed squashfs) on a 10 year old HP laptop (dual core) and a medium fast internet connection.

See for much more information Here

Packages available from custom repository, see:
https://github.com/DebianDog/MakeLive/blob/gh-pages/README-Packages-Stretch.md#overview-of-packages-in-custom-dog-repositories-for-stretch-from

This may not be considered as just a howto, but as a project that can grow, e.g. extend the script by calling other scripts e.g. for having choice of different window-managers, desktop environments, applications. Better use of git may be the best (but not my strongest point).

So development depends on the interest, feedback and help from anyone. This is anyway some sort of base concept (that can be changed also, of course).

Thanks to everyone who recommended debootstrap, it's a very convenient and fast method.
A full netinstall is less minimal, more basic software included which is an advantage in a way
(using debootstrap you'll have to watch more carefully not to make it 'too minimal')

Fred

Last edited by fredx181 on Tue 19 Sep 2017, 14:46; edited 33 times in total
Back to top
View user's profile Send private message 
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Tue 01 Aug 2017, 17:32    Post subject:  

*** Updates and Fixes ***

2017-08-07:
- Fixed bug that it worked well only from an OS with the same kernel version as the default Stretch kernel version.
(works on Debian Jessie also now)
- Script is more compact, building time will be shorter, ISO size 161 MB
- More applications, right-click actions for PcManFM, Lz4 support for squashfs, etc.. , see more Here

Changes on 2017-08-18:
- GUI and CLI version into one, added different options: -help (no option, will show help) -gui -cli, or e.g. -cli <config_file> (use config file), -conf (create standard config file 'stretchlive.conf')
- The apt cache in /var/cache/apt will be kept (instead of downloading each time script is run)
- Added field 'Desktop' to the gui (see more info when clicking Information button)
- Creates 'build_setup.txt' in stretch folder containing how you configured the build and create 'build_setup.conf' (ready to use as config file)
- Added checkboxes (GUI):
------ Remove some automatically installed packages
(to keep ISO size more down)
(more info when clicking Information button)
------ If running 64 bit host OS, create a 32 bit build
- Multi-user support improved ('Add new user' in Menu)
(user puppy does not exist in the system but can be added, /home/puppy folder exists preconfigured already for openbox type of build)
- Added google-chrome repository (64 bit only)
(google-chrome-stable package can be added to apps list in the GUI)
(in /usr/local/bin there are launchers 'chrome-root.sh' and 'chrome-puppy.sh', thanks to dancytron
- Pin the kernel version (lock)
- Allow the user to make changes in chroot just before creating 01-filesystem.squashfs (script paused)
(use upgrade-kernel to upgrade to newer version)

To create log from output run e.g.:
Code:
./mklive-stretch -cli 2>&1 | tee mklive-stretch.log

(note that progress of mksquashfs looks like it's idle for sometime)
2017-08-21, some small changes, see here
http://murga-linux.com/puppy/viewtopic.php?p=965085#965085

Important bugfixes:
http://murga-linux.com/puppy/viewtopic.php?p=965197#965197
http://murga-linux.com/puppy/viewtopic.php?p=965281#965281

2017-08-26 Added choice for (preconfigured) Desktop environments, see here:
http://murga-linux.com/puppy/viewtopic.php?p=965532#965532
2017-08-28 Bug fixed for LZ4 squashfs support:
http://murga-linux.com/puppy/viewtopic.php?p=965726#965726
2017-09-03 Added to GUI: Full 'Dog' build
http://murga-linux.com/puppy/viewtopic.php?p=966475#966475
2017-09-08 Added to GUI: Kiosk
http://murga-linux.com/puppy/viewtopic.php?p=967103#967103
2017-09-09 Added choice of DE also when used CLI
http://murga-linux.com/puppy/viewtopic.php?p=967201#967201
2017-09-12 Two more choices
http://murga-linux.com/puppy/viewtopic.php?p=967513#967513
2017-09-14 Boot from FAT32 didn't work, fixed
http://murga-linux.com/puppy/viewtopic.php?p=967755#967755
2017-09-17 Bugfix, more safe unmount 'mount binds'
http://murga-linux.com/puppy/viewtopic.php?p=968071#968071
------------------------

Last edited by fredx181 on Tue 19 Sep 2017, 04:58; edited 22 times in total
Back to top
View user's profile Send private message 
dancytron

Joined: 18 Jul 2012
Posts: 884

PostPosted: Tue 01 Aug 2017, 20:35    Post subject:  

I ran it from Stretch 64 and it absolutely seems to work.

I removed midori, lxpanel and synaptic from the list and got an ISO of about 130 meg. The filesystem01.squashfs file was less than 100 meg.

Installed it as porteus boot save on exit. Save to flash worked.

It doesn't really do anything though. . . Laughing Laughing

I take it that it uses the list of repositories from the distribution you are using to run it? That's what it seemed to do. edit: no it doesn't

I caught myself before I did it, but I imagine you don't want to run it from /root since that would fill up your ram memory and crash. Instead run it from the linux partition. Right?

I'll play with it some more later.

edit: I made another one. Then I installed all the deb dog specific scripts. Ran the quick remaster and it worked (used gzip, because you didn't say anything about lz4 working).

The only issue is that I somehow broke (or maybe just couldn't figure out) the network for my ethernet. Is there a file I should delete during the remaster to reset it or ???

Any way, this is a great accomplishment, alhough I'm not sure I'll be able to build anything I'll like better than your standard one.

Last edited by dancytron on Wed 02 Aug 2017, 04:28; edited 1 time in total
Back to top
View user's profile Send private message 
wiak

Joined: 11 Dec 2007
Posts: 324
Location: not Bulgaria

PostPosted: Wed 02 Aug 2017, 03:41    Post subject:  

My understanding of this is that it uses Debian debootstrap script to create a minimal Debian Stretch install in a chroot environment? And the rest of the script then adds to that to include Porteus boot and all the other Dog-related extras to create a Dog out of the debootstrap base?

https://wiki.debian.org/Debootstrap

http://www.thegeekstuff.com/2010/01/debootstrap-minimal-debian-ubuntu-installation/

EDIT: removed some comments since want to keep comments short and on point...

This method of producing Dogs certainly seems to be a positive way to go.

wiak
Back to top
View user's profile Send private message 
belham2

Joined: 15 Aug 2016
Posts: 1029

PostPosted: Wed 02 Aug 2017, 04:44    Post subject: Re: Create Debian 9 (Stretch) minimal ISO similar to DebianDog
Subject description: For testing now
 

fredx181 wrote:


This may not be considered as just a how to, but as a project that can grow, e.g. extend the script by calling other scripts e.g. for having choice of different window-managers, desktop environments, applications.

So development depends on the interest, feedback and help from anyone. This is anyway some sort of base concept (that can be changed also, of course).




Hi Fred!

Interesting and good stuff! Thank you for your hard work. And this what I think is the most exciting part of this:

...but as a project that can grow, e.g. extend the script by calling other scripts e.g. for having choice of different window-managers, desktop environments, application....


Now, I just gotta hope my simple grasp of scripting skills are good enough that I can trial & error different WMs, DEs and Apps to do different builds Mr. Green Wink (is there a central location for all the dog-specific scripts, is it on your DDog webiste???)




P.S. I also wanted to give "Dancytron's" comment a big thumbs up:

"Any way, this is a great accomplishment, alhough I'm not sure I'll be able to build anything I'll like better than your standard one"

+1
Back to top
View user's profile Send private message 
backi

Joined: 27 Feb 2011
Posts: 1262
Location: GERMANY

PostPosted: Wed 02 Aug 2017, 08:41    Post subject:  

Hi belham,Fred and everybody !
You are a man of action Fred.
Smells like an interesting/exciting new Game/Kick.
Although i dont have any clue of how this is working i am going to start the engine and follow your instructions to to see what happens.
I am sure it is worth to keep an eye or maybe two on it .
Regards !
Back to top
View user's profile Send private message 
backi

Joined: 27 Feb 2011
Posts: 1262
Location: GERMANY

PostPosted: Wed 02 Aug 2017, 10:57    Post subject:  

Edit
Back to top
View user's profile Send private message 
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Wed 02 Aug 2017, 13:30    Post subject:  

Thanks guys !

dancytron wrote:
I take it that it uses the list of repositories from the distribution you are using to run it? That's what it seemed to do. edit: no it doesn't

It creates new /etc/apt/sources.list and includes the right (stretch)dog repository depending if it's 32 or 64 bit build.

Quote:
I caught myself before I did it, but I imagine you don't want to run it from /root since that would fill up your ram memory and crash. Instead run it from the linux partition. Right?

Yes, that's right don't run from e.g. /root but on a linux filesystem formatted partition, e.g. sda2

Quote:
edit: I made another one. Then I installed all the deb dog specific scripts. Ran the quick remaster and it worked (used gzip, because you didn't say anything about lz4 working).

The only issue is that I somehow broke (or maybe just couldn't figure out) the network for my ethernet. Is there a file I should delete during the remaster to reset it or ???

Lz4 indeed not supported (yet)
I think your internet connection broke because the remaster script does clean one folder too many (it removes important part of peasywifi), inside quick-remaster script this line should be removed (or commented out:
Code:
 rm -rf tmpa/etc/rc.d

Now that peasywifi is in the dog repositories, I guess I'll have to update all remaster script packages that have similar as this line (not sure yet, maybe easier to consult rcrsn51 about a small change in peasywifi) sigh...

wiak wrote:
My understanding of this is that it uses Debian debootstrap script to create a minimal Debian Stretch install in a chroot environment? And the rest of the script then adds to that to include Porteus boot and all the other Dog-related extras to create a Dog out of the debootstrap base?


Exactly, however not all dog related, just some, the ones specially required for porteus-boot style and some more
Belham, to answer your question where the files are, it's here:
https://github.com/DebianDog/MakeLive
The ones ending with -stretch are used by the script, the tarball: https://github.com/DebianDog/MakeLive/blob/gh-pages/dog-boot-stretch.tar.gz?raw=true has the porteus-boot files and config files e.g. for autologin, sources.list and much more (these are all copied by the script to the chroot).

I will leave the script how it is for a while, just did a little 'visualizing' about how to extend, for example questions like:
"Which browser to include ?": 1) firefox 2) chromium 3) midori ...... *) "No thanks, I hate browsers" Laughing
Same maybe with file manager or window manager or even combinations (may be very complicated to accomplish though)

But perhaps the best thing to do first is to extend it with more handy dog applications, e.g. filemnt, sfs-load, lz4 support etc..
As always, any suggestions are welcome.

EDIT: Question to those who tested this. How long did it take ? (and with xz or gzip compression ?)

@backi, it's really easy, open a terminal on some linux partition, sda* (with at least 2GB free space) and run the script.

Fred

_________________
Dog Linux website

Back to top
View user's profile Send private message 
backi

Joined: 27 Feb 2011
Posts: 1262
Location: GERMANY

PostPosted: Wed 02 Aug 2017, 14:00    Post subject:  

Hi Fred !
Followed your main instructions .
What i did:
Put resulting live Folder to an ext4 partition with grub4dos entry :

title PorteusDog (sda7)
find --set-root /TEST/live/vmlinuz1
kernel /TES/live/vmlinuz1 noauto from=/TEST changes=EXIT:/TESTlive/
initrd /TEST/live/initrd1.xz

Could not boot to Desktop :
This was the Message :
creating live filesystem and inserting modules
mount:mounting aufson/union failed:no such device
can`t setup union(aufs)-read only filesystem?
When you finish debugging press (Ctrl+Alt+Del) to reboot

The same with DebLive_stretch-i386.iso burnt to DVD
Back to top
View user's profile Send private message 
dancytron

Joined: 18 Jul 2012
Posts: 884

PostPosted: Wed 02 Aug 2017, 14:33    Post subject:  

Fred said:

Quote:
But perhaps the best thing to do first is to extend it with more handy dog applications, e.g. filemnt, sfs-load, lz4 support etc..
As always, any suggestions are welcome.


I agree with this. It seems like the basic Debian Dog functions, create an sfs, mount and use an sfs, edit an sfs, and remaster could be included just listing the appropriate apps in the list at the top of the script.

Since you can delete midori and add firefox-esr or whatever, I am not sure browser choosing needs to be automated much more than that.
Back to top
View user's profile Send private message 
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Wed 02 Aug 2017, 14:46    Post subject:  

Hi backi,

Sorry to hear, looking at your grub4dos entry, I assume this is typo:
Code:
kernel /TES/live/vmlinuz1
(should be TEST)

But you couldn't boot burned ISO to cd either, looks like the creating of the 01-filesystem.squashfs is not fully completed, how big is it ? (right-click on it in filemanager > How Big ?)
Don't know, maybe the same problem as you had with apt2sfs a while back (not enough space ? on sda7)
Anyway I think I will implement in the script a check for at least 2.5 GB free space and otherwise exit.

Fred

_________________
Dog Linux website

Back to top
View user's profile Send private message 
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Wed 02 Aug 2017, 15:20    Post subject:  

dancytron wrote:
Fred said:

Quote:
But perhaps the best thing to do first is to extend it with more handy dog applications, e.g. filemnt, sfs-load, lz4 support etc..
As always, any suggestions are welcome.


I agree with this. It seems like the basic Debian Dog functions, create an sfs, mount and use an sfs, edit an sfs, and remaster could be included just listing the appropriate apps in the list at the top of the script.

Since you can delete midori and add firefox-esr or whatever, I am not sure browser choosing needs to be automated much more than that.


Yes, indeed those kind of special dog applications should be included (and implement right-click actions for filemanager associations).
I agree, a browser can be easily replaced, so better think about including choices that are not straight forward to do by a user.

Fred

_________________
Dog Linux website

Back to top
View user's profile Send private message 
saintless


Joined: 11 Jun 2011
Posts: 3881
Location: Bulgaria

PostPosted: Wed 02 Aug 2017, 16:29    Post subject:  

fredx181 wrote:
t...his line should be removed (or commented out:
Code:
 rm -rf tmpa/etc/rc.d

Now that peasywifi is in the dog repositories, I guess I'll have to update all remaster script packages that have similar as this line (not sure yet, maybe easier to consult rcrsn51 about a small change in peasywifi) sigh...

Removing /etc/rc.d, /etc/DISTRO_SPECS, and /initrd in remasterdog and remastercow scripts is sometning I insisted to include to prepare DebianDog for puppy-boot option (using initrd.gz from puppy with debian kernel).
Better remove the lines above from the scripts to make easier puppy developers to keep the same structure for packages like peasywifi (inside /etc/rc.d for puppy and dog based system). Porteus-boot and live boot will not create /initrd or /etc.rc.d (both are puppy specific for important configuration files).

Toni

_________________
Farewell, Nooby, you will be missed...
Back to top
View user's profile Send private message MSN Messenger 
fredx181


Joined: 11 Dec 2013
Posts: 2456
Location: holland

PostPosted: Wed 02 Aug 2017, 17:03    Post subject:  

in the other thread, tired Smile belham2 wrote:
[ignore everything I just wrote] Wink

...let me try something here, about ready to hit myself between the eyes for possibly confusing the partitions.....

Nope, sadly, I didn't confuse them. Well, the build process seems to go great, gives me the big "OK" at the end. But nothing I can do will get either of the two builds I did to boot up.

Will try tomorrow----maybe will swap out stuff from Trinity Stretch and see if the problem is either the vmlinuz and/or possible the initrd1.xz (my betting money would be on the initrd1.xz).


Yes, good to try initrd1.xz from Trinity-Stretch, could be the problem with that
A few questions:
- 01-filesystem.squashfs, what's the size (from right-click > How big ?)?
- From what OS you did run it ?
- Enough free space on the partition you build on ?

Since dancytron and I didn't have the problem, I'm thinking in the direction of missing packages (failed download through https, ISP issue ?), and apt-get possibly refuses to install anything if one or more packages it cannot find.
just guessing though. We'll see later tomorrow.

Fred
Back to top
View user's profile Send private message 
belham2

Joined: 15 Aug 2016
Posts: 1029

PostPosted: Wed 02 Aug 2017, 17:07    Post subject:  

Fred,

This is just wonderful......I wonder if people in the puppy world will realize how this script approach of yours is stepping ahead of them in many ways when it comes to what a simple, beautiful build process can be. My God, woof-CE can learn something here. It overall is so nice. I mean, the build is only ~165MB, it's the latest Debian, it updates so easy beyond anything in puppy world, and I can install anything from Synaptic and all the deb repos (and yours, Toni's, others...)

I just don't have words to tell you how much fun this is and was.

20 mins to build on a very slow amd single-core Sempron from 2005, it still took only 20 mins. On faster machines, it will move below 10 mins! And to think of the customizations that can be done to this build script.....the ideas going off in my head are so numerous it is going to explode Wink Well done, my friend, very, very well done.
Stretch9-Mini-Build-Script-This-is-INCREDIBLE.png
 Description   
 Filesize   106.82 KB
 Viewed   3473 Time(s)

Stretch9-Mini-Build-Script-This-is-INCREDIBLE.png

Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 1 of 41 [611 Posts]   Goto page: 1, 2, 3, ..., 39, 40, 41 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Advanced Topics » Puppy Projects
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0848s ][ Queries: 12 (0.0078s) ][ GZIP on ]