Skip to content

v2.0.0

Choose a tag to compare

@ThigSchuch ThigSchuch released this 07 Feb 20:55
· 16 commits to main since this release

SimplyConvertFile v2.0.0

A complete rewrite: from Nemo action to standalone Linux application.

SimplyConvertFile has been rebuilt from the ground up as a full standalone GTK 3 desktop application. What started as a simple Nemo file manager action for converting a handful of formats is now a powerful, modular conversion tool supporting 80+ formats across 9 categories.


Highlights

  • Standalone Application: No longer tied to Nemo. Launch from the terminal, application menu, or any file manager. A native GTK file picker lets you select files when launched without arguments.
  • 80+ Supported Formats: Expanded from a handful of image/audio/video formats to full coverage across images, audio, video, documents, spreadsheets, presentations, markup, data, and archives.
  • Batch Processing: Convert multiple files at once with real-time progress tracking, mixed-format support, automatic output directory creation, and per-file error handling that keeps the batch running.
  • 18 Languages: Full internationalization with translations for CA, CS, DA, ES, EU, FI, FR, HU, IS, IT, JA, NL, PT, PT_BR, TR, UK, and VI.

New Features

Conversion Engine

  • Per-category converter classes (image, audio, video, document, archive, markup, data, office, presentation, spreadsheet)
  • Cross-format conversions: video → audio extraction, GIF → video, images → PDF
  • Intelligent tool selection: automatically picks the best available backend (FFmpeg, ImageMagick, LibreOffice, Pandoc, Calibre, etc.)
  • Automatic file validation with multi-step conversion protection to prevent cascading failures
  • Configurable format templates with placeholder support ({input}, {output}, {temp_file}, etc.)

User Interface

  • Native GTK 3 dialogs: format selection dropdown, progress bar, error display, info panels
  • Full keyboard navigation (Enter, Space, Arrow keys, Escape)
  • Dark/light theme auto-detection for application icons
  • Expandable error dialogs with full command output, copy-to-clipboard, and direct GitHub issue reporting
  • Cancellation support with proper process cleanup

Smart Features

  • Format Preselection: Learns your conversion habits and pre-selects your most frequently used target format per source type
  • Desktop Notifications: 13 configurable event types (start, success, failure, cancel, batch steps, missing dependencies, etc.) with per-event enable/disable
  • Command Security: Blocks dangerous shell commands (rm, sudo, dd, curl, etc.) before execution while allowing legitimate conversion tools
  • Dependency Detection: Cross-distribution package detection with automatic install command generation (apt, dnf, pacman, zypper, emerge, apk, and more)

Configuration

  • User settings in ~/.config/simplyconvertfile/ that persist across updates
  • Custom conversion rules, quality presets, and special cross-format rules
  • Configurable output directory naming and creation threshold
  • Conversion exclusions and output-restricted format lists
  • Debug mode via trigger file with color-coded logging

Installation

  • APT repository support with automatic updates
  • .deb package builds
  • pip install support
  • make install for system-wide installation
  • Optional Nemo file manager integration still available via .nemo_action

Supported Format Categories

Category Formats
Images (14) AVIF, BMP, CR2, GIF, HEIC, HEIF, ICO, JPEG, JPG, PNG, RAW, SVG, TIF, TIFF, WEBP
Audio (13) AAC, AC3, AIFF, ALAC, CAF, FLAC, M4A, MKA, MP3, OGG, OPUS, WAV, WMA
Video (10) AVI, M4V, MKV, MOV, MP4, MPEG, MTS, TS, WEBM, WMV
Documents (7) DOC, DOCX, EPUB, MOBI, ODT, PDF, RTF
Spreadsheets (4) CSV, ODS, XLS, XLSX
Presentations (3) ODP, PPT, PPTX
Markup (3) HTML, MD, XML
Data (3) JSON, TXT, YAML
Archives (13) 7Z, BZ2, DEB, DMG, GZ, ISO, LZMA, LZO, RAR, RPM, TAR, XZ, ZIP

Architecture

Complete modular rewrite with clear separation of concerns:

  • Factory pattern for converter instantiation
  • Strategy pattern for pluggable conversion backends
  • Template method for action workflows (single/batch)
  • Dedicated batch helpers for error handling, progress tracking, state management, and output organization

Requirements

  • Python 3.8+
  • GTK 3 (python3-gi, gir1.2-gtk-3.0, gir1.2-notify-0.7)
  • Format-specific tools: ImageMagick, FFmpeg, LibreOffice, Pandoc, Calibre, p7zip (installed as needed)

A Note on Development

This project was a large-scale experiment in AI-assisted development. Multiple AI models were used throughout the rewrite, but every architectural decision, implementation path, and line of code was guided and validated by me. The AI served as a tool to accelerate development.
I drove the direction and reviewed the output. That said, errors may still be present, bug reports and contributions are welcome.

Full Changelog: https://github.com/ThigSchuch/SimplyConvertFile/commits/v2.0.0