Skip to content

Commit 6bf7898

Browse files
committed
Fix 3598 - Utilize script field from config when present
1 parent c800a03 commit 6bf7898

2 files changed

Lines changed: 16 additions & 9 deletions

File tree

archinstall/__init__.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,7 @@ def main() -> int:
8181

8282
_log_sys_info()
8383

84-
if not arch_config_handler.args.offline:
85-
_fetch_arch_db()
86-
87-
if not arch_config_handler.args.skip_version_check:
88-
_check_new_version()
89-
90-
script = arch_config_handler.args.script
84+
script = arch_config_handler.get_script()
9185

9286
mod_name = f'archinstall.scripts.{script}'
9387
# by loading the module we'll automatically run the script

archinstall/lib/args.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class Arguments:
3838
creds_decryption_key: str | None = None
3939
silent: bool = False
4040
dry_run: bool = False
41-
script: str = 'guided'
41+
script: str | None = None
4242
mountpoint: Path = Path('/mnt')
4343
skip_ntp: bool = False
4444
skip_wkd: bool = False
@@ -54,6 +54,7 @@ class Arguments:
5454
@dataclass
5555
class ArchConfig:
5656
version: str | None = None
57+
script: str | None = None
5758
locale_config: LocaleConfiguration | None = None
5859
archinstall_language: Language = field(default_factory=lambda: translation_handler.get_language_by_abbr('en'))
5960
disk_config: DiskLayoutConfiguration | None = None
@@ -93,6 +94,7 @@ def unsafe_json(self) -> dict[str, Any]:
9394
def safe_json(self) -> dict[str, Any]:
9495
config: Any = {
9596
'version': self.version,
97+
'script': self.script,
9698
'archinstall-language': self.archinstall_language.json(),
9799
'hostname': self.hostname,
98100
'kernels': self.kernels,
@@ -130,6 +132,9 @@ def from_config(cls, args_config: dict[str, Any]) -> 'ArchConfig':
130132

131133
arch_config.locale_config = LocaleConfiguration.parse_arg(args_config)
132134

135+
if script := args_config.get('script', None):
136+
arch_config.script = script
137+
133138
if archinstall_lang := args_config.get('archinstall-language', None):
134139
arch_config.archinstall_language = translation_handler.get_language_by_name(archinstall_lang)
135140

@@ -240,6 +245,15 @@ def config(self) -> ArchConfig:
240245
def args(self) -> Arguments:
241246
return self._args
242247

248+
def get_script(self) -> str:
249+
if script := self.args.script:
250+
return script
251+
252+
if script := self.config.script:
253+
return script
254+
255+
return 'guided'
256+
243257
def print_help(self) -> None:
244258
self._parser.print_help()
245259

@@ -308,7 +322,6 @@ def _define_arguments(self) -> ArgumentParser:
308322
)
309323
parser.add_argument(
310324
'--script',
311-
default='guided',
312325
nargs='?',
313326
help='Script to run for installation',
314327
type=str,

0 commit comments

Comments
 (0)