Basic refactor for packaging

This commit is contained in:
OleSTEEP 2024-08-29 01:32:36 +03:00
parent 0a9114ff64
commit 7487eb94bd
25 changed files with 573 additions and 485 deletions

View file

@ -0,0 +1,27 @@
import os.path
from argparse import Namespace, ArgumentParser
from dataclasses import dataclass
from typing import Any
import tomllib
@dataclass
class Config:
config: dict[str, Any]
args: Namespace
@classmethod
def setup_config(cls):
parser = ArgumentParser(prog="ffmpeg-comp",
description="Python utility to compress Visual Novel Resources"
)
parser.add_argument("source")
parser.add_argument("-c", "--config", default="ffmpeg-comp.toml")
args = parser.parse_args()
if os.path.isfile(args.config):
with open(args.config, "rb") as cfile:
config = tomllib.load(cfile)
else:
print("Failed to find config. Check `ffmpeg-comp -h` to more info")
return cls(config=config, args=args)