An open API service indexing awesome lists of open source software.

https://github.com/neoapps-dev/rustpack

Bundle your Rust applications for seamless cross-platform execution
https://github.com/neoapps-dev/rustpack

bundle pack rust tar zip

Last synced: 4 months ago
JSON representation

Bundle your Rust applications for seamless cross-platform execution

Awesome Lists containing this project

README

          


RustPack Logo
Logo by @syntaxspin

RustPack


Bundle your Rust applications for seamless cross-platform execution



+ GNU/Linux

## 🚀 What is RustPack?

RustPack is a powerful tool that simplifies cross-platform Rust application distribution. Build once, run anywhere - without requiring your users to have Rust installed.

```bash
rustpack -i ./my-project -o my-awesome-app.rpack -t x86_64-apple-darwin,x86_64-pc-windows-msvc,x86_64-unknown-linux-gnu
```

## ✨ Features

- **Single Executable** - Package your Rust application as a standalone executable
- **Cross-Platform** - Automatically detects and runs the right binary for the user's platform
- **Zero Dependencies** - Users don't need Rust or any other dependencies installed
- **Multiple Architectures** - Build for various platforms in one operation
- **Offline Execution** - Apps run without requiring network connectivity

## 🛠️ Installation

RustPack is available on [crates.io](https://crates.io/crates/rustpack):

```bash
cargo install rustpack
```

## 📋 Usage

### Basic Usage

```bash
rustpack -i path/to/your/project -o output_name.rpack
```

### Specify Target Platforms

```bash
rustpack -i . -o myapp.rpack -t x86_64-apple-darwin,aarch64-apple-darwin,x86_64-unknown-linux-gnu
```

### Run Your Packaged App

```bash
./myapp.rpack
```

## 🔍 How It Works

RustPack creates a self-extracting archive with a smart bootstrap script that:

1. Detects the user's platform and architecture
2. Extracts the appropriate binary
3. Executes it with all command-line arguments passed through

## 📊 Supported Platforms

- 🍎 macOS (x86_64, aarch64)
- 🐧 GNU/Linux (x86_64, aarch64, arm, x86)
- 🪟 Windows (x86_64, x86)

## 🤝 Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request.

## ❤️ Special Thanks

- [The Rust Programming Language](https://rust-lang.org)
- [SyntaxSpin](https://github.com/syntaxspin) for the logo :)

## 📝 License

This project is licensed under the GNU GPL-3.0 License - see the [LICENSE](LICENSE) file for details.