WillyPillow
a9a19428f3
qvm-template: Check that template spec is not "---".
2020-08-01 03:05:21 +08:00
WillyPillow
40e7304f17
qvm-template: Make pylint happy.
2020-08-01 02:56:59 +08:00
WillyPillow
3d0a39523b
qvm-template: Reorder functions.
2020-08-01 02:40:27 +08:00
WillyPillow
233e411c2f
qvm-template: Switch to namedtuples and other slight cleanup.
2020-08-01 02:24:29 +08:00
Marek Marczykowski-Górecki
77e1e080d7
Merge remote-tracking branch 'origin/pr/154'
...
* origin/pr/154:
Add qubes-guivm-session utility
qvm-start-daemon: allow --watch without --all
qvm-start-daemon: convert to async/await syntax
2020-07-31 00:41:27 +02:00
WillyPillow
3ada7af0eb
qvm-template: {reinstall,{up,down}grade}: Better handling and checks for existing version.
2020-07-31 01:27:40 +08:00
WillyPillow
90e4f65bea
qvm-template*: Add option to specify pool to store created VM.
2020-07-29 20:55:56 +08:00
WillyPillow
ef59a658f4
qvm-template: Make pylint happy by changing "license" to "licence".
2020-07-29 20:55:02 +08:00
WillyPillow
f960ed4726
qvm-template: Add --refresh option and allow DNF cache to be used.
2020-07-29 20:55:02 +08:00
WillyPillow
8aa9ab9e89
qvm-template: Remove downloaded file if the download is interrupted.
2020-07-29 20:55:02 +08:00
WillyPillow
88ee572cac
qvm-template: Incorporate additional metadata in qubes.TemplateSearch.
2020-07-29 20:55:02 +08:00
WillyPillow
421dd74dd2
Check number of fields for qubes.TemplateSearch output.
2020-07-29 20:55:02 +08:00
WillyPillow
5e76bdb5f1
Revamp "qvm-template search" and finish TODOs.
2020-07-29 20:55:02 +08:00
WillyPillow
37a72ecebf
Print error messages if qubes.TemplateSearch fails.
2020-07-29 20:55:02 +08:00
WillyPillow
e6392ba4ec
Add lock-file functionality for qvm-template install.
2020-07-29 20:55:02 +08:00
WillyPillow
c573faa9c0
Initial implementation for "qvm-template search".
2020-07-29 20:55:02 +08:00
WillyPillow
d656554822
Initial implementation for "qvm-template info".
2020-07-29 20:55:02 +08:00
WillyPillow
51324da24d
Allow <package-spec>-like arguments for the list operation.
2020-07-29 20:55:02 +08:00
WillyPillow
41323d004f
Support for {reinstall,downgrade,upgrade} operations.
...
Requires QubesOS/qubes-issues#5946 to be resolved.
2020-07-29 20:55:02 +08:00
WillyPillow
faef52e61a
Fix pylint warnings.
2020-07-29 20:55:02 +08:00
WillyPillow
8a4b5e683a
Add suffix for unverified RPMs.
2020-07-29 20:55:02 +08:00
WillyPillow
addb677506
Check for newlines in qrexec arguments & improve error handling.
2020-07-29 20:55:02 +08:00
WillyPillow
73eb4cd08c
Use tqdm for progress bar.
2020-07-29 20:55:02 +08:00
WillyPillow
3d42c988f0
Various cleanup and improvements.
...
- `qvm-template list`: show template state
- `qvm-template list`: only call qubes.TemplateSearch once
- `qvm-template list`: use `qubesadmin.tools.print_table()` instead of own implementation
- `qvm-template download`: custom progress bar
- Use `run_service` instead of own implementation
- Remove some erroneous/redundant lines
2020-07-29 20:55:02 +08:00
WillyPillow
0e8e8d98de
Better way of detecting VM.
2020-07-29 20:55:02 +08:00
WillyPillow
b634c7c785
Initial commit of qvm-template.
...
Refer to <https://gist.github.com/WillyPillow/61ee5f48b7c5b7cc90c9fd2ec5c1b20d >
for previous revisions.
2020-07-29 20:55:02 +08:00
WillyPillow
bab8e699d7
Change "whitelist" to "menu-items" in qvm-features for clarity.
2020-07-29 20:55:02 +08:00
WillyPillow
e8ba117c26
Allow virt_mode other than pv.
2020-07-29 20:55:02 +08:00
WillyPillow
eda68cce6d
Verify values of boolean flags in template config.
2020-07-29 20:55:02 +08:00
WillyPillow
6c7360f25c
Separate whitelist entries with spaces instead of newlines.
2020-07-29 20:55:02 +08:00
WillyPillow
9d9ee6a4b7
Initial support for qvm-template.
2020-07-29 20:55:02 +08:00
Paweł Marczewski
624e4e32fb
Add qubes-guivm-session utility
...
To be used in an xsession file (/usr/share/xsessions).
2020-07-29 12:11:03 +02:00
Paweł Marczewski
c6be7ca5cc
qvm-start-daemon: allow --watch without --all
...
Allow specifying VM names to look for.
2020-07-29 11:35:32 +02:00
Paweł Marczewski
cb7f191bd2
qvm-start-daemon: convert to async/await syntax
2020-07-29 11:27:19 +02:00
Marek Marczykowski-Górecki
a078e1f617
Make Label() object hashable
...
Since it got custom __eq__ function, __hash__ needs to be implemented
too. Otherwise it can't be used as a key in dict.
2020-07-29 03:50:11 +02:00
Marek Marczykowski-Górecki
60d28dc13a
doc: document qvm-start-daemon --force, --kde
2020-07-16 04:45:04 +02:00
Marek Marczykowski-Górecki
af1c1e5234
tests: update for admin.vm.volume.Clear usage in qvm-template-postprocess
2020-07-16 04:07:07 +02:00
Marek Marczykowski-Górecki
4da218c332
Merge remote-tracking branch 'origin/pr/149'
...
* origin/pr/149:
Add admin.vm.volume.Clear call (QubesOS/qubes-issues#5946 )
2020-07-16 04:05:38 +02:00
Marek Marczykowski-Górecki
96a34023e5
version 4.1.7
2020-07-15 16:18:20 +02:00
Marek Marczykowski-Górecki
b99e45f081
Merge remote-tracking branch 'origin/pr/146'
...
* origin/pr/146:
Added dynamic X keyboard event monitoring to qvm_start_daemon.py
Fixes QubesOS/qubes-issues#1396
Fixes QubesOS/qubes-issues#4294
2020-07-15 15:34:07 +02:00
Marek Marczykowski-Górecki
6182c5c490
rpm/deb: require new enough qubes-gui-daemon
...
qvm-start-daemon now uses `qubes-guid -C` - ensure correct version
installed.
But to not require qubes-gui-daemon installed always, use reverse
conflict dependency.
2020-07-15 15:32:35 +02:00
Marta Marczykowska-Górecka
1446a6d7ee
Added dynamic X keyboard event monitoring to qvm_start_daemon.py
...
Update keyboard_layout property whenever guivm's layout changes, instead of
only at the start.
requires QubesOS/qubes-core-admin#350
references QubesOS/qubes-issues#1396
references QubesOS/qubes-issues#4294
2020-07-15 14:04:25 +02:00
Marek Marczykowski-Górecki
6f335800b0
Wrap too long line
2020-07-15 14:01:29 +02:00
Marek Marczykowski-Górecki
470514d0dc
Merge remote-tracking branch 'origin/pr/144'
...
* origin/pr/144:
Clean up the guid-conf file on domain stop
Generate qubes-guid options based on features
2020-07-15 14:00:31 +02:00
Marek Marczykowski-Górecki
2bdeb7684a
Merge remote-tracking branch 'origin/pr/151'
...
* origin/pr/151:
Fixed inconsistent firewall address checking
2020-07-15 13:50:12 +02:00
Marek Marczykowski-Górecki
f9c5b61961
Merge remote-tracking branch 'origin/pr/150'
...
* origin/pr/150:
Fix VM validity check for cached VM objects
2020-07-15 13:49:39 +02:00
Marek Marczykowski-Górecki
e0f17f1b4a
Merge remote-tracking branch 'origin/pr/143'
...
* origin/pr/143:
qvm-start-daemon: common_guid_args is now a staticmethod
tests: kde_args are passed with property of launcher
Fix missing semi-colon and new line
Handle KDE with specific arg/desktop file
2020-07-15 13:43:15 +02:00
Marta Marczykowska-Górecka
9377addd1e
Fixed inconsistent firewall address checking
...
core-admin-client side had less strict rules for hostname than core-admin,
leading to unexpected empty qubesd response. Fixed by copying the logic from core-admin.
2020-07-14 20:10:34 +02:00
Marek Marczykowski-Górecki
45a28c29ae
Fix VM validity check for cached VM objects
...
Qubes().domains.refresh_cache() tries to preserve cached VM objects if
the class matches - this way if an application keeps reference to any,
it will still be the same as freshly obtained from the collection, and
also it will receive cache updates/invalidates based on events.
The check for class change was invalid - on core-admin-client side we
have just one QubesVM class with 'klass' attribute. This leads to VM
objects being disconnected from VMCollection and stale properties cache
there (because they no longer receive events).
Fix the check.
And also add a test if indeed the same object is returned.
2020-07-14 16:10:49 +02:00
WillyPillow
455542ac7f
Add admin.vm.volume.Clear call ( QubesOS/qubes-issues#5946 )
2020-07-14 01:48:19 +08:00