Merge branch 'openwrt:master' into master

This commit is contained in:
Hayzam Sherif 2022-11-24 03:46:16 +04:00 committed by GitHub
commit ca7df564f0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
41 changed files with 370 additions and 441 deletions

View file

@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk
PECL_NAME:=xdebug PECL_NAME:=xdebug
PECL_LONGNAME:=Xdebug extension PECL_LONGNAME:=Xdebug extension
PKG_VERSION:=3.1.5 PKG_VERSION:=3.1.6
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_HASH:=55f6ef381245da079b2fc5ce1cfbcb7961197d0c0e04f9d977613cf9aa969a79 PKG_HASH:=554eca0b4d5b7b93cb2258fab0b0bd84cc8721e74322a2255c14e137cbcad5d2
PKG_NAME:=php8-pecl-xdebug PKG_NAME:=php8-pecl-xdebug
PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz

View file

@ -1,48 +0,0 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libebml
PKG_VERSION:=1.4.2
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/Matroska-Org/libebml/tar.gz/release-$(PKG_VERSION)?
PKG_HASH:=66486742fd4f443553ad1917505208404c8c4240c0ab26cedaf41d9476efc665
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=LICENSE.LGPL
CMAKE_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/libebml
SECTION:=libs
CATEGORY:=Libraries
TITLE:=a C++ libary to parse EBML files
URL:=https://github.com/Matroska-Org/libebml
DEPENDS:=+libstdcpp
BUILDONLY:=1
endef
define Package/libebml/description
a C++ libary to parse EBML files
Specifications may be rendered at http://matroska-org.github.io/libebml/
endef
CMAKE_OPTIONS += \
-DCMAKE_LINK_WHAT_YOU_USE=ON \
-DDISABLE_PKGCONFIG=OFF \
-DDISABLE_CMAKE_CONFIG=OFF \
-DENABLE_WIN32_IO=OFF
TARGET_LDFLAGS += -Wl,--gc-sections
$(eval $(call BuildPackage,libebml))

View file

@ -1,20 +0,0 @@
--- a/src/EbmlString.cpp
+++ b/src/EbmlString.cpp
@@ -34,6 +34,7 @@
\author Steve Lhomme <robux4 @ users.sf.net>
*/
#include <cassert>
+#include <limits>
#include "ebml/EbmlString.h"
--- a/src/EbmlUnicodeString.cpp
+++ b/src/EbmlUnicodeString.cpp
@@ -36,6 +36,7 @@
*/
#include <cassert>
+#include <limits>
#include "ebml/EbmlUnicodeString.h"

View file

@ -91,6 +91,11 @@ define Build/InstallDev
$(INSTALL_DATA) \ $(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/share/aclocal/gpgrt.m4 \ $(PKG_INSTALL_DIR)/usr/share/aclocal/gpgrt.m4 \
$(1)/usr/share/aclocal/ $(1)/usr/share/aclocal/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/gpg-error.pc \
$(1)/usr/lib/pkgconfig
endef endef
define Package/libgpg-error/install define Package/libgpg-error/install

View file

@ -1,47 +0,0 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libmatroska
PKG_VERSION:=1.6.3
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/Matroska-Org/libmatroska/tar.gz/release-$(PKG_VERSION)?
PKG_HASH:=0c8c875ae26ac69a722f7fd0f4a4fecb4fdff681f2a165f09c06a40cbf1d0de6
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=LICENSE.LGPL
CMAKE_INSTALL:=1
PKG_BUILD_DEPENDS:=libebml
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/libmatroska
SECTION:=libs
CATEGORY:=Libraries
TITLE:=a C++ libary to parse Matroska files (.mkv and .mka)
URL:=https://github.com/Matroska-Org/libmatroska
DEPENDS:=+libstdcpp
BUILDONLY:=1
endef
define Package/libmatroska/description
a C++ libary to parse and create Matroska files
endef
CMAKE_OPTIONS += \
-DCMAKE_LINK_WHAT_YOU_USE=ON \
-DDISABLE_PKGCONFIG=OFF \
-DDISABLE_CMAKE_CONFIG=OFF
TARGET_LDFLAGS += -Wl,--gc-sections
$(eval $(call BuildPackage,libmatroska))

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=liburing PKG_NAME:=liburing
PKG_VERSION:=2.2 PKG_VERSION:=2.3
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://git.kernel.dk/cgit/liburing/snapshot PKG_SOURCE_URL:=https://git.kernel.dk/cgit/liburing/snapshot
PKG_HASH:=f52bad18e3ff11185165d52d2d7391e90a0fce8f33f2ee611ad9a8ce1feaf914 PKG_HASH:=a65a6adbe80425c1c4d0740532ba42c3d4fd9dadd17a0e0bfd31c29e1c14dba8
PKG_MAINTAINER:=Christian Lachner <gladiac@gmail.com> PKG_MAINTAINER:=Christian Lachner <gladiac@gmail.com>
PKG_LICENSE:=MIT PKG_LICENSE:=MIT

View file

@ -1,50 +0,0 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=pugixml
PKG_VERSION:=1.12.1
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/zeux/pugixml/releases/download/v$(PKG_VERSION)
PKG_HASH:=dcf671a919cc4051210f08ffd3edf9e4247f79ad583c61577a13ee93af33afc7
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-1.12
PKG_MAINTAINER:=
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/pugixml
SECTION:=libs
CATEGORY:=Libraries
TITLE:=pugixml
URL:=https://github.com/zeux/pugixml
DEPENDS:=+libstdcpp
BUILDONLY:=1
endef
define Package/pugixml/description
pugixml is a C++ XML processing library, which consists of a DOM-like interface
with rich traversal/modification capabilities, an extremely fast XML parser which
constructs the DOM tree from an XML file/buffer, and an XPath 1.0 implementation
for complex data-driven tree queries. Full Unicode support is also available,
with Unicode interface variants and conversions between different Unicode encodings
(which happen automatically during parsing/saving).
endef
TARGET_CXXFLAGS += -flto
define Build/InstallDev
$(call Build/InstallDev/cmake,$(1))
$(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/pugixml.pc
$(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/pugixml.pc
endef
$(eval $(call BuildPackage,pugixml))

View file

@ -1,53 +0,0 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=spdlog
PKG_VERSION:=1.9.2
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/gabime/spdlog/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=6fff9215f5cb81760be4cc16d033526d1080427d236e86d70bb02994f85e3d38
PKG_MAINTAINER:=
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
CMAKE_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/spdlog
SECTION:=libs
CATEGORY:=Libraries
TITLE:=spdlog
URL:=https://github.com/gabime/spdlog
DEPENDS:=+libfmt
BUILDONLY:=1
endef
define Package/spdlog/description
Very fast, header-only/compiled, C++ logging library.
endef
CMAKE_OPTIONS += \
-DSPDLOG_BUILD_SHARED=OFF \
-DSPDLOG_BUILD_EXAMPLE=OFF \
-DSPDLOG_BUILD_EXAMPLE_HO=OFF \
-DSPDLOG_BUILD_TESTS=OFF \
-DSPDLOG_BUILD_TESTS_HO=OFF \
-DSPDLOG_BUILD_BENCH=OFF \
-DSPDLOG_SANITIZE_ADDRESS=OFF \
-DSPDLOG_INSTALL=ON \
-DSPDLOG_FMT_EXTERNAL=ON \
-DSPDLOG_FMT_EXTERNAL_HO=OFF \
-DSPDLOG_NO_EXCEPTIONS=OFF
TARGET_CXXFLAGS += -flto
$(eval $(call BuildPackage,spdlog))

View file

@ -7,6 +7,13 @@ config SQLITE3_BATCH_ATOMIC_WRITE
help help
Enable batch-atomic write optimization (supported only on F2FS). Enable batch-atomic write optimization (supported only on F2FS).
config SQLITE3_COLUMN_METADATA
bool "Column metadata API extensions"
default y
help
Includes some additional APIs that provide convenient access to
meta-data about tables and queries.
config SQLITE3_DYNAMIC_EXTENSIONS config SQLITE3_DYNAMIC_EXTENSIONS
bool "Dynamic extensions" bool "Dynamic extensions"
default y default y

View file

@ -8,30 +8,26 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=sqlite PKG_NAME:=sqlite
PKG_VERSION:=3370000 PKG_VERSION:=3400000
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz
PKG_HASH:=731a4651d4d4b36fc7d21db586b2de4dd00af31fd54fb5a9a4b7f492057479f7 PKG_SOURCE_URL:=https://www.sqlite.org/2022/
PKG_SOURCE_URL:=https://www.sqlite.org/2021/ PKG_HASH:=0333552076d2700c75352256e91c78bf5cd62491589ba0c69aed0a81868980e7
PKG_CPE_ID:=cpe:/a:sqlite:sqlite
PKG_LICENSE:=PUBLICDOMAIN PKG_LICENSE:=PUBLICDOMAIN
PKG_LICENSE_FILES:= PKG_LICENSE_FILES:=
PKG_MAINTAINER:= PKG_MAINTAINER:=
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-autoconf-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-autoconf-$(PKG_VERSION)
PKG_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1
PKG_CPE_ID:=cpe:/a:sqlite:sqlite
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_CONFIG_DEPENDS := \ PKG_CONFIG_DEPENDS := \
CONFIG_SQLITE3_BATCH_ATOMIC_WRITE \ CONFIG_SQLITE3_BATCH_ATOMIC_WRITE \
CONFIG_SQLITE3_COLUMN_METADATA \
CONFIG_SQLITE3_DYNAMIC_EXTENSIONS \ CONFIG_SQLITE3_DYNAMIC_EXTENSIONS \
CONFIG_SQLITE3_FTS3 \ CONFIG_SQLITE3_FTS3 \
CONFIG_SQLITE3_FTS4 \ CONFIG_SQLITE3_FTS4 \
@ -101,7 +97,8 @@ TARGET_CFLAGS += \
-DHAVE_ISNAN \ -DHAVE_ISNAN \
-DHAVE_MALLOC_USABLE_SIZE \ -DHAVE_MALLOC_USABLE_SIZE \
-DSQLITE_ENABLE_UNLOCK_NOTIFY \ -DSQLITE_ENABLE_UNLOCK_NOTIFY \
$(if $(CONFIG_SQLITE3_BATCH_ATOMIC_WRITE),-DSQLITE_ENABLE_BATCH_ATOMIC_WRITE) $(if $(CONFIG_SQLITE3_BATCH_ATOMIC_WRITE),-DSQLITE_ENABLE_BATCH_ATOMIC_WRITE) \
$(if $(CONFIG_SQLITE3_COLUMN_METADATA),-DSQLITE_ENABLE_COLUMN_METADATA)
CONFIGURE_ARGS += \ CONFIGURE_ARGS += \
--disable-debug \ --disable-debug \
@ -111,8 +108,8 @@ CONFIGURE_ARGS += \
--enable-threadsafe \ --enable-threadsafe \
$(if $(CONFIG_SQLITE3_DYNAMIC_EXTENSIONS),--enable-dynamic-extensions,--disable-dynamic-extensions) \ $(if $(CONFIG_SQLITE3_DYNAMIC_EXTENSIONS),--enable-dynamic-extensions,--disable-dynamic-extensions) \
$(if $(CONFIG_SQLITE3_FTS3),--enable-fts3,--disable-fts3) \ $(if $(CONFIG_SQLITE3_FTS3),--enable-fts3,--disable-fts3) \
$(if $(CONFIG_SQLITE3_FTS3),--enable-fts4,--disable-fts4) \ $(if $(CONFIG_SQLITE3_FTS4),--enable-fts4,--disable-fts4) \
$(if $(CONFIG_SQLITE3_FTS3),--enable-fts5,--disable-fts5) \ $(if $(CONFIG_SQLITE3_FTS5),--enable-fts5,--disable-fts5) \
$(if $(CONFIG_SQLITE3_JSON1),--enable-json1,--disable-json1) \ $(if $(CONFIG_SQLITE3_JSON1),--enable-json1,--disable-json1) \
$(if $(CONFIG_SQLITE3_RTREE),--enable-rtree,--disable-rtree) \ $(if $(CONFIG_SQLITE3_RTREE),--enable-rtree,--disable-rtree) \
$(if $(CONFIG_SQLITE3_SESSION),--enable-session,--disable-session) $(if $(CONFIG_SQLITE3_SESSION),--enable-session,--disable-session)

View file

@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=ices PKG_NAME:=ices
PKG_VERSION:=2.0.2 PKG_VERSION:=2.0.3
PKG_RELEASE:=2 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://downloads.xiph.org/releases/ices/ PKG_SOURCE_URL:=http://downloads.xiph.org/releases/ices/
PKG_HASH:=96458df835033c39236ad3bb099286c033241f8ea7c138e7ccf714e7ade75900 PKG_HASH:=e620c67c8b311520b1d6a8a89d7fd1d1d08f299534d274b8a1a36ed33a7ee4a8
PKG_LICENSE:=GPL-2.0 PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING

View file

@ -1,14 +1,14 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=tvheadend PKG_NAME:=tvheadend
PKG_VERSION:=2021-11-16 PKG_VERSION:=2022-11-20
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/tvheadend/tvheadend.git PKG_SOURCE_URL:=https://github.com/tvheadend/tvheadend.git
PKG_MIRROR_HASH:=1645e90b6b8f104f2749fb0911493010f7ae3176253f2a96a4d6094536207c03 PKG_MIRROR_HASH:=9c1bb3eea3f3539454d17e4c6aabc774a104a772aa34ed39f248521cf6488ce5
PKG_SOURCE_VERSION:=2efe90cdcf74fdc4179692d283cf46c85e1cf681 PKG_SOURCE_VERSION:=0ff96106aa2e0f9a384c3a2662ca005797a6b399
PKG_SOURCE_DATE:=2021-11-16 PKG_SOURCE_DATE:=2022-11-20
PKG_LICENSE:=GPL-3.0 PKG_LICENSE:=GPL-3.0
PKG_LICENSE_FILES:=LICENSE.md PKG_LICENSE_FILES:=LICENSE.md
@ -220,6 +220,7 @@ CONFIGURE_ARGS += \
--disable-pcloud_cache \ --disable-pcloud_cache \
--enable-bundle \ --enable-bundle \
--disable-uriparser \ --disable-uriparser \
--disable-execinfo \
--nowerror=unused-variable --nowerror=unused-variable
## Transcoding | Remove these from CONFIGURE_ARGS. ## Transcoding | Remove these from CONFIGURE_ARGS.

View file

@ -18,11 +18,12 @@ TVH_GROUP=dvb
execute_first_run() { execute_first_run() {
# $1 is the config dir. Default: /etc/tvheadend
mkdir -p "$1" mkdir -p "$1"
chown -R $TVH_USER "$1" chown -R $TVH_USER "$1"
# This should create a new configuration including an admin account with no name and no password, # This should create a new configuration including an admin account with no name and no password,
# but it aborts (-A) without saving it: # but it aborts (-A) without saving it:
#"$PROG" -c "$1" -B -C -A -u $TVH_USER -g $TVH_GROUP >/dev/null 2>&1 # "$PROG" -c "$1" -B -C -A -u $TVH_USER -g $TVH_GROUP >/dev/null 2>&1
# Instead, run it for 10s then kill it: # Instead, run it for 10s then kill it:
"$PROG" -c "$1" -B -C -u $TVH_USER -g $TVH_GROUP & TVH_PID=$! ; sleep 10 ; kill $TVH_PID ; sleep 2 "$PROG" -c "$1" -B -C -u $TVH_USER -g $TVH_GROUP & TVH_PID=$! ; sleep 10 ; kill $TVH_PID ; sleep 2
} }
@ -41,15 +42,15 @@ ensure_config_exists() {
fi fi
# if use_temp_epgdb is enabled (default), most of the config is put to config_path # if use_temp_epgdb is enabled (default), most of the config is put to config_path
# (or /etc/config), except for epgdb.v2, which grows quite large and is write-heavy, # (or /etc/config), except for epgdb.v3, which grows quite large and is write-heavy,
# so it's put into volatile tmpfs # so it's put into volatile tmpfs
# epgdb.v2 is created and symlinked to main config dir upon each start (if it doesn't exist) # epgdb.v3 is created and symlinked to main config dir upon each start (if it doesn't exist)
config_get_bool use_temp_epgdb service use_temp_epgdb 1 config_get_bool use_temp_epgdb service use_temp_epgdb 1
if [ "$use_temp_epgdb" == "1" ]; then if [ "$use_temp_epgdb" == "1" ]; then
TEMP_EPG="${TEMP_CONFIG}/epgdb.v2" TEMP_EPG="${TEMP_CONFIG}/epgdb.v3"
[ ! -f "$TEMP_EPG" ] && mkdir -p "$TEMP_CONFIG" && touch "$TEMP_EPG" && chmod 700 "$TEMP_EPG" [ ! -f "$TEMP_EPG" ] && mkdir -p "$TEMP_CONFIG" && touch "$TEMP_EPG" && chmod 755 "$TEMP_CONFIG" && chmod 644 "$TEMP_EPG" && chown -R $TVH_USER "$TEMP_CONFIG"
[ -z "$config_path" ] && config_path="$PERSISTENT_CONFIG" [ -z "$config_path" ] && config_path="$PERSISTENT_CONFIG"
ln -sf "$TEMP_EPG" "${config_path}/epgdb.v2" ln -sf "$TEMP_EPG" "${config_path}/epgdb.v3"
fi fi
} }

View file

@ -46,7 +46,8 @@ get)
case $status in case $status in
0) 0)
$NOTIFY renewed $NOTIFY renewed
exit;; exit
;;
2) 2)
# renew skipped, ignore. # renew skipped, ignore.
exit exit
@ -109,10 +110,10 @@ get)
case $status in case $status in
0) 0)
ln -s "$domain_dir/$main_domain.cer" /etc/ssl/acme ln -s "$domain_dir/$main_domain.cer" "/etc/ssl/acme/$main_domain.crt"
ln -s "$domain_dir/$main_domain.key" /etc/ssl/acme ln -s "$domain_dir/$main_domain.key" /etc/ssl/acme
ln -s "$domain_dir/fullchain.cer" "/etc/ssl/acme/$main_domain.fullchain.cer" ln -s "$domain_dir/fullchain.cer" "/etc/ssl/acme/$main_domain.fullchain.crt"
ln -s "$domain_dir/ca.cer" "/etc/ssl/acme/$main_domain.chain.cer" ln -s "$domain_dir/ca.cer" "/etc/ssl/acme/$main_domain.chain.crt"
$NOTIFY issued $NOTIFY issued
;; ;;
*) *)

View file

@ -6,13 +6,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=adguardhome PKG_NAME:=adguardhome
PKG_VERSION:=0.107.16 PKG_VERSION:=0.107.18
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_SOURCE_URL:=https://github.com/AdguardTeam/AdGuardHome PKG_SOURCE_URL:=https://github.com/AdguardTeam/AdGuardHome
PKG_MIRROR_HASH:=c41f8e9b9495b1684adcd1a9c0fe7af4a3ec225b19ced46fce477c4fb0db1ed4 PKG_MIRROR_HASH:=d362e4ab0f18b9c06d58b84e020ff578ffa25d6b7dacf0bb7755a789d8e678dd
PKG_LICENSE:=GPL-3.0-only PKG_LICENSE:=GPL-3.0-only
PKG_LICENSE_FILES:=LICENSE.txt PKG_LICENSE_FILES:=LICENSE.txt

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=ariang PKG_NAME:=ariang
PKG_VERSION:=1.2.4 PKG_VERSION:=1.3.2
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip
PKG_SOURCE_URL:=https://github.com/mayswind/AriaNg/releases/download/$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/mayswind/AriaNg/releases/download/$(PKG_VERSION)
PKG_HASH:=a72dc5d7640e864c2dd528c88db493a3056087412537e87c6c5a98141a482380 PKG_HASH:=2186dacf57c9d1650e00084c0454f2227e910f3203d89c6190f547b40cac7243
UNPACK_CMD=unzip -q -d $(1) $(DL_DIR)/$(PKG_SOURCE) UNPACK_CMD=unzip -q -d $(1) $(DL_DIR)/$(PKG_SOURCE)
PKG_MAINTAINER:=Ansuel Smith <ansuelsmth@gmail.com> PKG_MAINTAINER:=Ansuel Smith <ansuelsmth@gmail.com>

View file

@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=cloudflared PKG_NAME:=cloudflared
PKG_VERSION:=2022.10.3 PKG_VERSION:=2022.11.0
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/cloudflare/cloudflared/tar.gz/$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/cloudflare/cloudflared/tar.gz/$(PKG_VERSION)?
PKG_HASH:=e49db875da7513d8ae950b20c636225016022866850ff3df2484c0f56cdc4bc4 PKG_HASH:=01478108dc4a4a74b2a9eecda35b1b7cc69ce33f45fe0c94edf598b90154fda0
PKG_LICENSE:=Apache-2.0 PKG_LICENSE:=Apache-2.0
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=frp PKG_NAME:=frp
PKG_VERSION:=0.44.0 PKG_VERSION:=0.45.0
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/fatedier/frp/tar.gz/v${PKG_VERSION}? PKG_SOURCE_URL:=https://codeload.github.com/fatedier/frp/tar.gz/v${PKG_VERSION}?
PKG_HASH:=51a908c12ddf5cab0f3223f09ba7b8ff0890075d399fd2b51839abcf57b9d159 PKG_HASH:=829cf9f14861ab1b074de6995282f30292f53513824372cfec4084a2e8de7123
PKG_MAINTAINER:=Richard Yu <yurichard3839@gmail.com> PKG_MAINTAINER:=Richard Yu <yurichard3839@gmail.com>
PKG_LICENSE:=Apache-2.0 PKG_LICENSE:=Apache-2.0

View file

@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=gg PKG_NAME:=gg
PKG_VERSION:=0.2.14 PKG_VERSION:=0.2.15
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/mzz2017/gg/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/mzz2017/gg/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=f1438f2f2d4f376c3cec69d6a822fdf00f8511c56c32f6f48b13ee67b361341c PKG_HASH:=8fde9a593daa535a186bacf909e41a4154ce666fb7c395bdccf81994c4658089
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org> PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
PKG_LICENSE:=AGPL-3.0-only PKG_LICENSE:=AGPL-3.0-only

View file

@ -28,8 +28,8 @@ define Package/https-dns-proxy
endef endef
define Package/https-dns-proxy/description define Package/https-dns-proxy/description
https-dns-proxy is a light-weight DNS<-->HTTPS, non-caching translation proxy for the RFC 8484 DoH standard. Light-weight DNS-over-HTTPS, non-caching translation proxy for the RFC 8484 DoH standard.
It receives regular (UDP) DNS requests and issues them via DoH. It receives regular (UDP) DNS requests and resolves them via DoH resolver.
Please see https://docs.openwrt.melmac.net/https-dns-proxy/ for more information. Please see https://docs.openwrt.melmac.net/https-dns-proxy/ for more information.
endef endef

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=knot PKG_NAME:=knot
PKG_VERSION:=3.2.2 PKG_VERSION:=3.2.3
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://secure.nic.cz/files/knot-dns/ PKG_SOURCE_URL:=https://secure.nic.cz/files/knot-dns/
PKG_HASH:=cea9c1988cdce7752f88fbe37378f65e83c4e54048978b94fb21a9c92f88788f PKG_HASH:=f736ef284358923e312f8e1e3c6ce7c97b20965b09eb65705e9f7e3d5e9a9d79
PKG_MAINTAINER:=Daniel Salzman <daniel.salzman@nic.cz> PKG_MAINTAINER:=Daniel Salzman <daniel.salzman@nic.cz>
PKG_LICENSE:=GPL-3.0 LGPL-2.0 0BSD BSD-3-Clause OLDAP-2.8 PKG_LICENSE:=GPL-3.0 LGPL-2.0 0BSD BSD-3-Clause OLDAP-2.8

View file

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=nextdns PKG_NAME:=nextdns
PKG_VERSION:=1.37.11 PKG_VERSION:=1.38.0
PKG_RELEASE:=2 PKG_RELEASE:=1
PKG_SOURCE:=nextdns-$(PKG_VERSION).tar.gz PKG_SOURCE:=nextdns-$(PKG_VERSION).tar.gz
PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_SOURCE_URL:=https://codeload.github.com/nextdns/nextdns/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/nextdns/nextdns/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=f70cb424b0ae47456c8579d3910b486f75afde34572f28f8cf6eb1222e59b88b PKG_HASH:=74cd9d37ea9051b5b5f8f10be1462fb4ebe77b4dbcccd8c94ba049828bd21bff
PKG_MAINTAINER:=Olivier Poitrey <rs@nextdns.io> PKG_MAINTAINER:=Olivier Poitrey <rs@nextdns.io>
PKG_LICENSE:=MIT PKG_LICENSE:=MIT

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=ooniprobe PKG_NAME:=ooniprobe
PKG_VERSION:=3.14.2 PKG_VERSION:=3.16.5
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=probe-cli-$(PKG_VERSION).tar.gz PKG_SOURCE:=probe-cli-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ooni/probe-cli/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/ooni/probe-cli/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=a0b71089444c899ba99c7f63f9e05819cdbe964cfa17bb95ca5672343e6aec22 PKG_HASH:=198f7a3507482bfbf0fb24c24f34e17c9f5adbfdf5d8c63774ecd816708a4438
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com> PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>
PKG_LICENSE:=BSD-3-Clause PKG_LICENSE:=BSD-3-Clause

View file

@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=rclone PKG_NAME:=rclone
PKG_VERSION:=1.60.0 PKG_VERSION:=1.60.1
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/rclone/rclone/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/rclone/rclone/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=357ee8bb1c1589d9640f1eb87ffeb9dbe8bc7ea6f33f90f56df142515a32f4f2 PKG_HASH:=b0037124c04fd1c31a1d9ae1c80e25555da3a22d7ab1ae714ed2c02247fbdac5
PKG_LICENSE:=MIT PKG_LICENSE:=MIT
PKG_LICENSE_FILE:=LICENSE PKG_LICENSE_FILE:=LICENSE

View file

@ -5,8 +5,8 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=simple-adblock PKG_NAME:=simple-adblock
PKG_VERSION:=1.9.2 PKG_VERSION:=1.9.3
PKG_RELEASE:=4 PKG_RELEASE:=1
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca> PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE:=GPL-3.0-or-later

View file

@ -7,6 +7,7 @@ config simple-adblock 'config'
option compressed_cache '0' option compressed_cache '0'
option config_update_enabled '0' option config_update_enabled '0'
option config_update_url 'https://cdn.jsdelivr.net/gh/openwrt/packages/net/simple-adblock/files/simple-adblock.conf.update' option config_update_url 'https://cdn.jsdelivr.net/gh/openwrt/packages/net/simple-adblock/files/simple-adblock.conf.update'
# option curl_max_file_size '1000000'
option curl_retry '3' option curl_retry '3'
option download_timeout '10' option download_timeout '10'
option debug '0' option debug '0'
@ -56,7 +57,7 @@ config simple-adblock 'config'
# File size: 624.0K # File size: 624.0K
# block-list too big for most routers # block-list too big for most routers
# list blocked_hosts_url 'http://sysctl.org/cameleon/hosts' # list blocked_hosts_url 'http://sysctl.org/cameleon/hosts'
# File size: 1.6M # File size: 1.6M
# block-list too big for most routers # block-list too big for most routers
@ -66,7 +67,11 @@ config simple-adblock 'config'
# block-list too big for most routers # block-list too big for most routers
# list blocked_hosts_url 'https://hostsfile.mine.nu/Hosts' # list blocked_hosts_url 'https://hostsfile.mine.nu/Hosts'
# File size: 23.0M # File size: 8.3M
# enabling this will disable processing of any other block/allow-lists
# option dnsmasq_config_file_url 'https://dnsmasq.oisd.nl/'
# File size: 34.0M
# block-list too big for most routers # block-list too big for most routers
# list blocked_hosts_url 'https://hosts.oisd.nl/' # list blocked_hosts_url 'https://hosts.oisd.nl/'

View file

@ -62,6 +62,7 @@ readonly sharedMemoryError="/dev/shm/$packageName-error"
readonly sharedMemoryOutput="/dev/shm/$packageName-output" readonly sharedMemoryOutput="/dev/shm/$packageName-output"
readonly hostsFilter='/localhost/d;/^#/d;/^[^0-9]/d;s/^0\.0\.0\.0.//;s/^127\.0\.0\.1.//;s/[[:space:]]*#.*$//;s/[[:cntrl:]]$//;s/[[:space:]]//g;/[`~!@#\$%\^&\*()=+;:"'\'',<>?/\|[{}]/d;/]/d;/\./!d;/^$/d;/[^[:alnum:]_.-]/d;' readonly hostsFilter='/localhost/d;/^#/d;/^[^0-9]/d;s/^0\.0\.0\.0.//;s/^127\.0\.0\.1.//;s/[[:space:]]*#.*$//;s/[[:cntrl:]]$//;s/[[:space:]]//g;/[`~!@#\$%\^&\*()=+;:"'\'',<>?/\|[{}]/d;/]/d;/\./!d;/^$/d;/[^[:alnum:]_.-]/d;'
readonly domainsFilter='/^#/d;s/[[:space:]]*#.*$//;s/[[:space:]]*$//;s/[[:cntrl:]]$//;/[[:space:]]/d;/[`~!@#\$%\^&\*()=+;:"'\'',<>?/\|[{}]/d;/]/d;/\./!d;/^$/d;/[^[:alnum:]_.-]/d;' readonly domainsFilter='/^#/d;s/[[:space:]]*#.*$//;s/[[:space:]]*$//;s/[[:cntrl:]]$//;/[[:space:]]/d;/[`~!@#\$%\^&\*()=+;:"'\'',<>?/\|[{}]/d;/]/d;/\./!d;/^$/d;/[^[:alnum:]_.-]/d;'
readonly dnsmasqAddressFilter='\|^address=/[[:alnum:]_.-].*/#|!d'
readonly _OK_='\033[0;32m\xe2\x9c\x93\033[0m' readonly _OK_='\033[0;32m\xe2\x9c\x93\033[0m'
readonly _FAIL_='\033[0;31m\xe2\x9c\x97\033[0m' readonly _FAIL_='\033[0;31m\xe2\x9c\x97\033[0m'
readonly __OK__='\033[0;32m[\xe2\x9c\x93]\033[0m' readonly __OK__='\033[0;32m[\xe2\x9c\x93]\033[0m'
@ -74,7 +75,6 @@ readonly ipset="$(command -v ipset)"
readonly nft="$(command -v nft)" readonly nft="$(command -v nft)"
readonly canaryDomainsMozilla='use-application-dns.net' readonly canaryDomainsMozilla='use-application-dns.net'
readonly canaryDomainsiCloud='mask.icloud.com mask-h2.icloud.com' readonly canaryDomainsiCloud='mask.icloud.com mask-h2.icloud.com'
# readonly canaryDomains="$canaryDomainsMozilla $canaryDomainsiCloud"
debug() { local i j; for i in "$@"; do eval "j=\$$i"; echo "${i}: ${j} "; done; } debug() { local i j; for i in "$@"; do eval "j=\$$i"; echo "${i}: ${j} "; done; }
@ -184,7 +184,7 @@ output() {
load_environment() { load_environment() {
local i j wan_if wan_gw local i j wan_if wan_gw
local validation_result="$1" local validation_result="$1" quiet="$2"
if [ "$validation_result" != '0' ]; then if [ "$validation_result" != '0' ]; then
output "${_ERROR_}: $packageName config validation failed!\\n" output "${_ERROR_}: $packageName config validation failed!\\n"
@ -205,7 +205,18 @@ load_environment() {
set -x set -x
fi fi
case $dns in if [ -n "$dnsmasq_config_file_url" ]; then
case "$dns" in
dnsmasq.conf) :;;
*)
if [ -z "$quiet" ]; then
output "$_WARNING_: use of external dnsmasq config file detected, please set 'dns' option to 'dnsmasq.conf'!\\n"
fi
;;
esac
fi
case "$dns" in
dnsmasq.addnhosts|dnsmasq.conf|dnsmasq.ipset|dnsmasq.nftset|dnsmasq.servers) dnsmasq.addnhosts|dnsmasq.conf|dnsmasq.ipset|dnsmasq.nftset|dnsmasq.servers)
if dnsmasq -v 2>/dev/null | grep -q 'no-IDN' || ! dnsmasq -v 2>/dev/null | grep -q -w 'IDN'; then if dnsmasq -v 2>/dev/null | grep -q 'no-IDN' || ! dnsmasq -v 2>/dev/null | grep -q -w 'IDN'; then
allow_non_ascii=0 allow_non_ascii=0
@ -215,24 +226,32 @@ load_environment() {
allow_non_ascii=1;; allow_non_ascii=1;;
esac esac
case $dns in case "$dns" in
dnsmasq.ipset) dnsmasq.ipset)
if dnsmasq -v 2>/dev/null | grep -q 'no-ipset' || ! dnsmasq -v 2>/dev/null | grep -q -w 'ipset'; then if dnsmasq -v 2>/dev/null | grep -q 'no-ipset' || ! dnsmasq -v 2>/dev/null | grep -q -w 'ipset'; then
output "$_ERROR_: dnsmasq ipset support is enabled in $packageName, but dnsmasq is either not installed or installed dnsmasq does not support ipset!\\n" if [ -z "$quiet" ]; then
output "$_ERROR_: dnsmasq ipset support is enabled in $packageName, but dnsmasq is either not installed or installed dnsmasq does not support ipset!\\n"
fi
dns='dnsmasq.servers' dns='dnsmasq.servers'
fi fi
if ! ipset help hash:net; then if ! ipset help hash:net; then
output "$_ERROR_: dnsmasq ipset support is enabled in $packageName, but ipset is either not installed or installed ipset does not support 'hash:net' type!\\n" if [ -z "$quiet" ]; then
output "$_ERROR_: dnsmasq ipset support is enabled in $packageName, but ipset is either not installed or installed ipset does not support 'hash:net' type!\\n"
fi
dns='dnsmasq.servers' dns='dnsmasq.servers'
fi fi
;; ;;
dnsmasq.nftset) dnsmasq.nftset)
if dnsmasq -v 2>/dev/null | grep -q 'no-nftset' || ! dnsmasq -v 2>/dev/null | grep -q -w 'nftset'; then if dnsmasq -v 2>/dev/null | grep -q 'no-nftset' || ! dnsmasq -v 2>/dev/null | grep -q -w 'nftset'; then
output "$_ERROR_: dnsmasq nft sets support is enabled in $packageName, but dnsmasq is either not installed or installed dnsmasq does not support nft sets!\\n" if [ -z "$quiet" ]; then
output "$_ERROR_: dnsmasq nft sets support is enabled in $packageName, but dnsmasq is either not installed or installed dnsmasq does not support nft sets!\\n"
fi
dns='dnsmasq.servers' dns='dnsmasq.servers'
fi fi
if [ -z "$nft" ]; then if [ -z "$nft" ]; then
output "$_ERROR_: dnsmasq nft sets support is enabled in $packageName, but nft is not installed!\\n" if [ -z "$quiet" ]; then
output "$_ERROR_: dnsmasq nft sets support is enabled in $packageName, but nft is not installed!\\n"
fi
dns='dnsmasq.servers' dns='dnsmasq.servers'
fi fi
;; ;;
@ -332,21 +351,29 @@ load_environment() {
is_present '/usr/libexec/grep-gnu' || s="$s grep" is_present '/usr/libexec/grep-gnu' || s="$s grep"
is_present '/usr/libexec/sed-gnu' || s="$s sed" is_present '/usr/libexec/sed-gnu' || s="$s sed"
is_present '/usr/libexec/sort-coreutils' || s="$s coreutils-sort" is_present '/usr/libexec/sort-coreutils' || s="$s coreutils-sort"
output "$_WARNING_: Some recommended packages are missing, install them by running:\\n" if [ -z "$quiet" ]; then
output "$s;\\n" output "$_WARNING_: Some recommended packages are missing, install them by running:\\n"
output "$s;\\n"
fi
fi fi
# Prefer curl because it supports the file:// scheme. # Prefer curl because it supports the file:// scheme.
if is_present 'curl'; then if is_present 'curl'; then
dl_command="curl --insecure --retry $curl_retry --connect-timeout $download_timeout --silent" dl_command="curl --silent --insecure"
dl_command="${dl_command}${curl_max_file_size:+ --max-filesize $curl_max_file_size}"
dl_command="${dl_command}${curl_retry:+ --retry $curl_retry}"
dl_command="${dl_command}${download_timeout:+ --connect-timeout $download_timeout}"
dl_flag="-o" dl_flag="-o"
elif is_present '/usr/libexec/wget-ssl'; then elif is_present '/usr/libexec/wget-ssl'; then
dl_command="/usr/libexec/wget-ssl --no-check-certificate --timeout $download_timeout -q" dl_command="/usr/libexec/wget-ssl --no-check-certificate -q"
dl_command="${dl_command}${download_timeout:+ --timeout $download_timeout}"
dl_flag="-O" dl_flag="-O"
elif is_present wget && wget --version 2>/dev/null | grep -q "+https"; then elif is_present wget && wget --version 2>/dev/null | grep -q "+https"; then
dl_command="wget --no-check-certificate --timeout $download_timeout -q" dl_command="wget --no-check-certificate -q"
dl_command="${dl_command}${download_timeout:+ --timeout $download_timeout}"
dl_flag="-O" dl_flag="-O"
else else
dl_command="uclient-fetch --no-check-certificate --timeout $download_timeout -q" dl_command="uclient-fetch --no-check-certificate -q"
dl_command="${dl_command}${download_timeout:+ --timeout $download_timeout}"
dl_flag="-O" dl_flag="-O"
fi fi
led="${led:+/sys/class/leds/$led}" led="${led:+/sys/class/leds/$led}"
@ -359,6 +386,7 @@ load_environment() {
else else
unset isSSLSupported unset isSSLSupported
fi fi
cache 'test' && return 0
cache 'test_gzip' && return 0 cache 'test_gzip' && return 0
network_flush_cache; network_find_wan wan_if; network_get_gateway wan_gw "$wan_if"; network_flush_cache; network_find_wan wan_if; network_get_gateway wan_gw "$wan_if";
[ -n "$wan_gw" ] && return 0 [ -n "$wan_gw" ] && return 0
@ -503,7 +531,9 @@ json() {
get) get)
case "$param" in case "$param" in
triggers) triggers)
curReload="$parallel_downloads $debug $download_timeout $allowed_domain $blocked_domain $allowed_domains_url $blocked_domains_url $blocked_hosts_url $dns $config_update_enabled $config_update_url" curReload="$parallel_downloads $debug $download_timeout $allowed_domain $blocked_domain $allowed_domains_url \
$blocked_domains_url $blocked_hosts_url $dns $config_update_enabled $config_update_url \
$dnsmasq_config_file_url $curl_max_file_size $curl_retry"
curRestart="$compressed_cache $force_dns $led $force_dns_port" curRestart="$compressed_cache $force_dns $led $force_dns_port"
if [ ! -s "$jsonFile" ]; then if [ ! -s "$jsonFile" ]; then
ret='on_boot' ret='on_boot'
@ -537,7 +567,9 @@ json() {
set) set)
case "$param" in case "$param" in
triggers) triggers)
reload="$parallel_downloads $debug $download_timeout $allowed_domain $blocked_domain $allowed_domains_url $blocked_domains_url $blocked_hosts_url $dns $config_update_enabled $config_update_url" reload="$parallel_downloads $debug $download_timeout $allowed_domain $blocked_domain $allowed_domains_url \
$blocked_domains_url $blocked_hosts_url $dns $config_update_enabled $config_update_url \
$dnsmasq_config_file_url $curl_max_file_size $curl_retry"
restart="$compressed_cache $force_dns $led $force_dns_port" restart="$compressed_cache $force_dns $led $force_dns_port"
;; ;;
*) *)
@ -604,16 +636,16 @@ process_url() {
local label type D_TMP R_TMP local label type D_TMP R_TMP
if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ]; then return 1; fi if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ]; then return 1; fi
label="${1##*//}"; label="${label%%/*}"; label="${1##*//}"; label="${label%%/*}";
if [ "$2" = 'hosts' ]; then case "$2" in
label="Hosts: $label"; filter="$hostsFilter"; dnsmasq) label="Dnsmasq: $label"; filter="$dnsmasqAddressFilter";;
else domains) label="Domains: $label"; filter="$domainsFilter";;
label="Domains: $label"; filter="$domainsFilter"; hosts) label="Hosts: $label"; filter="$hostsFilter";;
fi esac
if [ "$3" = 'blocked' ]; then case "$3" in
type='Blocked'; D_TMP="$B_TMP"; allowed) type='Allowed'; D_TMP="$A_TMP";;
else blocked) type='Blocked'; D_TMP="$B_TMP";;
type='Allowed'; D_TMP="$A_TMP"; file) type='File'; D_TMP="$B_TMP";;
fi esac
if [ "${1:0:5}" = "https" ] && [ -z "$isSSLSupported" ]; then if [ "${1:0:5}" = "https" ] && [ -z "$isSSLSupported" ]; then
output 1 "$_FAIL_" output 1 "$_FAIL_"
output 2 "[DL] $type $label $__FAIL__\\n" output 2 "[DL] $type $label $__FAIL__\\n"
@ -643,6 +675,42 @@ process_url() {
return 0 return 0
} }
download_dnsmasq_file() {
local hf allow_filter j=0 R_TMP
json set message "$(get_status_text "statusDownloading")..."
json set status "statusDownloading"
rm -f "$A_TMP" "$B_TMP" "$outputFile" "$outputCache" "$outputGzip"
if [ "$($awk '/^MemFree/ {print int($2/1000)}' "/proc/meminfo")" -lt 32 ]; then
output 3 'Low free memory, restarting resolver '
if dns 'quiet'; then
output_okn
else
output_failn
fi
fi
touch $A_TMP; touch $B_TMP;
output 1 'Downloading dnsmasq file '
rm -f "$sharedMemoryError"
process_url "$dnsmasq_config_file_url" 'dnsmasq' 'file'
# output 1 '\n'
if [ -s "$sharedMemoryError" ]; then
while IFS= read -r line; do
json add error "$line"
done < "$sharedMemoryError"
rm -f "$sharedMemoryError"
fi
output 2 'Creating dnsmasq file '
if mv "$B_TMP" "$outputFile"; then
output 2 "$__OK__\\n"
else
output 2 "$__FAIL__\\n"
json add error "errorMovingDataFile"
fi
output 1 '\n'
}
download_lists() { download_lists() {
local hf allow_filter j=0 R_TMP local hf allow_filter j=0 R_TMP
@ -655,7 +723,7 @@ download_lists() {
if dns 'quiet'; then if dns 'quiet'; then
output_okn output_okn
else else
output_fail output_failn
fi fi
fi fi
touch $A_TMP; touch $B_TMP; touch $A_TMP; touch $B_TMP;
@ -858,135 +926,140 @@ $(cat $A_TMP)"
adb_allow() { adb_allow() {
local c hf string="$1" local c hf string="$1"
local validation_result="$3" local validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
if [ ! -s "$outputFile" ]; then if [ ! -s "$outputFile" ]; then
output "No block-list ('$outputFile') found.\\n" output "No block-list ('$outputFile') found.\\n"
return 0
elif [ -z "$string" ]; then elif [ -z "$string" ]; then
output "Usage: /etc/init.d/${packageName} allow 'domain' ...\\n" output "Usage: /etc/init.d/${packageName} allow 'domain' ...\\n"
else return 0
case "$dns" in elif [ -n "$dnsmasq_config_file_url" ]; then
dnsmasq.addnhosts|dnsmasq.conf|dnsmasq.ipset|dnsmasq.nftset|dnsmasq.servers) output "Allowing individual domains is not possible when using external dnsmasq config file.\\n"
output 1 "Allowing domain(s) and restarting dnsmasq " return 0
output 2 "Allowing domain(s) \\n"
for c in $string; do
output 2 " $c "
hf="$(echo "$c" | sed 's/\./\\./g')"
if sed -i "/^${hf}$/d;/\.${hf}$/d;" "$outputFile" && \
uci_add_list_if_new "${packageName}" 'config' 'allowed_domain' "$c"; then
output_ok
else
output_fail
fi
done
if [ "$compressed_cache" -gt 0 ]; then
output 2 'Creating compressed cache '
if cache 'create_gzip'; then
output_ok
else
output_failn
fi
fi
output 2 "Committing changes to config "
if [ -n "$(uci_changes "$packageName")" ] && uci_commit "$packageName"; then
allowed_domain="$(uci_get "$packageName" 'config' 'allowed_domain')"
json set triggers
json set stats "$serviceName is blocking $(wc -l < "$outputFile") domains (with ${dns})"
output_ok;
if [ "$dns" = 'dnsmasq.ipset' ]; then
output 2 "Flushing adb ipset "
if ipset -q -! flush adb; then output_ok; else output_fail; fi
fi
if [ "$dns" = 'dnsmasq.nftset' ]; then
output 2 "Flushing adb nft sets "
nft flush set inet fw4 adb6
if nft flush set inet fw4 adb4; then output_ok; else output_fail; fi
fi
output 2 "Restarting dnsmasq "
if dnsmasq_restart; then output_okn; else output_failn; fi
else
output_fail;
fi
;;
unbound.adb_list)
output 1 "Allowing domain(s) and restarting Unbound "
output 2 "Allowing domain(s) \\n"
for c in $string; do
output 2 " $c "
if sed -i "/${string}/d" "$outputFile" && \
uci_add_list_if_new "$packageName" 'config' 'allowed_domain' "$string"; then
output_ok
else
output_fail
fi
done
if [ "$compressed_cache" -gt 0 ]; then
output 2 'Creating compressed cache '
if cache 'create_gzip'; then
output_ok
else
output_failn
fi
fi
output 2 "Committing changes to config "
if [ -n "$(uci_changes "$packageName")" ] && uci_commit "$packageName"; then
allowed_domain="$(uci_get "$packageName" 'config' 'allowed_domain')"
json set triggers
json set stats "$serviceName is blocking $(wc -l < "$outputFile") domains (with ${dns})"
output_ok;
output 2 "Restarting Unbound "
if unbound_restart; then output_okn; else output_failn; fi
else
output_fail;
fi
;;
esac
fi fi
case "$dns" in
dnsmasq.addnhosts|dnsmasq.conf|dnsmasq.ipset|dnsmasq.nftset|dnsmasq.servers)
output 1 "Allowing domain(s) and restarting dnsmasq "
output 2 "Allowing domain(s) \\n"
for c in $string; do
output 2 " $c "
hf="$(echo "$c" | sed 's/\./\\./g')"
if sed -i "/^${hf}$/d;/\.${hf}$/d;" "$outputFile" && \
uci_add_list_if_new "${packageName}" 'config' 'allowed_domain' "$c"; then
output_ok
else
output_fail
fi
done
if [ "$compressed_cache" -gt 0 ]; then
output 2 'Creating compressed cache '
if cache 'create_gzip'; then
output_ok
else
output_failn
fi
fi
output 2 "Committing changes to config "
if [ -n "$(uci_changes "$packageName")" ] && uci_commit "$packageName"; then
allowed_domain="$(uci_get "$packageName" 'config' 'allowed_domain')"
json set triggers
json set stats "$serviceName is blocking $(wc -l < "$outputFile") domains (with ${dns})"
output_ok;
if [ "$dns" = 'dnsmasq.ipset' ]; then
output 2 "Flushing adb ipset "
if ipset -q -! flush adb; then output_ok; else output_fail; fi
fi
if [ "$dns" = 'dnsmasq.nftset' ]; then
output 2 "Flushing adb nft sets "
nft flush set inet fw4 adb6
if nft flush set inet fw4 adb4; then output_ok; else output_fail; fi
fi
output 2 "Restarting dnsmasq "
if dnsmasq_restart; then output_okn; else output_failn; fi
else
output_fail;
fi
;;
unbound.adb_list)
output 1 "Allowing domain(s) and restarting Unbound "
output 2 "Allowing domain(s) \\n"
for c in $string; do
output 2 " $c "
if sed -i "/${string}/d" "$outputFile" && \
uci_add_list_if_new "$packageName" 'config' 'allowed_domain' "$string"; then
output_ok
else
output_fail
fi
done
if [ "$compressed_cache" -gt 0 ]; then
output 2 'Creating compressed cache '
if cache 'create_gzip'; then
output_ok
else
output_failn
fi
fi
output 2 "Committing changes to config "
if [ -n "$(uci_changes "$packageName")" ] && uci_commit "$packageName"; then
allowed_domain="$(uci_get "$packageName" 'config' 'allowed_domain')"
json set triggers
json set stats "$serviceName is blocking $(wc -l < "$outputFile") domains (with ${dns})"
output_ok;
output 2 "Restarting Unbound "
if unbound_restart; then output_okn; else output_failn; fi
else
output_fail;
fi
;;
esac
} }
adb_check() { adb_check() {
local c param="$1" local c param="$1"
local validation_result="$3" local validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
if [ ! -s "$outputFile" ]; then if [ ! -s "$outputFile" ]; then
output "No block-list ('$outputFile') found.\\n" output "No block-list ('$outputFile') found.\\n"
return 0
elif [ -z "$param" ]; then elif [ -z "$param" ]; then
output "Usage: /etc/init.d/${packageName} check 'domain' ...\\n" output "Usage: /etc/init.d/${packageName} check 'domain' ...\\n"
else return 0
for string in ${param}; do
c="$(grep -c "$string" "$outputFile")"
if [ "$c" -gt 0 ]; then
if [ "$c" -eq 1 ]; then
output "Found 1 match for '$string' in '$outputFile'.\\n"
else
output "Found $c matches for '$string' in '$outputFile'.\\n"
fi
if [ "$c" -le 20 ]; then
case "$dns" in
dnsmasq.addnhosts)
grep "$string" "$outputFile" | sed 's|^127.0.0.1 ||;s|^:: ||;';;
dnsmasq.conf)
grep "$string" "$outputFile" | sed 's|local=/||;s|/$||;';;
dnsmasq.ipset)
grep "$string" "$outputFile" | sed 's|ipset=/||;s|/adb$||;';;
dnsmasq.nftset)
grep "$string" "$outputFile" | sed 's|nftset=/||;s|/4#inet#adb#adb4||;';;
dnsmasq.servers)
grep "$string" "$outputFile" | sed 's|server=/||;s|/$||;';;
unbound.adb_list)
grep "$string" "$outputFile" | sed 's|^local-zone: "||;s|" static$||;';;
esac
fi
else
output "The '$string' is not found in current block-list ('$outputFile').\\n"
fi
done
fi fi
for string in ${param}; do
c="$(grep -c "$string" "$outputFile")"
if [ "$c" -gt 0 ]; then
if [ "$c" -eq 1 ]; then
output "Found 1 match for '$string' in '$outputFile'.\\n"
else
output "Found $c matches for '$string' in '$outputFile'.\\n"
fi
if [ "$c" -le 20 ]; then
case "$dns" in
dnsmasq.addnhosts)
grep "$string" "$outputFile" | sed 's|^127.0.0.1 ||;s|^:: ||;';;
dnsmasq.conf)
grep "$string" "$outputFile" | sed 's|local=/||;s|/$||;';;
dnsmasq.ipset)
grep "$string" "$outputFile" | sed 's|ipset=/||;s|/adb$||;';;
dnsmasq.nftset)
grep "$string" "$outputFile" | sed 's|nftset=/||;s|/4#inet#adb#adb4||;';;
dnsmasq.servers)
grep "$string" "$outputFile" | sed 's|server=/||;s|/$||;';;
unbound.adb_list)
grep "$string" "$outputFile" | sed 's|^local-zone: "||;s|" static$||;';;
esac
fi
else
output "The '$string' is not found in current block-list ('$outputFile').\\n"
fi
done
} }
adb_config_update() { adb_config_update() {
local R_TMP label local R_TMP label
local param="$1" validation_result="$3" local param="$1" validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
label="${config_update_url##*//}" label="${config_update_url##*//}"
label="${label%%/*}"; label="${label%%/*}";
[ "$config_update_enabled" -ne 0 ] || return 0 [ "$config_update_enabled" -ne 0 ] || return 0
@ -1020,7 +1093,7 @@ adb_config_update() {
adb_sizes() { adb_sizes() {
local i local i
local validation_result="$3" local validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
echo "# $(date)" echo "# $(date)"
for i in $blocked_domains_url; do for i in $blocked_domains_url; do
@ -1138,7 +1211,11 @@ adb_start() {
output 3 "Starting $serviceName...\\n" output 3 "Starting $serviceName...\\n"
json set status "statusStarting" json set status "statusStarting"
fi fi
download_lists if [ -n "$dnsmasq_config_file_url" ]; then
download_dnsmasq_file
else
download_lists
fi
dns 'on_start' dns 'on_start'
fi fi
if [ "$action" = 'restart' ]; then if [ "$action" = 'restart' ]; then
@ -1257,7 +1334,7 @@ adb_start() {
adb_status() { adb_status() {
local c url status message error stats local c url status message error stats
local validation_result="$3" local validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
status="$(json get status)" status="$(json get status)"
message="$(json get message)" message="$(json get message)"
error="$(json get error)" error="$(json get error)"
@ -1288,7 +1365,7 @@ adb_status() {
adb_stop() { adb_stop() {
local validation_result="$3" local validation_result="$3"
load_environment "$validation_result" || return 1 load_environment "$validation_result" 'quiet' || return 1
if [ -s "$outputFile" ]; then if [ -s "$outputFile" ]; then
output "Stopping $serviceName... " output "Stopping $serviceName... "
cache 'create' cache 'create'
@ -1380,6 +1457,7 @@ load_validate_config() {
local config_update_url local config_update_url
local boot_delay local boot_delay
local download_timeout local download_timeout
local curl_max_file_size
local curl_retry local curl_retry
local verbosity local verbosity
local led local led
@ -1390,6 +1468,7 @@ load_validate_config() {
local blocked_domain local blocked_domain
local blocked_domains_url local blocked_domains_url
local blocked_hosts_url local blocked_hosts_url
local dnsmasq_config_file_url
uci_load_validate "$packageName" "$packageName" "$1" "${2}${3:+ $3}" \ uci_load_validate "$packageName" "$packageName" "$1" "${2}${3:+ $3}" \
'enabled:bool:0' \ 'enabled:bool:0' \
'force_dns:bool:1' \ 'force_dns:bool:1' \
@ -1403,9 +1482,9 @@ load_validate_config() {
'canary_domains_mozilla:bool:0' \ 'canary_domains_mozilla:bool:0' \
'config_update_enabled:bool:0' \ 'config_update_enabled:bool:0' \
'config_update_url:string:https://cdn.jsdelivr.net/gh/openwrt/packages/net/simple-adblock/files/simple-adblock.conf.update' \ 'config_update_url:string:https://cdn.jsdelivr.net/gh/openwrt/packages/net/simple-adblock/files/simple-adblock.conf.update' \
'boot_delay:range(0,240):120' \ 'download_timeout:range(1,60):20' \
'download_timeout:range(1,40):20' \ 'curl_max_file_size:uinteger' \
'curl_retry:range(1,5):3' \ 'curl_retry:range(0,30):3' \
'verbosity:range(0,2):2' \ 'verbosity:range(0,2):2' \
'procd_trigger_wan6:bool:0' \ 'procd_trigger_wan6:bool:0' \
'led:or("", "none", file, device, string)' \ 'led:or("", "none", file, device, string)' \
@ -1415,5 +1494,6 @@ load_validate_config() {
'allowed_domains_url:list(string)' \ 'allowed_domains_url:list(string)' \
'blocked_domain:list(string)' \ 'blocked_domain:list(string)' \
'blocked_domains_url:list(string)' \ 'blocked_domains_url:list(string)' \
'blocked_hosts_url:list(string)' 'blocked_hosts_url:list(string)' \
'dnsmasq_config_file_url:string'
} }

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=unbound PKG_NAME:=unbound
PKG_VERSION:=1.16.3 PKG_VERSION:=1.17.0
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://nlnetlabs.nl/downloads/unbound PKG_SOURCE_URL:=https://nlnetlabs.nl/downloads/unbound
PKG_HASH:=ea0c6665e2c3325b769eac1dfccd60fe1828d5fcf662650039eccb3f67edb28e PKG_HASH:=dcbc95d7891d9f910c66e4edc9f1f2fde4dea2eec18e3af9f75aed44a02f1341
PKG_MAINTAINER:=Eric Luehrsen <ericluehrsen@gmail.com> PKG_MAINTAINER:=Eric Luehrsen <ericluehrsen@gmail.com>
PKG_LICENSE:=BSD-3-Clause PKG_LICENSE:=BSD-3-Clause

View file

@ -3,7 +3,7 @@ Fix cross compile errors by inserting an environment variable for the
target. Use "uname" on host only if "UNAME" variable is empty. target. Use "uname" on host only if "UNAME" variable is empty.
--- a/configure.ac --- a/configure.ac
+++ b/configure.ac +++ b/configure.ac
@@ -815,7 +815,7 @@ if test x_$ub_test_python != x_no; then @@ -818,7 +818,7 @@ if test x_$ub_test_python != x_no; then
fi fi
fi fi

View file

@ -6,7 +6,7 @@ starting point for embedded routers if one is not going to use UCI.
+++ b/doc/example.conf.in +++ b/doc/example.conf.in
@@ -19,6 +19,76 @@ server: @@ -19,6 +19,76 @@ server:
# verbosity number, 0 is least verbose. 1 is default. # verbosity number, 0 is least verbose. 1 is default.
verbosity: 1 # verbosity: 1
+ ############################################################################ + ############################################################################
+ # MEMORY CONTROL EXAMPLE + # MEMORY CONTROL EXAMPLE

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=wifi-presence PKG_NAME:=wifi-presence
PKG_VERSION:=0.2.0 PKG_VERSION:=0.3.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=-$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=-$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/awilliams/wifi-presence/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/awilliams/wifi-presence/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=d3b4f2e33ba423e353ad17a000f67690c7c84b136726e683a9cb24be53889407 PKG_HASH:=70014a3d72635fece3ec666bcf0235f7bbd028cea6bc10d8548fbb2a8a8cbc1d
PKG_LICENSE:=MIT PKG_LICENSE:=MIT
PKG_MAINTAINER:=Adam Williams <pwnfactory@gmail.com> PKG_MAINTAINER:=Adam Williams <pwnfactory@gmail.com>

View file

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=xfrpc PKG_NAME:=xfrpc
PKG_VERSION:=1.07.582 PKG_VERSION:=1.11.587
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/liudf0716/xfrpc.git PKG_SOURCE_URL:=https://github.com/liudf0716/xfrpc.git
PKG_SOURCE_VERSION:=$(PKG_VERSION) PKG_SOURCE_VERSION:=$(PKG_VERSION)
PKG_MIRROR_HASH:=163d255e65bf516864bbd6db91f6f694fd42409d9cddcf08372ccfff650e5032 PKG_MIRROR_HASH:=da58e702d3b451e1b5a3d59ac3842cc424f636ca879c19ebb94cce8aa8dde3bb
PKG_MAINTAINER:=Dengfeng Liu <liudf0716@gmail.com> PKG_MAINTAINER:=Dengfeng Liu <liudf0716@gmail.com>
PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE:=GPL-3.0-or-later

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=xray-core PKG_NAME:=xray-core
PKG_VERSION:=1.6.3 PKG_VERSION:=1.6.4
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/XTLS/Xray-core/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/XTLS/Xray-core/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=2eff51567046ab2046c8f50552bf1f531071f0f9f189a32f7035f243c0143b97 PKG_HASH:=8f81aecb5c28585c98ea95e563d2f03a7d21daa333778f9c4f0aeed27afacef4
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org> PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
PKG_LICENSE:=MPL-2.0 PKG_LICENSE:=MPL-2.0

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=yggdrasil PKG_NAME:=yggdrasil
PKG_VERSION:=0.4.3 PKG_VERSION:=0.4.7
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/yggdrasil-network/yggdrasil-go/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/yggdrasil-network/yggdrasil-go/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=db793089eddfef628d30055d8b06a6a09f98bb38c3b4ede5265a4ad6eaa80d52 PKG_HASH:=47429f75b87d9b2450108471991e84c90d748606642e8778e9f578485b05a56f
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-go-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-go-$(PKG_VERSION)
PKG_MAINTAINER:=William Fleurant <meshnet@protonmail.com> PKG_MAINTAINER:=William Fleurant <meshnet@protonmail.com>

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=upmpdcli PKG_NAME:=upmpdcli
PKG_VERSION:=1.5.13 PKG_VERSION:=1.5.19
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads
PKG_HASH:=c7726f0d4062ae253159102e499759bd513d3c68bfe16c44997ee3fba35509f8 PKG_HASH:=67fa1f5c06fecd404f3414b25a070c9deabe917241ed6881b7a8e41e8379ed09
PKG_MAINTAINER:= PKG_MAINTAINER:=
PKG_LICENSE:=LGPL-2.1-or-later PKG_LICENSE:=LGPL-2.1-or-later

View file

@ -12,11 +12,14 @@ PKG_VERSION:=1.6
PKG_RELEASE:=2 PKG_RELEASE:=2
PKG_LICENSE:=BSD PKG_LICENSE:=BSD
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/stedolan/jq/releases/download/jq-$(PKG_VERSION)/ PKG_SOURCE_URL:=https://github.com/stedolan/jq.git
PKG_HASH:=9625784cf2e4fd9842f1d407681ce4878b5b0dcddbcd31c6135114a30c71e6a8 PKG_SOURCE_DATE:=2018-11-02
PKG_SOURCE_VERSION:=2e01ff1fb69609540b2bdc4e62a60499f2b2fb8e
PKG_MIRROR_HASH:=ee52d2dce67dfbea633020d11a908d5818145a2bf87e5a0a17c0ff6885a428a7
PKG_MAINTAINER:=Marko Ratkaj <markoratkaj@gmail.com> PKG_MAINTAINER:=Marko Ratkaj <markoratkaj@gmail.com>
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk

View file

@ -41,5 +41,11 @@ define Package/librespeed-cli/description
LibreSpeed client for measuring internet speed from command line. LibreSpeed client for measuring internet speed from command line.
endef endef
define Package/librespeed-cli/install
$(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/speedtest-cli $(1)/usr/bin/librespeed-cli
endef
$(eval $(call GoBinPackage,librespeed-cli)) $(eval $(call GoBinPackage,librespeed-cli))
$(eval $(call BuildPackage,librespeed-cli)) $(eval $(call BuildPackage,librespeed-cli))

View file

@ -0,0 +1,23 @@
From 6da486d7415e426ec983baa5f8edafe0ff4c4171 Mon Sep 17 00:00:00 2001
From: 7217043955 <85880133+7217043955@users.noreply.github.com>
Date: Tue, 6 Sep 2022 15:48:11 +0800
Subject: [PATCH] Add support for dev_name formatted like "a000000.wifi"
---
lib/sysfs.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- a/lib/sysfs.c
+++ b/lib/sysfs.c
@@ -663,8 +663,9 @@ static int classify_device(const char *d
if ((!subsys || !strcmp(subsys, "platform") ||
!strcmp(subsys, "of_platform"))) {
/* must be new ISA (platform driver) */
- if (sscanf(dev_name, "%*[a-z0-9_].%d", &entry->chip.addr) != 1)
- entry->chip.addr = 0;
+ if (sscanf(dev_name, "%*[a-zA-Z0-9_]%*1[.:]%d", &entry->chip.addr) == 1);
+ else if (sscanf(dev_name, "%x.%*s", &entry->chip.addr) == 1);
+ else entry->chip.addr = 0;
entry->chip.bus.type = SENSORS_BUS_TYPE_ISA;
entry->chip.bus.nr = 0;
} else if (subsys && !strcmp(subsys, "acpi")) {

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=nano PKG_NAME:=nano
PKG_VERSION:=6.4 PKG_VERSION:=7.0
PKG_RELEASE:=$(AUTORELEASE) PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/nano PKG_SOURCE_URL:=@GNU/nano
PKG_HASH:=4199ae8ca78a7796de56de1a41b821dc47912c0307e9816b56cc317df34661c0 PKG_HASH:=8dd6eac38b2b8786d82681f0e1afd84f6b75210d17391b6443c437e451552149
PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE:=GPL-3.0-or-later
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING

View file

@ -0,0 +1,18 @@
--- a/src/nano.c
+++ b/src/nano.c
@@ -1395,11 +1395,14 @@ bool changes_something(const void *f)
#ifndef NANO_TINY
f == chop_previous_word || f == chop_next_word ||
f == zap_text || f == cut_till_eof || f == do_execute ||
- f == do_indent || f == do_unindent || f == do_comment ||
+ f == do_indent || f == do_unindent ||
#endif
#ifdef ENABLE_JUSTIFY
f == do_justify || f == do_full_justify ||
#endif
+#ifdef ENABLE_COMMENT
+ f == do_comment ||
+#endif
#ifdef ENABLE_SPELLER
f == do_spell ||
#endif

View file

@ -1,12 +1,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=uhubctl PKG_NAME:=uhubctl
PKG_VERSION:=2.4.0 PKG_VERSION:=2.5.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/mvp/uhubctl/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/mvp/uhubctl/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=391f24fd1f89cacce801df38ecc289b34c3627bc08ee69eec515af7e1a283d97 PKG_HASH:=d4452252f7862f7a45dd9c62f2ea7cd3a57ab5f5ab0e54a857d4c695699bbba3
PKG_LICENSE:=GPL-2.0-only PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING LICENSE PKG_LICENSE_FILES:=COPYING LICENSE