First off, thank you for considering contributing to RustFS! It's people like you that make RustFS such a great tool.
This repository manages the Nix Flake for prebuilt RustFS binaries.
- Nix with Flakes enabled.
- nixpkgs-fmt for code formatting.
Before submitting a PR, please ensure your changes are valid:
# Format check
nix shell nixpkgs#nixpkgs-fmt -c nixpkgs-fmt --check .
# Syntax and basic flake check
nix flake check
# Build the default package for your system
nix build .#default
# Test the example configuration
cd examples && nix eval .#nixosConfigurations.example-host.config.services.rustfsThe sources.json file tracks the upstream versions and hashes. When a new version of RustFS is released:
- Update the
versionfield insources.json. - Update the
sha256hashes for all supported platforms. - Verify the build:
nix build ..
- Nix Style: Follow the Nixpkgs architecture guidelines.
- Modularity: Keep the NixOS module (
nixos/rustfs.nix) decoupled from the package definition. - Documentation: Any new option in the NixOS module must include a clear
description.
- Create a new branch:
git checkout -b feat/your-feature-name. - Commit your changes using Conventional Commits (e.g.,
feat: add tlsDirectory option). - Ensure the
examples/are updated if you change the module interface. - Submit the PR and wait for the maintainers' review.
If you discover a security vulnerability, please do not open an issue. Instead, contact the maintainers directly using the contact options provided in this repository's hosting platform.
By contributing, you agree that your contributions will be licensed under the project's LICENSE.