summaryrefslogtreecommitdiffstats
path: root/krebs/5pkgs
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2016-02-11 21:31:15 +0100
committermakefu <github@syntax-fehler.de>2016-02-11 21:31:15 +0100
commit014cbb7598c5d45cfc4cc7e1ec81c92e000eabfb (patch)
treefab0e894948010cd73be18ad2c68cd4750bd2419 /krebs/5pkgs
parent8ecdb889dd3081ba29c6ea7eb35f60b30420d201 (diff)
parent7b3b839cc7a2af73dee9858e6ebcc7be831eb481 (diff)
Merge remote-tracking branch 'cd/master'
Diffstat (limited to 'krebs/5pkgs')
-rw-r--r--krebs/5pkgs/builders.nix51
-rw-r--r--krebs/5pkgs/cac-api/default.nix3
-rw-r--r--krebs/5pkgs/default.nix96
-rw-r--r--krebs/5pkgs/posix-array/default.nix17
-rwxr-xr-xkrebs/5pkgs/test/infest-cac-centos7/notes1
-rw-r--r--krebs/5pkgs/urlwatch/default.nix23
6 files changed, 98 insertions, 93 deletions
diff --git a/krebs/5pkgs/builders.nix b/krebs/5pkgs/builders.nix
new file mode 100644
index 000000000..b3cb1c943
--- /dev/null
+++ b/krebs/5pkgs/builders.nix
@@ -0,0 +1,51 @@
+{ lib, pkgs, ... }:
+with lib;
+{
+ 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;
+ }
+ '';
+
+ 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"
+ '';
+
+ writeDash = name: text: pkgs.writeScript name ''
+ #! ${pkgs.dash}/bin/dash
+ ${text}
+ '';
+
+ writeDashBin = name: text: pkgs.writeTextFile {
+ executable = true;
+ destination = "/bin/${name}";
+ name = name;
+ text = ''
+ #! ${pkgs.dash}/bin/dash
+ ${text}
+ '';
+ };
+
+ writeNixFromCabal = name: path: pkgs.runCommand name {} ''
+ ${pkgs.cabal2nix}/bin/cabal2nix ${path} > $out
+ '';
+}
diff --git a/krebs/5pkgs/cac-api/default.nix b/krebs/5pkgs/cac-api/default.nix
index 9ab6ac8b2..30c0168f3 100644
--- a/krebs/5pkgs/cac-api/default.nix
+++ b/krebs/5pkgs/cac-api/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, bc, cac-cert, coreutils, curl, dash, gnused, inotifyTools, jq, ncurses, openssh, sshpass, ... }:
+{ stdenv, fetchgit, bc, cac-cert, coreutils, curl, dash, gnugrep, gnused, inotifyTools, jq, ncurses, openssh, sshpass, ... }:
stdenv.mkDerivation {
name = "cac-api-1.1.0";
@@ -22,6 +22,7 @@ stdenv.mkDerivation {
bc
coreutils
curl
+ gnugrep
gnused
inotifyTools
jq
diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix
index c4b1dafe4..1cf3de56e 100644
--- a/krebs/5pkgs/default.nix
+++ b/krebs/5pkgs/default.nix
@@ -1,67 +1,33 @@
-{ 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 {})
- (mapAttrs'
- (name: type:
- if hasSuffix ".nix" name
- then {
- name = removeSuffix ".nix" name;
- value = ./haskell-overrides + "/${name}";
- }
- else null)
- (builtins.readDir ./haskell-overrides));
- };
-
- 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
- '';
+{
+ nixpkgs.config.packageOverrides = pkgs: {
+ haskellPackages = pkgs.haskellPackages.override {
+ overrides = self: super:
+ mapAttrs (name: path: self.callPackage path {})
+ (mapAttrs'
+ (name: type:
+ if hasSuffix ".nix" name
+ then {
+ name = removeSuffix ".nix" name;
+ value = ./haskell-overrides + "/${name}";
+ }
+ else null)
+ (builtins.readDir ./haskell-overrides));
+ };
+
+ push = pkgs.callPackage ./push {
+ inherit (subdirs) get jq;
+ };
+
+ ReaktorPlugins = pkgs.callPackage ./Reaktor/plugins.nix {};
+
+ test = {
+ infest-cac-centos7 = pkgs.callPackage ./test/infest-cac-centos7 {};
+ };
+ }
+ // import ./builders.nix args
+ // mapAttrs (_: flip pkgs.callPackage {})
+ (filterAttrs (_: dir.has-default-nix)
+ (subdirsOf ./.));
}
diff --git a/krebs/5pkgs/posix-array/default.nix b/krebs/5pkgs/posix-array/default.nix
index 456a3cc11..cfcdb29a7 100644
--- a/krebs/5pkgs/posix-array/default.nix
+++ b/krebs/5pkgs/posix-array/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchgit, ... }:
+{ fetchgit, lib, stdenv, ... }:
-with stdenv; stdenv.mkDerivation rec {
- name = "posix-array";
+stdenv.mkDerivation rec {
+ name = "posix-array-${version}";
version = "1.0.0";
src = fetchgit {
@@ -16,16 +16,15 @@ with stdenv; stdenv.mkDerivation rec {
];
installPhase = ''
- mkdir -p "$out/bin"
+ mkdir -p $out/bin
cp -a ./array $out/bin
- rm *
'';
meta = {
- description = "Posix-compliant array implementation";
+ description = "POSIX-compliant array implementation";
url = https://github.com/makefu/array;
- license = licenses.wtfpl;
- platforms = platforms.unix;
- maintainers = with maintainers; [ makefu ];
+ license = lib.licenses.wtfpl;
+ platforms = lib.platforms.unix;
+ maintainers = with lib.maintainers; [ makefu ];
};
}
diff --git a/krebs/5pkgs/test/infest-cac-centos7/notes b/krebs/5pkgs/test/infest-cac-centos7/notes
index b3beb392f..db80c0c6c 100755
--- a/krebs/5pkgs/test/infest-cac-centos7/notes
+++ b/krebs/5pkgs/test/infest-cac-centos7/notes
@@ -115,7 +115,6 @@ _: {
users.extraUsers.root.openssh.authorizedKeys.keys = [
"$(cat ${krebs_ssh}.pub)"
];
- krebs.build.target = "$ip";
}
EOF
diff --git a/krebs/5pkgs/urlwatch/default.nix b/krebs/5pkgs/urlwatch/default.nix
index d9b595314..780ad24f5 100644
--- a/krebs/5pkgs/urlwatch/default.nix
+++ b/krebs/5pkgs/urlwatch/default.nix
@@ -1,29 +1,18 @@
{ stdenv, fetchurl, python3Packages }:
python3Packages.buildPythonPackage rec {
- name = "urlwatch-2.0";
+ name = "urlwatch-2.1";
src = fetchurl {
url = "https://thp.io/2008/urlwatch/${name}.tar.gz";
- sha256 = "0j38qzw4jxw41vnnpi6j851hqpv8d6p1cbni6cv8r2vqf5307s3b";
+ sha256 = "0xn435cml9wjwk39117p1diqmvw3jbmv9ccr7230iaf7z59vf9v6";
};
propagatedBuildInputs = with python3Packages; [
- pyyaml
keyring
- (python3Packages.buildPythonPackage rec {
- name = "minidb-2.0.1";
- src = fetchurl {
- url = "https://thp.io/2010/minidb/${name}.tar.gz";
- sha256 = "1x958zr9jc26vaqij451qb9m2l7apcpz34ir9fwfjg4fwv24z2dy";
- };
- meta = {
- description = "A simple SQLite3-based store for Python objects";
- homepage = https://thp.io/2010/minidb/;
- license = stdenv.lib.licenses.isc;
- maintainers = [ stdenv.lib.maintainers.tv ];
- };
- })
+ minidb
+ pyyaml
+ requests2
];
postFixup = ''
@@ -36,4 +25,4 @@ python3Packages.buildPythonPackage rec {
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.tv ];
};
-}#
+}