======================================================================== Plank & IceWM Icon Manager v1.0 ======================================================================== A lightweight Vala/GTK3 tool designed for IceWM and Plank users to easily manage, generate, and assign custom icons (PNG, SVG, XPM) to standalone scripts, symlinks, and application launchers. Mark Ulrich, 2026 License: GPLv2+ A lightweight Vala/GTK3 tool designed for IceWM and Plank users to easily manage, generate, and assign custom icons (PNG, SVG, XPM) to standalone scripts, symlinks, and application launchers. Features: - Scans a directory and auto-generates clean .desktop entries. - Native GTK3 File Chooser with live image preview. - Support for PNG, SVG, XPM, and JPG/JPEG files (starts in /usr/share/icons/hicolor/). - Multilingual overrides (Icon[de], Icon[fr], etc.) are fully updated. - Safe, decoupled background restart of Plank tailored for IceWM. Requirements: - Linux Mint (or any Ubuntu/Debian-based derivative running IceWM) - Vala Compiler (valac) - GTK+ 3.0 Development Libraries (libgtk-3-dev) - Plank Dock installed Installation & Compilation: 1. Install dependencies: sudo apt install valac libgtk-3-dev plank 2. Compile the source and auto-generate initial configurations: make 3. (Optional) Run clean-up to remove binaries: make clean How to Use: 1. Place your scripts (*.sh), symlinks, or custom shortcuts inside your local source folder (automatically detects "~/Desktop/Program Manager" or "~/Schreibtisch/Program Manager"). 2. Run 'make refresh-links' or just 'make' to generate core configurations. 3. Start the UI: ./icon-picker 4. Select your application from the dropdown and assign an icon. 5. Open "~/.local/share/applications/pm-managed/" via your file manager and drag-and-drop the finished launcher onto your Plank Dock. File Manifest: - icon-picker.vala : GTK3/Vala source code - generate_launchers.sh : Script to sync local files to .desktop structures - Makefile : Compilation and project automation - README.txt : This documentation file - examples/ : Sample scripts and configuration files