Commit Graph

1190 Commits

Author SHA1 Message Date
Marek Marczykowski
52e16037f2 dom0/core: new QubesVmCollection.add_new_vm function
Generic function to add new VM of any type. Old add_*vm marked as depreciated.
2013-01-17 01:29:32 +01:00
Marek Marczykowski
84e85c6a9a dom0/core: major rework of QubesVmCollection class
No longer individual QubesVm attributes hardcoded in QubesVmCollection
(qubes.xml load). Now it is integrated to QubesVm attributes machinery. Also
QubesVmCollection have no longer hardcoded supported VM types - this will
greatly improve code extension possibilities.

This commit doesn't cover QubesVmCollection.add_*vm methods (which are broken
for now because of missing "collection" argument to QubesVm constructor). This
will be done in next commit.
2013-01-17 01:18:42 +01:00
Marek Marczykowski
bc39e05a6a dom0/core: enforce QubesHVm defaults in more elegant way 2013-01-17 01:16:51 +01:00
Marek Marczykowski
a2d387bebc dom0/core: pass all args of QubesDom0NetVm constructor to base class 2013-01-17 01:01:18 +01:00
Marek Marczykowski
623e4ab8cc dom0/core: remove unused function 2013-01-17 00:21:19 +01:00
Marek Marczykowski
73a540e5e5 dom0/core: save real netvm of DispVM
Netvm of DispVM is based on DispVM-template settings. So save the real one
instead of assuming default netvm.
2013-01-17 00:21:03 +01:00
Marek Marczykowski
367db74378 dom0/core: fix HVM settings on upgrade 2013-01-11 16:21:25 +01:00
Marek Marczykowski
2f5155437c dom0/core: disable meminfo-writer for HVM by default 2013-01-11 01:12:30 +01:00
Olivier Medoc
3d096f69af dom0/qvm-core: allow the user to select initial-memory != max-memory if meminfo-write service is enabled 2013-01-11 01:12:30 +01:00
Olivier Medoc
1f513edd2f dom0/qvm-core: implemented guiagent_installed preference for HVm 2013-01-11 01:12:29 +01:00
Olivier Medoc
9ebfd63bef dom0/qvm-core: normalized wait session code to be technology independent through the WaitForSession rpc call 2013-01-11 01:12:29 +01:00
Olivier Medoc
4fa76a5f79 core/tools: use gui notification for qvm-start
dom0/qvm-core: propagated notify_function to qrexec
2013-01-11 01:12:29 +01:00
Marek Marczykowski
55ae7df551 dom0: do not include VM name in iptables rules (#698) 2013-01-05 03:45:17 +01:00
Marek Marczykowski
0fefb7ce66 core/hvm: do not start stubdom-dhcp when VM not connected to netvm (#697) 2012-12-22 15:12:55 +01:00
Marek Marczykowski
1d49bf9dc5 dom0/qvm-tools: check property name in qubes-prefs 2012-12-19 04:37:09 +01:00
Marek Marczykowski
507e9652d6 dom0/dispvm: Use at most 4000M RAM for DispVM
Larger maxmem makes DispVM unbootable (some kernel/xen problem).
2012-12-16 03:56:42 +01:00
Marek Marczykowski
84be00eb14 dom0/qvm-ls: display HVM VM type 2012-12-11 01:23:28 +01:00
Marek Marczykowski
96503fde2f dom0/qvm-block: fix and clarify error message 2012-12-05 16:52:10 +01:00
Alexandre Bezroutchko
e58b432d09 dom0/pvusb: fix a typo in usb_find_unused_frontend() 2012-11-17 03:25:22 +01:00
Alexandre Bezroutchko
1beba9fdd5 Merge branch 'master' of git://git.qubes-os.org/marmarek/core into pvusb2 2012-11-17 01:43:34 +01:00
Marek Marczykowski
e8e14f3fad dom0/core: API CHANGE: pass username as keyword param to vm.run() (#577)
Get rid of ugly embedding username into commandline. This will make much easier
avoid hardcoding username in dom0 code.
Currently dom0 is free of hardcoded "user" username ("root" still is used).
2012-11-13 04:42:25 +01:00
Marek Marczykowski
69b803f286 dom0/appmenus-receive: use common API for running commands in VM
Do not use qrexec_client directly.
2012-11-13 04:03:30 +01:00
Marek Marczykowski
f47f8e7c8f dom0/dispvm: enable use of default_user setting for DispVM (#577) 2012-11-13 04:02:49 +01:00
Marek Marczykowski
d3f1860bd0 dom0: use default user in "DispVM: Web browser" launcher (#577) 2012-11-13 04:00:51 +01:00
Marek Marczykowski
504b37e378 dom0/spec: remove obsoleted patch_appvm_initramfs.sh
For a long time dracut module is used instead.
2012-11-13 03:45:12 +01:00
Alexandre Bezroutchko
3898b69ac1 Merge branch 'master' of git://git.qubes-os.org/marmarek/core 2012-11-08 10:49:39 +01:00
Marek Marczykowski
272b6b7e1d dom0/usb: "port" xenstore entry isn't encoded, so don't try to decode it 2012-11-08 03:57:04 +01:00
Marek Marczykowski
14686a0243 dom0/usb: imporove qvm-usb warning message 2012-11-08 03:52:41 +01:00
Alexandre Bezroutchko
42ae001b74 dom0/usb: cosmetic changes to warning messages displayed by qvm-usb tool 2012-11-08 02:59:55 +01:00
Alexandre Bezroutchko
f2b633756e dom0+vm/usb: fixed a bug introduced in eb193fc870 2012-11-08 02:42:09 +01:00
Alexandre Bezroutchko
3f555e75a8 Merge branch 'pvusb2' of github.com:grwl/qubes-core into pvusb2 2012-11-08 01:32:04 +01:00
Alexandre Bezroutchko
5ad7e9622c Merge branch 'master' of git://git.qubes-os.org/marmarek/core into pvusb2 2012-11-08 01:31:07 +01:00
Marek Marczykowski
6219ecd01c dom0/core: increase default SWIOTLB size
Needed by some network devices like Realtek RTL8111DL.
2012-11-07 23:57:05 +01:00
Marek Marczykowski
62732d78b2 dom0/usb: added Big Fat Warning to qvm-usb tool (#664) 2012-11-07 22:02:28 +01:00
Alexandre Bezroutchko
eb193fc870 dom0+vm/usb: sanitize data (USB device names) read from xenstore before use 2012-11-07 01:33:19 +01:00
Alexandre Bezroutchko
350ff3aaa1 dom0+vm/usb: encode/decode dots in USB device names when writing/reading xenstore 2012-11-07 01:14:12 +01:00
Alexandre Bezroutchko
14a1f9f67f dom0+vm/usb: cosmetic - added comments to usb_find_unused_frontend() 2012-11-07 00:41:13 +01:00
Alexandre Bezroutchko
900e5327d2 dom0+vm/usb: improve error reporting in usb_find_unused_frontend() 2012-11-07 00:37:50 +01:00
Alexandre Bezroutchko
aeac4d20dc dom0+vm/usb: bugfix in usb_find_unused_frontend() 2012-11-07 00:24:05 +01:00
Alexandre Bezroutchko
bee83bea0d dom0/qvm-create: fixed couple typos 2012-10-28 03:49:53 +01:00
Alexandre Bezroutchko
073ce8a683 dom0+vm/usb: completed support for usb versions, fixed a bug 2012-10-26 23:30:55 +02:00
Alexandre Bezroutchko
14fff45ddd dom0+vm/usb: add USB version to device list displayed by qvm-usb -l' 2012-10-26 23:09:36 +02:00
Alexandre Bezroutchko
d37efe031e dom0+vm/usb: added USB vesrion support to usb_setup() and usb_find_unused_frontend() 2012-10-24 22:30:42 +02:00
Marek Marczykowski
7fec0fd6f3 dom0/updates: include pkg groups metadata from Fedora 13
This will allow calls like "qubes-dom0-update @XFCE"
2012-10-23 05:47:09 +02:00
Marek Marczykowski
4b44a149c1 dom+vm/qvm-usb: improve handling devices like "2-1.4"
xenstore doesn't allow '.' in key name, so translate it to '_'
2012-10-23 05:42:39 +02:00
Alexandre Bezroutchko
9fe165ebb4 dom0/qvm-usb: Automatically create XS directory for USB devices 2012-10-21 14:59:40 +02:00
Alexandre Bezroutchko
743d93d8f0 dom0/qvm-usb: bugfix 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
9d77b3dd3c dom0/qvm-usb: detach operation appears to work 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
89b78d9426 dom0/qvm-usb: changed output format for qvm-usb -l 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
b72db5cad8 dvp/qvm-usb: not going to implement explicit specification of USB frontend device/port 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
4bb1182228 dom0/qvm-usb: implemented automatic frontend/backend initialization on attach 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
a85d34a8b3 dom0/qvm-usb: partly implement usb_find_unused_frontend() 2012-10-21 14:59:39 +02:00
Alexandre Bezroutchko
d613d6a04d dom0/qvm-usb: attach works again for dom0 backend 2012-10-21 14:59:38 +02:00
Alexandre Bezroutchko
db4d49b19c dom0+vm/qvm-usb: intermediate 2012-10-21 14:59:38 +02:00
Alexandre Bezroutchko
72fba0ac1b dom0/qvm-usb: added usb_setup() 2012-10-21 14:59:37 +02:00
Alexandre Bezroutchko
17263c96b8 dom0/qvm-usb: fixed missing input validation 2012-10-21 14:59:37 +02:00
Alexandre Bezroutchko
b9b2077062 dom0/qvm-usb: display proper name of vm a device is attached to 2012-10-21 14:59:37 +02:00
Alexandre Bezroutchko
c8cb9d00ce dom0/qvm-usb: use xs transaction 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
0ef88be16d dom0/qvm-usb: added description to usb_list() and usb_check_attached() methods 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
caf27cb936 dom0+vm/qvm-usb: use transaction in usb_check_attached() 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
81ca750403 dom0+vm/qvm-usb: cosmetic: removed debugging code, adjusted fixmes 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
b962debfad dom0/qvm-usb: implemented usb_check_attached method, now "qvm-usb -l" indicate attachments 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
988d37fcb2 dom0/qvm-usb: qvm-usb is hopefully complete, stubs for all remaining usb_* methods implemented 2012-10-21 14:59:36 +02:00
Alexandre Bezroutchko
95b93a5082 dom0/qvm-usb: enabled -f option to qvm-usb (and cosmetic changes) 2012-10-21 14:59:35 +02:00
Alexandre Bezroutchko
fc74c6a85b dom0/qvm-usb: first implementation of qvm-usb 2012-10-21 14:59:35 +02:00
Bruce A Downs
a504600c20 dom0/core: Added the pretty print of qubes.xml
* Replaced xml.etree.ElementTree with lxml.etree
* Added argument to tree.write(file, encoding="UTF-8", pretty_print=True)
2012-10-19 02:21:41 +02:00
Bruce A Downs
28b4f82b0a dom0/core: Added call to lock.remove_pidfile() on successful exit
* Adding remove_pidfile on exit
* prevents the incorrect 'crash' message on startup
* Added proper call to main
2012-10-19 02:21:41 +02:00
Alexandre Bezroutchko
d6432a16c4 dom0/qvm-tools: clean resolv.conf when networking goes down 2012-10-19 02:21:03 +02:00
Marek Marczykowski
3a875edf58 dom0/core: fix qubes-dom0-network-via-netvm (#660)
IP 10.137.0.1 was already used by netvm, so change dom0 IP to 10.137.0.2.
2012-10-19 02:07:35 +02:00
Marek Marczykowski
3e90174910 Merge branch 'hvm-for-master'
Conflicts:
	dom0/qvm-core/qubes.py
	dom0/qvm-tools/qvm-sync-clock
	version_dom0
	vm-systemd/qubes-sysinit.sh
2012-10-17 21:41:03 +02:00
Marek Marczykowski
d010906eb1 Merge remote-tracking branch 'abb/qvm_block-bugfix' 2012-10-16 00:59:36 +02:00
Alexandre Bezroutchko
ca4367821e Improve handling of command line parameters, don't silently ignore unexpected arguments.
This is to avoid following behavior:

    [abb@dom0 qubes-core]$ qvm-block -l
    netvm:sda       STORAGE_DEVICE () 0 B
    dom0:sdb1       Cruzer () 3 GiB
    dom0:sdb        Cruzer () 3 GiB

    [abb@dom0 qubes-core]$ qvm-block -l
    netvm:sda       STORAGE_DEVICE () 0 B
    dom0:sdb1       Cruzer () 3 GiB
    dom0:sdb        Cruzer () 3 GiB

    [abb@dom0 qubes-core]$ qvm-block -a qdvp dom0:sdb

    [abb@dom0 qubes-core]$ qvm-block -l
    netvm:sda       STORAGE_DEVICE () 0 B
    dom0:sdb1       Cruzer () 3 GiB
    dom0:sdb        Cruzer () 3 GiB (attached to 'qdvp' as 'xvdi')

    [abb@dom0 qubes-core]$ qvm-block -d qdvp BLAHBLAH
                                          ^^^^^^^^^^^^^
    >>> The last parameter is silently ignored and all devices get detached

    [abb@dom0 qubes-core]$ qvm-block -l
    netvm:sda       STORAGE_DEVICE () 0 B
    dom0:sdb1       Cruzer () 3 GiB
    dom0:sdb        Cruzer () 3 GiB
2012-10-15 11:40:08 +02:00
Marek Marczykowski
02601049ca dom0/qmemman: do not fail when domain name not available
This can be the case when domain just dissapeared (destroy), but qmemman didn't
processed xenstore watch trigger.
2012-10-15 01:58:07 +02:00
Bruce A Downs
6304155990 dom0/core: minor spell check fixes
* happend
* avilable
* skiping
2012-10-09 01:23:54 +02:00
Bruce A Downs
05f7bfc9c1 dom0/core: Code cleanup of qubesutils.py
* Took out unreferenced restore_vm_file function
* removed unused imports
* renamed interpreter from python2 to python
2012-10-09 01:23:45 +02:00
Marek Marczykowski
081cfab559 dom0/core: do not leak xs transaction and use it in all xs calls 2012-10-08 01:26:07 +02:00
Alexandre Bezroutchko
f4ef1adcdd dom0/qvm-core: start XS transaction before getting the list of domains 2012-10-08 01:23:52 +02:00
Alexandre Bezroutchko
3c53f049a3 dom0/qvm-block: cosmetic 2012-10-08 01:23:42 +02:00
Alexandre Bezroutchko
abfe99756f start XS transaction before getting the list of domains 2012-10-08 00:48:20 +02:00
Alexandre Bezroutchko
caf3ed1ae4 cosmetic 2012-10-08 00:46:30 +02:00
Marek Marczykowski
d03bab3db2 Merge branch 'master-for-hvm' into hvm
Conflicts:
	dom0/qvm-core/qubes.py
	dom0/qvm-tools/qvm-sync-clock
2012-10-04 05:45:41 +02:00
Marek Marczykowski
5e696298cf dom0/core: fix icon handling on VM clone 2012-10-04 05:44:20 +02:00
Marek Marczykowski
d5c74f69ee dom0/core: recreate appmenus after rename for any VM, not only AppVM (#659) 2012-10-04 05:44:20 +02:00
Marek Marczykowski
9a2f1dfebe dom0/core: include net/proxy VM default appmenus list in cloned template 2012-10-04 05:44:19 +02:00
Olivier Médoc
69354475bf dom0/qvm-sync-clock: use timestamp in RFC2822 format to avoid locale issues 2012-10-04 05:44:19 +02:00
Marek Marczykowski
397f2912f0 dom0/core: allow '_' in VM name 2012-10-04 05:44:18 +02:00
Marek Marczykowski
92747285c7 dom0/qvm-block: rework device name parsing to better support c0p1 name style 2012-10-04 05:44:18 +02:00
Marek Marczykowski
19a60eff55 dom0/core: fix icon handling on VM clone 2012-10-03 22:28:49 +02:00
Marek Marczykowski
1b25d77504 dom0/core: recreate appmenus after rename for any VM, not only AppVM (#659) 2012-10-03 21:36:52 +02:00
Marek Marczykowski
45639096fa dom0/core: include net/proxy VM default appmenus list in cloned template 2012-10-03 21:12:18 +02:00
Olivier Médoc
9a90f499bc dom0/qvm-sync-clock: use timestamp in RFC2822 format to avoid locale issues 2012-10-03 14:55:05 +02:00
Marek Marczykowski
c1214bfef9 dom0/core: VM property for qrexec startup timeout (#27 pro) 2012-09-25 03:26:44 +02:00
Marek Marczykowski
96199058d1 dom0/core: wait for user session on HVM start (#31 pro) 2012-09-25 00:23:35 +02:00
Marek Marczykowski
f271ad8463 dom0/core: fix return value of QubesHVM.run() 2012-09-25 00:23:20 +02:00
Marek Marczykowski
9db9d8b6c2 dom0/core: allow passing stdin to QubesVM.run() 2012-09-25 00:22:31 +02:00
Marek Marczykowski
3ecc031603 dom0/core: allow '_' in VM name 2012-09-14 12:58:00 +02:00
Marek Marczykowski
2444603ef5 dom0/core: allow '_' in VM name 2012-09-14 12:57:25 +02:00
Marek Marczykowski
900a21db72 dom0/init.d: hide some missleading error 2012-09-04 19:24:01 +02:00
Marek Marczykowski
b7eaf9a30d dom0/core: do not use hardcoded "user" in qvm-sync-clock 2012-08-31 00:53:50 +02:00
Marek Marczykowski
46fd664ba3 dom0/qrexec: implement default user handling in qrexec_daemon
This will simplify using qrexec from utilities which doen't load qubes.xml
normally (like qrexec_policy, gui daemon).
2012-08-30 17:44:52 +02:00