Add a manpage for ca-store. Additionally, modify the 'file verify' command to behave exactly as the manpage mentions. This commit required me to break a cycle caused by having CAStore.Type.Text imported by CAStore.Type.
42 lines
1.2 KiB
Nix
42 lines
1.2 KiB
Nix
{
|
|
description = "ca-store: A simple content-addressed store";
|
|
|
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
|
|
|
outputs = { self, nixpkgs }:
|
|
let
|
|
forAllSystems = nixpkgs.lib.genAttrs [ "x86_64-linux" ];
|
|
in {
|
|
packages = forAllSystems (system:
|
|
let
|
|
np = import nixpkgs {
|
|
inherit system;
|
|
overlays = [ self.overlays.default ];
|
|
};
|
|
in { ca-store = np.ca-store; default = np.ca-store; }
|
|
);
|
|
|
|
overlays.default = final: prev: {
|
|
ca-store = prev.symlinkJoin {
|
|
pname = "ca-store";
|
|
version = final.ca-store-bin.version;
|
|
paths = [ final.ca-store-bin final.ca-store-man ];
|
|
};
|
|
ca-store-bin = prev.haskellPackages.developPackage {
|
|
root = ./.;
|
|
name = "ca-store";
|
|
withHoogle = false;
|
|
};
|
|
ca-store-man = prev.stdenv.mkDerivation {
|
|
pname = "ca-store-man";
|
|
version = "0.0.1";
|
|
src = ./.;
|
|
nativeBuildInputs = [ final.scdoc final.installShellFiles ];
|
|
buildCommand = ''
|
|
scdoc < "$src/doc/man/ca-store.1.scd" > ./ca-store.1
|
|
installManPage ./ca-store.1
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|