diff --git a/agentflow/Makefile b/agentflow/Makefile index 39bcb087f..4ccfda127 100644 --- a/agentflow/Makefile +++ b/agentflow/Makefile @@ -10,12 +10,12 @@ AGENTFLOW_ARCH_x86_64:=amd64 AGENTFLOW_ARCH_aarch64:=arm64 AGENTFLOW_ARCH:=$(AGENTFLOW_ARCH_$(ARCH)) -AGENTFLOW_HASH_x86_64:=3bdd9b3af7a95c78d6fb6589117931e2be3f2800056fc7836aa95abe48d0a33d -AGENTFLOW_HASH_aarch64:=8962a1ec6f57ee394ddfdf61abd72191f5378644c5ab1ce85040b132b757cc43 +AGENTFLOW_HASH_x86_64:=266ceb4bc47d8ef0d2d731594a612266573bb93c4e23e9e329acf00c3bac4087 +AGENTFLOW_HASH_aarch64:=7790a94a0a04e57d196165ef96177475125c1b24fe24321f6927a55b2c62211f PKG_NAME:=agentflow -PKG_VERSION:=0.3.4 -PKG_RELEASE:=14 +PKG_VERSION:=0.3.5 +PKG_RELEASE:=15 AGENTFLOW_URL_FILE:=agentflow-linux-$(AGENTFLOW_ARCH) AGENTFLOW_DOWNLOAD:=$(AGENTFLOW_URL_FILE)-$(AGENTFLOW_HASH_$(ARCH)) diff --git a/kai-agent/Makefile b/kai-agent/Makefile index de0876320..2cfc07d25 100644 --- a/kai-agent/Makefile +++ b/kai-agent/Makefile @@ -1,8 +1,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=kai-agent -PKG_VERSION:=linkease-app-entry-runtime-v3.0.22 -PKG_RELEASE:=1 +PKG_VERSION:=kai-runtime-v0.0.25 +PKG_RELEASE:=2 PKG_SOURCE:=kai-agent-bundle-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/kai-runtime-v$(PKG_VERSION)/ PKG_HASH:=skip diff --git a/kai/Makefile b/kai/Makefile index 253581d62..491aa874b 100644 --- a/kai/Makefile +++ b/kai/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_ARCH_kai:=$(ARCH) PKG_NAME:=kai -PKG_VERSION:=linkease-app-entry-runtime-v3.0.22 -PKG_RELEASE:=6 +PKG_VERSION:=kai-runtime-v0.0.25 +PKG_RELEASE:=7 PKG_SOURCE:=$(PKG_NAME)-binary-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/kai-runtime-v$(PKG_VERSION)/ PKG_HASH:=skip diff --git a/kai_session/Makefile b/kai_session/Makefile index e38bd0416..ef7bffb6e 100644 --- a/kai_session/Makefile +++ b/kai_session/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_ARCH_kai_session:=$(ARCH) PKG_NAME:=kai_session -PKG_VERSION:=linkease-app-entry-runtime-v3.0.22 -PKG_RELEASE:=6 +PKG_VERSION:=kai-runtime-v0.0.25 +PKG_RELEASE:=7 PKG_SOURCE:=$(PKG_NAME)-binary-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/kai-runtime-v$(PKG_VERSION)/ PKG_HASH:=skip diff --git a/linkease-app-entry/Makefile b/linkease-app-entry/Makefile index 92387f1c2..330029311 100644 --- a/linkease-app-entry/Makefile +++ b/linkease-app-entry/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=linkease-app-entry # This lightweight runtime is released independently from the full desktop. -PKG_VERSION:=linkease-app-entry-runtime-v3.0.22 -PKG_RELEASE:=1 +PKG_VERSION:=kai-runtime-v0.0.25 +PKG_RELEASE:=2 ARCH_HEXCODE:= ifeq ($(ARCH),x86_64) @@ -22,7 +22,7 @@ LINKEASE_RUNTIME_ARCH:=arm64 PKG_HASH:=skip endif -PKG_SOURCE_VERSION:=d3d23965623e4182de554dde64418bb9a20c9078 +PKG_SOURCE_VERSION:=19c81b111a2b26f180422e0e5ab929f8b155abde PKG_SOURCE:=linkease-app-entry-runtime-$(PKG_VERSION)-linux-$(LINKEASE_RUNTIME_ARCH).tar.gz PKG_SOURCE_URL:=https://github.com/istoreos/istoreos-app-hub/releases/download/linkease-app-entry-runtime-v$(PKG_VERSION)/ PKG_BUILD_DIR:=$(BUILD_DIR)/linkease-app-entry-runtime-$(PKG_VERSION)-linux-$(LINKEASE_RUNTIME_ARCH) diff --git a/linkease-common-bin/Makefile b/linkease-common-bin/Makefile index f4e91b98f..acd062521 100644 --- a/linkease-common-bin/Makefile +++ b/linkease-common-bin/Makefile @@ -12,7 +12,7 @@ PKG_ARCH_LINKEASE:=$(ARCH) PKG_NAME:=linkease-common-bin # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable PKG_SOURCE_DATE:=1.7.5 -PKG_RELEASE:=34 +PKG_RELEASE:=35 ARCH_HEXCODE:= ifeq ($(ARCH),x86_64) @@ -28,7 +28,7 @@ else ifeq ($(ARCH),mipsel) ARCH_HEXCODE=1b0c endif -PKG_SOURCE_VERSION:=8e06ab67451edac1442855713ca3256c72f34be9 +PKG_SOURCE_VERSION:=19c81b111a2b26f180422e0e5ab929f8b155abde 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_BUILD_DIR:=$(BUILD_DIR)/linkease-common-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE) diff --git a/linkease/Makefile b/linkease/Makefile index 00683922f..ed93f529c 100644 --- a/linkease/Makefile +++ b/linkease/Makefile @@ -12,7 +12,7 @@ PKG_ARCH_LINKEASE:=$(ARCH) PKG_NAME:=linkease # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable PKG_SOURCE_DATE:=1.7.5 -PKG_RELEASE:=37 +PKG_RELEASE:=38 ARCH_HEXCODE:= ifeq ($(ARCH),x86_64) @@ -28,7 +28,7 @@ else ifeq ($(ARCH),mipsel) ARCH_HEXCODE=1b0c endif -PKG_SOURCE_VERSION:=8e06ab67451edac1442855713ca3256c72f34be9 +PKG_SOURCE_VERSION:=19c81b111a2b26f180422e0e5ab929f8b155abde 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_BUILD_DIR:=$(BUILD_DIR)/linkease-bin-$(PKG_SOURCE_DATE)-linux-$(PKG_ARCH_LINKEASE) diff --git a/linkeasefull/Makefile b/linkeasefull/Makefile index 37b47bd48..8b42289c5 100644 --- a/linkeasefull/Makefile +++ b/linkeasefull/Makefile @@ -11,7 +11,7 @@ PKG_ARCH_LINKEASE:=$(ARCH) PKG_NAME:=linkeasefull # use PKG_SOURCE_DATE instead of PKG_VERSION for compitable PKG_SOURCE_DATE:=3.0.22 -PKG_RELEASE:=36 +PKG_RELEASE:=37 ARCH_HEXCODE:= ifeq ($(ARCH),x86_64) @@ -24,7 +24,7 @@ LINKEASE_RUNTIME_ARCH:=arm64 PKG_HASH:=skip endif -PKG_SOURCE_VERSION:=8e06ab67451edac1442855713ca3256c72f34be9 +PKG_SOURCE_VERSION:=19c81b111a2b26f180422e0e5ab929f8b155abde 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_BUILD_DIR:=$(BUILD_DIR)/linkease-runtime-$(PKG_SOURCE_DATE)-linux-$(LINKEASE_RUNTIME_ARCH) diff --git a/luci-app-bandix/Makefile b/luci-app-bandix/Makefile index 3f6537450..a6a6dcc50 100644 --- a/luci-app-bandix/Makefile +++ b/luci-app-bandix/Makefile @@ -11,7 +11,7 @@ LUCI_DEPENDS:=+luci-base +luci-lib-jsonc +curl +bandix PKG_MAINTAINER:=timsaya PKG_VERSION:=0.12.11 -PKG_RELEASE:=10 +PKG_RELEASE:=11 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/luci-app-bandix/htdocs/luci-static/resources/view/bandix/connection.js b/luci-app-bandix/htdocs/luci-static/resources/view/bandix/connection.js index 8aa3df5ca..4a3be0d18 100644 --- a/luci-app-bandix/htdocs/luci-static/resources/view/bandix/connection.js +++ b/luci-app-bandix/htdocs/luci-static/resources/view/bandix/connection.js @@ -133,6 +133,20 @@ function formatSize(bytes) { } // 格式化设备名称 +// IPv6 地址按 RFC 3986 用方括号包起来,一是避免 '2600:...:8000::' + ':' + '80' 拼出 +// ':::80' 这种分不清边界的写法,二是选中复制出来就是 [addr]:port,可以直接粘去用。 +// 地址和端口是行内元素,复制时不会被拆成两行;端口自身 nowrap,不会被折断 +function flowEndpointCell(addr, port) { + var text = addr || '-'; + if (text.indexOf(':') >= 0) { + text = '[' + text + ']'; + } + return E('td', { 'class': 'flows-addr-cell' }, [ + E('span', { 'class': 'flows-addr' }, text), + E('span', { 'class': 'flows-port' }, port ? ':' + port : '') + ]); +} + function formatDeviceName(device) { if (device.host && device.host !== '') { return device.host; @@ -719,26 +733,52 @@ return view.extend({ .flows-modal-content .flows-table th:nth-child(1), .flows-modal-content .flows-table td:nth-child(1) { width: 5%; } .flows-modal-content .flows-table th:nth-child(2), - .flows-modal-content .flows-table td:nth-child(2) { width: 8%; } + .flows-modal-content .flows-table td:nth-child(2) { width: 10%; } .flows-modal-content .flows-table th:nth-child(3), - .flows-modal-content .flows-table td:nth-child(3) { width: 14%; } + .flows-modal-content .flows-table td:nth-child(3) { width: 14.75%; } .flows-modal-content .flows-table th:nth-child(4), - .flows-modal-content .flows-table td:nth-child(4) { width: 14%; } + .flows-modal-content .flows-table td:nth-child(4) { width: 14.75%; } .flows-modal-content .flows-table th:nth-child(5), - .flows-modal-content .flows-table td:nth-child(5) { width: 10%; } + .flows-modal-content .flows-table td:nth-child(5) { width: 9%; } .flows-modal-content .flows-table th:nth-child(6), - .flows-modal-content .flows-table td:nth-child(6) { width: 14%; } + .flows-modal-content .flows-table td:nth-child(6) { width: 14.75%; } .flows-modal-content .flows-table th:nth-child(7), - .flows-modal-content .flows-table td:nth-child(7) { width: 14%; } + .flows-modal-content .flows-table td:nth-child(7) { width: 14.75%; } .flows-modal-content .flows-table th:nth-child(8), - .flows-modal-content .flows-table td:nth-child(8) { width: 10%; } + .flows-modal-content .flows-table td:nth-child(8) { width: 9%; } .flows-modal-content .flows-table th:nth-child(9), - .flows-modal-content .flows-table td:nth-child(9) { width: 11%; } + .flows-modal-content .flows-table td:nth-child(9) { width: 8%; } + + /* IPv6 没有 NAT,回复方向恒为源方向的镜像,隐藏后地址列能放下整条 IPv6 地址 */ + .flows-modal-content .flows-table.hide-repl th:nth-child(6), + .flows-modal-content .flows-table.hide-repl td:nth-child(6), + .flows-modal-content .flows-table.hide-repl th:nth-child(7), + .flows-modal-content .flows-table.hide-repl td:nth-child(7) { display: none; } + .flows-modal-content .flows-table.hide-repl th:nth-child(1), + .flows-modal-content .flows-table.hide-repl td:nth-child(1) { width: 4%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(2), + .flows-modal-content .flows-table.hide-repl td:nth-child(2) { width: 10%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(3), + .flows-modal-content .flows-table.hide-repl td:nth-child(3) { width: 31%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(4), + .flows-modal-content .flows-table.hide-repl td:nth-child(4) { width: 31%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(5), + .flows-modal-content .flows-table.hide-repl td:nth-child(5) { width: 9.5%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(8), + .flows-modal-content .flows-table.hide-repl td:nth-child(8) { width: 9.5%; } + .flows-modal-content .flows-table.hide-repl th:nth-child(9), + .flows-modal-content .flows-table.hide-repl td:nth-child(9) { width: 5%; } + + /* 紧凑模式下再降一档字号,最长的 IPv6 地址才能完整落在一行里 */ + .flows-modal-content .flows-table.hide-repl .flows-addr-cell { + font-size: 11px; + } .flows-modal-content .flows-table th, .flows-modal-content .flows-table td { padding: 8px 12px; text-align: left; + vertical-align: top; border-bottom: 1px solid rgba(0,0,0,0.08); } @@ -749,7 +789,32 @@ return view.extend({ .flows-modal-content .flows-addr-cell { word-break: break-all; - font-size: 0.8rem; + font-size: 12px; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; + line-height: 1.35; + } + + .flows-modal-content .flows-addr-cell .flows-port { + opacity: 0.6; + white-space: nowrap; + } + + /* ESTABLISHED 是单个长单词,宽度不够时必须允许断开,否则会压到相邻列上 */ + .flows-modal-content .flows-table td.flows-state-cell { + overflow-wrap: anywhere; + word-break: break-word; + } + + .flows-modal-content .flows-repl-toggle { + display: inline-flex; + align-items: center; + gap: 4px; + font-size: 0.85rem; + cursor: pointer; + } + + .flows-modal-content .flows-repl-toggle input { + margin: 0; } .flows-modal-content .flows-protocol-tcp { @@ -1091,25 +1156,25 @@ return view.extend({ var pageInfo = E('span', { 'style': 'font-size: 0.85rem; opacity: 0.85; margin: 0 14px;' }, ''); var prevPageBtn = E('button', { 'class': 'cbi-button cbi-button-action', 'style': 'margin-right: 8px;' }, _('Previous')); var nextPageBtn = E('button', { 'class': 'cbi-button cbi-button-action' }, _('Next')); + var replToggle = E('input', { 'type': 'checkbox', 'id': 'flows-show-repl', 'checked': 'checked' }); var tableBody = E('tbody', { 'class': 'flows-table-body' }); - var tableWrap = E('div', { 'class': 'flows-table-wrap' }, [ - E('table', { 'class': 'flows-table' }, [ - E('thead', {}, [ - E('tr', {}, [ - E('th', {}, _('Protocol')), - E('th', {}, _('State')), - E('th', {}, _('Orig Src')), - E('th', {}, _('Orig Dst')), - E('th', {}, _('Send')), - E('th', {}, _('Repl Src')), - E('th', {}, _('Repl Dst')), - E('th', {}, _('Reply')), - E('th', {}, _('Flags')) - ]) - ]), - tableBody - ]) + var flowsTable = E('table', { 'class': 'flows-table' }, [ + E('thead', {}, [ + E('tr', {}, [ + E('th', {}, _('Protocol')), + E('th', {}, _('State')), + E('th', {}, _('Orig Src')), + E('th', {}, _('Orig Dst')), + E('th', {}, _('Send')), + E('th', {}, _('Repl Src')), + E('th', {}, _('Repl Dst')), + E('th', {}, _('Reply')), + E('th', {}, _('Flags')) + ]) + ]), + tableBody ]); + var tableWrap = E('div', { 'class': 'flows-table-wrap' }, [flowsTable]); function updatePaginationUi() { if (pageInfo) { @@ -1186,22 +1251,18 @@ return view.extend({ else if (f.state.indexOf('TIME_WAIT') >= 0) stateCls = 'flows-state-wait'; else if (f.state.indexOf('CLOSE') >= 0) stateCls = 'flows-state-close'; } - var origSrc = f.orig ? (f.orig.src || '-') + ':' + (f.orig.sport || '-') : '-'; - var origDst = f.orig ? (f.orig.dst || '-') + ':' + (f.orig.dport || '-') : '-'; - var replSrc = f.repl ? (f.repl.src || '-') + ':' + (f.repl.sport || '-') : '-'; - var replDst = f.repl ? (f.repl.dst || '-') + ':' + (f.repl.dport || '-') : '-'; var sendStr = (f.orig_packets || 0) + ' ' + _('pkts') + ' / ' + formatSize(f.orig_bytes || 0); var replyStr = (f.repl_packets || 0) + ' ' + _('pkts') + ' / ' + formatSize(f.repl_bytes || 0); var flagsStr = (f.flags && f.flags.length) ? f.flags.join(' ') : '-'; var protoCls = (f.protocol || '').toLowerCase() === 'tcp' ? 'flows-protocol-tcp' : 'flows-protocol-udp'; tableBody.appendChild(E('tr', {}, [ E('td', { 'class': protoCls }, (f.protocol || '-').toUpperCase()), - E('td', { 'class': stateCls }, f.state || '-'), - E('td', { 'class': 'flows-addr-cell' }, origSrc), - E('td', { 'class': 'flows-addr-cell' }, origDst), + E('td', { 'class': 'flows-state-cell ' + stateCls }, f.state || '-'), + flowEndpointCell(f.orig && f.orig.src, f.orig && f.orig.sport), + flowEndpointCell(f.orig && f.orig.dst, f.orig && f.orig.dport), E('td', {}, sendStr), - E('td', { 'class': 'flows-addr-cell' }, replSrc), - E('td', { 'class': 'flows-addr-cell' }, replDst), + flowEndpointCell(f.repl && f.repl.src, f.repl && f.repl.sport), + flowEndpointCell(f.repl && f.repl.dst, f.repl && f.repl.dport), E('td', {}, replyStr), E('td', { 'style': 'font-size: 0.8rem;' }, flagsStr) ])); @@ -1253,6 +1314,10 @@ return view.extend({ protocolSelect, E('label', {}, _('State') + ':'), stateSelect, + E('label', { 'class': 'flows-repl-toggle', 'for': 'flows-show-repl' }, [ + replToggle, + E('span', {}, _('Show reply direction')) + ]), E('button', { 'class': 'cbi-button cbi-button-apply', 'click': loadFlows }, _('Refresh')) ]), tableWrap, @@ -1271,6 +1336,16 @@ return view.extend({ if (stateSelect && stateSelect.addEventListener) { stateSelect.addEventListener('change', onFilterChange); } + if (replToggle && replToggle.addEventListener) { + replToggle.addEventListener('change', function () { + // 关掉回复方向后,两个地址列各占 27%,整条 IPv6 地址能放进一行 + if (replToggle.checked) { + flowsTable.classList.remove('hide-repl'); + } else { + flowsTable.classList.add('hide-repl'); + } + }); + } var overlay = document.getElementById('flows-modal-overlay'); if (!overlay) { diff --git a/luci-app-bandix/po/es/bandix.po b/luci-app-bandix/po/es/bandix.po index 053d0a083..0f89e6c62 100644 --- a/luci-app-bandix/po/es/bandix.po +++ b/luci-app-bandix/po/es/bandix.po @@ -1348,3 +1348,6 @@ msgstr "No se pudieron cargar las cuotas de tráfico" msgid "Unavailable" msgstr "No disponible" + +msgid "Show reply direction" +msgstr "Mostrar la dirección de respuesta" diff --git a/luci-app-bandix/po/fr/bandix.po b/luci-app-bandix/po/fr/bandix.po index ca9b8b20e..11c212dde 100644 --- a/luci-app-bandix/po/fr/bandix.po +++ b/luci-app-bandix/po/fr/bandix.po @@ -1348,3 +1348,6 @@ msgstr "Impossible de charger les quotas de trafic" msgid "Unavailable" msgstr "Indisponible" + +msgid "Show reply direction" +msgstr "Afficher la direction de réponse" diff --git a/luci-app-bandix/po/ja/bandix.po b/luci-app-bandix/po/ja/bandix.po index 63c82c52b..f5fb03d37 100644 --- a/luci-app-bandix/po/ja/bandix.po +++ b/luci-app-bandix/po/ja/bandix.po @@ -1348,3 +1348,6 @@ msgstr "トラフィッククォータを読み込めませんでした" msgid "Unavailable" msgstr "利用不可" + +msgid "Show reply direction" +msgstr "応答方向を表示" diff --git a/luci-app-bandix/po/pl/bandix.po b/luci-app-bandix/po/pl/bandix.po index 2a354ea08..223ec195b 100644 --- a/luci-app-bandix/po/pl/bandix.po +++ b/luci-app-bandix/po/pl/bandix.po @@ -1348,3 +1348,6 @@ msgstr "Nie udało się wczytać limitów transferu" msgid "Unavailable" msgstr "Niedostępne" + +msgid "Show reply direction" +msgstr "Pokaż kierunek odpowiedzi" diff --git a/luci-app-bandix/po/ru/bandix.po b/luci-app-bandix/po/ru/bandix.po index 27cf3edb1..725837d2c 100644 --- a/luci-app-bandix/po/ru/bandix.po +++ b/luci-app-bandix/po/ru/bandix.po @@ -1348,3 +1348,6 @@ msgstr "Не удалось загрузить квоты трафика" msgid "Unavailable" msgstr "Недоступно" + +msgid "Show reply direction" +msgstr "Показывать обратное направление" diff --git a/luci-app-bandix/po/zh_Hans/bandix.po b/luci-app-bandix/po/zh_Hans/bandix.po index 0e09a7737..1b70bbab5 100644 --- a/luci-app-bandix/po/zh_Hans/bandix.po +++ b/luci-app-bandix/po/zh_Hans/bandix.po @@ -1375,3 +1375,6 @@ msgstr "每分钟配额" msgid "Minute" msgstr "每分钟" + +msgid "Show reply direction" +msgstr "显示回复方向" diff --git a/luci-app-bandix/po/zh_Hant/bandix.po b/luci-app-bandix/po/zh_Hant/bandix.po index 40d6f1292..b8555bdd1 100644 --- a/luci-app-bandix/po/zh_Hant/bandix.po +++ b/luci-app-bandix/po/zh_Hant/bandix.po @@ -1348,3 +1348,6 @@ msgstr "載入流量配額失敗" msgid "Unavailable" msgstr "無法使用" + +msgid "Show reply direction" +msgstr "顯示回覆方向" diff --git a/luci-theme-argon/Makefile b/luci-theme-argon/Makefile index 1ab6edf46..6db1ae4f3 100644 --- a/luci-theme-argon/Makefile +++ b/luci-theme-argon/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk LUCI_TITLE:=Argon Theme LUCI_DEPENDS:=+USE_APK:wget-any +!USE_APK:wget +jsonfilter PKG_VERSION:=2.4.7 -PKG_RELEASE:=18 +PKG_RELEASE:=19 CONFIG_LUCI_CSSTIDY:= diff --git a/luci-theme-argon/ucode/template/themes/argon/sysauth.ut b/luci-theme-argon/ucode/template/themes/argon/sysauth.ut index 48e8bf301..64195f8b0 100644 --- a/luci-theme-argon/ucode/template/themes/argon/sysauth.ut +++ b/luci-theme-argon/ucode/template/themes/argon/sysauth.ut @@ -137,7 +137,6 @@ {% else %} {% online_wallpaper = cfg.get_first('argon', 'global', 'online_wallpaper') ?? 'default' %} -