Desktop client (warp-desktop) with Wails v3
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Test (windows-latest) (push) Canceled after 0s
CI / Storage tests on PostgreSQL (push) Canceled after 0s
CI / Complement (federation off) (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
CI / Smoke test the binary (push) Canceled after 0s
CI / Admin panel (push) Canceled after 0s
CI / Web client (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Test (windows-latest) (push) Canceled after 0s
CI / Storage tests on PostgreSQL (push) Canceled after 0s
CI / Complement (federation off) (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
CI / Smoke test the binary (push) Canceled after 0s
CI / Admin panel (push) Canceled after 0s
CI / Web client (push) Canceled after 0s
apps/desktop is the web client in a native window. It embeds the same build warp-web does and serves it through the same Go package, so every screen is shared. Unlike warp-web it proxies nothing: the client calls the homeserver directly, and the CSP allows the homeserver plus any https: and wss: origin for the call backend. - First run asks for the homeserver: a server name or address, with .well-known discovery and a /versions check; File > Change homeserver asks again. Signed-in sessions keep their own base URL, so a change never sends one server's token to another. - Links to other sites open in the system browser (/_desktop/links.js, added to index.html); only http, https and mailto are opened. - One instance at a time, since sessions and keys live in the webview's storage. - Dev builds open the DevTools Protocol on Windows when WARP_DESKTOP_REMOTE_DEBUGGING_PORT is set, for scripted testing. - Packaging: icon, version info and manifest in the Windows exe, a macOS .app with camera and microphone descriptions, Linux packages via nfpm. Make targets: desktop, desktop-run, desktop-test, desktop-resources, desktop-macos, desktop-linux. Web client: host and client move out of internal/ so the desktop app can import them, and host gains AnyCallOrigin. The Dockerfile, .dockerignore and the vite output path follow the move. Pinned to Wails v3.0.0-beta.27. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
76dfc98a86
commit
b6bf3ce741
38 files changed
+1616
-17
No files matched your search
@@ -0,0 +1,45 @@
|
||||
# Linux packages (deb, rpm, Arch) for warp-desktop, built by
|
||||
# `make desktop-linux` with `wails3 tool package`, which runs nfpm
|
||||
# (https://nfpm.goreleaser.com). Paths are relative to apps/desktop.
|
||||
# VERSION, GOARCH and MAINTAINER come from the Makefile.
|
||||
|
||||
name: warp-desktop
|
||||
arch: ${GOARCH}
|
||||
platform: linux
|
||||
version: ${VERSION}
|
||||
release: "1"
|
||||
section: net
|
||||
priority: optional
|
||||
maintainer: ${MAINTAINER}
|
||||
description: |
|
||||
Warp, a Matrix client: the Warp web client in a native window.
|
||||
|
||||
contents:
|
||||
- src: ../../bin/warp-desktop
|
||||
dst: /usr/bin/warp-desktop
|
||||
file_info:
|
||||
mode: 0755
|
||||
- src: ./build/linux/warp-desktop.desktop
|
||||
dst: /usr/share/applications/warp-desktop.desktop
|
||||
- src: ./cmd/warp-desktop/appicon.png
|
||||
dst: /usr/share/icons/hicolor/256x256/apps/warp-desktop.png
|
||||
- src: ./build/appicon.png
|
||||
dst: /usr/share/icons/hicolor/1024x1024/apps/warp-desktop.png
|
||||
|
||||
scripts:
|
||||
postinstall: ./build/linux/postinstall.sh
|
||||
|
||||
# Wails v3 builds against GTK 4 and WebKitGTK 6.0 by default
|
||||
# (Ubuntu 24.04+, Debian 13+, Fedora 40+).
|
||||
depends:
|
||||
- libgtk-4-1
|
||||
- libwebkitgtk-6.0-4
|
||||
overrides:
|
||||
rpm:
|
||||
depends:
|
||||
- gtk4
|
||||
- webkitgtk6.0
|
||||
archlinux:
|
||||
depends:
|
||||
- gtk4
|
||||
- webkitgtk-6.0
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
# Make the menu entry and icon show up without logging out.
|
||||
if command -v update-desktop-database >/dev/null 2>&1; then
|
||||
update-desktop-database -q /usr/share/applications || true
|
||||
fi
|
||||
if command -v gtk-update-icon-cache >/dev/null 2>&1; then
|
||||
gtk-update-icon-cache -q -t /usr/share/icons/hicolor || true
|
||||
fi
|
||||
exit 0
|
||||
@@ -0,0 +1,9 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Type=Application
|
||||
Name=Warp
|
||||
Comment=A Matrix client
|
||||
Exec=/usr/bin/warp-desktop
|
||||
Icon=warp-desktop
|
||||
Terminal=false
|
||||
Categories=Network;InstantMessaging;Chat;
|
||||
Reference in new issue
Block a user