Commit Graph

521 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
85b509cedc
appmenus: fix handling VM name on command line
QubesOS/qubes-issues#2412
2016-11-02 06:36:09 +01:00
Marek Marczykowski-Górecki
35d32aa3d7
version 3.2.9 2016-10-31 14:18:21 +01:00
Marek Marczykowski-Górecki
610902a5c1
Revert "qrexec: fix "yes to all" for qrexec calls with custom argument"
Do not copy policy file at arbitrary time.
This reverts commit 1dff6361b7.
2016-10-31 14:17:54 +01:00
Marek Marczykowski-Górecki
c15841c828
version 3.2.8 2016-10-30 21:32:21 +01:00
Marek Marczykowski-Górecki
1dff6361b7
qrexec: fix "yes to all" for qrexec calls with custom argument
If argument-specific policy file do not exists, create one based on
generic one.

Fixes QubesOS/qubes-issues#2403
Reported by @Rudd-O
2016-10-28 13:28:04 +02:00
Marek Marczykowski-Górecki
2768b22494
version 3.2.7 2016-10-03 11:50:07 +02:00
Marek Marczykowski-Górecki
875866c3c0
Merge remote-tracking branch 'qubesos/pr/11'
* qubesos/pr/11:
  qubes-dom0-update: Show sync and download progress
2016-10-03 11:49:43 +02:00
Marek Marczykowski-Górecki
34ed18527b
Merge branch 'bug1676'
* bug1676:
  install-kernel: handle custom EFI directory
2016-10-03 11:48:19 +02:00
Rusty Bird
be30203d81
qubes-dom0-update: Show sync and download progress
Use "script" (part of util-linux) to fake a dumb terminal in the
updatevm, so dnf will show sync and download progress indicators.
2016-09-05 13:57:07 +00:00
Marek Marczykowski-Górecki
40b139ab82
qrexec-policy: fix handling special target VM names
Function validate_target should return either valid QubesVM object or
None in case of success. And throw an exception in case of failure.
2016-09-05 14:38:47 +02:00
Marek Marczykowski-Górecki
a513b33da3
appmenus: skip VMs without own directory
For example Dom0, or VM not created on disk (mostly while running
tests).
2016-09-05 14:38:46 +02:00
Marek Marczykowski-Górecki
a72d53ae1b
qrexec-policy: fix confirmation dialog call 2016-09-05 14:38:46 +02:00
Marek Marczykowski-Górecki
cce22c9517
qrexec-policy: new DispVM handling - $dispvm:DISP_VM keyword
Add support for `$dispvm:DISP_VM` syntax in target specification. At the
same time update the code for core3 API for handling DispVMs.

QubesOS/qubes-issues#2253
2016-09-05 14:38:46 +02:00
Marek Marczykowski-Górecki
009e2e6adb
qrexec-policy: prefer using VM objects
Pass VM object instead of just name - it will make extending much
easier. For example new DispVM handling.

QubesOS/qubes-issues#2253
2016-09-05 14:38:46 +02:00
Marek Marczykowski-Górecki
1cee27275e
version 3.2.6 2016-08-31 13:14:55 +02:00
Rusty Bird
c7ad14320f
qrexec-client: Also allow the bell character 2016-08-17 13:10:13 +00:00
Rusty Bird
e005836286
qrexec-client: Filter terminal output much more strictly
qrexec-client -t/-T (and therefore, qvm-run --pass-io) only handled the
escape character, \033. Everything else, such as Unicode and obscure
control characters, was passed through from the VM to the dom0 terminal.

Instead, replace all bytes except for a benign subset of ASCII. That's
still enough to allow progress bars to be drawn (tested using
"wget --progress=bar:force" and "pv --force").
2016-08-17 02:41:38 +02:00
Marek Marczykowski-Górecki
849b295384
qrexec: add option to wait for VM-VM connection termination
Normally when qrexec-client setup VM-VM connection it exits
immediatelly. But it may be useful to wait for the connection to
terminate - for example to cleanup DispVM.

qrexec-daemon (the one that allocated vchan port) do receive such
notification, so expose such option to qrexec-client.

QubesOS/qubes-issues#2253
2016-08-17 02:41:22 +02:00
Marek Marczykowski-Górecki
9192bb0d44
qrexec: don't call exit directly from qrexec-policy main
Use `return` instead. This makes possible to implement unit tests on
this function. And also makes static analysis a little happier.
2016-08-17 02:41:22 +02:00
Marek Marczykowski-Górecki
9a5bd57d1b
qrexec: switch to ArgumentParser in qrexec-policy 2016-08-17 02:41:22 +02:00
Marek Marczykowski-Górecki
8a780cb7f5
qrexec: reformat qrexec-policy
No functional change, just make it slightly less painful to read...
2016-08-16 02:58:04 +02:00
Marek Marczykowski-Górecki
92c3ba578a
appmenus: register event handlers on QubesVM, not BaseVM
It is critical to call rename-related events in the right order related
to those in QubesVM, because handler at QubesVM renames VM directory.

After "qubes/events: fix event handlers ordering" in qubes-core-admin it
is (again) possible to deterministically order event handler from
extension in relation to those from the class itself. But since ordering
on object class have higher priority (first from base class), those
handlers needs to be attached to the same class.
2016-08-15 23:53:11 +02:00
Marek Marczykowski-Górecki
da9205c78a
tests/appmenus: fix template cloning code
create_on_disk no longer handle cloning files.
2016-08-15 23:52:35 +02:00
Marek Marczykowski-Górecki
3abee97e13
appmenus: adjust for QubesArgumentParser API change 2016-08-15 23:52:13 +02:00
Marek Marczykowski-Górecki
86ef6906ad
appmenus: don't crash on VM without files on disk
Such VM can still trigger some appmenus-related action, for example
label change. This may happen during tests, or backup restore. And
probably some other cases.
2016-08-15 23:49:59 +02:00
Marek Marczykowski-Górecki
fe209dfd24
appmenus: clone default whitelists for VM type
Don't bother with checking whether it is a template or not - when
cloning VM disk files, copy those files anyway (if exist of course).
2016-08-08 14:38:50 +02:00
Marek Marczykowski-Górecki
daf1fd4759
systemd: enable xen-init-dom0.service
This is the right upstream service to init dom0 entries. Instead of our
own script.
2016-08-08 01:15:56 +02:00
Marek Marczykowski-Górecki
c34427e264
rpm: make sure /usr/bin/python (not /bin/python) is used
Otherwise rpm will fail to resolve dependencies (no package provides
/bin/python).
2016-08-08 00:51:50 +02:00
Marek Marczykowski-Górecki
bf140ae175
appmenus: misc API sync with core-admin
- there is no longer vm.is_netvm/is_disposablevm.
- 'domain-create-on-disk' even have no longer 'source_template' argument
2016-08-08 00:51:49 +02:00
Marek Marczykowski-Górecki
19609705fc
appmenus: do nothing if VM isn't created on disk yet
This may be a case during backup restore - some properties may be
modifier before restoring actual files.

QubesOS/qubes-issues#1897
2016-08-08 00:51:49 +02:00
Marek Marczykowski-Górecki
aef9aa2dd3
appmenus: few more tests
QubesOS/qubes-issues#1897
2016-08-08 00:51:49 +02:00
Marek Marczykowski-Górecki
0fbc644fd9
appmenus: fix handling custom templates
QubesOS/qubes-issues#1897
2016-08-08 00:51:49 +02:00
Marek Marczykowski-Górecki
f688cba49c
appmenus: adjust checking label color
Checking icon color is hard...

QubesOS/qubes-issues#1606
2016-08-08 00:51:48 +02:00
Marek Marczykowski-Górecki
7dccbd1ead
appmenus: convert shell scripts to python
Fixes QubesOS/qubes-issues#1897
2016-08-08 00:51:48 +02:00
Marek Marczykowski-Górecki
9690f52dc5
appmenus: add more tests
QubesOS/qubes-issues#1897
2016-08-08 00:51:48 +02:00
Marek Marczykowski-Górecki
e846f26bd3
appmenus: convert qvm-sync-appmenus to core3 API
QubesOS/qubes-issues#1897
2016-08-08 00:51:48 +02:00
Marek Marczykowski-Górecki
54a5dd92cf
appmenus: indentation
QubesOS/qubes-issues#1897
2016-08-08 00:51:47 +02:00
Marek Marczykowski-Górecki
c32fbe14aa
appmenus: add simple unit tests
QubesOS/qubes-issues#1897
2016-08-08 00:51:47 +02:00
Marek Marczykowski-Górecki
acee13bf53
appmenus: use setuptools for packaging
QubesOS/qubes-issues#1897
2016-08-08 00:51:47 +02:00
Marek Marczykowski-Górecki
d446f849d8
appmenus: initial conversion to core3 API
This commits change code itself for core3 API, but doesn't plug it
anywhere yet.

QubesOS/qubes-issues#1897
2016-08-08 00:51:46 +02:00
Marek Marczykowski-Górecki
b91eace873
dom0-updates: convert to core3 API 2016-08-08 00:47:18 +02:00
Marek Marczykowski-Górecki
0568d2ae3b
qrexec: initial convert qrexec-policy to core3 API 2016-08-08 00:47:18 +02:00
Wojtek Porczyk
6ca61dc709
Renamed imgconverter module 2016-08-08 00:47:18 +02:00
Marek Marczykowski-Górecki
37f92396c4
install-kernel: handle custom EFI directory
Fixes QubesOS/qubes-issues#1676
2016-07-21 14:16:52 +02:00
Marek Marczykowski-Górecki
769e70e76a
version 3.2.5 2016-07-17 04:57:35 +02:00
Marek Marczykowski-Górecki
db32b65d81
appmenus: add xterm in Disposable VM menu entry
Fixes QubesOS/qubes-issues#1612
2016-07-17 00:00:47 +02:00
Marek Marczykowski-Górecki
7080c0371d
appmenus: force X-Qubes-VM category for all VM-related entries
This will ease filtering entries when constructing applications menu.
For example '<OnlyUnallocated/>' key used in Xfce4 before looks to
introduce some problems.

Fixes QubesOS/qubes-issues#2129
2016-07-15 11:31:27 +02:00
Marek Marczykowski-Górecki
e90c8a97ff
appmenus: fix detection of desktop environment
In Fedora 23-based dom0, DESKTOP_SESSION environment contains full path
to session file, instead of just basename.

QubesOS/qubes-issues#1606
2016-07-14 04:32:16 +02:00
Marek Marczykowski-Górecki
6cd45f88c5
Merge remote-tracking branch 'qubesos/pr/8'
* qubesos/pr/8:
  Don't probe disk contents of loop* or xvd*
  Copy unmodified(!) 60-persistent-storage.rules from Fedora 23
2016-06-26 22:03:18 +02:00
Rusty Bird
fe6846d5eb
Add AEM services to 75-qubes-dom0.preset
They will only start if booted with rd.antievilmaid anyway.
2016-06-26 15:17:38 +00:00