Commit a70ab589 authored by Silvan Mosberger's avatar Silvan Mosberger
Browse files

root: shell.nix for nixfmt

This uses the reusable pinned Nixpkgs from the parent commit to create a
shell.nix file for an environment with a pinned nixfmt version.
parent b33ac05d
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -15,8 +15,9 @@
/.github/workflows @NixOS/Security @Mic92 @zowoq
/ci @infinisil

# EditorConfig
# Develompent support
/.editorconfig @Mic92 @zowoq
/shell.nix @infinisil @NixOS/Security

# Libraries
/lib                        @infinisil
+29 −0
Original line number Diff line number Diff line
name: "Check shell"

on:
  pull_request_target:

permissions: {}

jobs:
  x86_64-linux:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
        with:
          # pull_request_target checks out the base branch by default
          ref: refs/pull/${{ github.event.pull_request.number }}/merge
      - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
      - name: Build shell
        run: nix-build shell.nix

  aarch64-darwin:
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
        with:
          # pull_request_target checks out the base branch by default
          ref: refs/pull/${{ github.event.pull_request.number }}/merge
      - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
      - name: Build shell
        run: nix-build shell.nix

shell.nix

0 → 100644
+30 −0
Original line number Diff line number Diff line
# A shell to get tooling for Nixpkgs development
#
# Note: We intentionally don't use Flakes here,
# because every time you change any file and do another `nix develop`,
# it would create another copy of the entire ~500MB tree in the store.
# See https://github.com/NixOS/nix/pull/6530 for the future
{
  system ? builtins.currentSystem,
}:
let
  pinnedNixpkgs = builtins.fromJSON (builtins.readFile ci/pinned-nixpkgs.json);

  nixpkgs = fetchTarball {
    url = "https://github.com/NixOS/nixpkgs/archive/${pinnedNixpkgs.rev}.tar.gz";
    sha256 = pinnedNixpkgs.sha256;
  };

  pkgs = import nixpkgs {
    inherit system;
    config = {};
    overlays = [];
  };
in
pkgs.mkShellNoCC {
  packages = [
    # The default formatter for Nix code
    # https://github.com/NixOS/nixfmt
    pkgs.nixfmt-rfc-style
  ];
}