depot/third_party/default.nix

70 lines
2.1 KiB
Nix
Raw Normal View History

# SPDX-FileCopyrightText: 2020 Luke Granger-Brown <depot@lukegb.com>
#
# SPDX-License-Identifier: Apache-2.0
2021-09-05 09:21:41 +00:00
{ depot, system, ... }@ch:
2020-11-01 21:22:52 +00:00
let
nixpkgsConfig = {
allowUnfree = true;
permittedInsecurePackages = [
"p7zip-16.02"
];
packageOverrides = pkgs: {
factorio = pkgs.factorio.override depot.ops.secrets.factorio;
factorio-experimental = pkgs.factorio-experimental.override depot.ops.secrets.factorio;
};
2020-11-01 21:22:52 +00:00
};
2020-05-31 17:58:29 +00:00
nixpkgs = import ./nixpkgs {
2021-09-05 09:21:41 +00:00
inherit system;
2020-05-31 17:58:29 +00:00
config = nixpkgsConfig;
};
2020-11-01 21:22:52 +00:00
crate2nixSrc = nixpkgs.fetchFromGitHub {
owner = "kolloch";
repo = "crate2nix";
rev = "e07af104b8e41d1cd7e41dc7ac3fdcdf4953efae";
hash = "sha256:07syygn1rc5n1big7hf42pzgm5wc1r0mzglzvlbcb7rkzgqqhbqx";
};
2021-03-21 18:52:09 +00:00
naerskSrc = nixpkgs.fetchFromGitHub {
owner = "nmattia";
repo = "naersk";
rev = "e0fe990b478a66178a58c69cf53daec0478ca6f9";
sha256 = "sha256:0qjyfmw5v7s6ynjns4a61vlyj9cghj7vbpgrp9147ngb1f8krz2c";
};
2020-11-01 21:22:52 +00:00
in
rec {
inherit nixpkgsConfig nixpkgs;
nixos = import ./nixpkgs/nixos;
nixeval = import ./nixpkgs/nixos/lib/eval-config.nix;
buildGo =
let orig = import ./tvl/nix/buildGo { pkgs = nixpkgs; };
in orig // {
2020-10-18 00:02:46 +00:00
program = { dockerData ? [], ... }@args:
let
2020-10-18 00:02:46 +00:00
origOut = orig.program (nixpkgs.lib.filterAttrs (n: v: n != "dockerData") args);
in origOut // {
dockerImage = nixpkgs.dockerTools.buildImage {
name = args.name;
2020-10-18 00:02:46 +00:00
contents = dockerData;
config = {
2020-10-18 00:02:46 +00:00
Entrypoint = [ "${origOut}/bin/${args.name}" ];
Env = [
"SSL_CERT_FILE=${nixpkgs.cacert}/etc/ssl/certs/ca-bundle.crt"
];
};
};
};
};
readTree = import ./tvl/nix/readTree {};
gopkgs = readTree ch ./gopkgs;
2020-11-01 21:22:52 +00:00
2021-03-21 18:52:09 +00:00
bat_syntaxes = import ./tvl/third_party/bat_syntaxes { pkgs = ch.depot.pkgs; };
cheddar = import ./tvl/tools/cheddar {
pkgs = ch.depot.pkgs // {
inherit naersk bat_syntaxes;
};
};
naersk = nixpkgs.callPackage naerskSrc {};
2020-11-01 21:39:25 +00:00
crate2nix = import "${crate2nixSrc}" { pkgs = ch.depot.pkgs; };
}