docs: translate README to English

This commit is contained in:
2026-05-27 03:26:43 +02:00
parent a244b89f64
commit 86a42d8689

137
README.md
View File

@@ -14,90 +14,91 @@ cd LazyUpdateManager
./install.sh
```
That's it. After installation you have:
After installation:
| Was? | Befehl |
|------|--------|
| Desktop-App starten | `lazy-update-manager gui` (oder aus Wofi/Rofi starten) |
| Nur Web-UI | `lazy-update-manager gui web` |
| Updates prüfen | `lazy-update-manager check` |
| Status anzeigen | `lazy-update-manager status` |
| Interaktiv aktualisieren | `lazy-update-manager update` |
| Version prüfen | `lazy-update-manager version` |
| Command | Action |
|---------|--------|
| `lazy-update-manager gui` | Open the desktop app (or launch from app menu) |
| `lazy-update-manager gui web` | Open the web UI in your browser |
| `lazy-update-manager check` | Check for updates |
| `lazy-update-manager status` | Show available updates |
| `lazy-update-manager update` | Run interactive full system update |
| `lazy-update-manager version` | Print installed version |
---
## Features
- **Automatische Updates** prüft offizielle Repos (`checkupdates` / `pacman -Qu`) und AUR (`paru` / `yay`)
- **Wöchentliche Erinnerung** per `notify-send` oder `hyprctl notify`, maximal einmal pro Woche
- **Web-Oberfläche** browsergestützte UI für Update-Suche, Filter, Pakete ignorieren, Systemstatus
- **Desktop-App** Electron-Wrapper für native Fenster-Integration
- **systemd-Timer** prüft alle 2 Stunden, erinnert wöchentlich
- **Einstellungen** Terminal, Sprache (DE/EN), Auto-Refresh, Ignorierte Pakete, AUR an/aus
- **Selektive Installation** einzelne Pakete gezielt aktualisieren
- **Automatic updates** checks official repos (`checkupdates` / `pacman -Qu`) and AUR (`paru` / `yay`)
- **Weekly reminder** desktop notification via `notify-send` or `hyprctl notify`, at most once per week
- **Web UI** browser-based interface for searching, filtering, ignoring packages, and system status
- **Desktop app** Electron wrapper for native window integration
- **systemd timer** checks every 2 hours, reminds weekly
- **Settings** terminal, language (DE/EN), auto-refresh, ignored packages, AUR toggle
- **Selective installs** update individual packages when needed
---
## GUI Web & Desktop
Die GUI bietet dir:
The GUI lets you:
| Funktion | Beschreibung |
|----------|-------------|
| 🔄 Refresh | Update-Liste manuell oder automatisch aktualisieren |
| 🔍 Suche & Filter | Pakete nach Quelle (Repo/AUR) filtern und durchsuchen |
| 📦 Selektive Installation | Nur bestimmte Pakete installieren |
| 🙈 Pakete ausblenden | Noise-Reduktion durch Ignorieren |
| 🖥️ Systemstatus | Pacman-Lock, Festplatte, Kernel, AUR-Helper, Terminal |
| ⚙️ Einstellungen | Timer, Terminal, Sprache, Auto-Refresh, Bestätigungen |
| Feature | Description |
|---------|-------------|
| 🔄 Refresh | Manual or automatic update list refresh |
| 🔍 Search & filter | Filter packages by source (repo/AUR) |
| 📦 Selective install | Install only selected packages |
| 🙈 Hide packages | Reduce noise by ignoring packages |
| 🖥️ System status | Pacman lock, disk space, kernel, AUR helper, terminal |
| ⚙️ Settings | Timer interval, terminal, language, auto-refresh, confirmation prompts |
```sh
# Web-UI im Browser öffnen
# Open web UI in browser
lazy-update-manager gui web
# Desktop-App (wenn prefer_electron aktiviert)
# Open desktop app (when prefer_electron is enabled)
lazy-update-manager gui
```
> Selektive Paket-Installs nutzen `pacman -S --needed` oder den AUR-Helper mit `-S --needed`.
> Full system updates sind auf Arch der sicherere Weg.
> Selective installs use `pacman -S --needed` or the AUR helper with `-S --needed`.
> Full system updates are the safer default on Arch partial upgrades can cause dependency issues.
---
## Installation
### Mit install.sh (empfohlen)
### With install.sh (recommended)
```sh
./install.sh
```
- Prüft Abhängigkeiten (Go, Node.js, npm)
- Installiert npm-Pakete (Electron)
- Baut Go-Backend
- Kopiert Binary nach `~/.local/bin/`
- Legt Launcher `lazy-update-manager-electron` an
- Installiert Desktop-Eintrag (für Wofi/Rofi)
- Aktiviert `prefer_electron` in der Config
- Installiert und aktiviert systemd-Timer
What it does:
- Checks dependencies (Go, Node.js, npm)
- Installs npm packages (Electron)
- Builds the Go backend
- Copies the binary to `~/.local/bin/`
- Creates the `lazy-update-manager-electron` launcher
- Installs the desktop entry (for app menus / launchers)
- Enables `prefer_electron` in the config
- Installs and activates the systemd timer
### Manuell mit make
### With make
```sh
make build # Nur Go-Backend bauen
make install # Binary + Desktop + systemd installieren
make desktop # Electron-App im Dev-Modus starten
make desktop-dist # Distribution bauen (AppImage, Pacman)
make build # Build Go backend only
make install # Install binary + desktop entry + systemd
make desktop # Run Electron app in dev mode
make desktop-dist # Build distribution packages (AppImage, Pacman)
```
### Electron-Distribution bauen
### Build Electron distribution
```sh
./install.sh electron-dist
```
### Aktualisieren
### Update
```sh
git pull --ff-only
@@ -106,41 +107,41 @@ git pull --ff-only
---
## Anforderungen
## Requirements
| Paket | Hinweis |
|-------|---------|
| Package | Notes |
|---------|-------|
| Arch Linux | |
| Go ≥ 1.22 | Zum Bauen |
| `pacman-contrib` | Empfohlen für `checkupdates` |
| `paru` / `yay` | Optional für AUR-Updates |
| `libnotify` | Optional für `notify-send` |
| Node.js + npm | Optional für Electron-Desktop-App |
| Go ≥ 1.22 | Required to build |
| `pacman-contrib` | Recommended, provides `checkupdates` |
| `paru` / `yay` | Optional for AUR updates |
| `libnotify` | Optional for `notify-send` |
| Node.js + npm | Optional for the Electron desktop app |
---
## Desktop-App Details
## Desktop App Details
Der **Launcher** `~/.local/bin/lazy-update-manager-electron` startet Electron mit dem richtigen Arbeitsverzeichnis. Er wird vom Desktop-Eintrag (Wofi/Rofi) und intern von `lazy-update-manager gui` verwendet.
The **launcher** `~/.local/bin/lazy-update-manager-electron` starts Electron with the correct working directory. It is used by the desktop entry (app menu / launcher) and internally by `lazy-update-manager gui`.
Suchreihenfolge für das Projektverzeichnis:
1. `$LAZY_UPDATE_MANAGER_DIR` (Env-Variable)
2. Aktuelles Arbeitsverzeichnis (wenn `electron/main.cjs` existiert)
3. Relativ zum Binary-Pfad
Project directory lookup order:
1. `$LAZY_UPDATE_MANAGER_DIR` (environment variable)
2. Current working directory (if `electron/main.cjs` exists)
3. Relative to the binary path
4. `$HOME/Projekte/LazyUpdateManager`
---
## Daten & Konfiguration
## Data & Configuration
| Pfad | Inhalt |
|------|--------|
| `~/.config/lazy-update-manager/config.json` | Einstellungen (Terminal, Sprache, AUR, Timer, …) |
| `~/.local/state/lazy-update-manager/state.json` | Letzter Check, letzte Erinnerung, Update-Count |
| `~/.local/share/applications/lazy-update-manager.desktop` | Desktop-Eintrag für Menüs/Wofi |
| `~/.config/systemd/user/lazy-update-manager.{service,timer}` | systemd-Timer |
| Path | Contents |
|------|----------|
| `~/.config/lazy-update-manager/config.json` | Settings (terminal, language, AUR, timer, …) |
| `~/.local/state/lazy-update-manager/state.json` | Last check, last reminder, update count |
| `~/.local/share/applications/lazy-update-manager.desktop` | Desktop entry for app menus |
| `~/.config/systemd/user/lazy-update-manager.{service,timer}` | systemd timer files |
### Timer-Status prüfen
### Check timer status
```sh
systemctl --user status lazy-update-manager.timer
@@ -149,6 +150,6 @@ systemctl --user list-timers lazy-update-manager.timer
---
## Lizenz
## License
MIT