2021-12-31 19:37:50 +00:00
|
|
|
appdwarf
|
2021-05-15 19:34:16 +00:00
|
|
|
=======
|
2022-03-25 22:40:58 +00:00
|
|
|
A tool to convert an AppDir or an existing [AppImage](https://appimage.org/) file,
|
|
|
|
either as a local file or from a URL, into a highly compressed portable image using
|
|
|
|
[dwarfs](https://github.com/mhx/dwarfs).
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-03-25 22:40:58 +00:00
|
|
|
This is a small script and the bulk of the work is in the original `dwarfs` project,
|
2022-04-15 18:05:20 +00:00
|
|
|
so all credit deserves to go there. It has not been extensively tested so I cannot
|
|
|
|
guarantee it will function without issue.
|
2021-05-29 20:13:12 +00:00
|
|
|
|
2021-05-15 19:34:16 +00:00
|
|
|
## Requirements
|
|
|
|
|
|
|
|
In order to create the images, you will need:
|
|
|
|
|
2022-03-25 22:40:58 +00:00
|
|
|
- [dwarfs](https://github.com/mhx/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.
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-03-25 22:40:58 +00:00
|
|
|
If you only wish to run an existing image, only `dwarfs` is needed in PATH.
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-03-25 22:40:58 +00:00
|
|
|
## How to create an appdwarf
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-03-25 22:40:58 +00:00
|
|
|
For your own programs, simply create an AppImage-style AppDir and run `appdwarf {directory}`.
|
2022-05-13 00:32:37 +00:00
|
|
|
You can also invoke `appdwarf -a {AppImage}` to convert an AppImage.
|
2022-03-25 22:40:58 +00:00
|
|
|
I suggest checking the help (listed via `appdwarf --help`) for other options.
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-03-25 22:52:40 +00:00
|
|
|
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.
|
2021-05-15 19:34:16 +00:00
|
|
|
|
2022-04-16 23:21:07 +00:00
|
|
|
`zzexe` requires `zstd` for both creating and running files and `moreutils` for creating them.
|