1{ sources ? import ./nix/sources.nix
2, haskellNix ? import sources.haskellNix { inherit system; }
3, pkgs ? import haskellNix.sources.nixpkgs-2311 (haskellNix.nixpkgsArgs // { inherit system; })
4, system ? builtins.currentSystem
5, nix-filter ? import sources.nix-filter
8 masterPkgs = import sources.nixpkgs { inherit system; };
9 yq = import ./nix/yq.nix { pkgs = masterPkgs; };
10 diffYaml = import ./nix/diff-yaml.nix { pkgs = masterPkgs; };
12 hsPkgs = pkgs.haskell-nix.stackProject {
27 enableDeadCodeElimination = true;
30 "-fexpose-all-unfoldings"
31 "-fspecialise-aggressively"
33 packages.pandoc.ghcOptions = [ "-O1" ];
34 packages.compaREST.src = nix-filter {
36 name = "compaREST-src";
37 include = with nix-filter; [
42 (inDirectory ./github-action)
51 staticify = name: drv: pkgs.runCommand name { } ''
53 cp ${drv + "/bin"}/* $out/bin
55 ${pkgs.nukeReferences}/bin/nuke-refs $out/bin/*
58 compaRESTBin = hsPkgs.compaREST.components.exes.compaREST;
59 compaRESTStaticBin = (staticify "compaREST-static" hsPkgs.projectCross.musl64.hsPkgs.compaREST.components.exes.compaREST);
63 armDarwinCompaREST = hsPkgs.projectCross.aarch64-darwin.hsPkgs.compaREST.components.exes.compaREST;
65 compaRESTImage = pkgs.dockerTools.buildImage {
67 contents = [ compaRESTStaticBin ];
69 Entrypoint = [ "/bin/compaREST" ];
73 macOSCompaRESTBundle = pkgs.runCommand "compaREST-macOS-bundled"
75 buildInputs = [ masterPkgs.macdylibbundler ];
78 cp ${compaRESTBin}/bin/compaREST $out/compaREST
79 chmod 755 $out/compaREST
83 -p '@executable_path/lib'
87 compaRESTGithubAction =
89 action = staticify "compaREST-GitHub-Action-static" hsPkgs.projectCross.musl64.hsPkgs.compaREST.components.exes.compaREST-GitHub-Action;
90 wrapped = pkgs.runCommand "wrapped-compaREST-GitHub-Action" { buildInputs = [ pkgs.makeWrapper ]; } ''
91 makeWrapper ${action}/bin/compaREST-GitHub-Action $out/bin/pre --add-flags "pre"
92 makeWrapper ${action}/bin/compaREST-GitHub-Action $out/bin/run --add-flags "run"
95 pkgs.dockerTools.buildImage {
96 name = "typeable/compaREST-GitHub-Action";
98 contents = [ wrapped pkgs.cacert ];
101 WindowsCompaRESTBin = hsPkgs.projectCross.mingwW64.hsPkgs.compaREST.components.exes.compaREST;
103 # We use the static version so that we don't have to rebuild everything on CI.
104 # The only binaries build on CI are static.
105 test = hsPkgs.projectCross.musl64.hsPkgs.compaREST.components.tests.compaREST-tests.overrideAttrs (final: old: {
106 buildInputs = old.buildInputs ++ [ diffYaml yq ];
107 nativeBuildInputs = old.nativeBuildInputs ++ (with masterPkgs; [ makeWrapper ]);
110 wrapProgram $out/bin/compaREST-tests \
111 --prefix PATH : ${masterPkgs.lib.makeBinPath [ diffYaml yq ]}
118 compaRESTGithubAction
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list