Files
Warp/apps/desktop/build/linux/nfpm.yaml
T
tajniak81andClaude Opus 5.5 b6bf3ce741
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
Desktop client (warp-desktop) with Wails v3
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>
2026-10-18 21:43:54 +02:00

46 lines
1.2 KiB
YAML

# 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