Marek Marczykowski-Górecki
4694f5f52f
appmenus: force changing appicons when VM label is changed
...
Fixes QubesOS/qubes-issues#1606
2016-04-19 23:11:10 +02:00
Galland
3acfb8e4b3
Add colon (:) to trusted characters (for "Code::Blocks" appmenu)
...
After installing "codeblocks" app in TemplateVM it doesn't appear in Qubes VM Manager's available app shortcuts.
If I run in a Dom0 Terminal: /usr/libexec/qubes-appmenus/qubes-receive-appmenus fedora-23
I get this: "Warning: ignoring key 'Name' of codeblocks.desktop"
The "Name" key in that file has value "Code::Blocks"
The problem comes from line 168, because of the colons in the app Name.
By adding the colon ":" to the std_re used to match valid characters for "Name", the app is correctly parsed and I can add the shortcut to AppVMs
2016-03-16 22:38:38 +01:00
Matt McCutchen
ff02e0da90
Add qvm-appmenu-replace tool.
...
This can be used to replace the Terminal shortcut
(QubesOS/qubes-issues#1428 ).
2015-12-05 12:25:29 -05:00
Bahtiar `kalkin-` Gadimov
7f55410a02
Fix test basic/TC_01_Properties/test_000_rename
2015-11-22 22:31:22 +01:00
Bahtiar `kalkin-` Gadimov
6590931fcd
Make appmenu paths properties and not config attrs
...
This fixes a circular dependencies where get_attrs_config() in QubesVm is
executed, before the self.storage is initialised. See also
https://github.com/QubesOS/qubes-core-admin/pull/6#discussion-diff-45008401
2015-11-22 12:31:16 +01:00
Bahtiar `kalkin-` Gadimov
4d94309087
Remove unused imports from qubes-core-appmenus
2015-11-17 21:28:26 +01:00
Marek Marczykowski-Górecki
4d3a7ad5c6
appmenus: remove entries from AppVMs menus when removed from template
...
Fixes QubesOS/qubes-issues#1411
2015-11-13 02:48:15 +01:00
Marek Marczykowski-Górecki
4e1f6b5bd5
core: use vm.absolute_path to parse paths in qubes.xml
...
This makes easier to handle some corner cases.
qubesos/qubes-issues#1124
Reported by @doncohen, thanks @wyory for providing more details.
2015-09-04 01:57:59 +02:00
Marek Marczykowski-Górecki
ccd8021af9
appmenus: do not create appmenus for DispVMs ( #1123 )
...
Fixes qubesos/qubes-issues#1123
2015-09-03 01:18:16 +02:00
Marek Marczykowski-Górecki
c2c34528a2
appmenus: fix broken import
2015-08-03 04:19:49 +02:00
Marek Marczykowski-Górecki
c85fc7a098
appmenus: Add offline mode to qubes-receive-appmenus
...
Will be useful during LiveUSB build - we can't start template at this
stage, but still need to somehow generate appmenus.
2015-08-02 14:43:17 +02:00
Marek Marczykowski-Górecki
cc7075ab65
appmenus: defer menu cache regeneration to speedup qvm-sync-appmenus
...
Call "xdg-desktop-menu forceupdate" at the end of the process, not for
every single item.
2015-07-08 05:56:38 +02:00
Marek Marczykowski-Górecki
07de8f7515
appmenus: allow '_' in Exec and other fields
2015-05-17 00:07:01 +02:00
Marek Marczykowski-Górecki
50eb23d60e
appmenus: add missing appicons_cleanup function
...
Commit f05f214f
"appmenus: update icons only when changed" introduced
usage of vm.appicons_cleanup, but that function wasn't implemented. That
caused not generating appmenus at all after template update (old
appmenus was removed, but script crashes before adding the new one).
2015-05-02 23:49:40 +02:00
Marek Marczykowski-Górecki
b40008a06d
appmenus: do not regenerate all the icons for the template itself
2015-05-02 21:09:42 +02:00
Marek Marczykowski-Górecki
febac40b05
appmenus: convert eval's to lambda's
2015-05-02 21:09:42 +02:00
Marek Marczykowski-Górecki
59d9dc0307
appmenus: minor code style fixes
...
Use 'in' instead of has_key, remove unused code.
2015-05-02 21:09:42 +02:00
Marek Marczykowski-Górecki
2a08357fa4
appmenus: script formatting
...
Wrap long lines, fix whitespaces
2015-05-02 21:09:42 +02:00
Marek Marczykowski-Górecki
f05f214f6c
appmenus: update icons only when changed
...
Do not regenerate all the icons when the source is unchanged.
Also add preliminary code to support the same improvement for .desktop
files, but it requires some more work, especially because KDE does a lot
of caching and we need to force update sometimes (for example when VM
label color has changed).
2015-04-28 12:45:29 +02:00
Marek Marczykowski-Górecki
662813dc18
appmenus: recreate appmenus for the template itself after update
2015-03-11 00:00:37 +01:00
Marek Marczykowski-Górecki
735788dbd6
appmenus: do not force GUI connection when retrieving appmenus
...
There could be no GUI available - for example at firstboot.
2015-03-10 23:59:30 +01:00
Marek Marczykowski-Górecki
9ea5790a9b
appmenus: really call kbuildsycoca4 only once after template update ( #886 )
2015-02-22 02:08:49 +01:00
Marek Marczykowski-Górecki
d031126737
Add "--" to separate options from (untrusted) non-options arguments
...
This will prevent passing an option instead of command (qvm-run) /
domain name (qrexec-policy). In both cases when VM tries to pass some
option it would fail because missing argument then - VM can not pass
additional arguments, so if one act as an option, one argument will be
missing).
2015-02-10 01:57:33 +01:00
Marek Marczykowski-Górecki
a28e6e1044
appmenus: call kbuildsycoca4 only once after template update ( #886 )
2015-01-30 01:57:19 +01:00
Marek Marczykowski-Górecki
40178a161e
appmenus: mute output when verbose=False
2014-09-18 07:46:00 +02:00
Marek Marczykowski-Górecki
4758fc1781
appmenus: create apps.tempicons directory if missing ( #896 )
2014-09-09 02:13:08 +02:00
Wojciech Zygmunt Porczyk
0f7730c2e3
appmenus: use new label icons
2014-07-10 16:28:05 +02:00
Wojciech Zygmunt Porczyk
66234f41ee
regexp fixes and validation ( #829 )
2014-05-19 13:36:02 +02:00
Wojciech Zygmunt Porczyk
df7e67784a
qubes-receive-appmenus: filter categories
...
Allow only whitelisted categories, specified in freedesktop.org
"Desktop Menu Specification" 1.1-draft.
http://standards.freedesktop.org/menu-spec/latest/apa.html
2014-05-08 11:40:45 +02:00
Wojciech Zygmunt Porczyk
c6f24d8ba8
qubes-receive-appmenus: use old icons when retrieval fails ( #836 )
2014-05-07 14:54:59 +02:00
Wojciech Zygmunt Porczyk
bad449f235
qubes-core-appmenus.py: create/remove appmenus only when attribtute changes
...
This is part of #827 bug.
2014-05-05 22:26:53 +02:00
Wojciech Zygmunt Porczyk
a9980d6d34
qubes-core-appmenus.py: create/remove appmenus when re/setting internal
...
This is part of #827 bug.
2014-05-05 16:47:34 +02:00
Marek Marczykowski-Górecki
5bac404079
appmenus: use os.path.join instead of manual string concatenation
...
This will ease porting the code to other OSes. Also be consistent with
other parts of the script.
2014-04-19 16:46:49 +02:00
Marek Marczykowski-Górecki
ffd8db5d06
appmenus: don't output untrusted strings on terminal
...
Especially those which failed verification.
2014-04-19 16:46:03 +02:00
Marek Marczykowski-Górecki
0afaa60093
appmenus: fix regexp for parsing received line
...
The '-' must be the last character. Otherwise it means character range.
In this case it was ')-_', which include '/', so path was incorrectly
sanitised.
2014-04-19 16:39:37 +02:00
Marek Marczykowski-Górecki
6fc4c0ae3f
appmenus: allow '_' in filenames
2014-04-16 17:00:25 +02:00
Marek Marczykowski-Górecki
7afc15dcf0
appmenus: workarounds for non-refreshing icon caches ( #751 )
2014-04-16 16:59:47 +02:00
Marek Marczykowski-Górecki
aea6b3c1f5
appmenus: fix creating appmenus when no entry is selected
2014-04-14 04:12:00 +02:00
Marek Marczykowski-Górecki
123c529ffa
appmenus: extend allowed chars set for Windows paths
2014-04-04 11:32:54 +02:00
Marek Marczykowski-Górecki
0c1e45cb3d
appmenus: recreate child VM appmenus after template update
...
For example refresh the icons, or commands.
2014-02-22 01:26:01 +01:00
Marek Marczykowski-Górecki
849b8450ce
appmenus: include appicons in clone_disk_files hook
2014-02-22 01:25:18 +01:00
Marek Marczykowski-Górecki
1a0d4cae76
appmenus: add ampersand to allowed Exec chars
...
Some Windows applications use it in directory names.
2014-02-16 20:14:26 +01:00
Marek Marczykowski-Górecki
155567cfcf
appmenus: remove trailing semicolons in python code
2014-02-16 20:14:00 +01:00
Marek Marczykowski-Górecki
168b182a7d
appmenus: handle the case when template don't have appicons yet
2014-02-13 10:42:30 +01:00
Marek Marczykowski-Górecki
ad522b178b
Merge remote-tracking branch 'woju/master' into appicons
2014-01-31 03:11:38 +01:00
Wojciech Zygmunt Porczyk
d8145677d6
appicons: fix directory creation and removal (when missing)
2014-01-30 23:11:56 +01:00
Marek Marczykowski-Górecki
eb237f7a08
Merge remote-tracking branch 'woju/master' into appicons
2014-01-16 05:08:03 +01:00
Marek Marczykowski-Górecki
d6cb6076ea
appmenus: fix path in RPC service file
2014-01-15 05:12:13 +01:00
Wojciech Porczyk
92f6e29f43
appmenus: appicons integration
2014-01-14 16:03:15 +01:00
Olivier MEDOC
9cb10f4805
appmenus: allow parenthesis in exec directive for special path such as Program Files (x86)
2013-12-14 03:57:26 +01:00