#!/bin/sh

set -eu

command=$1
shift

debfiles='
  pool/non-free/f/fwupdatesmart/fwupdatesmart_1.0.8-5_amd64.deb
  pool/non-free/s/smart-activation/smart-activation_1.3.60.0-1_amd64.deb
  pool/non-free/s/smart-common/smart-common_10.3.3245.1-1_amd64.deb
  pool/non-free/s/smart-gallerysetup/smart-gallerysetup_1.4.32.0-1_amd64.deb
  pool/non-free/s/smart-hwr/smart-hwr_12.17.6.0-1_amd64.deb
  pool/non-free/s/smart-languagesetup/smart-languagesetup_2.3.34.0-1_amd64.deb
  pool/non-free/s/smart-notebook/smart-notebook_11.1.114.0-1_amd64.deb
  pool/non-free/s/smart-product-drivers/smart-product-drivers_12.17.449.0-5_amd64.deb
'

mime_xml_files='
  x-smarttech-galleryitem.xml
  x-smarttech-gallery.xml
  x-smarttech-notebook.xml
'

smart_technologies_dir='/opt/SMART Technologies'

smartboard_links='
  /etc/nextwindow/nw-fermi/nw-fermi/DefaultDriverSettings.dat
  /etc/udev/rules.d/99-sbm7xx.rules
  /usr/share/icons/hicolor/128x128/apps/SMART_Board_Software.png
  /usr/share/icons/hicolor/128x128/apps/SMART_ControlPanel.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Essentials_For_Educators.png
  /usr/share/icons/hicolor/128x128/apps/SMART_GallerySetup.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Keyboard.png
  /usr/share/icons/hicolor/128x128/apps/SMART_LanguageChooser.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Magnifier.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Notebook.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Orient.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Pointer.png
  /usr/share/icons/hicolor/128x128/apps/SMART_ProductUpdate.png
  /usr/share/icons/hicolor/128x128/apps/SMART_ScreenCapture.png
  /usr/share/icons/hicolor/128x128/apps/SMART_ScreenShade.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Spotlight.png
  /usr/share/icons/hicolor/128x128/apps/SMART_Tools.png
  /usr/share/icons/hicolor/128x128/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/128x128/mimetypes/application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/128x128/mimetypes/application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Board_Software.png
  /usr/share/icons/hicolor/16x16/apps/SMART_ControlPanel.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Essentials_For_Educators.png
  /usr/share/icons/hicolor/16x16/apps/SMART_GallerySetup.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Keyboard.png
  /usr/share/icons/hicolor/16x16/apps/SMART_LanguageChooser.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Magnifier.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Notebook.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Orient.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Pointer.png
  /usr/share/icons/hicolor/16x16/apps/SMART_ProductUpdate.png
  /usr/share/icons/hicolor/16x16/apps/SMART_ScreenCapture.png
  /usr/share/icons/hicolor/16x16/apps/SMART_ScreenShade.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Spotlight.png
  /usr/share/icons/hicolor/16x16/apps/SMART_Tools.png
  /usr/share/icons/hicolor/16x16/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/16x16/mimetypes/application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/16x16/mimetypes/application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Board_Software.png
  /usr/share/icons/hicolor/22x22/apps/SMART_ControlPanel.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Essentials_For_Educators.png
  /usr/share/icons/hicolor/22x22/apps/SMART_GallerySetup.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Keyboard.png
  /usr/share/icons/hicolor/22x22/apps/SMART_LanguageChooser.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Magnifier.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Notebook.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Orient.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Pointer.png
  /usr/share/icons/hicolor/22x22/apps/SMART_ProductUpdate.png
  /usr/share/icons/hicolor/22x22/apps/SMART_ScreenCapture.png
  /usr/share/icons/hicolor/22x22/apps/SMART_ScreenShade.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Spotlight.png
  /usr/share/icons/hicolor/22x22/apps/SMART_Tools.png
  /usr/share/icons/hicolor/22x22/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/22x22/mimetypes/application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/22x22/mimetypes/application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Board_Software.png
  /usr/share/icons/hicolor/32x32/apps/SMART_ControlPanel.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Essentials_For_Educators.png
  /usr/share/icons/hicolor/32x32/apps/SMART_GallerySetup.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Keyboard.png
  /usr/share/icons/hicolor/32x32/apps/SMART_LanguageChooser.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Magnifier.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Notebook.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Orient.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Pointer.png
  /usr/share/icons/hicolor/32x32/apps/SMART_ProductUpdate.png
  /usr/share/icons/hicolor/32x32/apps/SMART_ScreenCapture.png
  /usr/share/icons/hicolor/32x32/apps/SMART_ScreenShade.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Spotlight.png
  /usr/share/icons/hicolor/32x32/apps/SMART_Tools.png
  /usr/share/icons/hicolor/32x32/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/32x32/mimetypes/application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/32x32/mimetypes/application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Board_Software.png
  /usr/share/icons/hicolor/48x48/apps/SMART_ControlPanel.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Essentials_For_Educators.png
  /usr/share/icons/hicolor/48x48/apps/SMART_GallerySetup.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Keyboard.png
  /usr/share/icons/hicolor/48x48/apps/SMART_LanguageChooser.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Magnifier.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Notebook.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Orient.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Pointer.png
  /usr/share/icons/hicolor/48x48/apps/SMART_ProductUpdate.png
  /usr/share/icons/hicolor/48x48/apps/SMART_ScreenCapture.png
  /usr/share/icons/hicolor/48x48/apps/SMART_ScreenShade.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Spotlight.png
  /usr/share/icons/hicolor/48x48/apps/SMART_Tools.png
  /usr/share/icons/hicolor/48x48/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/48x48/mimetypes/application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/48x48/mimetypes/application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/icons/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/icons/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/icons/hicolor/scalable/apps/SMART_LanguageChooser.svg
  /usr/share/man/man1/smart-activation.1.gz
  /usr/share/man/man1/smart-common.1.gz
  /usr/share/man/man1/smart-gallerysetup.1.gz
  /usr/share/man/man1/smart-hwr.1.gz
  /usr/share/man/man1/smart-languagesetup.1.gz
  /usr/share/man/man1/smart-notebook.1.gz
  /usr/share/man/man1/smart-product-drivers.1.gz
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Board_Software.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_ControlPanel.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Essentials_For_Educators.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_GallerySetup.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Keyboard.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_LanguageChooser.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Magnifier.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Notebook.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Orient.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Pointer.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_ProductUpdate.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_ScreenCapture.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_ScreenShade.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Spotlight.png
  /usr/share/pixmaps/hicolor/128x128/apps/SMART_Tools.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/128x128/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Board_Software.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_ControlPanel.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Essentials_For_Educators.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_GallerySetup.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Keyboard.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_LanguageChooser.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Magnifier.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Notebook.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Orient.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Pointer.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_ProductUpdate.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_ScreenCapture.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_ScreenShade.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Spotlight.png
  /usr/share/pixmaps/hicolor/16x16/apps/SMART_Tools.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/16x16/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Board_Software.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_ControlPanel.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Essentials_For_Educators.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_GallerySetup.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Keyboard.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_LanguageChooser.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Magnifier.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Notebook.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Orient.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Pointer.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_ProductUpdate.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_ScreenCapture.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_ScreenShade.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Spotlight.png
  /usr/share/pixmaps/hicolor/22x22/apps/SMART_Tools.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/22x22/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Board_Software.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_ControlPanel.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Essentials_For_Educators.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_GallerySetup.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Keyboard.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_LanguageChooser.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Magnifier.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Notebook.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Orient.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Pointer.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_ProductUpdate.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_ScreenCapture.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_ScreenShade.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Spotlight.png
  /usr/share/pixmaps/hicolor/32x32/apps/SMART_Tools.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/32x32/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Board_Software.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_ControlPanel.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Essentials_For_Educators.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_GallerySetup.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Keyboard.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_LanguageChooser.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Magnifier.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Notebook.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Orient.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Pointer.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_ProductUpdate.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_ScreenCapture.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_ScreenShade.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Spotlight.png
  /usr/share/pixmaps/hicolor/48x48/apps/SMART_Tools.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-galleryitem.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-gallery.png
  /usr/share/pixmaps/hicolor/48x48/mimetypes/gnome-mime-application-x-smarttech-notebook.png
  /usr/share/pixmaps/hicolor/scalable/apps/SMART_LanguageChooser.svg
'

smart_notebook_desktop_file='/usr/share/applications/smarttech-notebook.desktop'

make_config_file() {
  filepath="$1"
  mkdir -p "$(dirname "$filepath")"
  cat > "${filepath}.tmp"
  mv "${filepath}.tmp" "$filepath"
}

create_configurations() {
  #
  # Smartboard configurations
  #

  make_config_file "/etc/adobe/FlashPlayerTrust/SMARTNotebook.cfg" <<'EOF'
/opt/SMART Technologies
EOF

  make_config_file "/etc/udev/rules.d/60-SMARTBoard32.rules" <<'EOF'
#SMART Technologies rules for permissions.
KERNEL=="ttyS*", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0b8c", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_interface", ATTR{idVendor}=="0b8c", MODE="0666"
SUBSYSTEMS=="usb", DRIVERS=="usb", ATTRS{idVendor}=="0b8c", MODE:="0666"
#
#Kernel 2.6.32 and greater has a bug that causes the mouse pointer to jump to the top left corner in HID mouse mode.
#Disable the event stream for affected products.
#Actually the bug began in 2.6.30, but these rules only work on 2.6.32.  You need an fdi policy file to work around 2.6.31.
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0001", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0002", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0003", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0004", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0005", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0006", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0007", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0008", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="000a", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="000b", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0017", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0060", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0061", NAME="SB%k"
KERNEL=="event*", ATTRS{idVendor}=="0b8c", ATTRS{idProduct}=="0042", NAME="SB%k"
EOF

  make_config_file "/etc/xdg/SMART Technologies.conf" <<'EOF'
[Software]
SMART%20Technologies\Activation%20Wizard%202\Location=/opt/SMART Technologies/Activation Wizard/bin/.activationwizard_elf
SMART%20Technologies\License%20Information\Trial\0\K9Q7B7XJ3M6PVNNMW9X9WK6RISDEFRAS\5JF3EP743VG9DHAHNDFMRMYEXA43AEFS=E5VUA5CAN6SADGJADGSAABIAAAV2ANWAFJY2AANIEMESAAAE8GDUDAGKAA
SMART%20Technologies\MyScript\MyScriptPath=/opt/SMART Technologies/MyScript
SMART%20Technologies\Notebook%20Software\Install%20Information\Documentation=/opt/SMART Technologies/Notebook Software/bin/Notebook/documentation
SMART%20Technologies\Notebook%20Software\Install%20Information\Notebook%20Version=11.1.114.0
SMART%20Technologies\Notebook%20Software\Install%20Information\NotebookExePath=/opt/SMART Technologies/Notebook Software
SMART%20Technologies\SMART%20Board%20Drivers\Board%20Tools\FloatingToolsWasRunning=1
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\CustomLayout=/opt/SMART Technologies/Notebook Software/../SMART Product Drivers/Default Profiles and Layouts/CustomLayout.xml
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\CustomLayoutTranslation=/opt/SMART Technologies/Notebook Software/../SMART Product Drivers/Default Profiles and Layouts/CustomLayoutTranslation.xml
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\DefaultLayout=/opt/SMART Technologies/SMART Product Drivers/Default Profiles and Layouts/DefaultLayout.xml
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\Documentation=/opt/SMART Technologies/SMART Product Drivers/documentation
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\Drivers%20Directory=/opt/SMART Technologies/SMART Product Drivers
SMART%20Technologies\SMART%20Board%20Drivers\Install%20Information\Drivers%20Version=12.17.449.0
SMART%20Technologies\SMART%20Tools\ToolsPath=/opt/SMART Technologies/SMART Product Drivers
SMART%20Technologies\Language%20Setup\Path=/opt/SMART Technologies/Language Setup
SMART%20Technologies\Language%20Setup\Version=2.3.34.0
EOF

  make_config_file "/etc/xdg/SMART Technologies Drivers.conf" <<'EOF'
EOF

  make_config_file "/etc/xdg/SMART Technologies/Language Setup.conf" <<'EOF'
[Activation2]
DisplayName=Activation Wizard
IsHwConfigurable=0
IsLanguageConfigurable=0
LanguagesFolder=/opt/SMART Technologies/Activation Wizard/Languages

[SMART Board]
DisplayName=SMART Board Drivers
IsHwConfigurable=0
IsLanguageConfigurable=1
LanguagesFolder=/opt/SMART Technologies/SMART Product Drivers/Languages

[Gallery Setup]
DisplayName=Gallery Setup
IsHwConfigurable=0
IsLanguageConfigurable=0
LanguagesFolder=/opt/SMART Technologies/Gallery Setup/Languages

[Notebook]
DisplayName=Notebook Software
IsHwConfigurable=1
IsLanguageConfigurable=1
LanguagesFolder=/opt/SMART Technologies/Notebook Software/bin/Notebook/resources/Languages
LanguagesFolder1=/opt/SMART Technologies/Notebook Software/Languages
LanguagesFolder2=/opt/SMART Technologies/Activation Wizard/Languages
EOF

  make_config_file "/etc/xdg/SMART Technologies/SMART Notebook.conf" <<'EOF'
[Software]
SMART%20Technologies\Gallery\OnlineMarketplace=http://learningmarketplace.smarttech.com/notebook.aspx
SMART%20Technologies\Gallery\TeamContent\deinclified=1
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\ImsManifestXml=/opt/SMART Technologies/Notebook Galleries/SMART Technologies/Essentials for Educators/imsmanifest.xml
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\MetadataXml=/opt/SMART Technologies/Notebook Galleries/Configurations/SMART Technologies/Gallery Essentials/gallery.smarttech.com/metadata.xml
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\AppPath=/opt/SMART Technologies/Gallery Setup/bin/.GallerySetup_elf
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\Args=-configuration \"/opt/SMART Technologies/Notebook Galleries/Configurations/SMART Technologies/Gallery Essentials/gallery.smarttech.com\"
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\Enabled=0
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\Remote=0
SMART%20Technologies\Gallery\TeamContent\gallery.smarttech.com\ForceUser=0
SMART%20Technologies\Language%20Setup\Path=/opt/SMART Technologies/Language Setup
SMART%20Technologies\Language%20Setup\Version=2.3.34.0
SMART%20Technologies\Gallery\GallerySamplerManifest=/opt/SMART Technologies/Notebook Software/Gallery/imsmanifest.xml
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\ImsManifestXml=/opt/SMART Technologies/Notebook Galleries/SMART Technologies/Lesson Activity Toolkit/imsmanifest.xml
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\MetadataXml=/opt/SMART Technologies/Notebook Galleries/Configurations/Lesson Activity Toolkit/fd16a709-8b28-4662-b5bd-63dc86eeb34e.com/metadata.xml
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\AppPath=/opt/SMART Technologies/Gallery Setup/bin/.GallerySetup_elf
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\Args=-configuration \"/opt/SMART Technologies/Notebook Galleries/Configurations/Lesson Activity Toolkit/fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\"
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\Enabled=0
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\Remote=0
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\ForceUser=0
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\Locale\fi=
SMART%20Technologies\Gallery\TeamContent\fd16a709-8b28-4662-b5bd-63dc86eeb34e.com\Locale\sv=
EOF

  #
  # Autostart scripts
  #

  make_config_file "/etc/xdg/autostart/smart_1-_Notifications.desktop" <<'EOF'
[Desktop Entry]
Name=SMARTBoardService
Encoding=UTF-8
Version=1.0
X-GNOME-Autostart-enabled=true
Exec=/usr/local/bin/start_smartboard_notifications
Type=Application
Icon=system-run
Comment=SMART Software
EOF

  make_config_file "/etc/xdg/autostart/smart_1-_Service.desktop" <<'EOF'
[Desktop Entry]
Name=SMARTBoardService
Encoding=UTF-8
Version=1.0
X-GNOME-Autostart-enabled=true
Exec=/usr/local/bin/start_smartboard_service
Type=Application
Icon=system-run
Comment=SMART Software
EOF

  make_config_file "/etc/xdg/autostart/smart_1-_Tools.desktop" <<'EOF'
[Desktop Entry]
Name=SMART Board Tools
Encoding=UTF-8
Version=1.0
X-GNOME-Autostart-enabled=true
Exec=/usr/local/bin/start_smartboard_tools
Type=Application
Icon=system-run
Comment=SMART Software
EOF

  make_config_file "/usr/local/bin/start_smartboard_notifications" <<'EOF'
#!/bin/sh

set -eu

# do not start smartboard stuff if we do not have a smartboard connected
if ! lsusb | awk '$6 ~ /^0b8c:/' | grep -q .; then
  exit 1
fi

exec "/opt/SMART Technologies/SMART Product Drivers/bin/SystemNotifications" \
     "$@"
EOF
  chmod 755 "/usr/local/bin/start_smartboard_notifications"

  make_config_file "/usr/local/bin/start_smartboard_service" <<'EOF'
#!/bin/sh

set -eu

# do not start smartboard stuff if we do not have a smartboard connected
if ! lsusb | awk '$6 ~ /^0b8c:/' | grep -q .; then
  exit 1
fi

exec "/opt/SMART Technologies/SMART Product Drivers/bin/SMARTBoardService" \
     "$@"
EOF
  chmod 755 "/usr/local/bin/start_smartboard_service"

  make_config_file "/usr/local/bin/start_smartboard_tools" <<'EOF'
#!/bin/sh

set -eu

# do not start smartboard stuff if we do not have a smartboard connected
if ! lsusb | awk '$6 ~ /^0b8c:/' | grep -q .; then
  exit 1
fi

exec "/opt/SMART Technologies/SMART Product Drivers/bin/SMART Board Tools" \
     "$@"
EOF
  chmod 755 "/usr/local/bin/start_smartboard_tools"

  make_config_file "/usr/local/bin/smart_notebook" <<'EOF'
#!/bin/sh
exec "/opt/SMART Technologies/Notebook Software/bin/notebook" "$@"
EOF
  chmod 755 "/usr/local/bin/smart_notebook"

  sed 's|^Exec.*|Exec=/usr/local/bin/smart_notebook %f|' \
      "${smart_technologies_dir}/.store/smart-notebook/xdg/mime-desktop/smarttech-notebook.desktop" \
      > "${smart_notebook_desktop_file}.tmp"
  mv "${smart_notebook_desktop_file}.tmp" "$smart_notebook_desktop_file"
}

setup_mimetypes() {
  upstream_dir=$1

  for mime_xml in $mime_xml_files; do
    ln -fns "${upstream_dir}/smartboard/opt/SMART Technologies/.store/smart-notebook/xdg/mime/${mime_xml}" \
            "/usr/share/mime/packages/${mime_xml}"
  done

  # suggestion to image build or system service that mime database should be
  # updated
  echo smartboard >> /var/lib/puavo-pkg/.update_mime_database
}

case "${command}" in
  configure)
    upstream_dir=$1

    for f in "$smart_technologies_dir" $smartboard_links; do
      mkdir -p "$(dirname "$f")"
      ln -fns -T "${upstream_dir}/smartboard${f}" "$f"
    done

    create_configurations

    setup_mimetypes "$upstream_dir"
    ;;
  unconfigure)
    upstream_dir=$1
    rm -f "$smart_technologies_dir"                         \
          $smartboard_links                                 \
          /etc/adobe/FlashPlayerTrust/SMARTNotebook.cfg     \
          /etc/udev/rules.d/60-SMARTBoard32.rules           \
          /etc/xdg/autostart/smart_1-_Notifications.desktop \
          /etc/xdg/autostart/smart_1-_Service.desktop       \
          /etc/xdg/autostart/smart_1-_Tools.desktop         \
          "/etc/xdg/SMART Technologies.conf"                \
          "/etc/xdg/SMART Technologies Drivers.conf"        \
          "/etc/xdg/SMART Technologies/Language Setup.conf" \
          "/etc/xdg/SMART Technologies/SMART Notebook.conf" \
          /usr/local/bin/smart_notebook                     \
          /usr/local/bin/start_smartboard_notifications     \
          /usr/local/bin/start_smartboard_service           \
          /usr/local/bin/start_smartboard_tools             \
          /usr/share/applications/smarttech-notebook.desktop
    for mime_xml in $mime_xml_files; do
      rm -f "/usr/share/mime/packages/${mime_xml}"
    done

    update-mime-database /usr/share/mime
    rm -f "${upstream_dir}/.mimetype_setup_done"
    ;;
  unpack)
    upstream_pack=$1
    upstream_dir=$2

    tar --no-same-owner -z -x -f "$upstream_pack" -C "$upstream_dir"
    for deb in $debfiles; do
      dpkg -x "${upstream_dir}/${deb}" "${upstream_dir}/smartboard"
      rm -f "${upstream_dir}/${deb}"
    done

    (
      cd "${upstream_dir}/smartboard${smart_technologies_dir}/common/lib"
      for lib in ../lib.common/*; do
        ln -fns "$lib" "$(basename "$lib")"
      done
    )

    smart_datadir="${upstream_dir}/smartboard${smart_technologies_dir}/common/data"
    mkdir -m 1777 -p "$smart_datadir"
    ln -fns /state/external_files/smartboard_license \
            "${smart_datadir}/.mp.1.1.dat"

    focal_lib_path=/opt/focal/lib/x86_64-linux-gnu
    grep -lRZ '^export LD_LIBRARY_PATH=$' . \
      | xargs -0 sed -i "/^export LD_LIBRARY_PATH=$/s|$|${focal_lib_path}|"
    ;;
esac
