Create Debian 9 (Stretch) minimal ISO similar to DebianDog

A home for all kinds of Puppy related projects
Message
Author
User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#981 Post by fredx181 »

rcrsn51 wrote:Here is an automated method for converting the Palemoon browser into a squashfs module.

Unpack the attachment below. It is NOT a fake .gz file!

It contains a script and a howto file. Read the file first.

[Update] Here are the matching scripts for OpenOffice and LibreOffice.
Nice ! added these also to NoRepo section:
https://fredx181.github.io/StretchDog/NoRepo/

@rijsmier
Now my serious question: Can I use Debian 9 (Stretch) as my main Linux program? Are you going to keep developing it for the foreseeable future? I really like openbox and the way you set it up. I have looked at Barry Kauler's new directions, but he seems to get bored and then he goes off in another direction. Also he is not using Debian, which I prefer.
One can never know, but I don't have plans to stop doing what I do now in the the near future.

Fred

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#982 Post by rcrsn51 »

I have some apps packaged as squashfs modules that I only use occasionally, and I wanted a fast way to load them on-demand.

So I collected them into a common "squash repo" folder and made the following applet. It is just a front-end for the loadmodule command.

The applet has a system tray launcher. It runs from /root/Startup and will appear on the next reboot.

Update: V1.4 changes the function of the .group object. Previously, it was a text file that contained a list of module names. Now it is a subfolder of the repo that contains the actual modules in the group.

For example, a subfolder named Useful.group could contain a set of modules that you want to load together with one click.

Note: Some modules want to run 'update-mime-database /usr/share/mime' whenever they are loaded. This causes a long pause and disk thrashing.

To stop it, comment out line 124 of /usr/local/bin/loadmodule.
If needed, you can run the command manually with the Update Mime checkbox.

Remove the fake .gz extension.

---------------------
Attachments
my-squash-loader_1.4_i386.deb.gz
Updated 2019-01-15
New .group function
(6.68 KiB) Downloaded 139 times
my-squash-loader_1.4_amd64.deb.gz
Updated 2019-01-15
New .group function
(6.65 KiB) Downloaded 155 times
snappie.png
(16.5 KiB) Downloaded 1160 times
Last edited by rcrsn51 on Tue 15 Jan 2019, 12:08, edited 26 times in total.

rijsmier
Posts: 8
Joined: Thu 12 Oct 2017, 09:01
Location: Harties, South Africa

#983 Post by rijsmier »

@fred

Thank you - I'm converting!

Reinier

step
Posts: 1349
Joined: Fri 04 May 2012, 11:20

#984 Post by step »

I've been trying to run mklive_stretch on Fatdog64 but it fails. Specifically, when the script prepares the chroot environment, it doesn't create mount points, so mount --bind fails. I ended up adding mkdir -p chroot/{proc,dev/pts,sys,tmp} to the script. However, that isn't enough. The call to chroot chroot /bin/bash -c chroot_in fails with "chroot: /bin/bash: command not found". Indeed chroot/bin is empty bar for a broken symlink to busybox. I can't find where mklive_stretch populates the chroot bin directory prior to chrooting. So I suppose bin is populated from some of the downloaded packages or .tar.gz files. But how/where/when? I gave up trying to make it work on my own, and came here to ask for advice.

P.S. I downloaded debootstrap from http://ftp.debian.org/debian/pool/main/ ... 93_all.deb.
[url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Fatdog64-810[/url]|[url=http://goo.gl/hqZtiB]+Packages[/url]|[url=http://goo.gl/6dbEzT]Kodi[/url]|[url=http://goo.gl/JQC4Vz]gtkmenuplus[/url]

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#985 Post by rcrsn51 »

Hi Fred:

The script /usr/local/bin/loadmodule has a bug.

Line 139 needs a full path. The 32bit version would be:

Code: Select all

/usr/lib/i386-linux-gnu/glib-2.0/glib-compile-schemas /usr/share/glib-2.0/schemas
Bill

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

#986 Post by fredx181 »

Hi step,

Tried on Fatdog 710 and the whole point is that the debootstrap process doesn't finish properly, by extracting and configuring the deb packages, that explains why /bin/bash not found in chroot (and that the directories proc sys dev are not created automatically in the chroot).

To make it work:
Besides installing debootstrap, install in Fatdog with gslapt: perl and dpkg
Optional: To create ISO, install xorriso from gslapt and isolinux package (isolinux not available from gslapt)
Debian package: http://ftp.de.debian.org/debian/pool/ma ... u1_all.deb
(untested on Fatdog)
Without xorriso and isolinux, ISO creation will fail, but the required files for a frugal install will be created. (in stretch/isodata/live)

@rcrsn51
The script /usr/local/bin/loadmodule has a bug.

Line 139 needs a full path. The 32bit version would be:

Code:
/usr/lib/i386-linux-gnu/glib-2.0/glib-compile-schemas /usr/share/glib-2.0/schemas
Thanks, fixed now in newer version (1.0.4) of package "sfsload", install with synaptic or apt-get.
(separate package for i386 and amd64 now)

Fred

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#987 Post by rcrsn51 »

Hi Fred:

I have been looking at evince in your repo. The 32bit version needs libpoppler-glib8. It doesn't show as a dependency, but won't work without it.

I have patched it, bumped up the version number and posted the new package...

[Edit] Now in Fred's repo.

Bill
Last edited by rcrsn51 on Thu 08 Feb 2018, 16:54, edited 1 time in total.

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

#988 Post by fredx181 »

rcrsn51 wrote:Hi Fred:

I have been looking at evince in your repo. The 32bit version needs libpoppler-glib8. It doesn't show as a dependency, but won't work without it.

I have patched it, bumped up the version number and posted the new package here.

Bill
Ah, thanks again, added to 32bit repo now.

Fred

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#989 Post by rcrsn51 »

And here is the 64bit version.

[Edit] Now in Fred's repo.

It also needs a postinst script with symlinks to newer libs.

What are you using for a PDF viewer?
Last edited by rcrsn51 on Thu 08 Feb 2018, 16:55, edited 1 time in total.

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

#990 Post by fredx181 »

rcrsn51 wrote:And here is the 64bit version.

It also needs a postinst script with symlinks to newer libs.

What are you using for a PDF viewer?
OK, nice, will add to 64bit repo later today.
I use epdfview, but I'm really not viewing pdf's much, some types won't open in epdfview, then I try to open with firefox, probably evince is better (?)

Fred

step
Posts: 1349
Joined: Fri 04 May 2012, 11:20

#991 Post by step »

Thank you, Fred, it's working now. I didn't need to install perl because it's included in the devx, which I keep loaded. Also, dpkg is linked to busybox by default. However, I followed your advice and installed the full dpkg from the repo. I added a few lines for Fatdog after the opening comments:

Code: Select all

if [ -e /etc/fatdog-version ]; then
slapt-get -i dpkg xorriso &&
  installpkg debootstrap-1.0.93-all-DEB.txz isolinux-6.03+dfsg-14.1+deb9u1-all-DEB.txz ||
  exit 1
fi
export TERM=xterm # benefits all Puppies

The two *-DEB.txz files can be obtained by downloading the .deb packages that you and I linked above, and converting them with the Fatdog64 right-click menu entry.

Setting TERM avoids a fatal error in deebootstrap when the current TERM value is not in the database of known terminal types.

edit: I assembled quite a few Dogs quickly and easily. Thank you for this Factory!
[url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Fatdog64-810[/url]|[url=http://goo.gl/hqZtiB]+Packages[/url]|[url=http://goo.gl/6dbEzT]Kodi[/url]|[url=http://goo.gl/JQC4Vz]gtkmenuplus[/url]

Lassar
Posts: 235
Joined: Tue 08 Jul 2014, 20:01

#992 Post by Lassar »

This debian stretch looks like it might be useful to
create a very minimal os.

I have played around with dcore, and it seems that
xorg is very bulkly and installs a lot of dependencies.

What is the best way to install a minimal xserver?

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

#993 Post by dancytron »

Lassar wrote:This debian stretch looks like it might be useful to
create a very minimal os.

I have played around with dcore, and it seems that
xorg is very bulkly and installs a lot of dependencies.

What is the best way to install a minimal xserver?
Probably start out with one of the ./mklive-stretch -gui and choose either the openbox (1st choice) or jwm (3nd choice). Those are both pretty minimal, but you can look at the packages and probably delete a few. When you run it, it will generate a build-setup.conf file you can modify and run it again.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#994 Post by rcrsn51 »

My-squash-loader v1.2 posted above.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#995 Post by rcrsn51 »

Here is an update to PeasyScan. See the discussion here about using compression with PDF scans.
Attachments
peasyscan_2.13_i386.deb.gz
(49.03 KiB) Downloaded 155 times
peasyscan_2.13_amd64.deb.gz
(50.03 KiB) Downloaded 149 times

Lassar
Posts: 235
Joined: Tue 08 Jul 2014, 20:01

Failed to make iso

#996 Post by Lassar »

I get this error.

"./mklive-stretch: line 1115: xorriso: command not found
FAILED"

It said that the iso should have been made.

I checked the "'/initrd/mnt/dev_save/Debian/stretch/chroot/usr/bin" and xorriso is in this
directory.

Why could it not find xorriso?

It looks like every thing is there. Could I use iso master to create the iso?

It looks to me that: "apt-get install " would make a linux system way too bulky.

I changed "apt-get install" to "apt-get install --no-install-recommends" in the script.

This shouldn't make a difference should it?

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

#997 Post by dancytron »

It is already no recommends. If you look around line 673 you'll see.
# Setup install without install recommends
echo "APT::Install-Recommends "false"; APT::Install-Suggests "false";" > /etc/apt/apt.conf
sleep 1
Just guessing, but I think it closes the chroot and creates the ISO with the underlying operating system. So it isn't the chroot that is missing xorriso, but whatever you used to run the script.

I haven't created an ISO with ISO master, but I use it for frugal installs. I don't see why it wouldn't work, but I'd try installing xorriso and then run the script first.

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

#998 Post by fredx181 »

Hi Lassar,

Indeed as Dan says, xorriso needs to be installed on the host system, on which distro are you running mklive-stretch ?
Also "isolinux" needs to be installed on host system for creating ISO.
See also above for how step did it on Fatdog, I guess it can be done on any Puppy, install xorriso from PPM and/or isolinux from deb:
http://ftp.de.debian.org/debian/pool/ma ... u1_all.deb

Fred

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

#999 Post by fredx181 »

rcrsn51 wrote:My-squash-loader v1.2 posted above.
...
Here is an update to PeasyScan.
Thanks again, added to repo.
Btw, I did some more tests loading squashfs modules booting with systemd and without, systemd gave me problems with some modules, e.g. sometimes crashing X, crashing Thunar (when unloading) or the module failed to unload, no such problems when booting with sysvinit (default for Stretch-live and Stretchdog).
Did you experience such problems ? (I assume you tested more frequent lately?)

Fred

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#1000 Post by rcrsn51 »

All of my testing is WITHOUT systemd and I have seen no problems.

Is there a difference if you run loadmodule from the command line as opposed to inside the script?

Do these modules work if you auto-load them at bootup?

Post Reply