summaryrefslogtreecommitdiffstats
path: root/makefu
diff options
context:
space:
mode:
Diffstat (limited to 'makefu')
-rw-r--r--makefu/0tests/data/secrets/ebk-notify.yml0
-rw-r--r--makefu/1systems/gum/config.nix1
-rw-r--r--makefu/2configs/deployment/feed.euer.krebsco.de/default.nix52
-rw-r--r--makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml44
-rw-r--r--makefu/2configs/git/cgit-retiolum.nix1
-rw-r--r--makefu/2configs/gui/base.nix10
-rw-r--r--makefu/2configs/ham/androidtv/adbshell.nix4
-rw-r--r--makefu/2configs/ham/androidtv/default.nix4
-rw-r--r--makefu/2configs/ham/androidtv/purepythonadb.nix6
-rw-r--r--makefu/2configs/ham/default.nix5
-rw-r--r--makefu/2configs/ham/multi/the_playlist.nix83
-rw-r--r--makefu/2configs/home-manager/zsh.nix2
-rw-r--r--makefu/2configs/nur.nix4
-rw-r--r--makefu/2configs/share/omo.nix12
-rw-r--r--makefu/2configs/tools/dev.nix1
15 files changed, 215 insertions, 14 deletions
diff --git a/makefu/0tests/data/secrets/ebk-notify.yml b/makefu/0tests/data/secrets/ebk-notify.yml
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/makefu/0tests/data/secrets/ebk-notify.yml
diff --git a/makefu/1systems/gum/config.nix b/makefu/1systems/gum/config.nix
index 8603d7696..7f7330ea6 100644
--- a/makefu/1systems/gum/config.nix
+++ b/makefu/1systems/gum/config.nix
@@ -137,6 +137,7 @@ in {
<stockholm/makefu/2configs/deployment/owncloud.nix>
<stockholm/makefu/2configs/deployment/board.euer.krebsco.de.nix>
<stockholm/makefu/2configs/deployment/rss.euer.krebsco.de.nix>
+ <stockholm/makefu/2configs/deployment/feed.euer.krebsco.de>
<stockholm/makefu/2configs/deployment/boot-euer.nix>
<stockholm/makefu/2configs/deployment/gecloudpad>
<stockholm/makefu/2configs/deployment/docker/archiveteam-warrior.nix>
diff --git a/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix b/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix
new file mode 100644
index 000000000..de072092b
--- /dev/null
+++ b/makefu/2configs/deployment/feed.euer.krebsco.de/default.nix
@@ -0,0 +1,52 @@
+{ config, lib, pkgs, ... }:
+let
+ filter-file = ./filter.yml;
+ pkg = with pkgs.python3Packages;buildPythonPackage rec {
+ version = "d16ce227dc68c9f60f6dd06e6835bab7cdfdf61b";
+ pname = "ebk-notify";
+ propagatedBuildInputs = [
+ docopt
+ pyyaml
+ requests
+ beautifulsoup4
+ dateutil
+ feedgen
+ ];
+ src = pkgs.fetchgit {
+ url = "http://cgit.euer.krebsco.de/ebk-notify";
+ rev = version;
+ sha256 = "15dlhp17alm01fw7mzdyh2z9zwz8psrs489lxs3hgg1p5wa0kzsp";
+ };
+ };
+ domain = "feed.euer.krebsco.de";
+ path = "/var/www/feed.euer.krebsco.de";
+in
+{
+ systemd.tmpfiles.rules = [
+ "d ${path} nginx nogroup - -"
+ ];
+ krebs.secret.files.ebknotify = {
+ path = "/etc/ebk-notify.yml";
+ owner.name = "nginx";
+ source-path = "${<secrets/ebk-notify.yml>}";
+ };
+ systemd.services.ebk-notify = {
+ startAt = "*:0/10";
+ serviceConfig = {
+ User = "nginx"; # TODO better permission setting
+ # PrivateTmp = true;
+ ExecStart = "${pkg}/bin/ebk-notify --atom --outdir ${path} --config /etc/ebk-notify.yml --cache /tmp/ebk-cache.json --filter ${filter-file} --wait 30";
+ };
+ };
+ systemd.timers.ebk-notify.timerConfig.RandomizedDelaySec = "120";
+ services.nginx = {
+ virtualHosts."${domain}" = {
+ forceSSL = true;
+ enableACME = true;
+ locations."/" = {
+ root = path;
+ index = "root.atom";
+ };
+ };
+ };
+}
diff --git a/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml b/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml
new file mode 100644
index 000000000..50058f32b
--- /dev/null
+++ b/makefu/2configs/deployment/feed.euer.krebsco.de/filter.yml
@@ -0,0 +1,44 @@
+- name: Free Stuff by Category
+ zipcode: 70378
+ distance: 2
+ categoryId: 192
+- name: Kies
+ zipcode: 70378
+ q: grobkies
+ distance: 2
+- name: pflanzkübel
+ zipcode: 70378
+ q: Pflanzkübel
+ distance: 3
+- name: Ikea Samla
+ zipcode: 70378
+ q: samla
+ distance: 5
+- name: Duplo
+ zipcode: 70378
+ q: Duplo
+ distance: 10
+- name: Baby Gummistiefel
+ zipcode: 70378
+ q: Gummistiefel
+ distance: 5
+- name: Werkbank
+ zipcode: 70378
+ q: Werkbank
+ distance: 5
+- name: Stirnthermometer
+ zipcode: 70378
+ q: Stirnthermometer
+ distance: 5
+- name: Ohrthermometer
+ zipcode: 70378
+ q: Ohrthermometer
+ distance: 5
+- name: Fieberthermometer
+ zipcode: 70378
+ q: Fieberthermometer
+ distance: 5
+- name: Einhell
+ zipcode: 70378
+ q: Einhell
+ distance: 5
diff --git a/makefu/2configs/git/cgit-retiolum.nix b/makefu/2configs/git/cgit-retiolum.nix
index 2a6e41ad8..639994674 100644
--- a/makefu/2configs/git/cgit-retiolum.nix
+++ b/makefu/2configs/git/cgit-retiolum.nix
@@ -18,6 +18,7 @@ let
yacos-backend = {
cgit.desc = "Yet Another Check-Out System";
};
+ ebk-notify.cgit.desc = "Ebay Kleinanzeigen Notify";
};
krebs-repos = mapAttrs make-krebs-repo {
diff --git a/makefu/2configs/gui/base.nix b/makefu/2configs/gui/base.nix
index 5b46c7e2d..854fbfa52 100644
--- a/makefu/2configs/gui/base.nix
+++ b/makefu/2configs/gui/base.nix
@@ -32,8 +32,11 @@ in
default = "awesome";
};
- displayManager.auto.enable = true;
- displayManager.auto.user = mainUser;
+ displayManager.lightdm = {
+ enable = true;
+ autoLogin.enable = true;
+ autoLogin.user = mainUser;
+ };
desktopManager.xterm.enable = false;
};
environment.systemPackages = [ pkgs.gnome3.defaultIconTheme ];
@@ -43,10 +46,9 @@ in
i18n.consoleFont = "Lat2-Terminus16";
fonts = {
- enableCoreFonts = true;
enableFontDir = true;
enableGhostscriptFonts = true;
- fonts = [ pkgs.terminus_font ];
+ fonts = [ pkgs.terminus_font pkgs.corefonts ];
};
users.users.${mainUser} = {
diff --git a/makefu/2configs/ham/androidtv/adbshell.nix b/makefu/2configs/ham/androidtv/adbshell.nix
index f5b96c859..0fadeeb05 100644
--- a/makefu/2configs/ham/androidtv/adbshell.nix
+++ b/makefu/2configs/ham/androidtv/adbshell.nix
@@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "adb_shell";
- version = "0.0.8";
+ version = "0.1.1";
src = fetchPypi {
inherit pname version;
- sha256 = "01f9jinhfyjldg9793gz2i7gcd9xyx0a62r7a5ijssklcnn2rwnm";
+ sha256 = "0a4mjrnw2lrhsakb1vjb5l6m3cr1ii7fibs7020nwv08cyx6pq6q";
};
propagatedBuildInputs = [
diff --git a/makefu/2configs/ham/androidtv/default.nix b/makefu/2configs/ham/androidtv/default.nix
index 8f3bdc1f3..b7d397db4 100644
--- a/makefu/2configs/ham/androidtv/default.nix
+++ b/makefu/2configs/ham/androidtv/default.nix
@@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "androidtv";
- version = "0.0.34";
+ version = "0.0.38";
src = fetchPypi {
inherit pname version;
- sha256 = "13078i2a9hglpv4ldycph5n5485np21vs6z2qn830hybmx8kfxsw";
+ sha256 = "0ri1fnc63zashc667w2mlpb0c7ri3x6wnhnf54klb89v73pdnb8k";
};
propagatedBuildInputs = [
diff --git a/makefu/2configs/ham/androidtv/purepythonadb.nix b/makefu/2configs/ham/androidtv/purepythonadb.nix
index d4e763b70..c9b1ff5e8 100644
--- a/makefu/2configs/ham/androidtv/purepythonadb.nix
+++ b/makefu/2configs/ham/androidtv/purepythonadb.nix
@@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "pure-python-adb";
- version = "0.2.3.dev0";
+ version = "0.2.2.dev0";
src = fetchPypi {
inherit pname version;
- sha256 = "88e5a4578435197799aa368fb1a5d87fe43e02a888cb7e85c2ad66173b383c89";
+ sha256 = "1xigv6c8xyb4g852nr3smz0137rnp81jvlikza071y7rc6pdzwza";
};
meta = with lib; {
@@ -18,4 +18,4 @@ buildPythonPackage rec {
license = licenses.mit;
# maintainers = [ maintainers. ];
};
-} \ No newline at end of file
+}
diff --git a/makefu/2configs/ham/default.nix b/makefu/2configs/ham/default.nix
index 53723299c..ddcf65b5a 100644
--- a/makefu/2configs/ham/default.nix
+++ b/makefu/2configs/ham/default.nix
@@ -14,6 +14,7 @@ let
#flurlicht = import ./multi/flurlicht.nix;
kurzzeitwecker = import ./multi/kurzzeitwecker.nix;
firetv_restart = import ./multi/firetv_restart.nix;
+ the_playlist = import ./multi/the_playlist.nix;
# switch
# automation
# binary_sensor
@@ -49,6 +50,8 @@ in {
logger = {
default = "info";
};
+ rest_command = {}
+ // the_playlist.rest_command;
tts = [
{ platform = "google_translate";
language = "de";
@@ -131,6 +134,7 @@ in {
# https://www.home-assistant.io/cookbook/automation_for_rainy_days/
]
++ ((import ./sensor/outside.nix) {inherit lib;})
+ ++ the_playlist.sensor
++ zigbee.sensor ;
frontend = { };
# light = flurlicht.light;
@@ -140,6 +144,7 @@ in {
++ (import ./automation/firetv_restart.nix)
++ kurzzeitwecker.automation
#++ flurlicht.automation
+ ++ the_playlist.automation
++ zigbee.automation;
script =
{ }
diff --git a/makefu/2configs/ham/multi/the_playlist.nix b/makefu/2configs/ham/multi/the_playlist.nix
new file mode 100644
index 000000000..ad090938c
--- /dev/null
+++ b/makefu/2configs/ham/multi/the_playlist.nix
@@ -0,0 +1,83 @@
+# Inputs:
+# binary_sensor.playlist_button_good
+# binary_sensor.playlist_button_bad
+
+# outputs
+# rest_command
+# automation
+# sensor
+{
+ rest_command = {
+ good_song = {
+ url = "http://prism.r:8001/good";
+ method = "POST";
+ };
+ bad_song = {
+ url = "http://prism.r:8001/skip";
+ method = "POST";
+ };
+ };
+ automation = [
+ {
+ alias = "playlist song publish";
+ trigger = {
+ #platform = "event";
+ #event_data.entity_id = "sensor.the_playlist_song";
+ platform = "state";
+ entity_id = "sensor.the_playlist_song";
+ };
+ action = {
+ service = "mqtt.publish";
+ data = {
+ topic = "/ham/the_playlist/song";
+ payload_template = "{{ states.sensor.the_playlist_song.state }}";
+ };
+ };
+ }
+ {
+ alias = "playlist upvote on button";
+ trigger = {
+ platform = "state";
+ entity_id = "binary_sensor.playlist_button_good";
+ from = "off";
+ to = "on";
+ };
+ action.service = "rest_command.good_song";
+ }
+ {
+ alias = "playlist downvote on button";
+ trigger = {
+ platform = "state";
+ entity_id = "binary_sensor.playlist_button_bad";
+ from = "off";
+ to = "on";
+ };
+ action.service = "rest_command.bad_song";
+ }
+ ];
+ sensor = [
+ { platform = "rest";
+ name = "pl";
+ resource = "http://prism.r:8001/current";
+ scan_interval = 30;
+ value_template = "1";
+ json_attributes = [ "name" "filename" "youtube" ];
+ }
+ { platform = "template";
+ sensors = {
+ the_playlist_song = {
+ friendly_name = "Current Song";
+ value_template = ''{{ states.sensor.pl.attributes['name'] }}'';
+ };
+ the_playlist_url = {
+ friendly_name = "Song Youtube URL";
+ value_template = ''{{ states.sensor.pl.attributes['youtube'] }}'';
+ };
+ the_playlist_filename = {
+ friendly_name = "Song Filename";
+ value_template = ''{{ states.sensor.pl.attributes['filename'] }}'';
+ };
+ };
+ }
+ ];
+}
diff --git a/makefu/2configs/home-manager/zsh.nix b/makefu/2configs/home-manager/zsh.nix
index 4cd9becc7..0dc7f256b 100644
--- a/makefu/2configs/home-manager/zsh.nix
+++ b/makefu/2configs/home-manager/zsh.nix
@@ -8,7 +8,7 @@
{ # bat
home-manager.users.makefu.home.packages = [ pkgs.bat ];
home-manager.users.makefu.programs.zsh.shellAliases = {
- cat = "bat";
+ cat = "bat --style=header,snip";
catn = "${pkgs.coreutils}/bin/cat";
ncat = "${pkgs.coreutils}/bin/cat";
};
diff --git a/makefu/2configs/nur.nix b/makefu/2configs/nur.nix
index 891144957..65cf836c4 100644
--- a/makefu/2configs/nur.nix
+++ b/makefu/2configs/nur.nix
@@ -1,8 +1,8 @@
{ pkgs, ... }:{
nixpkgs.config.packageOverrides = pkgs: {
nur = import (builtins.fetchTarball {
- url = "https://github.com/nix-community/NUR/archive/7bfd0117b359d0f72d086ff7e1f0ba3aeaf8d91e.tar.gz";
- sha256 = "0gb2np1r2m9kkz1s374gxdqrwhkzx48iircy00y6mjr7h14rhyxk";
+ url = "https://github.com/nix-community/NUR/archive/b7f7e072b3fa56aa0d86dfe3689cb13f0615bbbe.tar.gz";
+ sha256 = "0slxxg3r460aa1rc83j0rklmr0i1hyzfbjy0kn30fyh1l3lqb22m";
}
){
inherit pkgs;
diff --git a/makefu/2configs/share/omo.nix b/makefu/2configs/share/omo.nix
index ed5066787..929e5c601 100644
--- a/makefu/2configs/share/omo.nix
+++ b/makefu/2configs/share/omo.nix
@@ -42,6 +42,18 @@ in {
browseable = "yes";
"guest ok" = "yes";
};
+ anime = {
+ path = "/media/cryptX/anime";
+ "read only" = "yes";
+ browseable = "yes";
+ "guest ok" = "yes";
+ };
+ serien = {
+ path = "/media/cryptX/series";
+ "read only" = "yes";
+ browseable = "yes";
+ "guest ok" = "yes";
+ };
crypX-games = {
path = "/media/cryptX/games";
"read only" = "yes";
diff --git a/makefu/2configs/tools/dev.nix b/makefu/2configs/tools/dev.nix
index 43892ed2c..f184b5be5 100644
--- a/makefu/2configs/tools/dev.nix
+++ b/makefu/2configs/tools/dev.nix
@@ -21,6 +21,7 @@
brain
whatsupnix
nixpkgs-pytools
+ hydra-check
# git-related
git-preview
tig