#! /bin/sh

set -e

if [ -n "$(lsmod | grep ^speakup_)" ]; then

	. /usr/share/debconf/confmodule

	# Grub
	mkdir -p /target/etc/default/grub.d
	echo 'GRUB_INIT_TUNE="480 440 1"' > /target/etc/default/grub.d/brltty.cfg
	[ -x /target/usr/sbin/update-grub ] && /bin/in-target /usr/sbin/update-grub || true

	# Gnome 2
	/bin/in-target su -s /bin/sh -c "gconftool-2 --type bool --set /desktop/gnome/applications/at/screen_reader_enabled true" Debian-gdm || true

	# Gnome 3
	mkdir -p /target/usr/share/glib-2.0/schemas
	cat > /target/usr/share/glib-2.0/schemas/15_speakup.gschema.override <<END
# Setup by debian-installer (via finish-install.d/07speakup) since
# speech synthesis was enabled during initial installation

[org.gnome.desktop.a11y.applications]
screen-reader-enabled=true

[org.gnome.desktop.sound]
event-sounds=true

[org.mate.interface]
accessibility=true
END

	in-target dpkg-trigger --no-await /usr/share/glib-2.0/schemas || true
	in-target dpkg --triggers-only -a || true

	db_get passwd/username
	USERNAME="$RET"
	if [ -n "$USERNAME" ]
	then
		# Gnome 2
		/bin/in-target su -s /bin/sh -c "gconftool-2 --type bool --set /desktop/gnome/interface/accessibility true" "$USERNAME" || true
		/bin/in-target su -s /bin/sh -c "gconftool-2 --type bool --set /desktop/gnome/applications/at/visual/startup true" "$USERNAME" || true
		/bin/in-target su -s /bin/sh -c "gconftool-2 --type bool --set /desktop/gnome/sound/event_sounds true" "$USERNAME" || true

		# XFCE
		/bin/in-target su -s /bin/sh -c "mkdir -p /home/$USERNAME/.config/xfce4/xfconf/xfce-perchannel-xml" "$USERNAME"
		cat > /target/home/$USERNAME/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml <<END
<?xml version="1.0" encoding="UTF-8"?>

<channel name="xfce4-session" version="1.0">
  <property name="general" type="empty">
    <property name="StartAssistiveTechnologies" type="bool" value="true"/>
  </property>
</channel>
END
		/bin/in-target chown $USERNAME.$USERNAME /home/$USERNAME/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml

		# LXDE & XFCE
		if [ -r "/target/etc/xdg/autostart/at-spi-dbus-bus.desktop" ];
		then
			/bin/in-target su -s /bin/sh -c "mkdir -p /home/$USERNAME/.config/autostart" "$USERNAME"
			/bin/in-target su -s /bin/sh -c "cp /etc/xdg/autostart/at-spi-dbus-bus.desktop /home/$USERNAME/.config/autostart/my-at-spi-dbus-bus.desktop" "$USERNAME"
			/bin/in-target su -s /bin/sh -c "sed -i -e 's/OnlyShowIn=.*/OnlyShowIn=XFCE;LXDE;/' /home/$USERNAME/.config/autostart/my-at-spi-dbus-bus.desktop" "$USERNAME"
		fi
		if [ -r "/target/etc/xdg/autostart/orca-autostart.desktop" ];
		then
			/bin/in-target su -s /bin/sh -c "mkdir -p /home/$USERNAME/.config/autostart" "$USERNAME"
			/bin/in-target su -s /bin/sh -c "cp /etc/xdg/autostart/orca-autostart.desktop /home/$USERNAME/.config/autostart/my-orca-autostart.desktop" "$USERNAME"
			/bin/in-target su -s /bin/sh -c "sed -i -e 's/OnlyShowIn=.*/OnlyShowIn=XFCE;LXDE;/' /home/$USERNAME/.config/autostart/my-orca-autostart.desktop" "$USERNAME"
		fi

		# lightdm
		if [ -x "/target/usr/bin/orca-dm-wrapper" ];
		then
			mkdir -p /target/etc/xdg/lightdm/lightdm.conf.d
			cat > /target/etc/xdg/lightdm/lightdm.conf.d/80_orca-dm-wrapper.conf << EOF
[SeatDefaults]
greeter-wrapper=/usr/bin/orca-dm-wrapper
EOF
		fi
	fi
fi

exit 0
