Add CloudMounter Rules

This commit is contained in:
SukkaW
2024-01-10 23:10:00 +08:00
parent 3dfb07920e
commit 611dc7183a
5 changed files with 51 additions and 3 deletions

View File

@@ -0,0 +1,34 @@
import path from 'path';
import { DOMAINS, PROCESS_NAMES } from '../Source/non_ip/cloudmounter';
import { SHARED_DESCRIPTION } from './lib/constants';
import { createRuleset } from './lib/create-file';
import { task } from './lib/trace-runner';
const outputSurgeDir = path.resolve(import.meta.dir, '../List');
const outputClashDir = path.resolve(import.meta.dir, '../Clash');
export const buildCloudMounterRules = task(import.meta.path, async () => {
// AND,((SRC-IP,192.168.1.110), (DOMAIN, example.com))
const results = DOMAINS.flatMap(domain => {
return PROCESS_NAMES.map(process => {
return `AND,((DOMAIN-SUFFIX,${domain}), (PROCESS-NAME, ${process}))`;
});
});
const description = SHARED_DESCRIPTION;
return Promise.all(createRuleset(
'Sukka\'s Ruleset - CloudMounter / RaiDrive',
description,
new Date(),
results,
'domainset',
path.resolve(outputSurgeDir, 'non_ip', 'cloudmounter.conf'),
path.resolve(outputClashDir, 'non_ip', 'cloudmounter.txt')
));
});
if (import.meta.main) {
buildCloudMounterRules();
}