1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/trilium_ynh.git synced 2024-10-01 13:34:49 +02:00
trilium_ynh/scripts/_common.sh
2022-01-02 12:45:04 -05:00

53 lines
1.7 KiB
Bash

#!/bin/bash
#=================================================
# COMMON VARIABLES
#=================================================
# dependencies used by the app
pkg_dependencies="nodejs npm libpng16-16 libpng-dev pkg-config autoconf libtool build-essential nasm libx11-dev libxkbfile-dev"
#=================================================
# PERSONAL HELPERS
#=================================================
function set_node_vars {
nodejs_version=$(ynh_app_setting_get --app=$app --key=nodejs_version)
if [ $nodejs_version -ne 16 ]; then
ynh_exec_warn_less ynh_remove_nodejs
fi
ynh_exec_warn_less ynh_install_nodejs --nodejs_version=16
ynh_use_nodejs
node_path="$nodejs_path:$(sudo -u $app sh -c 'echo $PATH')"
}
function build_node_app {
set_node_vars
grep -v electron "$final_path/package.json" > "$final_path/server-package.json"
mv "$final_path/server-package.json" "$final_path/package.json"
pushd "$final_path"
chown -R $app:$app "$final_path"
sudo -u $app touch "$final_path/.yarnrc"
sudo -u $app env "PATH=$node_path" yarn --cache-folder "$final_path/yarn-cache" --use-yarnrc "$final_path/.yarnrc" import 2>&1
sudo -u $app env "PATH=$node_path" yarn --cache-folder "$final_path/yarn-cache" --use-yarnrc "$final_path/.yarnrc" install --production 2>&1
chown -R root:root "$final_path"
popd
set_permissions
}
function set_permissions {
chown -R root:$app "$final_path"
chmod -R g=u,g-w,o-rwx "$final_path"
chown -R $app:$app "$data_path"
chmod -R g=u,g-w,o-rwx "$data_path"
}
#=================================================
# EXPERIMENTAL HELPERS
#=================================================
#=================================================
# FUTURE OFFICIAL HELPERS
#=================================================