Skip to content

Releases: pieroproietti/penguins-gui

Penguins GUI v26.9.23

Choose a tag to compare

@github-actions github-actions released this 23 Sep 06:41

Penguins GUI v26.9.23

A compact desktop interface for creating Penguins' Eggs live images and clones,
with live output and direct access to the resulting ISO folder.

This release adds graphical clone authentication and encrypted-clone configuration,
maintenance menus, an action toolbar with contextual explanations, persistent font
zoom, and Clear/Copy log controls. The Exit button and window-close action keep
the interface open until the current operation finishes.

The Debian amd64 package includes a desktop launcher and icon. It is built on
Debian Bookworm; Penguins' Eggs must already be available from its repository.
Clone password dialogs also require sudo, and graphical encrypted clones require
an Eggs version supporting EGGS_LUKS_PASSPHRASE.

Download the .deb and install it with:

sudo apt install ./penguins-gui_26.9.23-1_amd64.deb

Run Penguins GUI as a normal desktop user. SHA256SUMS is provided alongside the
package for download verification.

Known limitations: progress is textual, ISO discovery uses file timestamps, and
operation cancellation is not yet available. Encrypted-mode secret handling is
unchanged in this release: in the sudo path, the passphrase appears in the command
arguments and GUI log. Do not share encrypted-mode logs containing secrets.

v26.9.22

Choose a tag to compare

@pieroproietti pieroproietti released this 22 Sep 07:23

Release Notes: penguins-gui v26.9.22 - 2026-09-22

This first release introduces an independent Fyne desktop interface for Penguins'
Eggs, with remaster controls, live logs, ISO discovery and native Debian packaging.

🐧 Eggs Remaster Interface

  • Eggs Detection: Locates eggs in PATH, displays its version and disables remastering when the executable is unavailable.
  • Three Remaster Modes: Supports standard live images, system clones (--clone) and encrypted clones (--crypted), with a selectable working directory defaulting to /home/eggs.
  • Per-Process Authorization: Uses pkexec to elevate the Eggs command when the GUI runs as a normal user.
  • Interactive Encrypted Mode: Opens Eggs' encrypted wizard in a supported graphical terminal, leaving passphrase entry to Eggs.

🖥️ Logs and Completion Feedback

  • Live Command Output: Displays stdout and stderr during standard and clone remasters, stripping ANSI escape sequences for readable logs.
  • Completion Dialog: Shows a popup after the command exits without error, including the ISO result or a warning when no new ISO is found.
  • ISO Discovery Fix: Searches only directly inside the selected working directory, avoiding permission failures in Eggs' working subdirectories. Selects the newest qualifying ISO with a two-second timestamp tolerance.
  • Artifact Access: Displays the ISO path and size and provides an action to open its containing folder.

🧩 CLI Adapter and Tests

  • Isolated Eggs Integration: Moves executable detection, argument construction, privileged execution, terminal launching and ISO discovery into internal/tools/eggs.CLIAdapter, preserving the existing GUI flow.
  • Regression Coverage: Retains tests for remaster arguments, ISO discovery, size formatting and ANSI removal. Updates ISO discovery coverage to verify that nested images are ignored.

📦 Debian Packaging and Hammers CI

  • Independent Package Builder: Adds make package and a standalone Go builder that writes native .deb archives to dist/ without administrative privileges.
  • Desktop Integration: Packages the GUI executable, desktop launcher and SVG icon, with shared-library dependencies calculated through dpkg-shlibdeps.
  • Git-Based Versions: Derives package versions from Git tags and commit history, with tests for version calculation.
  • Hammers Workflow: Adds GitHub Actions jobs for Debian Bookworm and Trixie on amd64, triggered by pushes and pull requests to main or manually. Runs tests with a virtual display, builds as an unprivileged user, inspects archives and uploads artifacts with seven-day retention.

📝 Architecture and Protocol Documentation

  • Project Direction: Adds vision, architecture and roadmap documents describing the separation between the GUI and external Penguins tools.
  • Protocol Proposal: Adds the machine-readable protocol specification, JSON Schemas and example fixtures for future integration. This release continues to use Eggs' existing textual CLI.