System Requirements

Before installing Rusty Compress, ensure your system meets these requirements.

Prerequisites

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

Installation Methods

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: .dmg installer
  • Windows: .exe installer and .msi
  • Linux: .AppImage, .deb, and .rpm packages

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:

  1. Download Visual Studio Build Tools
  2. Install “Desktop development with C++”
  3. 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: .dmg file
  • Windows: .exe and .msi installers
  • Linux: .AppImage, .deb, and .rpm packages

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:

  1. Explore Features - Learn about what Rusty Compress can do
  2. Read Usage Guide - How to use the application
  3. Check API Reference - Backend commands and functions
  4. 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