Skip to content
mdadeelPublic

About

Preen system setup, deep cleaning and tuning for Linux. GTK 3 app: install/remove apps, deep-clean with size preview, manage systemd services, simulate before you act.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

7 stars

Watchers

0 watching

Forks

Repository files navigation

Preen — Linux system utility for apps, cleanup and maintenance

Preen is an open-source Linux desktop utility for managing APT and Flatpak applications, reviewing disk cleanup, inspecting systemd services and backing up user configuration. It brings these tools together in a native Python and GTK 3 interface for Ubuntu-family and Debian-based desktops.

Start here: Run from source · User guide · Privacy · Security · Releases

Screenshots

Preen dashboard showing system information, resource usage and maintenance shortcuts

Preen Manage Apps page with a searchable list of installed applications

These user-provided screenshots show one example system. The operating system, resource readings, installed apps and available actions vary by machine; they are not live data or guarantees of compatibility.

Preen AppImages page listing downloaded and installed AppImage files with install and uninstall actions

AppImages (new in 0.5.0) — install downloads with a menu entry, update by reinstalling, and drag-and-drop .AppImage or .deb files onto the window.

What can Preen do?

Area What is available in the current source
Dashboard Review system information, resource usage and missing tools; open common maintenance pages.
Install Apps Search a curated catalogue, select APT or Flatpak, use presets and install or update apps. A source fallback is available where the catalogue provides one.
Manage Apps Search installed Flatpaks and graphical APT packages, select apps for removal and see protected package rows.
AppImages Install downloaded .AppImage files with a menu entry and icon; installing an installed app again updates it, drag-and-drop also accepts .deb files, and right-click integration offers Run / Install / Update from the file manager.
Deep Clean Review selected cache, trash, journal and old-kernel cleanup targets with measured sizes or estimates before confirming deletion.
Optimize System Manage supported power profiles, animations, startup entries, swap, ZRAM and a UFW firewall toggle when their system tools are available.
Services Inspect systemd services, filter the list and request supported service actions; stop, disable and restart require confirmation.
Backup & Restore Export and restore user configuration archives; use Timeshift where installed.
Customize Look Choose Preen's own light, dark or system appearance. Separate, confirmed controls can also change desktop text scaling, icon themes and GTK 3 corner styling.
Logs Filter, select, copy, clear and save diagnostic output; command failures include exit details.

Availability depends on the distribution, installed tools, permissions and the selected operation. See the user guide for details and product roadmap for ideas that are not yet implemented, including the proposed folder organizer.

Use maintenance tools carefully

  1. Back up important data and review the affected packages, files or services.
  2. Turn on Simulate before trying a maintenance action. Supported system changes are previewed instead of applied; inspect Logs for the result.
  3. Confirm the operation and turn Simulate off only when you are ready to make the real change. Some actions require authorization through polkit.

Simulate is not a no-write sandbox: read-only checks still run, saving preferences or a log can write files, and loading old settings may migrate the legacy configuration directory. A simulated command does not reveal every package-manager dependency change. Cleanup sizes are measurements or estimates, not a promise of space reclaimed. Preen's direct app-uninstall paths block a defined set of essential APT package names, but APT autoremove and dependency changes can affect other packages. No list can guarantee an operation is risk-free. Read the safety and security guidance first.

Requirements

  • Linux with Python 3.8 or newer, GTK 3 and PyGObject. A graphical desktop is required for the GUI; the doctor and catalogue checks are headless.
  • APT/dpkg features target Debian and Ubuntu-family distributions, including derivatives such as Zorin OS, Linux Mint and Pop!_OS. Other Linux systems may run parts of Preen but APT-specific features need APT/dpkg and have not been established as universally supported.
  • Flatpak, polkit, systemd, GNOME settings, Timeshift, power profiles and ZRAM tooling are needed only for the features that use them. Feature and desktop availability varies; run the doctor to see what is missing.

Run from source

On a Debian/Ubuntu-family system, install the Python/GTK packages, clone the repository and start with Simulate enabled:

sudo apt update
sudo apt install -y git python3 python3-gi gir1.2-gtk-3.0 python3-psutil

git clone https://github.com/mdadeel/Preen.git
cd Preen
python3 -m preen_tool.app --doctor
python3 -m preen_tool.app --simulate

Install optional tools for the features you need; the user guide gives examples. If your default python3 is not the distribution's Python and cannot import gi, use the system Python, for example /usr/bin/python3, with the same commands.

Releases and local packages

Check GitHub Releases for the files attached to a particular release. GitHub also provides source ZIP and .tar.gz archives for each tag. Debian packages, Python wheels and AppImages are available only when listed among that release's assets; the current source may contain changes not present in an older tag.

To build a Debian package from a checkout with dpkg-deb installed:

./packaging/build_deb.sh
# Install the versioned file reported by the builder, for example:
sudo apt install ./dist/preen_0.5.0_all.deb

To build the x86-64 AppImage, run ./packaging/build_appimage.sh; the builder may download appimagetool without checksum verification, and that tool may fetch an unverified runtime. Prefer a trusted, pre-verified appimagetool AppImage supplied through APPIMAGETOOL and verify its runtime. Preen's AppImage uses the host's Python, GTK and PyGObject rather than bundling them. A Python virtual environment with --system-site-packages can also be used for an editable install; see the contributor guide.

AppImage desktop integration

From a checkout, install any Preen AppImage with a menu entry and launcher icon — and remove it again the same way:

./packaging/install_appimage.sh Preen-0.5.0-x86_64.AppImage    # per-user, no root
sudo ./packaging/install_appimage.sh Preen-0.5.0-x86_64.AppImage --system
./packaging/uninstall_appimage.sh                              # add --system or --purge as needed

The default installs under ~/.local/share (/opt/preen and /usr/share with --system); --purge also deletes Preen's settings in ~/.config/preen. The Makefile wraps the common paths: make wheel, make deb, make appimage, make install-appimage, make uninstall-appimage. Run make help for the full list of targets.

Command-line checks

From a source checkout use python3 -m preen_tool.app; after installing the package, use preen instead:

python3 -m preen_tool.app --doctor          # dependency and capability report
python3 -m preen_tool.app --doctor --json   # machine-readable report
python3 -m preen_tool.app --check-catalog    # validate app and preset data
python3 -m preen_tool.app --version
python3 -m preen_tool.app --simulate        # start the GUI in Simulate mode

preen --appimage-handler ~/Downloads/App.AppImage   # install/run/update dialog
preen --appimage-run ~/Downloads/App.AppImage       # launch it detached, no window
preen --deb-handler ./package.deb                   # install a .deb with one prompt

Doctor reports and logs can contain local paths, app names and diagnostic output. Review and redact them before sharing.

Frequently asked questions

What is Preen?

Preen is an open-source GTK 3 utility that brings Linux app management, cleanup, service controls, configuration backups and selected system settings into one desktop interface. It uses existing system tools rather than replacing them.

Is Preen free and open source?

Preen's project code is available under the MIT License. Bundled third-party artwork has separate terms; see third-party notices.

Does Preen work on my Linux distribution?

APT-related features are intended for Debian and Ubuntu-family systems. Flatpak, GNOME, systemd and other features require the corresponding tools and desktop support. Preen is not verified on every distribution or configuration; run --doctor and test carefully on your own system.

Does Preen collect or send my data?

The current desktop app has no built-in telemetry or analytics and does not send diagnostic logs to the Preen maintainers. APT, Flatpak, Flathub setup and other external tools may contact their own repositories or services. Local settings, exported archives and logs can contain sensitive information; read the privacy policy before sharing or deleting them.

Do I need administrator privileges?

Run Preen as your normal user. System-level changes, such as APT, swap and system service operations, can ask for authorization through polkit; the specific prompt and permissions depend on the operation and system.

Does Preen change the theme of my whole desktop?

The Preen appearance selector changes Preen only. Other controls are explicitly labelled desktop-wide: text scaling and icon themes can affect the GNOME desktop, and rounded-corner CSS can affect GTK 3 apps. Review and confirm those changes separately.

Can Preen organize files in a folder?

Not yet. A selectable-folder organizer is a proposal in the product roadmap, not a current feature.

Documentation and community

For sensitive security issues, follow SECURITY.md rather than posting exploit details or personal data in a public issue. Automated tests use fakes and do not substitute for validation on a supported live GNOME desktop; see the functional review for test limitations.

About

Preen system setup, deep cleaning and tuning for Linux. GTK 3 app: install/remove apps, deep-clean with size preview, manage systemd services, simulate before you act.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages