[feat] ci: add forgejo actions
All checks were successful
/ check (push) Successful in 20s
/ build (vm) (push) Successful in 1s

This commit is contained in:
Jalil David Salamé Messina 2024-06-08 22:28:27 +02:00
parent 89c614818f
commit bb9e7b1139
Signed by: jalil
GPG key ID: F016B9E770737A0B
5 changed files with 57 additions and 19 deletions

View file

@ -0,0 +1,18 @@
on: [push]
jobs:
check:
runs-on: nixos
steps:
- uses: https://code.forgejo.org/actions/checkout@v4
- run: nix --version
- run: nix flake check --keep-going
build:
runs-on: nixos
strategy:
matrix:
machine:
- vm
steps:
- uses: https://code.forgejo.org/actions/checkout@v4
- run: nix --version
- run: nix build --print-build-logs '.#nixosConfigurations.${{ matrix.machine }}.config.system.build.toplevel'

View file

@ -112,25 +112,9 @@
pkgs = import nixpkgs {inherit system overlays;};
module = ./nvim/nixvim.nix;
};
formatting = pkgs.stdenvNoCC.mkDerivation {
name = "nix-formatting-check";
dontUnpack = true;
dontBuild = true;
doCheck = true;
checkPhase = "${pkgs.lib.getExe self.formatter.${system}} --check --quiet ${src}";
installPhase = "mkdir $out";
};
typos = let
typos = pkgs.lib.getExe pkgs.typos;
in
pkgs.stdenvNoCC.mkDerivation {
name = "typos-check";
dontUnpack = true;
dontBuild = true;
doCheck = true;
checkPhase = "${typos} --color=always ${src}";
installPhase = "mkdir $out";
};
fmt = pkgs.callPackage ./fmt.nix {inherit src;};
lint = pkgs.callPackage ./lint.nix {inherit src;};
typos = pkgs.callPackage ./lint.nix {inherit src;};
}
);

12
fmt.nix Normal file
View file

@ -0,0 +1,12 @@
{
lib,
stdenvNoCC,
alejandra,
src,
}:
stdenvNoCC.mkDerivation {
name = "fmt-src";
inherit src;
buildPhase = "${lib.getExe alejandra} --check .";
installPhase = "mkdir $out";
}

12
lint.nix Normal file
View file

@ -0,0 +1,12 @@
{
lib,
stdenvNoCC,
statix,
src,
}:
stdenvNoCC.mkDerivation {
name = "lint-src";
inherit src;
buildPhase = "${lib.getExe statix} check .";
installPhase = "mkdir $out";
}

12
typos.nix Normal file
View file

@ -0,0 +1,12 @@
{
lib,
stdenvNoCC,
typos,
src,
}:
stdenvNoCC.mkDerivation {
name = "typos-src";
inherit src;
buildPhase = "${lib.getExe typos} .";
installPhase = "mkdir $out";
}