From c1aaaca7f7febe0c587342ae74e7045bb9a67c5a Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 28 Aug 2015 21:31:59 +0200 Subject: krebs += pkgs.writeC lib.toC --- krebs/5pkgs/default.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 2149b6f10..c8fb1d2d7 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ lib, pkgs, ... }: let inherit (pkgs) callPackage; @@ -14,4 +14,15 @@ pkgs // hashPassword = callPackage ./hashPassword.nix {}; nq = callPackage ./nq.nix {}; posix-array = callPackage ./posix-array.nix {}; + + writeC = name: {}: src: pkgs.runCommand name {} '' + PATH=${lib.makeSearchPath "bin" (with pkgs; [ + binutils + coreutils + gcc + ])} + in=${pkgs.writeText "${name}.c" src} + gcc -O -Wall -o $out $in + strip --strip-unneeded $out + ''; } -- cgit v1.2.3 From 8827469a35852a0623d8353c22b481a15328254a Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 28 Aug 2015 21:43:16 +0200 Subject: krebs pkgs += execve --- krebs/5pkgs/default.nix | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index c8fb1d2d7..406bd15eb 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -1,11 +1,13 @@ { lib, pkgs, ... }: +with import ../4lib { inherit lib; }; + let inherit (pkgs) callPackage; in pkgs // -{ +rec { cac = callPackage ./cac.nix {}; dic = callPackage ./dic.nix {}; genid = callPackage ./genid.nix {}; @@ -15,6 +17,20 @@ pkgs // nq = callPackage ./nq.nix {}; posix-array = callPackage ./posix-array.nix {}; + execve = name: { filename, argv, envp }: + writeC name {} '' + #include + 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; + } + ''; + writeC = name: {}: src: pkgs.runCommand name {} '' PATH=${lib.makeSearchPath "bin" (with pkgs; [ binutils -- cgit v1.2.3 From 642c761bd015f5766a75cf5688b50d42efdb96c3 Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 28 Aug 2015 22:13:17 +0200 Subject: krebs pkgs += execveBin --- krebs/5pkgs/default.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 3658c43e0..54604382f 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -18,8 +18,8 @@ rec { posix-array = callPackage ./posix-array.nix {}; youtube-tools = callPackage ./youtube-tools.nix {}; - execve = name: { filename, argv, envp }: - writeC name {} '' + execve = name: { filename, argv, envp ? {}, destination ? "" }: + writeC name { inherit destination; } '' #include int main () { const char *filename = ${toC filename}; @@ -32,14 +32,18 @@ rec { } ''; - writeC = name: {}: src: pkgs.runCommand name {} '' + execveBin = name: cfg: execve name (cfg // { destination = "/bin/${name}"; }); + + writeC = name: { destination ? "" }: src: pkgs.runCommand name {} '' PATH=${lib.makeSearchPath "bin" (with pkgs; [ binutils coreutils gcc ])} - in=${pkgs.writeText "${name}.c" src} - gcc -O -Wall -o $out $in - strip --strip-unneeded $out + src=${pkgs.writeText "${name}.c" src} + exe=$out${destination} + mkdir -p "$(dirname "$exe")" + gcc -O -Wall -o "$exe" $src + strip --strip-unneeded "$exe" ''; } -- cgit v1.2.3 From 81eaf7a9e7b083c169828590d0d848cf933b32e0 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 29 Aug 2015 00:17:25 +0200 Subject: one pkgs to rule them all --- krebs/5pkgs/default.nix | 1 - 1 file changed, 1 deletion(-) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 54604382f..2f7a24ed2 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -6,7 +6,6 @@ let inherit (pkgs) callPackage; in -pkgs // rec { cac = callPackage ./cac.nix {}; dic = callPackage ./dic.nix {}; -- cgit v1.2.3 From 22a171f3e0405d504e8c8c3b32f73a8087a5ed66 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 29 Aug 2015 00:36:50 +0200 Subject: krebs pkgs += charybdis lentil much While there, put everything into subdirectories. --- krebs/5pkgs/default.nix | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 2f7a24ed2..71bee3fa2 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -7,15 +7,18 @@ let in rec { - cac = callPackage ./cac.nix {}; - dic = callPackage ./dic.nix {}; - genid = callPackage ./genid.nix {}; - github-hosts-sync = callPackage ./github-hosts-sync.nix {}; - github-known_hosts = callPackage ./github-known_hosts.nix {}; - hashPassword = callPackage ./hashPassword.nix {}; - nq = callPackage ./nq.nix {}; - posix-array = callPackage ./posix-array.nix {}; - youtube-tools = callPackage ./youtube-tools.nix {}; + cac = callPackage ./cac {}; + charybdis = callPackage ./charybdis {}; + dic = callPackage ./dic {}; + genid = callPackage ./genid {}; + github-hosts-sync = callPackage ./github-hosts-sync {}; + github-known_hosts = callPackage ./github-known_hosts {}; + hashPassword = callPackage ./hashPassword {}; + lentil = callPackage ./lentil {}; + much = callPackage ./much {}; + nq = callPackage ./nq {}; + posix-array = callPackage ./posix-array {}; + youtube-tools = callPackage ./youtube-tools {}; execve = name: { filename, argv, envp ? {}, destination ? "" }: writeC name { inherit destination; } '' -- cgit v1.2.3 From 6def9f2d6ba957d068f0d1f0f267247b8e9a89f8 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 29 Aug 2015 08:29:35 +0200 Subject: krebs pkgs pssh: init --- krebs/5pkgs/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 71bee3fa2..500d5fe25 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -18,6 +18,7 @@ rec { much = callPackage ./much {}; nq = callPackage ./nq {}; posix-array = callPackage ./posix-array {}; + pssh = callPackage ./pssh {}; youtube-tools = callPackage ./youtube-tools {}; execve = name: { filename, argv, envp ? {}, destination ? "" }: -- cgit v1.2.3 From 0f50750e254c22153cb7024e79181661f98d1b33 Mon Sep 17 00:00:00 2001 From: makefu Date: Mon, 31 Aug 2015 14:22:21 +0200 Subject: Reaktor: initial commit at 0.3.5 --- krebs/5pkgs/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index 500d5fe25..b42101820 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -19,6 +19,7 @@ rec { nq = callPackage ./nq {}; posix-array = callPackage ./posix-array {}; pssh = callPackage ./pssh {}; + Reaktor = callPackage ./Reaktor {}; youtube-tools = callPackage ./youtube-tools {}; execve = name: { filename, argv, envp ? {}, destination ? "" }: -- cgit v1.2.3 From 951b00742f9e3aeff807612fdfd6dd2fbd5f0976 Mon Sep 17 00:00:00 2001 From: makefu Date: Tue, 1 Sep 2015 12:53:32 +0200 Subject: add krebszones --- krebs/5pkgs/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'krebs/5pkgs/default.nix') diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix index b42101820..39d3d69ce 100644 --- a/krebs/5pkgs/default.nix +++ b/krebs/5pkgs/default.nix @@ -14,6 +14,7 @@ rec { github-hosts-sync = callPackage ./github-hosts-sync {}; github-known_hosts = callPackage ./github-known_hosts {}; hashPassword = callPackage ./hashPassword {}; + krebszones = callPackage ./krebszones {}; lentil = callPackage ./lentil {}; much = callPackage ./much {}; nq = callPackage ./nq {}; -- cgit v1.2.3