Contributing
Contributions are welcome.
Development Setup
Clone the repository:
Install development dependencies:
Running Tests
Code Quality
Run linting:
Run type checking:
Run Nix checks:
Documentation
Install docs dependencies and build the site:
The generated site is written to site/.
GitHub Pages deploys that directory from the Documentation workflow on main.
Project Structure
zfs_unlock.py # CLI, client, receiver, config, doctor, and service commands
nix/nixos-module.nix # NixOS receiver module
nix/client-module.nix # NixOS client daemon module
tests/ # Python, CLI, integration, packaging, and NixOS module tests
docs/ # Zensical documentation site
Release Checklist
- Update
VERSION. - Open and merge a PR.
- Publish a GitHub release tagged
vX.Y.Z. - Confirm the
Upload Python Packageworkflow publishes to PyPI.
License
By contributing, you agree that your contributions will be licensed under the MIT License.