This file is indexed.

/usr/share/debian-cd/tools/apt-selection is in debian-cd 3.1.14.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  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
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#!/bin/sh

# This is a little shell script that will launch apt-get in dry-run mode
# to find all the dependencies of a specific package

# There's not set -e here because this script may fail !
# Apt doesn't always work ... 
# set -e

# Get the configuration information if necessary
if [ -z "$CODENAME" ] || [ -z "$ARCH" ] || [ -z "$APTTMP" ]; then
	if [ -e CONF.sh ]; then
		. CONF.sh
	else
		echo "Please set up environment variables before "
		echo "launching this program ..."
		echo "Current values are :"
		echo "CODENAME=$CODENAME"
		echo "ARCH=$ARCH"
		echo "APTTMP=$APTTMP"
	fi
fi

if [ $ARCH = "source" ] ; then
	ADEB="deb-src"
else
	ADEB="deb"
fi

options=" -q -o Dir::State::status=$APTTMP/$CODENAME-$ARCH/status \
		  -o Dir::State=$APTTMP/$CODENAME-$ARCH/apt-state/ \
		  -o Dir::Cache=$APTTMP/$CODENAME-$ARCH/apt-cache/ \
		  -o Dir::Etc=$APTTMP/$CODENAME-$ARCH/apt/ \
		  -o APT::Cache::AllVersions=0 \
		  -o APT::Cache::ShowVersion=1 \
		  -o APT::Architecture=$ARCH \
		  -o Acquire::Languages=none"

sections=main
if [ "${NONFREE:-0}" != "0" ] || [ "${EXTRANONFREE:-0}" != "0" ] || [ "${FORCE_FIRMWARE:-0}" != "0" ]; then
	sections="$sections non-free"
fi
if [ "${CONTRIB:-0}" != "0" ]; then
	sections="$sections contrib"
fi

# Check for the necessary dirs and files ...
if [ ! -d "$APTTMP/$CODENAME-$ARCH/apt-state/lists/partial" ]; then
	mkdir -p "$APTTMP/$CODENAME-$ARCH/apt-state/lists/partial"
fi
if [ ! -d "$APTTMP/$CODENAME-$ARCH/apt-cache/archives/partial" ]; then
	mkdir -p "$APTTMP/$CODENAME-$ARCH/apt-cache/archives/partial"
fi
if [ ! -d "$APTTMP/$CODENAME-$ARCH/apt" ]; then
	mkdir -p "$APTTMP/$CODENAME-$ARCH/apt"
fi
if [ ! -e "$APTTMP/$CODENAME-$ARCH/status" ]; then
    touch "$APTTMP/$CODENAME-$ARCH/status"
fi
if [ ! -e "$APTTMP/$CODENAME-$ARCH/apt/sources.list" ]; then

	# Generating a correct sources.list file
	echo "$ADEB file:$MIRROR $CODENAME $sections" \
	> $APTTMP/$CODENAME-$ARCH/apt/sources.list

	if [ -n "$PROPOSED_UPDATES" ]; then
		echo "$ADEB file:$MIRROR $PROPOSED_UPDATES $sections" \
			>> $APTTMP/$CODENAME-$ARCH/apt/sources.list
	fi

	# Local packages ...
	if [ -n "$LOCAL" ]; then
		echo "$ADEB file:${LOCALDEBS:-$MIRROR} $CODENAME local" \
			>> $APTTMP/$CODENAME-$ARCH/apt/sources.list
	fi

	# Security mirror ...
	if [ -n "$SECURITY" ]; then
		echo "$ADEB file:${SECURITY:-$MIRROR} $CODENAME/updates $sections" \
		>> $APTTMP/$CODENAME-$ARCH/apt/sources.list
	fi

	# Debian-installer
	if [ $ARCH != source ] ; then
		if [ -e "$MIRROR/dists/$DI_CODENAME/main/debian-installer" ]; then
			echo "$ADEB file:$MIRROR $DI_CODENAME main/debian-installer" \
				>> $APTTMP/$CODENAME-$ARCH/apt/sources.list
		fi
		if [ -n "$LOCAL" ] && [ -e "${LOCALDEBS:-$MIRROR}/dists/$DI_CODENAME/local/debian-installer" ]; then
			echo "$ADEB file:${LOCALDEBS:-$MIRROR} $DI_CODENAME local/debian-installer" \
				>> $APTTMP/$CODENAME-$ARCH/apt/sources.list
		fi
	fi
fi

temp=$APTTMP/$CODENAME-$ARCH/temp.apt-selection

# Launch the command
if [ "$1" = "update" ] || [ "$1" = "check" ]; then
	apt-get $options $@
	exit $?
elif [ "$1" = "cache" ]; then
	shift
	apt-cache $options $@
	exit $?
elif [ "$1" = "deselected" ]; then
	shift
	apt-get $options -s $@ > $temp
	num=$?
	#if [ $num -ne 0 ]; then 
		#echo ": Param: apt-selection deselected $@" >&2; 
	#exit $num;  
	#fi
	perl -ne 'print "$1\n" if /^Remv (\S+).*/' $temp | sort
elif [ "$1" = "selected" ]; then
	shift
	apt-get $options -s $@ > $temp 
	num=$?
	#if [ $num -ne 0 ]; then 
	#    echo "ERROR: Param: apt-selection selected $@" >&2; 
	#    exit $num;  
	#fi
	perl -ne 'print "$1\n" if /^Inst (\S+).*/' $temp | sort
else
	apt-get $options -s $@
	exit $?
fi