appimage-assimilate

command module
v0.0.0-...-e455945 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 23, 2026 License: GPL-3.0 Imports: 8 Imported by: 0

README

appimage-assimilate

This is a CLI tool that installs appimages to menus/launchers. Optionally, it can make them launchable from any location on the command line, using the proper executable name, e.g. librewolf instead of LibreWolf.x86_64.AppImage

Usage

Run appimage-assimilate either from inside a directory containing the appimage you want to operate on, or using the path of the directory as an argument, e.g. appimage-assimilate -i foo/bar/.

The appimage in the target directory will be detected automatically. The directory should only contain one appimage at a time.

Options

appimage-assimilate or appimage-assimilate -i - Install appimage

This installs the appimage that's inside the target directory.

You'll be asked if you want to create a symlink to the appimage in /usr/local/bin - this allows you to run the appimage from any location on the command line. Again, the symlink will use the usual name of the program, not the appimage name.

An install manifest will be created and saved alongside the appimage in the same directory, and a list of installed appimages will be created at $HOME/.local/share/appimage-assimilate/installed.

_______________

appimage-assimilate -u - Uninstall appimage

This will delete all files listed in the target directory's manifest, the install list entry,and the manifest itself. The actual appimage file will not be removed.

_______________

appimage-assimilate -l - List installed appimages

This will show the name and location of all installed appimages as well as whether or not symlinks were created at install time.

_______________

appimage-assimilate -m - Show manifest contents

This will show the contents of the manifest in the target dir, if it exists.

_______________

appimage-assimilate -f - Fix exec paths

This fixes the paths to the target dir's appimage in the relevant .desktop file and symlink (if created) to match the current name of the appimage.

This can be used to:

  • Fix an appimage that has broken due to renaming itself after a self-update.

  • Upgrade an appimage without uninstalling provided that you delete the older appimage from the target directory when adding the newer one. Uninstalling with -u and reinstalling is recommended over this method.

Limitations

Unlike some other appimage installers, appimage-assimilate has no built-in update checking functions. It's meant to be a fairly simple tool, not a package manager.

Currently, only the .desktop file in the root of the appimage (or that's linked there) is used; appimages with multiple .desktop files will still work, but additional functions from the extra files may not, especially if the appimage uses the extra files to call separate binaries. This will be fixed in a future update.

Installation

The only hard dependency is util-linux, which is likely installed by default by your distro. However, either sudo or doas is strongly recommended.

Packages

Statically-linked binaries that should work with any distro are available in Releases. Just place the binary into your $PATH.

For Debian-based distros there are .deb packages available, also in Releases. I also package a Gentoo version in my overlay. Outside of that, using the methods outlined below are your best option.

Building from source

go is required to build. If you use the included build scripts or the 'go install' method below, all build operations will take place in /tmp and go will download an up-to-date version of itself to use temporarily during the build.

Clone or download/extract the source code and $ cd appimage-assimilate.

To build:

$ ./build.sh

To install:

# ./install.sh

To uninstall:

# ./uninstall.sh

Direct install with Go

Run:

$ GO_CACHE=/tmp/go-build GOPATH=/tmp/gopath GOTOOLCHAIN=go1.26.0 \
go install -x codeberg.org/illogician/appimage-assimilate@foo

where foo is either a) a version number or b) latest for the newest commit.

When go install finishes, copy appimage-assimilate from /tmp/go/bin to a dir in your $PATH, e.g. /usr/local/bin.

Documentation

Overview

* Copyright (C) 2025-2026 illogician <[email protected]> * * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, version 3. * * This program is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A * PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <https://www.gnu.org/licenses/>. * * appimage-assimilate v2.1.1

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL