π» Technologies
π Choose Language
βοΈ Anvil - AppImage Installer for Linux
π Description
Anvil is a command-line tool written in Rust that automatically installs AppImages into your Linux system. No more manually extracting icons or creating desktop entries β Anvil does it all for you.
β¨ Features
- π¦ Automatic Organization - Moves AppImages to a dedicated folder (
~/.Applications_AppImageby default) - π§ Permission Management - Automatically sets executable permissions (chmod +x)
- π¨ Smart Icon Extraction - Extracts the best quality icon from the AppImage (PNG prioritized by file size)
- π₯οΈ Desktop Integration - Creates proper
.desktopentries in~/.local/share/applications/ - π― Customizable - Set custom names, icons, and categories
- π Verbose Mode - See exactly what's happening under the hood with
--verbose - π¨ Beautiful Output - Color-coded messages for errors, warnings, and success
π¦ Installation
From Source
Using Cargo
π Usage
# Basic usage
# With custom name and categories
# Using a custom icon
# See detailed progress
# Get help
βοΈ Options
| Option | Description | Default |
|---|---|---|
-s, --source |
Path to the AppImage file | Required |
-d, --destination |
Destination directory under HOME | .Applications_AppImage |
-n, --name |
Custom name for the application | (from filename) |
-i, --icon |
Path to a custom icon file | (extracted from AppImage) |
-c, --categories |
Desktop entry categories | Utility |
-v, --verbose |
Show detailed progress messages | false |
-h, --help |
Print help | - |
-V, --version |
Print version | - |
π What Anvil Does
- Validates the AppImage file
- Creates a dedicated folder in
~/.Applications_AppImage/AppName/ - Moves the AppImage to its new home
- Sets executable permissions (755)
- Extracts the best icon (if no custom icon provided)
- Creates a
.desktopentry in~/.local/share/applications/ - Updates the application database
π§ Example
)
ποΈ Building from Source
# Clone the repository
# Build in debug mode
# Build in release mode
# Run tests
π License
This project is licensed under the MIT License - see the LICENSE file for details.