Commit Graph

781 Commits

Author SHA1 Message Date
Marek Marczykowski
71b98f9d95 dom0/qmemman: add support for config file 2012-03-28 00:47:26 +02:00
Marek Marczykowski
d969d2b863 dom0/utils: minor for for parse_size 2012-03-28 00:47:26 +02:00
Marek Marczykowski
191967fd41 dom0/core: ensure that vm.services['meminfo-writer'] is present 2012-03-28 00:47:26 +02:00
Marek Marczykowski
d0407c06af dom0/dispvm: new progress window for DispVM generation (#422) 2012-03-23 19:19:58 +01:00
Marek Marczykowski
049a74d5af dom0/qvm-start: support for custom Xen config 2012-03-15 20:59:49 +01:00
Marek Marczykowski
0c9781648a dom0/core: one more "nonupdatable template" cleanup 2012-03-15 20:25:44 +01:00
Marek Marczykowski
2eec6aaa7c dom0/qvm-block: add support for d0p1 style names, especially mmcblk* (#489) 2012-03-15 10:59:40 +01:00
Marek Marczykowski
1ebe503af8 dom0/qvm-backup: do not backup volatile.img
It is always cleaned before VM start anyway.
2012-03-12 13:26:49 +01:00
Marek Marczykowski
cc8975d9f2 dom0/core: verify files before starting VM 2012-03-11 00:33:39 +01:00
Marek Marczykowski
dd89fab841 dom0/core: disable automatic starting NetVM when trying attach to 2012-03-11 00:28:21 +01:00
Marek Marczykowski
24d521c1b3 dom0/qvm-backup: do not fail on VMs without private.img 2012-03-11 00:28:14 +01:00
Marek Marczykowski
578ef780c7 dom0/qvm-tools: introduce cmdline firewall editor: qvm-firewall 2012-03-10 03:16:15 +01:00
Marek Marczykowski
ac246d3d6a dom0/qvm-ls: improve performance
Do not evaluate each field twice - some of them (eg. disk usage) are expensive.
2012-03-09 17:23:41 +01:00
Marek Marczykowski
c7f3b1a685 dom0/qvm-ls: don't crash when multiple options given 2012-03-09 17:06:50 +01:00
Marek Marczykowski
cdd73f3d14 dom0/core: drop support for non-updateable templates
Implement 'updateable' property as 'template is None'
2012-03-09 11:28:06 +01:00
Marek Marczykowski
f143b6c1f2 dom0/core: minor error handling fix 2012-03-09 11:02:38 +01:00
Marek Marczykowski
d7aed8b233 dom0/core: API CHANGE: change 'template_vm' to 'template'
Just to match property displayed everywhere, also simplifying tools like
qvm-prefs.
2012-03-09 11:01:20 +01:00
Marek Marczykowski
ceed4507eb dom0/qvm-network: implement dynamic switching in property setter (#478)
Also add to it missing parts: firewall reload and netid attr set (+perms for it)
2012-03-09 01:52:28 +01:00
Marek Marczykowski
d91bbdb3dd dom0/qvm-block: add support for md devices (#476) 2012-03-09 00:04:36 +01:00
Marek Marczykowski
c174d0c184 dom0/qvm-block: ignore unsupported devices istead of throw exception (#476) 2012-03-09 00:00:20 +01:00
Marek Marczykowski
cae2672171 dom0/qvm-firewall: make firewall IP-based, not IF-based
Some VMs (especially HVM) can have more than one vif, so to not dupplicate
rules, make it IP based.
2012-03-08 14:40:00 +01:00
Marek Marczykowski
fc283e22c8 dom0/core: use QubesVm.pause/unpause instead of xl directly 2012-03-08 12:03:49 +01:00
Marek Marczykowski
63e19e1afa dom0/core: follow new __init__ api in subclasses 2012-03-08 11:56:26 +01:00
Marek Marczykowski
de9f952a2e dom0/core: more generic way to specify xen config template 2012-03-08 11:54:27 +01:00
Marek Marczykowski
8433931822 dom0/core: major rework of QubesVm.__init__ and serialization
No more manually set attributes, each in different way. Now there is one dict
with attrs, defaults, used also for object serialization to XML.
2012-03-08 11:27:56 +01:00
Marek Marczykowski
9360a18b0c dom0/QubesVm: add include_in_backups property 2012-03-07 19:16:25 +01:00
Marek Marczykowski
b3d0afc360 dom0/dispvm: clone QubesVmLabel object for DispVM 2012-03-07 18:50:56 +01:00
Marek Marczykowski
8b29a09986 dom0/dispvm: icons for DispVM
Beautiful icons thanks to Agnieszka Kostrzewa!
2012-03-07 17:04:25 +01:00
Marek Marczykowski
a63e130ffb dom0/qvm-remove: with --just-db do not remove any files 2012-03-06 14:46:36 +01:00
Marek Marczykowski
1b1c48666f dom0/qvm-core: network parameters for use in Xen config template 2012-03-06 02:20:12 +01:00
Marek Marczykowski
478b90e720 dom0/qvm-sync-clock: ignore VMs not supporting remote exec (#467)
Eg HVM
2012-03-05 17:59:23 +01:00
Marek Marczykowski
db043c84bc dom0/sysconfig: load and setup cpufreq-xen if present
Required for suspend on Core i5 with pvops kernel.
2012-03-05 12:44:08 +01:00
Marek Marczykowski
7db35b7ce6 dom0/core: change QubesVm.netvm_vm to QubesVm.netvm
To simplify setters and getters.
2012-03-04 21:59:02 +01:00
Marek Marczykowski
b7b5260bd7 dom0/core: preserve MAC setting on clone 2012-03-02 16:29:56 +01:00
Marek Marczykowski
7a3b9d0033 dom0/qvm-prefs: add missing exit(1) on invalid arguments 2012-03-02 16:17:18 +01:00
Marek Marczykowski
7c9075d09b dom0/qvm-network: allow to set persistent MAC for VM 2012-03-02 16:07:31 +01:00
Marek Marczykowski
5f87303b69 dom0/core: rework of VM clone mechanism 2012-03-02 16:06:26 +01:00
Marek Marczykowski
5191c64b06 dom0/core: more robust XML attrs generation
Still not ideal...
2012-03-02 16:00:55 +01:00
Marek Marczykowski
1c2311226e dom0/network: use static MAC for VMs 2012-03-02 13:51:20 +01:00
Marek Marczykowski
287e9f72fe dom0/core: provide vif name also for paused VMs 2012-03-02 02:28:45 +01:00
Marek Marczykowski
997fec6fd6 dom0/qvm-firewall: provide vif name by QubesVM 2012-03-02 01:22:40 +01:00
Marek Marczykowski
8b613a10b4 dom0/appmenus: do not add "Add more shortcuts" menu (#458)
This is now handled by qubes-manager
2012-03-01 00:00:44 +01:00
Marek Marczykowski
dd88e7d72a dom0: fix qvm-grow-private (#459) 2012-02-29 23:12:05 +01:00
Marek Marczykowski
ef6b1ded3e dom0/qvm-backup-restore: fix restore of dom0-home (#451) 2012-02-29 21:26:37 +01:00
Marek Marczykowski
a5ee72c55f dom0/qvm-backup-restore: show original template name 2012-02-29 03:34:57 +01:00
Marek Marczykowski
e10fa6babd dom0/qvm-backup-restore: fixes - custom templates, error handling 2012-02-29 03:33:43 +01:00
Marek Marczykowski
4d739c1909 dom0/qvm-backup-restore: fix restore of StandaloneVM/TemplateVM 2012-02-29 03:17:25 +01:00
Marek Marczykowski
d7caf5cedc dom0/qvm-backup: force correct default exclude_list
Treat "None" also as empty list.
2012-02-29 03:16:31 +01:00
Marek Marczykowski
c013de4747 dom0/qubes-firewall: make protocol selection smart 2012-02-27 15:46:23 +01:00
Marek Marczykowski
a0e9feef92 dom0/qubes-firewall: typo fix 2012-02-27 15:07:00 +01:00
Marek Marczykowski
0ca08d48b8 dom0/qubes-firewall: allow to specify protocol, do not assume always tcp 2012-02-27 02:02:42 +01:00
Marek Marczykowski
23adeb8ea4 dom0/qvm-prefs: icon already updated in qvm-core 2012-02-26 00:13:29 +01:00
Marek Marczykowski
f54f851b42 dom0/qvm-prefs: add missing exit(1) 2012-02-26 00:12:54 +01:00
Marek Marczykowski
40762c5497 dom0/qvm-core: update icon cache after label change 2012-02-26 00:07:06 +01:00
Marek Marczykowski
067fb100a1 dom0/modules: support for pvops modules in dom0 2012-02-25 14:04:06 +01:00
Marek Marczykowski
8c4e1e0b09 dom0/qvm-core: fix icon symlink after label change 2012-02-22 15:14:00 +01:00
Marek Marczykowski
277cdd9173 dom0/backup: Allow to exclude dom0 home from backup 2012-02-17 10:05:23 +01:00
Marek Marczykowski
0a0a88650d dom0/qubesutils: typo 2012-02-17 10:01:04 +01:00
Marek Marczykowski
0e00488c30 dom0/pm-utils: do not fail suspend 2012-02-16 16:24:41 +01:00
Marek Marczykowski
c39fc7f6f1 dom0/qvm-block: fix connecting devices to dom0 2012-02-16 10:25:16 +01:00
Marek Marczykowski
05e89d82fb dom0/qvm-block: automatically choose frontend device (#419) 2012-02-14 20:57:43 +01:00
Marek Marczykowski
1683a0b815 dom0/qvm-block: detect 'connecting' devices as 'connected'
This is needed to not allow connecting the same backend to more than one VMs at
the same time.
2012-02-14 20:55:51 +01:00
Marek Marczykowski
64e5dc14a1 dom0: intentation fix 2012-02-10 20:50:39 +01:00
Marek Marczykowski
abcdbad209 dom0/qubesutils: move online resize code to QubesVm.resize_private_img() (#421)
This assume that private.img contains ext2/3/4. For now it is true.
2012-02-10 20:47:21 +01:00
Marek Marczykowski
6b59f5c7c8 dom0/qubesutils: move parse_size() from qvm-grow-private to qubesutils (#421) 2012-02-10 20:46:35 +01:00
Marek Marczykowski
f7d84c9a27 dom0/qvm-tools: use vm.run(...) instead of run_in_vm(vm, ...) 2012-02-10 20:45:43 +01:00
Marek Marczykowski
7c7bea6a03 dom0/qubesutils: move run() method to QubesVm
It is needed inside of other methods of QubesVm...
2012-02-10 20:44:28 +01:00
Marek Marczykowski
5e5d84adf7 dom0: remove trailing spaces 2012-02-10 20:43:29 +01:00
Marek Marczykowski
1a33746ab4 dom0/qubesutils: move qvm-backup-restore code to qubesutils (#421) 2012-02-10 10:56:03 +01:00
Marek Marczykowski
19a0292897 dom0/qubesutils: move printing functions to the beggining 2012-02-10 10:54:18 +01:00
Marek Marczykowski
1a50eb53b2 dom0/pm-utils: kill qvm-sync-clock before suspend (#443)
To not desync time after resume.
2012-02-09 11:33:55 +01:00
Marek Marczykowski
b422bf8b2f dom0/pm-utils: fix scripts order according to pm-utils docs (#443) 2012-02-09 11:31:41 +01:00
Marek Marczykowski
7a352285cf dom0/pm-utils: indent 2012-02-09 11:08:29 +01:00
Marek Marczykowski
c766282d2d dom0: minor get_start_time fix 2012-02-07 23:17:53 +01:00
Marek Marczykowski
5dd17a7305 dom0/qubesutils: minor fixes 2012-02-07 16:51:10 +01:00
Marek Marczykowski
24173989b3 dom0/qvm-tools: move qvm-backup logic to qubesutils (#421) 2012-02-07 16:50:52 +01:00
Marek Marczykowski
9f50732ee6 dom0/qubes-prefs: do not dupplicate VM checks (#421) 2012-02-07 13:31:04 +01:00
Marek Marczykowski
f2204801c3 dom0/qvm-tools: rename dom0 tools to qubes-* (#421) 2012-02-07 13:01:02 +01:00
Marek Marczykowski
5bcffc6b1c dom0/qvm-tools: remove obsolete qvm-set/qvm-get tools (#421) 2012-02-07 03:18:47 +01:00
Marek Marczykowski
109cdf7935 dom0: use qubes-prefs in scripts (#421)
Instead of qvm-set-* and qvm-get-*
2012-02-07 03:07:43 +01:00
Marek Marczykowski
1a35b98e16 dom0/qvm-tools: new qubes-prefs tool for system-wide preferences (#421) 2012-02-07 02:58:19 +01:00
Marek Marczykowski
4136b714c7 dom0/clock: call hwclock after time sync 2012-02-01 19:41:28 +01:00
Marek Marczykowski
2483409f53 dom0/pm-utils: sync clock based on dom0, and then try to sync from network (#435) 2012-02-01 18:23:17 +01:00
Marek Marczykowski
3a71716db3 dom0/ClockVM: disable ntpd in ClockVM (#435)
To not conflict with ntpdate (both are using 123/udp port).
2012-02-01 17:51:41 +01:00
Marek Marczykowski
59e7041554 dom0/pm-utils,dom0-update: sync clock using new qvm-sync-clock tool (#435) 2012-02-01 17:39:21 +01:00
Joanna Rutkowska
bb70eb270f dom0: pm-utils: 01qubes-sync-vms-clock: exclude clockvm when syncing clocks on resume 2012-02-01 17:39:21 +01:00
Joanna Rutkowska
ddd71a6490 dom0: pm-utils: 01qubes-sync-vms-clock: run qvm-sync-dom0-clock before syncing clocks on other VMs (#433)
... instead of just $(date), which caused problems when Dom0 clock got
desynced somehow.
2012-02-01 17:39:21 +01:00
Marek Marczykowski
b87fff44c4 dom0/clock: sync clock using new qubes-sync-clock from cron (#435, #429) 2012-02-01 17:39:20 +01:00
Marek Marczykowski
a5a403501a dom0/qvm-tools: New tool to sync clock
In ClockVM via ntpdate and then in dom0 and VMs based on ClockVM.
2012-02-01 17:39:13 +01:00
Marek Marczykowski
2aedf4567b dom0/qubesutils: additional types of run comand in vm (wait and popen) 2012-02-01 17:09:48 +01:00
Marek Marczykowski
ead9e445bc dom0/qvm-tools: change qvm-run --pass_io to --pass-io 2012-02-01 16:04:52 +01:00
Joanna Rutkowska
8e5eb3ece2 dom0: qmemman: set MIN_PREFMEM to 200MB
Apparently 100MB is not enough for fc15 template and it causes some VMs to be killed internally by OOM during their initialization.
2012-01-26 01:16:56 +01:00
Marek Marczykowski
2897a795c4 dom0/vm: set VM timezone same as in dom0 - on VM boot (#413) 2012-01-18 16:59:58 +01:00
Marek Marczykowski
5f45e8f75f dom0: Mark qvm-run --shutdown as deprecated 2012-01-16 03:28:26 +01:00
Marek Marczykowski
cd64f8287c dom0/init: Do not exclude NetVM at shutdown (#396)
In fact all VMs can be stopped at the same time, no need to keep order.
Also use qvm-shutdown to do it.
2012-01-16 03:26:39 +01:00
Marek Marczykowski
cfd22f8887 dom0/qvm-shutdown: add support of shutting down multiple VMs (#396)
Just copy code from qvm-run.
2012-01-16 03:25:52 +01:00
Marek Marczykowski
bdfacf9d01 dom0: enable qubes-dvm service when preparing DispVM 2012-01-14 01:34:35 +01:00
Marek Marczykowski
17492f0fbf dom0/pm-utils: start NM through systemctl after resume - when available (#404)
When using SystemD, NetworkManager is started directly, so use this way.
/etc/init.d/qubes_core_netvm doesn't exists in such system... Even when existed
- it was already started and SystemD doesn't allow to start it again (unlike
upstart/sysvinit).
2012-01-13 19:12:00 +01:00
Marek Marczykowski
bfbd129a11 dom0: add missing import 2012-01-12 01:27:27 +01:00
Marek Marczykowski
e36761faed dom0/DispVM: minor simplification 2012-01-11 23:13:03 +01:00
Marek Marczykowski
adc0b6eff5 vm(+dom0): major rearrage VM files in repo; merge core-*vm packages 2012-01-06 21:31:12 +01:00
Marek Marczykowski
0c5bfa7a0e dom0: guid is now started by qubes core, remove duplicated code from qvm-start 2011-12-27 17:44:23 +01:00
Marek Marczykowski
b77e48f688 dom0: do not start gui daemon when preparing DispVM 2011-12-27 15:37:23 +01:00
Marek Marczykowski
4d128dd020 dom0: fix removing "special" VM (eg ClockVM)
Unset collection pointer to some special VMs, when it is removed: ClockVM,
default NetVM, default TemplateVM, UpdateVM
2011-12-23 17:10:32 +01:00
Joanna Rutkowska
edc6d595fb Delete now unused dom0/qubes.repo file
Now, the qubes-release.rpm provides this file.
2011-12-20 14:59:14 +01:00
Marek Marczykowski
d84d64716b dom0: start guid only when shm.id present
Eg. not during firstboot
2011-12-11 14:09:46 +01:00
Marek Marczykowski
f03152053b dom0: check if X server is available before starting guid (#377) 2011-12-05 13:42:07 +01:00
Marek Marczykowski
99ffed089c dom0: start guid as soon as possible (#377) 2011-12-05 13:36:13 +01:00
Marek Marczykowski
fd2b373b7d dom0/qvm-block: add missing import 2011-11-08 01:28:43 +01:00
Marek Marczykowski
b215863951 dom0: do not build xenfreepages 2011-11-02 20:03:09 +01:00
Marek Marczykowski
4a6447f11b dom0/qvm-run: fix tray notify 2011-11-02 00:46:57 +01:00
Marek Marczykowski
c0c64ecdc5 dom0: add VM rename support (#371) 2011-11-02 00:39:23 +01:00
Marek Marczykowski
134af81b3b dom0: move remove_appmenus to separate subroutine 2011-11-01 23:42:13 +01:00
Marek Marczykowski
12b8ff7d17 dom0: store relative paths in qubes.xml when possible 2011-11-01 23:33:20 +01:00
Marek Marczykowski
47ad186926 dom0: set firewall to block-all when setting netvm to none (#370) 2011-11-01 15:50:03 +01:00
Marek Marczykowski
870dea1502 dom0/qvm-run: move run code to qubesutils 2011-10-31 13:31:54 +01:00
Marek Marczykowski
a4e11dedd9 dom0/DispVM: inherit firewall from calling VM (#370) 2011-10-31 01:29:46 +01:00
Marek Marczykowski
d3c1a09ca9 dom0/appmenus: reload KDE menu after update (#283) 2011-10-30 11:05:50 +01:00
Marek Marczykowski
eadd4a7128 dom0/qvm-dom0-update: fix installing new packages
Pass all args to UpdateVM command
2011-10-17 23:27:29 +02:00
Marek Marczykowski
99c0356bf2 dom0: set first NetVM as ClockVM 2011-10-17 23:20:21 +02:00
Marek Marczykowski
db3ab9333a dom0/qvm-shutdown: increase timeout to 60s (#373) 2011-10-17 23:14:26 +02:00
Marek Marczykowski
c43a62e0bb dom0/qvm-shutdown: implement --wait in qvm-shutdown 2011-10-17 23:14:19 +02:00
Marek Marczykowski
6219c1b7ed dom0/qvm-shutdown: catch QubesException 2011-10-17 23:13:21 +02:00
Marek Marczykowski
3063ef35b7 dom0: move NetVM shutdown sanity check code to qvm-core 2011-10-17 22:45:04 +02:00
Marek Marczykowski
097c5331d6 dom0: remove obsolete xenfreepages 2011-10-14 12:29:03 +02:00
Marek Marczykowski
9b3b72cc74 dom0: introduce qvm-shutdown 2011-10-14 12:01:09 +02:00
Marek Marczykowski
abcd6416fc dom0: move shutdown to qvm-core 2011-10-14 11:59:33 +02:00
Marek Marczykowski
ede96353af dom0/qrexec: Add always allow option in qrexec confirmation dialog (#278) 2011-10-12 00:08:28 +02:00
Marek Marczykowski
810a59b6ce dom0/qvm-backup-restore: Allow to exclude some VMs while restoring backup (#296) 2011-10-11 01:52:11 +02:00
Marek Marczykowski
65bc4f6e95 dom0/qvm-backup/restore: backup and restore also dom0 home dir (#362)
To keep desktop environment settings (like theme, wallpaper, screensaver etc).
2011-10-11 01:48:47 +02:00
Marek Marczykowski
20522d04ec dom0: typo fix in comment 2011-10-11 01:41:53 +02:00
Marek Marczykowski
bc47334d21 dom0: fix cleanup_vif 2011-10-10 17:11:00 +02:00
Marek Marczykowski
7cf4abb04e dom0/dom0-updates: typo fix 2011-10-10 15:34:24 +02:00
Marek Marczykowski
e1ccda362c dom0/qvm-core: release lock in VM.start() right before starting qrexec (#344) 2011-10-10 11:23:14 +02:00
Marek Marczykowski
57aec48050 dom0/qmemman: alloc at least 100MB for domain
If domain has less than 100MB it will cause OOM very soon - this isn't enough
for non-swappable data...
2011-10-10 11:23:13 +02:00
Marek Marczykowski
ed23b0d6a2 dom0/qvm-tools: output diagnostics to stderr instead of stdout (#276) 2011-10-10 11:23:04 +02:00
Marek Marczykowski
05605f1394 dom0/qvm-core: ignore template_vm=None when loading qubes.xml
This should result in more elegant error message in case of error in qubes.xml.
2011-10-07 21:46:27 +02:00
Marek Marczykowski
98827c7020 dom0/qvm-core: output messages to stderr (#276) 2011-10-07 21:40:29 +02:00
Marek Marczykowski
3876cf4070 dom0/dom0-updates: check for dom0 updates from cron (#354) 2011-10-07 21:28:16 +02:00
Marek Marczykowski
b3a125076b dom0/dom0-updates: add --gui and --check-only options (#354)
Will be needed for automatically checking for updates
2011-10-07 21:25:38 +02:00
Marek Marczykowski
684578ba16 dom0/pm-utils: after suspend start qubes_core_netvm instead of NetworkManager directly
Actually this is run for every VM with PCI device, so it can be AppVM, not
NetVM. qubes_core_netvm will check if it is NetVM before starting
NetworkManager.
2011-10-07 21:11:08 +02:00
Marek Marczykowski
218dd2c50c dom0/pm-utils: remove both uhci and ehci NetVM modules before sleep 2011-10-07 21:07:25 +02:00
Marek Marczykowski
d576b9855c dom0/qvm-create: do not add PCI devs to new NetVM (#282)
This makes sense only in firstboot - so move it there.
2011-10-03 23:01:55 +02:00
Marek Marczykowski
053944470c dom0: improve vif cleanup
Just remove dead devices from xenstore, there is no point in waiting for its
shutdown (which 'xl' does) as backend domain is dead.
2011-10-03 22:54:45 +02:00
Marek Marczykowski
600877b830 dom0: use default values for values not present in qubes.xml
Do not set them to None. This should improve compatibility with older versions of qubes.xml
2011-10-01 10:33:25 +02:00
Marek Marczykowski
56f3d7ba75 dom0+vm/qvm-block: convert device size to bytes 2011-10-01 10:33:18 +02:00
Marek Marczykowski
f0038d2ec7 dom0: typo fix in default_fw_netvm saving 2011-10-01 02:55:22 +02:00
Marek Marczykowski
3c7f8b97cd dom0: return datatime value in get_start_time (#315) 2011-10-01 02:54:18 +02:00
Marek Marczykowski
7ae0c52e6d dom0: introduce ClockVM - timesource for dom0 (#361) 2011-10-01 02:54:00 +02:00
Marek Marczykowski
287da572e9 dom0+vm: introduce 'qubes-service' xenstore dir - enable/disable VM services from dom0
This allows control which services are started in VM by dom0. For some
situation vm_type was used, but it isn't enough - i.e. ntpd should be started
in one, selected NetVM.
2011-10-01 02:49:25 +02:00