{"action":"created","issue":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1031","labels_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1031/labels{/name}","comments_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1031/comments","events_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1031/events","html_url":"https://github.com/QubesOS/qubes-issues/issues/1031","id":88569126,"number":1031,"title":"Fix support for desktop files with DBusActivatable=true","user":{"login":"marmarek","id":726704,"avatar_url":"https://avatars.githubusercontent.com/u/726704?v=3","gravatar_id":"","url":"https://api.github.com/users/marmarek","html_url":"https://github.com/marmarek","followers_url":"https://api.github.com/users/marmarek/followers","following_url":"https://api.github.com/users/marmarek/following{/other_user}","gists_url":"https://api.github.com/users/marmarek/gists{/gist_id}","starred_url":"https://api.github.com/users/marmarek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marmarek/subscriptions","organizations_url":"https://api.github.com/users/marmarek/orgs","repos_url":"https://api.github.com/users/marmarek/repos","events_url":"https://api.github.com/users/marmarek/events{/privacy}","received_events_url":"https://api.github.com/users/marmarek/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/C:%20doc","name":"C: doc","color":"0000aa"},{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/P:%20major","name":"P: major","color":"f6f6f6"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/milestones/3","html_url":"https://github.com/QubesOS/qubes-issues/milestones/Release%203.0","labels_url":"https://api.github.com/repos/QubesOS/qubes-issues/milestones/3/labels","id":1011213,"number":3,"title":"Release 3.0","description":" * Odyssey-based [http://theinvisiblethings.blogspot.com/2013/03/introducing-qubes-odyssey-framework.html link]\r\n * Xen 4.4\r\n * Default USB VM to host all the system's USB controllers \r\n * IPv6 routing between all domains \r\n * ~~~Templates support for HVMs/Windows VMs (if licensing allows)~~~ (Already done in Qubes R2 Beta 3 :)\r\n * Integration of Anti Evil Maid with system installer, support Intel TXT in installer-generated grub?","creator":{"login":"marmarek","id":726704,"avatar_url":"https://avatars.githubusercontent.com/u/726704?v=3","gravatar_id":"","url":"https://api.github.com/users/marmarek","html_url":"https://github.com/marmarek","followers_url":"https://api.github.com/users/marmarek/followers","following_url":"https://api.github.com/users/marmarek/following{/other_user}","gists_url":"https://api.github.com/users/marmarek/gists{/gist_id}","starred_url":"https://api.github.com/users/marmarek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marmarek/subscriptions","organizations_url":"https://api.github.com/users/marmarek/orgs","repos_url":"https://api.github.com/users/marmarek/repos","events_url":"https://api.github.com/users/marmarek/events{/privacy}","received_events_url":"https://api.github.com/users/marmarek/received_events","type":"User","site_admin":false},"open_issues":29,"closed_issues":38,"state":"open","created_at":"2015-03-08T14:05:21Z","updated_at":"2015-08-04T14:56:27Z","due_on":null,"closed_at":null},"comments":8,"created_at":"2015-06-15T23:42:05Z","updated_at":"2015-08-04T18:22:41Z","closed_at":null,"body":"According to [Desktop Entry Specification](http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s05.html):\r\n> If the value is true then implementations should ignore the Exec key and send a D-Bus message to launch the application. See D-Bus Activation for more information on how this works. Applications should still include Exec= lines in their desktop files for compatibility with implementations that do not understand the DBusActivatable key. \r\n\r\nApparently our current solution (usage of glib to handle desktop files) does not handle those files correctly\r\nDetails here: https://groups.google.com/d/msgid/qubes-users/557CD10B.8020908%40gmail.com"},"comment":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/comments/127700268","html_url":"https://github.com/QubesOS/qubes-issues/issues/1031#issuecomment-127700268","issue_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1031","id":127700268,"user":{"login":"marmarek","id":726704,"avatar_url":"https://avatars.githubusercontent.com/u/726704?v=3","gravatar_id":"","url":"https://api.github.com/users/marmarek","html_url":"https://github.com/marmarek","followers_url":"https://api.github.com/users/marmarek/followers","following_url":"https://api.github.com/users/marmarek/following{/other_user}","gists_url":"https://api.github.com/users/marmarek/gists{/gist_id}","starred_url":"https://api.github.com/users/marmarek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marmarek/subscriptions","organizations_url":"https://api.github.com/users/marmarek/orgs","repos_url":"https://api.github.com/users/marmarek/repos","events_url":"https://api.github.com/users/marmarek/events{/privacy}","received_events_url":"https://api.github.com/users/marmarek/received_events","type":"User","site_admin":false},"created_at":"2015-08-04T18:22:40Z","updated_at":"2015-08-04T18:22:40Z","body":"Interesting - using `launcher.launch(files, None)` manually from python console works at first shot!\r\nMore interestingly just adding `time.sleep(1)` **at the end** of `qubes-desktop-run` also makes it working. So probably `launcher.launch` is an async call, which require script to be running until got finished (most likely to keep dbus connection active). So need to find a way to make this call synchronous, or wait for its completion.\r\n\r\nMuch more preferred than reimplementing part of `launcher.launch` method."}}