-# Copyright 2017-2018 Stan Grishin (stangri@melmac.ca)
-# This is free software, licensed under the GNU General Public License v3.
+# Copyright 2017-2024 MOSSDeF, Stan Grishin (stangri@melmac.ca).
+# This is free software, licensed under AGPL-3.0-or-later.
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-https-dns-proxy
-PKG_LICENSE:=GPL-3.0-or-later
+PKG_LICENSE:=AGPL-3.0-or-later
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
PKG_VERSION:=2023.11.19
-PKG_RELEASE:=r3
+PKG_RELEASE:=4
LUCI_TITLE:=DNS Over HTTPS Proxy Web UI
+LUCI_URL:=https://github.com/stangri/luci-app-https-dns-proxy/
LUCI_DESCRIPTION:=Provides Web UI for DNS Over HTTPS Proxy
LUCI_DEPENDS:=+luci-base +https-dns-proxy
--- /dev/null
+# README
+
+Documentation for this project is available at [https://docs.openwrt.melmac.net/luci-app-https-dns-proxy/](https://docs.openwrt.melmac.net/luci-app-https-dns-proxy/).
+
get Name() {
return "https-dns-proxy";
},
+ get ReadmeCompat() {
+ return "";
+ },
get URL() {
- return "https://docs.openwrt.melmac.net/" + pkg.Name + "/";
+ return (
+ "https://docs.openwrt.melmac.net/" +
+ pkg.Name +
+ "/" +
+ (pkg.ReadmeCompat ? pkg.ReadmeCompat + "/" : "")
+ );
},
templateToRegexp: function (template) {
return RegExp(
"$"
);
},
+ templateToResolver: function (template, args) {
+ return template.replace(/{(\w+)}/g, (_, v) => args[v]);
+ },
};
var getInitList = rpc.declare({
return L.Class.extend({
status: status,
+ pkg: pkg,
+ getInitStatus: getInitStatus,
getPlatformSupport: getPlatformSupport,
getProviders: getProviders,
getRuntime: getRuntime,
"require view";
"require https-dns-proxy.status as hdp";
-var pkg = {
- get Name() {
- return "https-dns-proxy";
- },
-
- get URL() {
- return "https://docs.openwrt.melmac.net/" + pkg.Name + "/";
- },
-
- templateToRegexp: function (template) {
- return RegExp(
- "^" +
- template
- .split(/(\{\w+\})/g)
- .map((part) => {
- let placeholder = part.match(/^\{(\w+)\}$/);
- if (placeholder) return `(?<${placeholder[1]}>.*?)`;
- else return part.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- })
- .join("") +
- "$"
- );
- },
-
- templateToResolver: function (template, args) {
- return template.replace(/{(\w+)}/g, (_, v) => args[v]);
- },
-};
+var pkg = hdp.pkg;
return view.extend({
load: function () {
"require uci";
"require form";
"require baseclass";
+"require https-dns-proxy.status as hdp";
-var pkg = {
- get Name() {
- return "https-dns-proxy";
- },
- get URL() {
- return "https://docs.openwrt.melmac.net/" + pkg.Name + "/";
- },
- templateToRegexp: function (template) {
- return RegExp(
- "^" +
- template
- .split(/(\{\w+\})/g)
- .map((part) => {
- let placeholder = part.match(/^\{(\w+)\}$/);
- if (placeholder) return `(?<${placeholder[1]}>.*?)`;
- else return part.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- })
- .join("") +
- "$"
- );
- },
-};
-
-var getInitStatus = rpc.declare({
- object: "luci." + pkg.Name,
- method: "getInitStatus",
- params: ["name"],
-});
-
-var getPlatformSupport = rpc.declare({
- object: "luci." + pkg.Name,
- method: "getPlatformSupport",
- params: ["name"],
-});
-
-var getProviders = rpc.declare({
- object: "luci." + pkg.Name,
- method: "getProviders",
- params: ["name"],
-});
-
-var getRuntime = rpc.declare({
- object: "luci." + pkg.Name,
- method: "getRuntime",
- params: ["name"],
-});
+var pkg = hdp.pkg;
return baseclass.extend({
title: _("HTTPS DNS Proxy Instances"),
load: function () {
return Promise.all([
- getInitStatus(pkg.Name),
- getProviders(pkg.Name),
- getRuntime(pkg.Name),
+ hdp.getInitStatus(pkg.Name),
+ hdp.getProviders(pkg.Name),
+ hdp.getRuntime(pkg.Name),
]);
},
msgid "DSCP Codepoint"
msgstr ""
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.decloudus.dns.json:2
+msgid "DeCloudUs DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.digitale-gesellschaft.dns.json:2
+msgid "Digitale Gesellschaft (CH)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:14
+msgid "Direct"
+msgstr ""
+
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:376
msgid "Disable"
msgstr ""
msgid "Enabling %s service"
msgstr ""
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ffmuc.doh.json:2
+msgid "FFMUC DNS (DE)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:18
+msgid "Family Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:8
+msgid "Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.ahadns.blitz.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.rethinkdns.sky.json:8
+msgid "Filters"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:22
+msgid "Finland"
+msgstr ""
+
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:102
msgid "Force DNS Ports"
msgstr ""
msgid "Service Status"
msgstr ""
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:13
+msgid "Siberia"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:30
+msgid "Singapore"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.snopyta.dns.doh.fi.json:2
+msgid "Snopyta DNS (FI)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:22
+msgid "Spain"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:19
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:14
+msgid "Standard"
+msgstr ""
+
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:300
msgid "Start"
msgstr ""
msgid "Stopping %s service"
msgstr ""
-#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:149
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.switch.dns.json:2
+msgid "Switch DNS (CH)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:14
+msgid "Switzerland"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:148
msgid "There are no active instances."
msgstr ""
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:2
+msgid "Tiarap Public DNS (JP)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:18
+msgid "US/Chicago"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:34
+msgid "US/Los Angeles"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:46
+msgid "US/New York"
+msgstr ""
+
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:245
msgid "Unknown"
msgstr ""
"option": {
"description": "Variant",
"type": "select",
- "regex": "(family.|)",
+ "regex": "(familyshield.|)",
"options": [
{
- "value": "family.",
+ "value": "familyshield.",
"description": "Family Filter"
},
{