System Requirements
Before installing Rusty Compress, ensure your system meets these requirements.
Prerequisites
- Node.js (v16 or higher) - Download Node.js
- npm or yarn - Comes with Node.js
- Rust (latest stable) - Install via rustup
Platform-Specific Dependencies
macOS
# Install Xcode Command Line Tools
xcode-select --install
Linux
# Ubuntu/Debian
sudo apt install build-essential libwebkit2gtk-4.0-dev libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev
# Fedora
sudo dnf install webkit2gtk3-devel openssl-devel gtk3-devel libappindicator-gtk3-devel
# Arch Linux
sudo pacman -S base-devel webkit2gtk openssl gtk3 libappindicator-gtk3
Windows
- Install Microsoft C++ Build Tools
- Install WebView2 Runtime
Installation Methods
Method 1: Clone from Repository (Recommended for Development)
Step 1: Clone the Repository
git clone https://github.com/vanhonit/rusty-compress.git
cd rusty-compress
Step 2: Install Dependencies
npm install
Step 3: Build and Run
npm run tauri dev
This will:
- Build the Rust backend
- Start the Vite development server
- Launch the application window
Method 2: Using Package Manager (Coming Soon)
We’re working on package distribution for easier installation:
- Homebrew (macOS):
brew install rusty-compress - Snap (Linux):
sudo snap install rusty-compress - Chocolatey (Windows):
choco install rusty-compress
Method 3: Download Pre-built Binaries (Coming Soon)
Pre-built installers will be available for:
- macOS:
.dmginstaller - Windows:
.exeinstaller and.msi - Linux:
.AppImage,.deb, and.rpmpackages
Verification
After installation, verify Rusty Compress is working correctly:
# Test the application
npm run tauri dev
# Run backend tests
cd src-tauri
cargo test
# Run linter
cargo clippy
Troubleshooting
Common Issues
Rust Installation Issues
Problem: Rust compiler not found
Solution:
# Update Rust toolchain
rustup update
# Ensure Rust is in PATH
source $HOME/.cargo/env
Node.js Version Issues
Problem: Node.js version too old
Solution:
# Use nvm (Node Version Manager)
nvm install 18
nvm use 18
Build Failures on Linux
Problem: Missing system dependencies
Solution:
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install libwebkit2gtk-4.0-dev build-essential curl wget file libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev
Windows Build Issues
Problem: C++ Build Tools missing
Solution:
- Download Visual Studio Build Tools
- Install “Desktop development with C++”
- Restart terminal and try again
macOS Permission Issues
Problem: Permission denied errors
Solution:
# Fix permissions for node_modules
sudo chown -R $(whoami) ~/.npm
sudo chown -R $(whoami) /usr/local/lib/node_modules
# Alternative: Use Node Version Manager
nvm install 18
nvm use 18
Development Server Issues
Port Already in Use
Problem: Vite development server port 1420 already in use
Solution:
# Find and kill process using port 1420
lsof -ti:1420 | xargs kill -9
# Or use a different port by modifying vite.config.js
Hot Module Replacement (HMR) Not Working
Problem: Changes not reflected in browser
Solution:
# Clear cache and restart
rm -rf node_modules/.vite
npm run tauri dev
Development Setup
For active development, follow these additional steps:
IDE Setup
VS Code (Recommended):
# Install extensions
code --install-extension tauri-apps.tauri-vscode
code --install-extension rust-lang.rust-analyzer
code --install-extension dbaeumer.vscode-eslint
Recommended VS Code Settings:
{
"rust-analyzer.cargo.loadOutDirsFromCheck": true,
"rust-analyzer.procMacro.enable": true,
"tauri.devPath": "http://localhost:1420",
"tauri.beforeDevCommand": "npm run dev"
}
Environment Variables
Create a .env file in the project root:
# Development settings
VITE_TAURI_HOST=localhost
VITE_TAURI_PORT=1420
# Rust environment
RUST_LOG=debug
RUST_BACKTRACE=1
Build Configuration
Production Build
# Build React frontend
npm run build
# Build complete application
npm run tauri build
Build artifacts will be in src-tauri/target/release/bundle/:
- macOS:
.dmgfile - Windows:
.exeand.msiinstallers - Linux:
.AppImage,.deb, and.rpmpackages
Custom Build Configuration
Edit tauri.conf.json to customize:
{
"build": {
"beforeBuildCommand": "npm run build",
"beforeDevCommand": "npm run dev",
"devPath": "http://localhost:1420",
"distDir": "../dist"
},
"tauri": {
"bundle": {
"identifier": "com.rustycompress.app",
"icon": ["icons/icon.png"],
"targets": ["dmg", "msi", "deb"]
}
}
}
Next Steps
Once installed:
- Explore Features - Learn about what Rusty Compress can do
- Read Usage Guide - How to use the application
- Check API Reference - Backend commands and functions
- Development Guide - How to contribute
💡 Need Help?
If you encounter any issues during installation, please check our troubleshooting section or open an issue on GitHub.
Get Support