mirror of
https://github.com/YunoHost-Apps/trilium_ynh.git
synced 2024-10-01 13:34:49 +02:00
59 lines
1.9 KiB
Bash
59 lines
1.9 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"
|
|
}
|
|
|
|
function setup_sources {
|
|
ynh_secure_remove "$final_path"
|
|
ynh_setup_source --dest_dir="$final_path"
|
|
mkdir -p "$data_path"
|
|
}
|
|
|
|
#=================================================
|
|
# EXPERIMENTAL HELPERS
|
|
#=================================================
|
|
|
|
#=================================================
|
|
# FUTURE OFFICIAL HELPERS
|
|
#=================================================
|