Skip to content

Roadmap #359

@Zimmi48

Description

@Zimmi48

Draft issue of the Nix Toolbox roadmap being discussed at Rocq'n'share.

  1. Switch to flakes (as a wrapper around the existing)
    • Use flake templates for the first step of initializing the Nix Toolbox
    • Turn shell hooks into apps (and add them to all devShells from the toolbox)
    • Find what to do about --args bundle and --args jobs since they are not supported by flakes. Do we generate one devShell and one package for each combination of bundle and package? Maybe with attribute names with slashes in them?
    • Find how to work with purity of flakes. Maybe an app to pin branches and PRs with revisions and hashes? Or just use npins for that.
    • If we switch from the current nixpkgs pinning mechanism to flakes input: We get rid of the updateNixpkgs functions by replacing them by calls to nix flake update, and in the case where we want to temporarily point to another location like for testing nixpkgs PRs in the Nix Toolbox, we do nix flake update --override-input nixpkgs 'github:NixOS/nixpkgs?ref=pull/PRNUM/head' nixpkgs.
  2. Rename the Nix Toolbox / integrate in official Rocq organization.
  3. Write tutorials / guides for the Rocq website.
  4. Splitting override mechanism and make it possible to define overlays only once.
  5. Splitting CI generation.
  6. Splitting definition of the toolbox and CI for nixpkgs?
  7. Use a different implementation for turning the configuration into a CI that would not be specific to GitHub?
  8. Use the Nix Toolbox in the Rocq repo.
  9. Share the overlay mechanism between the Rocq GitLab CI and the Nix Toolbox.
  10. Look into using Nix for the Rocq Platform.
    • Get a Nix expression for the Platform picks.
    • Look into recreating a binary installer for Linux using Nix (maybe AppImage).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions