A sleek desktop app for downloading Steam game depots using manifest data.
Upload .lua files, search across GitHub repos, and let the app handle manifests, depot keys, and downloads โ all in one click.
Warning
This project does NOT support or encourage piracy in any way.
- DepotDownloaderMod must ONLY be used with your own legally obtained Steam keys.
- This tool is intended for legitimate use cases only (e.g., downloading your own purchased content, archiving, backup, etc.).
- The developer takes no responsibility for any misuse of this tool.
- By using this software, you agree to comply with all applicable laws and Steam's Terms of Service.
| Feature | |
|---|---|
| ๐ | Drag & drop .lua file upload |
| ๐ | Multi-repo search via Internet Archive |
| ๐ฆ | Automatic manifest download from Internet Archive |
| ๐ | Automatic depot keys generation |
| โก | Integrated DepotDownloader execution |
| ๐ | Real-time download progress tracking |
| ๐ฎ | Steam Store API integration โ game names + cover art |
| ๐ | Dark / Light theme support |
| โ๏ธ | Configurable download location & GitHub token |
| ๐ | Fully self-contained โ DepotDownloaderMod embedded |
How it works โ in 5 steps:
- ๐ฅ Download the installer from Releases
- ๐ Upload your
.luafile or search for a game - โ Select the depots and manifests you want
- ๐ Click Download โ everything happens automatically
- โจ Done! Files are in your configured download folder
| Requirement | Details | |
|---|---|---|
| ๐ป | Operating System | Windows 10 / 11 (64-bit) or a modern Linux distro (glibc โฅ 2.35) |
| โ๏ธ | Runtime (Windows) | .NET 9.0 Runtime โ required by DepotDownloader |
| ๐ฆ | Runtime (Linux) | webkit2gtk-4.1, libayatana-appindicator3, librsvg2 (install commands below) |
| ๐ | Network | Internet connection |
- Head to the Releases page and download the latest
.exeinstaller (NSIS) - Run the installer โ installs per-user, no admin required
- Launch Steam Manifest Downloader from the Start Menu
Note
Make sure you have the .NET 9.0 Runtime installed. The app will warn you on first launch if it's missing.
The cleanest path on Arch-based distros: an official AUR package handled by pacman. Two variants:
# Precompiled โ installs in seconds, pulls the AppImage binary from the GitHub release
paru -S steam-manifest-downloader-bin
# From source โ recompiles the Rust binary locally (~5 min on a modern CPU)
paru -S steam-manifest-downloaderBoth packages provide/conflict each other, so you only ever have one installed. The -bin flavor is recommended unless you want a reproducible local build.
Sources: steam-manifest-downloader-bin ยท steam-manifest-downloader. Updates flow through your package manager (paru -Syu), and the in-app updater detects this and points you back at it instead of fetching an AppImage.
Download the latest .AppImage from Releases.
Tauri apps on Linux don't bundle their own browser engine โ they render the UI through the system WebKitGTK. Install the runtime for your distro:
Ubuntu / Debian (22.04+ / 12+)
sudo apt install libwebkit2gtk-4.1-0 libayatana-appindicator3-1 librsvg2-2Arch / CachyOS / Manjaro
sudo pacman -S webkit2gtk-4.1 libayatana-appindicator librsvgFedora
sudo dnf install webkit2gtk4.1 libappindicator-gtk3 librsvg2openSUSE (Tumbleweed / Leap 15.6+)
sudo zypper install libwebkit2gtk-4_1-0 libayatana-appindicator3-1 librsvg-2-2Then make the AppImage executable and launch it:
chmod +x Steam\ Manifest\ Downloader_*_amd64.AppImage
./Steam\ Manifest\ Downloader_*_amd64.AppImageNote
On NixOS, portable binaries can't find system libs through the normal loader paths. Launch via steam-run ./Steam\ Manifest\ Downloader_*_amd64.AppImage, or wrap the binary in a Nix derivation that lists webkitgtk_4_1, libayatana-appindicator, librsvg and gtk3 as build inputs.
๐ง Building from Source
- Rust (latest stable) + Cargo โ Install via rustup
- Tauri CLI โ
cargo install tauri-cli - .NET SDK 9.0 โ Only needed if building DepotDownloaderMod from source (Download)
- Linux additional:
libwebkit2gtk-4.1-dev,libappindicator3-dev,librsvg2-dev,patchelf(for AppImage)
The project embeds DepotDownloaderMod binaries at compile time. Pre-built versions are already included in the repo:
DepotDownloaderMod-Windows/โ Windows build (framework-dependent, requires .NET runtime)DepotDownloaderMod-linux-full/โ Linux build (self-contained, no runtime needed)
If you want to build DepotDownloaderMod yourself:
Source: github.com/SteamAutoCracks/DepotDownloaderMod
git clone https://github.com/SteamAutoCracks/DepotDownloaderMod.git
cd DepotDownloaderMod
dotnet publish -c Release -o ./publish-windowsCopy all files from publish-windows/ to DepotDownloaderMod-Windows/ in this project:
DepotDownloaderMod.exeDepotDownloaderMod.dllDepotDownloaderMod.deps.jsonDepotDownloaderMod.runtimeconfig.jsonSteamKit2.dllprotobuf-net.Core.dllprotobuf-net.dllQRCoder.dllSystem.IO.Hashing.dllZstdSharp.dll
git clone https://github.com/SteamAutoCracks/DepotDownloaderMod.git
cd DepotDownloaderMod
dotnet publish -c Release -r linux-x64 --self-contained true \
-p:PublishSingleFile=true -o ./publish-linux[!CAUTION] Do NOT use
-p:PublishTrimmed=trueโ .NET trimming removes reflection metadata needed by SteamKit2/protobuf-net, causing "A task was canceled" errors at runtime.
Copy publish-linux/DepotDownloaderMod to DepotDownloaderMod-linux-full/DepotDownloaderMod in this project.
cargo tauri buildOutput:
- NSIS installer:
src-tauri/target/release/bundle/nsis/ - Portable executable:
src-tauri/target/release/steam-manifest-downloader.exe
NO_STRIP=true APPIMAGE_EXTRACT_AND_RUN=1 cargo tauri buildOutput: src-tauri/target/release/bundle/appimage/Steam Manifest Downloader_1.0.0_amd64.AppImage
[!NOTE]
NO_STRIP=trueprevents stripping symbols from the embedded .NET binary.APPIMAGE_EXTRACT_AND_RUN=1is needed on some distros for the AppImage bundler.
The include_bytes! macro in src-tauri/src/services/embedded_tools.rs embeds the DDM binaries at compile time:
- Windows build reads from
DepotDownloaderMod-Windows/ - Linux build reads from
DepotDownloaderMod-linux-full/
[!IMPORTANT] The DDM binary files must be in place before running
cargo tauri build. The Rust compiler reads them viainclude_bytes!at compile time โ if the files are missing, the build will fail.
| Layer | Technology |
|---|---|
| Backend | Rust, reqwest, tokio, serde |
| Frontend | HTML / CSS / JS (vanilla) |
| Framework | Tauri v2 |
| Downloader | DepotDownloaderMod (.NET 8) |
๐ Project Structure
DepoDownloaderWebApp/
โโโ public/ # Frontend (HTML/CSS/JS)
โ โโโ index.html # Main UI
โ โโโ css/style.css # Styles & themes
โ โโโ js/app.js # Application logic
โโโ src-tauri/
โ โโโ src/
โ โ โโโ main.rs # Tauri entry point
โ โ โโโ commands/ # Tauri command handlers
โ โ โ โโโ download.rs # Download orchestration
โ โ โ โโโ search.rs # Game search
โ โ โ โโโ file_ops.rs # File operations
โ โ โ โโโ settings.rs # App settings
โ โ โ โโโ system.rs # System utilities
โ โ โ โโโ window.rs # Window controls
โ โ โโโ services/ # Business logic
โ โ โโโ github_api.rs # GitHub API client
โ โ โโโ manifest_hub_api.rs
โ โ โโโ steam_store_api.rs
โ โ โโโ depot_runner.rs # DepotDownloaderMod runner
โ โ โโโ lua_parser.rs # .lua file parser
โ โ โโโ ...
โ โโโ Cargo.toml # Rust dependencies
โ โโโ tauri.conf.json # Tauri configuration
โโโ DepotDownloaderMod/ # Embedded .NET tool
โโโ assets/ # App icons
โโโ README.md
This project is licensed under the GPL-2.0 License.
- DepotDownloaderMod โ Steam depot downloading engine
- Steam Store API โ Game metadata & artwork
- Tauri โ Desktop application framework
Made with โค๏ธ and ๐ฆ