Commit Graph

464 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
11aff876a5 backups: restore default SIGCHLD handler for the backup time
The same as for restore.
2014-01-15 06:00:02 +01:00
Marek Marczykowski-Górecki
f7db4725a2 backups: minor fixes 2014-01-15 05:59:45 +01:00
Marek Marczykowski-Górecki
5527609c92 backups: update backup_do parameters. 2014-01-15 05:59:16 +01:00
Marek Marczykowski-Górecki
89f7c30a7e backups/restore: improve handling "Back" button
Do not reset entered data, but recheck selected VMs dependencies.
2014-01-13 05:22:52 +01:00
Marek Marczykowski-Górecki
7757e343e1 backups/restore: implement selecting the backup even in VM
Using new qubes.SelectFile RPC service, qubes manager can show the file
select dialog from within VM.
The user still can enter the path (or command) manually.
2014-01-13 05:20:54 +01:00
Marek Marczykowski-Górecki
07068be8ed backups: improve handling of dom0 devices
Do not use blk_manager if the device is already in dom0, try to detach
device only when it was mounted (otherwise it was detached already in
error handling code).
2014-01-13 05:19:43 +01:00
Marek Marczykowski-Górecki
9214fb1488 backups: update imports 2014-01-13 05:19:06 +01:00
Marek Marczykowski-Górecki
745b5d479f backups: update for simplified restore API calls 2014-01-13 05:18:03 +01:00
Marek Marczykowski-Górecki
c5ed749c22 backups: make released block device visible to the block manager
Devices used as part of other device (e.g. LUKS) are marked as
unavailable. So after releasing the device it need to be discovered
again. Unfortunately udev event isn't triggered on such occasion (only
"remove" event for device-mapper dev). This patch triggers this event
manually.
2014-01-13 05:09:07 +01:00
Marek Marczykowski-Górecki
02ac37c316 backups: default path on block device only on backup, not restore
On restore the user must point which backup want to use.
2014-01-12 05:43:15 +01:00
Marek Marczykowski-Górecki
26d4f67963 backups: detach block device when finished or error occurred 2014-01-12 05:42:19 +01:00
Marek Marczykowski-Górecki
5f7113e11e backups: allow only one of "block device" and "VM"
Block device can be pointed only when source VM is "dom0".
2014-01-12 05:20:48 +01:00
Marek Marczykowski-Górecki
d8a6e4a4b1 backups: simplify getting dom0 object 2014-01-12 05:18:56 +01:00
Marek Marczykowski-Górecki
92a6a85a4b backups: kill self.backup_location variable
This is copy of dir_line_edit content and its easy to desynchronize its
value, so just use the later directly.
2014-01-11 22:57:34 +01:00
Wojciech Porczyk
d4228bc741
appmenus: appicons recreation upon appmenu change 2014-01-11 00:08:48 +01:00
Marek Marczykowski-Górecki
004893d8de backups: enable back error reporting
The final error message wasn't shown (only the fact that backup failed).
2014-01-10 03:40:11 +01:00
Marek Marczykowski-Górecki
1e7eaf3776 backups: disable SIGCHLD handler for the time of running backup
Otherwise some syscalls would return EINTR. This is much easier (and
more readable!) solution than wrapping each syscall with try:except and
some loop.
2014-01-10 03:38:38 +01:00
Marek Marczykowski-Górecki
0b0297f129 backups: default file select state to previously selected directory 2014-01-10 03:37:28 +01:00
Marek Marczykowski-Górecki
589f2e7eb7 backups: allow to enter custom backup location (restore)
If "dom0" chosen, verify if the location exists.
2013-12-29 04:59:59 +01:00
Marek Marczykowski-Górecki
e1e60f692c backups: allow to select backup in old format (directory instead of file)
New backup is store in one file, but old one in a whole directory. While
selecting old backup, the user need to point 'qubes.xml' file.
2013-12-29 04:56:27 +01:00
Marek Marczykowski-Górecki
386c155dd5 Fix clone action 2013-12-14 02:55:41 +01:00
Marek Marczykowski-Górecki
f604f8a1dd appmenus select: fix listing HVM "Start" entry
Do list entries even if no exec line recognised.
2013-12-14 02:38:35 +01:00
Marek Marczykowski-Górecki
4fdfe44b11 Force refresh on manager show (#759)
But still collecting all the data takes some time...
2013-12-03 00:36:48 +01:00
Marek Marczykowski-Górecki
f587ac2d43 Adjust for new QubesVmCollection.save() implementation
Watch for MOVED_TO events in /var/lib/qubes directory to reload
qubes.xml.
2013-12-02 04:03:05 +01:00
Marek Marczykowski-Górecki
568ce68ca5 backups: improve error reporting during restore 2013-11-29 03:33:17 +01:00
Marek Marczykowski-Górecki
668bb1fdf6 backups: deal with multithread restore process
Only GUI thread can interact with GUI widgets, so queue the requests and
process from GUI thread. This applies to backup progress reports.
2013-11-29 03:26:51 +01:00
Marek Marczykowski-Górecki
9c2db2f87c backups: updates in backup progress information and cancel code 2013-11-28 04:07:39 +01:00
Marek Marczykowski-Górecki
21d72cdc6c backups: UI improvements
Prompt for retype the backup password, more thoroughly test if the user
entered all required informations, use "dom0" instead of "None" for local
backup indication.
2013-11-28 03:52:02 +01:00
Marek Marczykowski-Górecki
ced6fc672b backups: Update for new API - backup code moved to qubes.backup module
Also some improvements/fixes for handling new backup format
2013-11-28 03:50:17 +01:00
Marek Marczykowski-Górecki
6ad6e7c661 Whitespace fixes. 2013-11-28 03:45:22 +01:00
Marek Marczykowski-Górecki
fa9d29075b Merge remote-tracking branch 'oliv/master' into new-backups 2013-11-25 05:05:43 +01:00
Marek Marczykowski-Górecki
77cc22824b Use Standalone/AppVM icon for HVM
Instead of separate HVM icon.
2013-11-22 16:39:19 +01:00
Marek Marczykowski-Górecki
80066c3f72 One more update for the new API 2013-11-21 04:21:47 +01:00
Marek Marczykowski-Górecki
c40beed213 Add warning about potential license issues with template HVM 2013-11-21 04:19:41 +01:00
Marek Marczykowski-Górecki
0d41abad90 Add support for template-based HVM 2013-11-21 04:19:30 +01:00
Marek Marczykowski-Górecki
9c1e2f496c List only compatible templates 2013-11-21 04:17:59 +01:00
Marek Marczykowski-Górecki
4a7f3caee9 Update VM adding code for new API
No longer separate functions for each VM type.
2013-11-21 04:16:26 +01:00
Marek Marczykowski-Górecki
c11c42e2f7 Show the correct icon for HVM
Not standalone/template one.
2013-11-21 02:25:27 +01:00
Marek Marczykowski-Górecki
a2350481b9 Fix 'dont-use-shm' flagfile path in global settings window. 2013-11-09 00:24:45 +01:00
Marek Marczykowski-Górecki
8d38a948e5 settings: indentation fix 2013-10-29 13:41:46 +01:00
Marek Marczykowski-Górecki
56d7807fec settings: gray out maxmem when qmemman is disabled
'Max memory' setting only makes sense for dynamic memory management.
2013-10-29 13:40:49 +01:00
Marek Marczykowski-Górecki
6e3e475bc2 Add tooltip with application command line in appmenu select window (#747)
Otherwise some entries are undistinguishable.
2013-10-19 06:14:58 +02:00
Marek Marczykowski-Górecki
0f28fc7855 Preserve VM selection during table update 2013-10-18 04:20:19 +02:00
Marek Marczykowski-Górecki
b1ad497579 Update log filenames - now qrexec and guid have VM name instead of XID 2013-10-18 03:40:21 +02:00
Marek Marczykowski-Górecki
dcec8b566f Remove some debugging code 2013-10-18 03:37:22 +02:00
Marek Marczykowski-Górecki
fa61fceddd Fix watching clipboard change when the file initially doesn't exists (#749)
When the file doesn't exists, adding a watch fails. So monitor directory
for IN_CREATE event and when file is created - add the modify watch.
This watch will miss the first update (rather: create), so fire it
in IN_CREATE handler.
2013-10-18 03:33:56 +02:00
Marek Marczykowski-Górecki
19b9ffefda Catch the exception on device attach/detach
Take care to release lock before anything else, otherwise GUI will
be frozen...
2013-10-02 01:10:58 +02:00
Olivier MEDOC
baa3c6362c backup: implemented backup functions using the new backup model 2013-09-28 12:33:56 +02:00
Olivier MEDOC
e8cec85874 backup: implemented restore functions using the new backup model 2013-09-27 09:19:38 +02:00
Marek Marczykowski
da0d0c29b8 Get current release from /etc/qubes-release for about window 2013-04-25 16:09:03 +02:00
Marek Marczykowski
0f175b5c92 Fix showing inactive VMs
Previously if Qubes Manager was started with inactive VMs hidden,
toggling "show inactive VMs" option wasn't enough to show them. This is
because we set RowHidden to False only when both show_inactive and
show_internal are set.
This commit fixes the issue.
2013-04-13 04:14:00 +02:00
Marek Marczykowski
3994038d76 Store various VM state in one dict, not random attributes
Storing some Qubes Manager specific properties in QubesVm object isn't
completely right, but if do so, try to keep them in one dict, not bunch
of attributes. Index this dict with named "enum" (implemented as class)
entries.
2013-04-13 04:10:13 +02:00
Marek Marczykowski
009782189c Update button: expire cache before checking for updates 2013-04-13 03:13:37 +02:00
Marek Marczykowski
47669aac4e Replace direct xl calls with proper QubesVM methods 2013-04-13 03:12:58 +02:00
Marek Marczykowski
e0a15c12d4 Replace dbus-python with QtDBus
dbus-python seems to be not thread safe. After "881ee76 Merge qclipd
into qubes-manager" this occasionally triggers SEGV.
QtDBus seems to be somehow less robust:
 - doesn't automatically convert methods arguments to proper types based
 on introspection data
 - property access isn't working so must call
 org.freedesktop.DBus.Properties methods manually

But besides those problems seems to work stable.
2013-04-13 02:54:24 +02:00
Marek Marczykowski
11bfea1118 Update function names for appmenus handling 2013-04-12 01:31:33 +02:00
Marek Marczykowski
59dcefefe1 The Underscores Revolution: qubes-clipboard filename 2013-03-19 13:22:31 +01:00
Marek Marczykowski
bc485d2928 Update imports to match new qubes global settings layout 2013-03-16 21:07:53 +01:00
Marek Marczykowski
ff15208e8f Do not import qubes_guid_path (not used anywhere) 2013-03-16 20:53:47 +01:00
Marek Marczykowski
881ee76709 Merge qclipd into qubes-manager
Have all gui-notification code in one place.

TODO: Change python-dbus to QtDBus, which should better support threads
(current version occasionally gets SEGV...).
2013-03-12 15:56:40 +01:00
Olivier Medoc
cff51fdabd mainui: Changed the showhide algorithm to handle internal VMs
Additionnally, the windows resizing algorithm has been changed to use the count of displayed internal VMs.
2013-03-09 00:07:48 +01:00
Olivier Medoc
268c9a9d94 mainui: implemented show/hide internal VMs 2013-03-09 00:07:48 +01:00
Olivier Medoc
70e0a2b97a mainui: Added show/hide internal VMs in the view menu 2013-03-09 00:07:47 +01:00
Olivier Medoc
dded0ba510 mainui: hide the Internal column by default 2013-03-09 00:07:47 +01:00
Olivier Medoc
effe24b20e mainui: added the Internal column to show if the VM is internal 2013-03-09 00:07:47 +01:00
Marek Marczykowski
987bdfc50d Fix signal handling in backup window
The same issue as in multiselect widget.
2013-03-01 20:45:33 +01:00
Marek Marczykowski
7681864d81 Fix multiselect widget signal handling.
Apparently list isn't allowed type of argument.
Documentation says:
"It is possible to pass any Python object as a signal argument by specifying
PyQt_PyObject as the type of the argument in the signature."
"While this would normally be used for passing objects like lists and
dictionaries as signal arguments, it can be used for any Python type."

So do it.
2013-02-28 02:15:06 +01:00
Marek Marczykowski
d48ed3ca57 Use local time in shutdown monitor
vm.get_start_time() is in local time, so compare it also with local time, not
the UTC one.
2013-02-23 16:18:43 +01:00
Marek Marczykowski
4d9e30784e settings apply: fix error message 2013-02-23 06:46:56 +01:00
Marek Marczykowski
34ea444a42 settings apply: catch exceptions and show them to the user
Settings are applied in separate thread, so when any exception occured there,
the user had no way to know it (besides hanging "applying settings" window).
2013-02-23 06:44:06 +01:00
Marek Marczykowski
74f9bcd6f7 Mark paused VMs with grey icon (#707) 2013-02-20 23:08:18 +01:00
Marek Marczykowski
ab5fca6e19 Dot allow to run command in paused VM 2013-02-19 03:33:01 +01:00
Marek Marczykowski
de27483948 Allow killing paused VM 2013-02-19 03:32:49 +01:00
Marek Marczykowski
1477c8e90c Display memory size even if VM isn't running.
This covers the case of paused and halting VMs.
2013-02-19 03:32:03 +01:00
Marek Marczykowski
fd330c283d Add menubar/toolbar context menu explicitly
Previously it was somehow automatically generated. Unfortunately it
caused SEGV in libQtCore (4.8).
2013-02-15 16:06:54 +01:00
Marek Marczykowski
6b03b6dd1b Fix SIGHUP handler 2013-02-15 00:49:52 +01:00
Marek Marczykowski
73598b0344 Do not strictly depend on kdialog
Use QInputDialog where possible, fallback to zenity where not.
2013-02-12 01:57:17 +01:00
Marek Marczykowski
05de91293e reconnect to notification daemon when it restarts
Notification daemon isn't running all the time (at least in xfce), it is
dbus-activated. So do not stick to one detected at program startup.
2013-02-07 12:46:39 +01:00
Marek Marczykowski
950fe9253c fix race condition in get_selected_vm
Reported-by: Hakisho Nukama <nukama@gmail.com>
2013-02-06 14:57:09 +01:00
Marek Marczykowski
69a2ac62fb use any python2, not explicit python2.6
Especially allow python2.7.
2013-01-23 15:55:14 +01:00
Marek Marczykowski
3b223aacd0 settings: disable dynamic memory management setting for HVM (#690) 2012-12-12 16:33:10 +01:00
Marek Marczykowski
8e333a7653 Display correct gateway IP (#685) 2012-12-10 16:13:14 +01:00
Marek Marczykowski
82c26dc91f enable audio enable/disable switch only for VMs which have such feature (#682)
Check as realiable as possible: existence of dbus connection.
2012-12-06 06:27:59 +01:00
Marek Marczykowski
273cb9257f use dbus object path without VM name (#681)
VM name can contain characters forbidden in object path (like dash), so
pulseaudio client will use path without VM name.
2012-12-06 06:25:54 +01:00
Marek Marczykowski
62365b6da2 Show only really installed appmenus as "selected" (#678) 2012-11-27 02:35:39 +01:00
Marek Marczykowski
497f93ca70 Follow vm.run() API change, remove opencoded "user" name (#577) 2012-11-13 04:44:25 +01:00
Marek Marczykowski
e756d31bb5 Allow to create Standalone VM (#669) 2012-11-09 21:11:27 +01:00
Marek Marczykowski
85f240d887 Improve creating network-isolated VMs
Instead of blocking on firewall, do not connect to netvm.
2012-11-09 21:11:17 +01:00
Marek Marczykowski
0d2a5d059a Fix audio-input status handling 2012-11-09 21:01:38 +01:00
Marek Marczykowski
6499ec315a audio-input setting and status 2012-11-06 06:50:14 +01:00
Bruce A Downs
3f8cd88ec0 qubes-manager: 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:22:30 +02:00
Bruce A Downs
a64aab0acf qubes-manager: Bug fixes for backup/restore dialog around pumount usage
* pumount was not being called with sudo
* pumount cleans up mount_dir, therefore rmdir removed
* check for NoneType when setting dir_line_edit to avoid exception
2012-10-16 01:01:27 +02:00
Marek Marczykowski
1026d19340 settings: allow application list modifications for NetVM/ProxyVM 2012-10-03 22:08:42 +02:00
Marek Marczykowski
d2a753c289 indent fix 2012-10-03 22:08:37 +02:00
Marek Marczykowski
d0eb5a2fd5 validate VM name also at GUI level (#656) 2012-08-23 03:57:19 +02:00
Marek Marczykowski
8d7ae00b2a fix HVM presence test 2012-08-23 03:57:01 +02:00
Marek Marczykowski
4a9c0d1ebe typo fix 2012-08-10 23:53:32 +02:00
Marek Marczykowski
7ad8330946 fix sorting firewall rules (#652) 2012-08-07 15:03:04 +02:00
Marek Marczykowski
1e12936ea4 allow clone default template
Reported-by: Jan Beerden <jan@janbeerden.be>
2012-08-07 02:02:40 +02:00
Marek Marczykowski
70204bb8a1 Save view settings and restore at startup
Like selected columns, sorting etc.
2012-08-04 04:13:16 +02:00
Marek Marczykowski
a11b68ef5e simplify data sorting code 2012-08-04 04:12:39 +02:00
Marek Marczykowski
055912710a appmenus: use generic method to refresh appmenus
Do not hardcode core script with args in qubes-manager. Actually arguments were
wrong...
2012-08-04 00:32:31 +02:00
Marek Marczykowski
e5b070646b Show running instance when started the second time (#632)
Running instance notified by dbus.
2012-07-24 23:46:03 +02:00
Marek Marczykowski
109907a9fd Merge commit 'v1.2.28' 2012-07-24 22:35:01 +02:00
Marek Marczykowski
2a8afab83e include VM name in settings window title (#642) 2012-07-22 01:47:36 +02:00
Marek Marczykowski
1511dbca6d vm-update: force recheck of updates availability after gpk-update-viewer terminated (#634) 2012-07-22 01:18:21 +02:00
Joanna Rutkowska
2bcd02b313 show manager's main window on start (#632) 2012-07-19 23:20:21 +02:00
Joanna Rutkowska
4dc978a048 Merge branch 'master' of git.qubes-os.org:/var/lib/qubes/git/marmarek/qubes-manager 2012-07-16 19:40:37 +02:00
Marek Marczykowski
b650a3a276 Hide partitions from "block attach" submenu (#623)
Still allow to detach partition if attached manually.
2012-07-13 01:42:48 +02:00
Joanna Rutkowska
62f230fc9d Rearange items in contect menu into more logical groups 2012-07-12 16:24:40 +02:00
Marek Marczykowski
e8a0461bac Add "Clone VM" action (#613) 2012-07-12 13:32:45 +02:00
Marek Marczykowski
7472c3a98b Remove "you have just modified template" message (#557) 2012-07-09 22:19:22 +02:00
Marek Marczykowski
2c562ee3c7 Unify calling processes in VM 2012-07-05 01:13:53 +02:00
Marek Marczykowski
d02fed6fef Fix potential race condition in remove_vm
Ensure current "vm" object.
2012-07-05 01:11:39 +02:00
Marek Marczykowski
8fbea00975 dbus interface for error icon notify (#615) 2012-07-05 01:11:23 +02:00
Marek Marczykowski
3f7fd7ceb7 New status icon: some error occured (#615) 2012-07-05 01:11:15 +02:00
Marek Marczykowski
d4bf34bc1b No need to start guid manually
It is started by vm.start()
2012-07-05 01:06:52 +02:00
Marek Marczykowski
9579c670be allow VmIconWidget to have tooltip 2012-07-05 01:06:52 +02:00
Marek Marczykowski
175e78d2c2 place notification title in one place 2012-07-05 01:06:51 +02:00
Marek Marczykowski
186749a911 remove trailing spaces 2012-07-05 01:06:51 +02:00
Marek Marczykowski
cfb7aafd4d gitignore 2012-07-05 00:47:05 +02:00
Marek Marczykowski
1177a1d124 clean yum cache on update action (#540) 2012-06-19 22:58:49 +02:00
Marek Marczykowski
4da2e33bf1 initialize backup_dir after mounting backup device (#587) 2012-06-19 00:52:16 +02:00
Marek Marczykowski
0801ee3c9c remove backup mount dir after unmounting (#587) 2012-06-19 00:45:27 +02:00
Marek Marczykowski
29e386c6bf disable settings action for dom0 (#597) 2012-06-19 00:24:13 +02:00
Marek Marczykowski
f38ee18729 force redraw table after add/remove VM (#598) 2012-06-19 00:17:22 +02:00
Marek Marczykowski
24432ea1bc fix indenting 2012-06-19 00:15:46 +02:00
Marek Marczykowski
2fb2f6478e fix firewall apply (#600)
Inhibit infinite loop.
2012-06-19 00:15:46 +02:00
Marek Marczykowski
1368126a74 spec: remove old entries for ui_editfwrulesdlg 2012-06-12 13:30:23 +02:00
Marek Marczykowski
7639ba67d6 backup: automatically fill in target directory (#587) 2012-06-11 16:46:44 +02:00
Marek Marczykowski
1034bcedd9 backup: refresh dev list after attaching backup device to dom0 2012-06-11 16:46:18 +02:00
Marek Marczykowski
5c73cc9dbf force repaint window right after show (#565) 2012-06-10 01:55:01 +02:00
Marek Marczykowski
bb3b8be82e Reload firewall setting only there where needed 2012-06-05 20:54:50 +02:00
Marek Marczykowski
da09aa79fc Add "Allow connections to Updates Proxy" firewall setting (#582) 2012-06-05 20:29:57 +02:00
Agnieszka Kostrzewa
0a03903b1d QTableWidget items not editable any more 2012-05-30 14:24:46 +02:00
Agnieszka Kostrzewa
f98107d0ed Table updates improvements 2012-05-30 13:54:19 +02:00
Agnieszka Kostrzewa
196dd9572f Typo fix 2012-05-29 19:00:21 +02:00
Agnieszka Kostrzewa
db03e5fdd2 Switching between show all/show active only faster (#565) 2012-05-29 17:05:34 +02:00
Agnieszka Kostrzewa
128f380641 Cannot start VM message changed to tray balloon (#574) 2012-05-25 15:48:12 +02:00
Agnieszka Kostrzewa
d2a75bae4c Warning on shutting down a VM that attached blk devices to other VMs 2012-05-25 13:59:58 +02:00
Agnieszka Kostrzewa
42828835cc Bind init_mem and maxmem setting (#572) 2012-05-19 09:33:29 +02:00
Agnieszka Kostrzewa
9d509917d6 Always bring manager to front on icon click.(#565) 2012-05-19 07:42:57 +02:00
Agnieszka Kostrzewa
201783badd Display 'updates pending' icon for Dom0 correctly. 2012-05-15 12:26:10 +02:00
Agnieszka Kostrzewa
a974f10435 Restart manager after installing update 2012-05-15 09:11:25 +02:00
Agnieszka Kostrzewa
b116ce96f8 Increase timeout for VM shutdown when prep'ing for backup (#566) 2012-05-13 16:56:27 +02:00
Agnieszka Kostrzewa
d4673d540e Allow to specify type of the VM being created (#559) 2012-05-11 22:52:27 +02:00
Agnieszka Kostrzewa
c809896b52 Run command in VM (#544) 2012-05-11 12:50:45 +02:00
Agnieszka Kostrzewa
fb3ac12aa6 No more 'copy-clipboard-to-qubes-clipboard' button in main window. 2012-05-10 13:46:55 +02:00
Agnieszka Kostrzewa
c78d382f26 One click copy logs to Qubes clipboard (#543) 2012-05-10 13:40:27 +02:00
Agnieszka Kostrzewa
7890aac8e8 Log dialog with 'copy-clipboard-to-qubes-clipboard'(#543) 2012-05-10 13:17:24 +02:00