From 7c2177e76a5574f45f69f65caf20005256673e80 Mon Sep 17 00:00:00 2001 From: CN_SZTL Date: Thu, 2 Apr 2020 22:30:59 +0800 Subject: [PATCH] luci-app-rclone: sync with upstream source --- package/ctcgfw/luci-app-rclone/Makefile | 2 +- .../luasrc/model/cbi/rclone.lua | 14 ++--- .../po/zh_Hans/luci-app-rclone.po | 54 ++++++++++--------- .../luci-app-rclone/root/etc/config/rclone | 4 +- .../luci-app-rclone/root/etc/init.d/rclone | 40 +++++++------- 5 files changed, 55 insertions(+), 59 deletions(-) diff --git a/package/ctcgfw/luci-app-rclone/Makefile b/package/ctcgfw/luci-app-rclone/Makefile index ca85758dee..e81deda231 100644 --- a/package/ctcgfw/luci-app-rclone/Makefile +++ b/package/ctcgfw/luci-app-rclone/Makefile @@ -13,7 +13,7 @@ LUCI_TITLE:=LuCI support for Rclone LUCI_DEPENDS:=+rclone +rclone-webui-react LUCI_PKGARCH:=all PKG_NAME:=luci-app-rclone -PKG_VERSION:=1.2.18 +PKG_VERSION:=1.2.21 PKG_RELEASE:=1 PKG_LICENSE:=GPLv3.0+ PKG_MAINTAINER:=ElonH diff --git a/package/ctcgfw/luci-app-rclone/luasrc/model/cbi/rclone.lua b/package/ctcgfw/luci-app-rclone/luasrc/model/cbi/rclone.lua index e69124bc8b..aa9312aa0d 100644 --- a/package/ctcgfw/luci-app-rclone/luasrc/model/cbi/rclone.lua +++ b/package/ctcgfw/luci-app-rclone/luasrc/model/cbi/rclone.lua @@ -69,9 +69,12 @@ o.datatype = 'port' o.rmempty = false o = s:option(Value, 'config_path', translate('rclone configuration file path')) -o.placeholder = '/var/etc/rclone/rclone.conf' -o.default = '/var/etc/rclone/rclone.conf' +o.placeholder = '/etc/rclone/rclone.conf' +o.default = '/etc/rclone/rclone.conf' o.rmempty = false +o.description = translate("Recommand: run ") .. + "rclone config --config rclone.conf" .. + translate(" to setup configuration on pc,") .. "
" .. translate("than updaload configuration to here.") o = s:option(Button,"config_download",translate("download configuration")) o.inputtitle = translate("download") @@ -123,13 +126,6 @@ o.default = 'socks5://127.0.0.1:1080' o.rmempty = false o.description = translate("The content of the variable is protocol://server:port. The protocol value is commonly either http or socks5.") -o = s:option(Value, 'no_proxy', translate('disable proxy')) -o.placeholder = 'localhost,127.0.0.0/8' -o.default = 'localhost,127.0.0.0/8' -o.rmempty = false -o.description = translate("This allows you to disable the proxy for specific hosts.").."
".. - translate("Hosts must be comma separated, and can contain domains or parts.") - s = m:section(TypedSection, 'log', translate('log')) s.addremove = false s.anonymous = true diff --git a/package/ctcgfw/luci-app-rclone/po/zh_Hans/luci-app-rclone.po b/package/ctcgfw/luci-app-rclone/po/zh_Hans/luci-app-rclone.po index 1caa031ec5..3afed25cc9 100644 --- a/package/ctcgfw/luci-app-rclone/po/zh_Hans/luci-app-rclone.po +++ b/package/ctcgfw/luci-app-rclone/po/zh_Hans/luci-app-rclone.po @@ -4,21 +4,17 @@ msgstr "" "Project-Id-Version: \n" "Last-Translator: ElonH \n" "Language-Team: none\n" -"Language: zh_CN\n" +"Language: zh-Hans\n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" "POT-Creation-Date: \n" "PO-Revision-Date: \n" "X-Generator: Poedit 2.0.6\n" -#: luasrc/model/cbi/rclone.lua:115 +#: luasrc/model/cbi/rclone.lua:118 msgid "FAQ" msgstr "常见问题" -#: luasrc/model/cbi/rclone.lua:131 -msgid "Hosts must be comma separated, and can contain domains or parts." -msgstr "用逗号分隔地址,且地址必须包含(部分)域名" - #: luasrc/model/cbi/rclone.lua:41 msgid "Installed Web Interface" msgstr "已安装Web界面" @@ -38,7 +34,11 @@ msgid "" msgstr "" "Rclone是一款的命令行工具,支持在不同对象存储、网盘间同步、上传、下载数据。" -#: luasrc/model/cbi/rclone.lua:124 +#: luasrc/model/cbi/rclone.lua:75 +msgid "Recommand: run" +msgstr "建议: 在 PC 上运行" + +#: luasrc/model/cbi/rclone.lua:127 msgid "" "The content of the variable is protocol://server:port. The protocol value is " "commonly either http or socks5." @@ -46,10 +46,6 @@ msgstr "" "内容格式为: protocol://server:port\n" "protocol 通常为 http 或者 socks5" -#: luasrc/model/cbi/rclone.lua:130 -msgid "This allows you to disable the proxy for specific hosts." -msgstr "这允许不代理特定的地址." - #: luasrc/model/cbi/rclone.lua:43 msgid "Webui React" msgstr "Webui React" @@ -62,19 +58,15 @@ msgstr "全部地址" msgid "configure" msgstr "配置" -#: luasrc/model/cbi/rclone.lua:126 -msgid "disable proxy" -msgstr "" - -#: luasrc/model/cbi/rclone.lua:77 +#: luasrc/model/cbi/rclone.lua:80 msgid "download" msgstr "下载" -#: luasrc/model/cbi/rclone.lua:76 +#: luasrc/model/cbi/rclone.lua:79 msgid "download configuration" msgstr "下载配置文件" -#: luasrc/model/cbi/rclone.lua:117 +#: luasrc/model/cbi/rclone.lua:120 msgid "enable proxy" msgstr "启用代理" @@ -98,23 +90,23 @@ msgstr "局域网地址" msgid "localhost address" msgstr "本机地址" -#: luasrc/model/cbi/rclone.lua:133 +#: luasrc/model/cbi/rclone.lua:129 msgid "log" msgstr "日志" -#: luasrc/model/cbi/rclone.lua:105 +#: luasrc/model/cbi/rclone.lua:108 msgid "password" msgstr "密码" -#: luasrc/model/cbi/rclone.lua:137 +#: luasrc/model/cbi/rclone.lua:133 msgid "path" msgstr "路径" -#: luasrc/model/cbi/rclone.lua:111 +#: luasrc/model/cbi/rclone.lua:114 msgid "proxy" msgstr "代理" -#: luasrc/model/cbi/rclone.lua:120 +#: luasrc/model/cbi/rclone.lua:123 msgid "proxy address" msgstr "代理地址" @@ -142,10 +134,24 @@ msgstr "rclone 状态" msgid "run Rclone as daemon" msgstr "启动 rclone 后台服务" -#: luasrc/model/cbi/rclone.lua:100 +#: luasrc/model/cbi/rclone.lua:77 +msgid "than updaload configuration to here." +msgstr "然后上传配置文件到这里" + +#: luasrc/model/cbi/rclone.lua:77 +msgid "to setup configuration on pc," +msgstr "命令设置 rclone 配置文件," + +#: luasrc/model/cbi/rclone.lua:103 msgid "username" msgstr "用户名" +#~ msgid "Hosts must be comma separated, and can contain domains or parts." +#~ msgstr "用逗号分隔地址,且地址必须包含(部分)域名" + +#~ msgid "This allows you to disable the proxy for specific hosts." +#~ msgstr "这允许不代理特定的地址." + #~ msgid "How to proxy rclone" #~ msgstr "如何代理rclone" diff --git a/package/ctcgfw/luci-app-rclone/root/etc/config/rclone b/package/ctcgfw/luci-app-rclone/root/etc/config/rclone index 432aa5bf7c..1440200ca5 100644 --- a/package/ctcgfw/luci-app-rclone/root/etc/config/rclone +++ b/package/ctcgfw/luci-app-rclone/root/etc/config/rclone @@ -1,10 +1,9 @@ config global 'global' option enabled '0' - option user 'rclone' config conf 'config' - option config_path '/var/etc/rclone/rclone.conf' + option config_path '/etc/rclone/rclone.conf' option port '5572' option username 'admin' option password 'admin' @@ -13,7 +12,6 @@ config conf 'config' config proxy 'proxy' option enabled '0' option proxy_addr 'socks5://127.0.0.1:1080' - option no_proxy 'localhost,127.0.0.0/8' config log 'log' option path '/var/log/rclone/output' diff --git a/package/ctcgfw/luci-app-rclone/root/etc/init.d/rclone b/package/ctcgfw/luci-app-rclone/root/etc/init.d/rclone index 2dd1eaa9e2..15205215ce 100755 --- a/package/ctcgfw/luci-app-rclone/root/etc/init.d/rclone +++ b/package/ctcgfw/luci-app-rclone/root/etc/init.d/rclone @@ -1,4 +1,4 @@ -#!/bin/sh /etc/rc.common +#!/bin/bash /etc/rc.common # Copyright (C) 2019 ElonH USE_PROCD=1 @@ -28,12 +28,12 @@ init_config() { config_get log_path log path config_dir=${config_path%/*} - [ -d $config_dir ] || mkdir -p $config_dir + [ -d "$config_dir" ] || mkdir -p "$config_dir" 2>/dev/null - [ -f $config_path ] || touch $config_path + [ -f "$config_path" ] || touch "$config_path" log_dir=${log_path%/*} - [ -d $log_dir ] || mkdir -p $log_dir && echo /dev/null > $log_path + [ -d "$log_dir" ] || mkdir -p "$log_dir" 2>/dev/null && echo /dev/null > "$log_path" } @@ -47,13 +47,11 @@ start_service() { local port local username local password - - local user - + local proxy_enable + local proxy_addr local log_path config_get enabled global enabled - config_get user global user config_get config_path config config_path config_get addr_type config addr_type @@ -63,36 +61,34 @@ start_service() { config_get proxy_enable proxy enabled config_get proxy_addr proxy proxy_addr - config_get no_proxy proxy no_proxy config_get log_path log path - if [ "${addr_type}" == "local" ]; then + if [[ "${addr_type}" == "local" ]]; then addr="$(uci get network.loopback.ipaddr)" - elif [ "${addr_type}" == "lan" ]; then + elif [[ "${addr_type}" == "lan" ]]; then addr="$(uci get network.lan.ipaddr)" - elif [ "${addr_type}" == "all" ]; then + elif [[ "${addr_type}" == "all" ]]; then addr="" fi [ "$enabled" == "1" ] || { _info "Instance \"rclone\" disabled."; return 1; } _info "Instance \"rclone\" start." procd_open_instance procd_set_param command /usr/bin/$APP rcd -vv - procd_append_param command --rc-addr=${addr}:${port} - procd_append_param command --rc-user=${username} --rc-pass=${password} - procd_append_param command --config=${config_path} - procd_append_param command --rc-allow-origin=* - procd_append_param command --log-file=${log_path} - if [ "${proxy_enable}" == "1" ]; then - procd_set_param env all_proxy=${proxy_addr} https_proxy=${proxy_addr} http_proxy=${proxy_addr} - procd_set_param env ALL_PROXY=${proxy_addr} HTTPS_PROXY=${proxy_addr} HTTP_PROXY=${proxy_addr} - procd_set_param env no_proxy=${no_proxy} NO_PROXY=${no_proxy} + procd_append_param command "--rc-addr=$addr:$port" + procd_append_param command "--rc-user=$username" "--rc-pass=$password" + procd_append_param command "--config=$config_path" + procd_append_param command "--rc-allow-origin=*" + procd_append_param command "--log-file=${log_path}" + if [[ "${proxy_enable}" == "1" ]]; then + procd_set_param env all_proxy="$proxy_addr" https_proxy="$proxy_addr" http_proxy="$proxy_addr" + procd_set_param env ALL_PROXY="$proxy_addr" HTTPS_PROXY="$proxy_addr" HTTP_PROXY="$proxy_addr" fi procd_set_param stdout 1 procd_set_param stderr 1 procd_set_param file /etc/config/rclone # procd_set_param pidfile /var/run/rclone.pid - procd_set_param user $user + procd_set_param user rclone procd_set_param group rclone procd_set_param respawn retry=60 procd_close_instance