mirror of
https://github.com/YunoHost-Apps/syncthing_ynh.git
synced 2024-09-03 20:26:23 +02:00
Merge pull request #80 from YunoHost-Apps/upgrade
Upgrade to 1.17.0~ynh1
This commit is contained in:
commit
9291cb0f91
17 changed files with 135 additions and 103 deletions
44
README.md
44
README.md
|
@ -1,39 +1,37 @@
|
|||
<!--
|
||||
N.B.: This README was automatically generated by https://github.com/YunoHost/apps/tree/master/tools/README-generator
|
||||
It shall NOT be edited by hand.
|
||||
-->
|
||||
|
||||
# Syncthing for YunoHost
|
||||
|
||||
[](https://dash.yunohost.org/appci/app/syncthing)  
|
||||
[](https://install-app.yunohost.org/?app=syncthing)
|
||||
|
||||
> *This package allows you to install Syncthing quickly and simply on a YunoHost server.
|
||||
*[Lire ce readme en français.](./README_fr.md)*
|
||||
|
||||
> *This package allows you to install Syncthing quickly and simply on a YunoHost server.
|
||||
If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.*
|
||||
|
||||
## Overview
|
||||
Syncthing replaces proprietary sync and cloud services with something open, trustworthy and decentralized. Your data is your data alone and you deserve to choose where it is stored, if it is shared with some third party and how it's transmitted over the Internet.
|
||||
|
||||
**Shipped version:** 1.16.1
|
||||
Continuous file synchronization program.
|
||||
|
||||
**Shipped version:** 1.17.0~ynh1
|
||||
|
||||
|
||||
|
||||
## Screenshots
|
||||
|
||||

|
||||

|
||||
|
||||
## Documentation
|
||||
## Documentation and resources
|
||||
|
||||
* Official documentation: https://docs.syncthing.net
|
||||
|
||||
## YunoHost specific features
|
||||
|
||||
#### Supported architectures
|
||||
|
||||
* x86-64 - [](https://ci-apps.yunohost.org/ci/apps/syncthing/)
|
||||
* ARMv8-A - [](https://ci-apps-arm.yunohost.org/ci/apps/syncthing/)
|
||||
|
||||
## Links
|
||||
|
||||
* Report a bug: https://github.com/YunoHost-Apps/syncthing_ynh/issues
|
||||
* App website: https://syncthing.net/
|
||||
* Upstream app repository: https://github.com/syncthing/syncthing
|
||||
* YunoHost website: https://yunohost.org/
|
||||
|
||||
---
|
||||
* Official app website: https://syncthing.net
|
||||
* Official user documentation: https://docs.syncthing.net
|
||||
* Upstream app code repository: https://github.com/syncthing/syncthing
|
||||
* YunoHost documentation for this app: https://yunohost.org/app_syncthing
|
||||
* Report a bug: https://github.com/YunoHost-Apps/syncthing_ynh/issues
|
||||
|
||||
## Developer info
|
||||
|
||||
|
@ -45,3 +43,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/syncthing_ynh/tree/te
|
|||
or
|
||||
sudo yunohost app upgrade syncthing -u https://github.com/YunoHost-Apps/syncthing_ynh/tree/testing --debug
|
||||
```
|
||||
|
||||
**More info regarding app packaging:** https://yunohost.org/packaging_apps
|
43
README_fr.md
Normal file
43
README_fr.md
Normal file
|
@ -0,0 +1,43 @@
|
|||
# Syncthing pour YunoHost
|
||||
|
||||
[](https://dash.yunohost.org/appci/app/syncthing)  
|
||||
[](https://install-app.yunohost.org/?app=syncthing)
|
||||
|
||||
*[Read this readme in english.](./README.md)*
|
||||
*[Lire ce readme en français.](./README_fr.md)*
|
||||
|
||||
> *Ce package vous permet d'installer Syncthing rapidement et simplement sur un serveur YunoHost.
|
||||
Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.*
|
||||
|
||||
## Vue d'ensemble
|
||||
|
||||
Programme de synchronisation de fichiers en continu.
|
||||
|
||||
**Version incluse :** 1.17.0~ynh1
|
||||
|
||||
|
||||
|
||||
## Captures d'écran
|
||||
|
||||

|
||||
|
||||
## Documentations et ressources
|
||||
|
||||
* Site officiel de l'app : https://syncthing.net
|
||||
* Documentation officielle utilisateur : https://docs.syncthing.net
|
||||
* Dépôt de code officiel de l'app : https://github.com/syncthing/syncthing
|
||||
* Documentation YunoHost pour cette app : https://yunohost.org/app_syncthing
|
||||
* Signaler un bug : https://github.com/YunoHost-Apps/syncthing_ynh/issues
|
||||
|
||||
## Informations pour les développeurs
|
||||
|
||||
Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/syncthing_ynh/tree/testing).
|
||||
|
||||
Pour essayer la branche testing, procédez comme suit.
|
||||
```
|
||||
sudo yunohost app install https://github.com/YunoHost-Apps/syncthing_ynh/tree/testing --debug
|
||||
ou
|
||||
sudo yunohost app upgrade syncthing -u https://github.com/YunoHost-Apps/syncthing_ynh/tree/testing --debug
|
||||
```
|
||||
|
||||
**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps
|
|
@ -39,6 +39,8 @@
|
|||
upgrade=1 from_commit=f373714a18c855c936c86b389d1ef0cf46da447b
|
||||
# 1.15.1~ynh2
|
||||
upgrade=1 from_commit=2a0a768ba1e8c93c2cd1b3ef97ac558c86ddc72c
|
||||
# 1.16.1~ynh1
|
||||
upgrade=1 from_commit=a1a1134571e6f9d274b6772358bedfb4b775fe5a
|
||||
backup_restore=1
|
||||
multi_instance=0
|
||||
port_already_use=0
|
||||
|
@ -75,3 +77,5 @@ Notification=all
|
|||
name=1.15.1~ynh1
|
||||
; commit=2a0a768ba1e8c93c2cd1b3ef97ac558c86ddc72c
|
||||
name=1.15.1~ynh2
|
||||
; commit=a1a1134571e6f9d274b6772358bedfb4b775fe5a
|
||||
name=1.16.1~ynh1
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.16.1/syncthing-linux-arm-v1.16.1.tar.gz
|
||||
SOURCE_SUM=a9c45c6af18c179874faf2e4f00f3aeb5ba66add132bc72f460ea5a8be7ba749
|
||||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.17.0/syncthing-linux-arm-v1.17.0.tar.gz
|
||||
SOURCE_SUM=e53ebabdc0f0f0cb799efc5cc96644ee7d50c0d4a5ea051e33249d551c2ade74
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_FORMAT=tar.gz
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.16.1/syncthing-linux-arm64-v1.16.1.tar.gz
|
||||
SOURCE_SUM=6e1a4839fe24555cf2c7fc10e8eefae1e5810ffd4bbaccbaf63986b7c7e5e357
|
||||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.17.0/syncthing-linux-arm64-v1.17.0.tar.gz
|
||||
SOURCE_SUM=8a21c2c1351cea8d708726f91dcf94a2938c28339e01396ee0213c48d60b23b0
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_FORMAT=tar.gz
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.16.1/syncthing-linux-386-v1.16.1.tar.gz
|
||||
SOURCE_SUM=88852606067bdcdf8ac8e040df7c2c1fd80764ce5db9a26e3610ed92285dcf9b
|
||||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.17.0/syncthing-linux-386-v1.17.0.tar.gz
|
||||
SOURCE_SUM=09abe881be878fa759ff3924dc719d969a5cf71c3e6e834da70aa0afff1f8092
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_FORMAT=tar.gz
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.16.1/syncthing-linux-amd64-v1.16.1.tar.gz
|
||||
SOURCE_SUM=b4801f62699946e6c695c01f436ae8ebd6e5c1f741d1176515890d6c0adf143d
|
||||
SOURCE_URL=https://github.com/syncthing/syncthing/releases/download/v1.17.0/syncthing-linux-amd64-v1.17.0.tar.gz
|
||||
SOURCE_SUM=7b3e304761440f27137900f3f60c7f16e65de90cc05ae21bc6b046c14e591496
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_FORMAT=tar.gz
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
0
doc/.gitkeep
Normal file
0
doc/.gitkeep
Normal file
0
doc/DISCLAIMER.md
Normal file
0
doc/DISCLAIMER.md
Normal file
0
doc/screenshots/.gitkeep
Normal file
0
doc/screenshots/.gitkeep
Normal file
BIN
doc/screenshots/screenshot1.png
Normal file
BIN
doc/screenshots/screenshot1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
|
@ -6,8 +6,15 @@
|
|||
"en": "Continuous file synchronization program.",
|
||||
"fr": "Programme de synchronisation de fichiers en continu."
|
||||
},
|
||||
"version": "1.16.1~ynh1",
|
||||
"version": "1.17.0~ynh1",
|
||||
"url": "https://syncthing.net/",
|
||||
"upstream": {
|
||||
"license": "MPL-2.0",
|
||||
"website": "https://syncthing.net",
|
||||
|
||||
"userdoc": "https://docs.syncthing.net",
|
||||
"code": "https://github.com/syncthing/syncthing"
|
||||
},
|
||||
"license": "MPL-2.0",
|
||||
"maintainer": [
|
||||
{
|
||||
|
|
|
@ -15,7 +15,7 @@ source /usr/share/yunohost/helpers
|
|||
#=================================================
|
||||
|
||||
ynh_clean_setup () {
|
||||
ynh_clean_check_starting
|
||||
true
|
||||
}
|
||||
# Exit if an error occurs during the execution of the script
|
||||
ynh_abort_if_errors
|
||||
|
@ -42,6 +42,12 @@ ynh_print_info --message="Declaring files to be backed up..."
|
|||
|
||||
ynh_backup --src_path="$final_path"
|
||||
|
||||
#=================================================
|
||||
# BACKUP THE DATA DIRECTORY
|
||||
#=================================================
|
||||
|
||||
ynh_backup --src_path="$sync_home" --is_big
|
||||
|
||||
#=================================================
|
||||
# BACKUP THE NGINX CONFIGURATION
|
||||
#=================================================
|
||||
|
@ -56,13 +62,6 @@ ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
|
|||
|
||||
ynh_backup --src_path="/etc/systemd/system/$app.service"
|
||||
|
||||
#=================================================
|
||||
# BACKUP THE DATA DIRECTORY
|
||||
#=================================================
|
||||
ynh_print_info --message="Backing up data directory..."
|
||||
|
||||
ynh_backup --src_path="$sync_home" --is_big
|
||||
|
||||
#=================================================
|
||||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
|
|
@ -93,7 +93,7 @@ then
|
|||
domain="$old_domain"
|
||||
path_url="$new_path"
|
||||
# Create a dedicated NGINX config
|
||||
ynh_add_nginx_config "gui_port"
|
||||
ynh_add_nginx_config
|
||||
fi
|
||||
|
||||
# Change the domain for NGINX
|
||||
|
|
|
@ -30,9 +30,6 @@ admin=$YNH_APP_ARG_ADMIN
|
|||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
# Configure sync folder
|
||||
sync_home="/home/yunohost.app/$app"
|
||||
|
||||
#=================================================
|
||||
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
|
||||
#=================================================
|
||||
|
@ -52,7 +49,6 @@ ynh_script_progression --message="Storing installation settings..."
|
|||
ynh_app_setting_set --app=$app --key=domain --value=$domain
|
||||
ynh_app_setting_set --app=$app --key=path --value=$path_url
|
||||
ynh_app_setting_set --app=$app --key=admin --value=$admin
|
||||
ynh_app_setting_set --app=$app --key=sync_home --value=$sync_home
|
||||
|
||||
#=================================================
|
||||
# STANDARD MODIFICATIONS
|
||||
|
@ -78,7 +74,7 @@ ynh_exec_warn_less yunohost firewall allow TCP $sync_port
|
|||
ynh_script_progression --message="Configuring system user..."
|
||||
|
||||
# Create a system user
|
||||
ynh_system_user_create --username=$app --home_dir="$final_path"
|
||||
ynh_system_user_create --username=$app --home_dir=$final_path
|
||||
|
||||
#=================================================
|
||||
# DOWNLOAD, CHECK AND UNPACK SOURCE
|
||||
|
@ -99,7 +95,7 @@ chown -R $app:$app "$final_path"
|
|||
ynh_script_progression --message="Configuring NGINX web server..."
|
||||
|
||||
# Create a dedicated NGINX config
|
||||
ynh_add_nginx_config "gui_port"
|
||||
ynh_add_nginx_config
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC SETUP
|
||||
|
@ -108,8 +104,11 @@ ynh_add_nginx_config "gui_port"
|
|||
#=================================================
|
||||
ynh_script_progression --message="Creating sync directory..."
|
||||
|
||||
# Make directories and set rights
|
||||
mkdir -p "$sync_home"
|
||||
sync_home=/home/yunohost.app/$app
|
||||
ynh_app_setting_set --app=$app --key=sync_home --value=$sync_home
|
||||
|
||||
mkdir -p $sync_home
|
||||
|
||||
chmod 750 "$sync_home"
|
||||
chmod -R o-rwx "$sync_home"
|
||||
chown -R $app:$app "$sync_home"
|
||||
|
@ -147,12 +146,6 @@ ynh_replace_string --match_string="<listenAddress>tcp://default</listenAddress>"
|
|||
|
||||
ynh_systemd_action --service_name=$app --action="stop" --log_path=systemd
|
||||
|
||||
#=================================================
|
||||
# STORE THE CONFIG FILE CHECKSUM
|
||||
#=================================================
|
||||
ynh_script_progression --message="Storing the config file checksum..."
|
||||
|
||||
# Calculate and store the config file checksum into the app settings
|
||||
ynh_store_file_checksum --file="$config_file"
|
||||
|
||||
#=================================================
|
||||
|
|
|
@ -79,22 +79,21 @@ chmod 750 "$final_path"
|
|||
chmod -R o-rwx "$final_path"
|
||||
chown -R $app:$app "$final_path"
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC RESTORATION
|
||||
#=================================================
|
||||
# RECREATE SYNC DIRECTORY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Recreating sync directory..."
|
||||
|
||||
# Use --not_mandatory for the data directory, because if the backup has been made with BACKUP_CORE_ONLY, there's no data into the backup.
|
||||
ynh_restore_file --origin_path="$sync_home" --not_mandatory
|
||||
|
||||
# Make directories and set rights
|
||||
mkdir -p "$sync_home"
|
||||
mkdir -p $sync_home
|
||||
|
||||
chmod 750 "$sync_home"
|
||||
chmod -R o-rwx "$sync_home"
|
||||
chown -R $app:$app "$sync_home"
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC RESTORATION
|
||||
#=================================================
|
||||
# RESTORE SYSTEMD
|
||||
#=================================================
|
||||
|
|
|
@ -32,18 +32,34 @@ ynh_script_progression --message="Checking version..."
|
|||
|
||||
upgrade_type=$(ynh_check_app_version_changed)
|
||||
|
||||
#=================================================
|
||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||
#=================================================
|
||||
ynh_script_progression --message="Backing up the app before upgrading (may take a while)..."
|
||||
|
||||
# Backup the current version of the app
|
||||
ynh_backup_before_upgrade
|
||||
ynh_clean_setup () {
|
||||
# Restore it if the upgrade fails
|
||||
ynh_restore_upgradebackup
|
||||
}
|
||||
# Exit if an error occurs during the execution of the script
|
||||
ynh_abort_if_errors
|
||||
|
||||
#=================================================
|
||||
# STANDARD UPGRADE STEPS
|
||||
#=================================================
|
||||
# STOP SYSTEMD SERVICE
|
||||
#=================================================
|
||||
ynh_script_progression --message="Stopping a systemd service..."
|
||||
|
||||
ynh_systemd_action --service_name=$app --action="stop" --log_path=systemd
|
||||
|
||||
#=================================================
|
||||
# ENSURE DOWNWARD COMPATIBILITY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Ensuring downward compatibility..."
|
||||
|
||||
# Cleaning legacy permissions
|
||||
if ynh_legacy_permissions_exists; then
|
||||
ynh_legacy_permissions_delete_all
|
||||
|
||||
ynh_app_setting_delete --app=$app --key=is_public
|
||||
fi
|
||||
|
||||
# If gui_port doesn't exist, create it
|
||||
if [ -z $gui_port ]; then
|
||||
OLD_SYNCHOME="/home/yunohost.app/syncthing"
|
||||
|
@ -85,40 +101,13 @@ if [ -z $gui_port ]; then
|
|||
|
||||
ynh_remove_app_dependencies
|
||||
|
||||
else
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP
|
||||
#=================================================
|
||||
ynh_script_progression --message="Backing up the app before upgrading (may take a while)..."
|
||||
|
||||
# Inform the backup/restore process that it should not save the data directory
|
||||
# Use only for the previous backup script that doesn't set 'is_big'
|
||||
ynh_app_setting_set --app=$app --key=backup_core_only --value=1
|
||||
|
||||
# Backup the current version of the app
|
||||
ynh_backup_before_upgrade
|
||||
|
||||
# Remove the option backup_core_only after the backup.
|
||||
ynh_app_setting_delete --app=$app --key=backup_core_only
|
||||
|
||||
ynh_clean_setup () {
|
||||
ynh_clean_check_starting
|
||||
# Restore it if the upgrade fails
|
||||
ynh_restore_upgradebackup
|
||||
}
|
||||
# Exit if an error occurs during the execution of the script
|
||||
ynh_abort_if_errors
|
||||
|
||||
#=================================================
|
||||
# STANDARD UPGRADE STEPS
|
||||
#=================================================
|
||||
# STOP SYSTEMD SERVICE
|
||||
#=================================================
|
||||
ynh_script_progression --message="Stopping a systemd service..."
|
||||
|
||||
ynh_systemd_action --service_name=$app --action="stop" --log_path=systemd
|
||||
# Cleaning legacy permissions
|
||||
if ynh_legacy_permissions_exists; then
|
||||
ynh_legacy_permissions_delete_all
|
||||
|
||||
ynh_app_setting_delete --app=$app --key=is_public
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
|
@ -127,7 +116,7 @@ fi
|
|||
ynh_script_progression --message="Making sure dedicated system user exists..."
|
||||
|
||||
# Create a dedicated user (if not existing)
|
||||
ynh_system_user_create --username=$app --home_dir="$final_path"
|
||||
ynh_system_user_create --username=$app --home_dir=$final_path
|
||||
|
||||
#=================================================
|
||||
# DOWNLOAD, CHECK AND UNPACK SOURCE
|
||||
|
@ -151,7 +140,7 @@ chown -R $app:$app "$final_path"
|
|||
ynh_script_progression --message="Upgrading NGINX web server configuration..."
|
||||
|
||||
# Create a dedicated NGINX config
|
||||
ynh_add_nginx_config "gui_port"
|
||||
ynh_add_nginx_config
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC UPGRADE
|
||||
|
@ -173,9 +162,7 @@ ynh_script_progression --message="Updating a config file..."
|
|||
|
||||
config_file="$final_path/.config/syncthing/config.xml"
|
||||
|
||||
ynh_backup_if_checksum_is_different --file="$config_file"
|
||||
# Recalculate and store the checksum of the file for the next upgrade.
|
||||
ynh_store_file_checksum --file="$config_file"
|
||||
ynh_add_config --template="../conf/config.xml" --destination="$config_file"
|
||||
|
||||
chmod 400 "$config_file"
|
||||
chown $app:$app "$config_file"
|
||||
|
|
Loading…
Add table
Reference in a new issue