No description
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| example | ||
| scripts | ||
| src | ||
| .gitignore | ||
| Cargo.toml | ||
| codec.wav | ||
| config.toml | ||
| README.md | ||
Tricorder - System Diagnostic Tool
curl -sSL https://git.karner.dev/jdkarner/tricorder/raw/branch/main/scripts/release.sh | bash
A portable Rust GUI application for Linux system diagnostics.
Features
- System Information: OS, CPU, Memory (with SKU/part numbers), GPU
- WiFi Detection: Triple-redundant detection (iw, lspci, sysfs)
- Storage Devices: All drives with partitions
- Audio Testing: Microphone test with live feedback
- JSON Export: Copy system info to clipboard
- Portable: Single 5.8MB binary
Quick Start
Download and Run
# Download
curl -sSL https://your-server.com/tricorder -o tricorder
chmod +x tricorder
# Run
./tricorder
# With sudo for full memory details
sudo ./tricorder
Build from Source
cargo build --release
./target/release/tricorder
Requirements
- Linux with GUI (X11/Wayland)
- Optional:
dmidecode,lspci,iw,alsa-utils(graceful degradation)
Usage
- Launch application
- Wait for automatic scan (5-10 seconds)
- Review information in organized panels
- Test microphones with 🎤 button
- Click "Copy JSON" to export data
- Use "Refresh" to rescan
Theme Customization
Tricorder supports custom themes via a config.toml file. Place it in one of these locations:
./config.toml(same directory as tricorder)./tricorder.toml(same directory as tricorder)~/.config/tricorder/config.toml(user config directory)
Configuration Options
[theme]
# Colors (hex format: #RRGGBB or #RRGGBBAA)
primary_color = "#4A90E2"
background_color = "#1E1E1E"
panel_color = "#2D2D2D"
text_color = "#E0E0E0"
heading_color = "#FFFFFF"
success_color = "#4CAF50"
warning_color = "#FFC107"
error_color = "#F44336"
info_color = "#2196F3"
button_color = "#3A7BC8"
button_hover_color = "#5AA3E8"
border_color = "#404040"
selection_color = "#4A90E2"
[font_sizes]
heading = 24.0
subheading = 18.0
body = 14.0
small = 12.0
monospace = 13.0
[spacing]
section_spacing = 10.0
item_spacing = 5.0
group_padding = 8.0
button_padding = 6.0
[window]
default_width = 1200.0
default_height = 800.0
min_width = 800.0
min_height = 600.0
Example: Light Theme
[theme]
primary_color = "#0066CC"
background_color = "#FFFFFF"
panel_color = "#F5F5F5"
text_color = "#333333"
heading_color = "#000000"
button_color = "#0066CC"
button_hover_color = "#0088FF"
Example: Larger Text
[font_sizes]
heading = 28.0
subheading = 22.0
body = 16.0
Layout
┌─────────────────────────────────────────┐
│ OS Info │ CPU Info │
├────────────────┼────────────────────────┤
│ Memory Modules │ GPU │
│ (with SKUs) │ WiFi Status │
│ │ Storage Devices │
├────────────────┴────────────────────────┤
│ Audio Devices (with test buttons) │
└──────────────────────────────────────────┘
Fixed Issues
- ✅ Memory SKU detection now 100% reliable
- ✅ WiFi detection uses 3 methods (no false negatives)
- ✅ All physical drives detected (filters out zram/loop)
- ✅ Audio device testing integrated
Development
# Test detection
./test-detection.sh
# Build release
cargo build --release
# Deploy
./deploy.sh
Legacy Scripts
Old bash scripts moved to legacy/ directory.
License
[Your License]