A modern, lightning-fast, and minimalist universal application hub and uninstaller for Linux.
Manage, launch, and cleanly uninstall packages across all packaging systems (Flatpak, Debian .deb / APT, Snap, and AppImage) from a single unified interface.
- 📸 Screenshots
- 🌟 Key Features
- 📊 Package Support Matrix
- 📥 Quick Installation & Download
- 🔨 Building From Source & AppImage Packaging
- 🗂️ Project Directory Structure
- 🛣️ Future Roadmap
- 🤝 Contributing & Community
- 📄 Open Source License
Modern, native Libadwaita dark interface running on Linux with real-time app counts, status badges, and quick actions.
- 📦 Universal Package Management & Discovery:
- 🟢 Flatpak: Reads application IDs, installed size, versions, and metadata from system & user remotes.
- 🟠 Debian (
.deb/ APT): Scans system desktop files and batch resolves package ownership usingdpkg -S. - 🟣 Snap: Detects user-installed snaps, track revisions, and package information.
- 🔵 Standalone AppImage: Automatically scans
~/Applications,~/Downloads,/opt,~/.local/bin, and~for.AppImagefiles.
- 📥 One-Click Package Installer (NEW in v1.1.0):
- In-App Install: Use the header
+ Install Filebutton to browse and install.deb,.flatpak,.flatpakref, or.AppImagefiles. - "Open With..." Desktop Integration: Right-click any
.deb,.flatpak, or.AppImagein your Linux file manager and choose Open with Linux App Manager to inspect and install with one click! - Smart Dependency Resolution: Installs
.debpackages via APT to automatically pull missing dependencies. - Automated AppImage Desktop Integration: Moves AppImages to
~/Applications/, marks executable, and generates a.desktopentry in your Application Menu.
- In-App Install: Use the header
- ⚡ Ultra Fast Discovery: Sub-second full system indexing (< 0.75s) using optimized batch queries and asynchronous threading.
- 🎨 Minimal & Modern UI: Built with GTK 4 and Libadwaita, respecting your system's dark/light theme, typography, and GNOME/Zorin OS aesthetics.
- 🔍 Real-Time Search & Category Filters: Filter apps instantly by package type (
All,Flatpak,Debian (.deb),Snap,AppImage) or keyword. ▶️ One-Click App Launcher: Launch any installed application detached in the background with a single click.- 🗑️ Clean Uninstaller:
- Non-destructive confirmation dialogs before any package removal.
- Integrates with native PolicyKit (
pkexec) for secure graphical root authorization prompts when removing system packages. - Asynchronous background removal without freezing the user interface.
- 🛡️ System Protection Safeguard:
- Core system packages (e.g.,
nautilus,zorin-desktop,gnome-shell,settings,systemd) are automatically locked and protected from deletion to prevent accidental OS breakage.
- Core system packages (e.g.,
- 🚀 Zero-Dependency Portable AppImage:
- Single standalone
.AppImageexecutable with an integrated Type 2 ELF runner—no installation or runtime setup required.
- Single standalone
| Format | Discovery Mechanism | Installation Backend | Uninstallation Backend | Root Privileges? |
|---|---|---|---|---|
| Debian (.deb) | Gio.AppInfo + dpkg -S |
pkexec apt install -y <deb> |
pkexec apt remove -y <pkg> |
🔑 Yes (via Polkit prompt) |
| Flatpak | flatpak list --app |
flatpak install -y <file> |
flatpak uninstall -y <app-id> |
❌ No (User) / 🔑 System |
| AppImage | System directory crawler | Installs to ~/Applications + creates .desktop menu launcher |
Safe file deletion + removes .desktop |
❌ No |
| Snap | snap list |
Pre-installed / Snapcraft | pkexec snap remove <pkg> |
🔑 Yes (via Polkit prompt) |
-
Clone or download
LinuxAppManager-x86_64.AppImage:git clone https://github.com/Shivant7857/linux-app-manager.git cd linux-app-manager -
Make it executable and run:
chmod +x LinuxAppManager-x86_64.AppImage ./LinuxAppManager-x86_64.AppImage
-
(Optional) Add to your user applications menu:
mkdir -p ~/Applications ~/.local/share/applications ~/.local/share/icons/hicolor/scalable/apps cp LinuxAppManager-x86_64.AppImage ~/Applications/ cp linux-app-manager.svg ~/.local/share/icons/hicolor/scalable/apps/ cp linux-app-manager.desktop ~/.local/share/applications/ update-desktop-database ~/.local/share/applications/
Install the required GTK 4 and Libadwaita development packages on your Linux distribution:
-
Ubuntu / Debian / Zorin OS / Linux Mint:
sudo apt update sudo apt install -y python3 python3-gi gir1.2-gtk-4.0 gir1.2-adw-1 squashfs-tools gcc
-
Fedora:
sudo dnf install -y python3 python3-gobject gtk4 libadwaita squashfs-tools gcc
-
Arch Linux:
sudo pacman -S python python-gobject gtk4 libadwaita squashfs-tools gcc
python3 app.pyYou can rebuild the standalone .AppImage at any time with a single command:
chmod +x build_appdir.sh package_appimage.sh
./package_appimage.shThis will:
- Construct the
AppDirdirectory layout with icons and desktop metadata. - Compile
runtime.cinto a Type 2 ELF AppImage runner. - Compress the payload with SquashFS (
xzcompression). - Combine the runtime and payload into
LinuxAppManager-x86_64.AppImage.
./LinuxAppManager-x86_64.AppImage --appimage-version
./LinuxAppManager-x86_64.AppImage --appimage-extract
./LinuxAppManager-x86_64.AppImage --appimage-helplinux-app-manager/
├── app.py # Main GTK 4 + Libadwaita user interface
├── scanner.py # Multi-format package scanner & manager engine
├── runtime.c # Lightweight C ELF runtime for Type 2 AppImage
├── build_appdir.sh # AppDir layout builder script
├── package_appimage.sh # AppImage assembler and SquashFS compressor
├── linux-app-manager.desktop # Desktop application entry
├── linux-app-manager.svg # Official vector application icon
├── LinuxAppManager-x86_64.AppImage # Ready-to-run standalone executable
├── assets/ # Graphic assets, banners, and screenshots
│ ├── banner.svg
│ ├── logo.svg
│ ├── preview.png
│ └── screenshot.png
├── .github/workflows/ # Automated GitHub Actions CI pipeline
│ └── build-appimage.yml
├── LICENSE # MIT Open Source License
└── README.md # Project documentation
- Multi-format package detection (.deb, Flatpak, Snap, AppImage)
- One-click Open & Delete actions with Polkit root authorization
- Core OS component safety locks
- Standalone portable
.AppImagecompilation - Direct package update checker (
flatpak update,apt update) - Disk space reclaimed estimator
- Export installed applications list (JSON / CSV backup)
Contributions, bug reports, and feature requests are welcome!
Feel free to open an Issue or submit a Pull Request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Made with ❤️ by Shivant

