Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archinstall/__init__.py25
-rw-r--r--examples/guided.py7
2 files changed, 14 insertions, 18 deletions
diff --git a/archinstall/__init__.py b/archinstall/__init__.py
index 00de0334..b914c7ec 100644
--- a/archinstall/__init__.py
+++ b/archinstall/__init__.py
@@ -32,16 +32,7 @@ def initialize_arguments():
parser.add_argument("--silent", action="store_true",
help="Warning!!! No prompts, ignored if config is not passed")
parser.add_argument("--script", default="guided", nargs="?", help="Script to run for installation", type=str)
- parser.add_argument("--vars",
- metavar="KEY=VALUE",
- nargs='?',
- help="Set a number of key-value pairs "
- "(do not put spaces before or after the = sign). "
- "If a value contains spaces, you should define "
- "it with double quotes: "
- 'foo="this is a sentence". Note that '
- "values are always treated as strings.")
- args = parser.parse_args()
+ args, unknowns = parser.parse_known_args()
if args.config is not None:
try:
# First, let's check if this is a URL scheme instead of a filename
@@ -57,13 +48,13 @@ def initialize_arguments():
print(e)
# Installation can't be silent if config is not passed
config["silent"] = args.silent
- if args.vars is not None:
- try:
- for var in args.vars.split(' '):
- key, val = var.split("=")
- config[key] = val
- except Exception as e:
- print(e)
+ for arg in unknowns:
+ if '--' == arg[:2]:
+ if '=' in arg:
+ key, val = [x.strip() for x in arg[2:].split('=', 1)]
+ else:
+ key, val = arg[2:], True
+ config[key] = val
config["script"] = args.script
return config
diff --git a/examples/guided.py b/examples/guided.py
index cbf30eb3..c3e5848b 100644
--- a/examples/guided.py
+++ b/examples/guided.py
@@ -445,5 +445,10 @@ else:
archinstall.arguments['profile'] = archinstall.Profile(None, archinstall.arguments.get('profile', None))
else:
archinstall.arguments['profile'] = None
-
+ if archinstall.arguments.get('mirror-region', None) is not None:
+ selected_region = archinstall.arguments.get('mirror-region', None)
+ archinstall.arguments['mirror-region'] = {selected_region: archinstall.list_mirrors()[selected_region]}
+ archinstall.arguments['sys-language'] = archinstall.arguments.get('sys-language', 'en_US')
+ archinstall.arguments['sys-encoding'] = archinstall.arguments.get('sys-encoding', 'utf-8')
+
perform_installation_steps()