Build scripts for small debian live images (similar to woof)

A home for all kinds of Puppy related projects
Message
Author
anikin
Posts: 994
Joined: Thu 10 May 2012, 06:16

#136 Post by anikin »


backi
Posts: 1922
Joined: Sun 27 Feb 2011, 22:00
Location: GERMANY

#137 Post by backi »

Quite interesting ......Thanks for sharing !

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#138 Post by musher0 »

Hello all.

With this script, can you substitute any WM for icewm?

TIA.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Good Question + Follow-up

#139 Post by mikeslr »

Hi musher0,

+ 1 regarding your question.

Comparing the 6th Step in the archive with the 8th Step of the more recent recipe, I would think -- :lol: with my fingers crossed-- that anything following:

apt-get update && \
apt-get install --no-install-recommends --yes --force-yes \

is optional. So, the question becomes is there somewhere you can look before you get started to see what options are available.

mikesLr

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

#140 Post by rufwoof »

Yes musher0 ... providing its in the Debian repositories. You could for instance opt for xfce, gnome, lxde ... etc. Anything you like.

I like a nice lightweight of xorg, jwm, pcmanfm combination as pcmanfm is both a filemanager and desktop manager (desktop icons) whilst jwm provides the panel/tray and windows frames/title bars etc. And you can encode all of the configuration inside a single .jwmrc file (including the startup commands). I prefer that to having it all spread over the place (in include files or invoking other scripts such as startup) as I find searching through a single file for a particular section easier than looking for particular files/folders.

The apt-get update just syncs your local database of available packages to the current list

The apt-get install --no-install-recommends --yes --force-yes just limits what packages are installed to basically just what you want rather than what Debian consider you might also additionally want on top of that. When you ask for something via apt-get install xxx then it also provides all of the dependencies, but without turning off 'recommends' you can end up with a lot more than what you wanted.

There are apt-get commands to pull down a list of every available package, with parameters where you can also get short descriptions for each package. Handy for searching for particular packages.

For a gui you obviously need xorg, after that ... whichever wm you want (or not), which filemanager, which browser ....etc.

There's even a option to boot a remote sfs. So the local installation could be very light that basically just boots to command line and net connection ... that then can load a main sfs from a remote location/server. Handy for commonality of core system, and just keep your particular configuration/data changes locally (in the local save space). Obviously a fast and reliable internet connection is desirable for that, but as download speeds approach/exceed LAN speeds (100 Base-T) that becomes increasingly more viable (I believe/suspect many home LAN's have one device that still runs at 100 ... which slows the entire segment down to 100 even if all other devices within that segment are 1000).

anikin
Posts: 994
Joined: Thu 10 May 2012, 06:16

#141 Post by anikin »

musher0 wrote:... With this script, can you substitute any WM for icewm? ...
Absolutely. If it exists in Debian repositories, you get to chose what to install in your build.
Have a look here: https://wiki.debian.org/WindowManager
and/or do a search for a package name: https://packages.debian.org/package_name
All it takes to install a package in Debian/Ubuntu/Devuan is this command:

Code: Select all

apt-get update && apt-get install icewm

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

#142 Post by mikeslr »

Hi rufwoof,

Thanks for the detailed explanation. Knew your exploring of debian would come in handy someday. :) Glad to see you've recovered from 'The Debian Madness' which seems to effect those who delve too deeply into its mysteries, :lol: and have returned to your more characteristic, helpful self. :lol:

But, as no good turn should go unpunished. :o
rufwoof wrote: There are apt-get commands to pull down a list of every available package, with parameters where you can also get short descriptions for each package. Handy for searching for particular packages.
? Something like "apt-get list?" which is my guess from either a chancy memory, or by figuring it's probably analogous to how Wine-tricks works: the human mind, being lazy, often develops a solution similar to one already employed elsewhere.

Have I read Step 2 here, http://willhaley.com/blog/create-a-cust ... vironment/ correctly in that any Linux Formatted "space" will suffice, /root --sufficient RAM being present-- in a frugal install or /mnt/home --Linux formatted-- being matters of convenience?

And, lastly, can I assume that these "recipes" can be run from "DebianDogs/XenialDogs"; i.e. a "Full Blown" debian/Ubuntu or other OS being unnecessary. [But not from the majority of Puppies which lack the apt command].

And thanks anikin for the additional details.

Note to Fred and Toni -- It's not that I don't appreciate the hard work you've put in. Your creations are really superb OSes which I've recommended to those seeking an OS which "just works" and is easy to maintain and flesh-out. It's just that at some point, when I think I know enough, I'd like to try my hand at putting together an OS which works the way I want and just does what I want, nothing else.

mikesLr

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

#143 Post by rufwoof »

mikeslr wrote:Have I read Step 2 here, http://willhaley.com/blog/create-a-cust ... vironment/ correctly in that any Linux Formatted "space" will suffice, /root --sufficient RAM being present-- in a frugal install or /mnt/home --Linux formatted-- being matters of convenience?

And, lastly, can I assume that these "recipes" can be run from "DebianDogs/XenialDogs"; i.e. a "Full Blown" debian/Ubuntu or other OS being unnecessary. [But not from the majority of Puppies which lack the apt command].
Wont work in NTFS, has to be ext2/3/4 for building. Guess it could be a mounted filesystem (dd if=/dev/zero of=somefile bs=1M count=4000; mkfs.ext2 somefile ... type creation and then mkdir p; mount somefile p ..... which could be contained on a NTFS).

Should be able to run from DebDog Jessie (or Stretch) ... and likely XenialDogs also I suspect, as fundamentally they are a existing Debian (full multi tasking unlike puppy ...etc.), but just cleaned down a lot and with additional puppy like scripts added in (i.e. less a case of the other way around ... not a puppy that's been tuned to use Debian).

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

#144 Post by rufwoof »

First time I've managed to get woofce to build for me (haven't touched it for ages after my last unsuccessful attempts some time back). Now ... the defaults as suggested are real easy. Took around 40 minutes to build Tahr64 6.0.6.

Debian can build pretty quickly, you can even create a script of all packages installed ... so you can build the same installation on one machine after another.

I'm a FreeBSD newbie and so far I've mostly been using its equivalent of apt-get install (pkg install) to install/build, but many use full source code based builds ... where their system is somewhat similar to woof, but pulls down all of the source code and make install clean's each of those 'packages'. As a test I tried just doing Libre ... and that took around 3 hours alone. Apparently full system from source takes something like 10 to 15 hours. The main benefit being that its all config'd to your particular hardware/setup and you can configure things (each program) to what configuration you want. I think ??? that's something like Puppy's T2 (all built from source). Shame that whilst FreeBSD can run Linux programs ... that's not reflected the other way around (similarly from FreeBSD you can see linux ext2/3/4 but linux can't see zfs and can only read ufs I believe).

Of those choices, it looks to me that the Debian choice is the better overall choice. They maintain all security updates and builds etc. you just download the product of that, selecting whatever elements you desire and is quick to install as its just file transfer time. The downside is that you're tied into just using their repositories, go outside of that and its considered a FrankenDebian ... that sooner or later tends to fall apart. Provided you stick with just Debian supplied and preferably just their MAIN repositories (not contrib or non-free), then its really solid as its all their own control/work. Older programs, but they do update them for instance even though the kernel version is fixed, they release updates so to some extent they're old version numbers but can be distant code underneath that might be more like the equivalent of later versions.

I fell for 'Stable' as being 'solid' but that actually means 'unchanging'. For the most solid version run oldstable as that will have been through a couple of years of 'live testing' over millions of test hours. oldstable gets security updates for its lifetime i.e. jessie will be old stable for a couple of years until the recently released 'stable' Stretch falls into being oldstable as the next release after that is released.

A factor of the latest stable being released is that everything is frozen beforehand ... and developers might rush to get their code in before that freeze ... perhaps with too little testing beforehand ... and then time constraints/pressures between freeze and release might again overlook bugs. By the time the version reaches oldstable ... the whole of the Debian version is pretty good (system and programs all work well together).

A while back I created just a command line Debian Jessie, something like 90MB worth of sfs i.e. with all locales and docs stripped out. Boot that and apt-get update; apt-get upgrade; apt-get xorg jwm pcmanfm ... and then run startx (similar to running xwin) ... has you at a usable gui desktop that you can then add whatever you like to (apt-get firefox-esr .... etc.). The link anikin referenced was to a even leaner version of that sort of thing, one that'd you'd have to add apt-get live-boot squashfs-tools ..... etc into in order to have livecd (frugal) type function.

Most of the scripts/functions are already there, more a case as I see it of being documentation of how to build and clean/reduce the size afterwards (or during the build). For instance this really needs to be updated/extended to include the likes of localepurge and the removal of foreign man files could be extended to include zero sizing all man and docs as those are readily available online anyway.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#145 Post by musher0 »

Thanks for zour answers guzs.

Just cloned it and tried it. I didn;t get verz far.

As zou can see it changed mz kezboard to a qwertz kezboard!
)This man Monteil is Swiss, right&=

and there is no aptßget available on this DPupStretchß7.

)Sorrz about the qwertz spelling!= I;m leaving it because it;s so funnz! :lol:

I;ll be back!!! I have to reboot to get mz qc kezboard back!!!

BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#146 Post by musher0 »

Hi gang.

The qwerty keyboard is back. A simple restart from inital console was
enough.

In KISS English:

if this script is going to require more adaptations than Puppy's WOOF-CE,
let's forget it.

If this script comes incomplete and I have to hunt down add'l stuff I don't
know I'm missing, let's forget it. That's really "groping in the dark", right?

Plus if this script is playing havoc with my keyboard setting, what kind of a
script is this anyway?

We should be looking for a distro that has a better building robot that
WOOF-CE, not one that has a worse one.

And WOOF-CE is not so bad. At least I know my way around it now, I can
tweak the result to get what I want. Plus, I can use direct mksquashfs
remasterisation on a Puppy.sfs.

I mean: how long does it take to get familiar with the innerds of a Debian
distro? I only have a limited number of years left, y'know!!! :twisted:

Sorry for being so blunt. BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

dancytron
Posts: 1519
Joined: Wed 18 Jul 2012, 19:20

#147 Post by dancytron »

Musher,

Not sure if this is what you are looking for (I haven't read the whole thread), but this is what Fred did to automate making a Debian Live/Porteus Boot starting from a Debian Net-install.

https://github.com/DebianDog/MakeLive

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#148 Post by musher0 »

Thanks, dancytron.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

anikin
Posts: 994
Joined: Thu 10 May 2012, 06:16

#149 Post by anikin »

mikeslr,

Any Linux distro, including Puppy will get the job done. Of course, Debian/Ubuntu based ones, would be the easiest to manage. Live, or full install - doesn't really matter.
musher0 wrote:...If, if, if ...
"If my grandmother had wheels, she would be a bicycle." - That's how our American friends would have responded to so many ifs.
...
I mean: how long does it take to get familiar with the innerds of a Debian
distro? I only have a limited number of years left, y'know!!! :twisted:

Sorry for being so blunt. BFN.

Not more than a couple weeks, maybe less. Depends on how your priorities are set and how determined you are.

belham2
Posts: 1715
Joined: Mon 15 Aug 2016, 22:47

#150 Post by belham2 »

musher0 wrote:Thanks, dancytron.

Hi Musher,

Last evening, I finally got it to work, ending up with an openbox, ROX desktop. But the number of things & hoops I had to jump through to get it to work, the linked blog (and our dear Anikin) conveniently leaves out. Honestly, it is nowhere near Toni's & Fred's excellent documentation--which I've also done following their tips and both were way easier. Ultimately, though, the telling sign about the blog (and Anikin's links) is this: having to, lol, link back to Debian itself on how to make things actually work. Sh!t, if I didn't know Debian so well by now, I would have given up.

Don't worry, Musher, this method is about as ready for prime time (for murga-land here) as the Rolling Stones are ready to retire. In other words,never. :lol: ---unless our dear, beloved Anikin (and/or someone else) puts some documentation & organization effort into it & gets it down here on Murga.

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#151 Post by fredx181 »

dancytron wrote:Musher,

Not sure if this is what you are looking for (I haven't read the whole thread), but this is what Fred did to automate making a Debian Live/Porteus Boot starting from a Debian Net-install.

https://github.com/DebianDog/MakeLive
Note that this does not work with Debian 9 (Stretch) because of the switch to "overlayfs" instead of "aufs" (aufs not included in kernel by default) in Stretch. So it only works for Jessie.

EDIT: Fixed broken netinstall ISO url links on https://github.com/DebianDog/MakeLive.
And made obvious it's for Jessie only.

Fred

anikin
Posts: 994
Joined: Thu 10 May 2012, 06:16

#152 Post by anikin »

belham2 wrote:... Don't worry, Musher, this method is about as ready for prime time (for murga-land here) as the Rolling Stones are ready to retire. In other words,never. :lol: ---unless our dear, beloved Anikin (and/or someone else) puts some documentation & organization effort into it & gets it down here on Murga.
As a matter of fact it is really easy. So easy, that eating a piece of cake, or a bowl of cherries, in comparison will be like forced prison labor. For this post, I opened 3 terminal windows and issued the following commands:

Code: Select all

mkdir -p stretch/chroot && cd stretch &&
debootstrap --arch=i386 --variant=minbase stretch chroot http://ftp.us.debian.org/debian/

mkdir -p jessie/chroot && cd jessie &&
debootstrap --arch=i386 --variant=minbase jessie chroot http://ftp.us.debian.org/debian/

mkdir -p xxerus/chroot && cd xxerus &&
debootstrap --arch=i386 --variant=minbase xenial chroot http://us.archive.ubuntu.com/ubuntu/
Basically, I had 3 build processes running in parallel - just as an example for this post. You don't do this in real life. The commands are self-explanotary: create a directory, say <stretch>, inside it another one named <chroot>. The final build will obviously occur in the <chroot> directory. Now the command itself: <debootstrap --arch=i386 --variant=minbase stretch chroot http://ftp.us.debian.org/debian/> again self-explanotory --arch=i386 (or amd64) this will be our architecture. Then strech/jessie/xenial - the name of the Debian/Ubuntu release. Then, chroot - the name of the directory where the build will occur. And <http://ftp.us.debian.org/debian/> the repository from which packages for the build will be downloaded (choose your own (country/closest) mirror, like de, ch, fi, ru, etc.,) I have a more or less decent internet speed and in about ~ 10 minutes or so I had 3 minbase builds. It is called minbase - the most minimal you can get with Debian/Ubuntu. The build is extremely spartan - no kernel, no audio, no WM, no networking - all that will be installed in the second, <chroot> phase. Which will be an absolutely trivial job <apt-get update && apt-get install this that and_something_else>.

Attached are the build logs, hopefully, they will help you understand the process.

*remove fake gz*
Attachments
debootstrap_xenial.log.gz
(16.44 KiB) Downloaded 131 times
debootstrap_stretch.log.gz
(12.46 KiB) Downloaded 121 times
debootstrap_jessie.log.gz
(16.85 KiB) Downloaded 123 times

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

#153 Post by rufwoof »

Last edited by rufwoof on Thu 13 Jul 2017, 18:37, edited 1 time in total.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#154 Post by musher0 »

belham2 wrote:
musher0 wrote:Thanks, dancytron.
Hi Musher,

Last evening, I finally got it to work, ending up with an openbox, ROX desktop. But the number of things & hoops I had to jump through to get it to work, the linked blog (and our dear Anikin) conveniently leaves out. Honestly, it is nowhere near Toni's & Fred's excellent documentation--which I've also done following their tips and both were way easier. Ultimately, though, the telling sign about the blog (and Anikin's links) is this: having to, lol, link back to Debian itself on how to make things actually work. Sh!t, if I didn't know Debian so well by now, I would have given up.

Don't worry, Musher, this method is about as ready for prime time (for murga-land here) as the Rolling Stones are ready to retire. In other words,never. :lol: ---unless our dear, beloved Anikin (and/or someone else) puts some documentation & organization effort into it & gets it down here on Murga.
Thanks, belham2. It's nice not to feel alone in the dark! :twisted:

Another detail: I read in the original Monteil ReadMe.txt that his script is
for Sage Debian? That's pretty old, right?

I grumbled a lot about WOOF-CE -- I'm a grouch at heart :lol: --
but I'm going back to it!

Sort of off-topic: everybody please notice that BarryK is back in the fray
with a nice-looking, improved, Xerus Quirky 8.1.94:
http://murga-linux.com/puppy/viewtopic. ... ost#960658

BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

emil
Posts: 633
Joined: Tue 10 Nov 2009, 08:36
Location: Austria
Contact:

#155 Post by emil »

Hi Guys,

don't necromance this old thread. Download links in first posts are broken, and the code bitrots since several years. Debian Live is dead and hijacked - to wrap it up:
move on, let CAT rest in peace.
Cheers and take care ...

Post Reply