From 83fa5622aa670b3efbde4f38056e5755d6a151f6 Mon Sep 17 00:00:00 2001
From: Hadi <112569860+anotherhadi@users.noreply.github.com>
Date: Sun, 23 Aug 2026 18:28:32 +0200
Subject: [PATCH] Update docs
Signed-off-by: Hadi <112569860+anotherhadi@users.noreply.github.com>
---
README.md | 26 +++++++++++++++-----------
ui/actionmodal.go | 2 +-
ui/delegate.go | 4 ----
3 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/README.md b/README.md
index 411e925..8da0803 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,19 @@
```
-▖▖▄▖▄ ▄▖ ▌ ▄▖▖▖▄▖
-▌▌▚ ▙▘▌ ▌▌▀▌▛▘▛▌ ▐ ▌▌▐
-▙▌▄▌▙▘▙▌▙▌█▌▌ ▙▌ ▐ ▙▌▟▖
+ _ _ ____ ____ ____ _ _____ _ _ ___
+| | | / ___|| __ ) / ___|_ _ __ _ _ __ __| | |_ _| | | |_ _|
+| | | \___ \| _ \| | _| | | |/ _` | '__/ _` | | | | | | || |
+| |_| |___) | |_) | |_| | |_| | (_| | | | (_| | | | | |_| || |
+ \___/|____/|____/ \____|\__,_|\__,_|_| \__,_| |_| \___/|___|
```
-[](go.mod)
-[](https://github.com/anotherhadi/usbguard-tui/releases)
-[](LICENSE)
-[](https://goreportcard.com/report/github.com/anotherhadi/usbguard-tui)
+
+
+
+[](https://ko-fi.com/anotherhadi)
# USBGuard TUI
-A terminal UI for managing USB devices via [usbguard](https://usbguard.github.io/).
+> A terminal UI for managing USB devices via [usbguard](https://usbguard.github.io/).
USBGuard is a software framework for implementing a USB device authorization policy (allowlisting/blocklisting). It protects your system against rogue USB devices by scanning them and checking their parameters against a set of rules.
@@ -21,6 +23,8 @@ Built with [bubbletea](https://github.com/charmbracelet/bubbletea) & Golang!
Colors and styles can be customized using [ilovetui](https://github.com/anotherhadi/ilovetui), which applies theme changes across all compatible TUI applications at once.
+> This project is NOT affiliated with, endorsed by, or connected to "Red Hat, Inc" in any way. It is an unofficial, community-driven tool.
+
## Features
- List all connected USB devices with their current status
@@ -28,7 +32,7 @@ Colors and styles can be customized using [ilovetui](https://github.com/anotherh
- Action popup for quick device management
- Filter devices by name with `/`
- Auto-refresh
-- Keyboard shortcuts for all actions (`a`/`A`, `b`/`B`, `e`/`E`, ...)
+- Keyboard shortcuts for all actions (`a`/`A`, `b`/`B`, `e`/`E`, ...) & Mouse support
## Requirements
@@ -52,7 +56,7 @@ go install github.com/anotherhadi/usbguard-tui@latest
```sh
git clone https://github.com/anotherhadi/usbguard-tui
cd usbguard-tui
-go build -o usbguard-tui .
+go build -o usbguard-tui ./cmd/usbguard-tui
```
@@ -95,4 +99,4 @@ The device list refreshes automatically every 2 seconds.
github |
gitlab (mirror) |
gitea (mirror)
-
diff --git a/ui/actionmodal.go b/ui/actionmodal.go
index 3336910..428f389 100644
--- a/ui/actionmodal.go
+++ b/ui/actionmodal.go
@@ -93,7 +93,7 @@ func (a actionModal) View() tea.View {
hintStyle := lipgloss.NewStyle().Foreground(style.S.Muted)
parts := []string{a.list.View(), ""}
if a.rulesManaged {
- parts = append(parts, hintStyle.Render(fmt.Sprintf("[NixOS: perm rules queued — press %s to copy]", listKeys.CopyRules.Help().Key)))
+ parts = append(parts, hintStyle.Render(fmt.Sprintf("[NixOS: perm rules queued, press %s to copy]", listKeys.CopyRules.Help().Key)))
}
parts = append(parts, hintStyle.Render("↑↓ navigate enter confirm esc cancel"))
return tea.NewView(strings.Join(parts, "\n"))
diff --git a/ui/delegate.go b/ui/delegate.go
index e0bc694..2c5059a 100644
--- a/ui/delegate.go
+++ b/ui/delegate.go
@@ -14,8 +14,6 @@ import (
"github.com/anotherhadi/usbguard-tui/internal/guard"
)
-// deviceZoneID returns the bubblezone marker ID used to detect mouse clicks
-// on a given device's row in the list.
func deviceZoneID(dev guard.Device) string {
return "device-" + strconv.Itoa(dev.ID)
}
@@ -97,8 +95,6 @@ func (d actionDelegate) Height() int { return 1 }
func (d actionDelegate) Spacing() int { return 0 }
func (d actionDelegate) Update(_ tea.Msg, _ *list.Model) tea.Cmd { return nil }
-// actionZoneID returns the bubblezone marker ID used to detect mouse clicks
-// on a given row of the action modal's list.
func actionZoneID(index int) string {
return "action-" + strconv.Itoa(index)
}