From 9ad4e15c660d047688ed6428c9fd4241b8308009 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Date: Tue, 16 Sep 2014 01:46:41 +0200 Subject: [PATCH] core: inherit default_user from template --- core-modules/000QubesVm.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/core-modules/000QubesVm.py b/core-modules/000QubesVm.py index f5d7cbb4..9c9a0d74 100644 --- a/core-modules/000QubesVm.py +++ b/core-modules/000QubesVm.py @@ -153,7 +153,7 @@ class QubesVm(object): "default": {}, "func": lambda value: eval(str(value)) }, "debug": { "default": False }, - "default_user": { "default": "user" }, + "default_user": { "default": "user", "attr": "_default_user" }, "qrexec_timeout": { "default": 60 }, "autostart": { "default": False, "attr": "_autostart" }, "backup_content" : { 'default': False }, @@ -189,7 +189,7 @@ class QubesVm(object): 'uses_default_kernel', 'kernel', 'uses_default_kernelopts',\ 'kernelopts', 'services', 'installed_by_rpm',\ 'uses_default_netvm', 'include_in_backups', 'debug',\ - 'default_user', 'qrexec_timeout', 'autostart', + 'qrexec_timeout', 'autostart', 'backup_content', 'backup_size', 'backup_path' ]: attrs[prop]['save'] = lambda prop=prop: str(getattr(self, prop)) # Simple paths @@ -202,6 +202,8 @@ class QubesVm(object): attrs['mac']['save'] = lambda: str(self._mac) attrs['mac']['save_skip'] = lambda: self._mac is None + attrs['default_user']['save'] = lambda: str(self._default_user) + attrs['backup_timestamp']['save'] = \ lambda: self.backup_timestamp.strftime("%s") attrs['backup_timestamp']['save_skip'] = \ @@ -490,6 +492,17 @@ class QubesVm(object): def is_updateable(self): return self.updateable + @property + def default_user(self): + if self.template is not None: + return self.template.default_user + else: + return self._default_user + + @default_user.setter + def default_user(self, value): + self._default_user = value + def is_networked(self): if self.is_netvm(): return True