chore(nix): move buildManPages to //users/sterni
It's only used in my user directory and I don't feel it's generally useful. There's so little to interpolate you may as well just check them in. Change-Id: I31dc9917c2b281c7d68388e1a32c8ef5179621df Reviewed-on: https://cl.tvl.fyi/c/depot/+/12873 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
This commit is contained in:
parent
d47c7fa12b
commit
57a9874588
3 changed files with 1 additions and 2 deletions
|
|
@ -1 +0,0 @@
|
|||
sterni
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
{ depot, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs)
|
||||
gzip
|
||||
mandoc
|
||||
coreutils
|
||||
;
|
||||
|
||||
inherit (depot.nix)
|
||||
runExecline
|
||||
getBins
|
||||
;
|
||||
|
||||
bins = getBins mandoc [ "mandoc" ]
|
||||
// getBins gzip [ "gzip" ]
|
||||
// getBins coreutils [ "mkdir" "ln" "cp" ]
|
||||
;
|
||||
|
||||
defaultGzip = true;
|
||||
|
||||
basename = gzip: { name, section, ... }:
|
||||
"${name}.${toString section}${lib.optionalString gzip ".gz"}";
|
||||
|
||||
manDir = { section, ... }:
|
||||
"\${out}/share/man/man${toString section}";
|
||||
|
||||
target = gzip: args:
|
||||
"${manDir args}/${basename gzip args}";
|
||||
|
||||
buildManPage =
|
||||
{ requireLint ? false
|
||||
, gzip ? defaultGzip
|
||||
, ...
|
||||
}:
|
||||
{ content
|
||||
, ...
|
||||
}@page:
|
||||
let
|
||||
source = builtins.toFile (basename false page) content;
|
||||
in
|
||||
runExecline (basename gzip page) { } ([
|
||||
(if requireLint then "if" else "foreground")
|
||||
[
|
||||
bins.mandoc
|
||||
"-mdoc"
|
||||
"-T"
|
||||
"lint"
|
||||
source
|
||||
]
|
||||
"importas"
|
||||
"out"
|
||||
"out"
|
||||
] ++ (if gzip then [
|
||||
"redirfd"
|
||||
"-w"
|
||||
"1"
|
||||
"$out"
|
||||
bins.gzip
|
||||
"-c"
|
||||
source
|
||||
] else [
|
||||
bins.cp
|
||||
"--reflink=auto"
|
||||
source
|
||||
"$out"
|
||||
]));
|
||||
|
||||
buildManPages =
|
||||
name:
|
||||
{ derivationArgs ? { }
|
||||
, gzip ? defaultGzip
|
||||
, ...
|
||||
}@args:
|
||||
pages:
|
||||
runExecline "${name}-man-pages"
|
||||
{
|
||||
inherit derivationArgs;
|
||||
}
|
||||
([
|
||||
"importas"
|
||||
"out"
|
||||
"out"
|
||||
] ++ lib.concatMap
|
||||
({ name, section, content }@page: [
|
||||
"if"
|
||||
[ bins.mkdir "-p" (manDir page) ]
|
||||
"if"
|
||||
[
|
||||
bins.ln
|
||||
"-s"
|
||||
(buildManPage args page)
|
||||
(target gzip page)
|
||||
]
|
||||
])
|
||||
pages);
|
||||
|
||||
in
|
||||
{
|
||||
__functor = _: buildManPages;
|
||||
|
||||
single = buildManPage;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue