Skip to content

Nix flake #1933

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Nix flake #1933

wants to merge 3 commits into from

Conversation

poelzi
Copy link
Contributor

@poelzi poelzi commented Apr 9, 2025

Description

Add nix flake for deterministic builds of walrus packages.
Added docker image generation
When NixOS/nixpkgs#387337 lands on master, I will change nixpkgs to unstable again.

Nix is save against supply chain attacks and allows builds to be reproducible, even years later.
Nix flakes allows users to properly compose development environments with composition and overrides, making the dev and deployment experience much smoother and faster, including rollbacks.

Next step is to add NixOS modules for config and service generation

Requirements:

  • nix package manager (works on all linux systems)
  • optional: direnv for best developer experience

Test plan

Did local testing, I would like add workflows as well


Release notes

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that
a user might notice and any actions they must take to implement updates. (Add release notes after the colon for each item)

  • Storage node:
  • Aggregator:
  • Publisher:
  • CLI:

poelzi added 3 commits April 18, 2025 22:42
WALRUS_CONFIG is the full config path to the configuration file
* defines warus/walrus-service/walrus-backup derivates
* proper development environment with caching (sccache) and paralell linking (molt)
* justfile for easy target execution
@bmwill
Copy link

bmwill commented Apr 24, 2025

Love seeing more folks interested in deterministic builds.

We've been working on getting deterministic build infrastructure setup for the suite of applications that Mysten builds and maintains and we are close to integrating fully deterministic builds into our release pipelines. I'm hoping we'll be able to do so in the coming weeks. We do not use Nix and likely don't plan on adding support for it, but instead are leveraging StageX for this. Here you can find a comparison between StageX and Nix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants