Packaging

Packaging is the process of creating, modifying and bundling the files your application needs to function outside your development environment. It may also include creating installers and/or artifacts for particular package managers or operating systems.

There are a couple of crates which let you package your application for desktop or server environment:


 * - Build  files for Android.
 * - Arch Linux (PKGBUILD).
 * -  for macOS and iOS,   for Linux and   for Windows (README says that Windows and macOS support is experimental). There are also plans for   support for Linux and   support for Android.
 * - Build  packages for Linux.
 * - Arch Linux (PKGBUILD). Might be abandoned.
 * - Arch Linux (PKGBUILD).
 * -  and  . Uses docker?
 * - Build  packages for Linux.
 * - Formerly . Build  bundles for macOS.

There are some other crates which are somewhat orthogonal to the above crates, but are nevertheless useful for application distribution.


 * - Inlcude Windows resources in your executables.
 * Include Windows resources in executables and DLLs.
 * - In-place updates for Rust executables.


 * - Build your crate for multiple architectures and operating systems in one go. Might be abandoned.
 * - Documentation seems sparse/non-existent. Presumably creates tarballs with your executables.

There are also some crates which target web technologies:



TODO: Look closer at the following crates: