detached 0acf729

docs: add pre-built binaries section to README

Highlight availability of pre-built binaries in releases:
- Add 'Pre-built Binaries (Recommended)' section in Quick Start
- Reorganize Install section to feature binaries first
- Include runtime dependencies for both binary and source builds
- Link to releases page for easy access

Makes it clearer that users don't need to build from source.
commit
0acf72918d2b8b32cca6fc23f712cfe852bf17fd
author
bnema · · 2025-11-18 18:13 UTC
parent
0da30ba
signature
GPG Unverified2B82207D370127A0 The key is unknown
1 file · +67 -1
M README.md +67 -1
@@ -95,6 +95,20 @@ Early development with regular releases. Core features work well for daily use b
9595 All zoom changes are automatically persisted per-domain and restored on next visit.
9696
9797 ## Quick Start
98+
99+**Option 1: Use Pre-built Binaries (Recommended)**
100+
101+Download the latest release from the [releases page](https://github.com/bnema/dumber/releases):
102+```bash
103+wget https://github.com/bnema/dumber/releases/latest/download/dumber_<version>_linux_x86_64.tar.gz
104+tar -xzf dumber_<version>_linux_x86_64.tar.gz
105+sudo install -m 755 dumber /usr/local/bin/
106+```
107+
108+Then install runtime dependencies (see [Install](#install) section for details).
109+
110+**Option 2: Build From Source**
111+
98112 Prerequisites:
99113 - Go 1.25+
100114 - Node.js 20+ and npm (for building the embedded TypeScript frontend)
@@ -115,8 +129,60 @@ Development:
115129 - `make test` runs tests; `make lint` runs golangci‑lint
116130
117131 ## Install
118-**Note**: `go install` will not work for this project because the frontend assets must be built first and embedded into the binary. Use the build commands instead:
119132
133+### Pre-built Binaries (Recommended)
134+
135+Pre-built binaries are available for Linux (x86_64/amd64) in the [releases page](https://github.com/bnema/dumber/releases). These include all frontend assets and are ready to use:
136+
137+```bash
138+# Download and install latest release
139+wget https://github.com/bnema/dumber/releases/latest/download/dumber_<version>_linux_x86_64.tar.gz
140+tar -xzf dumber_<version>_linux_x86_64.tar.gz
141+sudo install -m 755 dumber /usr/local/bin/
142+```
143+
144+Replace `<version>` with the desired version (e.g., `0.14.1`), or use the direct link from the releases page.
145+
146+**Dependencies** (required for both pre-built binaries and source builds):
147+
148+**Arch Linux:**
149+```bash
150+# Core WebKitGTK 6.0 and GTK4
151+sudo pacman -S webkitgtk-6.0 gtk4
152+
153+# GStreamer for media playback
154+sudo pacman -S gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-plugin-pipewire pipewire pipewire-pulse
155+
156+# Hardware acceleration (choose based on your GPU)
157+# AMD: sudo pacman -S gstreamer-vaapi mesa
158+# NVIDIA: sudo pacman -S gstreamer-vaapi libva-nvidia-driver
159+# Intel: sudo pacman -S gstreamer-vaapi libva-intel-driver intel-media-driver
160+```
161+
162+**Debian/Ubuntu:**
163+```bash
164+# Core WebKitGTK and GTK4
165+sudo apt install libwebkitgtk-6.0-4 libgtk-4-1
166+
167+# GStreamer for media playback
168+sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-pipewire
169+
170+# Hardware acceleration
171+sudo apt install gstreamer1.0-vaapi va-driver-all
172+```
173+
174+### Build From Source
175+
176+**Note**: `go install` will not work for this project because the frontend assets must be built first and embedded into the binary.
177+
178+**Prerequisites:**
179+- Go 1.25+
180+- Node.js 20+ and npm (for building the embedded TypeScript frontend)
181+- WebKitGTK 6 and GTK4 dev packages:
182+ - Debian/Ubuntu: `libwebkitgtk-6.0-dev libgtk-4-dev build-essential`
183+ - Arch: `webkitgtk-6.0 gtk4 base-devel`
184+
185+**Build options:**
120186 - GUI build (default, recommended):
121187 - Clone the repo and run `make build` (builds frontend first, then Go with GUI support)
122188 - The resulting `./dist/dumber` binary includes the native GUI window
@@ -95,6 +95,20 @@ Early development with regular releases. Core features work well for daily use b
95 All zoom changes are automatically persisted per-domain and restored on next visit.95 All zoom changes are automatically persisted per-domain and restored on next visit.
96 96
97 ## Quick Start97 ## Quick Start
98+
99+**Option 1: Use Pre-built Binaries (Recommended)**
100+
101+Download the latest release from the [releases page](https://github.com/bnema/dumber/releases):
102+```bash
103+wget https://github.com/bnema/dumber/releases/latest/download/dumber_<version>_linux_x86_64.tar.gz
104+tar -xzf dumber_<version>_linux_x86_64.tar.gz
105+sudo install -m 755 dumber /usr/local/bin/
106+```
107+
108+Then install runtime dependencies (see [Install](#install) section for details).
109+
110+**Option 2: Build From Source**
111+
98 Prerequisites:112 Prerequisites:
99 - Go 1.25+113 - Go 1.25+
100 - Node.js 20+ and npm (for building the embedded TypeScript frontend)114 - Node.js 20+ and npm (for building the embedded TypeScript frontend)
@@ -115,8 +129,60 @@ Development:
115 - `make test` runs tests; `make lint` runs golangci‑lint129 - `make test` runs tests; `make lint` runs golangci‑lint
116 130
117 ## Install131 ## Install
118-**Note**: `go install` will not work for this project because the frontend assets must be built first and embedded into the binary. Use the build commands instead:
119 132
133+### Pre-built Binaries (Recommended)
134+
135+Pre-built binaries are available for Linux (x86_64/amd64) in the [releases page](https://github.com/bnema/dumber/releases). These include all frontend assets and are ready to use:
136+
137+```bash
138+# Download and install latest release
139+wget https://github.com/bnema/dumber/releases/latest/download/dumber_<version>_linux_x86_64.tar.gz
140+tar -xzf dumber_<version>_linux_x86_64.tar.gz
141+sudo install -m 755 dumber /usr/local/bin/
142+```
143+
144+Replace `<version>` with the desired version (e.g., `0.14.1`), or use the direct link from the releases page.
145+
146+**Dependencies** (required for both pre-built binaries and source builds):
147+
148+**Arch Linux:**
149+```bash
150+# Core WebKitGTK 6.0 and GTK4
151+sudo pacman -S webkitgtk-6.0 gtk4
152+
153+# GStreamer for media playback
154+sudo pacman -S gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-plugin-pipewire pipewire pipewire-pulse
155+
156+# Hardware acceleration (choose based on your GPU)
157+# AMD: sudo pacman -S gstreamer-vaapi mesa
158+# NVIDIA: sudo pacman -S gstreamer-vaapi libva-nvidia-driver
159+# Intel: sudo pacman -S gstreamer-vaapi libva-intel-driver intel-media-driver
160+```
161+
162+**Debian/Ubuntu:**
163+```bash
164+# Core WebKitGTK and GTK4
165+sudo apt install libwebkitgtk-6.0-4 libgtk-4-1
166+
167+# GStreamer for media playback
168+sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-pipewire
169+
170+# Hardware acceleration
171+sudo apt install gstreamer1.0-vaapi va-driver-all
172+```
173+
174+### Build From Source
175+
176+**Note**: `go install` will not work for this project because the frontend assets must be built first and embedded into the binary.
177+
178+**Prerequisites:**
179+- Go 1.25+
180+- Node.js 20+ and npm (for building the embedded TypeScript frontend)
181+- WebKitGTK 6 and GTK4 dev packages:
182+ - Debian/Ubuntu: `libwebkitgtk-6.0-dev libgtk-4-dev build-essential`
183+ - Arch: `webkitgtk-6.0 gtk4 base-devel`
184+
185+**Build options:**
120 - GUI build (default, recommended):186 - GUI build (default, recommended):
121 - Clone the repo and run `make build` (builds frontend first, then Go with GUI support)187 - Clone the repo and run `make build` (builds frontend first, then Go with GUI support)
122 - The resulting `./dist/dumber` binary includes the native GUI window188 - The resulting `./dist/dumber` binary includes the native GUI window

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close