This file is indexed.

preinst is in dash 0.5.7-2ubuntu2.

This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.

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
#!/bin/bash
set -e

divert() {
	dfile=$1
	ltarget=$2
	div=$(dpkg-divert --list $dfile)
	distrib=${3:-$dfile.distrib}
	temp=$dfile.tmp
	if [ -z "$div" ]; then
		# This differs from dpkg-divert's --rename because we
		# first make a copy of $dfile (the file being diverted)
		# in $distrib. Then, a symlink to $ltarget is forcibly created
		# from $dfile; this is performed in two stages with an
		# intermediate temporary file as ln -sf is not atomic.
		# dpkg-divert's --rename direct equivalent would be:
		# mv $dfile $distrib -- but we could end up without a symlink
		if [ -e $dfile ]; then
			cp -dp $dfile $distrib
		fi
		ln -sf $ltarget $temp
		mv -f $temp $dfile
		dpkg-divert --package dash --divert $distrib --add $dfile
	fi
}

# Divert the following files if no diversion exists already
# It is currently used to prevent the files collision between bash and
# dash: they both provide the files in the package.
divert /bin/sh dash
divert /usr/share/man/man1/sh.1.gz dash.1.gz \
	/usr/share/man/man1/sh.distrib.1.gz