summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml14
-rw-r--r--makefu/2configs/deployment/events-publisher/default.nix4
-rw-r--r--makefu/2configs/hw/smartcard.nix18
-rw-r--r--makefu/2configs/tools/extra-gui.nix1
-rw-r--r--makefu/5pkgs/arduino-user-env/default.nix35
-rw-r--r--makefu/5pkgs/beef/Gemfile56
-rw-r--r--makefu/5pkgs/beef/Gemfile.lock101
-rw-r--r--makefu/5pkgs/beef/db-in-homedir.patch39
-rw-r--r--makefu/5pkgs/beef/default.nix22
-rw-r--r--makefu/5pkgs/beef/gemset.nix238
-rw-r--r--makefu/5pkgs/default.nix10
-rw-r--r--makefu/5pkgs/drozer/default.nix9
-rw-r--r--makefu/5pkgs/ifdnfc/default.nix45
-rw-r--r--makefu/5pkgs/nur.nix7
14 files changed, 444 insertions, 155 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3f2f28d6..1946f269 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,19 @@
+before_script:
+ - mkdir -p ~/.ssh
+ - echo "$deploy_privkey" > deploy.key
+ - export GIT_SSH_COMMAND="ssh -i $PWD/deploy.key"
+ - chmod 600 deploy.key
+ - ssh-keyscan -H 'github.com' >> ~/.ssh/known_hosts
nix-shell test:
script:
- env
- nix-shell --pure --command 'true' -p stdenv && echo success
- nix-shell --pure --command 'false' -p stdenv || echo success
+nur-packages makefu:
+ script:
+ - git reset --hard origin/master
+ - git filter-branch -f --prune-empty --subdirectory-filter makefu/5pkgs HEAD
+ - git remote add deploy git@github.com:makefu/nur-packages.git || git remote set-url deploy git@github.com:makefu/nur-packages.git
+ - git push --force deploy HEAD:master
+after_script:
+ - rm -f deploy.key
diff --git a/makefu/2configs/deployment/events-publisher/default.nix b/makefu/2configs/deployment/events-publisher/default.nix
index c671b1a0..a09554e6 100644
--- a/makefu/2configs/deployment/events-publisher/default.nix
+++ b/makefu/2configs/deployment/events-publisher/default.nix
@@ -2,8 +2,8 @@
with import <stockholm/lib>;
let
shack-announce = pkgs.callPackage (builtins.fetchTarball {
- url = "https://github.com/makefu/events-publisher/archive/5e7b083c63f25182a02c1fddb3d32cb9534fbc50.tar.gz";
- sha256 = "1zzlhyj8fr6y3a3b6qlyrm474xxxs1ydqjpkd2jva3g1lnzlmvkp";
+ url = "https://github.com/makefu/events-publisher/archive/4cef900ba10348050208367af6b2035f5a0ef8b6.tar.gz";
+ sha256 = "137vsibr289p3xxlw37xhizi309sygki95919hmj02dxgwmy1k74";
}) {} ;
home = "/var/lib/shackannounce";
user = "shackannounce";
diff --git a/makefu/2configs/hw/smartcard.nix b/makefu/2configs/hw/smartcard.nix
new file mode 100644
index 00000000..1e9bca53
--- /dev/null
+++ b/makefu/2configs/hw/smartcard.nix
@@ -0,0 +1,18 @@
+{ pkgs, ... }:
+{
+ services.pcscd = {
+ enable = true;
+ plugins = with pkgs; [ ifdnfc ccid ];
+
+ };
+ environment.systemPackages = with pkgs; [
+ # need to run ifdnfc-activate before usage
+ ifdnfc
+ # pcsc_scan
+ pcsctools
+ ];
+ boot.blacklistedKernelModules = [
+ "pn533" "pn533_usb"
+ "nfc"
+ ];
+}
diff --git a/makefu/2configs/tools/extra-gui.nix b/makefu/2configs/tools/extra-gui.nix
index ae97edd5..3d26cc57 100644
--- a/makefu/2configs/tools/extra-gui.nix
+++ b/makefu/2configs/tools/extra-gui.nix
@@ -12,7 +12,6 @@
virtmanager
# Dev
saleae-logic
- arduino-user-env
gitAndTools.gitFull
signal-desktop
];
diff --git a/makefu/5pkgs/arduino-user-env/default.nix b/makefu/5pkgs/arduino-user-env/default.nix
deleted file mode 100644
index 7339c50a..00000000
--- a/makefu/5pkgs/arduino-user-env/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, pkgs, ... }: let
-
-#TODO: make sure env exists prior to running
-env_nix = pkgs.writeText "env.nix" ''
- { pkgs ? import <nixpkgs> {} }:
-
- (pkgs.buildFHSUserEnv {
- name = "arduino-user-env";
- targetPkgs = pkgs: with pkgs; [
- coreutils
- ];
- multiPkgs = pkgs: with pkgs; [
- arduino
- alsaLib
- zlib
- xorg.libXxf86vm
- curl
- openal
- openssl_1_0_2
- xorg.libXext
- xorg.libX11
- xorg.libXrandr
- xorg.libXcursor
- xorg.libXinerama
- xorg.libXi
- mesa_glu
- ];
- runScript = "zsh";
- }).env
-'';
-
-
-in pkgs.writeDashBin "arduino-user-env" ''
- nix-shell ${env_nix}
-''
diff --git a/makefu/5pkgs/beef/Gemfile b/makefu/5pkgs/beef/Gemfile
index 1420feff..da13e1fb 100644
--- a/makefu/5pkgs/beef/Gemfile
+++ b/makefu/5pkgs/beef/Gemfile
@@ -1,15 +1,16 @@
# BeEF's Gemfile
#
-# Copyright (c) 2006-2017 Wade Alcorn - wade@bindshell.net
+# Copyright (c) 2006-2018 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 'sinatra', '~> 2.0'
+gem 'rack', '~> 2.0'
+gem 'rack-protection', '~> 2.0'
gem 'em-websocket' # WebSocket support
gem 'uglifier'
gem 'mime-types'
@@ -22,8 +23,7 @@ gem 'data_objects'
gem 'rubyzip', '>= 1.2.1'
gem 'espeak-ruby', '>= 1.0.4' # Text-to-Voice
gem 'nokogiri', '>= 1.7'
-
-gem 'therubyracer'
+gem 'rake'
# SQLite support
group :sqlite do
@@ -52,11 +52,17 @@ gem 'dm-migrations'
# Metasploit Integration extension
group :ext_msf do
gem 'msfrpc-client'
+ gem 'xmlrpc'
end
-# Twitter Notifications extension
-group :ext_twitter do
- #gem 'twitter', '>= 5.0.0'
+# Notifications extension
+group :ext_notifications do
+ # Pushover
+ gem 'rushover'
+ # Slack
+ gem 'slack-notifier'
+ # Twitter
+ gem 'twitter', '>= 5.0.0'
end
# DNS extension
@@ -76,22 +82,24 @@ 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
+ if ENV['BEEF_TEST']
+ gem 'test-unit'
+ gem 'test-unit-full'
+ gem 'rspec'
+ # curb gem requires curl libraries
+ # sudo apt-get install libcurl4-openssl-dev
+ gem 'curb'
+ # selenium-webdriver 3.x is incompatible with Firefox version 48 and prior
+ gem 'selenium'
+ gem 'selenium-webdriver', '~> 2.53.4'
+ # 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'
+ gem 'byebug'
+ end
end
source 'https://rubygems.org'
diff --git a/makefu/5pkgs/beef/Gemfile.lock b/makefu/5pkgs/beef/Gemfile.lock
index d2e6ad45..8f18bf22 100644
--- a/makefu/5pkgs/beef/Gemfile.lock
+++ b/makefu/5pkgs/beef/Gemfile.lock
@@ -4,8 +4,9 @@ GEM
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
ansi (1.5.0)
- chunky_png (1.3.8)
- daemons (1.2.4)
+ buftok (0.2.0)
+ chunky_png (1.3.10)
+ daemons (1.2.6)
data_objects (0.10.17)
addressable (~> 2.1)
dm-core (1.2.1)
@@ -26,48 +27,66 @@ GEM
do_sqlite3 (~> 0.10.6)
do_sqlite3 (0.10.17)
data_objects (= 0.10.17)
+ domain_name (0.5.20180417)
+ unf (>= 0.0.5, < 1.0.0)
em-websocket (0.5.1)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
+ equalizer (0.0.11)
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)
+ geoip (1.6.4)
+ http (3.3.0)
+ addressable (~> 2.3)
+ http-cookie (~> 1.0)
+ http-form_data (~> 2.0)
+ http_parser.rb (~> 0.6.0)
+ http-cookie (1.0.3)
+ domain_name (~> 0.5)
+ http-form_data (2.1.1)
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)
+ memoizable (0.4.2)
+ thread_safe (~> 0.3, >= 0.3.1)
metasm (1.0.3)
- mime-types (3.1)
+ mime-types (3.2.2)
mime-types-data (~> 3.2015)
- mime-types-data (3.2016.0521)
+ mime-types-data (3.2018.0812)
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)
+ msgpack (1.2.4)
+ multi_json (1.13.1)
+ multipart-post (2.0.0)
+ mustermann (1.0.2)
+ naught (1.1.0)
+ netrc (0.11.0)
+ nokogiri (1.8.4)
mini_portile2 (~> 2.3.0)
parseconfig (1.0.8)
- public_suffix (3.0.0)
+ public_suffix (3.0.3)
qr4r (0.4.1)
mojo_magick
rqrcode
- rack (1.6.8)
- rack-protection (1.5.3)
+ rack (2.0.5)
+ rack-protection (2.0.3)
rack
- rainbow (2.2.2)
- rake
- rake (12.1.0)
+ rainbow (3.0.0)
+ rake (12.3.1)
rb-readline (0.5.5)
- ref (2.0.0)
+ rest-client (2.0.2)
+ http-cookie (>= 1.0.2, < 2.0)
+ mime-types (>= 1.16, < 4.0)
+ netrc (~> 0.8)
rex (2.0.11)
filesize
jsobfu (~> 0.4.1)
@@ -86,23 +105,42 @@ GEM
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)
+ rushover (0.3.0)
+ json
+ rest-client
+ simple_oauth (0.3.1)
+ sinatra (2.0.3)
+ mustermann (~> 1.0)
+ rack (~> 2.0)
+ rack-protection (= 2.0.3)
+ tilt (~> 2.0)
+ slack-notifier (2.3.2)
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)
+ thread_safe (0.3.6)
tilt (2.0.8)
- tins (1.15.0)
- uglifier (3.2.0)
+ tins (1.16.3)
+ twitter (6.2.0)
+ addressable (~> 2.3)
+ buftok (~> 0.2.0)
+ equalizer (~> 0.0.11)
+ http (~> 3.0)
+ http-form_data (~> 2.0)
+ http_parser.rb (~> 0.6.0)
+ memoizable (~> 0.4.0)
+ multipart-post (~> 2.0)
+ naught (~> 1.0)
+ simple_oauth (~> 0.3.0)
+ uglifier (4.1.18)
execjs (>= 0.3.0, < 3)
+ unf (0.1.4)
+ unf_ext
+ unf_ext (0.0.7.5)
+ xmlrpc (0.3.0)
PLATFORMS
ruby
@@ -126,14 +164,19 @@ DEPENDENCIES
nokogiri (>= 1.7)
parseconfig
qr4r
- rack (~> 1.6.5)
+ rack (~> 2.0)
+ rack-protection (~> 2.0)
+ rake
rubydns (~> 0.7.3)
rubyzip (>= 1.2.1)
- sinatra
+ rushover
+ sinatra (~> 2.0)
+ slack-notifier
term-ansicolor
- therubyracer
thin
+ twitter (>= 5.0.0)
uglifier
+ xmlrpc
BUNDLED WITH
- 1.15.4
+ 1.14.6
diff --git a/makefu/5pkgs/beef/db-in-homedir.patch b/makefu/5pkgs/beef/db-in-homedir.patch
new file mode 100644
index 00000000..e8dd8e3d
--- /dev/null
+++ b/makefu/5pkgs/beef/db-in-homedir.patch
@@ -0,0 +1,39 @@
+--- /beef 2018-08-16 19:03:55.199437566 +0200
++++ /beef 2018-08-16 19:27:34.735985233 +0200
+@@ -110,9 +110,20 @@
+ #
+ # @note Database setup - use DataMapper::Logger.new($stdout, :debug) for development debugging
+ #
++
++#
++# @note Create ~/.beef/
++#
++begin
++ FileUtils.mkdir_p($home_dir) unless File.directory?($home_dir)
++rescue => e
++ print_error "Could not create '#{$home_dir}': #{e.message}"
++end
++
+ case config.get("beef.database.driver")
+ when "sqlite"
+- DataMapper.setup(:default, "sqlite3://#{$root_dir}/#{config.get("beef.database.db_file")}")
++ print_info "Using Database #{$home_dir}/#{config.get("beef.database.db_file")}"
++ DataMapper.setup(:default, "sqlite3://#{$home_dir}/#{config.get("beef.database.db_file")}")
+ when "mysql", "postgres"
+ DataMapper.setup(:default,
+ :adapter => config.get("beef.database.driver"),
+@@ -162,14 +173,6 @@
+ BeEF::Core::Console::Banners.print_network_interfaces_count
+ BeEF::Core::Console::Banners.print_network_interfaces_routes
+
+-#
+-# @note Create ~/.beef/
+-#
+-begin
+- FileUtils.mkdir_p($home_dir) unless File.directory?($home_dir)
+-rescue => e
+- print_error "Could not create '#{$home_dir}': #{e.message}"
+-end
+
+ #
+ # @note Check whether we load the Console Shell or not
diff --git a/makefu/5pkgs/beef/default.nix b/makefu/5pkgs/beef/default.nix
index 82540cde..d444dbde 100644
--- a/makefu/5pkgs/beef/default.nix
+++ b/makefu/5pkgs/beef/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, bundlerEnv, ruby, fetchFromGitHub }:
+{ stdenv, bundlerEnv, ruby, fetchFromGitHub, nodejs }:
# nix-shell --command "bundler install && bundix" in the clone, copy gemset.nix, Gemfile and Gemfile.lock
let
gems = bundlerEnv {
@@ -7,13 +7,17 @@ let
gemdir = ./.;
};
in stdenv.mkDerivation {
- name = "beef-2017-09-21";
+ name = "beef-2018-09-21";
src = fetchFromGitHub {
owner = "beefproject";
repo = "beef";
- rev = "69aa2a3";
- sha256 = "1rky61i0wzpwcq3kqfa0m5hf6wyz8q8jgzs7dpfh04w9qh32ic4p";
+ rev = "d237c95";
+ sha256 = "1mykbjwjcbd2a18wycaf35hi3b9rmvqz1jnk2v55sd4c39f0jpf2";
};
+ prePatch = ''
+ ls -alhtr
+ '';
+ patches = [ ./db-in-homedir.patch ];
buildInputs = [gems ruby];
installPhase = ''
mkdir -p $out/{bin,share/beef}
@@ -25,13 +29,17 @@ in stdenv.mkDerivation {
bin=$out/bin/beef
cat > $bin <<EOF
#!/bin/sh -e
+PATH=$PATH:${nodejs}/bin/
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;
+ meta = with stdenv.lib; {
+ homepage = https://beefproject.com/;
+ description = "The Browser Exploitation Framework";
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ makefu ];
+ };
}
diff --git a/makefu/5pkgs/beef/gemset.nix b/makefu/5pkgs/beef/gemset.nix
index b6af75d0..3ccd7340 100644
--- a/makefu/5pkgs/beef/gemset.nix
+++ b/makefu/5pkgs/beef/gemset.nix
@@ -16,21 +16,29 @@
};
version = "1.5.0";
};
+ buftok = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1rzsy1vy50v55x9z0nivf23y0r9jkmq6i130xa75pq9i8qrn1mxs";
+ type = "gem";
+ };
+ version = "0.2.0";
+ };
chunky_png = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0j0dngz6s0j3s3zaf9vrimjz65s9k7ad1c3xmmldr1vmz8sbd843";
+ sha256 = "05g2xli9wbjylkmblln3bhvjalziwb92q452q8ibjagmb853424w";
type = "gem";
};
- version = "1.3.8";
+ version = "1.3.10";
};
daemons = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1bmb4qrd95b5gl3ym5j3q6mf090209f4vkczggn49n56w6s6zldz";
+ sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
type = "gem";
};
- version = "1.2.4";
+ version = "1.2.6";
};
data_objects = {
dependencies = ["addressable"];
@@ -95,6 +103,15 @@
};
version = "0.10.17";
};
+ domain_name = {
+ dependencies = ["unf"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
+ type = "gem";
+ };
+ version = "0.5.20180417";
+ };
em-websocket = {
dependencies = ["eventmachine" "http_parser.rb"];
source = {
@@ -104,6 +121,14 @@
};
version = "0.5.1";
};
+ equalizer = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
+ type = "gem";
+ };
+ version = "0.0.11";
+ };
erubis = {
source = {
remotes = ["https://rubygems.org"];
@@ -155,10 +180,36 @@
geoip = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "099hxng7h8i3pwibnassivj58iw1x7ygwq06qj6rx7j16iyz6rzx";
+ sha256 = "1if16n4pjl2kshc0cqg7i03m55fspmlca6p9f4r66rpzw0v4d6jc";
type = "gem";
};
- version = "1.6.3";
+ version = "1.6.4";
+ };
+ http = {
+ dependencies = ["addressable" "http-cookie" "http-form_data" "http_parser.rb"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1jlm5prw437wqpfxcigh88lfap3m7g8mnmj5as7qw6dzqnvrxwmc";
+ type = "gem";
+ };
+ version = "3.3.0";
+ };
+ http-cookie = {
+ dependencies = ["domain_name"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
+ type = "gem";
+ };
+ version = "1.0.3";
+ };
+ http-form_data = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15lpn604byf7cyxnw949xz4rvpcknqp7a48q73nm630gqxsa76f3";
+ type = "gem";
+ };
+ version = "2.1.1";
};
"http_parser.rb" = {
source = {
@@ -193,13 +244,14 @@
};
version = "1.8.6";
};
- libv8 = {
+ memoizable = {
+ dependencies = ["thread_safe"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0271i5sfma05gvhmrmxqb0jj667bl6m54yd49ay6yrdbh1g4wpl1";
+ sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
type = "gem";
};
- version = "3.16.14.19";
+ version = "0.4.2";
};
metasm = {
source = {
@@ -213,18 +265,18 @@
dependencies = ["mime-types-data"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+ sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
type = "gem";
};
- version = "3.1";
+ version = "3.2.2";
};
mime-types-data = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+ sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
type = "gem";
};
- version = "3.2016.0521";
+ version = "3.2018.0812";
};
mini_portile2 = {
source = {
@@ -254,27 +306,59 @@
msgpack = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0ck7w17d6b4jbb8inh1q57bghi9cjkiaxql1d3glmj1yavbpmlh7";
+ sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
type = "gem";
};
- version = "1.1.0";
+ version = "1.2.4";
};
multi_json = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x";
+ sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+ type = "gem";
+ };
+ version = "1.13.1";
+ };
+ multipart-post = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
+ type = "gem";
+ };
+ version = "2.0.0";
+ };
+ mustermann = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "07sb7fckrraqh48fjnqf6yl7vxxabfx0qrsrhfdz67pd838g4k8g";
+ type = "gem";
+ };
+ version = "1.0.2";
+ };
+ naught = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1wwjx35zgbc0nplp8a866iafk4zsrbhwwz4pav5gydr2wm26nksg";
type = "gem";
};
- version = "1.12.2";
+ version = "1.1.0";
+ };
+ netrc = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
+ type = "gem";
+ };
+ version = "0.11.0";
};
nokogiri = {
dependencies = ["mini_portile2"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "105xh2zkr8nsyfaj2izaisarpnkrrl9000y3nyflg9cbzrfxv021";
+ sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
type = "gem";
};
- version = "1.8.1";
+ version = "1.8.4";
};
parseconfig = {
source = {
@@ -287,10 +371,10 @@
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0snaj1gxfib4ja1mvy3dzmi7am73i0mkqr0zkz045qv6509dhj5f";
+ sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
type = "gem";
};
- version = "3.0.0";
+ version = "3.0.3";
};
qr4r = {
dependencies = ["mojo_magick" "rqrcode"];
@@ -304,36 +388,35 @@
rack = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
+ sha256 = "158hbn7rlc3czp2vivvam44dv6vmzz16qrh5dbzhfxbfsgiyrqw1";
type = "gem";
};
- version = "1.6.8";
+ version = "2.0.5";
};
rack-protection = {
dependencies = ["rack"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
+ sha256 = "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp";
type = "gem";
};
- version = "1.5.3";
+ version = "2.0.3";
};
rainbow = {
- dependencies = ["rake"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
+ sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
type = "gem";
};
- version = "2.2.2";
+ version = "3.0.0";
};
rake = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw";
+ sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg";
type = "gem";
};
- version = "12.1.0";
+ version = "12.3.1";
};
rb-readline = {
source = {
@@ -343,13 +426,14 @@
};
version = "0.5.5";
};
- ref = {
+ rest-client = {
+ dependencies = ["http-cookie" "mime-types" "netrc"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04p4pq4sikly7pvn30dc7v5x2m7fqbfwijci4z1y6a1ilwxzrjii";
+ sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
type = "gem";
};
- version = "2.0.0";
+ version = "2.0.2";
};
rex = {
dependencies = ["filesize" "jsobfu" "json" "metasm" "nokogiri" "rb-readline" "robots"];
@@ -411,32 +495,48 @@
};
version = "1.2.1";
};
+ rushover = {
+ dependencies = ["json" "rest-client"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0j6x61drcdfnbvgmkmrc92zw67acpfcz5h1a29sdf884zkwd1444";
+ type = "gem";
+ };
+ version = "0.3.0";
+ };
+ simple_oauth = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0dw9ii6m7wckml100xhjc6vxpjcry174lbi9jz5v7ibjr3i94y8l";
+ type = "gem";
+ };
+ version = "0.3.1";
+ };
sinatra = {
- dependencies = ["rack" "rack-protection" "tilt"];
+ dependencies = ["mustermann" "rack" "rack-protection" "tilt"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
+ sha256 = "1kyi55q4k4idv31h7l53hw0mnh50dwwrrsfm35j52jy7fc993m9r";
type = "gem";
};
- version = "1.4.8";
+ version = "2.0.3";
};
- term-ansicolor = {
- dependencies = ["tins"];
+ slack-notifier = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b";
+ sha256 = "1pkfn99dhy5s526r6k8d87fwwb6j287ga9s7lxqmh60z28xqh3bv";
type = "gem";
};
- version = "1.6.0";
+ version = "2.3.2";
};
- therubyracer = {
- dependencies = ["libv8" "ref"];
+ term-ansicolor = {
+ dependencies = ["tins"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1g95bzs2axjglyjyj6xvsywqgr80bnzlkw7mddxx1fdrak5wni2q";
+ sha256 = "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b";
type = "gem";
};
- version = "0.12.3";
+ version = "1.6.0";
};
thin = {
dependencies = ["daemons" "eventmachine" "rack"];
@@ -447,6 +547,14 @@
};
version = "1.7.2";
};
+ thread_safe = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+ type = "gem";
+ };
+ version = "0.3.6";
+ };
tilt = {
source = {
remotes = ["https://rubygems.org"];
@@ -458,18 +566,52 @@
tins = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "09whix5a7ics6787zrkwjmp16kqyh6560p9f317syks785805f7s";
+ sha256 = "0g95xs4nvx5n62hb4fkbkd870l9q3y9adfc4h8j21phj9mxybkb8";
type = "gem";
};
- version = "1.15.0";
+ version = "1.16.3";
+ };
+ twitter = {
+ dependencies = ["addressable" "buftok" "equalizer" "http" "http-form_data" "http_parser.rb" "memoizable" "multipart-post" "naught" "simple_oauth"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0fjyz3viabz3xs5d9aad18zgdbhfwm51jsnzigc8kxk77p1x58n5";
+ type = "gem";
+ };
+ version = "6.2.0";
};
uglifier = {
dependencies = ["execjs"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0wmqvn4xncw6h3d5gp2a44170zwxfyj3iq4rsjp16zarvzbdmgnz";
+ sha256 = "14r283lkhisq2sdccv8ngf10f2f18ly4nc3chz3kliw5nylbgznw";
+ type = "gem";
+ };
+ version = "4.1.18";
+ };
+ unf = {
+ dependencies = ["unf_ext"];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
+ type = "gem";
+ };
+ version = "0.1.4";
+ };
+ unf_ext = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1";
+ type = "gem";
+ };
+ version = "0.0.7.5";
+ };
+ xmlrpc = {
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1s744iwblw262gj357pky3d9fcx9hisvla7rnw29ysn5zsb6i683";
type = "gem";
};
- version = "3.2.0";
+ version = "0.3.0";
};
} \ No newline at end of file
diff --git a/makefu/5pkgs/default.nix b/makefu/5pkgs/default.nix
index b1d6df67..390c13ff 100644
--- a/makefu/5pkgs/default.nix
+++ b/makefu/5pkgs/default.nix
@@ -1,6 +1,5 @@
-with import <stockholm/lib>;
-self: super: let
-
+self: super:
+with super.lib; with builtins; let
# This callPackage will try to detect obsolete overrides.
callPackage = path: args: let
override = super.callPackage path args;
@@ -15,6 +14,7 @@ self: super: let
override
else override;
+ eq = x: y: x == y;
subdirsOf = path:
mapAttrs (name: _: path + "/${name}")
(filterAttrs (_: eq "directory") (readDir path));
@@ -40,6 +40,6 @@ in {
};
}
-// mapAttrs (_: flip callPackage {})
+// (mapAttrs (_: flip callPackage {})
(filterAttrs (_: dir: pathExists (dir + "/default.nix"))
- (subdirsOf ./.))
+ (subdirsOf ./.)))
diff --git a/makefu/5pkgs/drozer/default.nix b/makefu/5pkgs/drozer/default.nix
index 3df67d07..1f353e47 100644
--- a/makefu/5pkgs/drozer/default.nix
+++ b/makefu/5pkgs/drozer/default.nix
@@ -1,15 +1,16 @@
-{ pkgs, lib, fetchFromGitHub, pythonPackages, jre7, jdk7 }:
+{ pkgs, lib, fetchFromGitHub, pythonPackages, jre, jdk }:
pythonPackages.buildPythonApplication rec {
name = "drozer-${version}";
version = "2.4.3";
- buildInputs = [ jdk7 ];
+ buildInputs = [ jdk ];
propagatedBuildInputs = with pythonPackages; [
protobuf
pyopenssl
pyyaml
+ service-identity
] ++ [
- jre7
+ jre
twisted
];
src = fetchFromGitHub {
@@ -19,7 +20,7 @@ pythonPackages.buildPythonApplication rec {
sha256 = "1z437y7rr53dhpi95yc2c3x8g4aix90y7zf52avcdsvhlp4iip3q";
};
prePatch = ''
- sed -i 's#^exec java #exec ${jre7}/bin/java #' ./src/drozer/lib/dx
+ sed -i 's#^exec java #exec ${jre}/bin/java #' ./src/drozer/lib/dx
patchShebangs ./src/drozer/lib/dx
patchelf $(cat $NIX_CC/nix-support/dynamic-linker) ./src/drozer/lib/aapt
echo starting build
diff --git a/makefu/5pkgs/ifdnfc/default.nix b/makefu/5pkgs/ifdnfc/default.nix
new file mode 100644
index 00000000..cc7956c8
--- /dev/null
+++ b/makefu/5pkgs/ifdnfc/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchFromGitHub , pkgconfig
+, pcsclite
+, autoreconfHook
+, libnfc
+}:
+
+stdenv.mkDerivation rec {
+ name = "ifdnfc-${version}";
+ version = "2016-03-01";
+
+ src = fetchFromGitHub {
+ owner = "nfc-tools";
+ repo = "ifdnfc";
+ rev = "0e48e8e";
+ sha256 = "1cxnvhhlcbm8h49rlw5racspb85fmwqqhd3gzzpzy68vrs0b37vg";
+ };
+ nativeBuildInputs = [ pkgconfig autoreconfHook ];
+ buildInputs = [ pcsclite libnfc ];
+
+ configureFlags = [ "--prefix=$(out)" ];
+ makeFlags = [ "DESTDIR=/" "usbdropdir=$(out)/pcsc/drivers" ];
+
+ meta = with stdenv.lib; {
+ description = "PC/SC IFD Handler based on libnfc";
+ long_description =
+ '' libnfc Interface Plugin to be used in <code>services.pcscd.plugins</code>.
+ It provides support for all readers which are not supported by ccid but by libnfc.
+
+ For activating your reader you need to run
+ <code>ifdnfc-activate yes<code> with this package in your
+ <code>environment.systemPackages</code>
+
+ To use your reader you may need to blacklist your reader kernel modules:
+ <code>boot.blacklistedKernelModules = [ "pn533" "pn533_usb" "nfc" ];</code>
+
+ Supports the pn533 smart-card reader chip which is for example used in
+ the SCM SCL3711.
+ '';
+ homepage = https://github.com/nfc-tools/ifdnfc;
+ license = licenses.gpl3;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ makefu ];
+ };
+}
+
diff --git a/makefu/5pkgs/nur.nix b/makefu/5pkgs/nur.nix
new file mode 100644
index 00000000..b0607671
--- /dev/null
+++ b/makefu/5pkgs/nur.nix