summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--krebs/5pkgs/simple/gnokii/default.nix32
-rw-r--r--makefu/2configs/home/ham/automation/fenster_auf.nix15
-rw-r--r--makefu/2configs/home/ham/automation/ladestecker_timer.nix24
-rw-r--r--makefu/2configs/home/ham/automation/light_buttons.nix88
-rw-r--r--makefu/2configs/home/ham/default.nix2
-rw-r--r--makefu/2configs/home/ham/lib/default.nix76
-rw-r--r--makefu/5pkgs/beef/Gemfile66
-rw-r--r--makefu/5pkgs/beef/Gemfile.lock333
-rw-r--r--makefu/5pkgs/beef/gemset.nix1000
-rwxr-xr-xmakefu/5pkgs/beef/update.sh28
10 files changed, 1274 insertions, 390 deletions
diff --git a/krebs/5pkgs/simple/gnokii/default.nix b/krebs/5pkgs/simple/gnokii/default.nix
new file mode 100644
index 000000000..995de3468
--- /dev/null
+++ b/krebs/5pkgs/simple/gnokii/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchurl, intltool, perl, gettext, libusb-compat-0_1, pkg-config, bluez
+, readline, pcsclite, libical, gtk2, glib, libXpm
+, fetchpatch
+}:
+
+stdenv.mkDerivation rec {
+ pname = "gnokii";
+ version = "0.6.31";
+
+ src = fetchurl {
+ sha256 = "0sjjhm40662bj6j0jh3sd25b8nww54nirpwamz618rg6pb5hjwm8";
+ url = "https://www.gnokii.org/download/gnokii/${pname}-${version}.tar.gz";
+ };
+ patches = let
+ base = "https://aur.archlinux.org/cgit/aur.git/plain";
+ in [
+ (fetchpatch { url = "${base}/gnokii-gcc7.patch?h=${pname}"; sha256 = "0q1f783mxx3h212y8kqazvcy3vv4rxbvf123wy1zpsyw2z9fwsa5"; })
+ (fetchpatch { url = "${base}/gnokii-gcc5.patch?h=${pname}"; sha256 = "1vfsnhk37qzykx8sfilggwn1vq6iknx2r5z7rd4zrhgid2yqi2qc"; })
+ ];
+ buildInputs = [
+ perl intltool gettext libusb-compat-0_1
+ glib gtk2 pkg-config bluez readline
+ libXpm pcsclite libical
+ ];
+
+ meta = {
+ description = "Cellphone tool";
+ homepage = "http://www.gnokii.org";
+ maintainers = [ lib.maintainers.raskin ];
+ platforms = lib.platforms.linux;
+ };
+}
diff --git a/makefu/2configs/home/ham/automation/fenster_auf.nix b/makefu/2configs/home/ham/automation/fenster_auf.nix
index b24f6445d..fa2052be8 100644
--- a/makefu/2configs/home/ham/automation/fenster_auf.nix
+++ b/makefu/2configs/home/ham/automation/fenster_auf.nix
@@ -15,6 +15,12 @@ let
for.minutes = min;
}
];
+ condition = [
+ { condition = "state";
+ entity_id = "input_boolean.ist_sommer";
+ state = "off";
+ }
+ ];
action =
[
{
@@ -61,10 +67,19 @@ let
};
in {
services.home-assistant.config = {
+ sensor = [
+ { platform = "season"; type = "meteorological";}
+ ];
+
input_boolean = {
badezimmerfenster_lang_offen.name = "Badezimmer lange offen";
duschfenster_lang_offen.name = "Duschfenster lange offen";
+ ist_sommer = {
+ name = "Es ist Sommer";
+ initial = true; # TODO
+ };
};
+
automation = [
(fenster_geschlossen_lang "Badezimmerfenster" "binary_sensor.badezimmer_fenster_contact")
(fenster_geschlossen_lang "Duschfenster" "binary_sensor.dusche_fenster_contact")
diff --git a/makefu/2configs/home/ham/automation/ladestecker_timer.nix b/makefu/2configs/home/ham/automation/ladestecker_timer.nix
new file mode 100644
index 000000000..8e877129c
--- /dev/null
+++ b/makefu/2configs/home/ham/automation/ladestecker_timer.nix
@@ -0,0 +1,24 @@
+let
+ relay = "switch.terrasse_plug_relay";
+ timeout = "300";
+in {
+ services.home-assistant.config.automation = [
+ { alias = "Always turn off Charging station after ${toString (timeout)}m";
+ trigger = [
+ {
+ platform = "state";
+ entity_id = relay;
+ to = "on";
+ for.minutes = timeout;
+ }
+ ];
+ action =
+ [
+ {
+ service = "homeassistant.turn_off";
+ entity_id = [ relay ];
+ }
+ ];
+ }
+ ];
+}
diff --git a/makefu/2configs/home/ham/automation/light_buttons.nix b/makefu/2configs/home/ham/automation/light_buttons.nix
index 89caf1a41..62fc87bb4 100644
--- a/makefu/2configs/home/ham/automation/light_buttons.nix
+++ b/makefu/2configs/home/ham/automation/light_buttons.nix
@@ -1,80 +1,7 @@
let
- btn_state = light: btn: halfbright:
- let
- maxbright = 255;
- transition = 0.2; # seconds
- in
- # this function implements a simple state machine based on the state and brightness of the light (light must support brightness
- {
- alias = "Cycle through states of ${light} via button ${btn}";
- trigger = {
- platform = "state";
- entity_id = "sensor.${btn}_click";
- to = "single";
- };
- action = {
- choose = [
- {
- # state 0: off to half
- conditions = {
- condition = "template";
- value_template = ''{{ states("${light}") == "off" }}'';
- };
- sequence = [
- {
- service = "light.turn_on";
- data = {
- entity_id = light;
- brightness = halfbright;
- };
- }
- ];
- }
- {
- # state 1: half to full
- conditions = {
- condition = "template";
- value_template = ''{{ states('${light}') == 'on' and ( ${toString (halfbright - 1)} <= state_attr("${light}","brightness") <= ${toString (halfbright + 1)})}}'';
- };
- sequence = [
- {
- service = "light.turn_on";
- data = {
- entity_id = light;
- brightness = maxbright;
- };
- }
- ];
- }
- {
- # state 2: full to off
- conditions = {
- condition = "template";
- # TODO: it seems like the devices respond with brightness-1 , maybe off-by-one somewhere?
- value_template = ''{{ states("${light}") == "on" and state_attr("${light}","brightness") >= ${toString (maxbright - 1)}}}'';
- };
- sequence = [
- {
- service = "light.turn_off";
- data = {
- entity_id = light;
- };
- }
- ];
- }
- ];
- # default: on to off
- # this works because state 0 checks for "state == off"
- default = [{
- service = "light.turn_off";
- data = {
- entity_id = light;
- };
- }];
- };
- };
- turn_off_all = btn:
+ inherit (import ../lib) btn_cycle_light;
+ turn_off_all = btn: #lights:
{
alias = "Turn of all lights via ${btn} double click";
trigger = {
@@ -84,14 +11,17 @@ let
};
action = {
service = "light.turn_off";
+ #entity_id = lights;
entity_id = "all";
};
};
in {
services.home-assistant.config.automation = [
- # (btn_state "light.arbeitszimmerbeleuchtung" "arbeitszimmer_btn1")
- (btn_state "light.schlafzimmer_komode_osram" "schlafzimmer_btn2" 128)
- # (btn_state "light.wohnzimmerbeleuchtung" "wohnzimmer_btn3")
- (turn_off_all "schlafzimmer_btn2")
+ # (btn_cycle_light "light.arbeitszimmerbeleuchtung" "arbeitszimmer_btn1")
+ (btn_cycle_light "light.schlafzimmer_komode_osram" "schlafzimmer_btn2" 128)
+
+ (btn_cycle_light "light.keller_osram" "keller_btn1" 128)
+ # (btn_cycle_light "light.wohnzimmerbeleuchtung" "wohnzimmer_btn3")
+ (turn_off_all "schlafzimmer_btn2" )
];
}
diff --git a/makefu/2configs/home/ham/default.nix b/makefu/2configs/home/ham/default.nix
index 79f26a053..cb42f32aa 100644
--- a/makefu/2configs/home/ham/default.nix
+++ b/makefu/2configs/home/ham/default.nix
@@ -1,5 +1,4 @@
{ pkgs, lib, config, ... }:
-
# Ideas:
## wake-on-lan server
##
@@ -33,6 +32,7 @@ in {
./automation/firetv_restart.nix
./automation/light_buttons.nix
./automation/wohnzimmer_rf_fernbedienung.nix
+ ./automation/ladestecker_timer.nix
#./automation/giesskanne.nix
./automation/pflanzen_giessen_erinnerung.nix
#./automation/urlaub.nix
diff --git a/makefu/2configs/home/ham/lib/default.nix b/makefu/2configs/home/ham/lib/default.nix
index 45c86138b..75be52737 100644
--- a/makefu/2configs/home/ham/lib/default.nix
+++ b/makefu/2configs/home/ham/lib/default.nix
@@ -40,5 +40,81 @@ in
entity = "firetv";
};
};
+
zigbee.prefix = "/ham/zigbee";
+
+ btn_cycle_light = light: btn: halfbright:
+ let
+ maxbright = 255;
+ transition = 0.2; # seconds
+ in
+ # this function implements a simple state machine based on the state and brightness of the light (light must support brightness
+ {
+ alias = "Cycle through states of ${light} via button ${btn}";
+ trigger = {
+ platform = "state";
+ entity_id = "sensor.${btn}_click";
+ to = "single";
+ };
+ action = {
+ choose = [
+ {
+ # state 0: off to half
+ conditions = {
+ condition = "template";
+ value_template = ''{{ states("${light}") == "off" }}'';
+ };
+ sequence = [
+ {
+ service = "light.turn_on";
+ data = {
+ entity_id = light;
+ brightness = halfbright;
+ };
+ }
+ ];
+ }
+ {
+ # state 1: half to full
+ conditions = {
+ condition = "template";
+ value_template = ''{{ states('${light}') == 'on' and ( ${toString (halfbright - 1)} <= state_attr("${light}","brightness") <= ${toString (halfbright + 1)})}}'';
+ };
+ sequence = [
+ {
+ service = "light.turn_on";
+ data = {
+ entity_id = light;
+ brightness = maxbright;
+ };
+ }
+ ];
+ }
+ {
+ # state 2: full to off
+ conditions = {
+ condition = "template";
+ # TODO: it seems like the devices respond with brightness-1 , maybe off-by-one somewhere?
+ value_template = ''{{ states("${light}") == "on" and state_attr("${light}","brightness") >= ${toString (maxbright - 1)}}}'';
+ };
+ sequence = [
+ {
+ service = "light.turn_off";
+ data = {
+ entity_id = light;
+ };
+ }
+ ];
+ }
+ ];
+ # default: on to off
+ # this works because state 0 checks for "state == off"
+ default = [{
+ service = "light.turn_off";
+ data = {
+ entity_id = light;
+ };
+ }];
+ };
+ };
}
diff --git a/makefu/5pkgs/beef/Gemfile b/makefu/5pkgs/beef/Gemfile
index da13e1fb8..759ba2d23 100644
--- a/makefu/5pkgs/beef/Gemfile
+++ b/makefu/5pkgs/beef/Gemfile
@@ -1,53 +1,38 @@
# BeEF's Gemfile
#
-# Copyright (c) 2006-2018 Wade Alcorn - wade@bindshell.net
+# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com
# See the file 'doc/COPYING' for copying permission
#
-
+#gem 'simplecov', require: false, group: :test
gem 'eventmachine'
gem 'thin'
-gem 'sinatra', '~> 2.0'
-gem 'rack', '~> 2.0'
-gem 'rack-protection', '~> 2.0'
+gem 'sinatra', '>= 2.0.2'
+gem 'rack', '>= 2.2.3'
+gem 'rack-protection', '>= 2.0.0'
gem 'em-websocket' # WebSocket support
-gem 'uglifier'
+gem 'uglifier', '>= 2.7.2'
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 'rubyzip', '>= 1.2.2'
gem 'espeak-ruby', '>= 1.0.4' # Text-to-Voice
-gem 'nokogiri', '>= 1.7'
-gem 'rake'
-
-# 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
+gem 'nokogiri', '>= 1.11.1'
+gem 'rake', '>= 12.3.3'
+gem 'otr-activerecord', '>= 1.4.2'
+gem 'sqlite3'
+gem 'rubocop', '~> 0.92.0', require: false
# Geolocation support
group :geoip do
- gem 'geoip'
+ gem 'maxmind-db'
end
gem 'parseconfig'
gem 'erubis'
-gem 'dm-migrations'
# Metasploit Integration extension
group :ext_msf do
@@ -67,12 +52,7 @@ end
# DNS extension
group :ext_dns do
- gem 'rubydns', '~> 0.7.3'
-end
-
-# network extension
-group :ext_network do
- gem 'dm-serializer'
+ gem 'async-dns'
end
# QRcode extension
@@ -82,24 +62,32 @@ end
# For running unit tests
group :test do
- if ENV['BEEF_TEST']
gem 'test-unit'
gem 'test-unit-full'
gem 'rspec'
+ gem 'rdoc'
# 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'
+ # gem 'selenium' # Requires old version of selenium which is no longer available
+ gem 'geckodriver-helper'
+ gem 'selenium-webdriver'
# 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
+ gem 'irb'
+ gem 'pry-byebug'
+ gem "websocket-client-simple", "~> 0.3.0"
+ gem "browserstack-local", "~> 1.3"
end
source 'https://rubygems.org'
+
+
+
+
+
diff --git a/makefu/5pkgs/beef/Gemfile.lock b/makefu/5pkgs/beef/Gemfile.lock
index 8f18bf220..fa6f32335 100644
--- a/makefu/5pkgs/beef/Gemfile.lock
+++ b/makefu/5pkgs/beef/Gemfile.lock
@@ -1,182 +1,297 @@
GEM
remote: https://rubygems.org/
specs:
- addressable (2.5.2)
- public_suffix (>= 2.0.2, < 4.0)
+ activemodel (6.1.4)
+ activesupport (= 6.1.4)
+ activerecord (6.1.4)
+ activemodel (= 6.1.4)
+ activesupport (= 6.1.4)
+ activesupport (6.1.4)
+ concurrent-ruby (~> 1.0, >= 1.0.2)
+ i18n (>= 1.6, < 2)
+ minitest (>= 5.1)
+ tzinfo (~> 2.0)
+ zeitwerk (~> 2.3)
+ addressable (2.8.0)
+ public_suffix (>= 2.0.2, < 5.0)
ansi (1.5.0)
+ archive-zip (0.12.0)
+ io-like (~> 0.3.0)
+ ast (2.4.2)
+ async (1.30.1)
+ console (~> 1.10)
+ nio4r (~> 2.3)
+ timers (~> 4.1)
+ async-dns (1.2.6)
+ async-io (~> 1.15)
+ async-io (1.32.2)
+ async
+ browserstack-local (1.3.0)
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)
- 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)
- domain_name (0.5.20180417)
+ byebug (11.1.3)
+ capybara (3.35.3)
+ addressable
+ mini_mime (>= 0.1.3)
+ nokogiri (~> 1.8)
+ rack (>= 1.6.0)
+ rack-test (>= 0.6.3)
+ regexp_parser (>= 1.5, < 3.0)
+ xpath (~> 3.2)
+ childprocess (3.0.0)
+ coderay (1.1.3)
+ concurrent-ruby (1.1.9)
+ console (1.13.1)
+ fiber-local
+ curb (0.9.11)
+ daemons (1.4.0)
+ diff-lcs (1.4.4)
+ domain_name (0.5.20190701)
unf (>= 0.0.5, < 1.0.0)
- em-websocket (0.5.1)
+ em-websocket (0.5.2)
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.4)
- http (3.3.0)
+ event_emitter (0.2.6)
+ eventmachine (1.2.7)
+ execjs (2.8.1)
+ ffi (1.15.3)
+ ffi-compiler (1.0.1)
+ ffi (>= 1.0.0)
+ rake
+ fiber-local (1.0.0)
+ geckodriver-helper (0.24.0)
+ archive-zip (~> 0.7)
+ hashie (4.1.0)
+ hashie-forbidden_attributes (0.1.1)
+ hashie (>= 3.0)
+ http (4.4.1)
addressable (~> 2.3)
http-cookie (~> 1.0)
- http-form_data (~> 2.0)
- http_parser.rb (~> 0.6.0)
- http-cookie (1.0.3)
+ http-form_data (~> 2.2)
+ http-parser (~> 1.2.0)
+ http-accept (1.7.0)
+ http-cookie (1.0.4)
domain_name (~> 0.5)
- http-form_data (2.1.1)
+ http-form_data (2.3.0)
+ http-parser (1.2.3)
+ ffi-compiler (>= 1.0, < 2.0)
http_parser.rb (0.6.0)
- jsobfu (0.4.2)
- rkelly-remix
- json (1.8.6)
- json_pure (1.8.6)
+ i18n (1.8.10)
+ concurrent-ruby (~> 1.0)
+ io-console (0.5.9)
+ io-like (0.3.1)
+ irb (1.3.6)
+ reline (>= 0.2.5)
+ json (2.5.1)
+ maxmind-db (1.1.1)
memoizable (0.4.2)
thread_safe (~> 0.3, >= 0.3.1)
- metasm (1.0.3)
- mime-types (3.2.2)
+ method_source (1.0.0)
+ mime-types (3.3.1)
mime-types-data (~> 3.2015)
- mime-types-data (3.2018.0812)
- mini_portile2 (2.3.0)
- mojo_magick (0.5.6)
- msfrpc-client (1.1.1)
+ mime-types-data (3.2021.0704)
+ mini_mime (1.1.0)
+ mini_portile2 (2.6.1)
+ minitest (5.14.4)
+ mojo_magick (0.6.6)
+ msfrpc-client (1.1.2)
msgpack (~> 1)
- rex (~> 2)
- msgpack (1.2.4)
- multi_json (1.13.1)
- multipart-post (2.0.0)
- mustermann (1.0.2)
+ msgpack (1.4.2)
+ multipart-post (2.1.1)
+ mustermann (1.1.1)
+ ruby2_keywords (~> 0.0.1)
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.3)
- qr4r (0.4.1)
- mojo_magick
- rqrcode
- rack (2.0.5)
- rack-protection (2.0.3)
+ nio4r (2.5.8)
+ nokogiri (1.12.2)
+ mini_portile2 (~> 2.6.1)
+ racc (~> 1.4)
+ otr-activerecord (2.0.1)
+ activerecord (>= 4.0, < 6.3)
+ hashie-forbidden_attributes (~> 0.1)
+ parallel (1.20.1)
+ parseconfig (1.1.0)
+ parser (3.0.2.0)
+ ast (~> 2.4.1)
+ power_assert (2.0.0)
+ pry (0.13.1)
+ coderay (~> 1.1)
+ method_source (~> 1.0)
+ pry-byebug (3.9.0)
+ byebug (~> 11.0)
+ pry (~> 0.13.0)
+ public_suffix (4.0.6)
+ qr4r (0.6.1)
+ mojo_magick (~> 0.6.5)
+ rqrcode_core (~> 0.1)
+ racc (1.5.2)
+ rack (2.2.3)
+ rack-protection (2.1.0)
rack
+ rack-test (1.1.0)
+ rack (>= 1.0, < 3)
rainbow (3.0.0)
- rake (12.3.1)
- rb-readline (0.5.5)
- rest-client (2.0.2)
+ rake (13.0.6)
+ rdoc (6.3.2)
+ regexp_parser (2.1.1)
+ reline (0.2.6)
+ io-console (~> 0.5)
+ rest-client (2.1.0)
+ http-accept (>= 1.7.0, < 2.0)
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)
- 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)
+ rexml (3.2.5)
+ rqrcode_core (0.2.0)
+ rr (3.0.5)
+ rspec (3.10.0)
+ rspec-core (~> 3.10.0)
+ rspec-expectations (~> 3.10.0)
+ rspec-mocks (~> 3.10.0)
+ rspec-core (3.10.1)
+ rspec-support (~> 3.10.0)
+ rspec-expectations (3.10.1)
+ diff-lcs (>= 1.2.0, < 2.0)
+ rspec-support (~> 3.10.0)
+ rspec-mocks (3.10.2)
+ diff-lcs (>= 1.2.0, < 2.0)
+ rspec-support (~> 3.10.0)
+ rspec-support (3.10.2)
+ rubocop (0.92.0)
+ parallel (~> 1.10)
+ parser (>= 2.7.1.5)
+ rainbow (>= 2.2.2, < 4.0)
+ regexp_parser (>= 1.7)
+ rexml
+ rubocop-ast (>= 0.5.0)
+ ruby-progressbar (~> 1.7)
+ unicode-display_width (>= 1.4.0, < 2.0)
+ rubocop-ast (1.8.0)
+ parser (>= 3.0.1.1)
+ ruby-progressbar (1.11.0)
+ ruby2_keywords (0.0.5)
+ rubyzip (2.3.2)
rushover (0.3.0)
json
rest-client
+ selenium-webdriver (3.142.7)
+ childprocess (>= 0.5, < 4.0)
+ rubyzip (>= 1.2.2)
simple_oauth (0.3.1)
- sinatra (2.0.3)
+ sinatra (2.1.0)
mustermann (~> 1.0)
- rack (~> 2.0)
- rack-protection (= 2.0.3)
+ rack (~> 2.2)
+ rack-protection (= 2.1.0)
tilt (~> 2.0)
- slack-notifier (2.3.2)
- term-ansicolor (1.6.0)
+ slack-notifier (2.4.0)
+ sqlite3 (1.4.2)
+ sync (0.5.0)
+ term-ansicolor (1.7.1)
tins (~> 1.0)
- thin (1.7.2)
+ test-unit (3.4.4)
+ power_assert
+ test-unit-context (0.5.1)
+ test-unit (>= 2.4.0)
+ test-unit-full (0.0.5)
+ test-unit
+ test-unit-context
+ test-unit-notify
+ test-unit-rr
+ test-unit-runner-tap
+ test-unit-notify (1.0.4)
+ test-unit (>= 2.4.9)
+ test-unit-rr (1.0.5)
+ rr (>= 1.1.1)
+ test-unit (>= 2.5.2)
+ test-unit-runner-tap (1.1.2)
+ test-unit
+ thin (1.8.1)
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.16.3)
- twitter (6.2.0)
+ tilt (2.0.10)
+ timers (4.3.3)
+ tins (1.29.1)
+ sync
+ twitter (7.0.0)
addressable (~> 2.3)
buftok (~> 0.2.0)
equalizer (~> 0.0.11)
- http (~> 3.0)
+ http (~> 4.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)
+ tzinfo (2.0.4)
+ concurrent-ruby (~> 1.0)
+ uglifier (4.2.0)
execjs (>= 0.3.0, < 3)
unf (0.1.4)
unf_ext
- unf_ext (0.0.7.5)
- xmlrpc (0.3.0)
+ unf_ext (0.0.7.7)
+ unicode-display_width (1.7.0)
+ webrick (1.7.0)
+ websocket (1.2.9)
+ websocket-client-simple (0.3.0)
+ event_emitter
+ websocket
+ xmlrpc (0.3.2)
+ webrick
+ xpath (3.2.0)
+ nokogiri (~> 1.8)
+ zeitwerk (2.4.2)
PLATFORMS
ruby
DEPENDENCIES
ansi
- data_objects
- dm-core
- dm-migrations
- dm-serializer
- dm-sqlite-adapter
+ async-dns
+ browserstack-local (~> 1.3)
+ capybara
+ curb
em-websocket
erubis
espeak-ruby (>= 1.0.4)
eventmachine
execjs
- geoip
+ geckodriver-helper
+ irb
json
+ maxmind-db
mime-types
msfrpc-client
- nokogiri (>= 1.7)
+ nokogiri (>= 1.11.1)
+ otr-activerecord (>= 1.4.2)
parseconfig
+ pry-byebug
qr4r
- rack (~> 2.0)
- rack-protection (~> 2.0)
- rake
- rubydns (~> 0.7.3)
- rubyzip (>= 1.2.1)
+ rack (>= 2.2.3)
+ rack-protection (>= 2.0.0)
+ rake (>= 12.3.3)
+ rdoc
+ rest-client (>= 2.0.1)
+ rspec
+ rubocop (~> 0.92.0)
+ rubyzip (>= 1.2.2)
rushover
- sinatra (~> 2.0)
+ selenium-webdriver
+ sinatra (>= 2.0.2)
slack-notifier
+ sqlite3
term-ansicolor
+ test-unit
+ test-unit-full
thin
twitter (>= 5.0.0)
- uglifier
+ uglifier (>= 2.7.2)
+ websocket-client-simple (~> 0.3.0)
xmlrpc
BUNDLED WITH
- 1.14.6
+ 2.1.4
diff --git a/makefu/5pkgs/beef/gemset.nix b/makefu/5pkgs/beef/gemset.nix
index 3ccd7340b..507ef9a27 100644
--- a/makefu/5pkgs/beef/gemset.nix
+++ b/makefu/5pkgs/beef/gemset.nix
@@ -1,12 +1,47 @@
{
+ activemodel = {
+ dependencies = ["activesupport"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0xjy8fg7n5wwv29ngvvdf5r6815s5f0knzyswxh8w6z8f8qj5wr7";
+ type = "gem";
+ };
+ version = "6.1.4";
+ };
+ activerecord = {
+ dependencies = ["activemodel" "activesupport"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "18897s9h9kha8vgky1yfq4x91m3p81k6rkrb1fgjlnqnvarh9vg0";
+ type = "gem";
+ };
+ version = "6.1.4";
+ };
+ activesupport = {
+ dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0kqgywy4cj3h5142dh7pl0xx5nybp25jn0ykk0znziivzks68xdk";
+ type = "gem";
+ };
+ version = "6.1.4";
+ };
addressable = {
dependencies = ["public_suffix"];
+ groups = ["default" "ext_notifications" "test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+ sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
type = "gem";
};
- version = "2.5.2";
+ version = "2.8.0";
};
ansi = {
source = {
@@ -16,6 +51,70 @@
};
version = "1.5.0";
};
+ archive-zip = {
+ dependencies = ["io-like"];
+ groups = ["default" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0ywpxgmhazmqcsjf3qhim3rdnbyjjl9nkj91kqgmrjq5q8j0r386";
+ type = "gem";
+ };
+ version = "0.12.0";
+ };
+ ast = {
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
+ type = "gem";
+ };
+ version = "2.4.2";
+ };
+ async = {
+ dependencies = ["console" "nio4r" "timers"];
+ groups = ["default" "ext_dns"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0mdv66xn5xjyaidyrp66mfnx7d4habkbfmx9y57k75h5q6fd2b65";
+ type = "gem";
+ };
+ version = "1.30.1";
+ };
+ async-dns = {
+ dependencies = ["async-io"];
+ groups = ["ext_dns"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1jwgzdp0qi31c8wlflhqvjj5w1vfwyai9j2yzxrpsqjzcmwhiv90";
+ type = "gem";
+ };
+ version = "1.2.6";
+ };
+ async-io = {
+ dependencies = ["async"];
+ groups = ["default" "ext_dns"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "10l9m0x2ffvsaaxc4mfalrljjx13njkyir9w6yfif8wpszc291h8";
+ type = "gem";
+ };
+ version = "1.32.2";
+ };
+ browserstack-local = {
+ groups = ["test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0wch4m064szfkk9fyp7f1yvkpbc3ajqdql0k4pjmqj2z38spsz9i";
+ type = "gem";
+ };
+ version = "1.3.0";
+ };
buftok = {
source = {
remotes = ["https://rubygems.org"];
@@ -24,102 +123,119 @@
};
version = "0.2.0";
};
- chunky_png = {
+ byebug = {
+ groups = ["default" "test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05g2xli9wbjylkmblln3bhvjalziwb92q452q8ibjagmb853424w";
+ sha256 = "0nx3yjf4xzdgb8jkmk2344081gqr22pgjqnmjg2q64mj5d6r9194";
type = "gem";
};
- version = "1.3.10";
+ version = "11.1.3";
};
- daemons = {
+ capybara = {
+ dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"];
+ groups = ["test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
+ sha256 = "1viqcpsngy9fqjd68932m43ad6xj656d1x33nx9565q57chgi29k";
type = "gem";
};
- version = "1.2.6";
+ version = "3.35.3";
};
- data_objects = {
- dependencies = ["addressable"];
+ childprocess = {
+ groups = ["default" "test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "19fw1ckqc5f1wc4r72qrymy2k6cmd8azbxpn61ksbsjqhzc2bgqd";
+ sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
type = "gem";
};
- version = "0.10.17";
+ version = "3.0.0";
};
- dm-core = {
- dependencies = ["addressable"];
+ coderay = {
+ groups = ["default" "test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "09x67ka6f1lxh4iwrg87iama0haq0d0z35gavvnvzpx9kn9pfbnw";
+ sha256 = "0jvxqxzply1lwp7ysn94zjhh57vc14mcshw1ygw14ib8lhc00lyw";
type = "gem";
};
- version = "1.2.1";
+ version = "1.1.3";
};
- dm-do-adapter = {
- dependencies = ["data_objects" "dm-core"];
+ concurrent-ruby = {
+ groups = ["default"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1v84lsmsq8kawl8k4qz2h87xqc1sr10c08wwasrxbcgrkvp7qk4q";
+ sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
type = "gem";
};
- version = "1.2.0";
+ version = "1.1.9";
};
- dm-migrations = {
- dependencies = ["dm-core"];
+ console = {
+ dependencies = ["fiber-local"];
+ groups = ["default" "ext_dns"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04hr8qgm4j1z5fg0cfpr8r6apvk5xykad0d0xqfg48rjv5rdwc0i";
+ sha256 = "04vhg3vnj2ky00fld4v6qywx32z4pjsa7l8i7sl1bl213s8334l9";
type = "gem";
};
- version = "1.2.0";
+ version = "1.13.1";
};
- dm-serializer = {
- dependencies = ["dm-core" "fastercsv" "json" "json_pure" "multi_json"];
+ curb = {
+ groups = ["test"];
+ platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0mvpb2d4cniysw45d3c9xidjpdb3wmfl7x5lgvnsfm69wq24v5y4";