/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
|