Commit Graph

34 Commits

Author SHA1 Message Date
Wojtek Porczyk
6ca61dc709
Renamed imgconverter module 2016-08-08 00:47:18 +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
b5101d11d6
appmenus: call appropriate kbuildsycoca version (KDE4/KDE5)
QubesOS/qubes-issues#1807
2016-05-04 01:44:09 +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
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
b40008a06d appmenus: do not regenerate all the icons for the template itself 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
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
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
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
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
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
Wojciech Zygmunt Porczyk
d8145677d6 appicons: fix directory creation and removal (when missing) 2014-01-30 23:11:56 +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
Marek Marczykowski-Górecki
c000f24def appmenus: fallback hardcoded appmenus for HVM with qrexec installed
If VM didn't returned any appmenus data, the service is most likely not
available there. Actually it hasn't been written yet.
2013-12-04 03:05:34 +01:00
Marek Marczykowski
ad522026d3 Initial commit: appmenus handling code, icons 2013-03-16 18:23:22 +01:00