]> gitweb.ps.run Git - flakes/blob - flake.nix
583690f3ac1c586df0afc7411ba39c25b23af32a
[flakes] / flake.nix
1 {
2   description = "my flakes";
3
4   inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
5   inputs.flake-utils.url = "github:numtide/flake-utils";
6
7   outputs = { self, nixpkgs, flake-utils }: {
8     overlays = {
9       cgit = final: prev: {
10         cgit = prev.cgit.overrideAttrs (oldAttrs: {
11           postPatch = ''substituteInPlace ui-repolist.c --replace "master" "main"'';
12         });
13       };
14       gitweb = final: prev: {
15         gitweb = prev.gitweb.overrideAttrs (oldAttrs: {
16           postPatch = (oldAttrs.postPatch or "") + ''
17             ls -l gitweb/gitweb.perl
18             ls -l . ./*
19             cp ${./patches/gitweb.perl} gitweb/gitweb.perl
20             exit 1
21           '';
22           postInstall = (oldAttrs.postInstall or "") + ''
23             echo hallo
24           '';
25         });
26       };
27     };
28     inherit (flake-utils.lib.eachDefaultSystem (system:
29       let
30         pkgs = import nixpkgs { inherit system; };
31       in {
32         packages.resetmsmice = pkgs.stdenv.mkDerivation {
33           pname = "resetmsmice";
34           version = "0.0.0";
35           src = pkgs.fetchFromGitHub {
36             owner = "paulrichards321";
37             repo = "resetmsmice";
38             rev = "2623a46bcfdaab199b1fc080060d4e3f1c94ce86";
39             hash = "sha256-xRteJe7lAoyMrz13UIXCkg5dxhziT6e9Bn7+zYzt2j8=";
40           };
41
42           buildInputs = with pkgs; [
43             autoconf automake pkg-config libusb1 shadow
44           ];
45
46           buildPhase = ''
47             autoreconf -i .
48             ./configure --disable-gui --prefix=$out
49             make
50           '';
51
52           installPhase = ''
53             mkdir -p $out/bin
54             cp resetmsmice $out/bin/
55           '';
56         };
57
58         apps.resetmsmice = {
59           type = "app";
60           program = "${self.packages.${system}.resetmsmice}/bin/resetmsmice";
61         };
62       })
63     ) packages apps;
64   };
65 }
66