From e1d127b4eda8eefd634224dc0392d50dff2d56cf Mon Sep 17 00:00:00 2001 From: "vladislav.cholak" <vlad.hoc10@gmail.com> Date: Mon, 1 Jul 2019 23:18:36 +0300 Subject: [PATCH] Added unstable debian config --- KelvinDashboard.pro | 6 +++ KelvinDashboardGUI/KelvinDashboardGUI.pro | 7 +++ .../KelvinDashboardService.pro | 6 +++ debian/changelog | 6 +++ debian/compat | 1 + debian/control | 17 ++++++ debian/postinst | 50 ++++++++++++++++++ debian/preinst.ex | 35 ++++++++++++ debian/prerm | 26 +++++++++ debian/rules | 4 ++ .../init.d/KelvinDashboardService.service | 46 ++++++++++++++++ debian/share/kelvindashboard.desktop | 9 ++++ debian/share/kelvindashboard.ico | Bin 0 -> 2462 bytes debian/stamp-makefile-build | 0 debian/stamp-makefile-install | 0 15 files changed, 213 insertions(+) create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100755 debian/postinst create mode 100644 debian/preinst.ex create mode 100755 debian/prerm create mode 100755 debian/rules create mode 100755 debian/share/init.d/KelvinDashboardService.service create mode 100644 debian/share/kelvindashboard.desktop create mode 100644 debian/share/kelvindashboard.ico create mode 100644 debian/stamp-makefile-build create mode 100644 debian/stamp-makefile-install diff --git a/KelvinDashboard.pro b/KelvinDashboard.pro index 8cfdee374..26f9013c3 100755 --- a/KelvinDashboard.pro +++ b/KelvinDashboard.pro @@ -9,3 +9,9 @@ KelvinDashboardGUI.depends = KelvinDashboardService { BRAND = KelvinDashboard } + +unix: !mac : !android { + share_target.files = debian/share/* + share_target.path = /opt/KelvinDashboard/share/ + INSTALLS += share_target +} diff --git a/KelvinDashboardGUI/KelvinDashboardGUI.pro b/KelvinDashboardGUI/KelvinDashboardGUI.pro index 88630aa38..0e5a7c2d1 100755 --- a/KelvinDashboardGUI/KelvinDashboardGUI.pro +++ b/KelvinDashboardGUI/KelvinDashboardGUI.pro @@ -96,4 +96,11 @@ include (../DapRPCProtocol/DapRPCProtocol.pri) INCLUDEPATH += $$_PRO_FILE_PWD_/../libKelvinDashboardCommon/ $$_PRO_FILE_PWD_/../DapRPCProtocol/ + +unix: !mac : !android { + gui_target.files = $${BRAND} + gui_target.path = /opt/$$BRAND/bin/ + INSTALLS += gui_target +} + DISTFILES += diff --git a/KelvinDashboardService/KelvinDashboardService.pro b/KelvinDashboardService/KelvinDashboardService.pro index 52458e45e..3c5870f05 100755 --- a/KelvinDashboardService/KelvinDashboardService.pro +++ b/KelvinDashboardService/KelvinDashboardService.pro @@ -61,5 +61,11 @@ INCLUDEPATH += $$_PRO_FILE_PWD_/../libKelvinDashboardCommon/ $$_PRO_FILE_PWD_/../DapRPCProtocol/ $$_PRO_FILE_PWD_/../kelvin-node/ +unix: !mac : !android { + service_target.files = $${BRAND}Service + service_target.path = /opt/$$BRAND/bin/ + INSTALLS += service_target +} + RESOURCES += \ KelvinDashboardService.qrc diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..8aa80ceca --- /dev/null +++ b/debian/changelog @@ -0,0 +1,6 @@ +kelvindashboard (1.0) unstable; urgency=medium + + * created + - created transactions + +-- vladislav.cholak vlad.hoc10@gmail.com 01.07.2019 diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..ec635144f --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..50da4db66 --- /dev/null +++ b/debian/control @@ -0,0 +1,17 @@ +Source: kelvindashboard +Section: unknown +Priority: optional +Maintainer: support <support@ncodedcommunications.com> +Build-Depends: debhelper (>= 9) +Standards-Version: 5.8-4 +Homepage: https://ncodedcommunications.com + +Package: kelvindashboard +Architecture: any +Depends: psmisc, menu, net-tools, ${shlibs:Depends}, ${misc:Depends} +Replaces: KelvinDashboard +Description: KelvinDashboard + KelvinDashboard + + + diff --git a/debian/postinst b/debian/postinst new file mode 100755 index 000000000..d20c44573 --- /dev/null +++ b/debian/postinst @@ -0,0 +1,50 @@ +#!/bin/bash - + +case "$1" in + configure) + + ls -s /opt/KelvinDashboard/share/init.d/KelvinDashboardService.service /etc/init.d/kelvindashboardservice + chmod +x /etc/init.d/kelvindashboardservice + update-rc.d kelvindashboardservice defaults + service kelvindashboardservice restart + ln -s /opt/KelvinDashboard/bin/KelvinDashboard /usr/local/bin/ + cp -f /opt/KelvinDashboard/share/kelvindashboard.desktop /usr/share/applications/kelvindashboard.desktop + cp -f /opt/KelvinDashboard/share/kelvindashboard.ico /usr/share/pixmaps/kelvindashboard.ico + update-menus + +<< --COMMENT-- + --- It must be commented until we use rooted user. Uncomment to use UltraPAD user for service --- + + adduser --force-badname UltraPAD + adduser UltraPAD netdev + chown -R UltraPAD /opt/sap/ultrapad/ + chown UltraPAD /sys/class/dmi/id/product_uuid + ln -s /opt/sap/ultrapad/bin/UltraPad /usr/local/bin/ + chown -h UltraPAD /usr/local/bin/UltraPad + chown UltraPAD /var/run/ + sudo touch /etc/rc.local + sudo grep -q '^#!/bin/bash' /etc/rc.local && sudo sed -i '1i#!/bin/bash\' /etc/rc.local + sudo grep -q '^exit 0' /etc/rc.local && sudo sed -i '/exit 0/i chown UltraPAD /sys/class/dmi/id/product_uuid' /etc/rc.local || sudo sh -c "printf 'chown UltraPAD /sys/class/dmi/id/product_uuid\nexit 0' >> /etc/rc.local" + cp -f /opt/sap/ultrapad/share/init.d/UltraPadService.service /etc/init.d/ultrapadservice + chown UltraPAD /etc/init.d/ultrapadservice + chmod +x /etc/init.d/ultrapadservice + setcap 'CAP_MKNOD=epi CAP_NET_ADMIN=epi CAP_NET_BIND_SERVICE=epi CAP_NET_RAW=epi CAP_SYS_NICE=epi CAP_SYS_RAWIO=epi CAP_SYS_RESOURCE=epi CAP_SYSLOG=epi CAP_MAC_ADMIN=epi CAP_MAC_OVERRIDE=epi' /opt/sap/ultrapad/bin/UltraPadService + setcap 'CAP_MKNOD=epi CAP_NET_ADMIN=epi CAP_NET_BIND_SERVICE=epi CAP_NET_RAW=epi CAP_SYS_NICE=epi CAP_SYS_RAWIO=epi CAP_SYS_RESOURCE=epi CAP_SYSLOG=epi CAP_MAC_ADMIN=epi CAP_MAC_OVERRIDE=epi' /etc/init.d/ultrapadservice + setcap 'CAP_NET_ADMIN=epi' /bin/ip + update-menus + update-rc.d ultrapadservice defaults + service ultrapadservice start + cp -f /opt/sap/ultrapad/share/ultrapad.desktop /usr/share/applications/ultrapad.desktop + cp -f /opt/sap/ultrapad/share/ultrapad.png /usr/share/pixmaps/ultrapad.png +--COMMENT-- +;; + abort-upgrade|abort-remove|abort-deconfigure) + ;; + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 2 + ;; +esac +exit 0 + + diff --git a/debian/preinst.ex b/debian/preinst.ex new file mode 100644 index 000000000..f9179c878 --- /dev/null +++ b/debian/preinst.ex @@ -0,0 +1,35 @@ +#!/bin/sh +# preinst script for dapvpngui +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <new-preinst> `install' +# * <new-preinst> `install' <old-version> +# * <new-preinst> `upgrade' <old-version> +# * <old-preinst> `abort-upgrade' <new-version> +# for details, see https://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + install|upgrade) + ;; + + abort-upgrade) + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/debian/prerm b/debian/prerm new file mode 100755 index 000000000..2e389b2ec --- /dev/null +++ b/debian/prerm @@ -0,0 +1,26 @@ +#!/bin/bash + +case "$1" in + purge|remove|abort-upgrade|failed-upgrade|upgrade) + [ -f /etc/init.d/kelvindashboardservice ] && service kelvindashboardservice stop + [ -d /opt/KelvinDashboard ] && rm -rf /opt/KelvinDashboard/ + [ -f /usr/local/bin/KelvinDashboard ] && rm /usr/local/bin/KelvinDashboard + [ -f /etc/init.d/kelvindashboardservice ] && rm /etc/init.d/kelvindashboardservice + systemctl daemon-reload + [ -f /usr/share/applications/kelvindashboard.desktop ] && rm /usr/share/applications/kelvindashboard.desktop + [ -f /usr/share/pixmaps/kelvindashboard.ico ] && rm /usr/share/pixmaps/kelvindashboard.ico +<< --COMMENT-- + killall UltraPAD + userdel --remove UltraPAD + systemctl daemon-reload + rm /usr/share/applications/ultrapad.desktop + rm /usr/share/pixmaps/ultrapad.png +--COMMENT-- + ;; + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..4609cdd81 --- /dev/null +++ b/debian/rules @@ -0,0 +1,4 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/qmake.mk diff --git a/debian/share/init.d/KelvinDashboardService.service b/debian/share/init.d/KelvinDashboardService.service new file mode 100755 index 000000000..f00e8ae4c --- /dev/null +++ b/debian/share/init.d/KelvinDashboardService.service @@ -0,0 +1,46 @@ +#!/bin/bash +# Start/stop the UltraPadService daemon. +# +### BEGIN INIT INFO +# Provides: kelvindashoard-service +# Required-Start: $syslog $time +# Required-Stop: $syslog $time +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: KelvinDashboardService running tool. +# Description: KelvinDashboardService running tool. +### END INIT INFO + + +#LSBNAMES='-l' # Uncomment for LSB name support in /etc/cron.d/ + +. /lib/lsb/init-functions + +if [ ! -d "/opt/KelvinDashboard/log" ]; then + sudo mkdir -pm 777 /opt/KelvinDashboard/log +fi + +case "$1" in + start) + log_begin_msg "Starting KelvinDashboardService..." + sudo /opt/KelvinDashboard/bin/KelvinDashboardService + log_end_msg $? + ;; + stop) + + log_begin_msg "Stopping KelvinDashboardService..." + killall kelvindashboardservice + log_end_msg 0 + ;; + restart|force-reload) + log_begin_msg "Restarting KelvinDashboardService..." + service kelvindashboardservice stop + service kelvindashboardservice start + log_end_msg $? + ;; + *) + log_success_msg "Usage: /etc/init.d/kelvindashboardservice {start|stop|restart|force-reload}" + exit 1 +esac + +exit 0 diff --git a/debian/share/kelvindashboard.desktop b/debian/share/kelvindashboard.desktop new file mode 100644 index 000000000..ecaf9281f --- /dev/null +++ b/debian/share/kelvindashboard.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Kelvin Dashboard +Exec=/opt/KelvinDashboard/bin/KelvinDashboard +Icon=/opt/sap/ultrapad/share/kelvindashboard.ico +Terminal=false +Type=Application +Encoding=UTF-8 +Categories=Network;Application; +Name[en_US]=Kelvin Dashboard diff --git a/debian/share/kelvindashboard.ico b/debian/share/kelvindashboard.ico new file mode 100644 index 0000000000000000000000000000000000000000..41230db92cb8101b8f24cf6f861082c6dfb827e1 GIT binary patch literal 2462 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 literal 0 HcmV?d00001 diff --git a/debian/stamp-makefile-build b/debian/stamp-makefile-build new file mode 100644 index 000000000..e69de29bb diff --git a/debian/stamp-makefile-install b/debian/stamp-makefile-install new file mode 100644 index 000000000..e69de29bb -- GitLab