From 0552d040ac8fb4517d77f3fa86ec3039ab71fb4b Mon Sep 17 00:00:00 2001 From: Anton Hvornum Date: Sun, 6 Jun 2021 17:13:42 +0200 Subject: Added a json.dumps() helper that wraps JSON cls. Also tweaked the logic for the size creation so that they don't overlap --- archinstall/lib/general.py | 3 ++- archinstall/lib/user_interaction.py | 6 +++--- examples/guided.py | 2 ++ 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/archinstall/lib/general.py b/archinstall/lib/general.py index f72311c9..6bb3b101 100644 --- a/archinstall/lib/general.py +++ b/archinstall/lib/general.py @@ -44,6 +44,8 @@ def locate_binary(name): raise RequirementError(f"Binary {name} does not exist.") +def json_dumps(*args, **kwargs): + return json.dumps(*args, **{**kwargs, 'cls': JSON}) class JsonEncoder: def _encode(obj): @@ -86,7 +88,6 @@ class JSON(json.JSONEncoder, json.JSONDecoder): def encode(self, obj): return super(JSON, self).encode(self._encode(obj)) - class SysCommandWorker: def __init__(self, cmd, callbacks=None, peak_output=False, environment_vars=None, logfile=None, working_directory='./'): if not callbacks: diff --git a/archinstall/lib/user_interaction.py b/archinstall/lib/user_interaction.py index e28b66b2..30fb7e51 100644 --- a/archinstall/lib/user_interaction.py +++ b/archinstall/lib/user_interaction.py @@ -633,8 +633,8 @@ def get_default_partition_layout(block_devices): "type" : "primary", "start" : "513MiB", "encrypted" : True, - "size" : f"{max(block_devices[0].size*0.2, 20)}GiB", - "mountpoint" : "", + "size" : f"{max(block_devices[0].size*0.2, 20)*1024}MiB", # Warning: Won't work on small where max size is 16GB for instance. + "mountpoint" : "/", "filesystem" : { "format" : "btrfs" } @@ -642,7 +642,7 @@ def get_default_partition_layout(block_devices): { # Home "type" : "primary", "encrypted" : True, - "start" : f"{max(block_devices[0].size*0.2, 20)}GiB", + "start" : f"{513 + (max(block_devices[0].size*0.2, 20)*1024)}MiB", "size" : "100%", "mountpoint" : "/home", "filesystem" : { diff --git a/examples/guided.py b/examples/guided.py index 0bcc1fcc..1dfe79fb 100644 --- a/examples/guided.py +++ b/examples/guided.py @@ -82,6 +82,8 @@ def ask_user_questions(): if archinstall.arguments.get('harddrives', None): archinstall.storage['disk_layouts'] = archinstall.select_disk_layout(archinstall.arguments['harddrives']) + print(archinstall.arguments['harddrives']) + print(archinstall.storage['disk_layouts']) exit(0) # Get disk encryption password (or skip if blank) -- cgit v1.2.3-54-g00ecf