replace nixpkgs-fmt with nixfmt-rfc-style

This commit is contained in:
Jörg Thalheim 2024-08-15 08:39:41 +02:00
parent a51bd670d6
commit 5f8bbf7681
10 changed files with 127 additions and 89 deletions

View file

@ -1,4 +1,10 @@
{ resholve, lib, coreutils, direnv, nix }:
{
resholve,
lib,
coreutils,
direnv,
nix,
}:
# resholve does not yet support `finalAttrs` call pattern hence `rec`
# https://github.com/abathur/resholve/issues/107
@ -24,7 +30,10 @@ resholve.mkDerivation rec {
default = {
scripts = [ "share/${pname}/direnvrc" ];
interpreter = "none";
inputs = [ coreutils nix ];
inputs = [
coreutils
nix
];
fake = {
builtin = [
"PATH_add"

View file

@ -2,7 +2,9 @@
description = "A faster, persistent implementation of `direnv`'s `use_nix`, to replace the built-in one.";
nixConfig.extra-substituters = [ "https://cache.thalheim.io" ];
nixConfig.extra-trusted-public-keys = [ "cache.thalheim.io-1:R7msbosLEZKrxk/lKxf9BTjOOH7Ax3H0Qj0/6wiHOgc=" ];
nixConfig.extra-trusted-public-keys = [
"cache.thalheim.io-1:R7msbosLEZKrxk/lKxf9BTjOOH7Ax3H0Qj0/6wiHOgc="
];
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
@ -16,9 +18,11 @@
};
};
outputs = inputs @ { flake-parts, ... }:
flake-parts.lib.mkFlake { inherit inputs; }
({ lib, ... }: {
outputs =
inputs@{ flake-parts, ... }:
flake-parts.lib.mkFlake { inherit inputs; } (
{ lib, ... }:
{
imports = [
./treefmt.nix
./pkgs/bash4/flake-module.nix
@ -30,20 +34,26 @@
"x86_64-darwin"
"aarch64-darwin"
];
perSystem = { config, pkgs, self', ... }: {
perSystem =
{
config,
pkgs,
self',
...
}:
{
packages = {
nix-direnv = pkgs.callPackage ./default.nix { };
default = config.packages.nix-direnv;
test-runner-stable = pkgs.callPackage ./test-runner.nix {
nixVersion = "stable";
};
test-runner-latest = pkgs.callPackage ./test-runner.nix {
nixVersion = "latest";
};
test-runner-stable = pkgs.callPackage ./test-runner.nix { nixVersion = "stable"; };
test-runner-latest = pkgs.callPackage ./test-runner.nix { nixVersion = "latest"; };
};
devShells.default = pkgs.callPackage ./shell.nix {
packages = [ config.treefmt.build.wrapper pkgs.shellcheck ];
packages = [
config.treefmt.build.wrapper
pkgs.shellcheck
];
};
checks =
@ -54,13 +64,12 @@
packages // devShells;
};
flake = {
overlays.default = final: _prev: {
nix-direnv = final.callPackage ./default.nix { };
};
overlays.default = final: _prev: { nix-direnv = final.callPackage ./default.nix { }; };
templates.default = {
path = ./templates/flake;
description = "nix flake new -t github:Mic92/nix-direnv .";
};
};
});
}
);
}

View file

@ -8,8 +8,11 @@ bash.overrideAttrs (_old: {
};
# generated with update-patch-set.sh from nixpkgs/pkgs/shells/bash
patches = import ./bash-4.4-patches.nix (nr: sha256: fetchurl {
patches = import ./bash-4.4-patches.nix (
nr: sha256:
fetchurl {
url = "mirror://gnu/bash/bash-4.4-patches/bash44-${nr}";
inherit sha256;
});
}
);
})

View file

@ -1,13 +1,14 @@
{ self, withSystem, ... }: {
flake.packages.x86_64-linux = withSystem "x86_64-linux"
({ pkgs, ... }: {
{ self, withSystem, ... }:
{
flake.packages.x86_64-linux = withSystem "x86_64-linux" (
{ pkgs, ... }:
{
bash4 = pkgs.callPackage ./. { };
direnv-bash4 = pkgs.direnv.override {
bash = self.packages.x86_64-linux.bash4;
};
direnv-bash4 = pkgs.direnv.override { bash = self.packages.x86_64-linux.bash4; };
test-runner-bash4 = pkgs.callPackage ../../test-runner.nix {
nixVersion = "stable";
direnv = self.packages.x86_64-linux.direnv-bash4;
};
});
}
);
}

View file

@ -1,4 +1,7 @@
{ pkgs ? import <nixpkgs> { }, packages ? [ ] }:
{
pkgs ? import <nixpkgs> { },
packages ? [ ],
}:
with pkgs;
mkShell {

View file

@ -3,14 +3,15 @@
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system:
outputs =
{ nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (
system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
{
devShells.default = pkgs.mkShell {
packages = [ pkgs.bashInteractive ];
};
});
devShells.default = pkgs.mkShell { packages = [ pkgs.bashInteractive ]; };
}
);
}

View file

@ -1,15 +1,23 @@
{ writeShellScriptBin
, direnv
, python3
, lib
, coreutils
, gnugrep
, nixVersions
, nixVersion
{
writeShellScriptBin,
direnv,
python3,
lib,
coreutils,
gnugrep,
nixVersions,
nixVersion,
}:
writeShellScriptBin "test-runner-${nixVersion}" ''
set -e
export PATH=${lib.makeBinPath [ direnv nixVersions.${nixVersion} coreutils gnugrep ]}
export PATH=${
lib.makeBinPath [
direnv
nixVersions.${nixVersion}
coreutils
gnugrep
]
}
echo run unittest
${lib.getExe' python3.pkgs.pytest "pytest"} .

View file

@ -4,10 +4,9 @@
inputs.flake-utils.url = "github:numtide/flake-utils";
# deadnix: skip
outputs = { self, nixpkgs, flake-utils }:
outputs =
{ nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system: {
devShell = import ./shell.nix {
pkgs = nixpkgs.legacyPackages.${system};
};
devShell = import ./shell.nix { pkgs = nixpkgs.legacyPackages.${system}; };
});
}

View file

@ -1,8 +1,9 @@
{ pkgs ? import (builtins.getFlake (toString ./.)).inputs.nixpkgs { }
, someArg ? null
, shellHook ? ''
{
pkgs ? import (builtins.getFlake (toString ./.)).inputs.nixpkgs { },
someArg ? null,
shellHook ? ''
echo "Executing shellHook."
''
'',
}:
pkgs.mkShellNoCC {
inherit shellHook;
@ -10,5 +11,7 @@ pkgs.mkShellNoCC {
nativeBuildInputs = [ pkgs.hello ];
SHOULD_BE_SET = someArg;
passthru = { subshell = pkgs.mkShellNoCC { THIS_IS_A_SUBSHELL = "OK"; }; };
passthru = {
subshell = pkgs.mkShellNoCC { THIS_IS_A_SUBSHELL = "OK"; };
};
}

View file

@ -1,9 +1,10 @@
{ inputs, ... }: {
imports = [
inputs.treefmt-nix.flakeModule
];
{ inputs, ... }:
{
imports = [ inputs.treefmt-nix.flakeModule ];
perSystem = {
perSystem =
{ pkgs, ... }:
{
treefmt = {
# Used to find the project root
projectRootFile = ".git/config";
@ -14,7 +15,8 @@
mypy.enable = true;
ruff.check = true;
ruff.format = true;
nixpkgs-fmt.enable = true;
nixfmt.enable = true;
nixfmt.package = pkgs.nixfmt-rfc-style;
shellcheck.enable = true;
shfmt.enable = true;
statix.enable = true;