Merge remote-tracking branch 'gum/master'
This commit is contained in:
commit
9f56260984
|
@ -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" ];
|
||||
|
||||
|
|
|
@ -29,8 +29,8 @@ with import <stockholm/lib>;
|
|||
rxvt_unicode.terminfo
|
||||
];
|
||||
|
||||
console.keyMap = "us";
|
||||
i18n = {
|
||||
consoleKeyMap = "us";
|
||||
defaultLocale = lib.mkForce "C";
|
||||
};
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
28
krebs/2configs/shack/glados/automation/announcement.j2
Normal file
28
krebs/2configs/shack/glados/automation/announcement.j2
Normal file
|
@ -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!
|
|
@ -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";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
|
|
@ -131,11 +131,11 @@ in {
|
|||
};
|
||||
#conversation = {};
|
||||
history = {};
|
||||
logbook = {};
|
||||
#logbook = {};
|
||||
logger = {
|
||||
default = "info";
|
||||
};
|
||||
recorder = {};
|
||||
#recorder = {};
|
||||
tts = [
|
||||
{ platform = "google_translate";
|
||||
service_name = "say";
|
||||
|
|
|
@ -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 = {
|
||||
|
|
|
@ -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
|
||||
];
|
||||
|
|
22
krebs/3modules/external/default.nix
vendored
22
krebs/3modules/external/default.nix
vendored
|
@ -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";
|
||||
|
|
1
krebs/3modules/external/ssh/hase.pub
vendored
Normal file
1
krebs/3modules/external/ssh/hase.pub
vendored
Normal file
|
@ -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
|
13
krebs/3modules/external/tinc/hasegateway.pub
vendored
Normal file
13
krebs/3modules/external/tinc/hasegateway.pub
vendored
Normal file
|
@ -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-----
|
6
makefu/2configs/kdeconnect.nix
Normal file
6
makefu/2configs/kdeconnect.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = with pkgs; [ kdeconnect ];
|
||||
networking.firewall.allowedUDPPortRanges = [ { from = 1714; to = 1764; } ];
|
||||
networking.firewall.allowedTCPPortRanges = [ { from = 1714; to = 1764; } ];
|
||||
}
|
|
@ -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;
|
||||
#}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -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 = [ "/ham/zigbee/${name}" ];
|
||||
inherit tags;
|
||||
persistent_session = false;
|
||||
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 ];
|
||||
tags = tags;
|
||||
inherit tags;
|
||||
persistent_session = false;
|
||||
name_override = name;
|
||||
data_format = "json";
|
||||
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";
|
||||
"sensor" = sensor;
|
||||
} );
|
||||
bme = host: [(hamStat host "BME280")];
|
||||
zsensor = room: name:
|
||||
(genTopic_zigbee name
|
||||
{ inherit room name;
|
||||
"scope" = "ham";
|
||||
} );
|
||||
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");
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
nmap
|
||||
msf
|
||||
drozer
|
||||
dex2jar
|
||||
#dex2jar
|
||||
apktool
|
||||
jd-gui
|
||||
# android-studio
|
||||
|
|
|
@ -17,5 +17,6 @@
|
|||
xdotool
|
||||
xorg.xbacklight
|
||||
scrot
|
||||
libnotify
|
||||
];
|
||||
}
|
||||
|
|
|
@ -49,7 +49,7 @@ ${gnused}/bin/sed -i "''${1}d" ~/.ssh/known_hosts
|
|||
populate
|
||||
|
||||
rxvt_unicode.terminfo
|
||||
krebspaste
|
||||
kpaste
|
||||
|
||||
];
|
||||
}
|
||||
|
|
|
@ -39,5 +39,6 @@
|
|||
# network related
|
||||
sshuttle
|
||||
pciutils
|
||||
navi
|
||||
];
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
inkscape
|
||||
libreoffice
|
||||
# skype
|
||||
teams
|
||||
synergy
|
||||
tdesktop
|
||||
virtmanager
|
||||
|
|
|
@ -8,11 +8,13 @@
|
|||
mumble
|
||||
mplayer
|
||||
# quodlibet # exfalso
|
||||
tinymediamanager
|
||||
|
||||
plowshare
|
||||
streamripper
|
||||
youtube-dl
|
||||
|
||||
pulseeffects
|
||||
|
||||
];
|
||||
}
|
||||
|
|
|
@ -569,7 +569,7 @@ local os = {
|
|||
|
||||
-- {{{ autostart
|
||||
do
|
||||
awful.spawn("urxvt", { tag = tags[1] }) # dev shell
|
||||
awful.spawn("urxvt", { tag = tags[1] }) -- dev shell
|
||||
awful.spawn("urxvt -e mosh makefu@gum.i", { tag = tags[2] })
|
||||
awful.spawn("firefox", { tag = tags[3] })
|
||||
awful.spawn("telegram-desktop", { tag = tags[4] })
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, pkgs, fetchgit }:
|
||||
|
||||
pkgs.perlPackages.buildPerlPackage rec {
|
||||
name = "debmirror-${version}";
|
||||
pname = "debmirror";
|
||||
version = "2.25";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -27,4 +27,5 @@ in
|
|||
sha256 = "055f3caj1y8v7sc2pz9q0dfyi2ij77d499pby4sjfvm5kjy9msdi";
|
||||
};
|
||||
propagatedBuildInputs = [ go-xlsx ];
|
||||
}).bin
|
||||
#meta.broken = true;
|
||||
})
|
||||
|
|
37
makefu/5pkgs/navi/default.nix
Normal file
37
makefu/5pkgs/navi/default.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
# via https://git.ingolf-wagner.de/palo/nixos-config/src/master/pkgs/navi/default.nix
|
||||
|
||||
{ rustPlatform, fetchFromGitHub, stdenv, fzf, makeWrapper, openssl, pkgconfig }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "navi";
|
||||
version = "2.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "denisidoro";
|
||||
repo = "navi";
|
||||
rev = "v${version}";
|
||||
#rev = "${version}";
|
||||
sha256 = "1195f7c3ij2mkv0k1h9fwn6jkyjb01w0p6mj2xc39w5f6i0c0hwp";
|
||||
};
|
||||
|
||||
cargoSha256 = "0ks25w0dncaiw3ma05r8jrng3cczancrynnpgdksbvgz49lg3wjw";
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/navi/
|
||||
mv shell $out/share/navi/
|
||||
|
||||
wrapProgram "$out/bin/navi" \
|
||||
--suffix "PATH" : "${fzf}/bin"
|
||||
'';
|
||||
buildInputs = [ openssl ];
|
||||
nativeBuildInputs = [ makeWrapper pkgconfig ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An interactive cheatsheet tool for the command-line";
|
||||
homepage = "https://github.com/denisidoro/navi";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ mrVanDalo ];
|
||||
};
|
||||
}
|
||||
|
|
@ -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}";
|
||||
|
|
118
makefu/5pkgs/soldat/default.nix
Normal file
118
makefu/5pkgs/soldat/default.nix
Normal file
|
@ -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
|
||||
];
|
||||
}
|
||||
|
|
@ -15,11 +15,12 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tinymediamanager";
|
||||
version = "3.1.5";
|
||||
version = "3.1.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://release.tinymediamanager.org/v3/dist/tmm_${version}_linux.tar.gz";
|
||||
sha256 = "01nlbkiwvw1cdwrxpdvkkc6g5zrjig22hxbyv1i44ay4wi6vmcax";
|
||||
#url = "http://release.tinymediamanager.org/v3/dist/tmm_${version}_linux.tar.gz";
|
||||
url = "https://archive.org/download/tmm_linux.tar/tmm_${version}_linux.tar.gz";
|
||||
sha256 = "06h0q52f0q4aq600nqzjkgrbkwxa2gnpbbn3nbfhni550bdgvf40";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
|
||||
|
|
11
makefu/5pkgs/youtube-dl2kodi/default.nix
Normal file
11
makefu/5pkgs/youtube-dl2kodi/default.nix
Normal file
|
@ -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 "$@"
|
||||
''
|
|
@ -1 +1 @@
|
|||
Subproject commit 44e8dd5cea9cdae04eecd7e15cdfc45a96643cd5
|
||||
Subproject commit 3e731035ed44659624e6d00bbb35570f2b8811fd
|
Loading…
Reference in a new issue