Skip to content
Snigdha OSDecentralized

Developer Community

Contributing to Snigdha OS Decentralized

We welcome contributions from kernel developers, security researchers, Rust engineers, technical writers, and translators. All contributions are held to rigorous cryptographic and reproducibility standards.

Arch Linux Build Host

ISO generation requires an Arch Linux host with archiso 92-1, standard development tools, and user namespace privileges enabled.

Modern Rust Toolchain

Snigdha Security Center and Penetration Center are compiled using stable Rust 2021 edition with GTK4, Libadwaita, and tokio asynchronous runtime.

Signed Git Commits

All merge requests and Git commits must be cryptographically signed with an OpenPGP or SSH key to guarantee provenance and prevent code tampering.

How to Build the Live ISO Locally

Our build tree supports both privileged and unprivileged user-namespace builds using standard Make targets. The unprivileged wrapper uses Linux user namespaces to construct the rootfs without requiring root privileges on your workstation.

Building Snigdha OS Decentralized ISO
#1. Clone the core distribution repository
$git clone https://gitlab.com/SnigdhaOS/decentralized.git
$cd decentralized
$
#2. Inspect dependencies and profile
$make check
$
#3. Build ISO image in unprivileged user namespace
$make iso
$
#4. Verify generated artifacts
$make verify
Output ISO is saved to \`build/out/snigdha-decentralized-[version]-x86_64.iso\`

Automated Testing & Verification

Never submit code without running the corresponding subsystem test suites. We maintain unit, integration, and failure-injection tests across all components.

Running Subsystem Tests
#Test Amnesia subsystem (tmpfs overlay, swap masking, watchdog)
$pytest amnesia/tests/
$
#Test NetGuard firewall and network namespace isolation
$pytest netguard/tests/
$
#Test Persistence manifest integrity and teardown
$pytest persistence/tests/
$
#Test Security Center Rust crate
$cd security-center && cargo test
$
#Test Penetration Center Rust crate
$cd penetration-center && cargo test

Project Repositories on GitLab

RepositoryRolePrimary LanguageDescriptionLink
Snigdha OS DecentralizedOperating SystemShell / Python / CCore operating system build tree, ArchISO baseline profile, NetGuard nftables engine, Amnesia watchdog, and dm-verity integration.View
Snigdha Security CenterSecurity ToolingRust / GTK4Native GTK4 + Rust system security dashboard delivering unprivileged real-time telemetry from NetGuard, Amnesia, and AppArmor.View
Snigdha Penetration CenterSecurity ToolingRust / GTK4Security tooling discovery, package management, and launcher unifying Arch, BlackArch, and Chaotic-AUR repositories.View
Snigdha DistroLabPackage InfrastructureTypeScript / RustDistribution packaging lab, containerized package build pipelines, and repository management tools.View
Snigdha OS CorePackage InfrastructureShell / PKGBUILDBase distribution packages, pacman customizations, system hooks, release identifiers, and default configurations.View
Snigdha Rescue ToolUtilitiesRust / TauriOffline system recovery, chroot diagnostics, and storage repair utility for live environments.View

Security-Sensitive Contribution Requirements

  • • No Telemetry Additions: Code introducing remote telemetry, tracking pixels, or non-Tor external connections will be rejected immediately.
  • • Fail-Closed Guarantee: Any modification to NetGuard or firewall rules must maintain fail-closed invariants under network failure injection.
  • • Preserve Unprivileged Runtime: Applications must not demand setuid root binaries or sudo execution during active user sessions.
  • • GPL-3.0 Licensing: All contributed code must be compatible with the GNU General Public License v3.0 or equivalent permissive open-source license.