Skip to content

Releases: RaspberryFpc/pibackup

v2.0.7

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 29 Jun 18:06

v2.0.7 – 2026-06-29

Test Release

  • Same as v2.0.6, but released with a different version number to test the update mechanism.

Download pibackup

v2.0.6

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 29 Jun 11:52
ba54458

[2.0.6] – 2026-06-29

Bugfix

  • Fixed an issue where the application could fail to restart after a successful update.

Download pibackup

v2.0.5

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 28 Jun 17:28

[2.0.5] – 2026-06-28

Changed

  • updater system
  • Minor UI design adjustment

Download pibackup

v2.0.4

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 24 Jun 22:09

[2.0.4] – 2026-06-25

Added

  • Updater for automatic release updates

Notes

  • update-check compatible
  • no UI dependency required
  • deb package installation supported via apt/dpkg

Download pibackup

v2.0.3

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 12 Jun 10:23

[2.0.3] – 2026-06-12

  • Fixed a rare issue where restored devices could become unbootable after changing the device UUID. The update includes improved handling and synchronization of cmdline.txt, MBR, and fstab.
  • Reworked device UUID update logic to improve reliability during restore operations.
  • The device selection combobox now displays "None" when no device is selected.

Download pibackup

v2.0.2

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 10 May 11:14
3e75bcc

[2.0.2] – 2026-05-10

  • Updated the confirmation window
  • Added a new message when no target device is selected

Download pibackup

v2.0.1

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 08 May 17:33

[2.0.1] – 2026-05-08

🔧 Internal Architecture Changes

  • Reworked partition restore handling architecture

  • StringGrid no longer stores internal restore variables or partition state

  • Introduced dedicated internal restore record structure for:

    • partition metadata
    • restore parameters
  • StringGrid is now used strictly as:

    • display layer only
    • read-only visualization component
    • separation of UI and restore logic for improved reliability
  • Reduced risk of:

    • UI-state desynchronization
    • accidental data corruption
    • invalid restore state caused by grid modifications

🛠 Restore & Boot Configuration Improvements

  • Improved automatic adjustment of:

    • MBR
    • cmdline.txt
    • fstab
  • More reliable handling of:

    • PARTUUID replacement
    • boot device migration
    • restored system consistency
  • Improved detection and replacement logic during image restore process


⚠️ Safety Improvements

  • Added confirmation dialog before writing images to target devices
  • Prevents accidental overwrite of disks or partitions
  • Additional safeguard before destructive write operations are executed

🔒 Stability Improvements

  • Improved internal consistency between restore engine and UI
  • Cleaner separation between runtime data and presentation layer
  • Reduced hidden side effects caused by UI component state usage

Download pibackup

v2.0.0

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 03 May 16:33

Changelog

All notable changes to this project are documented in this file.

[2.0.0] – 2026-05-02

🚀 Major Release – Unified Command System

  • Introduced a unified delete command system with clear semantic commands:

    • file
    • fileintree
    • allintree
    • dir
  • Clear separation between:

    • file operations
    • directory operations
    • recursive tree operations
  • Improved readability and maintainability of exclude files

  • Deterministic and simplified command behavior

  • Strict command-based execution model without external dependencies


🔒 Security Critical Change

  • Removed all shell command execution from exclude system

  • The system no longer supports:

    • shell calls
    • external command execution
    • system() / exec() usage
    • shell expansion or chaining
  • All operations are now:

    • internally parsed
    • executed via filesystem API only
    • strictly sandboxed within the MountPoint
  • Eliminated attack vectors:

    • command injection
    • shell expansion exploits
    • environment variable injection
    • argument injection via exclude file

🔄 Syntax Changes

  • Standardized exclude file format:

  • No shell parsing

  • No escaping or chaining

  • Wildcards supported internally: *, ?


✨ Improvements

  • Clear semantic behavior of commands:

  • file → single file or wildcard match

  • fileintree → recursive file pattern deletion

  • allintree → deletes contents of a directory (keeps directory)

  • dir → deletes directory including all contents

  • Reduced ambiguity in destructive operations

  • Consistent and predictable execution behavior

  • Improved path handling relative to MountPoint


🛠 Engine Improvements

  • Refactored delete engine into direct filesystem dispatcher
  • Removed dependency on external tools and shell
  • Optimized directory traversal logic
  • Consolidated duplicate traversal implementations
  • Improved recursive deletion reliability
  • Simplified internal logic for maintainability

🧪 Editor Improvements

  • Added syntax validation in Exclude Editor before saving
  • Prevents invalid or unsafe entries at edit time
  • Detects:
  • invalid commands
  • malformed syntax (COMMAND = PATH)
  • illegal or ambiguous paths
  • Improves user feedback and reduces runtime errors

🔒 Safety Enhancements

  • Strong MountPoint boundary enforcement
  • Guaranteed prevention of path escaping outside image root
  • All exclude entries treated strictly as data (never executable)
  • Improved validation of parsed entries

⚠️ Breaking Changes

  • Removed all legacy and shell-based command support
  • Old exclude files are no longer compatible
  • Migration to new syntax required

🔒 Safety & Stability

  • Improved handling of non-existent targets
  • More predictable behavior during deletion operations
  • Clear distinction between destructive and non-destructive actions

Download pibackup

v1.8.0

Choose a tag to compare

@RaspberryFpc RaspberryFpc released this 30 Apr 08:57

[1.8.0] – 2026-04-29

🚀 Highlights

  • Improved reliability and consistency of MBR and fstab handling
  • Safer restore process with deterministic behavior
  • New exclude file editor with built-in syntax validation

✨ Improvements

  • Checkboxes deletepartition3 and deletepartition4 are now only displayed if the corresponding partitions exist
  • The cancel function for Create Image and Write Image now prompts for confirmation
  • Introduced an internal editor for exclude files

🛠 Validation & Processing

  • Added syntax validation when processing exclude files

💽 Improved MBR and fstab handling

Reworked fstab generation logic:

  • System partitions (p1/p2) are always taken from the image
  • Additional partitions (p3+) are preserved from the target device when available
  • Automatic fallback to image entries if device entries are missing, only if the fallback is mountable
  • Introduced consistent PARTUUID handling
  • Unified mapping between MBR, fstab, and cmdline

Improved MBR processing:

  • Clear separation between image-defined structure and device-specific data
  • Avoids unintended disk signature changes
  • Ensures deterministic restore behavior

Increased robustness:

  • Better handling of incomplete or broken existing fstab files
  • More reliable restore process on systems with additional partitions

Download pibackup