summaryrefslogtreecommitdiffstats
path: root/krebs/5pkgs/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'krebs/5pkgs/default.nix')
-rw-r--r--krebs/5pkgs/default.nix50
1 files changed, 7 insertions, 43 deletions
diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix
index c4b1dafe..89e19dff 100644
--- a/krebs/5pkgs/default.nix
+++ b/krebs/5pkgs/default.nix
@@ -1,13 +1,6 @@
-{ lib, pkgs, ... }:
-
+{ lib, pkgs, ... }@args:
with lib;
-let
- subdirs = mapAttrs (_: flip pkgs.callPackage {}) (subdirsOf ./.);
- pkgs' = pkgs // subdirs;
-in
-
-subdirs // rec {
-
+{
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super:
mapAttrs (name: path: self.callPackage path {})
@@ -22,46 +15,17 @@ subdirs // rec {
(builtins.readDir ./haskell-overrides));
};
- push = pkgs'.callPackage ./push {
+ push = pkgs.callPackage ./push {
inherit (subdirs) get jq;
};
ReaktorPlugins = pkgs.callPackage ./Reaktor/plugins.nix {};
- execve = name: { filename, argv, envp ? {}, destination ? "" }:
- writeC name { inherit destination; } ''
- #include <unistd.h>
- int main () {
- const char *filename = ${toC filename};
- char *const argv[] = ${toC (argv ++ [null])};
- char *const envp[] = ${toC (
- mapAttrsToList (k: v: "${k}=${v}") envp ++ [null]
- )};
- execve(filename, argv, envp);
- return -1;
- }
- '';
-
test = {
infest-cac-centos7 = pkgs.callPackage ./test/infest-cac-centos7 {};
};
-
- execveBin = name: cfg: execve name (cfg // { destination = "/bin/${name}"; });
-
- writeC = name: { destination ? "" }: src: pkgs.runCommand name {} ''
- PATH=${makeSearchPath "bin" (with pkgs; [
- binutils
- coreutils
- gcc
- ])}
- src=${pkgs.writeText "${name}.c" src}
- exe=$out${destination}
- mkdir -p "$(dirname "$exe")"
- gcc -O -Wall -o "$exe" $src
- strip --strip-unneeded "$exe"
- '';
-
- writeNixFromCabal = name: path: pkgs.runCommand name {} ''
- ${pkgs.cabal2nix}/bin/cabal2nix ${path} > $out
- '';
}
+// import ./builders.nix args
+// mapAttrs (_: flip pkgs.callPackage {})
+ (filterAttrs (_: dir.has-default-nix)
+ (subdirsOf ./.))