summaryrefslogtreecommitdiff
path: root/print/cups/DEINSTALL
blob: 086d3279dc2d47461561f46e1563219a78e43815 (plain)
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
#!/bin/sh
#
# $NetBSD: DEINSTALL,v 1.1 2001/10/31 23:27:34 zuntum Exp $

PKGNAME=$1
STAGE=$2

USER="@CUPS_USER@"
GROUP="@CUPS_GROUP@"

CAT="@CAT@"
CMP="@CMP@"
RM="@RM@"
RMDIR="@RMDIR@"
TRUE="@TRUE@"

LOGDIR=/var/log/cups
REQUESTDIR=/var/spool/cups
SAMPLECONFDIR=${PKG_PREFIX}/share/examples/cups
CONFDIR=/etc/cups
CONFFILES="client.conf cupsd.conf"
NONCONFFILES="classes.conf mime.convs mime.types printers.conf"

case ${STAGE} in
DEINSTALL)
	# Remove configuration files if they don't differ from the default
	# config file.
	#
	for file in ${CONFFILES} ${NONCONFFILES}
	do
		FILE=${CONFDIR}/${file}
		SAMPLEFILE=${SAMPLECONFDIR}/${file}
		if ${CMP} -s ${FILE} ${SAMPLEFILE}
		then
			${RM} -f ${FILE}
		fi
	done
	;;

POST-DEINSTALL)
	modified_files=''
	for file in ${CONFFILES} ${NONCONFFILES}
	do
		FILE=${CONFDIR}/${file}
		if [ -f ${FILE} ]
		then
			modified_files="${modified_files} ${FILE}"
		fi
	done

	${RMDIR} ${CONFDIR}/ppd 2>/dev/null || ${TRUE}
	${RMDIR} ${CONFDIR}/interfaces 2>/dev/null || ${TRUE}
	${RMDIR} ${CONFDIR}/certs 2>/dev/null || ${TRUE}
	${RMDIR} ${CONFDIR} 2>/dev/null || ${TRUE}
	${RMDIR} ${LOGDIR} 2>/dev/null || ${TRUE}
	${RM} -rf ${REQUESTDIR}/tmp
	${RMDIR} ${REQUESTDIR} 2>/dev/null || ${TRUE}

	existing_dirs=''
	for dir in ${CONFDIR} ${LOGDIR} ${REQUESTDIR}
	do
		if [ -d ${dir} ]
		then
			existing_dirs="${existing_dirs} ${dir}"
		fi
	done

	${CAT} << EOF
===========================================================================
If you won't be using ${PKGNAME} any longer, you may want to remove:

  * the \`${USER}' user

  * the \`${GROUP}' group
EOF
	if [ -n "${modified_files}" ]
	then
		${CAT} << EOF

  * the following files:

EOF
		for file in ${modified_files}
		do
			echo "	${file}"
		done
	fi
	if [ -n "${existing_dirs}" ]
	then
		${CAT} << EOF

  * the following directories:

EOF
		for dir in ${existing_dirs}
		do
			echo "	${dir}"
		done
	fi
	${CAT} << EOF
===========================================================================
EOF
	;;

*)
	echo "Unexpected argument: ${STAGE}"
	exit 1
	;;
esac
exit 0