Compare commits

...
3 Commits
Author SHA1 Message Date
github-actions[bot] 28e8ae5ca9 🔥 Sync 2026-08-29 17:03:28
Merge-upstream / merge (push) Canceled after 0s
2026-08-29 17:03:28 +08:00
kiddin9 e1f8fcd79e Update argon.patch 2026-08-29 17:01:15 +08:00
github-actions[bot] 2afb356964 🍓 Sync 2026-08-29 13:21:59 2026-08-29 13:21:59 +08:00
14 changed files with 52 additions and 32 deletions
+8 -2
View File
@@ -80,15 +80,21 @@
--- a/luci-theme-argon/ucode/template/themes/argon/sysauth.ut --- a/luci-theme-argon/ucode/template/themes/argon/sysauth.ut
+++ b/luci-theme-argon/ucode/template/themes/argon/sysauth.ut +++ b/luci-theme-argon/ucode/template/themes/argon/sysauth.ut
@@ -115,7 +115,7 @@ @@ -115,11 +115,12 @@
<!-- Video Player End --> <!-- Video Player End -->
{% else %} {% else %}
<!-- Image Background Start --> <!-- Image Background Start -->
- <div class="main-bg" id="main-bg" style="background-image:url({{ bgArry.bgUrl }})"></div> - <div class="main-bg" id="main-bg" style="background-image:url({{ bgArry.bgUrl }})"></div>
+ <div class="main-bg" id="main-bg" {% if (cfg.get_first('argon', 'global', 'online_wallpaper') != "default"): %}style="background-image:url({{ bgArry.bgUrl }})"{% endif %}></div> + {% online_wallpaper = cfg.get_first('argon', 'global', 'online_wallpaper') ?? 'default' %}
+ <div class="main-bg" id="main-bg" {% if (online_wallpaper != 'default'): %}style="background-image:url({{ bgArry.bgUrl }})"{% endif %}></div>
<!-- Image Background End --> <!-- Image Background End -->
{% endif %} {% endif %}
<!-- Login Container Start --> <!-- Login Container Start -->
- <div class="login-container">
+ <div class="login-container" {% if (online_wallpaper == 'default'): %} style="backdrop-filter: blur(0px)"{% endif %}>
<div class="login-form">
<!-- Logo Start -->
<a class="brand" href="/"><img src="{{ media }}/img/argon.svg" class="icon">
--- a/luci-theme-argon/htdocs/luci-static/argon/css/cascade.css --- a/luci-theme-argon/htdocs/luci-static/argon/css/cascade.css
+++ b/luci-theme-argon/htdocs/luci-static/argon/css/cascade.css +++ b/luci-theme-argon/htdocs/luci-static/argon/css/cascade.css
+3 -3
View File
@@ -5,10 +5,10 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=dae PKG_NAME:=dae
PKG_VERSION:=2026.08.26 PKG_VERSION:=2026.08.28
PKG_RELEASE:=38 PKG_RELEASE:=39
PKG_SOURCE:=dae-src-2026.08.26-936105a87a65.tar.gz PKG_SOURCE:=dae-src-2026.08.28-cc57c26ba484.tar.gz
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/dae-src PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/dae-src
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_HASH:=skip PKG_HASH:=skip
+3 -3
View File
@@ -5,10 +5,10 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=daed PKG_NAME:=daed
PKG_VERSION:=2026.08.26 PKG_VERSION:=2026.08.28
PKG_RELEASE:=49 PKG_RELEASE:=50
PKG_SOURCE:=daed-src-2026.08.26-003da3d0a669.tar.gz PKG_SOURCE:=daed-src-2026.08.28-943c54572fb6.tar.gz
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/daed-src PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/daed-src
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_HASH:=skip PKG_HASH:=skip
+2 -2
View File
@@ -12,7 +12,7 @@ PKG_ARCH_LINKEASE:=$(ARCH)
PKG_NAME:=linkease-common-bin PKG_NAME:=linkease-common-bin
# use PKG_SOURCE_DATE instead of PKG_VERSION for compitable # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable
PKG_SOURCE_DATE:=1.7.5 PKG_SOURCE_DATE:=1.7.5
PKG_RELEASE:=17 PKG_RELEASE:=18
ARCH_HEXCODE:= ARCH_HEXCODE:=
ifeq ($(ARCH),x86_64) ifeq ($(ARCH),x86_64)
@@ -28,7 +28,7 @@ else ifeq ($(ARCH),mipsel)
ARCH_HEXCODE=1b0c ARCH_HEXCODE=1b0c
endif endif
PKG_SOURCE_VERSION:=260240d2b75aeefecf9f6f474bcb6e3ae16e8bdc PKG_SOURCE_VERSION:=07e52ab850002972866a2a05677e64ea31e3f4e1
PKG_SOURCE:=linkease-common-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE).tar.gz PKG_SOURCE:=linkease-common-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE).tar.gz
PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkease-runtime-v$(PKG_SOURCE_DATE)/ PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkease-runtime-v$(PKG_SOURCE_DATE)/
PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-common-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE) PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-common-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE)
+2 -2
View File
@@ -12,7 +12,7 @@ PKG_ARCH_LINKEASE:=$(ARCH)
PKG_NAME:=linkease PKG_NAME:=linkease
# use PKG_SOURCE_DATE instead of PKG_VERSION for compitable # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable
PKG_SOURCE_DATE:=1.7.5 PKG_SOURCE_DATE:=1.7.5
PKG_RELEASE:=20 PKG_RELEASE:=21
ARCH_HEXCODE:= ARCH_HEXCODE:=
ifeq ($(ARCH),x86_64) ifeq ($(ARCH),x86_64)
@@ -28,7 +28,7 @@ else ifeq ($(ARCH),mipsel)
ARCH_HEXCODE=1b0c ARCH_HEXCODE=1b0c
endif endif
PKG_SOURCE_VERSION:=260240d2b75aeefecf9f6f474bcb6e3ae16e8bdc PKG_SOURCE_VERSION:=07e52ab850002972866a2a05677e64ea31e3f4e1
PKG_SOURCE:=linkease-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE).tar.gz PKG_SOURCE:=linkease-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE).tar.gz
PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkease-runtime-v$(PKG_SOURCE_DATE)/ PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkease-runtime-v$(PKG_SOURCE_DATE)/
PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE) PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE)
+2 -2
View File
@@ -11,7 +11,7 @@ PKG_ARCH_LINKEASE:=$(ARCH)
PKG_NAME:=linkeasefull PKG_NAME:=linkeasefull
# use PKG_SOURCE_DATE instead of PKG_VERSION for compitable # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable
PKG_SOURCE_DATE:=3.0.13 PKG_SOURCE_DATE:=3.0.13
PKG_RELEASE:=19 PKG_RELEASE:=20
ARCH_HEXCODE:= ARCH_HEXCODE:=
ifeq ($(ARCH),x86_64) ifeq ($(ARCH),x86_64)
@@ -24,7 +24,7 @@ LINKEASE_RUNTIME_ARCH:=arm64
PKG_HASH:=skip PKG_HASH:=skip
endif endif
PKG_SOURCE_VERSION:=260240d2b75aeefecf9f6f474bcb6e3ae16e8bdc PKG_SOURCE_VERSION:=07e52ab850002972866a2a05677e64ea31e3f4e1
PKG_SOURCE:=linkease-runtime-$(PKG_SOURCE_DATE)-linux-$(LINKEASE_RUNTIME_ARCH).tar.gz PKG_SOURCE:=linkease-runtime-$(PKG_SOURCE_DATE)-linux-$(LINKEASE_RUNTIME_ARCH).tar.gz
PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkeasefull-runtime-v$(PKG_SOURCE_DATE)/ PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkeasefull-runtime-v$(PKG_SOURCE_DATE)/
PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-runtime-$(PKG_SOURCE_DATE)-linux-$(LINKEASE_RUNTIME_ARCH) PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-runtime-$(PKG_SOURCE_DATE)-linux-$(LINKEASE_RUNTIME_ARCH)
+1 -1
View File
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Argon Theme LUCI_TITLE:=Argon Theme
LUCI_DEPENDS:=+USE_APK:wget-any +!USE_APK:wget +jsonfilter LUCI_DEPENDS:=+USE_APK:wget-any +!USE_APK:wget +jsonfilter
PKG_VERSION:=2.4.7 PKG_VERSION:=2.4.7
PKG_RELEASE:=13 PKG_RELEASE:=14
CONFIG_LUCI_CSSTIDY:= CONFIG_LUCI_CSSTIDY:=
@@ -115,11 +115,12 @@
<!-- Video Player End --> <!-- Video Player End -->
{% else %} {% else %}
<!-- Image Background Start --> <!-- Image Background Start -->
<div class="main-bg" id="main-bg" {% if (cfg.get_first('argon', 'global', 'online_wallpaper') != "default"): %}style="background-image:url({{ bgArry.bgUrl }})"{% endif %}></div> {% online_wallpaper = cfg.get_first('argon', 'global', 'online_wallpaper') ?? 'default' %}
<div class="main-bg" id="main-bg" {% if (online_wallpaper != 'default'): %}style="background-image:url({{ bgArry.bgUrl }})"{% endif %}></div>
<!-- Image Background End --> <!-- Image Background End -->
{% endif %} {% endif %}
<!-- Login Container Start --> <!-- Login Container Start -->
<div class="login-container"> <div class="login-container" {% if (online_wallpaper == 'default'): %} style="backdrop-filter: blur(0px)"{% endif %}>
<div class="login-form"> <div class="login-form">
<!-- Logo Start --> <!-- Logo Start -->
<a class="brand" href="/"><img src="{{ media }}/img/argon.svg" class="icon"> <a class="brand" href="/"><img src="{{ media }}/img/argon.svg" class="icon">
@@ -2,11 +2,7 @@
/* Radius matches `.cbi-section` (16px): the alert sits in the content layer, /* Radius matches `.cbi-section` (16px): the alert sits in the content layer,
same width and edge alignment as the sections it stacks above. The larger same width and edge alignment as the sections it stacks above. The larger
radii in this theme belong to overlays (24px) and pills (32px). */ radii in this theme belong to overlays (24px) and pills (32px). */
@apply bg-surface-sunken text-text border-hairline sticky top-14 z-30 mb-4 rounded-2xl border p-6 max-md:mx-0 max-md:mb-3 max-md:p-4; @apply bg-surface-sunken text-text border-hairline mb-4 rounded-2xl border p-6 max-md:mx-0 max-md:mb-3 max-md:p-4;
&.modal {
@apply static top-auto;
}
.modal & { .modal & {
@apply mb-0; @apply mb-0;
+2 -2
View File
@@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Aurora Theme (A modern browser theme built with Vite and Tailwind CSS) LUCI_TITLE:=Aurora Theme (A modern browser theme built with Vite and Tailwind CSS)
LUCI_DEPENDS:=+luci-base LUCI_DEPENDS:=+luci-base
PKG_VERSION:=1.2.7 PKG_VERSION:=1.2.8
PKG_RELEASE:=74 PKG_RELEASE:=75
PKG_LICENSE:=Apache-2.0 PKG_LICENSE:=Apache-2.0
LUCI_MINIFY_CSS:= LUCI_MINIFY_CSS:=
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -17,7 +17,7 @@ LUCI_NAME:=luci-theme-footstrap
FOOTSTRAP_VERSION?= FOOTSTRAP_VERSION?=
ifneq ($(FOOTSTRAP_VERSION),) ifneq ($(FOOTSTRAP_VERSION),)
PKG_VERSION:=$(FOOTSTRAP_VERSION) PKG_VERSION:=$(FOOTSTRAP_VERSION)
PKG_RELEASE:=41 PKG_RELEASE:=42
endif endif
LUCI_TITLE:=Footstrap Theme LUCI_TITLE:=Footstrap Theme
@@ -99,6 +99,11 @@ function run() {
* *
* Wrapping `dom.content()` itself also works, at the price of patching a luci-base API every app * Wrapping `dom.content()` itself also works, at the price of patching a luci-base API every app
* shares and up to seven read/write pairs per call. */ * shares and up to seven read/write pairs per call. */
/* The three things `dom.content()` is called on: a section body, a table, and a TABLE'S BODY. The
* third was missing and cost a release: on 24.10's Overview the section is a table, so nothing here
* matched, the floor held nothing, and a poll emptying it took 58px off the document under the
* reader on ImmortalWrt 24.10 with a webkit engine, where no CI job looks. tools/scroll-anchor.mjs
* looks for the same three and says why. */
const SHRINKS = '.cbi-section > div, .table'; const SHRINKS = '.cbi-section > div, .table';
/* The floor is the height the next tick may not go below, one per container. Cleared before the /* The floor is the height the next tick may not go below, one per container. Cleared before the
@@ -521,12 +526,19 @@ function anchorEnabled() {
* reports zero and this does nothing. Same guards as the main correction not while the reader * reports zero and this does nothing. Same guards as the main correction not while the reader
* scrolls, not across a navigation, never more than a viewport. */ * scrolls, not across a navigation, never more than a viewport. */
let _lateFrame = 0; let _lateFrame = 0;
function lateDrift(ref) { function lateDrift(ref) {
/* the reference from BEFORE this tick, captured by the caller: one taken after the mutation /* the reference from BEFORE this tick, captured by the caller: one taken after the mutation
* describes the page as the mutation left it, so its drift is zero by construction */ * describes the page as the mutation left it, so its drift is zero by construction */
if (_lateFrame || !ref) return; if (_lateFrame || !ref) return;
_lateFrame = requestAnimationFrame(() => { _lateFrame = requestAnimationFrame(() => {
_lateFrame = requestAnimationFrame(() => { const seen = scrollTop();
/* STILL FOR SCROLL_IDLE, the interval this file already calls a page nobody is scrolling.
* A frame is not long enough to tell a flick from a still page: a flick moves the offset in
* steps of tens of milliseconds and two rAFs (~16 ms) fall inside one step, so the offset
* reads the same twice while the page is plainly moving. 120 ms was still short enough to
* let one 160px correction through on a loaded runner. */
_lateFrame = window.setTimeout(() => {
_lateFrame = 0; _lateFrame = 0;
if (!anchorEnabled() || Date.now() < _userUntil) return; if (!anchorEnabled() || Date.now() < _userUntil) return;
if (_restPage !== pageStamp()) return; if (_restPage !== pageStamp()) return;
@@ -543,7 +555,12 @@ function lateDrift(ref) {
* and where the sampler has not started yet WebKit again that re-take records the * and where the sampler has not started yet WebKit again that re-take records the
* offset the reader has already flicked to, so comparing against it compares a value * offset the reader has already flicked to, so comparing against it compares a value
* with itself and lets the correction through (320px, @1440 side, .fs-main scrolling). */ * with itself and lets the correction through (320px, @1440 side, .fs-main scrolling). */
if (scrollTop() !== ref.at) return; /* Still, not equal to the reference. An anchoring engine moves the offset ITSELF to keep
* the reader over content that grew measured on webkit/Overview, +658px of offset
* against 600px of growth so an offset that merely differs is the engine working, and
* refusing on that leaves the engine's own residual (58px) uncorrected. What must not be
* touched is a page still in motion, which is asked directly instead. */
if (scrollTop() !== seen) return;
/* the tick usually replaces the element this was taken on, so without the section /* the tick usually replaces the element this was taken on, so without the section
* fallback the correction does nothing on the tick it exists for */ * fallback the correction does nothing on the tick it exists for */
let el = ref.el, was = ref.top; let el = ref.el, was = ref.top;
@@ -563,7 +580,7 @@ function lateDrift(ref) {
* it is re-read rather than assumed; `rememberRest()` cannot do it, since the write * it is re-read rather than assumed; `rememberRest()` cannot do it, since the write
* starts the motion sampler and that function returns early while the page moves. */ * starts the motion sampler and that function returns early while the page moves. */
_restAt = scrollTop(); _restAt = scrollTop();
}); }, SCROLL_IDLE);
}); });
} }
+3 -3
View File
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=torrserver PKG_NAME:=torrserver
PKG_VERSION:=MatriX.144 PKG_VERSION:=MatriX.144.1
PKG_RELEASE:=18 PKG_RELEASE:=19
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/YouROK/TorrServer.git PKG_SOURCE_URL:=https://github.com/YouROK/TorrServer.git
PKG_SOURCE_VERSION:=c416a8f2b89b244c779f03f1f86e2f0f690c2668 PKG_SOURCE_VERSION:=309a5917c12764c82791b555fb61a60f8e2fee44
PKG_MIRROR_HASH:=skip PKG_MIRROR_HASH:=skip
PKG_MAINTAINER:=Konstantine Shevlakov <shevlakov@132lan.ru> PKG_MAINTAINER:=Konstantine Shevlakov <shevlakov@132lan.ru>