Launching webapps from XFCE panel

Hi,

I am trying to use some webapps on my Qubes system, but I am running into some issues.

I can install webapps using a Chromium based browser just fine. The webapps can be launched using the browser, and their entries do show up in the XFCE panel menu. However, I cannot seem to make them launch using the panel at all. I have tested this with Edge and Brave on Fedora 36.

I wonder if anyone else is having the same issue and if anyone has figured out a workaround for this yet?

Thank you,
Tommy

I see the same thing. Here is how you can work around it:

Right click on the menu entry and select ‘Edit Application’ (I use Whiskermenu, but the normal Menu should have a similar entry). You will see something like qvm-run -q -a --service -- web qubes.StartApp+brave-nhpjhokcannckbhddcogleaojejnllgb-Default and it won’t work.

In the above example web is the name of the qube, which runs Brave. The letters between brave- and -Default are the unique ID of the shorcut / web app (in this case Fastmail). Here is what works for me:

qvm-run web "brave-browser --profile-directory=Default --app-id=nhpjhokcannckbhddcogleaojejnllgb"

This simply tells Qubes OS to run the command in quotes inside the qube called web. The command itself is exactly what the Exec= line inside the desktop shortcut in ~/.local/share/applications contains. I don’t know why the shortcuts won’t work (they should), but it’s trivial for you to work around it as above.

When the shortcuts get regenerated (update, install etc.) you will need to apply the workaround again.

2 Likes

Create desktop shortcut inside brave template with Exec="brave-browser --profile-directory=Default --app-id=nhpjhokcannckbhddcogleaojejnllgb", name it something like BravoWebApp, and call it or start it from Q or any other dom0 menu or terminal with

qvm-run -q -a --service -- web qubes.StartApp+BraveWebApp

@enmus that’s exactly what Brave Browser creates and what doesn’t work for some reason. Hence the workaround.

If you know why it doesn’t work and how to fix it, please advise.

This should be qvm-run -q -a --service -- web qubes.StartApp+BraveWebApp instead, but only after next is properly set

Where exactly Brave Browser creates exactly what? Can you post whole path and content of a .desktop file from Brave Browser template, please?

user@web:~$ cat .local/share/applications/brave-nhpjhokcannckbhddcogleaojejnllgb-Default.desktop
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Terminal=false
Type=Application
Name=Fastmail
Exec=/opt/brave.com/brave/brave-browser --profile-directory=Default --app-id=nhpjhokcannckbhddcogleaojejnllgb
Icon=brave-nhpjhokcannckbhddcogleaojejnllgb-Default
StartupWMClass=crx_nhpjhokcannckbhddcogleaojejnllgb

As I said, I think you should put the desktop file in a template, and in /usr/share/applications folder.
Also. I think Exec line should contain all desired switches and flags.

That’s how it works for me.

Exec=/usr/bin/brave-browser-stable --profile-directory=Default --app-id=nhpjhokcannckbhddcogleaojejnllgb

Save it as Fastmail, or something.
Then in dom0’s whisker’s menu shortcut

qvm-run -q -a --service -- web qubes.StartApp+Fastmail

@enmus so then you have a desktop shortcut in a template that only works with a specific qube (the one where the shortcut was created and that has the cookies and user/pass to make it work).

Sorry @Sven I totally somehow overlooked the slider in your post with the content of your desktop shortcut. That’s why my post contains the same Exec line as yours - I simply meant you missed the rest, because I saw only this part

Exec=/opt/brave.com/brave/brave-browser --profile-directory=Default

1 Like

Should I file a bug report for this on GitHub? Having to fix it every update would be quite annoying xd