From ea6a4a0dc3e6cb91284f77959b05b0e2404c89ad Mon Sep 17 00:00:00 2001 From: SukkaW Date: Wed, 13 Nov 2024 17:15:16 +0800 Subject: [PATCH] Refactor: adjust adguardhome output --- Build/build-apple-cdn.ts | 2 +- Build/build-cdn-download-conf.ts | 2 +- Build/build-cloudmounter-rules.ts | 2 +- Build/build-common.ts | 2 +- ...tic-direct-lan-ruleset-dns-mapping-module.ts | 2 +- Build/build-microsoft-cdn.ts | 2 +- Build/build-reject-domainset.ts | 17 +++++++++++------ Build/build-reject-ip-list.ts | 2 +- Build/build-sgmodule-always-realip.ts | 2 +- Build/build-speedtest-domainset.ts | 2 +- Build/build-stream-service.ts | 2 +- Build/build-telegram-cidr.ts | 2 +- .../constants.ts => constants/description.ts} | 0 13 files changed, 22 insertions(+), 17 deletions(-) rename Build/{lib/constants.ts => constants/description.ts} (100%) diff --git a/Build/build-apple-cdn.ts b/Build/build-apple-cdn.ts index 893aca75..419afa46 100644 --- a/Build/build-apple-cdn.ts +++ b/Build/build-apple-cdn.ts @@ -1,6 +1,6 @@ import { parseFelixDnsmasqFromResp } from './lib/parse-dnsmasq'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { createMemoizedPromise } from './lib/memo-promise'; import { DomainsetOutput } from './lib/create-file'; import { $fetch } from './lib/make-fetch-happen'; diff --git a/Build/build-cdn-download-conf.ts b/Build/build-cdn-download-conf.ts index 23614b60..0fce6cd4 100644 --- a/Build/build-cdn-download-conf.ts +++ b/Build/build-cdn-download-conf.ts @@ -2,7 +2,7 @@ import path from 'node:path'; import { fetchRemoteTextByLine, readFileIntoProcessedArray } from './lib/fetch-text-by-line'; import { HostnameTrie } from './lib/trie'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { appendArrayInPlace } from './lib/append-array-in-place'; import { SOURCE_DIR } from './constants/dir'; import { processLine } from './lib/process-line'; diff --git a/Build/build-cloudmounter-rules.ts b/Build/build-cloudmounter-rules.ts index 0a9cc4b8..a60b718f 100644 --- a/Build/build-cloudmounter-rules.ts +++ b/Build/build-cloudmounter-rules.ts @@ -1,5 +1,5 @@ import { DOMAINS, PROCESS_NAMES } from '../Source/non_ip/cloudmounter'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { task } from './trace'; import { RulesetOutput } from './lib/create-file'; diff --git a/Build/build-common.ts b/Build/build-common.ts index d8b27a60..d3d9ed13 100644 --- a/Build/build-common.ts +++ b/Build/build-common.ts @@ -5,7 +5,7 @@ import { readFileByLine } from './lib/fetch-text-by-line'; import { processLine } from './lib/process-line'; import type { Span } from './trace'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { fdir as Fdir } from 'fdir'; import { appendArrayInPlace } from './lib/append-array-in-place'; import { SOURCE_DIR } from './constants/dir'; diff --git a/Build/build-domestic-direct-lan-ruleset-dns-mapping-module.ts b/Build/build-domestic-direct-lan-ruleset-dns-mapping-module.ts index c7e00a4d..8fd86cab 100644 --- a/Build/build-domestic-direct-lan-ruleset-dns-mapping-module.ts +++ b/Build/build-domestic-direct-lan-ruleset-dns-mapping-module.ts @@ -6,7 +6,7 @@ import type { DNSMapping } from '../Source/non_ip/direct'; import { readFileIntoProcessedArray } from './lib/fetch-text-by-line'; import { compareAndWriteFile } from './lib/create-file'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { createMemoizedPromise } from './lib/memo-promise'; import * as yaml from 'yaml'; import { appendArrayInPlace } from './lib/append-array-in-place'; diff --git a/Build/build-microsoft-cdn.ts b/Build/build-microsoft-cdn.ts index a1304810..64e1b6f5 100644 --- a/Build/build-microsoft-cdn.ts +++ b/Build/build-microsoft-cdn.ts @@ -1,7 +1,7 @@ import { task } from './trace'; import { fetchRemoteTextByLine } from './lib/fetch-text-by-line'; import { HostnameSmolTrie } from './lib/trie'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { createMemoizedPromise } from './lib/memo-promise'; import { extractDomainsFromFelixDnsmasq } from './lib/parse-dnsmasq'; import { RulesetOutput } from './lib/create-file'; diff --git a/Build/build-reject-domainset.ts b/Build/build-reject-domainset.ts index e6059734..9242242e 100644 --- a/Build/build-reject-domainset.ts +++ b/Build/build-reject-domainset.ts @@ -11,14 +11,13 @@ import { task } from './trace'; // tldts-experimental is way faster than tldts, but very little bit inaccurate // (since it is hashes based). But the result is still deterministic, which is // enough when creating a simple stat of reject hosts. -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { getPhishingDomains } from './lib/get-phishing-domains'; import { setAddFromArray } from './lib/set-add-from-array'; import { appendArrayInPlace } from './lib/append-array-in-place'; import { OUTPUT_INTERNAL_DIR, SOURCE_DIR } from './constants/dir'; import { DomainsetOutput } from './lib/create-file'; -import { withBannerArray } from './lib/misc'; export const buildRejectDomainSet = task(require.main === module, __filename)(async (span) => { const rejectBaseDescription = [ @@ -155,10 +154,16 @@ export const buildRejectDomainSet = task(require.main === module, __filename)(as ), compareAndWriteFile( span, - withBannerArray( - 'Sukka\'s Ruleset - Blocklist for AdGuardHome', - rejectBaseDescription, - new Date(), + appendArrayInPlace( + [ + '! Title: Sukka\'s Ruleset - Blocklist for AdGuardHome', + '! Last modified: ' + new Date().toUTCString(), + '! Expires: 6 hours', + '! License: https://github.com/SukkaW/Surge/blob/master/LICENSE', + '! Homepage: https://github.com/SukkaW/Surge', + '! Description: The domainset supports AD blocking, tracking protection, privacy protection, anti-phishing, anti-mining', + '!' + ], rejectOutput.adguardhome(filterRuleWhitelistDomainSets) ), path.join(OUTPUT_INTERNAL_DIR, 'reject-adguardhome.txt') diff --git a/Build/build-reject-ip-list.ts b/Build/build-reject-ip-list.ts index 02d07f06..c18f78b8 100644 --- a/Build/build-reject-ip-list.ts +++ b/Build/build-reject-ip-list.ts @@ -2,7 +2,7 @@ import path from 'node:path'; import { createReadlineInterfaceFromResponse, readFileIntoProcessedArray } from './lib/fetch-text-by-line'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { isProbablyIpv4, isProbablyIpv6 } from './lib/is-fast-ip'; import { fsFetchCache, getFileContentHash } from './lib/cache-filesystem'; import { processLine } from './lib/process-line'; diff --git a/Build/build-sgmodule-always-realip.ts b/Build/build-sgmodule-always-realip.ts index 9b5cf775..c9ee3a81 100644 --- a/Build/build-sgmodule-always-realip.ts +++ b/Build/build-sgmodule-always-realip.ts @@ -7,7 +7,7 @@ import { DOMESTICS, DOH_BOOTSTRAP } from '../Source/non_ip/domestic'; import * as yaml from 'yaml'; import { OUTPUT_INTERNAL_DIR, OUTPUT_MODULES_DIR } from './constants/dir'; import { appendArrayInPlace } from './lib/append-array-in-place'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { createGetDnsMappingRule } from './build-domestic-direct-lan-ruleset-dns-mapping-module'; const HOSTNAMES = [ diff --git a/Build/build-speedtest-domainset.ts b/Build/build-speedtest-domainset.ts index e7ed62d4..7db6a9fc 100644 --- a/Build/build-speedtest-domainset.ts +++ b/Build/build-speedtest-domainset.ts @@ -3,7 +3,7 @@ import path from 'node:path'; import { getHostname } from 'tldts-experimental'; import { task } from './trace'; import { $fetch } from './lib/make-fetch-happen'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { readFileIntoProcessedArray } from './lib/fetch-text-by-line'; import { DomainsetOutput } from './lib/create-file'; diff --git a/Build/build-stream-service.ts b/Build/build-stream-service.ts index 963008b7..a6806edc 100644 --- a/Build/build-stream-service.ts +++ b/Build/build-stream-service.ts @@ -3,7 +3,7 @@ import type { Span } from './trace'; import { task } from './trace'; import { ALL, NORTH_AMERICA, EU, HK, TW, JP, KR } from '../Source/stream'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { RulesetOutput } from './lib/create-file'; export function createRulesetForStreamService(span: Span, diff --git a/Build/build-telegram-cidr.ts b/Build/build-telegram-cidr.ts index 78694970..bd1d07cc 100644 --- a/Build/build-telegram-cidr.ts +++ b/Build/build-telegram-cidr.ts @@ -3,7 +3,7 @@ import { createReadlineInterfaceFromResponse } from './lib/fetch-text-by-line'; import { isProbablyIpv4, isProbablyIpv6 } from './lib/is-fast-ip'; import { processLine } from './lib/process-line'; import { task } from './trace'; -import { SHARED_DESCRIPTION } from './lib/constants'; +import { SHARED_DESCRIPTION } from './constants/description'; import { createMemoizedPromise } from './lib/memo-promise'; import { RulesetOutput } from './lib/create-file'; import { $fetch } from './lib/make-fetch-happen'; diff --git a/Build/lib/constants.ts b/Build/constants/description.ts similarity index 100% rename from Build/lib/constants.ts rename to Build/constants/description.ts