Tech HUD Starter

A lightweight, custom-drawn GTK3 command runner and HUD utility written in Vala and GTK3/Cairo.

Overview

tech-hud-starter is a command runner and HUD utility designed for quick command execution, automated command repetition, and deep desktop integration with full theme, design, and multi-language support.

Key Features

* Interactive Command Center: Type any shell command or system action and press Enter to execute it instantly. Supports command chaining with semicolons (;) and the clear command to reset the output buffer.
* Plain Text Session Output Viewer: Open the plain text session viewer to inspect all output from the current session. Includes search, find next/previous, text selection, full copy, and automatic temporary file logging with start/exit cleanup.
* Compact HUD Display: Output formatting automatically strips trailing line breaks to ensure compact window fitting without scrolling content off the top.
* Persistent Command History & Editor: Browse through previously executed commands using the Up and Down arrow keys. Access the Options menu to open the Edit History dialog, allowing you to view, copy, paste, and modify the entire command history (history.txt) with automatic duplicate filtering.
* Automated Repeat Timer & Live Countdown: Set a command to re-run automatically at custom intervals (1 to 3600 seconds) with a real-time visual countdown indicator.
* Advanced Design Categories & Glass Variants: Choose between Spaceship-Neon, multi-variant Glass (Clear, Frosted, Blurry, Ultra-Clear, Diamond), and luxury Marble textures.
* 20 Built-in Color Themes: Easily switch between high-tech palettes including Cyber Cyan, Matrix Emerald, Amber Terminal, Crimson Alert, Deep Space Violet, Electric Indigo, Solar Gold, and more.
* 9 Unique Border Styles: Customize the window frame aesthetics, ranging from classic HUD boxes and top-notch headers to slanted vents, armored hexagons, and dual gills.
* Text 3D & Shadow Effects: Supports Normal, Debossed / Carved into Stone, and Embossed / Raised 3D text styling, plus customizable shadow effects (Soft Double Shadow, Hard Shadow, Glow + Shadow).
* Multi-Language Localization: Full GNU gettext translation support across 15 languages: German, French, Russian, Chinese, Japanese, Spanish, Swahili, Italian, Portuguese, Dutch, Korean, Arabic, Hebrew, Romanian, and Polish.
* Advanced Window Management:
  * Layers & Hints: Configure window behavior as Normal, Utility, or Dock, and set window stacking layers to Keep Above or Keep Below (Wallpaper mode).
  * Position & Size Persistence: Automatically saves window coordinates, width, and height.
  * Adjustable Opacity & UI Scaling: Fine-tune background, text, and border opacities and scale the interface dynamically.
  * Window Movement & IceWM Compatibility: Includes header drag spacing and double-click event catching to prevent window manager freezes.

Changelog

### 1.1.0 - 2026-10-20
* Added Plain Text Session Output Viewer with search capabilities, text selection, copy functions, and temporary session logging (`session_output.txt`) with start/exit cleanup.
* Added header drag spacing left of the options button to make window movement effortless.
* Enhanced event handling to catch double-clicks and triple-clicks, preventing window manager (IceWM) freezes.
* Refactored codebase into src/tech-hud-engine.vala and src/main.vala.
* Added full multi-language localization (15 languages) via GNU gettext.
* Added support for Design Categories (Starship-Neon, Glass variants, Marble texture) and Text 3D / Shadow effects.
* Fixed output display by stripping trailing line breaks to prevent scrolling top lines out of view.
* Added PET package build support (`make pet64`) to Makefile.
* Converted README.md to README.txt.

### 1.0.1 - 2026-10-04
* Initial release of Tech HUD Starter command runner.

Requirements

* Vala compiler (valac)
* GTK+ 3 development libraries (libgtk-3-dev)
* GLib and GIO libraries (libglib2.0-dev)
* Cairo and PangoCairo development files
* GNU gettext tools (msgfmt)

Building and Installation

Compile the project binaries using the included Makefile:
  make

Build Puppy Linux PET package:
  make pet64
