+============================================================+
| |
| .o. o8o |
| .888. `"' |
| .8"888. oooo oooo d8b oooo oooo ooo. .oo. |
| .8' `888. `888 `888""8P `888 `888 `888P"Y88b |
| .88ooo8888. 888 888 888 888 888 888 |
| .8' `888. 888 888 888 888 888 888 |
| o88o o8888o o888o d888b `V88V"V8P' o888o o888o |
| |
+============================================================+
airun is a command-line utility script that standardizes AppImage application files into an installation scheme. It organizes them neatly in your home directory (/home/username), renames them for clarity, and creates a convenient symbolic link, allowing you to run
any installed AppImage from your terminal by simply typing its name.
AppImages are great, but managing them can be a nuisance. They end up scattered in your Downloads folder with long, inconsistent names.
airun solves this by providing a simple, interactive workflow for a more permanent and organized setup.
- Standardized Directory Structure: All applications are stored in
~/Applications, each within its own named folder. - Consistent Naming: AppImages are renamed to
AppName_DD-MM-YYYY.AppImagefor easy version tracking. - Command-Line Access: Creates a symbolic link in
~/.local/bin, so you can launch the app directly from your terminal (e.g., by typing appname). - Portable Data: If you choose not to extract, airun automatically creates
.homeand.configdirectories alongside the AppImage, helping keep application data portable. - Interactive & User-Friendly: Uses colored prompts to guide you through the installation process.
- Desktop Integration (Optional): Offers an option to extract the AppImage (
--appimage-extract), which can improve desktop integration by using the application'sAppRunfile insidesquashfs-rootfolder.
- A Linux-based operating system.
- Filesystem in Userspace (FUSE) library.
bash(which is available on virtually all Linux systems).- Ensure that
~/.local/binis in your system's$PATH. If it is not, add the following line to your~/.bashrcfile:
export PATH="$HOME/.local/bin:$PATH"1. Clone the repository:
git clone https://github.com/buburakk/airun.git2. Navigate into the directory:
cd airun3. Make the script executable:
chmod +x airun4. (Recommended) Place the script in your local bin directory to run it from anywhere:
mv airun ~/.local/bin/Download the AppImage you want to install. Run airun from your terminal. If you did not move it to your path, you will need to run it as ./airun.
Follow the on-screen prompts. The script will ask you for:
- A short name for the application: This will be used for the directory name and the symbolic link (e.g., appname).
- The path to the AppImage file: You can provide a full path or a relative path. Tilde expansion (~) is supported.
The airun script performs the following steps:
- Gathers Input: Prompts the user for the application's short name and the path to the AppImage file.
- Sets Up Directories: Ensures that
~/.local/bin and ~/Applications/<app-name>directories exist. - Processes AppImage: Copies the AppImage to
~/Applications/<app-name>/. Renames the copied AppImage toapp-name_DD-MM-YYYY.AppImageso that original AppImage file downloaded can be deleted safely. If an AppImage with the same date stamp already exists, it will be replaced. Makes the AppImage executable (chmod +x). - Extraction (Optional method): If you choose to extract, the script will run the AppImage with the
--appimage-extractflag. It then creates a symbolic link in~/.local/bin/pointing to theAppRunexecutable inside the extractedsquashfs-rootdirectory. - Direct Link (For portable data method): If you choose not to extract, a symbolic link is created in
~/.local/bin/directly to the AppImage file. Additionally, it creates.homeand.configdirectories next to the AppImage for portable data storage, allowing the AppImage to keep its configuration and data within its installation directory. This method is isolated and compact, but requires FUSE library.
The src/ folder contains the latest running version in development. Older versions are preserved under ver/ for reference and comparison.
Feel free to suggest improvements of the script in order to make airun even better.
This project is licensed under the B. Burak Karaosmanoğlu Creative Commons Attribution 4.0 International (CC BY 4.0) - see the LICENSE file for details.
B. Burak Karaosmanoğlu - buburakk