feat: linux appimage build with docker, egl fallback, and webkitgtk fixes

This commit is contained in:
Your Name
2026-02-27 13:25:53 +02:00
parent 507fa33be8
commit 130d0e2ca6
19 changed files with 1260 additions and 86 deletions

View File

@@ -181,7 +181,52 @@ Accessibility is not a feature. It is a baseline.
---
## 🚀 Getting started
## 📦 Downloads
Grab the latest release from the [releases page](https://git.lashman.live/lashman/zeroclock/releases).
| Platform | File | Notes |
|----------|------|-------|
| Windows x64 | `zeroclock-v*.exe` | Portable executable, no installer needed |
| Linux x86_64 | `ZeroClock-x86_64.AppImage` | Portable AppImage, no installation needed |
### Linux AppImage
Download, make executable, and run:
```bash
chmod +x ZeroClock-x86_64.AppImage
./ZeroClock-x86_64.AppImage
```
- Built on Ubuntu 24.04 (glibc 2.39) - compatible with most distros from mid-2024 onwards
- Portable - data is stored next to the AppImage file
- Automatically installs a `.desktop` file and icon on first run
- Wayland and X11 supported
**Troubleshooting:**
If you see a black or blank window, try:
```bash
WEBKIT_DISABLE_DMABUF_RENDERER=0 ./ZeroClock-x86_64.AppImage
```
If that does not help:
```bash
WEBKIT_DISABLE_COMPOSITING_MODE=1 ./ZeroClock-x86_64.AppImage
```
NixOS users should run via nixGL:
```bash
nixGL appimage-run ./ZeroClock-x86_64.AppImage
```
---
## 🚀 Building from source
### Prerequisites
@@ -193,7 +238,7 @@ Accessibility is not a feature. It is a baseline.
```bash
# Clone the repository
git clone https://github.com/your-username/zeroclock.git
git clone https://git.lashman.live/lashman/zeroclock.git
cd zeroclock
# Install frontend dependencies
@@ -206,6 +251,16 @@ npx tauri dev
npx tauri build
```
### Building the Linux AppImage
To build a portable AppImage with broad compatibility, use the Docker build script:
```bash
./build-appimage.sh
```
This builds inside an Ubuntu 24.04 container and outputs to `dist-appimage/`. Requires Docker.
The database is created automatically on first launch in the same directory as the executable.
---