mirror of
https://github.com/YunoHost-Apps/minidlna_ynh.git
synced 2024-09-03 19:36:34 +02:00
Update to last standard
This commit is contained in:
parent
438fbf903e
commit
a6b7cb708c
15 changed files with 131 additions and 144 deletions
|
@ -12,7 +12,7 @@ If you don't have YunoHost, please see [here](https://yunohost.org/#/install) to
|
|||
|
||||
MiniDLNA is a simple media server software, with the aim of being fully compliant with DLNA/UPnP-AV clients.
|
||||
|
||||
**Shipped version:** Debian repositories versions. Currently 1.1.2 and 1.1.6
|
||||
**Shipped version:** Debian repositories versions. Currently 1.1.6 and 1.2.1
|
||||
|
||||
## Screenshots
|
||||
|
||||
|
@ -39,9 +39,9 @@ Not relevant.
|
|||
|
||||
#### Supported architectures
|
||||
|
||||
* x86-64b - [](https://ci-apps.yunohost.org/ci/apps/minidlna/)
|
||||
* ARMv8-A - [](https://ci-apps-arm.yunohost.org/ci/apps/minidlna/)
|
||||
* Jessie x86-64b - [](https://ci-stretch.nohost.me/ci/apps/minidlna/)
|
||||
* x86-64b - [](https://ci-apps.yunohost.org/ci/apps/minidlna/)
|
||||
* ARMv8-A - [](https://ci-apps-arm.yunohost.org/ci/apps/minidlna/)
|
||||
* Jessie x86-64b - [](https://ci-stretch.nohost.me/ci/apps/minidlna/)
|
||||
|
||||
## Limitations
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ Si vous n'avez pas YunoHost, merci de regarder [ici](https://yunohost.org/#/inst
|
|||
|
||||
MiniDLNA est un simple serveur multimédia, dont le but est d'être entièrement compatible avec les clients DLNA/UPnP-AV.
|
||||
|
||||
**Version embarquée:** Versions des dépôts Debian. Actuellement 1.1.2 et 1.1.6
|
||||
**Version embarquée:** Versions des dépôts Debian. Actuellement 1.1.6 et 1.2.1
|
||||
|
||||
## Captures d'écran
|
||||
|
||||
|
@ -39,9 +39,9 @@ Non applicable.
|
|||
|
||||
#### Architectures supportées.
|
||||
|
||||
* x86-64b - [](https://ci-apps.yunohost.org/ci/apps/minidlna/)
|
||||
* ARMv8-A - [](https://ci-apps-arm.yunohost.org/ci/apps/minidlna/)
|
||||
* Jessie x86-64b - [](https://ci-stretch.nohost.me/ci/apps/minidlna/)
|
||||
* x86-64b - [](https://ci-apps.yunohost.org/ci/apps/minidlna/)
|
||||
* ARMv8-A - [](https://ci-apps-arm.yunohost.org/ci/apps/minidlna/)
|
||||
* Jessie x86-64b - [](https://ci-stretch.nohost.me/ci/apps/minidlna/)
|
||||
|
||||
## Limitations
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@ It allows to easily share multimedia files with any compatible devices present o
|
|||
Minidlna does not have a graphical interface, but does not require any special configuration.
|
||||
|
||||
### What multimedia files are shared?
|
||||
Minidlna sharing the folder /home/yunohost.multimedia/share, which is common to each user in /home/$USER/Multimedia/Share.
|
||||
[More information about multimedia files here.](Https://github.com/maniackcrudelis/yunohost.multimedia)
|
||||
Minidlna is sharing the folder /home/yunohost.multimedia/share, which is common to each user in /home/$USER/Multimedia/Share.
|
||||
[More information about multimedia files here.](https://github.com/YunoHost-Apps/yunohost.multimedia)
|
||||
|
||||
If [transmission](https://github.com/Kloadut/transmission_ynh) is installed, the downloaded media will be available in dlna.
|
||||
If [transmission](https://github.com/YunoHost-Apps/transmission_ynh) is installed, the downloaded media will be available in dlna.
|
||||
|
||||
### How to view and play media files shared by minidlna?
|
||||
To view and play media files, all you need is a compatible client DLNA/UPNP.
|
||||
|
@ -17,7 +17,7 @@ To view and play media files, all you need is a compatible client DLNA/UPNP.
|
|||
The majority of set-top boxes provided by ISPs are DLNA compatible, simply look for sources of external media.
|
||||
This is also true for the latest generation game consoles connected to internet.
|
||||
|
||||
Some TV and blu-ray player is also DLNA compatible.
|
||||
Some TV and blu-ray player are also DLNA compatible.
|
||||
|
||||
In any case, it is generally sufficient to seek external sources, USB etc, to find the DLNA server, displayed under the name **Yunohost DLNA**.
|
||||
|
||||
|
|
|
@ -7,9 +7,9 @@ Minidlna ne dispose pas d'une interface graphique, mais ne nécessite pas de con
|
|||
|
||||
### Quels fichiers multimédias sont partagés?
|
||||
Minidlna partage le dossier /home/yunohost.multimedia/share, qui est commun à chaque utilisateur dans le dossier /home/$USER/Multimedia/Share.
|
||||
[Plus d'informations sur les dossiers multimedia ici.](https://github.com/maniackcrudelis/yunohost.multimedia)
|
||||
[Plus d'informations sur les dossiers multimedia ici.](https://github.com/YunoHost-Apps/yunohost.multimedia)
|
||||
|
||||
Si [transmission](https://github.com/Kloadut/transmission_ynh) est installé, les médias téléchargés seront disponible en dlna.
|
||||
Si [transmission](https://github.com/YunoHost-Apps/transmission_ynh) est installé, les médias téléchargés seront disponible en dlna.
|
||||
|
||||
### Comment consulter et lire les fichiers multimédias partagés par minidlna?
|
||||
Pour voir et lire les fichiers multimédias, il suffit de disposer d'un client compatible DLNA/UPNP.
|
||||
|
|
|
@ -29,17 +29,7 @@
|
|||
port_already_use=0
|
||||
change_url=0
|
||||
;;; Levels
|
||||
Level 1=auto
|
||||
Level 2=auto
|
||||
Level 3=auto
|
||||
# Level 4: Pas de gestion des utilisateurs
|
||||
Level 4=na
|
||||
Level 5=auto
|
||||
Level 6=auto
|
||||
Level 7=auto
|
||||
Level 8=0
|
||||
Level 9=0
|
||||
Level 10=0
|
||||
;;; Options
|
||||
Email=
|
||||
Notification=down
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
"en": "Light DLNA server to share media files over the LAN",
|
||||
"fr": "Serveur DLNA léger pour partager les fichiers multimédia sur le réseau local"
|
||||
},
|
||||
"version": "1.0~ynh5",
|
||||
"version": "1.0~ynh6",
|
||||
"url": "http://minidlna.sourceforge.net/",
|
||||
"license": "GPL-2.0",
|
||||
"maintainer": {
|
||||
|
@ -14,7 +14,7 @@
|
|||
"email": "maniackc_dev@crudelis.fr"
|
||||
},
|
||||
"requirements": {
|
||||
"yunohost": ">= 3.4"
|
||||
"yunohost": ">= 3.5"
|
||||
},
|
||||
"multi_instance": false,
|
||||
"services": [],
|
||||
|
|
|
@ -12,7 +12,6 @@ source /usr/share/yunohost/helpers
|
|||
#=================================================
|
||||
# RETRIEVE ARGUMENTS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Retrieve arguments from the manifest"
|
||||
|
||||
app=${YNH_APP_INSTANCE_NAME:-$YNH_APP_ID}
|
||||
|
||||
|
@ -26,7 +25,7 @@ app=${YNH_APP_INSTANCE_NAME:-$YNH_APP_ID}
|
|||
|
||||
if [ -e /etc/apt/sources.list.d/minidlna.list ]
|
||||
then
|
||||
ynh_die "You are already using the version from backports repository." 0
|
||||
ynh_die --message="You are already using the version from backports repository." --ret_code=0
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
|
@ -34,16 +33,16 @@ fi
|
|||
#=================================================
|
||||
# RE-INSTALL MINIDLNA FROM BACKPORTS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Re-install minidlna from backports" --weight=9
|
||||
ynh_script_progression --message="Re-installing minidlna from backports..." --weight=9
|
||||
|
||||
# Remove the current version of minidlna
|
||||
ynh_package_remove minidlna
|
||||
|
||||
# Then install the version from backports
|
||||
codename=$(ynh_debian_release)
|
||||
test -z "$codename" && (ynh_die "codename empty")
|
||||
test -z "$codename" && (ynh_die --message="codename empty")
|
||||
|
||||
ynh_replace_string "__CODENAME__" "$codename" /etc/yunohost/apps/$app/conf/minidlna.list
|
||||
ynh_replace_string --match_string="__CODENAME__" --replace_string="$codename" --target_file=/etc/yunohost/apps/$app/conf/minidlna.list
|
||||
cp -a /etc/yunohost/apps/$app/conf/minidlna.list /etc/apt/sources.list.d/
|
||||
ynh_apt update
|
||||
ynh_package_install -t $codename-backports minidlna
|
||||
|
|
|
@ -23,7 +23,7 @@ source /usr/share/yunohost/helpers
|
|||
|
||||
if [ ! -e /etc/apt/sources.list.d/minidlna.list ]
|
||||
then
|
||||
ynh_die "You are already using the version from the stable repository." 0
|
||||
ynh_die --message="You are already using the version from the stable repository." --ret_code=0
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
|
@ -31,11 +31,11 @@ fi
|
|||
#=================================================
|
||||
# RE-INSTALL MINIDLNA FROM STABLE
|
||||
#=================================================
|
||||
ynh_script_progression --message="Re-install minidlna from stable" --weight=9
|
||||
ynh_script_progression --message="Re-installing minidlna from stable..." --weight=9
|
||||
|
||||
# Remove the current version of minidlna
|
||||
ynh_package_remove minidlna
|
||||
ynh_secure_remove "/etc/apt/sources.list.d/minidlna.list"
|
||||
ynh_secure_remove --file="/etc/apt/sources.list.d/minidlna.list"
|
||||
|
||||
ynh_apt update
|
||||
ynh_package_install minidlna
|
||||
|
|
|
@ -12,7 +12,6 @@ source /usr/share/yunohost/helpers
|
|||
#=================================================
|
||||
# RETRIEVE ARGUMENTS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Retrieve arguments from the manifest"
|
||||
|
||||
app=${YNH_APP_INSTANCE_NAME:-$YNH_APP_ID}
|
||||
|
||||
|
@ -29,13 +28,13 @@ app=${YNH_APP_INSTANCE_NAME:-$YNH_APP_ID}
|
|||
#=================================================
|
||||
# RESET THE DATABASE
|
||||
#=================================================
|
||||
ynh_script_progression --message="Reset the database" --weight=9
|
||||
ynh_script_progression --message="Resetting the database..." --weight=9
|
||||
|
||||
# Get the last value for `db_dir` in the config file of minidlna
|
||||
db_directory=$(tac /etc/minidlna.conf | grep --max-count=1 "db_dir=" | cut -d'=' -f 2)
|
||||
|
||||
ynh_systemd_action --action=stop --service_name=minidlna
|
||||
ynh_secure_remove "$db_directory/files.db"
|
||||
ynh_secure_remove --file="$db_directory/files.db"
|
||||
ynh_systemd_action --action=start --service_name=minidlna
|
||||
|
||||
#=================================================
|
||||
|
|
|
@ -19,11 +19,11 @@ ynh_abort_if_errors
|
|||
#=================================================
|
||||
# LOAD SETTINGS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Load settings"
|
||||
ynh_script_progression --message="Loading installation settings..."
|
||||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
version=$(ynh_app_setting_get $app version)
|
||||
version=$(ynh_app_setting_get --app=$app --key=version)
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC BACKUP
|
||||
|
@ -33,26 +33,26 @@ version=$(ynh_app_setting_get $app version)
|
|||
|
||||
if [ $version = "B" ]
|
||||
then
|
||||
ynh_script_progression --message="Backup of the APT source"
|
||||
ynh_backup "/etc/apt/sources.list.d/minidlna.list"
|
||||
ynh_script_progression --message="Backing up the APT source file..."
|
||||
ynh_backup --src_path="/etc/apt/sources.list.d/minidlna.list"
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# BACKUP OF INOTIFY'S CONFIG
|
||||
#=================================================
|
||||
ynh_script_progression --message="Backup of inotify's config"
|
||||
ynh_script_progression --message="Backing up inotify's config..."
|
||||
|
||||
ynh_backup "/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
ynh_backup --src_path="/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
|
||||
#=================================================
|
||||
# BACKUP OF MINIDLNA CONFIGURATION
|
||||
#=================================================
|
||||
ynh_script_progression --message="Backup of minidlna configuration"
|
||||
ynh_script_progression --message="Backing up minidlna configuration..."
|
||||
|
||||
ynh_backup "/etc/minidlna.conf"
|
||||
ynh_backup --src_path="/etc/minidlna.conf"
|
||||
|
||||
#=================================================
|
||||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
||||
ynh_script_progression --message="Backup completed" --last
|
||||
ynh_script_progression --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." --last
|
||||
|
|
|
@ -47,13 +47,11 @@ old_friendly_name="$(get_config_value friendly_name)"
|
|||
friendly_name="${YNH_CONFIG_MAIN_MINIDLNA_CONFIGURATION_FRIENDLY_NAME:-$old_friendly_name}"
|
||||
|
||||
# Overwrite settings.json file
|
||||
old_overwrite_settings="$(ynh_app_setting_get $app overwrite_settings)"
|
||||
old_overwrite_settings=$(bool_to_true_false $old_overwrite_settings)
|
||||
old_overwrite_settings="$(ynh_app_setting_get --app=$app --key=overwrite_settings)"
|
||||
overwrite_settings="${YNH_CONFIG_MAIN_OVERWRITE_FILES_OVERWRITE_SETTINGS:-$old_overwrite_settings}"
|
||||
|
||||
# Type of admin mail configuration
|
||||
old_admin_mail_html="$(ynh_app_setting_get $app admin_mail_html)"
|
||||
old_admin_mail_html=$(bool_to_true_false $old_admin_mail_html)
|
||||
old_admin_mail_html="$(ynh_app_setting_get --app=$app --key=admin_mail_html)"
|
||||
admin_mail_html="${YNH_CONFIG_MAIN_GLOBAL_CONFIG_EMAIL_TYPE:-$old_admin_mail_html}"
|
||||
|
||||
#=================================================
|
||||
|
@ -75,12 +73,12 @@ show_config() {
|
|||
elif [ "$root_container" = "V" ]; then
|
||||
root_container="Video"
|
||||
fi
|
||||
echo "YNH_CONFIG_MAIN_MINIDLNA_CONFIGURATION_ROOT_CONTAINER=$root_container"
|
||||
echo "YNH_CONFIG_MAIN_MINIDLNA_CONFIGURATION_FRIENDLY_NAME=$friendly_name"
|
||||
ynh_return "YNH_CONFIG_MAIN_MINIDLNA_CONFIGURATION_ROOT_CONTAINER=$root_container"
|
||||
ynh_return "YNH_CONFIG_MAIN_MINIDLNA_CONFIGURATION_FRIENDLY_NAME=$friendly_name"
|
||||
|
||||
echo "YNH_CONFIG_MAIN_OVERWRITE_FILES_OVERWRITE_SETTINGS=$overwrite_settings"
|
||||
ynh_return "YNH_CONFIG_MAIN_OVERWRITE_FILES_OVERWRITE_SETTINGS=$overwrite_settings"
|
||||
|
||||
echo "YNH_CONFIG_MAIN_GLOBAL_CONFIG_EMAIL_TYPE=$admin_mail_html"
|
||||
ynh_return "YNH_CONFIG_MAIN_GLOBAL_CONFIG_EMAIL_TYPE=$admin_mail_html"
|
||||
}
|
||||
|
||||
#=================================================
|
||||
|
@ -105,16 +103,16 @@ apply_config() {
|
|||
fi
|
||||
if [ "$root_container" != "$old_root_container" ]
|
||||
then
|
||||
ynh_replace_string "root_container=.*" "root_container=$root_container" "$config_file"
|
||||
ynh_app_setting_set $app root_container "$root_container"
|
||||
ynh_replace_string --match_string="root_container=.*" --replace_string="root_container=$root_container" --target_file="$config_file"
|
||||
ynh_app_setting_set --app=$app --key=root_container --value="$root_container"
|
||||
restart_minidlna=1
|
||||
fi
|
||||
|
||||
# friendly_name
|
||||
if [ "$friendly_name" != "$old_friendly_name" ]
|
||||
then
|
||||
ynh_replace_string "friendly_name=.*" "friendly_name=$friendly_name" "$config_file"
|
||||
ynh_app_setting_set $app friendly_name "$friendly_name"
|
||||
ynh_replace_string --match_string="friendly_name=.*" --replace_string="friendly_name=$friendly_name" --target_file="$config_file"
|
||||
ynh_app_setting_set --app=$app --key=friendly_name --value="$friendly_name"
|
||||
restart_minidlna=1
|
||||
fi
|
||||
|
||||
|
@ -124,12 +122,10 @@ apply_config() {
|
|||
fi
|
||||
|
||||
# Set overwrite_settings
|
||||
overwrite_settings=$(bool_to_01 $overwrite_settings)
|
||||
ynh_app_setting_set $app overwrite_settings "$overwrite_settings"
|
||||
ynh_app_setting_set --app=$app --key=overwrite_settings --value="$overwrite_settings"
|
||||
|
||||
# Set admin_mail_html
|
||||
admin_mail_html=$(bool_to_01 $admin_mail_html)
|
||||
ynh_app_setting_set $app admin_mail_html "$admin_mail_html"
|
||||
ynh_app_setting_set --app=$app --key=admin_mail_html --value="$admin_mail_html"
|
||||
}
|
||||
|
||||
#=================================================
|
||||
|
|
|
@ -19,49 +19,49 @@ ynh_abort_if_errors
|
|||
#=================================================
|
||||
# RETRIEVE ARGUMENTS FROM THE MANIFEST
|
||||
#=================================================
|
||||
ynh_script_progression --message="Retrieve arguments from the manifest"
|
||||
|
||||
version="$YNH_APP_ARG_VERSION"
|
||||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
#=================================================
|
||||
# STORE SETTINGS FROM MANIFEST
|
||||
#=================================================
|
||||
ynh_script_progression --message="Store settings from manifest" --weight=2
|
||||
ynh_script_progression --message="Storing installation settings..." --weight=2
|
||||
|
||||
ynh_app_setting_set $app version ${version:0:1}
|
||||
ynh_app_setting_set --app=$app --key=version --value=${version:0:1}
|
||||
|
||||
ynh_app_setting_set $app overwrite_settings "1"
|
||||
ynh_app_setting_set $app admin_mail_html "1"
|
||||
ynh_app_setting_set --app=$app --key=overwrite_settings --value=1
|
||||
ynh_app_setting_set --app=$app --key=admin_mail_html --value=1
|
||||
|
||||
#=================================================
|
||||
# CHECK DEBIAN'S CODENAME
|
||||
#=================================================
|
||||
ynh_script_progression --message="Check debian's codename"
|
||||
ynh_script_progression --message="Checking debian's codename..."
|
||||
|
||||
codename=$(ynh_debian_release)
|
||||
test -z "$codename" && (ynh_die "codename empty")
|
||||
test -z "$codename" && (ynh_die --message="codename empty")
|
||||
|
||||
#=================================================
|
||||
# STANDARD MODIFICATIONS
|
||||
#=================================================
|
||||
# FIND AND OPEN A PORT
|
||||
#=================================================
|
||||
ynh_script_progression --message="Find and open a port" --weight=15
|
||||
ynh_script_progression --message="Configuring firewall..." --weight=15
|
||||
|
||||
# Find a free port
|
||||
port=$(ynh_find_port 48200)
|
||||
port=$(ynh_find_port --port=48200)
|
||||
|
||||
# Open ports
|
||||
ynh_exec_fully_quiet yunohost firewall allow --no-upnp TCP $port
|
||||
# Discovery Protocol SSDP for UPNP.
|
||||
ynh_exec_fully_quiet yunohost firewall allow --no-upnp UDP 1900
|
||||
ynh_app_setting_set $app port $port
|
||||
ynh_app_setting_set --app=$app --key=port --value=$port
|
||||
|
||||
#=================================================
|
||||
# CREATE YUNOHOST.MULTIMEDIA DIRECTORY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Create yunohost.multimedia directory" --weight=8
|
||||
ynh_script_progression --message="Creating yunohost.multimedia directory..." --weight=8
|
||||
|
||||
ynh_multimedia_build_main_dir
|
||||
|
||||
|
@ -70,12 +70,12 @@ ynh_multimedia_build_main_dir
|
|||
#=================================================
|
||||
# INSTALL MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Install minidlna" --weight=45
|
||||
ynh_script_progression --message="Installing minidlna..." --weight=45
|
||||
|
||||
if [ ${version:0:1} = "B" ]
|
||||
then
|
||||
# Install the backport version. (If you have issues with the standard version from the stable repository)
|
||||
ynh_replace_string "__CODENAME__" "$codename" ../conf/minidlna.list
|
||||
ynh_replace_string --match_string="__CODENAME__" --replace_string="$codename" --target_file=../conf/minidlna.list
|
||||
cp -a ../conf/minidlna.list /etc/apt/sources.list.d/
|
||||
ynh_apt update
|
||||
ynh_package_install -t $codename-backports minidlna
|
||||
|
@ -84,17 +84,18 @@ else
|
|||
ynh_apt update
|
||||
ynh_package_install minidlna
|
||||
fi
|
||||
ynh_app_setting_set $app version ${version:0:1}
|
||||
ynh_app_setting_set --app=$app --key=version --value=${version:0:1}
|
||||
|
||||
#=================================================
|
||||
# INCREASE INOTIFY'S LIMITS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Increase inotify's limits"
|
||||
ynh_script_progression --message="Increasing inotify's limits..."
|
||||
|
||||
# Increase the maximum number of files inotify can monitor.
|
||||
cp -a ../conf/90-inotify_minidlna.conf /etc/sysctl.d/
|
||||
# Then, reload the kernel configuration.
|
||||
if ! IS_PACKAGE_CHECK; then
|
||||
if ! IS_PACKAGE_CHECK # LXC doesn't allow sysctl to play with kernel options.
|
||||
then
|
||||
sysctl -p /etc/sysctl.d/90-inotify_minidlna.conf
|
||||
fi
|
||||
|
||||
|
@ -107,25 +108,25 @@ yunohost service add minidlna --log "/var/log/minidlna.log"
|
|||
#=================================================
|
||||
# CONFIGURE MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Configure MiniDLNA" --weight=2
|
||||
ynh_script_progression --message="Configuring MiniDLNA..." --weight=2
|
||||
|
||||
ynh_replace_string "^#*media_dir=.*" "media_dir=/home/yunohost.multimedia/share" /etc/minidlna.conf
|
||||
ynh_replace_string "^#*port=.*" "port=$port" /etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*media_dir=.*" --replace_string="media_dir=/home/yunohost.multimedia/share" --target_file=/etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*port=.*" --replace_string="port=$port" --target_file=/etc/minidlna.conf
|
||||
friendly_name="Yunohost DLNA"
|
||||
ynh_app_setting_set $app friendly_name "$friendly_name"
|
||||
ynh_replace_string "^#*friendly_name=.*" "friendly_name=$friendly_name" /etc/minidlna.conf
|
||||
ynh_app_setting_set --app=$app --key=friendly_name --value="$friendly_name"
|
||||
ynh_replace_string --match_string="^#*friendly_name=.*" --replace_string="friendly_name=$friendly_name" --target_file=/etc/minidlna.conf
|
||||
root_container="B"
|
||||
ynh_replace_string "^#*root_container=.*" "root_container=$root_container" /etc/minidlna.conf
|
||||
ynh_app_setting_set $app root_container "$root_container"
|
||||
ynh_replace_string "^#wide_links=.*" "wide_links=yes" /etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*root_container=.*" --replace_string="root_container=$root_container" --target_file=/etc/minidlna.conf
|
||||
ynh_app_setting_set --app=$app --key=root_container --value="$root_container"
|
||||
ynh_replace_string --match_string="^#wide_links=.*" --replace_string="wide_links=yes" --target_file=/etc/minidlna.conf
|
||||
|
||||
# Calculate and store the config file checksum into the app settings
|
||||
ynh_store_file_checksum "/etc/minidlna.conf"
|
||||
ynh_store_file_checksum --file="/etc/minidlna.conf"
|
||||
|
||||
#=================================================
|
||||
# RESTART MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Restart MiniDLNA" --weight=4
|
||||
ynh_script_progression --message="Restarting MiniDLNA..." --weight=4
|
||||
|
||||
ynh_systemd_action --action=restart --service_name=minidlna
|
||||
|
||||
|
@ -147,10 +148,10 @@ You can also find some specific actions for this app by using the experimental _
|
|||
|
||||
If you're facing an issue or want to improve this app, please open a new issue in this __URL_TAG1__project__URL_TAG2__https://github.com/YunoHost-Apps/minidlna_ynh__URL_TAG3__." > mail_to_send
|
||||
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type="install"
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type=install
|
||||
|
||||
#=================================================
|
||||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
||||
ynh_script_progression --message="Installation completed" --last
|
||||
ynh_script_progression --message="Installation of $app completed" --last
|
||||
|
|
|
@ -12,11 +12,11 @@ source /usr/share/yunohost/helpers
|
|||
#=================================================
|
||||
# LOAD SETTINGS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Load settings" --weight=2
|
||||
ynh_script_progression --message="Loading installation settings..." --weight=2
|
||||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
port=$(ynh_app_setting_get $app port)
|
||||
port=$(ynh_app_setting_get --app=$app --key=port)
|
||||
|
||||
#=================================================
|
||||
# STANDARD REMOVE
|
||||
|
@ -27,14 +27,14 @@ port=$(ynh_app_setting_get $app port)
|
|||
# Check if the service is declared in YunoHost
|
||||
if ynh_exec_fully_quiet yunohost service status minidlna
|
||||
then
|
||||
ynh_print_info "Remove minidlna service" >&2
|
||||
ynh_script_progression --message="Removing $app service..."
|
||||
yunohost service remove minidlna
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# CLOSE PORTS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Close ports" --weight=15
|
||||
ynh_script_progression --message="Closing ports $port and 1900..." --weight=15
|
||||
|
||||
ynh_exec_fully_quiet yunohost firewall disallow TCP $port
|
||||
ynh_exec_fully_quiet yunohost firewall disallow UDP 1900
|
||||
|
@ -44,21 +44,21 @@ ynh_exec_fully_quiet yunohost firewall disallow UDP 1900
|
|||
#=================================================
|
||||
# REMOVE MINIDNLA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Remove MiniDLNA" --weight=6
|
||||
ynh_script_progression --message="Removing MiniDLNA..." --weight=6
|
||||
|
||||
ynh_apt purge minidlna
|
||||
ynh_secure_remove "/etc/apt/sources.list.d/minidlna.list"
|
||||
ynh_secure_remove --file="/etc/apt/sources.list.d/minidlna.list"
|
||||
|
||||
#=================================================
|
||||
# REMOVE INOTIFY'S CONFIG
|
||||
#=================================================
|
||||
ynh_script_progression --message="Remove inotify's config"
|
||||
ynh_script_progression --message="Removing inotify's config..."
|
||||
|
||||
if [ -e "/etc/sysctl.d/90-inotify_minidlna.conf" ]; then
|
||||
ynh_print_info "Delete kernel config" >&2
|
||||
ynh_secure_remove "/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
ynh_secure_remove --file="/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
# Reload the kernel configuration.
|
||||
if ! IS_PACKAGE_CHECK; then
|
||||
if ! IS_PACKAGE_CHECK # LXC doesn't allow sysctl to play with kernel options.
|
||||
then
|
||||
sysctl -p /etc/sysctl.d/90-inotify_minidlna.conf
|
||||
fi
|
||||
fi
|
||||
|
@ -67,4 +67,4 @@ fi
|
|||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
||||
ynh_script_progression --message="Deletion completed" --last
|
||||
ynh_script_progression --message="Removal of $app completed" --last
|
||||
|
|
|
@ -19,19 +19,19 @@ ynh_abort_if_errors
|
|||
#=================================================
|
||||
# LOAD SETTINGS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Load settings"
|
||||
ynh_script_progression --message="Loading settings..."
|
||||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
version=$(ynh_app_setting_get $app version)
|
||||
port=$(ynh_app_setting_get $app port)
|
||||
version=$(ynh_app_setting_get --app=$app --key=version)
|
||||
port=$(ynh_app_setting_get --app=$app --key=port)
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC RESTORE
|
||||
#=================================================
|
||||
# OPEN PORTS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Open ports" --weight=15
|
||||
ynh_script_progression --message="Configuring firewall..." --weight=15
|
||||
|
||||
ynh_exec_fully_quiet yunohost firewall allow --no-upnp TCP $port
|
||||
# Discovery Protocol SSDP for UPNP.
|
||||
|
@ -40,21 +40,21 @@ ynh_exec_fully_quiet yunohost firewall allow --no-upnp UDP 1900
|
|||
#=================================================
|
||||
# CREATE YUNOHOST.MULTIMEDIA DIRECTORY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Create yunohost.multimedia directory" --weight=6
|
||||
ynh_script_progression --message="Creating yunohost.multimedia directory..." --weight=6
|
||||
|
||||
ynh_multimedia_build_main_dir
|
||||
|
||||
#=================================================
|
||||
# INSTALL MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Install minidlna" --weight=45
|
||||
ynh_script_progression --message="Installing minidlna" --weight=45
|
||||
|
||||
if [ ${version:0:1} = "B" ]
|
||||
then
|
||||
# Install the backport version. (If you have issues with the standard version from the stable repository)
|
||||
codename=$(ynh_debian_release)
|
||||
ynh_restore_file "/etc/apt/sources.list.d/minidlna.list"
|
||||
ynh_replace_string " [a-z]*-backports" " $codename-backports" /etc/apt/sources.list.d/minidlna.list
|
||||
ynh_restore_file --origin_path="/etc/apt/sources.list.d/minidlna.list"
|
||||
ynh_replace_string --match_string=" [a-z]*-backports" --replace_string=" $codename-backports" --target_file=/etc/apt/sources.list.d/minidlna.list
|
||||
ynh_apt update
|
||||
ynh_package_install -t $codename-backports minidlna
|
||||
else
|
||||
|
@ -66,21 +66,22 @@ fi
|
|||
#=================================================
|
||||
# RESTORE INOTIFY'S CONFIG
|
||||
#=================================================
|
||||
ynh_script_progression --message="Restore inotify's config"
|
||||
ynh_script_progression --message="Restoring inotify's config..."
|
||||
|
||||
ynh_restore_file "/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
if ! IS_PACKAGE_CHECK; then
|
||||
ynh_restore_file --origin_path="/etc/sysctl.d/90-inotify_minidlna.conf"
|
||||
if ! IS_PACKAGE_CHECK # LXC doesn't allow sysctl to play with kernel options.
|
||||
then
|
||||
sysctl -p /etc/sysctl.d/90-inotify_minidlna.conf
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# RESTORE MINIDLNA CONFIGURATION
|
||||
#=================================================
|
||||
ynh_script_progression --message="Restore MiniDLNA configuration" --weight=7
|
||||
ynh_script_progression --message="Restoring MiniDLNA configuration..." --weight=7
|
||||
|
||||
# Delete the current config of minidlna, in order to replace it by the version from the backup
|
||||
ynh_secure_remove "/etc/minidlna.conf"
|
||||
ynh_restore_file "/etc/minidlna.conf"
|
||||
ynh_secure_remove --file="/etc/minidlna.conf"
|
||||
ynh_restore_file --origin_path="/etc/minidlna.conf"
|
||||
ynh_systemd_action --action=restart --service_name=minidlna
|
||||
|
||||
#=================================================
|
||||
|
@ -107,10 +108,10 @@ You can also find some specific actions for this app by using the experimental _
|
|||
|
||||
If you're facing an issue or want to improve this app, please open a new issue in this __URL_TAG1__project__URL_TAG2__https://github.com/YunoHost-Apps/minidlna_ynh__URL_TAG3__." > mail_to_send
|
||||
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type="restore"
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type=restore
|
||||
|
||||
#=================================================
|
||||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
||||
ynh_script_progression --message="Restoration completed" --last
|
||||
ynh_script_progression --message="Restoration completed for $app" --last
|
||||
|
|
|
@ -12,15 +12,15 @@ source /usr/share/yunohost/helpers
|
|||
#=================================================
|
||||
# LOAD SETTINGS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Load settings" --weight=2
|
||||
ynh_script_progression --message="Loading installation settings..." --weight=2
|
||||
|
||||
app=$YNH_APP_INSTANCE_NAME
|
||||
|
||||
version=$(ynh_app_setting_get $app version)
|
||||
port=$(ynh_app_setting_get $app port)
|
||||
overwrite_settings=$(ynh_app_setting_get $app overwrite_settings)
|
||||
root_container=$(ynh_app_setting_get $app root_container)
|
||||
friendly_name=$(ynh_app_setting_get $app friendly_name)
|
||||
version=$(ynh_app_setting_get --app=$app --key=version)
|
||||
port=$(ynh_app_setting_get --app=$app --key=port)
|
||||
overwrite_settings=$(ynh_app_setting_get --app=$app --key=overwrite_settings)
|
||||
root_container=$(ynh_app_setting_get --app=$app --key=root_container)
|
||||
friendly_name=$(ynh_app_setting_get --app=$app --key=friendly_name)
|
||||
|
||||
#=================================================
|
||||
# CHECK VERSION
|
||||
|
@ -31,30 +31,30 @@ upgrade_type=$(ynh_check_app_version_changed)
|
|||
#=================================================
|
||||
# ENSURE DOWNWARD COMPATIBILITY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Ensure downward compatibility"
|
||||
ynh_script_progression --message="Ensuring downward compatibility..."
|
||||
|
||||
# If overwrite_settings doesn't exist, create it
|
||||
if [ -z "$overwrite_settings" ]; then
|
||||
overwrite_settings=1
|
||||
ynh_app_setting_set $app overwrite_settings $overwrite_settings
|
||||
ynh_app_setting_set --app=$app --key=overwrite_settings --value=$overwrite_settings
|
||||
fi
|
||||
|
||||
# If root_container doesn't exist, create it
|
||||
if [ -z "$root_container" ]; then
|
||||
root_container="B"
|
||||
ynh_app_setting_set $app root_container $root_container
|
||||
ynh_app_setting_set --app=$app --key=root_container --value=$root_container
|
||||
fi
|
||||
|
||||
# If friendly_name doesn't exist, create it
|
||||
if [ -z "$friendly_name" ]; then
|
||||
friendly_name="Yunohost DLNA"
|
||||
ynh_app_setting_set $app friendly_name $friendly_name
|
||||
ynh_app_setting_set --app=$app --key=friendly_name --value=$friendly_name
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||
#=================================================
|
||||
ynh_script_progression --message="Backup the app before upgrading" --weight=2
|
||||
ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." --weight=2
|
||||
|
||||
# Backup the current version of the app
|
||||
ynh_backup_before_upgrade
|
||||
|
@ -68,20 +68,20 @@ ynh_abort_if_errors
|
|||
#=================================================
|
||||
# UPGRADE THE YUNOHOST.MULTIMEDIA DIRECTORY
|
||||
#=================================================
|
||||
ynh_script_progression --message="Upgrade the yunohost.multimedia directory" --weight=3
|
||||
ynh_script_progression --message="Upgrading the yunohost.multimedia directory..." --weight=3
|
||||
|
||||
ynh_multimedia_build_main_dir
|
||||
|
||||
#=================================================
|
||||
# UPGRADE MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Upgrade MiniDLNA" --weight=3
|
||||
ynh_script_progression --message="Upgrading MiniDLNA..." --weight=3
|
||||
|
||||
if [ $version = "B" ]
|
||||
then
|
||||
# Install the backport version. (If you have issues with the standard version from the stable repository)
|
||||
codename=$(ynh_debian_release)
|
||||
ynh_replace_string "__CODENAME__" "$codename" ../conf/minidlna.list
|
||||
ynh_replace_string --match_string="__CODENAME__" --replace_string="$codename" --target_file=../conf/minidlna.list
|
||||
cp -a ../conf/minidlna.list /etc/apt/sources.list.d/
|
||||
ynh_apt update
|
||||
ynh_package_install -t $codename-backports minidlna
|
||||
|
@ -94,12 +94,13 @@ fi
|
|||
#=================================================
|
||||
# INCREASE INOTIFY'S LIMITS
|
||||
#=================================================
|
||||
ynh_script_progression --message="Increase inotify's limits" --weight=2
|
||||
ynh_script_progression --message="Increasing inotify's limits..." --weight=2
|
||||
|
||||
# Increase the maximum number of files inotify can monitor.
|
||||
cp -a ../conf/90-inotify_minidlna.conf /etc/sysctl.d/
|
||||
# Then, reload the kernel configuration.
|
||||
if ! IS_PACKAGE_CHECK; then
|
||||
if ! IS_PACKAGE_CHECK # LXC doesn't allow sysctl to play with kernel options.
|
||||
then
|
||||
sysctl -p /etc/sysctl.d/90-inotify_minidlna.conf
|
||||
fi
|
||||
|
||||
|
@ -112,28 +113,28 @@ yunohost service add minidlna --log "/var/log/minidlna.log"
|
|||
#=================================================
|
||||
# CONFIGURE MINIDLNA
|
||||
#=================================================
|
||||
ynh_script_progression --message="Reconfigure MiniDLNA" --weight=2
|
||||
ynh_script_progression --message="Reconfiguring MiniDLNA..." --weight=2
|
||||
|
||||
# Overwrite the settings config file only if it's allowed
|
||||
if [ $overwrite_settings -eq 1 ]
|
||||
then
|
||||
# Verify the checksum of a file, stored by `ynh_store_file_checksum` in the install script.
|
||||
ynh_backup_if_checksum_is_different "/etc/minidlna.conf"
|
||||
ynh_backup_if_checksum_is_different --file="/etc/minidlna.conf"
|
||||
|
||||
ynh_replace_string "^#*media_dir=.*" "media_dir=/home/yunohost.multimedia/share" /etc/minidlna.conf
|
||||
ynh_replace_string "^#*port=.*" "port=$port" /etc/minidlna.conf
|
||||
ynh_replace_string "^#*friendly_name=.*" "friendly_name=$friendly_name" /etc/minidlna.conf
|
||||
ynh_replace_string "^#*root_container=.*" "root_container=$root_container" /etc/minidlna.conf
|
||||
ynh_replace_string "^#wide_links=.*" "wide_links=yes" /etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*media_dir=.*" --replace_string="media_dir=/home/yunohost.multimedia/share" --target_file=/etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*port=.*" --replace_string="port=$port" --target_file=/etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*friendly_name=.*" --replace_string="friendly_name=$friendly_name" --target_file=/etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#*root_container=.*" --replace_string="root_container=$root_container" --target_file=/etc/minidlna.conf
|
||||
ynh_replace_string --match_string="^#wide_links=.*" --replace_string="wide_links=yes" --target_file=/etc/minidlna.conf
|
||||
|
||||
# Calculate and store the config file checksum into the app settings
|
||||
ynh_store_file_checksum "/etc/minidlna.conf"
|
||||
ynh_store_file_checksum --file="/etc/minidlna.conf"
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# RESTART MINIDLNA'S SERVICE
|
||||
#=================================================
|
||||
ynh_script_progression --message="Restart MiniDLNA" --weight=7
|
||||
ynh_script_progression --message="Restarting MiniDLNA..." --weight=7
|
||||
|
||||
ynh_systemd_action --action=restart --service_name=minidlna
|
||||
|
||||
|
@ -163,10 +164,10 @@ If you're facing an issue or want to improve this app, please open a new issue i
|
|||
Changelog since your last upgrade:
|
||||
$(cat changelog)" > mail_to_send
|
||||
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type="upgrade"
|
||||
ynh_send_readme_to_admin --app_message="mail_to_send" --recipients="root" --type=upgrade
|
||||
|
||||
#=================================================
|
||||
# END OF SCRIPT
|
||||
#=================================================
|
||||
|
||||
ynh_script_progression --message="Upgrade completed" --last
|
||||
ynh_script_progression --message="Upgrade of $app completed" --last
|
||||
|
|
Loading…
Add table
Reference in a new issue