nymea/debian/nymead.postinst

43 lines
2.2 KiB
Bash
Executable File

#!/bin/sh
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# #
# Copyright (C) 2015 - 2021 nymea GmbH <developer@nymea.io> #
# #
# This file is part of nymea. #
# #
# nymea is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, version 2 of the License. #
# #
# nymea is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with nymea. If not, see <http://www.gnu.org/licenses/>. #
# #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Make sure user will be able to perform a networkdiscovery
# using ARP and ICMP sockets (raw_sock).
setcap cap_net_admin,cap_net_raw=eip /usr/bin/nymead
if [ $? -eq 0 ]; then
echo "Set raw socket network capabilities successfully for nymead."
else
echo "Failed to set raw socket network capabilities for nymead. Network device discovery will not be available for non root users."
fi
# nymea hook to restart nymead after upgrades that change nymea plugins or libraries
cat <<EOF > /etc/apt/apt.conf.d/99nymea
DPkg::Pre-Install-Pkgs {"/usr/libexec/nymea-upgrade-helper"; };
DPkg::Tools::Options::/usr/libexec/nymea-upgrade-helper::Version "1";
DPkg::Post-Invoke {"if [ -e /tmp/nymea-restart-pending ]; then systemctl restart nymead; rm /tmp/nymea-restart-pending; fi"; };
EOF
#DEBHELPER#
exit 0