GridNix is a NixOS-based distribution for industrial control systems (ICS) and hardware security research. This README is intentionally minimal: it explains how to build the ISO and how to generate assets when needed. Detailed usage, customization, and packaging guidance live in the docs.
Requirements:
- Nix with flakes enabled
- A Linux host or a Linux VM/container (see docs/BUILD-ON-MAC.md if on macOS)
Build the ISO:
# From the repository root
./build.shTo build for a specific architecture or clean before build:
./build.sh --arch aarch64-linux
./build.sh --cleanThe build script uses Nix flakes and the internal build steps (build_iso) to produce an ISO in the build directory. See build.sh for more options.
Most icon and image assets were removed from this README for clarity. If you need to regenerate PNG assets from SVG sources, use the provided script:
- Icon generator: assets/icons/generate-pngs.sh
The script exposes a helper (convert_svg_to_png) to create PNGs at multiple resolutions. Ensure Inkscape is installed before running it.
# regenerate PNG icons
cd assets/icons
chmod +x generate-pngs.sh
./generate-pngs.sh- Adding custom packages: see docs/custom-packages.md
- Custom modules and longer customization guide: see docs/CUSTOMIZATION.md
See CONTRIBUTING.md for contribution guidelines.
GridNix is released under the MIT License (see LICENSE).
