DebianDog Sid (without systemd) + build system (mklive-sid)

a very small Live CD shaped to look and act like Puppy Linux.

Moderator: fredx181

dcung
Posts: 356
Joined: Fri Sep 25, 2020 4:31 am
Has thanked: 35 times
Been thanked: 49 times

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by dcung »

I thought to refresh my sid builds and report.

I downloaded the latest mklive-sid.2023-10-07 from first post (and using latest online conf files - downloaded locally).
Started with openbox DE.
I haven't tested other DE builds. Just checking if anyone else got the same error or just my config.

Code: Select all

./mklive-sid.2023-10-07 -cli openbox_lx.conf 2>&1 | tee openbox_lx.log

Code: Select all

[0;36mInstall keyboard-configuration and more required packages[0m
Reading package lists...
Building dependency tree...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libelogind-compat : Conflicts: libsystemd0
E: Unable to correct problems, you have held broken packages.
environment: line 70: wget: command not found
E: gnupg, gnupg2 and gnupg1 do not seem to be installed, but one of them is required for this operation
Hit:2 http://dl.google.com/linux/chrome/deb stable InRelease
Get:1 https://github.com/doglinux/sidog/raw/master/amd64 ./ InRelease [2301 B]
Hit:3 http://deb.debian.org/debian sid InRelease
Hit:4 http://snapshot.debian.org/archive/debian/20230926 sid InRelease
Fetched 2301 B in 1s (2585 B/s)
Reading package lists...
[0;36mChecking packages . . .[0m
Reading package lists...
Building dependency tree...
dash is already the newest version (0.5.12-6).
mawk is already the newest version (1.3.4.20230808-1).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 polkitd : Depends: default-logind or
                    logind
E: Unable to correct problems, you have held broken packages.
[0;31mSorry, there are one or more errors, see above.[0m
[0;31mCould be a typo in a package name.[0m
[0;36mExiting . . .[0m
[0;36mUnmounting mount binds in chroot[0m
User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by fredx181 »

@dcung
Yes, I can confirm, the 'trick' to avoid systemd (replacing by elogind) appears to be fragile.
Few days ago I tested and it was ok, so some recent package change from Debian is probably the cause.
Will search for a fix and get back later.

User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by fredx181 »

Problem of build failure (due to conflict elogind<>systemd) should be fixed now.
(added new elogind packages (and related), that I took from Devuan, to custom repository).
Hopefully now this fix will last (I'd give it a good score if it works for more than half a year ;) )

dcung
Posts: 356
Joined: Fri Sep 25, 2020 4:31 am
Has thanked: 35 times
Been thanked: 49 times

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by dcung »

fredx181 wrote: Wed Oct 11, 2023 10:57 am

Problem of build failure (due to conflict elogind<>systemd) should be fixed now.
...

I refresh my sid builds (with and w/o systemd), and they are okay. :thumbup:
Thanks Fred!

User avatar
bobol
Posts: 38
Joined: Sun Apr 30, 2023 9:56 am
Has thanked: 3 times
Been thanked: 7 times

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by bobol »

Dear @fredx181
would it be possible to make a customizable mklive-sid for example choice of kernel release with also choice not to include the kernel (for example if we want to keep the old one to save time)
Yesterday I created a sid minimal xfce4 I had a bug with X11, I switch to a build full, I then managed to solve the same problem, today I want to rebuild the previous build and in the meantime the kernel bug or something with the wifi. I think they're tweaking...

Same problem with mklive-bookworm

Maybe by -cli !

Is it possible ?

User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by fredx181 »

bobol wrote:

would it be possible to make a customizable mklive-sid for example choice of kernel release with also choice not to include the kernel (for example if we want to keep the old one to save time)

The script is already very complex, so I don't really feel for adding such options.
But I can probably give some help how you could not to include the kernel by editing the script yourself, if that would be useful.
For the kernel I'd like to keep the 'Sid" version but there are always tricks of course to swap it with an earlier kernel version, e.g. from a Bookworm build.

User avatar
bobol
Posts: 38
Joined: Sun Apr 30, 2023 9:56 am
Has thanked: 3 times
Been thanked: 7 times

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by bobol »

Thank's for your reply @fredx181 ,
I'm going to try your advice, I'll come back if I fail...
see you later !

User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by fredx181 »

@bobol
What I would do to skip the kernel install is to comment out line 1250 and 1251, so becomes:

Code: Select all

# [ "$ARCH" = "i386" ] && apt-get -o dir::cache::archives="/tmp/tmpapt" install -d linux-image-686-pae -y
# [ "$ARCH" = "amd64" ] && apt-get -o dir::cache::archives="/tmp/tmpapt" install -d linux-image-amd64 -y

Then just ignore the error messages that will appear later (and the initrd1.xz created cannot be used) and the script will finish creating 01-filesystem.squashfs (I tested and works).

Btw, about the X problem with minimal xfce4 you wrote about, it could help if you replace the BASE_INSTALL section with the (much more) packages from a full build config.
(or instead, perhaps add more xserver-xorg-video-.... packages)

EDIT: @ALL the addition of the snapshot.debian repo can make the build taking much longer (specially at the point of updating the package lists, as it has some limit on download speed).
Once running the system from the new build, you may want to disable snapshot.debian repo by removing it from /etc/apt/sources.list and do apt update , then it will probably run much faster.

As I said the snapshot.debian is a savior for when building with mklive-sid for in case suddenly some package(s) has been removed from the standard Sid repo (so that the build doesn't fail).
Then in time, perhaps there may be some issues because of that, but that's up to the user to try solving on a running system though (as sid is the 'unstable' branch).

User avatar
bobol
Posts: 38
Joined: Sun Apr 30, 2023 9:56 am
Has thanked: 3 times
Been thanked: 7 times

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by bobol »

Thanks a lot @fredx181
So I'm going to be able to improve my goal, which is to have a pleasant desktop, to get off to a good start... right now I'm with bookworm amd64 systemd xfce, I'll use it to sid with your method
Many thanks, I'm just starting out and I hope to be able to start programming in 2024...

in fact the problem was for plank, who didn't want to because he would only accept the X11 the environment and my was tty

Code: Select all

echo $XDG_SESSION_TYPE

so I had to add
export XDG_SESSION_TYPE=X11
to my .xinitrc

Image

It's a pleasure to read you again ! :thumbup:

User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: build system (mklive-sid)

Post by fredx181 »

There was a problem installing elogind, libelogind0 (tested yesterday) when running the mlkive-sid build system without systemd (elogind is the replacement for systemd, it's similar to how Devuan works to avoid systemd).
Fixed now, by making these packages from custom sid repo override the standard (debian) elogind related packages and building should work OK again now.

dcung
Posts: 356
Joined: Fri Sep 25, 2020 4:31 am
Has thanked: 35 times
Been thanked: 49 times

Re: build system (mklive-sid)

Post by dcung »

fredx181 wrote: Wed Jan 24, 2024 7:13 pm

There was a problem installing elogind, libelogind0 (tested yesterday) when running the mlkive-sid build system without systemd (elogind is the replacement for systemd, it's similar to how Devuan works to avoid systemd).
Fixed now, by making these packages from custom sid repo override the standard (debian) elogind related packages and building should work OK again now.

I just refreshed my Sid ISO set (7 x64 & 3 i386) today.

All the x64 builds are okay.
All the i386 builds completed (DDOG, DDOG-sd, JWM), ISO created, but missing the kernel squashfs file.

Disclaimer Note - I used my automated edited original script (2023-10-07) that put the usual - no pause, password, etc.
Script Last used sid-2023-10-12 - successful without issue - with local conf files.

I checked the logs and it has this - approx where the kernel file is being created.

Code: Select all

[0;36mCreating kernel .squashfs isodata/live/k-.squashfs . . .[0m
SYNTAX:mksquashfs source1 source2 ...  dest [options] [-e list of exclude
dirs/files]

Filesystem build options:
-comp <comp>		select <comp> compression
			Compressors available:
				gzip (default)
				lzma
				lzo
				lz4
				xz
				zstd
-b <block_size>		set data block to <block_size>.  Default 128 Kbytes
			Optionally a suffix of K or M can be given to specify
			Kbytes or Mbytes respectively
-reproducible		build images that are reproducible (default)
-not-reproducible	build images that are not reproducible
-mkfs-time <time>	set mkfs time to <time> which is an unsigned int
-fstime <time>		synonym for mkfs-time
-all-time <time>	set all inode times to <time> which is an unsigned int
-no-exports		don't make the filesystem exportable via NFS
-no-sparse		don't detect sparse files
-no-xattrs		don't store extended attributes
-xattrs			store extended attributes (default)
-noI			do not compress inode table
-noId			do not compress the uid/gid table (implied by -noI)
-noD			do not compress data blocks
-noF			do not compress fragment blocks
-noX			do not compress extended attributes
-no-fragments		do not use fragments
-always-use-fragments	use fragment blocks for files larger than block size
-no-duplicates		do not perform duplicate checking
-all-root		make all files owned by root
-root-mode <mode>	set root directory permissions to octal <mode>
-force-uid <uid>	set all file uids to <uid>
-force-gid <gid>	set all file gids to <gid>
-nopad			do not pad filesystem to a multiple of 4K
-keep-as-directory	if one source directory is specified, create a root
			directory containing that directory, rather than the
			contents of the directory

Filesystem filter options:
-p <pseudo-definition>	Add pseudo file definition
-pf <pseudo-file>	Add list of pseudo file definitions
			Pseudo definitions should be of the format
				filename d mode uid gid
				filename m mode uid gid
				filename b mode uid gid major minor
				filename c mode uid gid major minor
				filename f mode uid gid command
				filename s mode uid gid symlink
-sort <sort_file>	sort files according to priorities in <sort_file>.  One
			file or dir with priority per line.  Priority -32768 to
			32767, default priority 0
-ef <exclude_file>	list of exclude dirs/files.  One per line
-wildcards		Allow extended shell wildcards (globbing) to be used in
			exclude dirs/files
-regex			Allow POSIX regular expressions to be used in exclude
			dirs/files

Filesystem append options:
-noappend		do not append to existing filesystem
-root-becomes <name>	when appending source files/directories, make the
			original root become a subdirectory in the new root
			called <name>, rather than adding the new source items
			to the original root

Mksquashfs runtime options:
-version		print version, licence and copyright message
-exit-on-error		treat normally ignored errors as fatal
-recover <name>		recover filesystem data using recovery file <name>
-no-recovery		don't generate a recovery file
-quiet			no verbose output
-info			print files written to filesystem
-no-progress		don't display the progress bar
-progress		display progress bar when using the -info option
-processors <number>	Use <number> processors.  By default will use number of
			processors available
-mem <size>		Use <size> physical memory.  Currently set to 1447M
			Optionally a suffix of K, M or G can be given to specify
			Kbytes, Mbytes or Gbytes respectively

Miscellaneous options:
-root-owned		alternative name for -all-root
-offset <offset>	Skip <offset> bytes at the beginning of <dest>.
			Optionally a suffix of K, M or G can be given to specify
			Kbytes, Mbytes or Gbytes respectively.
			Default 0 bytes.
-o <offset>		synonym for -offset
-noInodeCompression	alternative name for -noI
-noIdTableCompression	alternative name for -noId
-noDataCompression	alternative name for -noD
-noFragmentCompression	alternative name for -noF
-noXattrCompression	alternative name for -noX

-Xhelp			print compressor options for selected compressor

Compressors available and compressor specific options:
	gzip (default)
	  -Xcompression-level <compression-level>
		<compression-level> should be 1 .. 9 (default 9)
	  -Xwindow-size <window-size>
		<window-size> should be 8 .. 15 (default 15)
	  -Xstrategy strategy1,strategy2,...,strategyN
		Compress using strategy1,strategy2,...,strategyN in turn
		and choose the best compression.
		Available strategies: default, filtered, huffman_only,
		run_length_encoded and fixed
	lzma (no options)
	lzo
	  -Xalgorithm <algorithm>
		Where <algorithm> is one of:
			lzo1x_1
			lzo1x_1_11
			lzo1x_1_12
			lzo1x_1_15
			lzo1x_999 (default)
	  -Xcompression-level <compression-level>
		<compression-level> should be 1 .. 9 (default 8)
		Only applies to lzo1x_999 algorithm
	lz4
	  -Xhc
		Compress using LZ4 High Compression
	xz
	  -Xbcj filter1,filter2,...,filterN
		Compress using filter1,filter2,...,filterN in turn
		(in addition to no filter), and choose the best compression.
		Available filters: x86, arm, armthumb, powerpc, sparc, ia64
	  -Xdict-size <dict-size>
		Use <dict-size> as the XZ dictionary size.  The dictionary size
		can be specified as a percentage of the block size, or as an
		absolute value.  The dictionary size must be less than or equal
		to the block size and 8192 bytes or larger.  It must also be
		storable in the xz header as either 2^n or as 2^n+2^(n+1).
		Example dict-sizes are 75%, 50%, 37.5%, 25%, or 32K, 16K, 8K
		etc.
	zstd
	  -Xcompression-level <compression-level>
		<compression-level> should be 1 .. 22 (default 15)
[0;36mCreating isodata/live/01-filesystem.squashfs...[0m
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on isodata/live/01-filesystem.squashfs, block size 131072.
User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Updated mklive-sid build script

Post by fredx181 »

*** mklive-sid build script updated ***, download at : first post
====================================================================================================================

dcung wrote:

...
All the i386 builds completed (DDOG, DDOG-sd, JWM), ISO created, but missing the kernel squashfs file.
...

Yes, I tested now a i386 build and can confirm, thanks again.
Strange... the extracted linux-image .deb for 686 (32-bit) contains usr/lib/modules/... (not expected) and the amd64 .deb has lib/modules/... , so that's why the 686 kernel .squashfs creating failed.
(don't know if this is a mistake from the Debian kernel packager, or perhaps new "usr-merge" policy (but why then only for the 686 kernel :?: ) )

Anyway,
Fixed by checking where the kernel modules are located in extracted linux-image .deb (usr/lib/modules/.. or lib/modules/...)
@dcung the change is the block (starting with L_IMG=....) just above : ############ End of installing packages ############

dcung
Posts: 356
Joined: Fri Sep 25, 2020 4:31 am
Has thanked: 35 times
Been thanked: 49 times

Re: Updated mklive-sid build script

Post by dcung »

fredx181 wrote: Wed Jan 31, 2024 4:28 pm

*** mklive-sid build script updated ***, download at : first post
====================================================================================================================

Anyway,
Fixed by checking where the kernel modules are located in extracted linux-image .deb (usr/lib/modules/.. or lib/modules/...)
@dcung the change is the block (starting with L_IMG=....) just above : ############ End of installing packages ############

Reflected the changes.
Redo the Sid refresh, all good now. :thumbup:
Thank you.

User avatar
fredx181
Posts: 2554
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 272 times
Been thanked: 985 times
Contact:

Re: DebianDog Sid (without systemd) + build system (mklive-sid)

Post by fredx181 »

Today I tried to upgrade all packages (apt upgrade) on my Sid build I made earlier this year. It failed badly :thumbdown: (lots of package were "held" and I couldn't make them "upgrade", tried with aptitude too (as it's able to search for solutions) but no luck).
Reason is the big transition for Debian Sid, see more info: viewtopic.php?p=116856#p116856 and about "64bit-time": https://wiki.debian.org/ReleaseGoals/64bit-time

The good news is that making a new build with mklive-sid went well for me :D (includes all those new "lib*t64" packages).

Post Reply

Return to “DebianDogs”