Update On Mon Oct 28 19:35:25 CET 2024

This commit is contained in:
github-action[bot]
2024-10-28 19:35:26 +01:00
parent 39564c32a7
commit 359f5ebe28
64 changed files with 1211 additions and 543 deletions

View File

@@ -1,33 +1,55 @@
#!/usr/bin/env python3
import os
import subprocess
def check_string_output(command):
return subprocess.check_output(command, stderr=subprocess.STDOUT).decode().strip()
# https://wiki.debian.org/DebianReleases
# https://wiki.ubuntu.com/Releases
codenames = {
"trusty" : "ubuntu-14.04-trusty",
"xenial" : "ubuntu-16.04-xenial",
"bionic" : "ubuntu-18.04-bionic",
"focal" : "ubuntu-20.04-focal",
"impish" : "ubuntu-21.10-impish",
"jammy" : "ubuntu-22.04-jammy",
"lunar" : "ubuntu-23.04-lunar",
"mantic" : "ubuntu-23.10-mantic",
"noble" : "ubuntu-24.04-noble",
"oracular" : "ubuntu-24.10-oracular",
"stretch" : "debian-9-stretch",
"buster" : "debian-10-buster",
"bullseye" : "debian-11-bullseye",
"bookworm" : "debian-12-bookworm",
"trixie" : "debian-13-trixie",
"testing" : "debian-testing",
"sid" : "debian-sid",
}
_codenames_db = {}
def open_ubuntu_csv_file(csvpath):
import csv
with open(csvpath, newline='') as csvfile:
reader = csv.DictReader(csvfile, delimiter=',')
for row in reader:
version = row['version'].replace(' LTS', '')
codename = row['series']
key = codename
value = 'ubuntu-' + version + '-' + codename
_codenames_db[key] = value
def open_debian_csv_file(csvpath):
import csv
with open(csvpath, newline='') as csvfile:
reader = csv.DictReader(csvfile, delimiter=',')
for row in reader:
version = row['version']
codename = row['series']
key = codename
if version:
value = 'debian-' + version + '-' + codename
else:
value = 'debian-' + codename
_codenames_db[key] = value
def init_codenames_from_distro_info_data():
try:
open_ubuntu_csv_file('/usr/share/distro-info/ubuntu.csv')
except IOError:
# shipped by distro-info-data 0.60ubuntu0.2
open_ubuntu_csv_file('./distro-info/ubuntu.csv')
pass
try:
open_debian_csv_file('/usr/share/distro-info/debian.csv')
except IOError:
# shipped by distro-info-data 0.60ubuntu0.2
open_debian_csv_file('./distro-info/debian.csv')
pass
def main():
os.chdir(os.path.dirname(os.path.abspath(__file__)))
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('codename', nargs='?', help='Debian Distribution Name')
@@ -37,12 +59,17 @@ def main():
if not codename:
codename = check_string_output(['lsb_release', '-sc']).lower()
if codename in codenames:
print(codenames[codename])
init_codenames_from_distro_info_data()
if codename in _codenames_db:
print(_codenames_db[codename])
else:
id = check_string_output(['lsb_release', '-si']).lower()
release = check_string_output(['lsb_release', '-sr'])
print("%s-%s-%s" % (id, release, codename))
if codename != 'n/a':
print("%s-%s-%s" % (id, release, codename))
else:
print("%s-%s" % (id, release))
if __name__ == '__main__':
main()