mirror of
https://github.com/YunoHost-Apps/calibreweb_ynh.git
synced 2024-09-03 18:16:20 +02:00
Add ynh_multimedia integration - Initial
This commit is contained in:
parent
3d5c712a0a
commit
1c59da75a6
2 changed files with 90 additions and 0 deletions
|
@ -87,3 +87,89 @@ ynh_systemd_action() {
|
||||||
ynh_clean_check_starting
|
ynh_clean_check_starting
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#=================================================
|
||||||
|
#YNH_MULTIMEDIA
|
||||||
|
#=================================================
|
||||||
|
|
||||||
|
|
||||||
|
# Need also the helper https://github.com/YunoHost-Apps/Experimental_helpers/blob/master/ynh_handle_getopts_args/ynh_handle_getopts_args
|
||||||
|
|
||||||
|
# Install or update the main directory yunohost.multimedia
|
||||||
|
#
|
||||||
|
# usage: ynh_multimedia_build_main_dir
|
||||||
|
ynh_multimedia_build_main_dir () {
|
||||||
|
local ynh_media_release="v1.1"
|
||||||
|
local checksum="9ec4321a92aa2c388af4ee0072735e3e"
|
||||||
|
|
||||||
|
# Download yunohost.multimedia scripts
|
||||||
|
wget -nv https://github.com/YunoHost-Apps/yunohost.multimedia/archive/${ynh_media_release}.tar.gz
|
||||||
|
|
||||||
|
# Check the control sum
|
||||||
|
echo "${checksum} ${ynh_media_release}.tar.gz" | md5sum -c --status \
|
||||||
|
|| ynh_die "Corrupt source"
|
||||||
|
|
||||||
|
# Check if the package acl is installed. Or install it.
|
||||||
|
ynh_package_is_installed 'acl' \
|
||||||
|
|| ynh_package_install acl
|
||||||
|
|
||||||
|
# Extract
|
||||||
|
mkdir yunohost.multimedia-master
|
||||||
|
tar -xf ${ynh_media_release}.tar.gz -C yunohost.multimedia-master --strip-components 1
|
||||||
|
./yunohost.multimedia-master/script/ynh_media_build.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
# Add a directory in yunohost.multimedia
|
||||||
|
# This "directory" will be a symbolic link to a existing directory.
|
||||||
|
#
|
||||||
|
# usage: ynh_multimedia_addfolder "Source directory" "Destination directory"
|
||||||
|
#
|
||||||
|
# | arg: -s, --source_dir= - Source directory - The real directory which contains your medias.
|
||||||
|
# | arg: -d, --dest_dir= - Destination directory - The name and the place of the symbolic link, relative to "/home/yunohost.multimedia"
|
||||||
|
ynh_multimedia_addfolder () {
|
||||||
|
# Declare an array to define the options of this helper.
|
||||||
|
declare -Ar args_array=( [s]=source_dir= [d]=dest_dir= )
|
||||||
|
local source_dir
|
||||||
|
local dest_dir
|
||||||
|
# Manage arguments with getopts
|
||||||
|
ynh_handle_getopts_args "$@"
|
||||||
|
|
||||||
|
./yunohost.multimedia-master/script/ynh_media_addfolder.sh --source="$source_dir" --dest="$dest_dir"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Move a directory in yunohost.multimedia, and replace by a symbolic link
|
||||||
|
#
|
||||||
|
# usage: ynh_multimedia_movefolder "Source directory" "Destination directory"
|
||||||
|
#
|
||||||
|
# | arg: -s, --source_dir= - Source directory - The real directory which contains your medias.
|
||||||
|
# It will be moved to "Destination directory"
|
||||||
|
# A symbolic link will replace it.
|
||||||
|
# | arg: -d, --dest_dir= - Destination directory - The new name and place of the directory, relative to "/home/yunohost.multimedia"
|
||||||
|
ynh_multimedia_movefolder () {
|
||||||
|
# Declare an array to define the options of this helper.
|
||||||
|
declare -Ar args_array=( [s]=source_dir= [d]=dest_dir= )
|
||||||
|
local source_dir
|
||||||
|
local dest_dir
|
||||||
|
# Manage arguments with getopts
|
||||||
|
ynh_handle_getopts_args "$@"
|
||||||
|
|
||||||
|
./yunohost.multimedia-master/script/ynh_media_addfolder.sh --inv --source="$source_dir" --dest="$dest_dir"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Allow an user to have an write authorisation in multimedia directories
|
||||||
|
#
|
||||||
|
# usage: ynh_multimedia_addaccess user_name
|
||||||
|
#
|
||||||
|
# | arg: -u, --user_name= - The name of the user which gain this access.
|
||||||
|
ynh_multimedia_addaccess () {
|
||||||
|
# Declare an array to define the options of this helper.
|
||||||
|
declare -Ar args_array=( [u]=user_name=)
|
||||||
|
local user_name
|
||||||
|
# Manage arguments with getopts
|
||||||
|
ynh_handle_getopts_args "$@"
|
||||||
|
|
||||||
|
groupadd -f multimedia
|
||||||
|
usermod -a -G multimedia $user_name
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -120,6 +120,7 @@ ynh_add_systemd_config
|
||||||
# CREATE FILES AND DIRECTORIES
|
# CREATE FILES AND DIRECTORIES
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
|
|
||||||
#Check if library folder exists. If not create it
|
#Check if library folder exists. If not create it
|
||||||
if [ ! -e "$calibre_dir" ]; then
|
if [ ! -e "$calibre_dir" ]; then
|
||||||
ynh_print_info "Create calibre library folder $calibre_dir"
|
ynh_print_info "Create calibre library folder $calibre_dir"
|
||||||
|
@ -134,6 +135,9 @@ if [ ! -e "$calibre_dir"/metadata.db ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
ynh_multimedia_build_main_dir
|
||||||
|
ynh_multimedia_addfolder "eBook" "$calibre_dir"
|
||||||
|
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SETUP LOGROTATE
|
# SETUP LOGROTATE
|
||||||
|
|
Loading…
Add table
Reference in a new issue