summaryrefslogtreecommitdiffstats
path: root/makefu
diff options
context:
space:
mode:
Diffstat (limited to 'makefu')
-rw-r--r--makefu/1systems/cake/config.nix55
-rw-r--r--makefu/1systems/cake/source.nix4
-rw-r--r--makefu/1systems/gum/config.nix12
-rw-r--r--makefu/1systems/latte/config.nix54
-rw-r--r--makefu/1systems/latte/source.nix4
-rw-r--r--makefu/1systems/omo/config.nix2
-rw-r--r--makefu/1systems/pnp/config.nix5
-rw-r--r--makefu/1systems/wbob/config.nix106
-rw-r--r--makefu/1systems/x/config.nix1
-rw-r--r--makefu/2configs/binary-cache/lass.nix1
-rw-r--r--makefu/2configs/deployment/led-fader.nix4
-rw-r--r--makefu/2configs/git/brain-retiolum.nix4
-rw-r--r--makefu/2configs/git/cgit-retiolum.nix7
-rw-r--r--makefu/2configs/gui/base.nix2
-rw-r--r--makefu/2configs/remote-build/master.nix14
-rw-r--r--makefu/2configs/remote-build/slave.nix11
-rw-r--r--makefu/2configs/stats/server.nix6
-rw-r--r--makefu/2configs/stats/telegraf/europastats.nix2
-rw-r--r--makefu/2configs/tools/core-gui.nix1
-rw-r--r--makefu/2configs/tools/dev.nix1
-rw-r--r--makefu/2configs/tools/extra-gui.nix2
-rw-r--r--makefu/2configs/tools/sec-gui.nix15
-rw-r--r--makefu/2configs/tools/steam.nix6
-rw-r--r--makefu/2configs/urlwatch/default.nix7
-rw-r--r--makefu/2configs/vim.nix1
-rw-r--r--makefu/2configs/vpn/openvpn-server.nix8
-rw-r--r--makefu/3modules/server-config.nix15
-rw-r--r--makefu/3modules/wvdial.nix3
-rw-r--r--makefu/5pkgs/beef/Gemfile97
-rw-r--r--makefu/5pkgs/beef/Gemfile.lock139
-rw-r--r--makefu/5pkgs/beef/default.nix37
-rw-r--r--makefu/5pkgs/beef/gemset.nix475
-rw-r--r--makefu/5pkgs/beef/shell.nix16
-rw-r--r--makefu/5pkgs/custom/inkscape/dxf_fix.patch11
-rw-r--r--makefu/5pkgs/default.nix2
-rw-r--r--makefu/5pkgs/drozer/default.nix4
-rw-r--r--makefu/5pkgs/esptool/default.nix32
-rw-r--r--makefu/5pkgs/logstash-input-rss/default.nix31
-rw-r--r--makefu/5pkgs/udpt/default.nix29
-rw-r--r--makefu/6tests/data/secrets/ssh_host_rsa_key0
-rw-r--r--makefu/source.nix7
41 files changed, 1118 insertions, 115 deletions
diff --git a/makefu/1systems/cake/config.nix b/makefu/1systems/cake/config.nix
new file mode 100644
index 000000000..c287c28df
--- /dev/null
+++ b/makefu/1systems/cake/config.nix
@@ -0,0 +1,55 @@
+{ config, lib, pkgs, ... }:
+{
+ imports = [
+ <stockholm/makefu>
+ <stockholm/makefu/2configs/tools/core.nix>
+# configure your hw:
+# <stockholm/makefu/2configs/save-diskspace.nix>
+ ];
+ users.extraUsers.root.openssh.authorizedKeys.keys = [
+ config.krebs.users.tv.pubkey
+ ];
+ krebs = {
+ enable = true;
+ tinc.retiolum.enable = true;
+ build.host = config.krebs.hosts.cake;
+ };
+ boot.loader.grub.enable = false;
+ boot.loader.generic-extlinux-compatible.enable = true;
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+ boot.kernelParams = ["cma=32M" "console=ttyS0,115200n8" "console=tty0" ];
+
+ programs.info.enable = false;
+ programs.man.enable = false;
+ services.nixosManual.enable = false;
+ boot.tmpOnTmpfs = lib.mkForce false;
+
+ hardware.enableRedistributableFirmware = true;
+ hardware.firmware = [
+ (pkgs.stdenv.mkDerivation {
+ name = "broadcom-rpi3-rest";
+ src = pkgs.fetchurl {
+ url = "https://raw.githubusercontent.com/RPi-Distro/firmware-nonfree/54bab3d/brcm80211/brcm/brcmfmac43430-sdio.txt";
+ sha256 = "19bmdd7w0xzybfassn7x4rb30l70vynnw3c80nlapna2k57xwbw7";
+ };
+ phases = [ "installPhase" ];
+ installPhase = ''
+ mkdir -p $out/lib/firmware/brcm
+ cp $src $out/lib/firmware/brcm/brcmfmac43430-sdio.txt
+ '';
+ })
+ ];
+ networking.wireless.enable = true;
+
+# File systems configuration for using the installer's partition layout
+ fileSystems = {
+ "/boot" = {
+ device = "/dev/disk/by-label/NIXOS_BOOT";
+ fsType = "vfat";
+ };
+ "/" = {
+ device = "/dev/disk/by-label/NIXOS_SD";
+ fsType = "ext4";
+ };
+ };
+}
diff --git a/makefu/1systems/cake/source.nix b/makefu/1systems/cake/source.nix
new file mode 100644
index 000000000..cd97a7c62
--- /dev/null
+++ b/makefu/1systems/cake/source.nix
@@ -0,0 +1,4 @@
+import <stockholm/makefu/source.nix> {
+ name="cake";
+ full = true;
+}
diff --git a/makefu/1systems/gum/config.nix b/makefu/1systems/gum/config.nix
index 2f288e708..e769b1e22 100644
--- a/makefu/1systems/gum/config.nix
+++ b/makefu/1systems/gum/config.nix
@@ -40,10 +40,11 @@ in {
# services
<stockholm/makefu/2configs/share/gum.nix>
<stockholm/makefu/2configs/sabnzbd.nix>
- # <stockholm/makefu/2configs/torrent.nix>
+ <stockholm/makefu/2configs/torrent.nix>
<stockholm/makefu/2configs/iodined.nix>
<stockholm/makefu/2configs/vpn/openvpn-server.nix>
<stockholm/makefu/2configs/dnscrypt/server.nix>
+ <stockholm/makefu/2configs/remote-build/slave.nix>
## Web
<stockholm/makefu/2configs/nginx/share-download.nix>
@@ -74,10 +75,15 @@ in {
<stockholm/makefu/2configs/stats/client.nix>
# <stockholm/makefu/2configs/logging/client.nix>
+ # Temporary:
+ <stockholm/makefu/2configs/temp/rst-issue.nix>
+
];
makefu.dl-dir = "/var/download";
-
+ services.openssh.hostKeys = [
+ { bits = 4096; path = <secrets/ssh_host_rsa_key>; type = "rsa"; }
+ { path = <secrets/ssh_host_ed25519_key>; type = "ed25519"; } ];
###### stable
services.nginx.virtualHosts.cgit.serverAliases = [ "cgit.euer.krebsco.de" ];
krebs.build.host = config.krebs.hosts.gum;
@@ -143,6 +149,8 @@ in {
53589
# temp vnc
18001
+ # temp reverseshell
+ 31337
];
allowedUDPPorts = [
# tinc
diff --git a/makefu/1systems/latte/config.nix b/makefu/1systems/latte/config.nix
new file mode 100644
index 000000000..3b06660c6
--- /dev/null
+++ b/makefu/1systems/latte/config.nix
@@ -0,0 +1,54 @@
+{ config, pkgs, ... }:
+let
+
+ # external-ip = config.krebs.build.host.nets.internet.ip4.addr;
+ # internal-ip = config.krebs.build.host.nets.retiolum.ip4.addr;
+ # default-gw = "185.215.224.1";
+ # prefixLength = 24;
+ # external-mac = "46:5b:fc:f4:44:c9";
+ # ext-if = "et0";
+in {
+
+ imports = [
+ <stockholm/makefu>
+ # configure your hw:
+ <stockholm/makefu/2configs/hw/CAC.nix>
+ <stockholm/makefu/2configs/tinc/retiolum.nix>
+ <stockholm/makefu/2configs/save-diskspace.nix>
+
+ # Security
+ <stockholm/makefu/2configs/sshd-totp.nix>
+ <stockholm/makefu/2configs/stats/client.nix>
+
+ # Tools
+ <stockholm/makefu/2configs/tools/core.nix>
+ <stockholm/makefu/2configs/vim.nix>
+ <stockholm/makefu/2configs/zsh-user.nix>
+ # Services
+ <stockholm/makefu/2configs/remote-build/slave.nix>
+ <stockholm/makefu/2configs/torrent.nix>
+
+ ];
+ krebs = {
+ enable = true;
+ build.host = config.krebs.hosts.latte;
+ };
+ boot.initrd.availableKernelModules = [ "ata_piix" "ehci_pci" "virtio_pci" "virtio_blk" "virtio_net" "virtio_scsi" ];
+
+ boot.loader.grub.device = "/dev/vda";
+ boot.loader.grub.copyKernels = true;
+ fileSystems."/" = {
+ device = "/dev/vda1";
+ fsType = "ext4";
+ };
+ networking = {
+ firewall = {
+ allowPing = true;
+ logRefusedConnections = false;
+ allowedTCPPorts = [ ];
+ allowedUDPPorts = [ 655 ];
+ };
+ # network interface receives dhcp address
+ nameservers = [ "8.8.8.8" ];
+ };
+}
diff --git a/makefu/1systems/latte/source.nix b/makefu/1systems/latte/source.nix
new file mode 100644
index 000000000..d9600909a
--- /dev/null
+++ b/makefu/1systems/latte/source.nix
@@ -0,0 +1,4 @@
+import <stockholm/makefu/source.nix> {
+ name = "latte";
+ torrent = true;
+}
diff --git a/makefu/1systems/omo/config.nix b/makefu/1systems/omo/config.nix
index 32cd3f900..a22ff10bd 100644
--- a/makefu/1systems/omo/config.nix
+++ b/makefu/1systems/omo/config.nix
@@ -65,6 +65,8 @@ in {
# services
<stockholm/makefu/2configs/syncthing.nix>
<stockholm/makefu/2configs/mqtt.nix>
+ <stockholm/makefu/2configs/remote-build/slave.nix>
+
# security
<stockholm/makefu/2configs/sshd-totp.nix>
diff --git a/makefu/1systems/pnp/config.nix b/makefu/1systems/pnp/config.nix
index 5fbaaabc7..6c9fc0606 100644
--- a/makefu/1systems/pnp/config.nix
+++ b/makefu/1systems/pnp/config.nix
@@ -34,10 +34,11 @@
krebs.Reaktor.debug = {
debug = true;
extraEnviron = {
- REAKTOR_HOST = "ni.r";
+ # TODO: remove hard-coded server
+ REAKTOR_HOST = "irc.r";
};
plugins = with pkgs.ReaktorPlugins; [ stockholm-issue nixos-version sed-plugin ];
- channels = [ "#retiolum" ];
+ channels = [ "#xxx" ];
};
krebs.build.host = config.krebs.hosts.pnp;
diff --git a/makefu/1systems/wbob/config.nix b/makefu/1systems/wbob/config.nix
index b776b49d6..3a53b70cb 100644
--- a/makefu/1systems/wbob/config.nix
+++ b/makefu/1systems/wbob/config.nix
@@ -25,7 +25,9 @@ in {
# <stockholm/makefu/2configs/audio/realtime-audio.nix>
# <stockholm/makefu/2configs/vncserver.nix>
<stockholm/makefu/2configs/temp/rst-issue.nix>
- ];
+ # Services
+ <stockholm/makefu/2configs/remote-build/slave.nix>
+ ];
krebs = {
enable = true;
@@ -33,10 +35,48 @@ in {
};
swapDevices = [ { device = "/var/swap"; } ];
+ services.collectd.extraConfig = lib.mkAfter ''
+ #LoadPlugin ping
+ # does not work because it requires privileges
+ #<Plugin "ping">
+ # Host "google.de"
+ # Host "heise.de"
+ #</Plugin>
+
+ LoadPlugin curl
+ <Plugin curl>
+ TotalTime true
+ NamelookupTime true
+ ConnectTime true
+
+ <Page "google">
+ MeasureResponseTime true
+ MeasureResponseCode true
+ URL "https://google.de"
+ </Page>
+
+ <Page "webde">
+ MeasureResponseTime true
+ MeasureResponseCode true
+ URL "http://web.de"
+ </Page>
+
+ </Plugin>
+ #LoadPlugin netlink
+ #<Plugin "netlink">
+ # Interface "enp0s25"
+ # Interface "wlp2s0"
+ # IgnoreSelected false
+ #</Plugin>
+ '';
networking.firewall.allowedUDPPorts = [ 655 ];
- networking.firewall.allowedTCPPorts = [ 655 49152 ];
+ networking.firewall.allowedTCPPorts = [
+ 655
+ 8081 #smokeping
+ 49152
+ ];
networking.firewall.trustedInterfaces = [ "enp0s25" ];
#services.tinc.networks.siem = {
# name = "display";
@@ -90,4 +130,66 @@ in {
serverAddress = "x.r";
};
};
+ security.wrappers.fping = {
+ source = "${pkgs.fping}/bin/fping";
+ setuid = true;
+ };
+ services.smokeping = {
+ enable = true;
+ targetConfig = ''
+ probe = FPing
+ menu = Top
+ title = Network Latency Grapher
+ remark = Welcome to this SmokePing website.
+
+ + network
+ menu = Net latency
+ title = Network latency (ICMP pings)
+
+ ++ google
+ probe = FPing
+ host = google.de
+ ++ webde
+ probe = FPing
+ host = web.de
+
+ + services
+ menu = Service latency
+ title = Service latency (DNS, HTTP)
+
+ ++ HTTP
+ menu = HTTP latency
+ title = Service latency (HTTP)
+
+ +++ webdeping
+ probe = EchoPingHttp
+ host = web.de
+
+ +++ googwebping
+ probe = EchoPingHttp
+ host = google.de
+
+ #+++ webwww
+ #probe = Curl
+ #host = web.de
+
+ #+++ googwebwww
+ #probe = Curl
+ #host = google.de
+ '';
+ probeConfig = ''
+ + FPing
+ binary = /run/wrappers/bin/fping
+ + EchoPingHttp
+ pings = 5
+ url = /
+
+ #+ Curl
+ ## probe-specific variables
+ #binary = ${pkgs.curl}/bin/curl
+ #step = 60
+ ## a default for this target-specific variable
+ #urlformat = http://%host%/
+ '';
+ };
}
diff --git a/makefu/1systems/x/config.nix b/makefu/1systems/x/config.nix
index 892eb1095..f7db75564 100644
--- a/makefu/1systems/x/config.nix
+++ b/makefu/1systems/x/config.nix
@@ -57,6 +57,7 @@ with import <stockholm/lib>;
<stockholm/makefu/2configs/tor.nix>
<stockholm/makefu/2configs/vpn/vpngate.nix>
# <stockholm/makefu/2configs/buildbot-standalone.nix>
+ # <stockholm/makefu/2configs/remote-build/master.nix>
# Hardware
<stockholm/makefu/2configs/hw/tp-x230.nix>
diff --git a/makefu/2configs/binary-cache/lass.nix b/makefu/2configs/binary-cache/lass.nix
index 4813eeb0f..46b386e14 100644
--- a/makefu/2configs/binary-cache/lass.nix
+++ b/makefu/2configs/binary-cache/lass.nix
@@ -7,6 +7,7 @@
];
binaryCachePublicKeys = [
"cache.prism-1:+S+6Lo/n27XEtvdlQKuJIcb1yO5NUqUCE2lolmTgNJU="
+ "cache.prism-2:YwmCm3/s/D+SxrPKN/ETjlpw/219pNUbpnluatp6FKI="
];
};
}
diff --git a/makefu/2configs/deployment/led-fader.nix b/makefu/2configs/deployment/led-fader.nix
index 678370c69..4c17a1d50 100644
--- a/makefu/2configs/deployment/led-fader.nix
+++ b/makefu/2configs/deployment/led-fader.nix
@@ -29,11 +29,11 @@ in {
environment = {
NIX_PATH = "/var/src";
};
- # after = [ (lib.optional config.services.mosqitto.enable "mosquitto.service") ];
+ after = [ "network-online.target" ] ++ (lib.optional config.services.mosquitto.enable "mosquitto.service");
wantedBy = [ "multi-user.target" ];
- after = [ "network-online.target" ];
serviceConfig = {
# User = "nobody"; # need a user with permissions to run nix-shell
+ ExecStartPre = pkgs.writeDash "sleep.sh" "sleep 2";
ExecStart = "${pkg}/bin/ampel 4 ${pkg}/share/times.json";
PrivateTmp = true;
};
diff --git a/makefu/2configs/git/brain-retiolum.nix b/makefu/2configs/git/brain-retiolum.nix
index 05754dc7f..3be3fccef 100644
--- a/makefu/2configs/git/brain-retiolum.nix
+++ b/makefu/2configs/git/brain-retiolum.nix
@@ -19,9 +19,9 @@ let
post-receive = pkgs.git-hooks.irc-announce {
nick = config.networking.hostName;
verbose = true;
- channel = "#retiolum";
+ channel = "#xxx";
# TODO remove the hardcoded hostname
- server = "ni.r";
+ server = "irc.r";
};
};
};
diff --git a/makefu/2configs/git/cgit-retiolum.nix b/makefu/2configs/git/cgit-retiolum.nix
index 30c0b0b87..da246f66a 100644
--- a/makefu/2configs/git/cgit-retiolum.nix
+++ b/makefu/2configs/git/cgit-retiolum.nix
@@ -24,6 +24,7 @@ let
cac-api = { };
euer_blog = { };
ampel = { };
+ europastats = { };
init-stockholm = {
cgit.desc = "Init stuff for stockholm";
};
@@ -56,9 +57,9 @@ let
post-receive = pkgs.git-hooks.irc-announce {
nick = config.networking.hostName;
verbose = config.krebs.build.host.name == "gum";
- channel = "#retiolum";
+ channel = "#xxx";
# TODO remove the hardcoded hostname
- server = "ni.r";
+ server = "irc.r";
};
};
};
@@ -67,7 +68,7 @@ let
# TODO: get the list of all krebsministers
krebsminister = with config.krebs.users; [ lass tv ];
- all-makefu = with config.krebs.users; [ makefu makefu-omo makefu-tsp makefu-vbob makefu-tempx ];
+ all-makefu = with config.krebs.users; [ makefu makefu-omo makefu-tsp makefu-vbob makefu-tempx makefu-android ];
all-exco = with config.krebs.users; [ exco ];
priv-rules = repo: set-owners repo all-makefu;
diff --git a/makefu/2configs/gui/base.nix b/makefu/2configs/gui/base.nix
index 0247010b1..daa0282b8 100644
--- a/makefu/2configs/gui/base.nix
+++ b/makefu/2configs/gui/base.nix
@@ -58,7 +58,7 @@ in
hardware.pulseaudio = {
enable = true;
- systemWide = true;
+ # systemWide = true;
};
services.xserver.displayManager.sessionCommands = let
xdefaultsfile = pkgs.writeText "Xdefaults" ''
diff --git a/makefu/2configs/remote-build/master.nix b/makefu/2configs/remote-build/master.nix
new file mode 100644
index 000000000..4ad2c5ed8
--- /dev/null
+++ b/makefu/2configs/remote-build/master.nix
@@ -0,0 +1,14 @@
+{ pkgs, ...}:
+let
+ sshKey = (toString <secrets>) + "/id_nixBuild";
+in {
+ nix.distributedBuilds = true;
+ # TODO: iterate over krebs.hosts
+ nix.buildMachines = map ( hostName:
+ { inherit hostName sshKey;
+ sshUser = "nixBuild";
+ system = "x86_64-linux";
+ maxJobs = 1;
+ }) [ "omo.r" "gum.r" "latte.r" ];
+ # puyak.r "wbob.r"
+}
diff --git a/makefu/2configs/remote-build/slave.nix b/makefu/2configs/remote-build/slave.nix
new file mode 100644
index 000000000..b6e000a34
--- /dev/null
+++ b/makefu/2configs/remote-build/slave.nix
@@ -0,0 +1,11 @@
+{
+ nix.trustedUsers = [ "nixBuild" ];
+ users.users.nixBuild = {
+ name = "nixBuild";
+ useDefaultShell = true;
+ # TODO: put this somewhere else
+ openssh.authorizedKeys.keys = [
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPlhb0TIBW9RN9T8Is4YRIc1RjOg+cxbZCaDjbM4zxrX nixBuild"
+ ];
+ };
+}
diff --git a/makefu/2configs/stats/server.nix b/makefu/2configs/stats/server.nix
index 8f9935658..7548c733e 100644
--- a/makefu/2configs/stats/server.nix
+++ b/makefu/2configs/stats/server.nix
@@ -2,6 +2,8 @@
with import <stockholm/lib>;
let
+ irc-server = "rc.r";
+ irc-nick = "m-alarm";
collectd-port = 25826;
influx-port = 8086;
grafana-port = 3000; # TODO nginx forward
@@ -37,9 +39,9 @@ in {
echoToIrc = pkgs.writeDash "echo_irc" ''
set -euf
data="$(${pkgs.jq}/bin/jq -r .message)"
- export LOGNAME=malarm
+ export LOGNAME=${irc-nick}
${pkgs.irc-announce}/bin/irc-announce \
- irc.freenode.org 6667 malarm \#krebs-bots "$data" >/dev/null
+ ${irc-server} 6667 ${irc-nick} \#noise "$data" >/dev/null
'';
in {
enable = true;
diff --git a/makefu/2configs/stats/telegraf/europastats.nix b/makefu/2configs/stats/telegraf/europastats.nix
index 9249280c5..2ab62766a 100644
--- a/makefu/2configs/stats/telegraf/europastats.nix
+++ b/makefu/2configs/stats/telegraf/europastats.nix
@@ -4,7 +4,7 @@ let
rev = "be31da7";
name = "europastats-${rev}";
propagatedBuildInputs = [
- requests2
+ requests
docopt
];
src = pkgs.fetchgit {
diff --git a/makefu/2configs/tools/core-gui.nix b/makefu/2configs/tools/core-gui.nix
index 0538647ae..2f80b08c9 100644
--- a/makefu/2configs/tools/core-gui.nix
+++ b/makefu/2configs/tools/core-gui.nix
@@ -13,7 +13,6 @@
keepassx
pcmanfm
evince
- skype
mirage
tightvnc
gnome3.dconf
diff --git a/makefu/2configs/tools/dev.nix b/makefu/2configs/tools/dev.nix
index 6681484fd..d3d50c433 100644
--- a/makefu/2configs/tools/dev.nix
+++ b/makefu/2configs/tools/dev.nix
@@ -16,5 +16,6 @@
whatsupnix
brain
gen-oath-safe
+ cdrtools
];
}
diff --git a/makefu/2configs/tools/extra-gui.nix b/makefu/2configs/tools/extra-gui.nix
index b2d616764..bcc068d82 100644
--- a/makefu/2configs/tools/extra-gui.nix
+++ b/makefu/2configs/tools/extra-gui.nix
@@ -6,7 +6,7 @@
gimp
inkscape
libreoffice
- skype
+ # skype
synergy
tdesktop
virtmanager
diff --git a/makefu/2configs/tools/sec-gui.nix b/makefu/2configs/tools/sec-gui.nix
index 2db3e4391..95f130ae8 100644
--- a/makefu/2configs/tools/sec-gui.nix
+++ b/makefu/2configs/tools/sec-gui.nix
@@ -1,8 +1,15 @@
{ pkgs, ... }:
{
- krebs.per-user.makefu.packages = with pkgs; [
- tpmmanager
- wireshark
- ];
+ users.users.makefu = {
+ extraGroups = [ "wireshark" ];
+ packages = with pkgs; [
+ tpmmanager
+ ];
+ };
+
+ programs.wireshark = {
+ enable = true;
+ package = pkgs.wireshark;
+ };
}
diff --git a/makefu/2configs/tools/steam.nix b/makefu/2configs/tools/steam.nix
index dbe51270d..048c1d1a3 100644
--- a/makefu/2configs/tools/steam.nix
+++ b/makefu/2configs/tools/steam.nix
@@ -1,9 +1,7 @@
{pkgs, ...}:
{
- environment.systemPackages = [
- (pkgs.steam.override {
- newStdcpp = true;
- })
+ users.users.makefu.packages = [
+ pkgs.steam
];
hardware.opengl.driSupport32Bit = true;
hardware.pulseaudio.support32Bit = true;
diff --git a/makefu/2configs/urlwatch/default.nix b/makefu/2configs/urlwatch/default.nix
index 47b5d7fc3..677950f43 100644
--- a/makefu/2configs/urlwatch/default.nix
+++ b/makefu/2configs/urlwatch/default.nix
@@ -24,13 +24,18 @@ in {
# pypi
https://pypi.python.org/simple/bepasty/
- https://pypi.python.org/simple/xstatic/
https://pypi.python.org/simple/devpi-client/
+ https://pypi.python.org/simple/oslo.config/
+ https://pypi.python.org/simple/sqlalchemy_migrate/
+ https://pypi.python.org/simple/xstatic/
+ https://pypi.python.org/simple/pyserial/
+ https://pypi.python.org/simple/semantic_version/
# weird shit
http://guest:derpi@cvs2svn.tigris.org/svn/cvs2svn/tags/
http://ftp.debian.org/debian/pool/main/a/apt-cacher-ng/
https://erdgeist.org/gitweb/opentracker/info/refs?service=git-upload-pack
https://git.tasktools.org/TM/taskd/info/refs?service=git-upload-pack
+ http://www.iozone.org/src/current/
{
url = https://newellrubbermaid.secure.force.com/dymopkb/articles/en_US/FAQ/Dymo-Drivers-and-Downloads/?l=en_US&c=Segment:Dymo&fs=Search&pn=1 ;
diff --git a/makefu/2configs/vim.nix b/makefu/2configs/vim.nix
index 9f3a59717..43d362ed9 100644
--- a/makefu/2configs/vim.nix
+++ b/makefu/2configs/vim.nix
@@ -127,6 +127,7 @@ in {
{ names = [ "undotree"
# "YouCompleteMe"
"vim-better-whitespace" ]; }
+ # vim-nix handles indentation better but does not perform sanity
{ names = [ "vim-addon-nix" ]; ft_regex = "^nix\$"; }
];
diff --git a/makefu/2configs/vpn/openvpn-server.nix b/makefu/2configs/vpn/openvpn-server.nix
index 1e7edbf78..79754264f 100644
--- a/makefu/2configs/vpn/openvpn-server.nix
+++ b/makefu/2configs/vpn/openvpn-server.nix
@@ -1,13 +1,13 @@
{ config, pkgs, ... }:
let
- out-itf = config.makefu.server.primary-itf;
- # generate via openvpn --genkey --secret static.key
- client-key = (toString <secrets>) + "/openvpn-laptop.key";
+ out-itf = config.makefu.server.primary-itf;
+ # generate via openvpn --genkey --secret static.key
+ client-key = (toString <secrets>) + "/openvpn-laptop.key";
# domain = "vpn.euer.krebsco.de";
domain = "gum.krebsco.de";
dev = "tun0";
port = 1194;
- tcp-port = 3306;
+ tcp-port = 3306;
in {
boot.kernel.sysctl."net.ipv4.ip_forward" = 1;
networking.nat = {
diff --git a/makefu/3modules/server-config.nix b/makefu/3modules/server-config.nix
index 846642580..9cac59205 100644
--- a/makefu/3modules/server-config.nix
+++ b/makefu/3modules/server-config.nix
@@ -1,15 +1,14 @@
{config, lib, pkgs, ... }:
-with import <stockholm/lib>;
-{
+with lib;{
options.makefu.server.primary-itf = lib.mkOption {
- type = types.str;
- description = "Primary interface of the server";
- };
+ type = types.str;
+ description = "Primary interface of the server";
+ };
options.makefu.gui.user = lib.mkOption {
- type = types.str;
- description = "GUI user";
+ type = types.str;
+ description = "GUI user";
default = config.krebs.build.user.name;
- };
+ };
}
diff --git a/makefu/3modules/wvdial.nix b/makefu/3modules/wvdial.nix
index 982f4a7db..1ed929ed4 100644
--- a/makefu/3modules/wvdial.nix
+++ b/makefu/3modules/wvdial.nix
@@ -1,5 +1,6 @@
+# Global configuration for wvdial.
+
{ config, lib, pkgs, ... }:
-# from 17.03/nixos/modules/programs/wvdial.nix
with lib;
diff --git a/makefu/5pkgs/beef/Gemfile b/makefu/5pkgs/beef/Gemfile
new file mode 100644
index 000000000..1420feffd
--- /dev/null
+++ b/makefu/5pkgs/beef/Gemfile
@@ -0,0 +1,97 @@
+# BeEF's Gemfile
+
+#
+# Copyright (c) 2006-2017 Wade Alcorn - wade@bindshell.net
+# Browser Exploitation Framework (BeEF) - http://beefproject.com
+# See the file 'doc/COPYING' for copying permission
+#
+
+gem 'eventmachine'
+gem 'thin'
+gem 'sinatra'
+gem 'rack', '~> 1.6.5'
+gem 'em-websocket' # WebSocket support
+gem 'uglifier'
+gem 'mime-types'
+gem 'execjs'
+gem 'ansi'
+gem 'term-ansicolor', :require => 'term/ansicolor'
+gem 'dm-core'
+gem 'json'
+gem 'data_objects'
+gem 'rubyzip', '>= 1.2.1'
+gem 'espeak-ruby', '>= 1.0.4' # Text-to-Voice
+gem 'nokogiri', '>= 1.7'
+
+gem 'therubyracer'
+
+# SQLite support
+group :sqlite do
+ gem 'dm-sqlite-adapter'
+end
+
+# PostgreSQL support
+group :postgres do
+ #gem dm-postgres-adapter
+end
+
+# MySQL support
+group :mysql do
+ #gem dm-mysql-adapter
+end
+
+# Geolocation support
+group :geoip do
+ gem 'geoip'
+end
+
+gem 'parseconfig'
+gem 'erubis'
+gem 'dm-migrations'
+
+# Metasploit Integration extension
+group :ext_msf do
+ gem 'msfrpc-client'
+end
+
+# Twitter Notifications extension
+group :ext_twitter do
+ #gem 'twitter', '>= 5.0.0'
+end
+
+# DNS extension
+group :ext_dns do
+ gem 'rubydns', '~> 0.7.3'
+end
+
+# network extension
+group :ext_network do
+ gem 'dm-serializer'
+end
+
+# QRcode extension
+group :ext_qrcode do
+ gem 'qr4r'
+end
+
+# For running unit tests
+group :test do
+if ENV['BEEF_TEST']
+ gem 'rake'
+ gem 'test-unit'
+ gem 'test-unit-full'
+ gem 'curb'
+ gem 'selenium'
+ gem 'selenium-webdriver'
+ gem 'rspec'
+ gem 'bundler-audit'
+ # nokogirl is needed by capybara which may require one of the below commands
+ # sudo apt-get install libxslt-dev libxml2-dev
+ # sudo port install libxml2 libxslt
+ gem 'capybara'
+ # RESTful API tests/generic command module tests
+ gem 'rest-client', '>= 2.0.1'
+end
+end
+
+source 'https://rubygems.org'
diff --git a/makefu/5pkgs/beef/Gemfile.lock b/makefu/5pkgs/beef/Gemfile.lock
new file mode 100644
index 000000000..d2e6ad45e
--- /dev/null
+++ b/makefu/5pkgs/beef/Gemfile.lock
@@ -0,0 +1,139 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ addressable (2.5.2)
+ public_suffix (>= 2.0.2, < 4.0)
+ ansi (1.5.0)
+ chunky_png (1.3.8)
+ daemons (1.2.4)
+ data_objects (0.10.17)
+ addressable (~> 2.1)
+ dm-core (1.2.1)
+ addressable (~> 2.3)
+ dm-do-adapter (1.2.0)
+ data_objects (~> 0.10.6)
+ dm-core (~> 1.2.0)
+ dm-migrations (1.2.0)
+ dm-core (~> 1.2.0)
+ dm-serializer (1.2.2)
+ dm-core (~> 1.2.0)
+ fastercsv (~> 1.5)
+ json (~> 1.6)
+ json_pure (~> 1.6)
+ multi_json (~> 1.0)
+ dm-sqlite-adapter (1.2.0)
+ dm-do-adapter (~> 1.2.0)
+ do_sqlite3 (~> 0.10.6)
+ do_sqlite3 (0.10.17)
+ data_objects (= 0.10.17)
+ em-websocket (0.5.1)
+ eventmachine (>= 0.12.9)
+ http_parser.rb (~> 0.6.0)
+ erubis (2.7.0)
+ espeak-ruby (1.0.4)
+ eventmachine (1.0.9.1)
+ execjs (2.7.0)
+ fastercsv (1.5.5)
+ filesize (0.1.1)
+ geoip (1.6.3)
+ http_parser.rb (0.6.0)
+ jsobfu (0.4.2)
+ rkelly-remix
+ json (1.8.6)
+ json_pure (1.8.6)
+ libv8 (3.16.14.19)
+ metasm (1.0.3)
+ mime-types (3.1)
+ mime-types-data (~> 3.2015)
+ mime-types-data (3.2016.0521)
+ mini_portile2 (2.3.0)
+ mojo_magick (0.5.6)
+ msfrpc-client (1.1.1)
+ msgpack (~> 1)
+ rex (~> 2)
+ msgpack (1.1.0)
+ multi_json (1.12.2)
+ nokogiri (1.8.1)
+ mini_portile2 (~> 2.3.0)
+ parseconfig (1.0.8)
+ public_suffix (3.0.0)
+ qr4r (0.4.1)
+ mojo_magick
+ rqrcode
+ rack (1.6.8)
+ rack-protection (1.5.3)
+ rack
+ rainbow (2.2.2)
+ rake
+ rake (12.1.0)
+ rb-readline (0.5.5)
+ ref (2.0.0)
+ rex (2.0.11)
+ filesize
+ jsobfu (~> 0.4.1)
+ json
+ metasm (~> 1.0.2)
+ nokogiri
+ rb-readline
+ robots
+ rexec (1.6.3)
+ rainbow
+ rkelly-remix (0.0.7)
+ robots (0.10.1)
+ rqrcode (0.10.1)
+ chunky_png (~> 1.0)
+ rubydns (0.7.3)
+ eventmachine (~> 1.0.0)
+ rexec (~> 1.6.2)
+ rubyzip (1.2.1)
+ sinatra (1.4.8)
+ rack (~> 1.5)
+ rack-protection (~> 1.4)
+ tilt (>= 1.3, < 3)
+ term-ansicolor (1.6.0)
+ tins (~> 1.0)
+ therubyracer (0.12.3)
+ libv8 (~> 3.16.14.15)
+ ref
+ thin (1.7.2)
+ daemons (~> 1.0, >= 1.0.9)
+ eventmachine (~> 1.0, >= 1.0.4)
+ rack (>= 1, < 3)
+ tilt (2.0.8)
+ tins (1.15.0)
+ uglifier (3.2.0)
+ execjs (>= 0.3.0, < 3)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ ansi
+ data_objects
+ dm-core
+ dm-migrations
+ dm-serializer
+ dm-sqlite-adapter
+ em-websocket
+ erubis
+ espeak-ruby (>= 1.0.4)
+ eventmachine
+ execjs
+ geoip
+ json
+ mime-types
+ msfrpc-client
+ nokogiri (>= 1.7)
+ parseconfig
+ qr4r
+ rack (~> 1.6.5)
+ rubydns (~> 0.7.3)
+ rubyzip (>= 1.2.1)
+ sinatra
+ term-ansicolor
+ therubyracer
+ thin
+ uglifier
+
+BUNDLED WITH
+ 1.15.4
diff --git a/makefu/5pkgs/beef/default.nix b/makefu/5pkgs/beef/default.nix
new file mode 100644
index 000000000..82540cde9
--- /dev/null
+++ b/makefu/5pkgs/beef/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, bundlerEnv, ruby, fetchFromGitHub }:
+# nix-shell --command "bundler install && bundix" in the clone, copy gemset.nix, Gemfile and Gemfile.lock
+let
+ gems = bundlerEnv {
+ name = "beef-env";
+ inherit ruby;
+ gemdir = ./.;
+ };
+in stdenv.mkDerivation {
+ name = "beef-2017-09-21";
+ src = fetchFromGitHub {
+ owner = "beefproject";
+ repo = "beef";
+ rev = "69aa2a3";
+ sha256 = "1rky61i0wzpwcq3kqfa0m5hf6wyz8q8jgzs7dpfh04w9qh32ic4p";
+ };
+ buildInputs = [gems ruby];
+ installPhase = ''
+ mkdir -p $out/{bin,share/beef}
+
+ cp -r * $out/share/beef
+ # set the default db path, unfortunately setting to /tmp does not seem to work
+ # sed -i 's#db_file: .*#db_file: "/tmp/beef.db"#' $out/share/beef/config.yaml
+
+ bin=$out/bin/beef
+ cat > $bin <<EOF
+#!/bin/sh -e
+exec ${gems}/bin/bundle exec ${ruby}/bin/ruby $out/share/beef/beef "\$@"
+EOF
+ chmod +x $bin
+ '';
+
+ # crashes with segfault
+ # also, db cannot be set
+ meta.broken = true;
+
+}
diff --git a/makefu/5pkgs/beef/gemset.nix b/makefu/5pkgs/beef/gemset.nix
new file mode 100644
index 000000000..b6af75d00
--- /dev/null
+++ b/makefu/5pkgs/beef/gemset.nix
@@ -0,0 +1,475 @@
+{
+ addressable = {
+ dependencies = ["public_suffix"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+ type = "gem";
+ };
+ version = "2.5.2";
+ };
+ ansi = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "14ims9zfal4gs2wpx2m5rd8zsrl2k794d359shkrsgg3fhr2a22l";
+ type = "gem";
+ };
+ version = "1.5.0";
+ };
+ chunky_png = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0j0dngz6s0j3s3zaf9vrimjz65s9k7ad1c3xmmldr1vmz8sbd843";
+ type = "gem";
+ };
+ version = "1.3.8";
+ };
+ daemons = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1bmb4qrd95b5gl3ym5j3q6mf090209f4vkczggn49n56w6s6zldz";
+ type = "gem";
+ };
+ version = "1.2.4";
+ };
+ data_objects = {
+ dependencies = ["addressable"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "19fw1ckqc5f1wc4r72qrymy2k6cmd8azbxpn61ksbsjqhzc2bgqd";
+ type = "gem";
+ };
+ version = "0.10.17";
+ };
+ dm-core = {
+ dependencies = ["addressable"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09x67ka6f1lxh4iwrg87iama0haq0d0z35gavvnvzpx9kn9pfbnw";
+ type = "gem";
+ };
+ version = "1.2.1";
+ };
+ dm-do-adapter = {
+ dependencies = ["data_objects" "dm-core"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1v84lsmsq8kawl8k4qz2h87xqc1sr10c08wwasrxbcgrkvp7qk4q";
+ type = "gem";
+ };
+ version = "1.2.0";
+ };
+ dm-migrations = {
+ dependencies = ["dm-core"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "04hr8qgm4j1z5fg0cfpr8r6apvk5xykad0d0xqfg48rjv5rdwc0i";
+ type = "gem";
+ };
+ version = "1.2.0";
+ };
+ dm-serializer = {
+ dependencies = ["dm-core" "fastercsv" "json" "json_pure" "multi_json"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0mvpb2d4cniysw45d3c9xidjpdb3wmfl7x5lgvnsfm69wq24v5y4";
+ type = "gem";
+ };
+ version = "1.2.2";
+ };
+ dm-sqlite-adapter = {
+ dependencies = ["dm-do-adapter" "do_sqlite3"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0mq9xrw4jwb753sy8902rq9sfv62mzss2n3875g51i9acqy475hc";
+ type = "gem";
+ };
+ version = "1.2.0";
+ };
+ do_sqlite3 = {
+ dependencies = ["data_objects"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gxz54qjgwg6a2mkqpai28m0i5swbyxpr4qmh9x1nwf20lysrgcf";
+ type = "gem";
+ };
+ version = "0.10.17";
+ };
+ em-websocket = {
+ dependencies = ["eventmachine" "http_parser.rb"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1bsw8vjz0z267j40nhbmrvfz7dvacq4p0pagvyp17jif6mj6v7n3";
+ type = "gem";
+ };
+ version = "0.5.1";
+ };
+ erubis = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
+ type = "gem";
+ };
+ version = "2.7.0";
+ };
+ espeak-ruby = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0d658zr53jibyrs5qnic7bfl6h69k5987s8asncsbnxwbzzilj6y";
+ type = "gem";
+ };
+ version = "1.0.4";
+ };
+ eventmachine = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "17jr1caa3ggg696dd02g2zqzdjqj9x9q2nl7va82l36f7c5v6k4z";
+ type = "gem";
+ };
+ version = "1.0.9.1";
+ };
+ execjs = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1";
+ type = "gem";
+ };
+ version = "2.7.0";
+ };
+ fastercsv = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1df3vfgw5wg0s405z0pj0rfcvnl9q6wak7ka8gn0xqg4cag1k66h";
+ type = "gem";
+ };
+ version = "1.5.5";
+ };
+ filesize = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "061qmg82mm9xnmnq3b7gbi24g28xk62w0b0nw86gybd07m1jn989";
+ type = "gem";
+ };
+ version = "0.1.1";
+ };
+ geoip = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "099hxng7h8i3pwibnassivj58iw1x7ygwq06qj6rx7j16iyz6rzx";
+ type = "gem";
+ };
+ version = "1.6.3";
+ };
+ "http_parser.rb" = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
+ type = "gem";
+ };
+ version = "0.6.0";
+ };
+ jsobfu = {
+ dependencies = ["rkelly-remix"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1hchns89cfj0gggm2zbr7ghb630imxm2x2d21ffx2jlasn9xbkyk";
+ type = "gem";
+ };
+ version = "0.4.2";
+ };
+ json = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0qmj7fypgb9vag723w1a49qihxrcf5shzars106ynw2zk352gbv5";
+ type = "gem";
+ };
+ version = "1.8.6";
+ };
+ json_pure = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1vllrpm2hpsy5w1r7000mna2mhd7yfrmd8hi713lk0n9mv27bmam";
+ type = "gem";
+ };
+ version = "1.8.6";
+ };
+ libv8 = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0271i5sfma05gvhmrmxqb0jj667bl6m54yd49ay6yrdbh1g4wpl1";
+ type = "gem";
+ };
+ version = "3.16.14.19";
+ };
+ metasm = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gss57q4lv6l0jkih77zffrpjjzgkdcsy7b9nvvawyzknis9w4s5";
+ type = "gem";
+ };
+ version = "1.0.3";
+ };
+ mime-types = {
+ dependencies = ["mime-types-data"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+ type = "gem";
+ };
+ version = "3.1";
+ };
+ mime-types-data = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+ type = "gem";
+ };
+ version = "3.2016.0521";
+ };
+ mini_portile2 = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+ type = "gem";
+ };
+ version = "2.3.0";
+ };
+ mojo_magick = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1n4hzdyvaggzasxb55iqjd8sg6g84yc2dbaip0zzy7nwr5j5h8sm";
+ type = "gem";
+ };
+ version = "0.5.6";
+ };
+ msfrpc-client = {
+ dependencies = ["msgpack" "rex"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0q1x0xy857qm3sdxynp5p8kk7f6j25qjw1p28jh0y2qivc5ksik8";
+ type = "gem";
+ };
+ version = "1.1.1";
+ };
+ msgpack = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0ck7w17d6b4jbb8inh1q57bghi9cjkiaxql1d3glmj1yavbpmlh7";
+ type = "gem";
+ };
+ version = "1.1.0";
+ };
+ multi_json = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x";
+ type = "gem";
+ };
+ version = "1.12.2";
+ };
+ nokogiri = {
+ dependencies = ["mini_portile2"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "105xh2zkr8nsyfaj2izaisarpnkrrl9000y3nyflg9cbzrfxv021";
+ type = "gem";
+ };
+ version = "1.8.1";
+ };
+ parseconfig = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0br2g9k6zc4ygah52aa8cwvpnnkszia29bnvnr8bhpk3rdzi2vmq";
+ type = "gem";
+ };
+ version = "1.0.8";
+ };
+ public_suffix = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0snaj1gxfib4ja1mvy3dzmi7am73i0mkqr0zkz045qv6509dhj5f";
+ type = "gem";
+ };
+ version = "3.0.0";
+ };
+ qr4r = {
+ dependencies = ["mojo_magick" "rqrcode"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1ya71fxhmx2zfsmflmqh6xm9jwgjxamsj9d3h1kjp21w4vca0s30";
+ type = "gem";
+ };
+ version = "0.4.1";
+ };
+ rack = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
+ type = "gem";
+ };
+ version = "1.6.8";
+ };
+ rack-protection = {
+ dependencies = ["rack"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
+ type = "gem";
+ };
+ version = "1.5.3";
+ };
+ rainbow = {
+ dependencies = ["rake"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
+ type = "gem";
+ };
+ version = "2.2.2";
+ };
+ rake = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw";
+ type = "gem";
+ };
+ version = "12.1.0";
+ };
+ rb-readline = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "14w79a121czmvk1s953qfzww30mqjb2zc0k9qhi0ivxxk3hxg6wy";
+ type = "gem";
+ };
+ version = "0.5.5";
+ };
+ ref = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "04p4pq4sikly7pvn30dc7v5x2m7fqbfwijci4z1y6a1ilwxzrjii";
+ type = "gem";
+ };
+ version = "2.0.0";
+ };
+ rex = {
+ dependencies = ["filesize" "jsobfu" "json" "metasm" "nokogiri" "rb-readline" "robots"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0kxacxq4l1gcqbw1izg2qqvdhxl6b5779a2qa2jk24f6x96bpi68";
+ type = "gem";
+ };
+ version = "2.0.11";
+ };
+ rexec = {
+ dependencies = ["rainbow"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1ihc0a6gj4i3287fjm86cn2ax4hlznyk5aqxrhjxkf4y9kabc3in";
+ type = "gem";
+ };
+ version = "1.6.3";
+ };
+ rkelly-remix = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1g7hjl9nx7f953y7lncmfgp0xgxfxvgfm367q6da9niik6rp1y3j";
+ type = "gem";
+ };
+ version = "0.0.7";
+ };
+ robots = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "141gvihcr2c0dpzl3dqyh8kqc9121prfdql2iamaaw0mf9qs3njs";
+ type = "gem";
+ };
+ version = "0.10.1";
+ };
+ rqrcode = {
+ dependencies = ["chunky_png"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0h1pnnydgs032psakvg3l779w3ghbn08ajhhhw19hpmnfhrs8k0a";
+ type = "gem";
+ };
+ version = "0.10.1";
+ };
+ rubydns = {
+ dependencies = ["eventmachine" "rexec"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1mav6589kpqh37wlipkh1nww6ipbw4kzja2crz216v25wwjrbpx2";
+ type = "gem";
+ };
+ version = "0.7.3";
+ };
+ rubyzip = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
+ type = "gem";
+ };
+ version = "1.2.1";
+ };
+ sinatra = {
+ dependencies = ["rack" "rack-protection" "tilt"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
+ type = "gem";
+ };
+ version = "1.4.8";
+ };
+ term-ansicolor = {
+ dependencies = ["tins"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b";
+ type = "gem";
+ };
+ version = "1.6.0";
+ };
+ therubyracer = {
+ dependencies = ["libv8" "ref"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1g95bzs2axjglyjyj6xvsywqgr80bnzlkw7mddxx1fdrak5wni2q";
+ type = "gem";
+ };
+ version = "0.12.3";
+ };
+ thin = {
+ dependencies = ["daemons" "eventmachine" "rack"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f";
+ type = "gem";
+ };
+ version = "1.7.2";
+ };
+ tilt = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
+ type = "gem";
+ };
+ version = "2.0.8";
+ };
+ tins = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09whix5a7ics6787zrkwjmp16kqyh6560p9f317syks785805f7s";
+ type = "gem";
+ };
+ version = "1.15.0";
+ };
+ uglifier = {
+ dependencies = ["execjs"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0wmqvn4xncw6h3d5gp2a44170zwxfyj3iq4rsjp16zarvzbdmgnz";
+ type = "gem";
+ };
+ version = "3.2.0";
+ };
+} \ No newline at end of file
diff --git a/makefu/5pkgs/beef/shell.nix b/makefu/5pkgs/beef/shell.nix
new file mode 100644
index 000000000..cd7a01214
--- /dev/null
+++ b/makefu/5pkgs/beef/shell.nix
@@ -0,0 +1,16 @@
+# Env to update Gemfile.lock / gemset.nix
+with import <nixpkgs> {};
+stdenv.mkDerivation {
+ name = "env";
+ buildInputs = [
+ ruby.devEnv
+ git
+ sqlite
+ libpcap
+ postgresql
+ libxml2
+ libxslt
+ pkgconfig
+ bundix
+ ];
+}
diff --git a/makefu/5pkgs/custom/inkscape/dxf_fix.patch b/makefu/5pkgs/custom/inkscape/dxf_fix.patch
index 5ea0a073e..b7b491d4e 100644
--- a/makefu/5pkgs/custom/inkscape/dxf_fix.patch
+++ b/makefu/5pkgs/custom/inkscape/dxf_fix.patch
@@ -1,13 +1,12 @@
---- ./share/extensions/dxf_outlines.py 2017-02-14 00:46:57.000000000 +0100
-+++ ./share/extensions/dxf_outlines.py.new 2017-05-10 04:15:03.000000000 +0200
-@@ -340,7 +340,7 @@
- scale = eval(self.options.units)
+--- ./share/extensions/dxf_outlines.py 2017-10-08 17:28:45.553368917 +0200
++++ ./share/extensions/dxf_outlines.py.new 2017-10-08 17:29:20.172554152 +0200
+@@ -341,7 +341,7 @@
if not scale:
scale = 25.4/96 # if no scale is specified, assume inch as baseunit
+ scale /= self.unittouu('1px')
- h = self.unittouu(self.document.getroot().xpath('@height', namespaces=inkex.NSS)[0])
-+ h = self.unittouu(self.getDocumentHeight())
++ h = self.unittouu(self.documentHeight())
self.groupmat = [[[scale, 0.0, 0.0], [0.0, -scale, h*scale]]]
doc = self.document.getroot()
self.process_group(doc)
-
diff --git a/makefu/5pkgs/default.nix b/makefu/5pkgs/default.nix
index 96975e54f..e99aa696b 100644
--- a/makefu/5pkgs/default.nix
+++ b/makefu/5pkgs/default.nix
@@ -24,7 +24,7 @@ in {
alsa-hdspmixer = callPackage ./custom/alsa-tools { alsaToolTarget="hdspmixer";};
alsa-hdsploader = callPackage ./custom/alsa-tools { alsaToolTarget="hdsploader";};
qcma = super.pkgs.libsForQt5.callPackage ./custom/qcma { };
- inherit (callPackage ./devpi {}) devpi-web devpi-server devpi-client;
+ inherit (callPackage ./devpi {}) devpi-web devpi-server;
nodemcu-uploader = super.pkgs.callPackage ./nodemcu-uploader {};
inkscape = super.pkgs.stdenv.lib.overrideDerivation super.inkscape (old: {
patches = [ ./custom/inkscape/dxf_fix.patch ];
diff --git a/makefu/5pkgs/drozer/default.nix b/makefu/5pkgs/drozer/default.nix
index f91d5b984..3df67d07e 100644
--- a/makefu/5pkgs/drozer/default.nix
+++ b/makefu/5pkgs/drozer/default.nix
@@ -1,11 +1,11 @@
-{ pkgs, lib, fetchFromGitHub, pythonPackages, jre7, jdk7, ... }:
+{ pkgs, lib, fetchFromGitHub, pythonPackages, jre7, jdk7 }:
pythonPackages.buildPythonApplication rec {
name = "drozer-${version}";
version = "2.4.3";
buildInputs = [ jdk7 ];
propagatedBuildInputs = with pythonPackages; [
- protobuf3_2
+ protobuf
pyopenssl
pyyaml
] ++ [
diff --git a/makefu/5pkgs/esptool/default.nix b/makefu/5pkgs/esptool/default.nix
deleted file mode 100644
index 84bb232cd..000000000
--- a/makefu/5pkgs/esptool/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ pkgs, fetchFromGitHub, ... }:
-with pkgs.python2Packages;
-let
- pyaes = buildPythonPackage rec {
- name = "pyaes-${version}";
- version = "1.6.0";
- src = fetchFromGitHub {
- owner = "ricmoo";
- repo = "pyaes";
- rev = "v${version}";
- sha256 = "04934a9zgwc8g3qhfrkcfv0bs557paigllnkrnfhp9m1azr3bfqb";
- };
- doCheck = false;
- };
-in
-buildPythonPackage rec {
- name = "esptool-${version}";
- version = "2.0beta2";
- propagatedBuildInputs = [
- pyserial
- flake8
- ecdsa
- pyaes
- ];
- src = fetchFromGitHub {
- owner = "themadinventor";
- repo = "esptool";
- rev = "v${version}";
- sha256 = "0n96pyi1k4qlyfqk5k7xpgq8726wz74qvd3gqjg0bpsl3wr7l94i";
- };
- doCheck = false;
-}
diff --git a/makefu/5pkgs/logstash-input-rss/default.nix b/makefu/5pkgs/logstash-input-rss/default.nix
new file mode 100644
index 000000000..af66359ef
--- /dev/null
+++ b/makefu/5pkgs/logstash-input-rss/default.nix
@@ -0,0 +1,31 @@
+{ pkgs, stdenv, lib, fetchFromGitHub }:
+
+
+stdenv.mkDerivation rec {
+ name = "logstash-input-rss-${version}";
+ version = "3.0.3";
+
+ src = fetchFromGitHub {
+ owner = "logstash-plugins";
+ repo = "logstash-input-rss";
+ rev = "v${version}";
+ sha256 = "026902g256385dx3qkbknz10vsp9dm2ymjdx6s6rkh3krs67w09l";
+ };
+
+ dontBuild = true;
+ dontPatchELF = true;
+ dontStrip = true;
+ dontPatchShebangs = true;
+ installPhase = ''
+ mkdir -p $out/logstash
+ cp -r lib/* $out/
+ '';
+
+ meta = with lib; {
+ description = "logstash output plugin";
+ homepage = https://github.com/logstash-plugins/logstash-input-rss;
+ license = stdenv.lib.licenses.asl20;
+ platforms = stdenv.lib.platforms.unix;
+ maintainers = with maintainers; [ makefu ];
+ };
+}
diff --git a/makefu/5pkgs/udpt/default.nix b/makefu/5pkgs/udpt/default.nix
deleted file mode 100644
index 99bcac18b..000000000
--- a/makefu/5pkgs/udpt/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, boost, sqlite, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
- proj = "udpt";
- name = "udpt-${rev}";
- rev = "0790558";
-
- enableParallelBuilding = true;
-
- src = fetchFromGitHub {
- owner = "naim94a";
- repo = "udpt";
- inherit rev;
- sha256 = "0rgkjwvnqwbnqy7pm3dk176d3plb5lypaf12533yr0yfzcp6gnzk";
- };
- buildInputs = [ boost sqlite ];
- installPhase = ''
- mkdir -p $out/bin $out/etc/
- cp udpt $out/bin
- cp udpt.conf $out/etc/
- '';
- meta = {
- description = "udp tracker";
- homepage = https://github.com/naim94a/udpt;
- license = stdenv.lib.licenses.gpl3;
- platforms = stdenv.lib.platforms.linux;
- maintainers = with stdenv.lib.maintainers; [ makefu ];
- };
-}
diff --git a/makefu/6tests/data/secrets/ssh_host_rsa_key b/makefu/6tests/data/secrets/ssh_host_rsa_key
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/makefu/6tests/data/secrets/ssh_host_rsa_key
diff --git a/makefu/source.nix b/makefu/source.nix
index fdd367cba..8c880a8e2 100644
--- a/makefu/source.nix
+++ b/makefu/source.nix
@@ -11,10 +11,9 @@ let
then "buildbot"
else "makefu";
_file = <stockholm> + "/makefu/1systems/${name}/source.nix";
- ref = "c91346e"; # unstable @ 2017-09-04
- # + graceful requests2 (a772c3aa)
- # + mitmproxy fix (eee2d174)
- # + tpm-tools fix (5cb9987)
+ ref = "809cf38"; # unstable @ 2017-10-07
+ # + ruby stuff (2f0b17e4be9,55a952be5b5)
+ # + mitmproxy fix (360a5efd,ef52c95b)
in
evalSource (toString _file) [