diff --git a/qubesmanager/settings.py b/qubesmanager/settings.py
index 8e3fee9..c8c5da7 100755
--- a/qubesmanager/settings.py
+++ b/qubesmanager/settings.py
@@ -306,6 +306,12 @@ class VMSettingsWindow(Ui_SettingsDialog, QDialog):
self.max_priv_storage.setMinimum(self.priv_img_size)
self.max_priv_storage.setValue(self.priv_img_size)
+ self.root_img_size = self.vm.get_root_img_sz()/1024/1024
+ self.root_resize.setValue(self.root_img_size)
+ self.root_resize.setMinimum(self.root_img_size)
+ self.root_resize.setEnabled(hasattr(self.vm, 'resize_root_img') and
+ not self.vm.template)
+ self.root_resize_label.setEnabled(self.root_resize.isEnabled())
def __apply_basic_tab__(self):
msg = []
@@ -398,6 +404,14 @@ class VMSettingsWindow(Ui_SettingsDialog, QDialog):
except Exception as ex:
msg.append(str(ex))
+ #max sys storage
+ sys_size = self.root_resize.value()
+ if self.root_img_size != sys_size:
+ try:
+ self.vm.resize_root_img(sys_size*1024*1024)
+ self.anything_changed = True
+ except Exception as ex:
+ msg.append(str(ex))
return msg
diff --git a/settingsdlg.ui b/settingsdlg.ui
index 6498df9..953aa19 100644
--- a/settingsdlg.ui
+++ b/settingsdlg.ui
@@ -6,7 +6,7 @@
0
0
- 694
+ 704
483
@@ -183,13 +183,22 @@
Disk storage
- -
-
-
- Private storage max. size:
+
-
+
+
+ true
-
- max_priv_storage
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ MB
+
+
+ 1048576
+
+
+ 1024
@@ -201,6 +210,9 @@
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+ MB
+
0
@@ -215,10 +227,23 @@
- -
-
+
-
+
- MB
+ Private storage max. size:
+
+
+ max_priv_storage
+
+
+
+ -
+
+
+ true
+
+
+ System storage max. size: