aboutsummaryrefslogtreecommitdiff
path: root/tools/Linux/packaging/debian/xbmc-live.postrm
blob: 26b0bfa7208e8634032254a01161050939356313 (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
#!/bin/sh
# postrm script for xbmc-live
#
# see: dh_installdeb(1)

set -e
if [ "$1" = "purge" ]; then
	SUDOERS_TEMPFILE=$(mktemp -q)

	# Add xbmc to the sudoers file (if not already done)
	if ! grep -i -q XBMC-specific /etc/sudoers ; then 
		cp -f /etc/sudoers $SUDOERS_TEMPFILE

		sed -i -e "/XBMC/d" $SUDOERS_TEMPFILE

		# Check if sudoers file is ok with visudo and write to /etc/sudoers if
		# it is ok, else display a message to the user.
		if visudo -c -f $SUDOERS_TEMPFILE >/dev/null 2>&1; then
			cp -f $SUDOERS_TEMPFILE /etc/sudoers
		else
			# TODO: Use debconf for this message.
			echo "Couldn't edit /etc/sudoers, must be manually edited."
			echo "Please edit /etc/sudoers using 'visudo' and remove the lines with 'XBMC'"
		fi
	fi

	POLKIT_ACTIONS="org.freedesktop.hal.dockstation.undock
		org.freedesktop.hal.wol.enabled
		org.freedesktop.hal.wol.enable
		org.freedesktop.hal.wol.supported
		org.freedesktop.hal.leds.brightness
		org.freedesktop.hal.device-access.audio-player
		org.freedesktop.hal.device-access.camera
		org.freedesktop.hal.device-access.cdrom
		org.freedesktop.hal.device-access.dvb
		org.freedesktop.hal.device-access.fingerprint-reader
		org.freedesktop.hal.device-access.floppy
		org.freedesktop.hal.device-access.ieee1394-avc
		org.freedesktop.hal.device-access.ieee1394-iidc
		org.freedesktop.hal.device-access.joystick
		org.freedesktop.hal.device-access.mouse
		org.freedesktop.hal.device-access.obex
		org.freedesktop.hal.device-access.pda
		org.freedesktop.hal.device-access.printer
		org.freedesktop.hal.device-access.scanner
		org.freedesktop.hal.device-access.sound
		org.freedesktop.hal.device-access.video
		org.freedesktop.hal.device-access.video4linux
		org.freedesktop.hal.lock
		org.freedesktop.hal.killswitch.bluetooth
		org.freedesktop.hal.killswitch.wlan
		org.freedesktop.hal.killswitch.wwan
		org.freedesktop.hal.storage.mount-removable
		org.freedesktop.hal.storage.eject
		org.freedesktop.hal.storage.crypto-setup-removable
		org.freedesktop.hal.power-management.shutdown
		org.freedesktop.hal.power-management.reboot
		org.freedesktop.hal.power-management.set-powersave
		org.freedesktop.hal.power-management.suspend
		org.freedesktop.hal.power-management.hibernate
		org.freedesktop.hal.power-management.cpufreq
		org.freedesktop.hal.power-management.lcd-panel
		org.freedesktop.hal.power-management.light-sensor
		org.freedesktop.hal.power-management.keyboard-backlight
		org.freedesktop.devicekit.power.suspend
		org.freedesktop.devicekit.power.Hibernate
		org.freedesktop.consolekit.system.stop"

	# Grant the 'xbmc' user each action from the list if not done already
	for ACTION in $POLKIT_ACTIONS; do
		if polkit-auth --user xbmc --show-obtainable | \
			grep -q $ACTION; then
			polkit-auth --user xbmc --revoke $ACTION
		fi
	done

	sed -i s/allowed_users=anybody/allowed_users=console/ /etc/X11/Xwrapper.config
	if [ -f "/etc/X11/Xwrapper.config.bak-xbmc-live" ]; then
		rm /etc/X11/Xwrapper.config.bak-xbmc-live > /dev/null
	fi

	deluser xbmc
  
	if [ -f "/etc/init.d/xbmc-live" ]; then
		rm /etc/init.d/xbmc-live >/dev/null
	fi
	if [ -f "/etc/init/xbmc-live.conf" ]; then
		rm /etc/init/xbmc-live.conf >/dev/null
	fi
	if [ -f "/etc/init/xbmc-live-install" ]; then
		rm /etc/init/xbmc-live-install.conf >/dev/null
	fi
fi

update-rc.d -f xbmc-live remove >/dev/null

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

exit 0