project/luci.git
7 weeks agobuild: fix Traditional Chinese name
Andy Chiang [Sat, 11 Oct 2025 17:18:46 +0000 (00:18 +0700)]
build: fix Traditional Chinese name

fix Chinese name for 24.10 branch after master branch has been merged.

Signed-off-by: Andy Chiang <[email protected]>
8 weeks agoMerge pull request #7992 from stangri/openwrt-24.10-luci-app-pbr
Stan Grishin [Fri, 10 Oct 2025 23:35:18 +0000 (16:35 -0700)]
Merge pull request #7992 from stangri/openwrt-24.10-luci-app-pbr

[24.10] luci-app-pbr: update to 1.2.0-r2

8 weeks agoMerge pull request #7994 from stangri/openwrt-24.10-luci-app-https-dns-proxy
Stan Grishin [Thu, 9 Oct 2025 18:26:48 +0000 (11:26 -0700)]
Merge pull request #7994 from stangri/openwrt-24.10-luci-app-https-dns-proxy

[24.10] luci-app-https-dns-proxy: update to 2025.10.07-r1

8 weeks agoMerge pull request #7990 from stangri/openwrt-24.10-luci-app-adblock-fast
Stan Grishin [Wed, 8 Oct 2025 19:10:16 +0000 (12:10 -0700)]
Merge pull request #7990 from stangri/openwrt-24.10-luci-app-adblock-fast

[24.10] luci-app-adblock-fast: update to 1.2.0-r20

8 weeks agoluci-app-https-dns-proxy: update to 2025.10.07-r1
Stan Grishin [Tue, 7 Oct 2025 22:42:40 +0000 (22:42 +0000)]
luci-app-https-dns-proxy: update to 2025.10.07-r1

* sync with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit 3101545acf2a42b74163f7d899038194d18bb639)

8 weeks agoluci-app-pbr: update to 1.2.0-r2
Stan Grishin [Tue, 7 Oct 2025 22:40:15 +0000 (22:40 +0000)]
luci-app-pbr: update to 1.2.0-r2

* sync with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit dc279c566d630329d2625e6085ba3f2f2e508de8)

8 weeks agoluci-app-adblock-fast: update to 1.2.0-r20
Stan Grishin [Tue, 7 Oct 2025 22:37:15 +0000 (22:37 +0000)]
luci-app-adblock-fast: update to 1.2.0-r20

* sync version with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit b9c9b470ec02749e90113a46f93005e5e4ad20db)

8 weeks agoluci-base: replace css right class with button-row
Florian Eckert [Thu, 6 Mar 2025 09:32:56 +0000 (10:32 +0100)]
luci-base: replace css right class with button-row

These were forgotten when refactoring and should also get the css class
'button-row'

Signed-off-by: Florian Eckert <[email protected]>
(cherry picked from commit 959fd4479580ddbe0f86de351d06226027a351a0)

8 weeks agoluci-base: standards compliant dropdown fix for mobile keyboards
TGSAN [Sat, 6 Sep 2025 11:55:09 +0000 (19:55 +0800)]
luci-base: standards compliant dropdown fix for mobile keyboards

Signed-off-by: TGSAN <[email protected]>
(cherry picked from commit 77e01d3d8cf9d2cf66368f4dd02ab691d67654ba)

8 weeks agoluci-base: allow submitting new value in android chromium
Ramon Van Gorkom [Fri, 25 Jul 2025 19:32:52 +0000 (21:32 +0200)]
luci-base: allow submitting new value in android chromium

Update ui.js to allow submitting from dropdown on android chromium.

Signed-off-by: Ramon Van Gorkom <[email protected]>
(cherry picked from commit 5cb2eb619e16e8de247c193ab7d320743491107e)

8 weeks agoluci: Make password reveal work with passsword managers
Andrew Dodd [Tue, 17 Dec 2024 01:37:35 +0000 (12:37 +1100)]
luci: Make password reveal work with passsword managers

Password managers (like LastPass etc) tend to add additional elements
into the DOM for their own context menus. If this happens between the
hide/reveal button and the password input, then the logic to reveal the
password breaks.

This change updates the onclick handler to look for the first `<input>`
element with the class `password-input` that is under the parent of the
toggle button, and then to toggle the password/text type on that
element.

This change deliberately only updates the main ui.js file, not any
application files.

Signed-off-by: Andrew Dodd <[email protected]>
(cherry picked from commit fc8ad20bbb7d7df16aeda37e8c3bf8495bedc6c3)

8 weeks agoluci-app-package-manager: fix 'autoremove' checkbox uneditable
Liangbin Lian [Thu, 26 Jun 2025 09:09:01 +0000 (17:09 +0800)]
luci-app-package-manager: fix 'autoremove' checkbox uneditable

In HTML, the following lines of code are equivalent:
```
<input disabled />
<input disabled="true" />
<input disabled="false" />
<input disabled="any" />
```
If you want to cancel the 'disabled' flag, you must completely remove it from the HTML instead of assigning a value.

Signed-off-by: Liangbin Lian <[email protected]>
(cherry picked from commit 8b5dfabdf3b4f929ea5e4bbd9350e930c10e8ad3)

2 months agotreewide: Backport i18n translations
Hannu Nyman [Sun, 5 Oct 2025 16:32:52 +0000 (19:32 +0300)]
treewide: Backport i18n translations

Backport translations. Sync.

Signed-off-by: Hannu Nyman <[email protected]>
2 months agoluci-mod-network: add RFC details for NAT64 option
Paul Donald [Tue, 30 Sep 2025 17:43:08 +0000 (19:43 +0200)]
luci-mod-network: add RFC details for NAT64 option

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 325286a3b9fc6d1203596c3d052b1d81d4dd33e9)

2 months agoluci-mod-network: expose IPv6 RA reachability and retransmission timers
Paul Donald [Tue, 30 Sep 2025 17:29:31 +0000 (19:29 +0200)]
luci-mod-network: expose IPv6 RA reachability and retransmission timers

These timers are configurable for many years and allow control of node
timers.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 2c0730c96609b875eb02604eb9429c1198186b67)

2 months agoluci-mod-network: Correctly encode/decode ech field in HTTPS record
Anya Lin [Thu, 25 Sep 2025 16:59:01 +0000 (00:59 +0800)]
luci-mod-network: Correctly encode/decode ech field in HTTPS record

Signed-off-by: Anya Lin <[email protected]>
(cherry picked from commit 39637490aeb36be47265abb83321a5d36fbb9f33)

2 months agoluci-mod-status: give kernel log view filtering capability
Paul Donald [Sun, 29 Jun 2025 13:38:40 +0000 (15:38 +0200)]
luci-mod-status: give kernel log view filtering capability

Simple text-based search to filter in or out kernel log lines.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit f62f31ca7085e6b9bd71a2d23f1c07445dc43992)

2 months agoluci-app-natmap: sync with natmap package
Ray Wang [Sat, 23 Aug 2025 04:01:56 +0000 (12:01 +0800)]
luci-app-natmap: sync with natmap package

Signed-off-by: Ray Wang <[email protected]>
(cherry picked from commit a610677fae828e1377d53354d9d2a95f23c6574e)

2 months agoluci-mod-status: fix syslog warning (4) log level filter
Paul Donald [Mon, 29 Sep 2025 14:00:57 +0000 (16:00 +0200)]
luci-mod-status: fix syslog warning (4) log level filter

Closes #7967

the warning syslog level is internally denoted as 'warn'.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit f53e99d2299f118df5a6eff60d101414d69d4912)

2 months agoMerge pull request #7962 from stangri/openwrt-24.10-luci-app-adblock-fast
Stan Grishin [Sun, 28 Sep 2025 18:37:41 +0000 (11:37 -0700)]
Merge pull request #7962 from stangri/openwrt-24.10-luci-app-adblock-fast

[24.10] luci-app-adblock-fast: update to 1.2.0

2 months agoluci-app-keepalived: fix typo in option name: fail -> fall
Hannu Nyman [Sun, 28 Sep 2025 06:32:20 +0000 (09:32 +0300)]
luci-app-keepalived: fix typo in option name: fail -> fall

Fix typo in the option name: 'fall' instead of 'fail'
Fixes #7965

Signed-off-by: Hannu Nyman <[email protected]>
(cherry picked from commit f51492d61038ed18ceccdfd5672da80515a0b0d3)

2 months agoluci-app-adblock-fast: update to 1.2.0
Stan Grishin [Fri, 26 Sep 2025 22:08:47 +0000 (22:08 +0000)]
luci-app-adblock-fast: update to 1.2.0

* version sync with principal package
* remove empty led option

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit c7e9948dcb08370f4c447ba42233e95987c203a3)

2 months agoChanged Irish lang name
Aindriú Mac Giolla Eoin [Sun, 21 Sep 2025 19:48:21 +0000 (22:48 +0300)]
Changed Irish lang name

(cherry picked from commit 72c06bcdf0b979a8defd632dda701729c8d24166)

2 months agobuild: enable packaging of Gaelic (Irish) and Tamil translations
Hannu Nyman [Sun, 21 Sep 2025 19:48:04 +0000 (22:48 +0300)]
build: enable packaging of Gaelic (Irish) and Tamil translations

Gaelic and Tamil have been translated for luci-base,
so enable them for building.

Signed-off-by: Hannu Nyman <[email protected]>
(cherry picked from commit 670c5592d10bbd68ede716a5f3ce8bfc2d8a6f22)

2 months agotreewide: Backport and sync translations
Hannu Nyman [Sun, 21 Sep 2025 19:44:40 +0000 (22:44 +0300)]
treewide: Backport and sync translations

Backport translations from master.
Sync.

Signed-off-by: Hannu Nyman <[email protected]>
2 months agotreewide: backport translations - i18n
Hannu Nyman [Sun, 7 Sep 2025 16:57:19 +0000 (19:57 +0300)]
treewide: backport translations - i18n

Backport translations from master.
Sync.

Signed-off-by: Hannu Nyman <[email protected]>
3 months agoluci-base: fix table option does not show in non-Bootstrap themes when it has depends
Joseph Mory [Fri, 30 May 2025 12:32:47 +0000 (20:32 +0800)]
luci-base: fix table option does not show in non-Bootstrap themes when it has depends

Signed-off-by: Joseph Mory <[email protected]>
(cherry picked from commit 55c93e60b4e598e81eeb1774d5d83ac32b245016)

3 months agoluci-mod-network: Change cache placeholder to internal default 150
Paul Donald [Tue, 2 Sep 2025 13:14:58 +0000 (15:14 +0200)]
luci-mod-network: Change cache placeholder to internal default 150

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit a2d0f5e2b3fdaca37cc088e40f4cfcb67b23cffe)

3 months agoMerge pull request #7924 from stangri/openwrt-24.10-luci-app-adblock-fast
Stan Grishin [Fri, 29 Aug 2025 17:53:18 +0000 (10:53 -0700)]
Merge pull request #7924 from stangri/openwrt-24.10-luci-app-adblock-fast

[24.10] luci-app-adblock-fast: update to 1.1.4-r12

3 months agoluci-app-adblock-fast: update to 1.1.4-r12
Stan Grishin [Tue, 26 Aug 2025 03:49:08 +0000 (03:49 +0000)]
luci-app-adblock-fast: update to 1.1.4-r12

* update to keep in sync with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit 68f9e6743219c0e476f5ce9decbf004d9d4b5772)

3 months agoMerge pull request #7911 from stangri/openwrt-24.10-luci-app-advanced-reboot
Stan Grishin [Tue, 19 Aug 2025 17:05:34 +0000 (10:05 -0700)]
Merge pull request #7911 from stangri/openwrt-24.10-luci-app-advanced-reboot

[24.10] luci-app-advanced-reboot: update to 1.1.0-1

3 months agoluci-app-advanced-reboot: update to 1.1.0-1
Stan Grishin [Tue, 12 Aug 2025 08:31:10 +0000 (08:31 +0000)]
luci-app-advanced-reboot: update to 1.1.0-1

Makefile:
- update SPDX license identified and copyright
- update documentation link

README:
- add short README with the link to full documentation

System View javascript:
- switch from single to double quotes
- update documentation link
- more readable translateTable
- better code readability for
  - callPowerOff
  - handlePowerOff
  - handleReboot
  - handleTogglePartition
  - handleAlternativeReboot
  - parsePartitions
  - some visual elements

RPCD Script:
- more resilient to unexpected CLI output
- add debugger function to ease development/debugging
- better check if `/var/alt_rom` is mounted before calling umount
- better handling of MTD indices

Device Support:
- add Linksys MR7350 which slipped thru the cracks

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit a353d15b5592455e9efb95af290c036b780de31c)

3 months agotreewide: backport translations - i18n
Hannu Nyman [Sun, 10 Aug 2025 20:43:42 +0000 (23:43 +0300)]
treewide: backport translations - i18n

Backport from master. Sync.

Signed-off-by: Hannu Nyman <[email protected]>
3 months agoMerge pull request #7894 from stangri/openwrt-24.10-luci-app-https-dns-proxy
Stan Grishin [Sat, 9 Aug 2025 17:23:23 +0000 (10:23 -0700)]
Merge pull request #7894 from stangri/openwrt-24.10-luci-app-https-dns-proxy

[24.10] luci-app-https-dns-proxy: update to 2025.05.11-4

3 months agoMerge pull request #7892 from stangri/openwrt-24.10-luci-app-adblock-fast
Stan Grishin [Sat, 9 Aug 2025 17:23:16 +0000 (10:23 -0700)]
Merge pull request #7892 from stangri/openwrt-24.10-luci-app-adblock-fast

[24.10] luci-app-adblock-fast: update to 1.1.4-6

3 months agoluci-app-https-dns-proxy: update to 2025.05.11-4
Stan Grishin [Fri, 8 Aug 2025 20:38:28 +0000 (20:38 +0000)]
luci-app-https-dns-proxy: update to 2025.05.11-4

* update license ID and copyright in Makefile
* add a short README with link to full documentation
* switch doc link from melmac.net to melmac.ca
* add donate text/URL
* attempt to fix bootstrap DNS loading/saving from json
* add DNS4EU provider (thanks @rikroe)
* add OpenNameServer provider (thanks @Phoenix616)

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit 45e3d1ac1908509f4d5ec7d79d5723697667af36)

3 months agoluci-app-adblock-fast: update to 1.1.4-6
Stan Grishin [Fri, 8 Aug 2025 08:57:49 +0000 (08:57 +0000)]
luci-app-adblock-fast: update to 1.1.4-6

* add Donate section/URL to status
* improve visibility with the RPCD return variable names (thanks @systemcrash)
* improve LEDs detection in RPCD script

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit 68a315f5ad0bffce4ba708d942178281e7661441)

4 months agoMerge pull request #7882 from stangri/openwrt-24.10-luci-app-adblock-fast
Stan Grishin [Tue, 5 Aug 2025 16:16:06 +0000 (09:16 -0700)]
Merge pull request #7882 from stangri/openwrt-24.10-luci-app-adblock-fast

[24.10] luci-app-adblock-fast: sync with principal package

4 months agoMerge pull request #7883 from stangri/openwrt-24.10-luci-app-pbr
Stan Grishin [Tue, 5 Aug 2025 02:59:57 +0000 (19:59 -0700)]
Merge pull request #7883 from stangri/openwrt-24.10-luci-app-pbr

[24.10] luci-app-pbr: sync with principal package

4 months agoluci-app-adblock-fast: sync with principal package
Stan Grishin [Fri, 1 Aug 2025 01:42:12 +0000 (01:42 +0000)]
luci-app-adblock-fast: sync with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit c26b8f28fe5094eae882762c6323d981abde104c)

4 months agoluci-app-pbr: sync with principal package
Stan Grishin [Fri, 1 Aug 2025 01:40:51 +0000 (01:40 +0000)]
luci-app-pbr: sync with principal package

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit 6b4d69723c311c3bfbfbc54c408e6fd71e5800d2)

4 months agoluci-proto-openconnect: bug fixes for cert read and write methods
Paul Donald [Fri, 25 Jul 2025 18:55:49 +0000 (20:55 +0200)]
luci-proto-openconnect: bug fixes for cert read and write methods

follow-up to: aa955d6465b4d0f00cc713904e2de7bfb0cbd062

Minor refactor of ucode, and some GUI fixes to ensure certificates are
written properly.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 58575727e58873eaea46d217e4ef6393543259a6)

4 months agotreewide: Backport translations
Hannu Nyman [Wed, 23 Jul 2025 12:54:20 +0000 (15:54 +0300)]
treewide: Backport translations

Backport from master. Sync.

Signed-off-by: Hannu Nyman <[email protected]>
4 months agoluci-app-ddns: fix cacert param write for all cases
Paul Donald [Wed, 23 Jul 2025 11:50:07 +0000 (13:50 +0200)]
luci-app-ddns: fix cacert param write for all cases

follow-up to 929c520def5dd1393f831befac1bf9dee9f9d796

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 8c473f99e2eb32ad2902619b6425856b7013e3a3)

4 months agoluci-app-strongswan-swanctl: prevent section name collisions
Paul Donald [Sat, 19 Jul 2025 17:15:11 +0000 (19:15 +0200)]
luci-app-strongswan-swanctl: prevent section name collisions

Named sections collide and overwrite each other when navigating the
GUI and repeating the same name, because uci does not allow multiple
named sections to share the same name. This at least forces users to
pick names so their resulting config works.

Closes #7159

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit eb66bdccf815797f6d1fa0cc0aed571319a2b980)

4 months agoluci-proto-vxlan: peers -> peer spelling fix
Paul Donald [Wed, 16 Jul 2025 14:08:57 +0000 (16:08 +0200)]
luci-proto-vxlan: peers -> peer spelling fix

follow-up to cbd37919aef5d895f10a90a35fb1a18610792bfb

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1352d75f1aeb6f9a6745596361261667499f30ac)

4 months agoMerge pull request #7864 from champtar/mwan3-section-interfaces-24.10
Florian Eckert [Tue, 15 Jul 2025 13:36:21 +0000 (15:36 +0200)]
Merge pull request #7864 from champtar/mwan3-section-interfaces-24.10

[24.10] luci-app-mwan3: only request interfaces status

4 months agoluci-app-mwan3: only request interfaces status
Etienne Champetier [Mon, 30 Jun 2025 16:46:31 +0000 (12:46 -0400)]
luci-app-mwan3: only request interfaces status

Before mwan3 rpcd plugin optimisations, same change in
prometheus-node-exporter-lua changed request time from
1.9s to 1.3s.

Signed-off-by: Etienne Champetier <[email protected]>
(cherry picked from commit c358b34a53b53fa4d6310452848643daf4a192fb)

5 months agoluci-app-openlist: rescan translations
Tianling Shen [Sun, 29 Jun 2025 10:00:42 +0000 (18:00 +0800)]
luci-app-openlist: rescan translations

Signed-off-by: Tianling Shen <[email protected]>
(cherry picked from commit 94f42c6b9e5b2ac967d43bab135b4a7c8e0e6fa8)

5 months agoluci-app-openlist: rename from luci-app-alist
Tianling Shen [Sun, 29 Jun 2025 09:57:02 +0000 (17:57 +0800)]
luci-app-openlist: rename from luci-app-alist

See https://github.com/openwrt/packages/pull/26855 for more information.

Signed-off-by: Tianling Shen <[email protected]>
(cherry picked from commit 682a2b9525a1152916de874a2731d4b64972c5f7)

5 months agoluci-mod-network: Add HTTPS SVCB record en/decoding to DHCP
Paul Donald [Mon, 23 Jun 2025 00:43:17 +0000 (02:43 +0200)]
luci-mod-network: Add HTTPS SVCB record en/decoding to DHCP

This was a bit of code golf. Just for fun. Users seem to rely on HTTPS
record creation. The HTTPS record handling en/decodes compliant records
when tested against the RFC defined vectors, although there may exist
edge cases that are not compliant.

Escaped character encoding is not implemented (strict mode).

Any other arbitrary DNS record creation will be possible via the
addition of helper functions in this tools file.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 9aeb34549f76f7cccd836a27012e2c61ae33805a)

5 months agoluci-app-chrony: Add chrony
Paul Donald [Fri, 25 Apr 2025 02:21:38 +0000 (04:21 +0200)]
luci-app-chrony: Add chrony

This prefers the NTS version, and does not discern the non-NTS version,
since chronyd.init startup script doesn't either.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit df28a18166c330ef95cabd996297263c6f3a8713)

5 months agoluci-base: implement a range slider input/control
Paul Donald [Fri, 25 Apr 2025 18:24:17 +0000 (20:24 +0200)]
luci-base: implement a range slider input/control

This control is used to set values within a predefined range, and uses
the HTML 'input' element of type 'range' supported in all browsers.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 3c16c590075eb8bdc9f019258a2357160ac5a912)

5 months agoluci-app-uhttpd: bugfix
Ramon Van Gorkom [Sun, 22 Jun 2025 11:47:39 +0000 (13:47 +0200)]
luci-app-uhttpd: bugfix

bug fix luci-app-uhttpd
Signed-off-by: Ramon Van Gorkom <[email protected]>
(cherry picked from commit 855e38245eb49c5f54df35334f4221f33642bcbf)

5 months agoluci-app-usteer: Extra error checking
Ramon Van Gorkom [Sun, 22 Jun 2025 14:20:56 +0000 (16:20 +0200)]
luci-app-usteer: Extra error checking

Added extra error checking. When you directly load the usteer page "/cgi-bin/luci/admin/network/usteer"  then somehow the wifi networks do not get populated, this throws an error. Also fixed another console error related to the hostnames.

Signed-off-by: Ramon Van Gorkom <[email protected]>
(cherry picked from commit 59a1910b142cd1eedb2e0c782f7ed079a99f087e)

5 months agoluci-base: check for wifi system feature before Promise.all
Paul Donald [Sun, 22 Jun 2025 20:35:46 +0000 (22:35 +0200)]
luci-base: check for wifi system feature before Promise.all

Allows the hasSystemFeature call to complete before executing the
Promise bundle.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 9c0f071bbd1150b324a5c1b2f0e1f642da693128)

5 months agoluci-app-banip: sync with update 1.5.6-6
Dirk Brenken [Sat, 28 Jun 2025 20:15:44 +0000 (22:15 +0200)]
luci-app-banip: sync with update 1.5.6-6

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit fd4cce9b61588973a07d1ef2788419062d51445b)

5 months agoluci-mod-network: implement Virtual Routing and Forwarding (VRF) options
Paul Donald [Thu, 7 Nov 2024 20:21:07 +0000 (21:21 +0100)]
luci-mod-network: implement Virtual Routing and Forwarding (VRF) options

VRF in netifd is now in main. See:
https://github.com/openwrt/netifd/pull/38/
https://github.com/openwrt/openwrt/commit/15c2ca0a834752cc9505751fc6d2f51861d34dfd

VRF netifd management was added to 24.10 in
https://github.com/openwrt/openwrt/pull/19125

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1349056112da56368e1eab7f9d724a70fc50943f)

5 months agoluci-base: implement Virtual Routing and Forwarding (VRF) options
Paul Donald [Thu, 7 Nov 2024 20:22:34 +0000 (21:22 +0100)]
luci-base: implement Virtual Routing and Forwarding (VRF) options

VRF in netifd is now in main. See:
https://github.com/openwrt/netifd/pull/38/
https://github.com/openwrt/openwrt/commit/15c2ca0a834752cc9505751fc6d2f51861d34dfd

VRF netifd management was added to 24.10 in
https://github.com/openwrt/openwrt/pull/19125

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit f5da7a6016f833ce81885c3daa66dfa52466be3c)

5 months agotreewide: Backport translations - i18n
Hannu Nyman [Wed, 25 Jun 2025 19:08:38 +0000 (22:08 +0300)]
treewide: Backport translations - i18n

Backport from master.
Sync.

Signed-off-by: Hannu Nyman <[email protected]>
5 months agoluci-app-attendedsysupgrade: add firmware upgrade check status include
Paul Spooren [Thu, 30 Jan 2025 23:36:34 +0000 (23:36 +0000)]
luci-app-attendedsysupgrade: add firmware upgrade check status include

The status include is named '11' so as to come immediately after
'10_system' (which displays the system properties). Its only permanent
addition to the status page is a checkbox for the user preference to
check for updates.

If the UCI luci core section contains the option:
  `check_for_newer_firmwares`
then upon load, the status page checks if the download server offers a
new(er) firmware compatible with the current device.

Signed-off-by: Paul Spooren <[email protected]>
Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit f746a52979141df8ffbf7c3774002fead7817724)

5 months agotreewide: vectorise iconography
Paul Donald [Fri, 25 Apr 2025 21:39:26 +0000 (23:39 +0200)]
treewide: vectorise iconography

Clear, crisp, resolution independent vector graphics replace the trusty
microscopic PNG. Some minor CSS changes were needed to constrain images
in some locations to make sure they don't consume too much space.

Iconography taken from Mate desktop theme with minor adjustments:

https://github.com/mate-desktop/mate-icon-theme/

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit ae5d91da903b6f1d3086d6082ca622231e34f555)

treewide: vectorise iconography

follow-up to ae5d91da903b6f1d3086d6082ca622231e34f555

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 85fde70cd212177c83456063f781c72589565c4c)

treewide: vectorise iconography

follow-up to ae5d91da903b6f1d3086d6082ca622231e34f555

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit fa6ca8a618f835bb890ba3c7d8adae631ca17321)

treewide: vectorise iconography

follow-up to ae5d91da903b6f1d3086d6082ca622231e34f555

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1e3ebebad9bea734316b415ff0599cbc0deb8a39)

treewide: vectorise iconography

follow-up to ae5d91da903b6f1d3086d6082ca622231e34f555

tweaks to more closely resemble the old png iconography

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 22bcf11db7cb4292b87cfb69bb3e2759297068ca)

treewide: vectorise iconography

follow-up to ae5d91da903b6f1d3086d6082ca622231e34f555

tweaks to more closely resemble the old png iconography

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 750aa9e25b3fbdca2ad606413c214640bebf7a73)

5 months agoluci-mod-status: remove unused uci in syslog view
Paul Donald [Tue, 17 Jun 2025 13:59:35 +0000 (15:59 +0200)]
luci-mod-status: remove unused uci in syslog view

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 691574263356689912c5bd31984bb1b96417a847)

5 months agoluci-mod-status: add log filtering to syslog tab
Paul Donald [Sat, 19 Apr 2025 18:45:11 +0000 (20:45 +0200)]
luci-mod-status: add log filtering to syslog tab

Facility and severity filtering are based on a simple includes() search.
As such, false positives are possible. Although for the majority of
cases, this is still useful. Filtering using logread -z/Z is possible,
but not if a static log-file is configured. logread does not yet handle
severity either. 'not' checkboxes for each invert the respective search
filter.

A raw-text filter is also included as a bonus, whose meaning can be
inverted via the 'not' checkbox.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 16beffda15008bd9cb13ae051d43c281746e2d2e)

5 months agoluci-app-adblock: sync with adblock 4.4.2-3
Dirk Brenken [Sat, 14 Jun 2025 19:05:27 +0000 (21:05 +0200)]
luci-app-adblock: sync with adblock 4.4.2-3

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 74580723a32736f8900dbc35d5b64b70aa6d4e4c)

5 months agoluci-app-banip: sync with update 1.5.6-5
Dirk Brenken [Sat, 14 Jun 2025 17:50:04 +0000 (19:50 +0200)]
luci-app-banip: sync with update 1.5.6-5

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 2ac7444d33426d8483f57dc5efc5fa38d1491943)

5 months agoRevert "luci-base: override the load() function to return boolean for FlagValue"
Paul Donald [Thu, 12 Jun 2025 12:51:23 +0000 (14:51 +0200)]
Revert "luci-base: override the load() function to return boolean for FlagValue"

This reverts commit bedefb1803766f906ebb49d83740c10e9eb3db88.

Signed-off-by: Paul Donald <[email protected]>
5 months agoluci-app-rp-pppoe-server: remove uci menu requirement
Paul Donald [Tue, 10 Jun 2025 16:32:36 +0000 (18:32 +0200)]
luci-app-rp-pppoe-server: remove uci menu requirement

Prevents the uci menu items from appearing after installation

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1719a4dd4c06e2d279fbabb409e78ad183849e79)

5 months agoluci-app-rp-pppoe-server: change interface handler to NetworkSelect
Paul Donald [Tue, 10 Jun 2025 16:31:12 +0000 (18:31 +0200)]
luci-app-rp-pppoe-server: change interface handler to NetworkSelect

Closes #7695

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1cb4c8b976f6fe180eee46af08b900681934d368)

5 months agoluci-mod-system: Add repo key management
Paul Donald [Tue, 27 May 2025 15:11:25 +0000 (17:11 +0200)]
luci-mod-system: Add repo key management

Simplifies adding third-party repos. Functions on both 24.10 (opkg) and
main (apk). Based loosely on sshkey management.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit acdffc3d1dd8a4a427a2c81d046eb38080127da4)

luci-mod-system: Add repo key management

follow-up fix to acdffc3d1dd8a4a427a2c81d046eb38080127da4

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit cf1e61f10d31bedc4cdc9f70872bb8da383f6e62)

luci-mod-system: repo key management

Reject PEM in OPKG; reject non-PEM in APK

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 65bdfc61db169dcfbb81dae1d0df4ef7ddefe854)

5 months agoluci-app-banip: sync with update 1.5.6-4
Dirk Brenken [Mon, 9 Jun 2025 05:04:15 +0000 (07:04 +0200)]
luci-app-banip: sync with update 1.5.6-4

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit b27425edad8d5ab8cd4834b5b627ac6749edc9e2)

5 months agoluci-app-attendedsysupgrade: avoid redirects, handle redirect errors
Eric Fahlgren [Thu, 29 May 2025 15:51:14 +0000 (08:51 -0700)]
luci-app-attendedsysupgrade: avoid redirects, handle redirect errors

When users add an extraneous slash to the server url, then the ASU
server redirects GET requests.  But, this causes an error on POST
requests as the ASU server does not redirect those, so the LuCI
client failed inappropriately with an unhandled error.

Fix both of these by first trimming trailing slashes from the server
url as it is loaded to avoid the redirects.  Then, also handle all
unexpected responses, instead of just a select few.

Links: efahl/owut@724c990d6cc0
Signed-off-by: Eric Fahlgren <[email protected]>
(cherry picked from commit b98b525e165e5242627f515dfce8530cff7cbb9a)

5 months agotreewide: Backport translations and sync
Hannu Nyman [Sat, 7 Jun 2025 15:57:10 +0000 (18:57 +0300)]
treewide: Backport translations and sync

Backoprt translations.
Sync.

Signed-off-by: Hannu Nyman <[email protected]>
5 months agoluci-app-ddns: no implicit interface when ip_source=interface
Guoxin Pu [Thu, 5 Jun 2025 10:40:00 +0000 (18:40 +0800)]
luci-app-ddns: no implicit interface when ip_source=interface

The DDNS service attribute "interface" is for hotplug.d hook to bring up
and down DDNS updater(s) on ifup and ifdown events for an OpenWrt
"interface", not to be confused with attribute "ip_interface" which defines
the physical interface to get IP from.

With this change, the DDNS configuration service.xxx.interface is no longer
derived from the physical interface name (duplicated from ip_interface to be
specific) when ip_source=interface, and as a result, the interface must be set
explicitly.

Signed-off-by: Guoxin Pu <[email protected]>
(cherry picked from commit e6b26d1e07c41dfd520a2e8ef67ec14b6118f288)

6 months agoluci-mod-network: wireless.js fixes
Paul Donald [Fri, 6 Jun 2025 11:38:35 +0000 (13:38 +0200)]
luci-mod-network: wireless.js fixes
follow-up to cdce600

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 8bab10f820d062c934f0b9d496d2e75984fadfec)

6 months agoluci-app-adblock: optimizations & fixes
Dirk Brenken [Fri, 6 Jun 2025 05:03:36 +0000 (07:03 +0200)]
luci-app-adblock: optimizations & fixes

* optimized the button handling on the front page
* fixed a minor JS error on the DNS statistics page

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit b39bfe7522a7dbe6dbcc0b2fdb1de5aca04d3558)

6 months agoluci-app-antiblock: Disable routes without deleting
Khachatryan Karen [Tue, 27 May 2025 18:53:04 +0000 (21:53 +0300)]
luci-app-antiblock: Disable routes without deleting

1) Added the ability to disable routes without deleting them.

Signed-off-by: Khachatryan Karen <[email protected]>
(cherry picked from commit 0a09ae1805f3e1184ad67ebb9a47b00c020c8b27)

6 months agoluci-app-adblock: sync with update 4.4.2-2
Dirk Brenken [Sat, 31 May 2025 21:10:04 +0000 (23:10 +0200)]
luci-app-adblock: sync with update 4.4.2-2

* map improvements

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 740452bf1a0eae4d46c12a412debe8f2d2de67f2)

6 months agoluci-app-banip: sync with update 1.5.6-3
Dirk Brenken [Sat, 31 May 2025 20:14:41 +0000 (22:14 +0200)]
luci-app-banip: sync with update 1.5.6-3

* fixed #7772
* map improvements
* add a json reporting cache

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 242768d42c3f444383ca1734a79a41013ff30b03)

6 months agoluci-app-attendedsysupgrade: maintain value of owut.rootfs_size in LuCI app
Eric Fahlgren [Wed, 28 May 2025 16:09:33 +0000 (09:09 -0700)]
luci-app-attendedsysupgrade: maintain value of owut.rootfs_size in LuCI app

If someone has used owut to install an image with a modified rootfs
partition size, then using LuCI Attended Sysupgrade would change
it back, causing either a build failure or loss of configuration.

We fix this by simply adding the value from the owut config to the
build request (or 'null' if it doesn't exist).  The ASU server
then builds the image with the correct rootfs size, avoiding
these issues.

This value is not and should not be exposed in the LuCI app's
options, as it is quite advanced, very fragile and should only be
used by those who have researched the issues involved, typically
by reading the owut documentation and testing with owut first.

Signed-off-by: Eric Fahlgren <[email protected]>
(cherry picked from commit 42d32dff7f718d27ae7ccc65ebc83d001ebf14e3)

6 months agoluci-app-adblock: fix the report initialization
Dirk Brenken [Fri, 30 May 2025 20:28:31 +0000 (22:28 +0200)]
luci-app-adblock: fix the report initialization

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 04d22e68a1f6b059f99ec8093c5a34ba2c7cd2fd)

6 months agoluci-app-adblock: sync with update 4.4.2-1
Dirk Brenken [Fri, 30 May 2025 16:42:18 +0000 (18:42 +0200)]
luci-app-adblock: sync with update 4.4.2-1

Various fixes, a new modal reporting GeoIP map of blocked domains.

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit d971e88a0f7ab653d1bcf73dd4481e205c841c0b)

6 months agoluci-mod-network: fix default policy for bondig device
Nicolò Veronese [Sun, 4 May 2025 16:13:50 +0000 (18:13 +0200)]
luci-mod-network: fix default policy for bondig device

This fixes the missing policy option in UCI when selecting 'active-backup'
 as the required policy.

This has been discussed on issue #7683.

Signed-off-by: Nicolò Veronese <[email protected]>
(cherry picked from commit c996de5a82c3a13b57a593411f445a1d76cf90c4)

6 months agoMerge pull request #7775 from stangri/openwrt-24.10-luci-app-https-dns-proxy
Stan Grishin [Tue, 13 May 2025 23:52:43 +0000 (16:52 -0700)]
Merge pull request #7775 from stangri/openwrt-24.10-luci-app-https-dns-proxy

[24.10] luci-app-https-dns-proxy: update to 2025.05.11

6 months agoluci-app-https-dns-proxy: update to 2025.05.11
Stan Grishin [Mon, 12 May 2025 02:08:33 +0000 (02:08 +0000)]
luci-app-https-dns-proxy: update to 2025.05.11

* fixes https://github.com/openwrt/luci/issues/7763
* fixes https://github.com/stangri/luci-app-https-dns-proxy/issues/9
* fix README link

Signed-off-by: Stan Grishin <[email protected]>
(cherry picked from commit bd5cb1dd66c5a79e36e7fd2960bfc70e73fad686)

6 months agotreewide: Backport translations from master
Hannu Nyman [Sat, 10 May 2025 10:44:51 +0000 (13:44 +0300)]
treewide: Backport translations from master

Backport translations from master.

Signed-off-by: Hannu Nyman <[email protected]>
7 months agoluci-app-adblock: sync with update 4.4.1-2
Dirk Brenken [Sat, 3 May 2025 12:43:28 +0000 (14:43 +0200)]
luci-app-adblock: sync with update 4.4.1-2

Small fixes, a uci-defaults script and wording improvements.

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 98f7f2a2cfa6e28bdc5e73de1bc5affac83c72b6)

7 months agoluci-app-banip: sync with update 1.5.6-2
Dirk Brenken [Tue, 29 Apr 2025 19:47:21 +0000 (21:47 +0200)]
luci-app-banip: sync with update 1.5.6-2

Small fixes, a uci-defaults script and wording improvements.

Signed-off-by: Dirk Brenken <[email protected]>
(cherry picked from commit 5f9ff73b60bb97f85b9edf9e41a6942e72b47ed6)

7 months agoluci-app-banip: Trim() error fix.
PeterK [Wed, 23 Apr 2025 10:14:38 +0000 (12:14 +0200)]
luci-app-banip: Trim() error fix.

Unable to open a banip Overview tab.
Update overview.js for the Trim() error fix.

Signed-off-by: PeterK <[email protected]>
(cherry picked from commit 05b8d9b1ee98c1bd73100f7b4f038dd6e94ff88b)

7 months agoluci-base: Hardcode 'openwrt-24.10' as the branch name
Hannu Nyman [Wed, 23 Apr 2025 20:43:29 +0000 (23:43 +0300)]
luci-base: Hardcode 'openwrt-24.10' as the branch name

Hardcode 'openwrt-24.10' release branch as the branch name to avoid
'LuCI (HEAD detached at 2ac26e56) branch' being shown as the branch.

Feeds are since March 2025 cloned shallow if cloned from a specific
commit, like done with a release tag. Change in OpenWrt:
https://github.com/openwrt/openwrt/commit/32d0a57dc10811a24816e51f10e55963f40fe462

As the only cloned commit of a release tag is without history, the branch
can't be identified.

So, hardcode the branch name to get the proper branch name
'LuCI openwrt-24.10 branch'.

Fixes #7737

Signed-off-by: Hannu Nyman <[email protected]>
7 months agoluci-base: override the load() function to return boolean for FlagValue
Paul Donald [Fri, 25 Apr 2025 15:17:51 +0000 (17:17 +0200)]
luci-base: override the load() function to return boolean for FlagValue

In the underlying uci system, all variables are effectively strings, so
for those configuration values which serve as 'boolean' flags, we need
to coerce the various forms into a real boolean. Only the following
string values result in true: 1|on|true|yes|enabled. Otherwise, false.

Checkboxes now fill correctly.

"Unchanged" configurations may write changed values as the Flag values
are coerced to '1' or '0' on write, but the configuration behaviour
remains synonymous.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1355a6fa253d765140f5571354939d2e93e6d967)

7 months agotreewide: Backport translations
Hannu Nyman [Thu, 24 Apr 2025 15:44:54 +0000 (18:44 +0300)]
treewide: Backport translations

Backport translations. Sync.

Signed-off-by: Hannu Nyman <[email protected]>
7 months agoluci-mod-network: widgets shall show devices that are online as online
Paul Donald [Wed, 23 Apr 2025 22:13:26 +0000 (00:13 +0200)]
luci-mod-network: widgets shall show devices that are online as online

follow-up to 832680bb84d18132d04f424b7d70ce18d62e1150

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit f17ae7fd96f285aa564579f597f51e2679b27fd4)

7 months agoluci-app-attendedsysupgrade: change error reporting url
Eric Fahlgren [Sun, 20 Apr 2025 23:12:00 +0000 (16:12 -0700)]
luci-app-attendedsysupgrade: change error reporting url

Direct error reports to a LuCI-ASU-app-specific thread on the forum, where
they'll get more attention and reduce clutter on the ASU server's github issues.

Signed-off-by: Eric Fahlgren <[email protected]>
(cherry picked from commit 9fd692ab4402260bbbe5512cfeff6427c18d39b4)

7 months agoluci-mod-network: wireless.js fixes
Paul Donald [Wed, 23 Apr 2025 12:04:19 +0000 (14:04 +0200)]
luci-mod-network: wireless.js fixes

follow-up to cdce600aaec66f762f18d608c74cbf3abcafe1c7

Fixes a const reassignment error

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 1e3aa83b449b17fb3a09441d1a6c837752718c59)

7 months agoluci-base: prevent tools.widgets.ZoneSelect tracebacks
Paul Donald [Wed, 23 Apr 2025 12:04:12 +0000 (14:04 +0200)]
luci-base: prevent tools.widgets.ZoneSelect tracebacks

follow-up fix for 0be4ad51a0bea3e1e3e6cd7d646e11ec6c722540

It seems to have been this way for a while, for zone selections
involving the 'any' ('*') choice. firewall forwards.js has no
'this.allowany;' property on the widgets, so the any choice is absent,
leading to a traceback, caused by the 'src' widget, even though
this code block operates on the 'dst' value. Certain combinations of
'src' and 'dst' also triggered tracebacks.

This might not be the correct behaviour for this widget, but it does
prevent tracebacks caused by null values.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit aa6924cd4ce64cc6e4ced50b0603f9f34b3e619c)

7 months agoluci-theme-*: ES6 refactor
Paul Donald [Wed, 23 Apr 2025 12:21:40 +0000 (14:21 +0200)]
luci-theme-*: ES6 refactor

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 9180f2a76219d44ea11bc37574627144d3ced167)

7 months agoluci-theme: fix some dynamic layout issues
Paul Donald [Wed, 23 Apr 2025 12:03:57 +0000 (14:03 +0200)]
luci-theme: fix some dynamic layout issues

Implement a dynamic menu item width to allow item unwrapped and visible:
'min-width: max-content;' or 'max-width: max-content;'

Remove IE hacks and fix a console error for -webkit-scrollbar-thumb

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 91572540595dae9ea88ae5e38ce01847cb4c08e0)

7 months agoluci-app-ddns: Fix multiple IP display bug
Paul Donald [Wed, 23 Apr 2025 12:03:50 +0000 (14:03 +0200)]
luci-app-ddns: Fix multiple IP display bug

Occasionally, a DNS lookup returns multiple IPs, so the best thing to
do isn't to join them together as a unified string, but to separate
them with an HTML <br/>.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit 54192d3b3659e0ef94c976c84f71f85efdb4528d)

7 months agoluci-mod-network: widgets shall show devices that are online as online
Paul Donald [Wed, 23 Apr 2025 12:03:39 +0000 (14:03 +0200)]
luci-mod-network: widgets shall show devices that are online as online

Tunnel devices which are up, show as down, since the config being
enumerated does not have access to any device status. The 'device' being
enumerated is e.g. 'wireguard_wg0', a configuration for a tunnel
interface, whose parent is an 'ethernet' type.

That's a bug for another day. So they shall use parent device status.

Signed-off-by: Paul Donald <[email protected]>
(cherry picked from commit a288354e78d4dd5872dea52bcebf7d1f91fad3b1)