Compare commits

..

No commits in common. "282e2ac7a1490bcdf748d6c66580c555f584bc0b" and "a5ca3a60440d740a4d6b67e255c2d6c777a027c0" have entirely different histories.

9 changed files with 22 additions and 56 deletions

1
.gitignore vendored
View file

@ -1,5 +1,4 @@
__pycache__ __pycache__
/tmp /tmp
/.venv
/.vscode /.vscode
/dist /dist

View file

@ -32,8 +32,4 @@ requires-python = ">= 3.10"
path = "rwx/__init__.py" path = "rwx/__init__.py"
[tool.ruff] [tool.ruff]
line-length = 80
[tool.ruff.lint]
ignore = ["COM812", "D203", "D213", "ISC001"]
select = ["ALL"] select = ["ALL"]

View file

@ -1,3 +1,2 @@
"""Read Write eXecute.""" """Read Write eXecute."""
__version__ = "0.0.1" __version__ = "0.0.1"

View file

@ -1,11 +1,6 @@
#! /usr/bin/env python3 #! /usr/bin/env python3
"""Entry point."""
from pathlib import Path from pathlib import Path
import fs import fs
if __name__ == "__main__": if __name__ == "__main__":
file_path = Path(__file__).resolve() file_path = Path(__file__).resolve()
root_path = file_path.parent root_path = file_path.parent

View file

@ -6,14 +6,10 @@ rwx.cmd.need("mksquashfs")
def mksquashfs(input_root: str, output_file: str): def mksquashfs(input_root: str, output_file: str):
ps.run( ps.run([
[
"mksquashfs", "mksquashfs",
input_root, input_root,
output_file, output_file,
"-comp", "-comp", "zstd",
"zstd", "-Xcompression-level", str(18),
"-Xcompression-level", ])
str(18),
]
)

View file

@ -17,13 +17,8 @@ MODULES = {
} }
def make_image( def make_image(image_format: str, image_path: str, modules: list[str],
image_format: str, memdisk_path: str, pubkey_path: str | None = None) -> None:
image_path: str,
modules: list[str],
memdisk_path: str,
pubkey_path: str | None = None,
) -> None:
args = [ args = [
("grub-mkimage",), ("grub-mkimage",),
("--compress", COMPRESSION), ("--compress", COMPRESSION),
@ -34,6 +29,6 @@ def make_image(
if pubkey_path: if pubkey_path:
args.append(("--pubkey", pubkey_path)) args.append(("--pubkey", pubkey_path))
args.extend(modules) args.extend(modules)
if modules := MODULES.get(image_format): if modules := MODULES.get(image_format, None):
args.extend(modules) args.extend(modules)
ps.run(*args) ps.run(*args)

View file

@ -16,17 +16,13 @@ def get_file_logger(name: str) -> logging.Logger:
logger.setLevel(logging.INFO) logger.setLevel(logging.INFO)
# #
return logger return logger
def get_stream_logger() -> logging.Logger:
def get_stream_logger(level: int) -> logging.Logger:
out_handler = logging.StreamHandler(stream=sys.stdout) out_handler = logging.StreamHandler(stream=sys.stdout)
out_handler.setLevel(level) out_handler.setLevel(logging.INFO)
# #
logger = logging.getLogger() logger = logging.getLogger()
logger.addHandler(out_handler) logger.addHandler(out_handler)
logger.setLevel(level) logger.setLevel(logging.INFO)
# #
return logger return logger
stream = get_stream_logger()
stream = get_stream_logger(logging.INFO)

View file

@ -15,18 +15,12 @@ class SphinxProject(Project):
wipe(output_root) wipe(output_root)
arguments: list[str] = [ arguments: list[str] = [
"-E", "-E",
"-j", "-j", "2",
"2", "-b", "html",
"-b", "-D", f"project={self.name}",
"html", "-D", "master_doc={}".format("index"),
"-D", "-D", "html_theme={}".format("sphinx_rtd_theme"),
f"project={self.name}", "-c", self.root,
"-D",
"master_doc={}".format("index"),
"-D",
"html_theme={}".format("sphinx_rtd_theme"),
"-c",
self.root,
# "-C", # "-C",
path.join(self.root, self.name), path.join(self.root, self.name),
path.join(output_root, self.name), path.join(output_root, self.name),

View file

@ -14,9 +14,7 @@ def get_tuples_args(tuples) -> list[str]:
def run(*tuples) -> subprocess.CompletedProcess: def run(*tuples) -> subprocess.CompletedProcess:
return subprocess.run( return subprocess.run(get_tuples_args(tuples), capture_output=False)
get_tuples_args(tuples), capture_output=False, check=True
)
def run_line(*tuples, charset: str = txt.CHARSET) -> str: def run_line(*tuples, charset: str = txt.CHARSET) -> str:
@ -25,8 +23,6 @@ def run_line(*tuples, charset: str = txt.CHARSET) -> str:
def run_lines(*tuples, charset: str = txt.CHARSET) -> list[str]: def run_lines(*tuples, charset: str = txt.CHARSET) -> list[str]:
process = subprocess.run( process = subprocess.run(get_tuples_args(tuples), capture_output=True)
get_tuples_args(tuples), capture_output=True, check=True
)
string = process.stdout.decode(charset) string = process.stdout.decode(charset)
return string.rstrip().splitlines() return string.rstrip().splitlines()