SShortSingh.
Back to feed

Gryphana streams Linux desktop apps into browser tabs via WebRTC

0
·2 views

Gryphana, a browser-based development platform, has built a way to show graphical desktop applications running in its containers inside a browser tab. The container runs a virtual X server, and FFmpeg encodes the screen as H.264 and sends it to the browser over WebRTC through LiveKit. Mouse and keyboard input travel back over a LiveKit data channel and are injected into the X server, with mouse moves sent unreliably and clicks and keys sent reliably. The team runs the full GNOME desktop this way on Ubuntu 24.04 using Sysbox and systemd, but GNOME 50 on Ubuntu 26.04 uses Wayland, which blocks this X11-based approach and requires a different screen-sharing setup.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Free vs Paid Next.js SaaS Boilerplates in 2026: What Free Kits Include

Jake Mcdonald, founder of the paid starter ShipEmber, compares free open-source Next.js SaaS boilerplates with commercial kits as of November 2, 2026. He notes that free MIT-licensed starters are often a good first step but typically omit production-ready OAuth, trustworthy webhook handling, rebrand-ready marketing pages, and support. The piece reviews nextjs/saas-starter, create-t3-app, and ixartz/SaaS-Boilerplate, detailing what each includes, such as Stripe checkout or Clerk auth. It concludes that developers still pay in time to fill those gaps, which may or may not be worthwhile depending on their needs.

0
ProgrammingDEV Community ·

High Interest Rates and Record Global Debt Pose Risks to the AI Boom

Analyst Ruchir Sharma of Rockefeller International argues that the artificial intelligence boom is subject to the same financial pressures that have driven past stock market bubbles. Historically high global debt levels are forcing governments and technology firms to compete for limited capital, tightening market liquidity. Tech giants are increasingly borrowing to fund costly infrastructure such as data centers, with AI-related debt issuance projected to exceed $600 billion, roughly tenfold the 2024 level. Sharma notes that rising borrowing costs and higher investor return demands could hit weaker companies hardest, as past crises typically began in vulnerable sectors before spreading. Meanwhile, the AI sector's gains are not lifting the wider economy, which could limit growth if customers lack the financial strength to use AI services.

0
ProgrammingDEV Community ·

Exporting Daily Google Ads Cost by Country to CSV Using Python

A short guide explains how to automatically pull a daily Google Ads report of cost, clicks and conversions broken down by country, instead of exporting it manually. It uses the official Google Ads Python client library, with credentials stored in a config file outside the code repository, and a single query against the geographic view. The script converts cost from micros to currency units and writes the results to a dated CSV file. The article notes that country IDs must be mapped to names and that multi-currency or mixed time zone accounts need extra handling. It also recommends scheduling the script daily and adding alerts for suspicious cost values.

0
ProgrammingDEV Community ·

Generating Localised Open Graph Images per Language at Build Time

Shared multilingual pages often display English preview images on platforms like LinkedIn, WhatsApp and Slack, which can look careless and reduce click-through. The article proposes creating localised Open Graph images at build time using a single SVG template with placeholders for translated titles and taglines, rendered to 1200×630 PNGs per locale. It notes that scripts such as Chinese, Japanese, Korean, Arabic and Thai require explicit Noto fonts on the build machine to avoid empty boxes, and that right-to-left languages may need mirrored layouts. Long German titles and unspaced CJK text call for adjusted font sizes and line breaks, and each locale page should reference its own image alongside consistent hreflang and canonical tags. Because social platforms cache previews aggressively, the author suggests adding content hashes to filenames when titles change and refreshing previews with each platform's debugging tool.