github devnullvoid/pvetui v1.0.0

latest releases: v1.0.14, v1.0.13, v1.0.12...
4 months ago

🚀 Release 1.0.0

Added

  • Snapshot Management: Added comprehensive snapshot management for VMs and containers
    • Full CRUD operations: create, delete, and rollback snapshots
    • Proper API integration with Proxmox snapshot endpoints
    • QEMU vs LXC support with VM state handling (QEMU only)
    • Theme-consistent UI with proper keyboard navigation
    • Escape key support for all dialogs and forms
    • Proper handling of 'current' state display as 'NOW'
    • Comprehensive error handling and user feedback
  • Connection Profile Management: Added comprehensive profile management system for multiple Proxmox connections
    • Profile switching, editing, and persistence with validation
    • Automatic migration from legacy single-connection config
  • Global Menu: Added comprehensive global menu with intuitive letter-based shortcuts
  • Quit Confirmation: Added consistent quit confirmation dialog for both hotkey and menu with VNC session awareness
  • Flexible Theming System: Added comprehensive theming support with automatic terminal emulator adaptation
    • Semantic Color Constants: Centralized color management with semantic meaning across themes
    • Terminal Theme Adaptation: Automatic adaptation to popular terminal themes (Dracula, Nord, Solarized, etc.)
    • Configuration Options: Theme settings in config file with use_terminal_colors and color_scheme options
    • Documentation: Comprehensive theming guide with setup instructions for popular terminal emulators
    • Zero Configuration: Works out of the box with most terminal emulators while maintaining semantic consistency
  • Display Node Storage Pools: Added node storage pools to node details panel
  • Added comprehensive custom theming support:
    • Users can override all semantic UI colors via the config file (theme.colors).
    • Supports hex codes, ANSI color names, and the special value default.
    • All themeable color keys are documented in docs/THEMING.md.
    • use_terminal_colors config option controls whether to use terminal palette or custom colors.
    • See docs/THEMING.md for full details and configuration examples.
  • Built-in themes: default, dracula, catppuccin-mocha, gruvbox, nord, rose-pine, tokyonight, solarized, kanagawa, everforest. Users can select a built-in theme with theme.name in the config and override any color.
  • Interactive Config Wizard and Editor:
    • Added a full-screen, interactive TUI wizard for creating and editing the main config file.
    • Automatically launches on first run if no config is found, or can be invoked at any time with --config-wizard.
    • Pre-fills fields from existing config, validates input, and provides clear error/success feedback.
    • Supports both password and token authentication, and SOPS/age-encrypted configs with opt-in re-encryption.
    • All onboarding and config editing flows now use consistent, user-friendly modals and prompts.

Changed

  • Major Code Refactoring: Comprehensive refactoring to improve code organization and maintainability
    • Split large UI component files into focused, single-responsibility modules
    • Improved separation of concerns across all UI components
    • Enhanced maintainability and testability while preserving all functionality
  • Logger Architecture Improvements: Enhanced logging system with better error handling and circular import resolution
  • Configuration Package Split: Modularized configuration management with separate profile and file operation modules
  • UI Simplification: Removed redundant Global menu hotkey from footer display since Esc opens the global menu

Fixed

  • Node details panel and API now support displaying multiple storage pools per node, instead of only one. All storage pools are shown with usage stats and theming.
  • FormButton Theming: Fixed FormButton styling to use proper theme colors instead of hardcoded tview.Styles colors, ensuring consistent appearance with other UI elements
  • FormButton Refactoring: Refactored FormButton to embed a real tview.Button, providing proper button styling, behavior, and theme consistency
  • FormButton Sizing: Fixed FormButton to properly size and center the button instead of taking up the entire width
  • FormButton Alignment: Added configurable positioning options (center, left, right, custom) for FormButton alignment within forms
  • GolangCI-Lint Configuration: Updated golangci-lint configuration to be compatible with newer versions, fixed GitHub Actions CI failures, and implemented conservative linting with zero errors while maintaining essential code quality checks

📦 Downloads

Choose the appropriate binary for your platform:

  • Linux AMD64: proxmox-tui-linux-amd64.tar.gz
  • Linux ARM64: proxmox-tui-linux-arm64.tar.gz
  • macOS Intel: proxmox-tui-darwin-amd64.tar.gz
  • macOS Apple Silicon: proxmox-tui-darwin-arm64.tar.gz
  • Windows AMD64: proxmox-tui-windows-amd64.zip
  • Windows ARM64: proxmox-tui-windows-arm64.zip

🔐 Verification

Verify your download with the provided checksums.txt file:

shasum -a 256 -c checksums.txt

📋 Installation

  1. Download the appropriate archive for your platform
  2. Extract the binary: tar -xzf proxmox-tui-*.tar.gz (or unzip for Windows)
  3. Make executable (Unix): chmod +x proxmox-tui-*
  4. Run: ./proxmox-tui-* --help

Don't miss a new pvetui release

NewReleases is sending notifications on new releases.