Skip to content

feat: improve waypipe performance, adjust trusted browser#1398

Merged
brianmcgillion merged 2 commits intotiiuae:mainfrom
kajusnau:chrome-follow-up
Sep 12, 2025
Merged

feat: improve waypipe performance, adjust trusted browser#1398
brianmcgillion merged 2 commits intotiiuae:mainfrom
kajusnau:chrome-follow-up

Conversation

@kajusnau
Copy link
Copy Markdown
Collaborator

@kajusnau kajusnau commented Sep 10, 2025

Description of Changes

  1. Improve waypipe performance:
    • Skip using compression for all waypipe calls
      We are not running VMs in a bandwidth limited setup - no compression is preferred to reduce CPU resources and improve load times.
    • Force --no-gpu for all waypipe calls. We do not have render nodes anywhere other than guivm to make use of this waypipe feature.
      Waypipe docs explaining --no-gpu :

      Block protocols like wayland-drm and linux-dmabuf which require access to e.g. render nodes

    • Performance impact not yet measured but appvms feel like they're opening much faster :)
      Measuring the performance is a little tricky - there's no good way to programatically determine when an app window appears.
      We can try to get some precise-ish performance measurements if requested, otherwise I leave this up to the QA team.
  2. Improve trusted browser "open_normal" extension:
    • Added auto-updating with a workaround that should be removed after the next release (only affects rebuild-switching, clean installs have no need for it)
    • Added extension icon
    • The extension is now automatically pinned in the toolbar for easier access

Type of Change

  • New Feature
  • Bug Fix
  • Improvement / Refactor

References

https://gitlab.freedesktop.org/mstoeckl/waypipe/-/blob/master/waypipe.scd
https://peter.sh/experiments/chromium-command-line-switches/

Checklist

  • Clear summary in PR description
  • Detailed and meaningful commit message(s)
  • Commits are logically organized and squashed if appropriate
  • Contribution guidelines followed
  • Ghaf documentation updated with the commit - https://tiiuae.github.io/ghaf/
  • Author has run make-checks and it passes
  • All automatic GitHub Action checks pass - see actions
  • Author has added reviewers and removed PR draft status

Testing Instructions

Applicable Targets

  • Orin AGX aarch64
  • Orin NX aarch64
  • Lenovo X1 x86_64
  • Dell Latitude x86_64
  • System 76 x86_64

Installation Method

  • Requires full re-installation
  • Can be updated with nixos-rebuild ... switch
  • Other:

Test Steps To Verify:

  1. Boot into Ghaf
    • (Optional) Try opening any app vm that is known to use waypipe (business, comms apps)
    • (Optional) Measure the time it takes between the click to open the app and the app window appearing
    • (Optional) Verify load time improvement
  2. Verify Trusted Browser and Google Chrome open as they should with no regression in functionality
  3. Verify all comms apps open and function with no regression (Slack, Zoom. Element might still not open due to unrelated issues)
  4. Open Trusted Browser
  5. Verify Ghaf extension "Open in normal browser" icon is pinned in the toolbar
  6. Right click the extension and go to its' details page
  7. Verify the Extension has been updated from v1.0 -> v1.0.1
  8. Verify the extension works as before:
    • Navigate to youtube.com
    • Right click anywhere in the page and verify Extension button is visible
    • Click the extension button to open the page in normal Google Chrome browser
    • Verify Google Chrome opens at youtube.com
    • Go back to Trusted Browser youtube.com and click the extension icon
    • Verify Google Chrome opens at youtube.com

@kajusnau kajusnau self-assigned this Sep 10, 2025
@kajusnau kajusnau added the Needs Testing CI Team to pre-verify label Sep 11, 2025
@kajusnau kajusnau changed the title WIP: feat: improve waypipe performance, revert chrome session changes… feat: improve waypipe performance, adjust trusted browser Sep 11, 2025
@kajusnau kajusnau marked this pull request as ready for review September 11, 2025 07:34
- disabled compression and gpu protocols for waypipe connections
- disabled gpu on for all chrome and chromium appvms
- improved load times for appvms using waypipe

Signed-off-by: Kajus Naujokaitis <kajus.naujokaitis@unikie.com>
- enabled auto-updating the extension with version changes
- added extension icon
- pinned extension to toolbar by default
- bump ghafpkgs

Signed-off-by: Kajus Naujokaitis <kajus.naujokaitis@unikie.com>
@brianmcgillion brianmcgillion merged commit 01518ae into tiiuae:main Sep 12, 2025
27 of 28 checks passed
@kajusnau kajusnau deleted the chrome-follow-up branch October 7, 2025 06:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs Testing CI Team to pre-verify

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants