mirror of
https://github.com/YunoHost-Apps/duniter_ynh.git
synced 2024-09-03 18:26:35 +02:00
a44ee9d4c8
Fix: Remove admin permission deletion which prevent initial installation Check if the admin and apis permissions do not exist before creating them. Better cmds for legacy permission cleaning
64 lines
1.9 KiB
Bash
64 lines
1.9 KiB
Bash
#/bin/bash
|
|
|
|
INSTALL_DUNITER_DEBIAN_PACKAGE () {
|
|
url_base="https://git.duniter.org/nodes/typescript/duniter/"
|
|
if [ $arch == "x64" ]; then
|
|
version="v1.8.1"
|
|
mid_url="-/jobs/40430/artifacts/raw/work/bin/"
|
|
else
|
|
version="v1.8.0"
|
|
mid_url="uploads/afe00e6e6cb318fbdbb977d8c73f4645/"
|
|
fi
|
|
|
|
deb="duniter-server-$version-linux-$arch.deb"
|
|
url="${url_base}${mid_url}${deb}"
|
|
|
|
# Retrieve debian package and install it
|
|
wget -nc --quiet $url -P /tmp
|
|
deb_path="/tmp/$deb"
|
|
dpkg -i $deb_path > /dev/null
|
|
rm -f $deb_path
|
|
}
|
|
|
|
INSTALL_SYSTEMD () {
|
|
cp ../conf/duniter.service /etc/systemd/system/duniter.service
|
|
systemctl enable duniter.service
|
|
}
|
|
|
|
CONFIGURE_DUNITER () {
|
|
duniter config --bma --ipv4 127.0.0.1 --port $port --remoteh $domain --remotep 443 --noupnp
|
|
duniter config --ws2p-host 127.0.0.1 --ws2p-port 20901 --ws2p-remote-host $domain --ws2p-remote-port 443 --ws2p-noupnp
|
|
}
|
|
|
|
CONFIG_PERMISSIONS () {
|
|
# Remove deprecated permission system settings to remove their effects
|
|
if ynh_legacy_permissions_exists; then
|
|
ynh_legacy_permissions_delete_all
|
|
fi
|
|
|
|
# Protect senstive sub-routes to Duniter web admin interface, give access to choosen admin
|
|
if ! ynh_permission_exists --permission="admin"; then
|
|
ynh_permission_create --permission "admin" --url "/webui" --additional_urls "/webmin" --allowed "$admin" --label "Administration" --show_tile=true
|
|
fi
|
|
|
|
# Set BMA and WS2P APIs accessible to visitors
|
|
if ! ynh_permission_exists --permission="apis"; then
|
|
ynh_permission_create --permission="apis" --url="/" --allowed="visitors" --show_tile=false --protected=true
|
|
fi
|
|
}
|
|
|
|
CONFIG_NGINX () {
|
|
nginx_conf="../conf/nginx.conf"
|
|
sed -i "s@YNH_EXAMPLE_PORT@$port@" $nginx_conf
|
|
sed -i "s@YNH_EXAMPLE_DOMAIN@$domain@" $nginx_conf
|
|
cp $nginx_conf /etc/nginx/conf.d/$domain.d/$app.conf
|
|
systemctl reload nginx
|
|
}
|
|
|
|
REMOVE_DUNITER () {
|
|
# Stop duniter daemon
|
|
systemctl stop duniter
|
|
|
|
# Remove Duniter package
|
|
dpkg -r duniter
|
|
}
|