Update README with logging and dialog UI

This commit is contained in:
Ed Nielsen 2026-03-18 19:18:22 +01:00
parent bc43a7c66c
commit b2840ab8b2

209
README.md
View file

@ -1,52 +1,27 @@
# 🖥️ Update Manager
📚 Table of Contents
Features
Update Manager UI
Quick Install
SSH Setup
Configuration
Usage
File Structure
How it works
Requirements
Future ideas
License
Features
Check updates on multiple hosts
Run updates remotely over SSH
Simple config files
No agents required
Works with existing SSH setup
Update Manager UI
Update Manager CLI UI
Simple CLI tool to check and manage updates across multiple Ubuntu systems over SSH.
Lightweight • No dependencies • Works over SSH
Built for Lanx environments lightweight, fast and no unnecessary dependencies.
---
## 📚 Table of Contents
* [Features](#features)
* [Update Manager UI](#update-manager-ui)
* [Quick Install](#quick-install)
* [SSH Setup](#ssh-setup-required)
* [Configuration](#configuration)
* [Usage](#usage)
* [File Structure](#file-structure)
* [How it works](#how-it-works)
* [Requirements](#requirements)
* [Future ideas](#future-ideas)
* [License](#license)
---
## Features
* Check updates on multiple hosts
* Run updates remotely over SSH
* Simple config files
* No agents required
* Works with existing SSH setup
---
## Update Manager UI
<p align="center">
<img src="update-manager-ui.png" width="50%" alt="Update Manager CLI UI">
</p>
<p align="center">
<em>Lightweight • No dependencies • Works over SSH</em>
</p>
---
## Quick Install
```bash
Quick Install
git clone https://github.com/YOUR-USER/update-manager.git
cd update-manager
@ -55,142 +30,70 @@ sudo cp update-manager.sh /opt/update-manager/
sudo chmod +x /opt/update-manager/update-manager.sh
sudo ln -s /opt/update-manager/update-manager.sh /usr/local/bin/update-manager
```
---
## SSH Setup (Required)
SSH Setup (Required)
Update Manager uses SSH to connect to your hosts.
You must have SSH key-based authentication set up (no password prompts).
### Generate SSH key (if not already done)
```bash
Generate SSH key (if not already done)
ssh-keygen -t ed25519
```
---
### Copy key to hosts
```bash
Copy key to hosts
ssh-copy-id user@192.168.1.10
ssh-copy-id user@192.168.1.20
ssh-copy-id user@192.168.1.30
```
---
### Test connection
```bash
Test connection
ssh user@192.168.1.10
```
You should be able to connect without entering a password.
You should be able to connect **without entering a password**.
⚠️ If SSH is not configured, the tool will fail or hang during execution.
> ⚠️ If SSH is not configured, the tool will fail or hang during execution.
---
## Configuration
### Copy config files
```bash
Configuration
Copy config files
cp update-manager.conf.example update-manager.conf
cp hosts.conf.example hosts.conf
```
---
### Edit hosts
```bash
Edit hosts
nano hosts.conf
```
Example:
```bash
# name ip user
server1 192.168.1.10 user
server2 192.168.1.20 user
server3 192.168.1.30 user
```
---
## Usage
### Check updates
```bash
Usage
Check updates
update-manager check
```
### Run updates
```bash
Run updates
update-manager update
```
---
## File Structure
```bash
File Structure
/opt/update-manager/
├── update-manager.sh
├── update-manager.conf
├── hosts.conf
```
---
## How it works
* Uses SSH to connect to each host
* Runs `apt` commands remotely
* No agents or services needed
* Designed for simple and efficient operations
---
## Requirements
* SSH access to all hosts
* SSH keys recommended (no password prompts)
* Ubuntu/Debian-based systems
---
## Future ideas
* 🔔 Notifications (ntfy / push alerts)
* 🌐 Web interface
* 📧 Email reporting
* 📜 Logging and audit trail
* 📊 Basic monitoring (status, last check, pending updates)
* 🧩 Plugin system (extensible modules)
* 🔐 Security & compliance checks
* 🤖 AI integration (Lanx AI)
---
## License
How it works
Uses SSH to connect to each host
Runs apt commands remotely
No agents or services needed
Designed for simple and efficient operations
Requirements
SSH access to all hosts
SSH keys recommended (no password prompts)
Ubuntu/Debian-based systems
Future ideas
🔔 Notifications (ntfy / push alerts)
🌐 Web interface
📧 Email reporting
📜 Logging and audit trail
📊 Basic monitoring (status, last check, pending updates)
🧩 Plugin system (extensible modules)
🔐 Security & compliance checks
🤖 AI integration (Lanx AI)
License
This project is licensed under the GNU GPL v3 License.
See the LICENSE file for full details.
---
## Author
Built with ❤️ for [Lanx](https://lanx.dk) by **NodeFox** 🦊
Author
Built with ❤️ for Lanx by NodeFox 🦊
Maintained by Eddie Nielsen
Feel free to contribute, suggest improvements or fork the project.