On Sat, Sep 17, 2016 at 11:41 PM, Marek Marczykowski-Górecki <
marma...@invisiblethingslab.com> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> On Sat, Sep 17, 2016 at 03:52:17PM +0100, IX4 Svs wrote:
> > On Wed, Sep 14, 2016 at 9:26 AM, Marek Marczykowski-Górecki <
> > marma...@invisiblethingslab.com> wrote:
> >
> > > -----BEGIN PGP SIGNED MESSAGE-----
> > > Hash: SHA256
> > >
> > > On Wed, Sep 07, 2016 at 11:38:55PM +0100, IX4 Svs wrote:
> > > > On Thu, Sep 1, 2016 at 8:41 AM, IX4 Svs <ix4...@gmail.com> wrote:
> > > >
> > > > > On Thu, Sep 1, 2016 at 2:21 AM, Andrew David Wong <
> a...@qubes-os.org>
> > > > > wrote:
> > > > >
> > > > >> -----BEGIN PGP SIGNED MESSAGE-----
> > > > >> Hash: SHA512
> > > > >>
> > > > >> On 2016-08-31 15:50, IX4 Svs wrote:
> > > > >> > On Wed, Aug 24, 2016 at 11:10 PM, Andrew David Wong <
> > > a...@qubes-os.org>
> > > > >> > wrote:
> > > > >> >
> > > > >> >>
> > > > >> >> On 2016-08-15 14:43, IX4 Svs wrote:
> > > > >> >>> On Mon, Aug 15, 2016 at 10:19 AM, Andrew David Wong <
> > > a...@qubes-os.org
> > > > >> >
> > > > >> >>> wrote:
> > > > >> >>>
> > > > >> >>>>
> > > > >> >>>> On 2016-08-14 15:22, IX4 Svs wrote:
> > > > >> >>>>> Just spent a few minutes to figure this out so I thought I'd
> > > > >> >>>>> share.
> > > > >> >>>>>
> > > > >> >>>>
> > > > >> >>>> Thanks, Alex! Would you mind if we added this to the docs at
> some
> > > > >> >>>> point?
> > > > >> >>>>
> > > > >> >>>>
> > > > >> >>> Not at all - especially if you improve my clumsy way of
> creating
> > > the
> > > > >> >> custom
> > > > >> >>> shortcut (steps 7-12) and use the proper Qubes way that
> Nicklaus
> > > > >> >>> linked to.
> > > > >> >>>
> > > > >> >>> Cheers,
> > > > >> >>>
> > > > >> >>> Alex
> > > > >> >>>
> > > > >> >>
> > > > >> >> Added:
> > > > >> >>
> > > > >> >> https://www.qubes-os.org/doc/signal/
> > > > >> >>
> > > > >> >>
> > > > >> > Andrew, thanks for adding this to the documentation.
> > > > >> >
> > > > >> > I'm afraid my DIY shortcut kludge does not survive
> some(potentially
> > > boot
> > > > >> > time) script and is wiped away from the taskbar, only to be
> > > replaced by
> > > > >> a
> > > > >> > default "Chrome browser" shortcut. I admit I don't quite
> comprehend
> > > what
> > > > >> > the actual implementation of
> > > > >> > https://www.qubes-os.org/doc/managing-appvm-shortcuts/#
> > > tocAnchor-1-1-1
> > > > >> > should be.
> > > > >>
> > > > >> Neither do I. I've always make my custom shortcuts the same
> general
> > > way
> > > > >> you do.
> > > > >>
> > > > >>
> > > > > Ah, we have a usability issue here then.
> > > > >
> > > > >
> > > > >> > A worked example that replaces all but the first step of the "
> > > Creating
> > > > >> a
> > > > >> > Shortcut in KDE" section of https://www.qubes-os.org/doc/
> signal/
> > > would
> > > > >> be
> > > > >> > very much welcome.
> > > > >> >
> > > > >>
> > > > >> Agreed.
> > > > >>
> > > > >
> > > > > Can someone who has figured out how to create one-click buttons to
> > > launch
> > > > > arbitrary applications in AppVMs chime in with an example please?
> I'll
> > > then
> > > > > test it and Andrew can stick it in the wiki for all Qubes users to
> > > benefit.
> > > > >
> > > >
> > > > I had a look myself and may have figured out the "proper" way of
> > > creating a
> > > > shortcut to launch Signal. By the way I submitted a pull request for
> the
> > > > documentation at https://www.qubes-os.org/doc/m
> > > > anaging-appvm-shortcuts/#tocAnchor-1-1-1 because its language is
> > > slightly
> > > > inaccurate.
> > > >
> > > > These instructions (after verification) should replace the shortcut
> > > kludge
> > > > of the signal page you created:
> > > >
> > > > My Signal AppVM uses the fedora-23 template, and I have renamed the
> > > > .desktop file that Chrome created on that AppVM's desktop to
> > > > signal.desktop. Now what?
> > > >
> > > > 1. Open a dom0 terminal, cd to /var/lib/qubes/vm-templates/
> fedora-23/
> > > > 2. Copy Signal:/home/user/Desktop/signal.desktop to
> > > > dom0:/var/lib/qubes/vm-templates/fedora-23/apps.
> templates/signal.desktop
> > > > 3. Lightly edit
> > > > dom0:/var/lib/qubes/vm-templates/fedora-23/apps.
> templates/signal.desktop
> > > to
> > > > be as follows:
> > > >
> > > > [Desktop Entry]
> > > > Version=1.0
> > > > Type=Application
> > > > Terminal=false
> > > > X-Qubes-VmName=%VMNAME%
> > > > Icon=%VMDIR%/apps.icons/signal.png
> > > > Name=%VMNAME%: Signal Private Messenger
> > > > GenericName=%VMNAME%: Signal
> > > > Comment=Private Instant Messenger
> > > > Exec=qvm-run -q --tray -a %VMNAME% -- 'qubes-desktop-run
> > > > /home/user/Desktop/Signal.desktop'
> > > >
> > > > 4. Copy
> > > > Signal:/rw/home/user/.local/share/icons/hicolor/48x48/
> > > apps/chrome-<long_string>-Default.png
> > > >  to
> > > > dom0:/var/lib/qubes/vm-templates/fedora-23/apps.
> > > templates/apps.icons/signal.png
> > > >
> > > > 5. Copy
> > > > dom0:/var/lib/qubes/vm-templates/fedora-23/apps.
> > > templates/apps.icons/signal.png
> > > > to
> > > > dom0:/var/lib/qubes/vm-templates/fedora-23/apps.
> > > templates/apps.tempicons/signal.png
> > > >
> > > > 6. At this point you should be all set. Ensure Qubes knows about the
> new
> > > > menu item you created by starting the fedora-23 template VM and then
> > > > running in a dom0 terminal: qvm-sync-appmenus fedora-23
> > > >
> > > > 7. You should now be able to go back to the GUI and from the Q menu:
> Q ->
> > > > Domain: Signal -> Signal: Add more shortcuts...
> > > > In the window that will appear, you should now have "Signal Private
> > > > Messenger" on the left list of available apps. I moved this to the
> > > > "Selected" list and hit OK, which put the entry in my Q menu.
> > > >
> > > > 8. Then I went to Q -> Domain: Signal. I right-clicked on
> "Signal:Signal
> > > > Private Messenger" and selected "Add to panel".
> > > >
> > > > 9. Success! I now have a button in my KDE panel with which I can
> launch
> > > > Signal with one click.
> > > >
> > > > Hope these steps get documented in the wiki (I'm not attempting a
> direct
> > > > edit lest I break something) and are helpful to people.
> > >
> > > Content of /var/lib/qubes/vm-templates/fedora-23/apps.templates (and
> > > other apps.* there) is generated based on /usr/share/applications and
> > > /usr/local/share/applications in the VM. This include removing from
> dom0
> > > files not present in the VM.
> > > So, instead of copying files manually to dom0, place them in one of
> > > those directories (I suggest /usr/share/applications, as it is shared
> > > with AppVMs), and then request synchronization to dom0:
> > >
> > >     qvm-sync-appmenus fedora-23
> > >
> >
> > Okay, this looks like a much more reasonable approach, but still no cigar
> > for me.
> >
> > I copied
> > SignalVM::/home/user/Desktop/chrome-bikioccmkafdpakkkcpdbppfkghcmi
> hk-Default.desktop
> > to fedora23::/usr/share/applications and then ran
> dom0::qvm-sync-appmenus
> > fedora-23
> >
> > It complained "Failed to get icon for
> > chrome-bikioccmkafdpakkkcpdbppfkghcmihk-Default.desktop: No icon
> received",
> > so I also copied
> > SignalVM::/home/user/.local/share/icons/hicolor/48x48/apps/chrome-
> bikioccmkafdpakkkcpdbppfkghcmihk-Default.png
> > to fedora23::/usr/share/icons/hicolor/48x48/ . I then re-ran
> > dom0::qvm-sync-appmenus fedora-23 and this time it did not complain.
> > Indeed, I now have a menu item with a nice icon available in all menus of
> > my AppVM.
> >
> > But enabling the menu item for the SignalVM and then clicking it, does
> not
> > actually launch the application - it has no visible effect, just a small
> > icon bouncing briefly, then no window. The SignalVM starts, but the
> > application doesn't.
> >
> > Clicking the original .desktop shortcut created inside SignalVM continues
> > to work fine.
> >
> >
> > Contents of the (working)
> > SignalVM:/home/user/Desktop/chrome-bikioccmkafdpakkkcpdbppfkghcmi
> hk-Default.desktop:
> > #!/usr/bin/env xdg-open
> > [Desktop Entry]
> > Version=1.0
> > Terminal=false
> > Type=Application
> > Name=Signal Private Messenger
> > Exec=/usr/lib64/chromium-browser/chromium-browser.sh
> > --profile-directory=Default --app-id=bikioccmkafdpakkkcpdbppfkghcmihk
> > Icon=chrome-bikioccmkafdpakkkcpdbppfkghcmihk-Default
> > StartupWMClass=crx_bikioccmkafdpakkkcpdbppfkghcmihk
> >
> > Contents of the (non-working) dom0:/var/lib/qubes/vm-templates/
> > fedora-23/apps.templates/chrome-bikioccmkafdpakkkcpdbppfkghcmi
> hk-Default.desktop:
> > [Desktop Entry]
> > Version=1.0
> > Type=Application
> > Terminal=false
> > X-Qubes-VmName=%VMNAME%
> > Icon=%VMDIR%/apps.icons/chrome-bikioccmkafdpakkkcpdbppfkghcmi
> hk-Default.png
> > Name=%VMNAME%: Signal Private Messenger
> > Exec=qvm-run -q --tray -a %VMNAME% -- 'qubes-desktop-run
> > /usr/share/applications/chrome-bikioccmkafdpakkkcpdbppfkghcmi
> hk-Default.desktop'
> >
> > Have I done something wrong here, or has something been long in
> > "translation" by the qvm-sync-appmenus script?
>
> Both files looks ok. What happens when you execute that qvm-run command
> from dom0 terminal? Try adding --pass-io option to get more details. And
> replace %VMNAME% with actual VM name of course.
>

It exits with status 1 after 0.3 seconds with:

[user@dom0 ~]$ qvm-run -q --tray --pass-io -a Signal -- 'qubes-desktop-run
/usr/share/applications/chrome-bikioccmkafdpakkkcpdbppfkghcmihk-Default.desktop'
Traceback (most recent call last):
  File "/usr/bin/qubes-desktop-run", line 7, in <module>
    launch(*sys.argv[1:])
  File "/usr/lib64/python2.7/site-packages/qubes/xdg.py", line 8, in launch
    launcher = Gio.DesktopAppInfo.new_from_filename(desktop)
TypeError: constructor returned NULL
[user@dom0 ~]$

Alex

-- 
You received this message because you are subscribed to the Google Groups 
"qubes-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to qubes-users+unsubscr...@googlegroups.com.
To post to this group, send email to qubes-users@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/qubes-users/CAEe-%3DTdxFJ9cresc3rM7j6VuphtkO1JKzn-LJTAaUDsTsWNWZw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to