summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--krebs/1systems/puyak/config.nix2
-rw-r--r--krebs/2configs/default.nix2
-rw-r--r--krebs/2configs/save-diskspace.nix6
-rw-r--r--krebs/2configs/shack/glados/automation/announcement.j228
-rw-r--r--krebs/2configs/shack/glados/automation/shack-startup.nix31
-rw-r--r--krebs/2configs/shack/glados/default.nix4
-rw-r--r--krebs/2configs/shack/glados/lib/default.nix2
-rw-r--r--krebs/2configs/shack/ssh-keys.nix1
-rw-r--r--krebs/3modules/external/default.nix22
-rw-r--r--krebs/3modules/external/ssh/hase.pub1
-rw-r--r--krebs/3modules/external/tinc/hasegateway.pub13
-rw-r--r--makefu/2configs/stats/telegraf/default.nix19
-rw-r--r--makefu/2configs/stats/telegraf/hamstats.nix60
-rw-r--r--makefu/5pkgs/debmirror/default.nix2
-rw-r--r--makefu/5pkgs/dex2jar/default.nix48
-rw-r--r--makefu/5pkgs/git-xlsx-textconv/default.nix3
-rw-r--r--makefu/5pkgs/shiori/default.nix4
-rw-r--r--makefu/5pkgs/soldat/default.nix118
-rw-r--r--makefu/5pkgs/youtube-dl2kodi/default.nix11
19 files changed, 288 insertions, 89 deletions
diff --git a/krebs/1systems/puyak/config.nix b/krebs/1systems/puyak/config.nix
index a20f6929e..eb1256d69 100644
--- a/krebs/1systems/puyak/config.nix
+++ b/krebs/1systems/puyak/config.nix
@@ -31,7 +31,7 @@
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
- initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda3"; } ];
+ initrd.luks.devices.luksroot.device = "/dev/sda3";
initrd.luks.cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
initrd.availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
diff --git a/krebs/2configs/default.nix b/krebs/2configs/default.nix
index d7d6fbf37..3442272ec 100644
--- a/krebs/2configs/default.nix
+++ b/krebs/2configs/default.nix
@@ -29,8 +29,8 @@ with import <stockholm/lib>;
rxvt_unicode.terminfo
];
+ console.keyMap = "us";
i18n = {
- consoleKeyMap = "us";
defaultLocale = lib.mkForce "C";
};
diff --git a/krebs/2configs/save-diskspace.nix b/krebs/2configs/save-diskspace.nix
index b1416a97a..c70029646 100644
--- a/krebs/2configs/save-diskspace.nix
+++ b/krebs/2configs/save-diskspace.nix
@@ -3,8 +3,8 @@
{
nix.gc.automatic = true;
nix.gc.dates = lib.mkDefault "03:10";
- programs.info.enable = false;
- programs.man.enable = false;
+ documentation.info.enable = false;
+ documentation.man.enable = false;
services.journald.extraConfig = "SystemMaxUse=50M";
- services.nixosManual.enable = false;
+ documentation.nixos.enable = false;
}
diff --git a/krebs/2configs/shack/glados/automation/announcement.j2 b/krebs/2configs/shack/glados/automation/announcement.j2
new file mode 100644
index 000000000..d3838bb33
--- /dev/null
+++ b/krebs/2configs/shack/glados/automation/announcement.j2
@@ -0,0 +1,28 @@
+Willkommen werter Keyholder {{ states("sensor.keyholder") }} in deinem Lieblingshackerspace.
+
+Es ist {{states("sensor.temperature") | round(1) | replace('.',' Komma ')}} Grad {% if states("sensor.temperature")|float > 25 %}heiss{%elif states("sensor.temperature")|float > 15%}warm{%else%}kalt{%endif%} bei {% if states("sensor.humidity") | int <45 %}trockenen{% elif states("sensor.humidity") | int <65 %}angenehmen{%else%}feuchten{%endif%} {{states("sensor.humidity") | int }} Prozent Luftfeuchtigkeit.
+
+{% if (states("sensor.fullstand_mate_1")|int == 0) and
+ states("sensor.fullstand_mate_2")|int == 0 %}ES IST MAHTECALYPSE, BEIDE MAHTESCHÄCHTE SIND LEER! {%if states("sensor.fullstand_mate_cola")| int == 0%} UND SOGAR DIE COLA IST ALLE. Ihr seid sowas von am Arsch!{%else%}Zum Glück gibt es noch Cola, Phew!{%endif%}
+{% elif (states("sensor.fullstand_mate_1")|int + states("sensor.fullstand_mate_2")|int) < 5 %}
+Der Mahtestand im Automaten ist mit {{states("sensor.fullstand_mate_1")|int + states("sensor.fullstand_mate_2")|int }} verbleibenden Flaschen kritisch!
+{% else %}
+Im Automaten sind noch {{states("sensor.fullstand_mate_1")|int + states("sensor.fullstand_mate_2")|int }} Flaschen Mahte und {{states("sensor.fullstand_mate_cola")}} Flaschen Cola.
+{%endif%}
+
+Die Wettervorhersage: {{states("sensor.dark_sky_hourly_summary")}} Aktuell {{states("sensor.dark_sky_summary")}} bei {{states("sensor.dark_sky_temperature") | round(1) | replace('.',' Komma ')}} Grad.
+Der Stromverbrauch liegt bei {{ (( states("sensor.l1_power")|int + states("sensor.l2_power")|int + states("sensor.l3_power")|int ) / 1000 )| round(1) | replace('.',' Komma ')}} Kilowatt.
+
+Im Fablab ist die Feinstaubbelastung {% if states("sensor.fablab_particulate_matter_2_5um_concentration") | float > 50 %}hoch!{%elif states("sensor.fablab_particulate_matter_2_5um_concentration") | float > 25 %}mäßig.{% else %}gering.{%endif%}
+
+{% if is_state("binary_sensor.door_rzl",'on') and is_state("binary_sensor.door_entropia",'on') %}
+Das Raumzeitlabor und Entropia haben geöffnet.
+{% elif is_state("binary_sensor.door_rzl",'off') and is_state("binary_sensor.door_entropia",'off') %}
+Das Raumzeitlabor und Entropia haben geschlossen.
+{% elif is_state("binary_sensor.door_rzl",'on') and is_state("binary_sensor.door_entropia",'off') %}
+Das Raumzeitlabor hat geöffnet und Entropia hat geschlossen.
+{% elif is_state("binary_sensor.door_rzl",'off') and is_state("binary_sensor.door_entropia",'on') %}
+Das Raumzeitlabor hat geschlossen und Entropia hat geöffnet.
+{%endif%}
+
+Die Glados Hackerspace Automation wünscht dir und allen Anwesenden einen produktiven und angenehmen Aufenthalt!
diff --git a/krebs/2configs/shack/glados/automation/shack-startup.nix b/krebs/2configs/shack/glados/automation/shack-startup.nix
index 35314923b..ac7dd4f1e 100644
--- a/krebs/2configs/shack/glados/automation/shack-startup.nix
+++ b/krebs/2configs/shack/glados/automation/shack-startup.nix
@@ -2,12 +2,20 @@
# binary_sensor.portal_lock
# sensor.keyholder
# media_player.lounge
+
+# additional state required on:
+# mpd.shack:
+# playlist "ansage"
+# playlist "lassulus"
+# lounge.kiosk.shack:
+# playlist "ansage"
+
let
glados = import ../lib;
in
[
{
- alias = "Greet new keyholder for key exchange";
+ alias = "Bedanken bei Übernahme von Key";
initial_state = true;
trigger = {
platform = "state";
@@ -15,15 +23,22 @@ in
};
condition = {
condition = "template";
- value_template = "{{ trigger.from_state.state != 'No Keyholder' }}";
+ value_template = "{{ (trigger.from_state.state != 'No Keyholder') and (trigger.from_state.state != 'No Keyholder') }}";
};
- action = glados.say.kiosk "Danke {{trigger.to_state.state}} für das Übernehmen des Keys von {{trigger.from_state.state}}";
- # action = [];
+ action = glados.say.kiosk "Danke {{ trigger.to_state.state }} für das Übernehmen des Keys von {{ trigger.from_state.state }}";
+ }
+ {
+ alias = "Keyholder Begrüßen wenn MPD hoch fährt";
+ initial_state = true;
+ trigger = {
+ platform = "state";
+ from = "unavailable";
+ entity_id = "media_player.kiosk";
+ };
+ action = glados.say.kiosk (builtins.readFile ./announcement.j2);
}
-
{
alias = "Start Music on portal lock on";
- # TODO: use "power" trigger
trigger = {
platform = "state";
entity_id = "binary_sensor.portal_lock";
@@ -61,7 +76,7 @@ in
media_content_id = "ansage";
};
}
- { delay.seconds = 8; }
+ { delay.seconds = 8.5; }
{
service = "media_player.volume_set";
data = {
@@ -74,7 +89,7 @@ in
data = {
entity_id = "media_player.lounge";
media_content_type = "playlist";
- media_content_id = "lassulus superradio";
+ media_content_id = "lassulus";
};
}
];
diff --git a/krebs/2configs/shack/glados/default.nix b/krebs/2configs/shack/glados/default.nix
index 920f2ed2f..b6bcc8673 100644
--- a/krebs/2configs/shack/glados/default.nix
+++ b/krebs/2configs/shack/glados/default.nix
@@ -131,11 +131,11 @@ in {
};
#conversation = {};
history = {};
- logbook = {};
+ #logbook = {};
logger = {
default = "info";
};
- recorder = {};
+ #recorder = {};
tts = [
{ platform = "google_translate";
service_name = "say";
diff --git a/krebs/2configs/shack/glados/lib/default.nix b/krebs/2configs/shack/glados/lib/default.nix
index 6d2b7749b..2cfac3daf 100644
--- a/krebs/2configs/shack/glados/lib/default.nix
+++ b/krebs/2configs/shack/glados/lib/default.nix
@@ -22,7 +22,7 @@ in
service = "media_player.turn_on";
data.entity_id = "media_player.${entity}";
}
- { delay.seconds = 8; }
+ { delay.seconds = 4.5; }
{ service = "tts.say";
entity_id = "media_player.${entity}";
data_template = {
diff --git a/krebs/2configs/shack/ssh-keys.nix b/krebs/2configs/shack/ssh-keys.nix
index 95c869bc9..f27b5bbc3 100644
--- a/krebs/2configs/shack/ssh-keys.nix
+++ b/krebs/2configs/shack/ssh-keys.nix
@@ -5,6 +5,7 @@
config.krebs.users.ulrich.pubkey
config.krebs.users.raute.pubkey
config.krebs.users.xq.pubkey
+ config.krebs.users.hase.pubkey
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAEAQDb9NPa2Hf51afcG1H13UPbE5E02J8aC9a1sGCRls592wAVlQbmojYR1jWDPA2m32Bsyv0ztqi81zDyndWWZPQVJVBk00VjYBcgk6D5ifqoAuWLzfuHJPWZGOvBf/U74/LNFNUkj1ywjneK7HYTRPXrRBBfBSQNmQzkvue7s599L2vdueZKyjNsMpx2m6nm2SchaMuDskSQut/168JgU1l4M8BeT68Bo4WdelhBYnhSI1a59FGkgdu2SCjyighLQRy2sOH3ksnkHWENPkA+wwQOlKl7R3DsEybrNd4NU9FSwFDyDmdhfv5gJp8UGSFdjAwx43+8zM5t5ruZ25J0LnVb0PuTuRA00UsW83MkLxFpDQLrQV08tlsY6iGrqxP67C3VJ6t4v6oTp7/vaRLhEFc1PhOLh+sZ18o8MLO+e2rGmHGHQnSKfBOLUvDMGa4jb01XBGjdnIXLOkVo79YR5jZn7jJb2gTZ95OD6bWSDADoURSuwuLa7kh4ti1ItAKuhkIvbuky3rRVvQEc92kJ6aNUswIUXJa0K2ibbIY6ycKAA3Ljksl3Mm9KzOn6yc/i/lSF+SOrTGhabPJigKkIoqKIwnV5IU3gkfsxPQJOBMPqHDGAOeYQe3WpWedEPYuhQEczw4exMb9TkNE96F71PzuQPJDl5sPAWyPLeMKpy5XbfRiF2by4nxN3ZIQvjtoyVkjNV+qM0q0yKBzLxuRAEQOZ2yCEaBudZQkQiwHD97H2vu4SRQ/2aOie1XiOnmdbQRDZSO3BsoDK569K1w+gDfSnqY7zVUMj6tw+uKx6Gstck5lbvYMtdWKsfPv/pDM8eyIVFLL93dKTX+ertcQj6xDwLfOiNubE5ayFXhYkjwImV6NgfBuq+3hLK0URP2rPlOZbbZTQ0WlKD6CCRZPMSZCU9oD2zYfqpvRArBUcdkAwGePezORkfJQLE6mYEJp6pdFkJ/IeFLbO6M0lZVlfnpzAC9kjjkMCRofZUETcFSppyTImCbgo3+ok59/PkNU5oavBXyW80ue2tWHr08HX/QALNte3UITmIIlU6SFMCPMWJqadK1eDPWfJ4H4iDXRNn3D5wqN++iMloKvpaj0wieqXLY4+YfvNTNr177OU48GEWW8DnoEkbpwsCbjPxznGDQhdDqdYyMY/fDgRQReKITvKYGHRzesGysw5cKsp9LEfXD0R6WE2TeiiENla5AWzTgXJB0AyZEcOiIfqOgT9Nr9S8q5gc/BdA7P+jhGGJgEHhV3dVlfIZ7pmZc27Yu7UTQ0lbAKWqcMSTOdne+QL6ILzbvLrQwdvax4tQdm5opfU16SrOox1AMwAbkdq84z6uJqYVx3cUXfMJgTyDNrVv3or root@plattenschwein" # for backup
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1Lx5MKtVjB/Ef6LpEiIAgVwY5xKQFdHuLQR+odQO4cAgxj1QaIXGN0moixY52DebVQhAtiCNiFZ83uJyOj8kmu30yuXwtSOQeqziA859qMJKZ4ZcYdKvbXwnf2Chm5Ck/0FvtpjTWHIZAogwP1wQto/lcqHOjrTAnZeJfQuHTswYUSnmUU5zdsEZ9HidDPUc2Gv0wkBNd+KMQyOZl0HkaxHWvn0h4KK4hYZisOpeTfXJxD87bo+Eg4LL2vvnHW6dF6Ygrbd/0XRMsRRI8OAReVBUoJn7IE1wwAl/FpblNmhaF9hlL7g7hR1ADvaWMMw0e8SSzW6Y+oIa8qFQL6wR1 gitlab-builder" # for being deployed by gitlab ci
];
diff --git a/krebs/3modules/external/default.nix b/krebs/3modules/external/default.nix
index 62cdf8542..082dfd80f 100644
--- a/krebs/3modules/external/default.nix
+++ b/krebs/3modules/external/default.nix
@@ -134,6 +134,24 @@ in {
};
};
};
+ hasegateway = {
+ cores = 1;
+ owner = config.krebs.users.hase;
+ nets = {
+ #internet = {
+ # ip.addr = "37.24.200.174";
+ # aliases = [ "hasegateway.i" ];
+ #};
+ retiolum = {
+ ip4.addr = "10.243.226.216";
+ ip6.addr = "42:0:e644:9099:4f8:b9aa:3856:4e86";
+ aliases = [
+ "hasegateway.r"
+ ];
+ tinc.pubkey = tinc-for "hasegateway";
+ };
+ };
+ };
jongepad = {
owner = config.krebs.users.jonge;
nets = {
@@ -465,6 +483,10 @@ in {
mail = "shackspace.de@myvdr.de";
pubkey = ssh-for "ulrich";
};
+ hase = {
+ mail = "hase.christian92@gmail.com";
+ pubkey = ssh-for "hase";
+ };
"0x4A6F" = {
mail = "0x4a6f@shackspace.de";
pubkey = ssh-for "0x4A6F";
diff --git a/krebs/3modules/external/ssh/hase.pub b/krebs/3modules/external/ssh/hase.pub
new file mode 100644
index 000000000..02051a81f
--- /dev/null
+++ b/krebs/3modules/external/ssh/hase.pub
@@ -0,0 +1 @@
+ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCa40LWhpIngxvO2Vg2R0yZUmNUz7mT2m5fnVi9yKWKbUy+y3tMkC8bw+CjvOaFG8haXhPHue9IBvO7Fst1klyHXNlBPxxEuwnxvljV3rFPz8jxvxAnIJRdlxxpYGWSwOy/JxcjDdPlXBNvCFGQfxbHvwzC5wKyyCTEWgvcq+lK0xXcv/BJie8OM4H6z27a5BbV4GEDFki5fteCa3OPGCM4I/Ny/2cYMcJtXU/yQRYhcpNMu+4Q16YMkrut/r46ngcGTqnthE5LVOK9o+6LNR+ww6BSvm3bNccf3b85A1SG7tpIXMBKBMxD8Bt8/PmMlIGBvpqsv202MdpxAD6LYjLN 8c:48:47:bf:a4:f1:17:fb:ed:43:c6:2e:e5:97:7f:40 chris@chris-desktop-arch
diff --git a/krebs/3modules/external/tinc/hasegateway.pub b/krebs/3modules/external/tinc/hasegateway.pub
new file mode 100644
index 000000000..ef6520e85
--- /dev/null
+++ b/krebs/3modules/external/tinc/hasegateway.pub
@@ -0,0 +1,13 @@
+-----BEGIN RSA PUBLIC KEY-----
+MIICCgKCAgEA4k9MVwBAQXpbLNOp9AenFPzxdgJ21xhMeqPGUhsNgZXlioHpvaVN
+POx6nlcd4DBI1zg7GhYgWVHFerZzJ9/UD9cLufl+wIbtuAGlgsrqPkU4cCkDIKPb
+d1tsok9s3rei2yQs8mQO5eIIYRxai8/gCAhsVjDZ5kONACmlq4xbjTZDxb7eaomZ
+s//T6fiOMdEjo2Z6pahiEOEYdk+Nd18HOwuGQropzlBqtX4sa1ocfFT7/wXWMBm/
+/RL81t9HxSCGAogmb8leqGD7CGAPsJLfT+/54s7ZhdRMFYzE5deQKGYf15ZCYZsI
+ZmrcwsD7JOfqxs0THZvQ38gM00b7qDJRMeEdcUeDtWdDR79g78yB1CMXJGz+dNCa
+MM7yz6NScRLO5VN+irp9A2Z/wNSzIho7FVa93m4O3R1ft7bqjJNhMqI/3vxxT882
+X3o6K09UWau+xXHpHMGbrjePUnu0SGzntHVCSVJCRhRICzDnh+r+YURl6jlONHBU
+qx7zkMYrbOTMkqmt1pFYWXSa92xDoxTtNjNFJMWEe9vB4UDmPMfFBSOBBQ7m8QRw
+uNHGqjU9e3JOm3UtELUbnXtG6a2/5ve1kRpxGHoVWbHLosCieHbk9PQRVm74yfPE
+4RETrUyQA5ueaMYfKqpYGNPOliWIp4u2DeKQCQDr4PG+nkS04ZFXOlECAwEAAQ==
+-----END RSA PUBLIC KEY-----
diff --git a/makefu/2configs/stats/telegraf/default.nix b/makefu/2configs/stats/telegraf/default.nix
index c60539c71..5a81e2749 100644
--- a/makefu/2configs/stats/telegraf/default.nix
+++ b/makefu/2configs/stats/telegraf/default.nix
@@ -12,13 +12,18 @@ in {
urls = [ url ];
database = "telegraf";
}];
- mqtt = [{
- servers = [ mqtt_server ];
- topic_prefix = "/telegraf";
- data_format = "json";
- qos = 0;
- batch = false;
- }];
+ #file = [{ # debugging
+ # files = [ "stdout" ];
+ # data_format = "influx";
+ #}];
+
+ #mqtt = [{
+ # servers = [ mqtt_server ];
+ # topic_prefix = "/telegraf";
+ # data_format = "json";
+ # qos = 0;
+ # batch = false;
+ #}];
};
};
};
diff --git a/makefu/2configs/stats/telegraf/hamstats.nix b/makefu/2configs/stats/telegraf/hamstats.nix
index 88c1b6d5d..0b1723062 100644
--- a/makefu/2configs/stats/telegraf/hamstats.nix
+++ b/makefu/2configs/stats/telegraf/hamstats.nix
@@ -1,28 +1,60 @@
-{ pkgs, ...}:
+{ pkgs, lib, ...}:
let
- genTopic = name: topic: tags: {
+ genTopic_zigbee = name: tags: {
servers = [ "tcp://localhost:1883" ];
username = "stats";
- password = builtins.readFile <secrets/mqtt/stats>;
+ password = lib.removeSuffix "\n" (builtins.readFile <secrets/mqtt/stats>);
qos = 0;
connection_timeout = "30s";
- topics = [ topic ];
- tags = tags;
+ topics = [ "/ham/zigbee/${name}" ];
+ inherit tags;
persistent_session = false;
- name_override = name;
+ name_override = "zigbee ${tags.room} ${name}";
data_format = "json";
+ json_string_fields = [ "linkquality" "temperature" "humidity" "pressure" "battery" "contact" ];
+ # json_name_key = <filed which defines the name>
+
+ };
+ genTopic_plain = name: topic: tags: {
+ servers = [ "tcp://localhost:1883" ];
+ username = "stats";
+ password = lib.removeSuffix "\n" (builtins.readFile <secrets/mqtt/stats>);
+ qos = 0;
+ connection_timeout = "30s";
+ topics = [ topic ];
+ inherit tags;
+ persistent_session = false;
+ name_override = tags.sensor;
+ data_type = "float";
+ data_format = "value";
# json_query = tags.sensor; #TODO?
};
- hamStat = host:
- sensor:
- (genTopic sensor
- "/ham/${host}/${sensor}/tele/SENSOR"
- {"host" = host;
+ esensor = room: name: sensor:
+ (genTopic_plain sensor ''/ham/${room}/${name}/sensor/${sensor}/state''
+ { inherit room sensor name;
+ "scope" = "ham";
+ } );
+ zsensor = room: name:
+ (genTopic_zigbee name
+ { inherit room name;
"scope" = "ham";
- "sensor" = sensor;
} );
- bme = host: [(hamStat host "BME280")];
+ zigbee_temphum = room: name: [
+ (zsensor room name)
+ ];
+ esphome_temphum = room: name: [
+ (esensor room name ''${room}_${name}_temperature'')
+ (esensor room name ''${room}_${name}_humidity'')
+ (esensor room name ''${room}_${name}_pressure'')
+ ];
in {
- services.telegraf.extraConfig.inputs.mqtt_consumer = (bme "schlafzimmer");
+ services.telegraf.extraConfig.inputs.mqtt_consumer =
+ (zigbee_temphum "Wohnzimmer" "temp1")
+ ++ (zigbee_temphum "Badezimmer" "temp2")
+ ++ (zigbee_temphum "Kinderzimmer" "temp3")
+ ++ (esphome_temphum "arbeitszimmer" "box")
+ ++ (esphome_temphum "schlafzimmer" "plug")
+ ++ (esphome_temphum "wohnzimmer" "plug")
+ ++ (esphome_temphum "terrasse" "plug");
}
diff --git a/makefu/5pkgs/debmirror/default.nix b/makefu/5pkgs/debmirror/default.nix
index 67b34b6ee..d1f007de6 100644
--- a/makefu/5pkgs/debmirror/default.nix
+++ b/makefu/5pkgs/debmirror/default.nix
@@ -1,7 +1,7 @@
{ stdenv, pkgs, fetchgit }:
pkgs.perlPackages.buildPerlPackage rec {
- name = "debmirror-${version}";
+ pname = "debmirror";
version = "2.25";
enableParallelBuilding = true;
diff --git a/makefu/5pkgs/dex2jar/default.nix b/makefu/5pkgs/dex2jar/default.nix
deleted file mode 100644
index 76557ce67..000000000
--- a/makefu/5pkgs/dex2jar/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ stdenv, lib, pkgs, fetchurl, jre, makeWrapper, unzip }:
-stdenv.mkDerivation rec {
- name = "${packageName}-${version}";
- packageName = "dex2jar";
- version = "2.0";
-
- src = fetchurl {
- url = "mirror://sourceforge/${packageName}/${name}.zip";
- sha256 = "1g3mrbyl8sdw1nhp17z23qbfzqpa0w2yxrywgphvd04jdr6yn1vr";
- };
-
- nativeBuildInputs = [ makeWrapper unzip ];
-
- unpackPhase = ''
- unzip $src
- cd ${name}
- '';
-
- configurePhase = ":";
-
- buildPhase = ''
- rm *.bat
- chmod +x *.sh
- '';
-
- installPhase = ''
- f=$out/lib/dex2jar/
- bin=$out/bin
-
- mkdir -p $f $bin
-
- # fixup path to java
- sed -i 's#^java#${pkgs.jre}/bin/java#' d2j_invoke.sh
-
- mv * $f
- for i in $f/*.sh; do
- n=$(basename ''${i%.sh})
- makeWrapper $i $bin/$n
- done
- '';
- fixupPhase = ":";
-
- meta = {
- homepage = https://sourceforge.net/projects/dex2jar/;
- description = "Tools to work with android .dex and java .class files";
- license = lib.licenses.asl20;
- };
-}
diff --git a/makefu/5pkgs/git-xlsx-textconv/default.nix b/makefu/5pkgs/git-xlsx-textconv/default.nix
index 66dde76ef..ffb9b003c 100644
--- a/makefu/5pkgs/git-xlsx-textconv/default.nix
+++ b/makefu/5pkgs/git-xlsx-textconv/default.nix
@@ -27,4 +27,5 @@ in
sha256 = "055f3caj1y8v7sc2pz9q0dfyi2ij77d499pby4sjfvm5kjy9msdi";
};
propagatedBuildInputs = [ go-xlsx ];
-}).bin
+ #meta.broken = true;
+})
diff --git a/makefu/5pkgs/shiori/default.nix b/makefu/5pkgs/shiori/default.nix
index c604fbbde..ee4aa9304 100644
--- a/makefu/5pkgs/shiori/default.nix
+++ b/makefu/5pkgs/shiori/default.nix
@@ -1,6 +1,6 @@
-{ go_1_12, buildGoPackage, fetchFromGitHub }:
+{ go_1_14, buildGoPackage, fetchFromGitHub }:
let
- builder = buildGoPackage.override { go = go_1_12; };
+ builder = buildGoPackage.override { go = go_1_14; };
in
builder rec {
name = "shiori-${version}";
diff --git a/makefu/5pkgs/soldat/default.nix b/makefu/5pkgs/soldat/default.nix
new file mode 100644
index 000000000..7518ddee5
--- /dev/null
+++ b/makefu/5pkgs/soldat/default.nix
@@ -0,0 +1,118 @@
+{ stdenv,fpc,zip, fetchFromGitHub, autoPatchelfHook, callPackage,
+freetype,openal,x11,SDL2,physfs_2, protobuf, openssl, cmake, ninja,
+meson,pkgconfig, makeWrapper }:
+
+let
+ GameNetworkingSockets = stdenv.mkDerivation rec {
+ pname = "GameNetworkingSockets";
+ version = "2020-02-27";
+
+ src = fetchFromGitHub {
+ sha256 = "1vlrqjpqmdv1gphj2bkqg0bljqxfv75say6vrcnk9z14irih9a24";
+ owner = "ValveSoftware";
+ repo = pname;
+ rev = "36d41513e9a25d7ad4c2b37826d6594aaf185374";
+ };
+
+ mesonFlags = [ "-Dlight_tests=true" ];
+
+ buildInputs = [ protobuf openssl ];
+ nativeBuildInputs = [ pkgconfig meson cmake ninja ];
+ installPhase = ''
+ mkdir -p $out/lib $out/include; find .
+ cp src/libGameNetworkingSockets.so $out/lib/
+ cp -r ../include $out/
+ '';
+
+
+ #outputs = [ "out" "dev" "lib" ];
+
+ meta = with stdenv.lib; {
+ description = "WebDav server implementation and library using libsoup";
+ homepage = "https://wiki.gnome.org/phodav";
+ license = licenses.lgpl21;
+ maintainers = with maintainers; [ gnidorah ];
+ platforms = platforms.linux;
+ };
+ };
+ base = stdenv.mkDerivation {
+ pname = "soldat-base";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ repo = "base";
+ owner = "soldat";
+ rev = "3c002b9";
+ sha256 = "1wc1cmdavf6ng05wfcpxn124n23vivx4nn06irqmar6jmrklrbq0";
+ };
+ buildInputs = [ zip ];
+ buildPhase = ''
+ sh ./create_smod.sh
+ '';
+ installPhase = ''
+ install -D soldat.smod $out/soldat.smod
+ install -D client/play-regular.ttf $out/play-regular.ttf
+ '';
+ };
+ src = fetchFromGitHub {
+ repo = "soldat";
+ owner = "soldat";
+ rev = "6dee4d0";
+ sha256 = "0jjgdxprlvyf5kh2mb48vrp5nxk3h3jbaxmy7xmna80ssx4bjhxf";
+ };
+ stb = stdenv.mkDerivation {
+ pname = "soldat";
+ version = "1.0.0";
+ inherit src;
+ # makeFlags = [ "CFLAGS='-Fl${openal}/lib'" ];
+ buildPhase = ''
+ cd client
+ mkdir -p build/linux
+ make -C libs/stb/
+ '';
+ installPhase = ''
+ install -D build/libstb.so $out/lib/libstb.so
+ '';
+
+ buildInputs = [ ];
+ };
+in
+stdenv.mkDerivation {
+ pname = "soldat";
+ version = "1.0.0";
+ inherit src;
+ # makeFlags = [ "CFLAGS='-Fl${openal}/lib'" ];
+ buildPhase = ''
+ cd client
+ mkdir -p build/linux
+ make -C libs/stb/
+ make linux_x86_64
+ cd ../server
+ mkdir -p build/linux
+ make linux_x86_64
+ cd ..
+ '';
+
+ # TODO: soldatserver still needs to be copied out of the derivation to somewhere writeable
+ installPhase = ''
+ share=$out/share/soldat
+ bin=$out/bin
+ mkdir -p $share $bin
+
+ install ${base}/soldat.smod $share/soldat.smod
+ install ${base}/play-regular.ttf $share/play-regular.ttf;
+
+ install -m755 client/build/soldat_x64 $share/soldat_x64
+ install client/media/soldat.ico $share/soldat.ico
+
+ install -m755 server/build/soldatserver_x64 $share/soldatserver_x64
+
+ makeWrapper $share/soldat_x64 $bin/soldat --add-flags '-fs_portable 0'
+ makeWrapper $share/soldatserver_x64 $bin/soldatserver --add-flags '-fs_userpath ~/.local/share/Soldat/Soldat'
+ '';
+
+ nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
+ buildInputs = [
+ fpc freetype openal x11 SDL2 physfs_2 GameNetworkingSockets stb
+ ];
+}
+
diff --git a/makefu/5pkgs/youtube-dl2kodi/default.nix b/makefu/5pkgs/youtube-dl2kodi/default.nix
new file mode 100644
index 000000000..dfaab97cb
--- /dev/null
+++ b/makefu/5pkgs/youtube-dl2kodi/default.nix
@@ -0,0 +1,11 @@
+{ writeScriptBin, fetchFromGitHub, python3 }:
+let
+ src = fetchFromGitHub {
+ owner = "makefu";
+ repo = "youtube-dl2kodi";
+ rev = "88abe687842309d7bda0b7ba65b64e8058b855d6";
+ sha256 = "18csv2ighwgdgsm66hvw7fanv1pz522p24q59q2cwqy86fpg9y03";
+ };
+in writeScriptBin "youtube-dl2kodi" ''
+ ${python3}/bin/python ${src}/youtube-dl2kodi.py "$@"
+''