Add Fantomas to flake (#5)
Co-authored-by: Smaug123 <patrick+github@patrickstevens.co.uk> Reviewed-on: #5
This commit is contained in:
@@ -4,6 +4,7 @@ steps:
|
||||
commands:
|
||||
- echo 'experimental-features = flakes nix-command' >> /etc/nix/nix.conf
|
||||
# Lint
|
||||
- "nix run .#fantomas -- --check ."
|
||||
- "nix develop --command bash -c 'dotnet tool restore && ./hooks/pre-push'"
|
||||
# Test
|
||||
- nix develop --command dotnet -- test
|
||||
|
28
flake.nix
28
flake.nix
@@ -14,7 +14,35 @@
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
projectFile = "./AnkiStatic/AnkiStatic.fsproj";
|
||||
testProjectFile = "./AnkiStatic.Test/AnkiStatic.Test.fsproj";
|
||||
pname = "gitea-repo-config";
|
||||
dotnet-sdk = pkgs.dotnet-sdk_7;
|
||||
dotnet-runtime = pkgs.dotnetCorePackages.runtime_7_0;
|
||||
version = "0.1";
|
||||
dotnetTool = toolName: toolVersion: sha256:
|
||||
pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = toolName;
|
||||
version = toolVersion;
|
||||
nativeBuildInputs = [pkgs.makeWrapper];
|
||||
src = pkgs.fetchNuGet {
|
||||
pname = name;
|
||||
version = version;
|
||||
sha256 = sha256;
|
||||
installPhase = ''mkdir -p $out/bin && cp -r tools/net6.0/any/* $out/bin'';
|
||||
};
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p "$out/lib"
|
||||
cp -r ./bin/* "$out/lib"
|
||||
makeWrapper "${dotnet-runtime}/bin/dotnet" "$out/bin/${name}" --add-flags "$out/lib/${name}.dll"
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in {
|
||||
packages = {
|
||||
fantomas = dotnetTool "fantomas" (builtins.fromJSON (builtins.readFile ./.config/dotnet-tools.json)).tools.fantomas.version "sha256-83RodORaC3rkYfbFMHsYLEtl0+8+akZXcKoSJdgwuUo=";
|
||||
};
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs =
|
||||
[pkgs.alejandra pkgs.dotnet-sdk_7 pkgs.python3]
|
||||
|
Reference in New Issue
Block a user