desktop

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 11, 2026 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Overview

Package desktop is Exhale installed as a desktop app (ADR 0029, 0030). Opening the app makes sure the server runs in the background, as the person who opened it and from the next login on, then shows the web UI in a window of its own (package window), or in the browser where there is none.

Index

Constants

View Source
const ID = "io.github.akamachinecode.exhale"

ID names Exhale to the operating system: the bundle identifier of the macOS app and the label of its launchd agent (as in deploy/launchd).

View Source
const VersionHeader = "X-Exhale-Version"

VersionHeader carries the server's version in the answer of /healthz, so an upgraded app can tell that an older server is still running.

Variables

This section is empty.

Functions

func DefaultLogFile

func DefaultLogFile(dataDir string) string

DefaultLogFile is the log of a server started without a terminal.

Types

type App

type App struct {
	Exe     string // this program, with symlinks resolved
	Listen  string // address the server listens on, as given to serve
	Version string // version of this program
	DataDir string // the server's data directory
	LogFile string // where a server started from here writes its log
	// Login is set in the desktop builds (Exhale.app, Exhale.exe): they
	// also make Exhale start when the person logs in.
	Login bool
	// Window shows the web UI in a window of its own. It is set in builds
	// with the desktop tag; without it, a window program next to this one
	// (exhale-window in the Linux packages) is used, or else the browser.
	Window func(url string) error
	// Browser opens the browser even where there is a window.
	Browser bool
}

App is this program, about to be opened.

func (App) Open

func (a App) Open(ctx context.Context) error

Open shows the web UI, first starting the server in the background when it does not answer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL