Processed: Re: Bug#1029962: check-missing-firmware fails to find firmware file or package on partitioned removable media

2023-04-01 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 patch
Bug #1029962 [hw-detect] check-missing-firmware fails to find firmware file or 
package on partitioned removable media
Added tag(s) patch.

-- 
1029962: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1029962
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#1029962: check-missing-firmware fails to find firmware file or package on partitioned removable media

2023-04-01 Thread Pascal Hambourg

Control: tags -1 patch

On 29/01/2023 at 17:27, I wrote:

Observed behaviour:
- When looking for a loose firmware file, check-missing-firmware calls 
"mountmedia" which returns after mounting the first device which can be 
mounted.


- When looking for a firmware package, check-missing-firmware calls 
"mountmedia driver" which returns after mounting the first device which 
can be mounted and contains {,/firmware}/*.{deb,udeb,ude} files.


mountmedia tries to mount whole drives first, then partitions, in 
alphanumerical order.


In either case, the lookup fails if the mounted device is not the one 
which contains the requested firmware, next devices are not tried.



IMO the correct behaviour is:

for each drive or partition
 if device not mounted
     try to mount device
     if mount succeeds
     look for missing loose firmware files
     look for missing firmware in deb package files

But I do not see how this can be achieved by still using mountmedia...


Please find attached a patch for mountmedia 0.27 and two patches for 
hw-detect 1.155 implementing a possible solution.


The first one adds subcommands into mountmedia to list and mount any media.
The second one uses the subcommands in check-missing-firmware to 
implement the above desired behaviour.
The third one is an optimization to reduce the search time: it updates 
the missing file list after installing a loose file or package and stops 
scanning remaining media and packages if the missing file list is empty.


I chose to add subcommands to mountmedia in order to reuse existing code 
and keep media management in one place (mountmedia) instead of 
duplicating some code in hw-detect.


Any feedback (comments and tests) appreciated.From 2d6463e03e4d388b6b3893b2761fea8aa1921098 Mon Sep 17 00:00:00 2001
From: Pascal Hambourg 
Date: Sat, 1 Apr 2023 00:07:47 +0200
Subject: [PATCH 1/2] check-missing-firmware: improve firmware file lookup

The current algorithm mounts only one device or partition. If it
mounts the wrong one, firmware files are not found.
This patch uses new subcommands in mountmedia in order to search
firmware files or packages on all available disks and partitions.
---
 check-missing-firmware.sh | 27 +++
 1 file changed, 15 insertions(+), 12 deletions(-)

diff --git a/check-missing-firmware.sh b/check-missing-firmware.sh
index 0c71c243..041e7e17 100755
--- a/check-missing-firmware.sh
+++ b/check-missing-firmware.sh
@@ -456,19 +456,22 @@ while check_missing && ask_load_firmware; do
 	# Whether we should keep both mountmedia calls, and whether mountmedia
 	# is doing a good job is discussed in #1029543:
 	if [ "$loop" -gt 1 ]; then
-		# second, look for loose firmware files on the media device.
-		if mountmedia; then
-			for file in $files; do
-try_copy "$file"
-			done
-			umount /media || true
-		fi
-
-		# last, look for firmware debs on the media device
-		if mountmedia driver; then
-			check_for_firmware /media /media/firmware
-			umount /media || true
+		devices="$(mountmedia list)"
+		if mountmedia mounted; then
+			# use currently mounted device first
+			devices="mounted $devices"
 		fi
+		for dev in $devices; do
+			if [ $dev = mounted ] || mountmedia mount $dev; then
+# second, look for loose firmware files on the media device.
+for file in $files; do
+	try_copy "$file"
+done
+# last, look for firmware debs on the media device
+check_for_firmware /media /media/firmware
+umount /media || true
+			fi
+		done
 	fi
 
 	# remove and reload modules so they see the new firmware
-- 
2.30.2

From 7c931fbb82b27e9d288a75e66198c24e06e33c08 Mon Sep 17 00:00:00 2001
From: Pascal Hambourg 
Date: Sat, 1 Apr 2023 14:07:10 +0200
Subject: [PATCH 2/2] check-missing-firmware: stop scanning if all missing
 files are present

Update the list of missing firmware files after installing loose files
or packages, and stop scanning media and packages if the list is empty.
---
 check-missing-firmware.sh | 33 +++--
 1 file changed, 31 insertions(+), 2 deletions(-)

diff --git a/check-missing-firmware.sh b/check-missing-firmware.sh
index 041e7e17..a5be8d3b 100755
--- a/check-missing-firmware.sh
+++ b/check-missing-firmware.sh
@@ -385,6 +385,19 @@ install_firmware_pkg () {
 	fi
 }
 
+# update missing firmware files list after installing package or loose files
+update_missing_firmware_files () {
+	local new_files file
+
+	new_files=
+	for file in $files; do
+		if [ ! -f /lib/firmware/$file ]; then
+			new_files="${new_files:+$new_files }$file"
+		fi
+	files="$new_files"
+	done
+}
+
 # Try to load debs that contain the missing firmware.
 # This does not use anna because debs can have arbitrary
 # dependencies, which anna might try to install.
@@ -403,6 +416,11 @@ check_for_firmware() {
 if check_deb_arch "$dir/$fw_pkg_file"; then
 	log "installing firmware package $dir/$fw_pkg_file ($component)"
 	install_firmware_pkg "$dir/$fw_pkg_file" "

Bug#1033524: Simplify the instructions for making bootable media

2023-04-01 Thread Holger Wansing
Hi,

Steve McIntyre  wrote (Sun, 26 Mar 2023 22:41:10 +0100):
> On Sun, Mar 26, 2023 at 11:06:56PM +0200, Holger Wansing wrote:
> >
> >
> >Am 26. März 2023 19:48:09 MESZ schrieb Steve McIntyre :
> >>If anybody *does* want to keep the rest of the text, please put it in
> >>an appendix called "extra USB options that nobody needs" or similar.
> >
> >We could add such info to the wiki, and point there from this guide, if it's 
> >wanted to keep it (somewhere).
> 
> Yes, that sounds like a good idea. :-)

I have added such wiki page under
https://wiki.debian.org/DebianInstaller/CreateUSBMedia
and overworked my patch a bit, to include a link to this page (amongst 
some more minor things).

I will apply it shortly, if noone objects.


Holger


-- 
Holger Wansing 
PGP-Fingerprint: 496A C6E8 1442 4B34 8508  3529 59F1 87CA 156E B076
diff --git a/build/entities/installation-images.ent b/build/entities/installation-images.ent
index 02c102845..b23590d4f 100644
--- a/build/entities/installation-images.ent
+++ b/build/entities/installation-images.ent
@@ -13,6 +13,7 @@ url="&url-debian-installer;images/hd-media/initrd.gz">hd-media/initrd.gz
   hd-media/vmlinuz'>
 
+
   mini.iso'>
 
diff --git a/build/templates/docstruct.ent b/build/templates/docstruct.ent
index 8ef8fb2af..1a434e588 100644
--- a/build/templates/docstruct.ent
+++ b/build/templates/docstruct.ent
@@ -55,8 +55,6 @@
 
 
   
-   
-   
 
   
 
diff --git a/en/boot-installer/graphical.xml b/en/boot-installer/graphical.xml
index 2d0987c42..d71cd6185 100644
--- a/en/boot-installer/graphical.xml
+++ b/en/boot-installer/graphical.xml
@@ -33,16 +33,7 @@ still be used from the boot prompt which is shown after selecting the
 
 
 
-There is also a graphical installer image that can be netbooted. And there
-is a special mini ISO image
-
-
-The mini ISO image can be downloaded from a &debian; mirror as described
-in .
-Look for netboot/gtk/mini.iso.
-
-
-, which is mainly useful for testing.
+There is also a graphical installer image that can be netbooted.
 
 
 
diff --git a/en/boot-installer/x86.xml b/en/boot-installer/x86.xml
index 9761ebbc0..fbc2b0275 100644
--- a/en/boot-installer/x86.xml
+++ b/en/boot-installer/x86.xml
@@ -51,46 +51,6 @@ After the program has been started, a few preliminary questions will be
 asked and the system will be prepared to reboot into the &debian-gnu;
 installer.
 
-
-  
-
-  
-  Booting from DOS using loadlin
-
-
-Boot into DOS (not Windows).  To do this, you can for instance boot from a
-recovery or diagnostic disk.
-
-
-
-If you can access the installation CD, change the current drive to the CD-ROM
-drive, e.g.
-
-
-d:
-
-
-else make sure you have first prepared your hard disk as explained in
-, and change the current drive to it if needed.
-
-
-
-Enter the subdirectory for the flavor you chose, e.g.,
-
-
-cd \&x86-install-dir;
-
-
-If you prefer using the graphical installer, enter the gtk
-sub-directory.
-
-
-cd gtk
-
-
-Next, execute install.bat.
-The kernel will load and launch the installer system.
-
 
   
 
diff --git a/en/install-methods/boot-drive-files.xml b/en/install-methods/boot-drive-files.xml
index 59741e5a6..8d5242a26 100644
--- a/en/install-methods/boot-drive-files.xml
+++ b/en/install-methods/boot-drive-files.xml
@@ -96,35 +96,6 @@ and install from the installation image, without needing the network.
 Finally, to configure the bootloader proceed to
 .
 
-
-  
-
-
-  
-  Hard disk installer booting from DOS using loadlin
-
-
-This section explains how to prepare your hard drive for booting the installer
-from DOS using loadlin.
-
-
-
-Copy the following directories from a &debian; installation image to c:\.
-
-
-
-
-/&x86-install-dir; (kernel binary and ramdisk image)
-
-
-
-
-/tools (loadlin tool)
-
-
-
-
-
 
   
 
diff --git a/en/install-methods/boot-usb-files.xml b/en/install-methods/boot-usb-files.xml
index 9815ac2eb..a0087d5f8 100644
--- a/en/install-methods/boot-usb-files.xml
+++ b/en/install-methods/boot-usb-files.xml
@@ -42,13 +42,6 @@ on your USB stick. See
 
 
 
-Alternatively, 
-for very small USB sticks, only a few megabytes in size, you can download
-the &netboot-mini-iso; image from the netboot
-directory (at the location mentioned in ).
-
-
-
 The installation image you choose should be written directly to the USB stick,
 overwriting its current contents. For example, when using an existing
 GNU/Linux system, the image file can be written to a USB stick
@@ -59,6 +52,12 @@ as follows, after having made sure that the stick is unmounted:
 # sync
 
 
+Simply writing the installation image to USB like this should work fine
+for most users. For special needs there is this
+https://wiki.debian.org/DebianInstaller/CreateUSBMedia";>wiki page.
+
+
+
 Information about how to do this on other operating systems can be found in
 the Debian CD FAQ.
 
@@ -68,145 +67,8 @@ The image must be written to the whole-disk device and not a
 partition, e.g. /dev/sdb and not /dev/sdb1.
 Do not use tools like unetbootin which alter

Re: Bug#1026845: bullseye-pu: package systemd/247.3-7+deb11u2

2023-04-01 Thread Adam D. Barratt
Control: tags -1 + confirmed d-i

On Thu, 2022-12-22 at 12:13 +, Luca Boccassi wrote:
> We'd like to upload several bug fixes, including security fixes, for
> systemd to bullseye.
> The fixes come from the upstream stable branches which are covered by
> CI and confirmed by reporters.
> 

Please go ahead; sorry for the delay.

Regards,

Adam