Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 15 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ errand -- make test

## Install

Install Errand on both machines. It supports macOS and Linux. A Windows PC can
be a runner too, reached over Tailscale; see [Windows runner (experimental)](docs/WINDOWS.md).
Install Errand on both machines. It supports macOS and Linux.

With [Homebrew](https://brew.sh):

Expand All @@ -30,12 +29,26 @@ brew install lydakis/errand/errand
```

Or download a binary from [GitHub Releases](https://github.com/lydakis/errand/releases).

To build from source, use the Go version in [go.mod](go.mod):

```sh
go build -trimpath -o errand ./cmd/errand
```

**Windows (experimental, runner only).** A Windows PC can run jobs sent from
a Mac or Linux machine over Tailscale. It can't send jobs yet. With
[Scoop](https://scoop.sh):

```powershell
scoop bucket add errand https://github.com/lydakis/scoop-errand
scoop install errand
errand setup
```

See [Windows runner (experimental)](docs/WINDOWS.md) for what works and what
doesn't yet.

## Quickstart

The machine that runs your commands is the **runner**. For this walkthrough,
Expand Down
4 changes: 2 additions & 2 deletions docs/RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
The release pipeline builds macOS, Linux and Windows binaries for amd64 and arm64,
a source archive, SHA-256 checksums, and a Homebrew formula. It creates a
**draft** GitHub release after the same macOS/Linux checks used for pull
requests pass. Publishing a stable release then triggers a validated Homebrew
tap update automatically.
requests pass. Publishing a stable release then triggers validated Homebrew
tap and [Scoop bucket](#scoop-bucket) updates automatically.

## Local rehearsal

Expand Down
12 changes: 12 additions & 0 deletions docs/WINDOWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ A Windows PC can be an Errand runner: send jobs to it from a Mac or Linux
machine over Tailscale. Running the Errand client on Windows is not supported
yet.

> [!WARNING]
> Windows support is experimental. It is tested in CI on Windows Server 2025
> (amd64) and by hand on Windows 11 (arm64), but expect rough edges, and
> expect behavior to change between releases. Please report problems in
> [GitHub Issues](https://github.com/lydakis/errand/issues).

## Requirements

- Windows 10 version 1803 or later, or Windows 11, on amd64 or arm64.
Expand Down Expand Up @@ -94,3 +100,9 @@ again. Programs are found the way Windows finds them, with
- Graceful Ctrl-C (a console break before the hard stop).
- Recovering jobs that were running when the runner stopped.
- Running while nobody is signed in.

## Known issues

- If the runner stops in the middle of a job, the client keeps waiting instead
of reporting the failure. Press Ctrl-C, then check the runner with
`errand peers`.
Loading