File: load-install-cd

package info (click to toggle)
apt-setup 1%3A0.198
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,272 kB
  • sloc: sh: 1,247; makefile: 25
file content (46 lines) | stat: -rwxr-xr-x 891 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/sh
set -e

. /usr/share/debconf/confmodule

ROOT="$1"
[ "$ROOT" ] || exit 1

[ -e /var/lib/install-cd.id ] || exit 0

logoutput="log-output -t load-install-cd"

check_id() {
	cd_ids=$(LC_ALL=C $logoutput --pass-stdout chroot $ROOT \
		 apt-cdrom ident < /dev/null | grep "^Identifying" | cut -d" " -f2)

	for cd_id in $cd_ids; do
		if [ "$cd_id" = "$(head -n1 /var/lib/install-cd.id)" ]; then
			return 0
		fi
	done
	return 1
}

cd_label=$(tail -n1 /var/lib/install-cd.id)
db_subst apt-setup/cdrom/media-change LABEL "$cd_label"
while ! check_id; do
	db_input critical apt-setup/cdrom/media-change || true
	db_go || exit 10
done

fs=iso9660
if db_get cdrom-detect/cdrom_fs && [ "$RET" ]; then
	fs="$RET"
fi
OS=$(udpkg --print-os)
case "$OS" in
	hurd)
		OPTIONS=ro
		;;
	*)
		OPTIONS=ro,exec
		;;
esac
db_get cdrom-detect/cdrom_device
$logoutput mount -t "$fs" -o $OPTIONS $RET /cdrom