mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-31 04:35:13 +08:00
💐 Sync 2026-06-21 08:49:51
This commit is contained in:
1 parent
3d988e88f2
commit
5fc6434460
9 files changed
+54
-78
No files matched your search
+1
-1
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
|
|
||||||
PKG_NAME:=gecoosac
|
PKG_NAME:=gecoosac
|
||||||
PKG_VERSION:=2.2.20251015
|
PKG_VERSION:=2.2.20251015
|
||||||
PKG_RELEASE:=11
|
PKG_RELEASE:=12
|
||||||
|
|
||||||
ifeq ($(ARCH),aarch64)
|
ifeq ($(ARCH),aarch64)
|
||||||
PKG_ARCH:=ac_linux_arm64
|
PKG_ARCH:=ac_linux_arm64
|
||||||
|
|||||||
@@ -43,28 +43,22 @@ is_abs_path() {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
strip_trailing_slashes() {
|
|
||||||
local path="$1"
|
|
||||||
|
|
||||||
while [ "$path" != "/" ] && [ "${path%/}" != "$path" ]; do
|
|
||||||
path="${path%/}"
|
|
||||||
done
|
|
||||||
|
|
||||||
printf '%s\n' "$path"
|
|
||||||
}
|
|
||||||
|
|
||||||
normalize_path() {
|
normalize_path() {
|
||||||
local path="$1"
|
local path="$1"
|
||||||
local old_ifs part normalized parent
|
local part normalized parent
|
||||||
|
|
||||||
is_abs_path "$path" || return 1
|
is_abs_path "$path" || return 1
|
||||||
normalized="/"
|
normalized="/"
|
||||||
old_ifs="$IFS"
|
path="${path#/}"
|
||||||
IFS=/
|
|
||||||
set -- $path
|
while [ -n "$path" ]; do
|
||||||
IFS="$old_ifs"
|
part="${path%%/*}"
|
||||||
|
if [ "$part" = "$path" ]; then
|
||||||
|
path=""
|
||||||
|
else
|
||||||
|
path="${path#*/}"
|
||||||
|
fi
|
||||||
|
|
||||||
for part in "$@"; do
|
|
||||||
case "$part" in
|
case "$part" in
|
||||||
""|.) ;;
|
""|.) ;;
|
||||||
..)
|
..)
|
||||||
@@ -171,22 +165,25 @@ run_with_timeout() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
is_ipv4() {
|
is_ipv4() {
|
||||||
local old_ifs part
|
local value="$1"
|
||||||
|
local part count
|
||||||
|
|
||||||
old_ifs="$IFS"
|
count=0
|
||||||
IFS=.
|
|
||||||
set -- $1
|
while :; do
|
||||||
IFS="$old_ifs"
|
part="${value%%.*}"
|
||||||
|
count=$((count + 1))
|
||||||
|
|
||||||
[ "$#" -eq 4 ] || return 1
|
|
||||||
for part in "$@"; do
|
|
||||||
case "$part" in
|
case "$part" in
|
||||||
""|*[!0-9]*) return 1 ;;
|
""|*[!0-9]*) return 1 ;;
|
||||||
esac
|
esac
|
||||||
[ "$part" -le 255 ] 2>/dev/null || return 1
|
[ "$part" -le 255 ] 2>/dev/null || return 1
|
||||||
|
|
||||||
|
[ "$part" != "$value" ] || break
|
||||||
|
value="${value#*.}"
|
||||||
done
|
done
|
||||||
|
|
||||||
return 0
|
[ "$count" -eq 4 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
san_has_entry() {
|
san_has_entry() {
|
||||||
|
|||||||
@@ -24,28 +24,22 @@ set_default() {
|
|||||||
changed=1
|
changed=1
|
||||||
}
|
}
|
||||||
|
|
||||||
strip_trailing_slashes() {
|
|
||||||
local path="$1"
|
|
||||||
|
|
||||||
while [ "$path" != "/" ] && [ "${path%/}" != "$path" ]; do
|
|
||||||
path="${path%/}"
|
|
||||||
done
|
|
||||||
|
|
||||||
printf '%s\n' "$path"
|
|
||||||
}
|
|
||||||
|
|
||||||
normalize_path() {
|
normalize_path() {
|
||||||
local path="$1"
|
local path="$1"
|
||||||
local old_ifs part normalized parent
|
local part normalized parent
|
||||||
|
|
||||||
is_abs_path "$path" || return 1
|
is_abs_path "$path" || return 1
|
||||||
normalized="/"
|
normalized="/"
|
||||||
old_ifs="$IFS"
|
path="${path#/}"
|
||||||
IFS=/
|
|
||||||
set -- $path
|
while [ -n "$path" ]; do
|
||||||
IFS="$old_ifs"
|
part="${path%%/*}"
|
||||||
|
if [ "$part" = "$path" ]; then
|
||||||
|
path=""
|
||||||
|
else
|
||||||
|
path="${path#*/}"
|
||||||
|
fi
|
||||||
|
|
||||||
for part in "$@"; do
|
|
||||||
case "$part" in
|
case "$part" in
|
||||||
""|.) ;;
|
""|.) ;;
|
||||||
..)
|
..)
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
|
|
||||||
PKG_NAME:=luci-app-gecoosac
|
PKG_NAME:=luci-app-gecoosac
|
||||||
PKG_VERSION:=2.2
|
PKG_VERSION:=2.2
|
||||||
PKG_RELEASE:=13
|
PKG_RELEASE:=14
|
||||||
|
|
||||||
LUCI_TITLE:=LuCI Support for gecoosac
|
LUCI_TITLE:=LuCI Support for gecoosac
|
||||||
LUCI_DEPENDS:=+luci-base +gecoosac
|
LUCI_DEPENDS:=+luci-base +gecoosac
|
||||||
|
|||||||
@@ -34,15 +34,6 @@ function validPort(value, defaultValue) {
|
|||||||
return Number.isInteger(port) && port >= 1 && port <= 65535 ? String(port) : defaultValue;
|
return Number.isInteger(port) && port >= 1 && port <= 65535 ? String(port) : defaultValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
function stripTrailingSlashes(value) {
|
|
||||||
let path = String(value || '');
|
|
||||||
|
|
||||||
while (path.length > 1 && path.endsWith('/'))
|
|
||||||
path = path.slice(0, -1);
|
|
||||||
|
|
||||||
return path;
|
|
||||||
}
|
|
||||||
|
|
||||||
function normalizePath(value) {
|
function normalizePath(value) {
|
||||||
const path = String(value || '');
|
const path = String(value || '');
|
||||||
|
|
||||||
@@ -256,7 +247,7 @@ return view.extend({
|
|||||||
o.depends({ isonlyoneprot: '0', https: '1' });
|
o.depends({ isonlyoneprot: '0', https: '1' });
|
||||||
|
|
||||||
o = s.option(form.Value, 'upload_dir', _('Upload dir path'),
|
o = s.option(form.Value, 'upload_dir', _('Upload dir path'),
|
||||||
_('Upload AP upgrade firmware here. Use an absolute path ending with /gecoosac/upload, for example /tmp/gecoosac/upload.\nDo not place it under /etc/gecoosac because that directory is backed up during sysupgrade.'));
|
_('Upload AP upgrade firmware here. Use an absolute path ending with /gecoosac/upload, for example /tmp/gecoosac/upload.<br />Do not place it under /etc/gecoosac because that directory is backed up during sysupgrade.'));
|
||||||
uploadDirOption = o;
|
uploadDirOption = o;
|
||||||
o.placeholder = DEFAULT_UPLOAD_DIR;
|
o.placeholder = DEFAULT_UPLOAD_DIR;
|
||||||
o.default = DEFAULT_UPLOAD_DIR;
|
o.default = DEFAULT_UPLOAD_DIR;
|
||||||
|
|||||||
@@ -53,13 +53,13 @@ msgstr "上传目录"
|
|||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Upload AP upgrade firmware here. Use an absolute path ending with "
|
"Upload AP upgrade firmware here. Use an absolute path ending with "
|
||||||
"/gecoosac/upload, for example /tmp/gecoosac/upload.\n"
|
"/gecoosac/upload, for example /tmp/gecoosac/upload.<br />Do not place it "
|
||||||
"Do not place it under /etc/gecoosac because that directory is backed up "
|
"under /etc/gecoosac because that directory is backed up "
|
||||||
"during sysupgrade."
|
"during sysupgrade."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"AP 升级固件会上传到此目录。请使用以 /gecoosac/upload 结尾的绝对路径,例如 "
|
"AP 升级固件会上传到此目录。请使用以 /gecoosac/upload 结尾的绝对路径,例如 "
|
||||||
"/tmp/gecoosac/upload。\n"
|
"/tmp/gecoosac/upload。<br />不要放在 /etc/gecoosac 下,因为该目录会在 "
|
||||||
"不要放在 /etc/gecoosac 下,因为该目录会在 sysupgrade 时被备份。"
|
"sysupgrade 时被备份。"
|
||||||
|
|
||||||
msgid "Upload directory must be an absolute path ending with /gecoosac/upload and must not be under /etc/gecoosac."
|
msgid "Upload directory must be an absolute path ending with /gecoosac/upload and must not be under /etc/gecoosac."
|
||||||
msgstr "上传目录必须是以 /gecoosac/upload 结尾的绝对路径,且不能位于 /etc/gecoosac 下。"
|
msgstr "上传目录必须是以 /gecoosac/upload 结尾的绝对路径,且不能位于 /etc/gecoosac 下。"
|
||||||
|
|||||||
@@ -53,13 +53,13 @@ msgstr "上傳目錄"
|
|||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Upload AP upgrade firmware here. Use an absolute path ending with "
|
"Upload AP upgrade firmware here. Use an absolute path ending with "
|
||||||
"/gecoosac/upload, for example /tmp/gecoosac/upload.\n"
|
"/gecoosac/upload, for example /tmp/gecoosac/upload.<br />Do not place it "
|
||||||
"Do not place it under /etc/gecoosac because that directory is backed up "
|
"under /etc/gecoosac because that directory is backed up "
|
||||||
"during sysupgrade."
|
"during sysupgrade."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"AP 升級韌體會上傳到此目錄。請使用以 /gecoosac/upload 結尾的絕對路徑,例如 "
|
"AP 升級韌體會上傳到此目錄。請使用以 /gecoosac/upload 結尾的絕對路徑,例如 "
|
||||||
"/tmp/gecoosac/upload。\n"
|
"/tmp/gecoosac/upload。<br />不要放在 /etc/gecoosac 下,因為該目錄會在 "
|
||||||
"不要放在 /etc/gecoosac 下,因為該目錄會在 sysupgrade 時被備份。"
|
"sysupgrade 時被備份。"
|
||||||
|
|
||||||
msgid "Upload directory must be an absolute path ending with /gecoosac/upload and must not be under /etc/gecoosac."
|
msgid "Upload directory must be an absolute path ending with /gecoosac/upload and must not be under /etc/gecoosac."
|
||||||
msgstr "上傳目錄必須是以 /gecoosac/upload 結尾的絕對路徑,且不能位於 /etc/gecoosac 下。"
|
msgstr "上傳目錄必須是以 /gecoosac/upload 結尾的絕對路徑,且不能位於 /etc/gecoosac 下。"
|
||||||
|
|||||||
@@ -17,19 +17,9 @@ json_result() {
|
|||||||
json_cleanup
|
json_cleanup
|
||||||
}
|
}
|
||||||
|
|
||||||
strip_trailing_slashes() {
|
|
||||||
local path="$1"
|
|
||||||
|
|
||||||
while [ "$path" != "/" ] && [ "${path%/}" != "$path" ]; do
|
|
||||||
path="${path%/}"
|
|
||||||
done
|
|
||||||
|
|
||||||
printf '%s\n' "$path"
|
|
||||||
}
|
|
||||||
|
|
||||||
normalize_path() {
|
normalize_path() {
|
||||||
local path="$1"
|
local path="$1"
|
||||||
local old_ifs part normalized parent
|
local part normalized parent
|
||||||
|
|
||||||
case "$path" in
|
case "$path" in
|
||||||
/*) ;;
|
/*) ;;
|
||||||
@@ -37,12 +27,16 @@ normalize_path() {
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
normalized="/"
|
normalized="/"
|
||||||
old_ifs="$IFS"
|
path="${path#/}"
|
||||||
IFS=/
|
|
||||||
set -- $path
|
while [ -n "$path" ]; do
|
||||||
IFS="$old_ifs"
|
part="${path%%/*}"
|
||||||
|
if [ "$part" = "$path" ]; then
|
||||||
|
path=""
|
||||||
|
else
|
||||||
|
path="${path#*/}"
|
||||||
|
fi
|
||||||
|
|
||||||
for part in "$@"; do
|
|
||||||
case "$part" in
|
case "$part" in
|
||||||
""|.) ;;
|
""|.) ;;
|
||||||
..)
|
..)
|
||||||
|
|||||||
+2
-2
@@ -10,12 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk
|
|||||||
|
|
||||||
PKG_NAME:=natflow
|
PKG_NAME:=natflow
|
||||||
PKG_VERSION:=20260531
|
PKG_VERSION:=20260531
|
||||||
PKG_RELEASE:=15
|
PKG_RELEASE:=16
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_VERSION).tar.xz
|
PKG_SOURCE:=$(PKG_VERSION).tar.xz
|
||||||
PKG_SOURCE_URL:=https://github.com/ptpt52/natflow.git
|
PKG_SOURCE_URL:=https://github.com/ptpt52/natflow.git
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_VERSION:=a49c7f9398a70a16d16e11174db23fe917878c47
|
PKG_SOURCE_VERSION:=804f71f7e21827961ac35469b97c2cddc7c381cb
|
||||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_MAINTAINER:=Chen Minqiang <ptpt52@gmail.com>
|
PKG_MAINTAINER:=Chen Minqiang <ptpt52@gmail.com>
|
||||||
PKG_LICENSE:=GPL-2.0
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
|||||||
Reference in new issue
Block a user