Tool to compress and run programs using dwarfs
Go to file
2022-05-28 12:52:31 -04:00
apps wtf goproxy 2022-05-25 15:09:37 -04:00
.gitignore Add gitignore and chromium 2022-02-16 12:32:03 -05:00
appdwarf slight info and error reporting cleanup 2022-05-12 20:32:37 -04:00
AppRun zzexe: rewrite and use moreutils 2022-04-16 22:11:49 -04:00
header appdwarf: split header into multiple files 2022-04-17 21:57:31 -04:00
header_folder appdwarf: split header into multiple files 2022-04-17 21:57:31 -04:00
header_separate appdwarf: split header into multiple files 2022-04-17 21:57:31 -04:00
LICENSE License under GPL3 2021-12-31 15:11:41 -05:00
README.md slight info and error reporting cleanup 2022-05-12 20:32:37 -04:00
zzexe zzexe: autodetect header size in decomp 2022-05-28 12:52:31 -04:00

appdwarf

A tool to convert an AppDir or an existing AppImage file, either as a local file or from a URL, into a highly compressed portable image using dwarfs.

This is a small script and the bulk of the work is in the original dwarfs project, so all credit deserves to go there. It has not been extensively tested so I cannot guarantee it will function without issue.

Requirements

In order to create the images, you will need:

  • dwarfs, specifically the dwarfs and mkdwarfs utilities.
    • This may in turn require further dependencies, and specifically relies on the presence of FUSE for mounting images.

If you only wish to run an existing image, only dwarfs is needed in PATH.

How to create an appdwarf

For your own programs, simply create an AppImage-style AppDir and run appdwarf {directory}. You can also invoke appdwarf -a {AppImage} to convert an AppImage. I suggest checking the help (listed via appdwarf --help) for other options.

The apps folder contains other scripts for specific programs that will download all necessary files and create a resulting appdwarf in the same folder.

zzexe

zzexe is a small tool similar to gzexe that instead uses zstd to compress single applications. I've included it because it has a similar goal to appdwarf on the whole, just on a smaller scale.

I wrote it in part because I felt that gzexe was overly complicated, as I used to just use a lightly modified version of it that replaces gzip with zstd, and to add a couple additional features.

It supports adding in a prefix command to the file using the -p options e.g. zzexe -p wine some.exe will generate a compressed file that will then run the exe.

It also automatically appends the extension of the source file to the temporary file created when ran since some programs care about that, such as an emulator only running games of an expected file extension.

zzexe requires zstd for both creating and running files and moreutils for creating them.