Source Code & Building from Source
NetStacks Personal Edition (Terminal + Local Agent) is open source under Apache 2.0. Find the code on GitHub, review it, build from source, or contribute.
Overview
NetStacks Personal Edition — the Terminal application and the Local Agent — is open source under the Apache 2.0 license. You can read every line of code, build it yourself, fork it, modify it, and redistribute it under the terms of the license.
Most users will simply download a signed installer from the download page. The installer is the same binary anyone could produce by building from source — it is just code-signed and notarized so the OS does not warn you on first launch. Building from source is for engineers who want to verify the binary, run a development build, or contribute changes.
Where the Code Lives
NetStacks Terminal & Local Agent (Apache 2.0):
- github.com/netstacks/netstacks-terminal — the Tauri desktop shell (frontend) and the Rust Local Agent (the sidecar that handles SSH, the credential vault, session recordings, and SFTP).
Credential vault primitives (Apache 2.0):
- github.com/netstacks/netstacks-crypto — the AES-256-GCM + Argon2id credential-vault crate used by the Local Agent. Vendored as a dependency of the Terminal repo.
Building from Source
Detailed, platform-specific build instructions live in the repository. They cover toolchain installation, signing keys, and the bundle format for each OS:
- BUILD-LINUX.md — AppImage, .deb, and .rpm builds.
- BUILD-MACOS.md — .dmg builds for Apple Silicon and Intel, plus notarization steps.
- BUILD-WINDOWS.md — .msi and .exe builds with Authenticode signing.
The minimum toolchain across all three platforms:
# Rust toolchain (Local Agent)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Node.js 20+ and pnpm (Tauri shell + frontend)
# Use your platform's preferred installer (nvm, brew, winget, etc.)
# Tauri CLI
cargo install tauri-cli
# Clone and build
git clone https://github.com/netstacks/netstacks-terminal.git
cd netstacks-terminal
pnpm install
cargo tauri buildThe full README at the root of the repo lists every supported toolchain version and any platform-specific setup steps. The signing keys used for the official releases are not in the repo — an unsigned build produced from source will trigger a Gatekeeper / SmartScreen warning on first launch, which is normal.
Contributing
Contributions are welcome. The repository's CONTRIBUTING.md covers the full contribution workflow. Briefly:
- All commits must be DCO sign-off-ed (
git commit -s). - PRs must include tests and pass CI on all three platforms.
- Larger feature changes should be discussed in a GitHub Discussion before you write the code — the maintainer may push back on scope.
- Security findings go privately to security@netstacks.net, not into a public issue. See the repo's SECURITY.md for the disclosure timeline.
What Is Not Open Source
NetStacks is open-core. The Terminal and Local Agent (Personal Edition) are open source. The following components are closed source and ship under a commercial license:
- NetStacks Controller — the server-side platform for teams (shared credential vaults, templates, stack deployments, RBAC, SSO, audit logging).
- The first-party plugins — alerts, incidents, and profiling-agents. These run inside the Controller, not inside the Local Agent, and they are not part of Personal Edition.
See the pricing page for the split. If you need Controller features, the path is to contact sales; you cannot build a Controller from source.
Q&A
- Q: Why do you ask me to sign in before downloading the free installer?
- A: We use a $0 Stripe checkout to email you a download link and to keep an aggregate count of who has the software. There is no card capture, no upgrade prompt, and no charge. If you would rather skip the signup, build from source — the resulting binary is identical in functionality.
- Q: Are my changes to a fork covered by Apache 2.0?
- A: Yes — you may modify, redistribute, and relicense your fork subject to Apache 2.0's requirements (notice file, patent grant, attribution). The official NetStacks trademarks and logos are not licensed for use on a fork; rename the binary if you ship a modified version.
- Q: Can I run a Controller from source?
- A: No. The Controller is a separate, closed-source product. Contact sales for Controller licensing.
- Q: How do I report a bug or request a feature?
- A: Open an issue on the netstacks-terminal issue tracker. Bug reports must include a minimal reproducer; feature requests are closed unless accompanied by a working PR or a strong design proposal.