Remove capital letter of subnet. Leave the old value the same for now

This commit is contained in:
itdoginfo 2025-01-29 18:37:20 +03:00
parent 3d44dabac5
commit e1b3fcbbd5
No known key found for this signature in database
GPG key ID: 4D49CCAC75E438EA
3 changed files with 31 additions and 16 deletions

View file

@ -2,7 +2,7 @@ name: Create lists
on:
push:
branches: [ "main", "srs" ]
branches: [ "main" ]
paths:
- .github/workflows/create-lists.yml
- Categories/**
@ -10,7 +10,7 @@ on:
- src/**
- convert.py
schedule:
- cron: '29 */8 * * *'
- cron: '29 8 * * 1'
permissions:
contents: write
@ -30,7 +30,7 @@ jobs:
-v ${{ github.workspace }}/Categories:/app/Categories \
-v ${{ github.workspace }}/Services:/app/Services \
-v ${{ github.workspace }}/SRS:/app/SRS \
itdoginfo/compilesrs:0.1.3
itdoginfo/compilesrs:0.1.4
- name: Check Russia/inside-dnsmasq-ipset
uses: itdoginfo/dnsmasq-action@0.1

View file

@ -16,9 +16,9 @@ rusDomainsOutsideSrc='src/Russia-domains-outside.lst'
rusDomainsOutsideOut='Russia/outside'
uaDomainsSrc='src/Ukraine-domains-inside.lst'
uaDomainsOut='Ukraine/inside'
DiscordSubnets = 'Subnets/IPv4/Discord.lst'
MetaSubnets = 'Subnets/IPv4/Meta.lst'
TwitterSubnets = 'Subnets/IPv4/Twitter.lst'
DiscordSubnets = 'Subnets/IPv4/discord.lst'
MetaSubnets = 'Subnets/IPv4/meta.lst'
TwitterSubnets = 'Subnets/IPv4/twitter.lst'
def raw(src, out):
domains = set()
@ -267,7 +267,7 @@ def generate_srs_subnets(input_file, output_json_directory='JSON', compiled_outp
if subnet:
subnets.append(subnet)
if input_file == "Subnets/IPv4/Discord.lst":
if input_file == "Subnets/IPv4/discord.lst":
data = {
"version": 2,
"rules": [
@ -290,14 +290,14 @@ def generate_srs_subnets(input_file, output_json_directory='JSON', compiled_outp
}
filename = os.path.splitext(os.path.basename(input_file))[0]
output_file_path = os.path.join(output_json_directory, f"{filename}-subnets.json")
output_file_path = os.path.join(output_json_directory, f"{filename}_subnets.json")
with open(output_file_path, 'w', encoding='utf-8') as output_file:
json.dump(data, output_file, indent=4)
print(f"JSON file generated: {output_file_path}")
srs_file_path = os.path.join(compiled_output_directory, f"{filename}-subnets.srs")
srs_file_path = os.path.join(compiled_output_directory, f"{filename}_subnets.srs")
try:
subprocess.run(
["sing-box", "rule-set", "compile", output_file_path, "-o", srs_file_path], check=True
@ -351,9 +351,9 @@ if __name__ == '__main__':
russia_inside = domains_from_file('Russia/inside-raw.lst')
russia_outside = domains_from_file('Russia/outside-raw.lst')
ukraine_inside = domains_from_file('Ukraine/inside-raw.lst')
generate_srs_domains(russia_inside, 'russia-inside')
generate_srs_domains(russia_outside, 'russia-outside')
generate_srs_domains(ukraine_inside, 'ukraine-inside')
generate_srs_domains(russia_inside, 'russia_inside')
generate_srs_domains(russia_outside, 'russia_outside')
generate_srs_domains(ukraine_inside, 'ukraine_inside')
# Sing-box categories
directories = ['Categories', 'Services']

View file

@ -2,6 +2,8 @@
import ipaddress
import urllib.request
import os
import shutil
BGP_TOOLS_URL = 'https://bgp.tools/table.txt'
USER_AGENT = 'itdog.info - hi@itdog.info'
@ -11,14 +13,14 @@ IPv6_DIR = 'Subnets/IPv6'
AS_META = '32934'
AS_TWITTER = '13414'
META = 'Meta.lst'
TWITTER = 'Twitter.lst'
META = 'meta.lst'
TWITTER = 'twitter.lst'
# From https://iplist.opencck.org/
DISCORD_VOICE_V4='https://iplist.opencck.org/?format=text&data=cidr4&site=discord.gg&site=discord.media'
DISCORD_VOICE_V6='https://iplist.opencck.org/?format=text&data=cidr6&site=discord.gg&site=discord.media'
DISCORD = 'Discord.lst'
DISCORD = 'discord.lst'
subnet_list = []
@ -80,6 +82,11 @@ def write_subnets_to_file(subnets, filename):
for subnet in subnets:
file.write(f'{subnet}\n')
def copy_file_legacy(src_filename):
base_filename = os.path.basename(src_filename)
new_filename = base_filename.capitalize()
shutil.copy(src_filename, os.path.join(os.path.dirname(src_filename), new_filename))
if __name__ == '__main__':
request = urllib.request.Request(BGP_TOOLS_URL, headers={'User-Agent': USER_AGENT})
@ -102,4 +109,12 @@ if __name__ == '__main__':
# Discord voice
ipv4_discord, ipv6_discord = download_ready_subnets(DISCORD_VOICE_V4, DISCORD_VOICE_V6)
write_subnets_to_file(ipv4_discord, f'{IPv4_DIR}/{DISCORD}')
write_subnets_to_file(ipv6_discord, f'{IPv6_DIR}/{DISCORD}')
write_subnets_to_file(ipv6_discord, f'{IPv6_DIR}/{DISCORD}')
# Legacy name
copy_file_legacy(f'{IPv4_DIR}/{META}')
copy_file_legacy(f'{IPv6_DIR}/{META}')
copy_file_legacy(f'{IPv4_DIR}/{TWITTER}')
copy_file_legacy(f'{IPv6_DIR}/{TWITTER}')
copy_file_legacy(f'{IPv4_DIR}/{DISCORD}')
copy_file_legacy(f'{IPv6_DIR}/{DISCORD}')