#!/bin/bash

mkdir -p /etc/root 2> /dev/null
rootperm=$?
if [ $rootperm -eq 0 ] ; then
  rm -rf /etc/root
else
  echo "Root permission is required to run this script"
  exit
fi

install_midori_gen() {
  download_url_midori="${1}"
  echo "Downloading midori"
  rm -rf /tmp/midori.tar.bz2
  wget -q --show-progress -c "https://github.com/goastian/midori-desktop/releases/download/${version_midori}/midori-${version_midori_nov}.linux-x86_64.tar.bz2" -O /tmp/midori.tar.bz2
  echo "Installing midori"
  if [ -d /usr/lib ] ; then
    tar jxf /tmp/midori.tar.bz2 -C /usr/lib/
    unlink /usr/bin/midori 2> /dev/null
    install_midori_desktop
    ln -s /usr/lib/midori/midori /usr/bin/midori
    chmod +x /usr/bin/midori
  fi
  rm -rf /tmp/midori.tar.bz2
  echo "Installation midori done"
}

install_midori_desktop() {
  if [ -d /usr/share/applications ] ; then
    echo '[Desktop Entry]' > /usr/share/applications/midori.desktop
    echo 'Name=Midori' >> /usr/share/applications/midori.desktop
    echo 'Comment=Browse the World Wide Web' >> /usr/share/applications/midori.desktop
    echo 'GenericName=Web Browser' >> /usr/share/applications/midori.desktop
    echo 'X-GNOME-FullName=Midori Web Browser' >> /usr/share/applications/midori.desktop
    echo 'Exec=/usr/lib/midori/midori-bin %u' >> /usr/share/applications/midori.desktop
    echo 'Terminal=false' >> /usr/share/applications/midori.desktop
    echo 'X-MultipleArgs=false' >> /usr/share/applications/midori.desktop
    echo 'Type=Application' >> /usr/share/applications/midori.desktop
    if [ -f /usr/lib/midori/browser/chrome/icons/default/default48.png ] ; then
      echo 'Icon=/usr/lib/midori/browser/chrome/icons/default/default48.png' >> /usr/share/applications/midori.desktop
    else
      echo 'Icon=midori' >> /usr/share/applications/midori.desktop
    fi
    echo 'Categories=Network;WebBrowser;' >> /usr/share/applications/midori.desktop
    echo 'MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;' >> /usr/share/applications/midori.desktop
    echo 'StartupWMClass=Midori' >> /usr/share/applications/midori.desktop
    echo 'StartupNotify=true' >> /usr/share/applications/midori.desktop
  fi
}

echo "Checking midori version"
touch /etc/midori_version.conf
version_midori=$(curl "https://github.com/goastian/midori-desktop/releases" 2> /dev/null | grep "/tree/v" | grep -v "alpha" | grep -v "beta" |  grep -oP 'href="\K[^"]+' | cut -d "/" -f 5 | head -1)
version_midori_nov=$(echo ${version_midori} | cut -d "v" -f 2)
url_download="https://github.com/goastian/midori-desktop/releases/download/${version_midori}/midori-${version_midori_nov}.linux-x86_64.tar.bz2"
version_midori_current=$(cat /etc/midori_version.conf)
if [ "${version_midori}" != "${version_midori_current}" ] ; then
  echo "New midori version detected"
  install_midori_gen "${url_download}"
  error_install=$?
  if [ ${error_install} -eq 0 ] ; then
    echo "${version_midori}" > /etc/midori_version.conf
  fi
else
  echo "No updates for midori"
fi
