aboutsummaryrefslogtreecommitdiff
path: root/clef/nix/board.nix
blob: d67417bdf08627690e52561e3f8862383dc335c0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
  runCommand,

  svg,
  model,
  fabrication,
  schematic,
  panel,
  panelSrc,

  name,
  outPath,
}: let
  pkg = runCommand name {} ''
    set -e

    mkdir -p "$out/${outPath}"
    cd "$out/${outPath}"

    echo "populating $(pwd)"

    cp --reflink=auto -vr "${schematic}/share/npry/clef/schematic" ./
    cp --reflink=auto -vr "${svg}/share/npry/clef/svg" ./
    cp --reflink=auto -vr "${fabrication}/share/npry/clef/fab" ./
    cp --reflink=auto -vr "${model}/share/npry/clef/model" ./

    ${if panelSrc != null then ''
    cp --reflink=auto -vr "${panelSrc}/share/npry/clef/panel" ./
    '' else ""}
  '';

in pkg.overrideAttrs (prevAttrs: {
  passthru = (prevAttrs.passthru or {}) // {
    inherit schematic fabrication svg model panel panelSrc;
    fab = fabrication;
  };
})