refactor: set default aur helper to constant

This commit is contained in:
2 * r + 2 * t
2026-06-14 21:22:58 +10:00
parent 36a6029a2c
commit 44df61b22d
3 changed files with 11 additions and 8 deletions
+2 -2
View File
@@ -7,7 +7,7 @@ from pathlib import Path
from caelestia.utils.dots.deployer import Deployer from caelestia.utils.dots.deployer import Deployer
from caelestia.utils.dots.manifest import Manifest, ManifestError, expand, expand_dests from caelestia.utils.dots.manifest import Manifest, ManifestError, expand, expand_dests
from caelestia.utils.dots.packages import PackageInstaller from caelestia.utils.dots.packages import DEFAULT_AUR_HELPER, PackageInstaller
from caelestia.utils.dots.source import DotsSource, SourceError from caelestia.utils.dots.source import DotsSource, SourceError
from caelestia.utils.dots.state import DotsState from caelestia.utils.dots.state import DotsState
from caelestia.utils.io import confirm, disable_input, fatal, info, log, pause, warn from caelestia.utils.io import confirm, disable_input, fatal, info, log, pause, warn
@@ -155,7 +155,7 @@ class Command:
log(f"Building {path}...") log(f"Building {path}...")
local_packages[path] = installer.build_install(directory) local_packages[path] = installer.build_install(directory)
return getattr(installer, "helper", ""), packages, local_packages return getattr(installer, "helper", DEFAULT_AUR_HELPER), packages, local_packages
def run_hooks(self, manifest: Manifest) -> None: def run_hooks(self, manifest: Manifest) -> None:
hooks = manifest.enabled_hooks("post_install") hooks = manifest.enabled_hooks("post_install")
+7 -5
View File
@@ -1,11 +1,13 @@
import shutil import shutil
import subprocess import subprocess
import tempfile
from abc import ABC, abstractmethod from abc import ABC, abstractmethod
from pathlib import Path from pathlib import Path
from caelestia.utils.io import fatal, info from caelestia.utils.io import fatal, info
AUR_HELPERS = "paru", "yay" DEFAULT_AUR_HELPER = "paru"
AUR_HELPERS = DEFAULT_AUR_HELPER, "yay"
def _install_aur_helper(helper: str, noconfirm: bool = False) -> None: def _install_aur_helper(helper: str, noconfirm: bool = False) -> None:
@@ -31,7 +33,7 @@ def _install_aur_helper(helper: str, noconfirm: bool = False) -> None:
if helper == "yay": if helper == "yay":
subprocess.run(["yay", "-Y", "--gendb"], check=True) subprocess.run(["yay", "-Y", "--gendb"], check=True)
subprocess.run(["yay", "-Y", "--devel", "--save"], check=True) subprocess.run(["yay", "-Y", "--devel", "--save"], check=True)
else: elif helper == "paru":
subprocess.run(["paru", "--gendb"], check=True) subprocess.run(["paru", "--gendb"], check=True)
@@ -59,9 +61,9 @@ class PackageInstaller(ABC):
if shutil.which(candidate): if shutil.which(candidate):
return ArchInstaller(candidate, noconfirm) return ArchInstaller(candidate, noconfirm)
info("No AUR helper found. Installing paru...") info(f"No AUR helper found. Installing {DEFAULT_AUR_HELPER}...")
_install_aur_helper("paru", noconfirm) _install_aur_helper(DEFAULT_AUR_HELPER, noconfirm)
return ArchInstaller("paru", noconfirm) return ArchInstaller(DEFAULT_AUR_HELPER, noconfirm)
# --- Abstract methods --- # --- Abstract methods ---
+2 -1
View File
@@ -1,6 +1,7 @@
import json import json
from dataclasses import dataclass, field from dataclasses import dataclass, field
from caelestia.utils.dots.packages import DEFAULT_AUR_HELPER
from caelestia.utils.io import warn from caelestia.utils.io import warn
from caelestia.utils.paths import atomic_dump, dots_state_path from caelestia.utils.paths import atomic_dump, dots_state_path
@@ -31,7 +32,7 @@ class DotsState:
return DotsState() return DotsState()
return DotsState( return DotsState(
aur_helper=data.get("aur_helper"), aur_helper=data.get("aur_helper", DEFAULT_AUR_HELPER),
applied_rev=data.get("applied_rev"), applied_rev=data.get("applied_rev"),
enabled_components=data.get("enabled_components", []), enabled_components=data.get("enabled_components", []),
packages=data.get("packages", []), packages=data.get("packages", []),