mirror of
https://github.com/kmein/niveum
synced 2026-03-25 05:51:07 +01:00
Compare commits
4 Commits
7aee4b566c
...
bc8a035451
| Author | SHA1 | Date | |
|---|---|---|---|
| bc8a035451 | |||
| 36ce5143b4 | |||
| e4514389f1 | |||
| 99bc72eb29 |
43
.bin/dummy-alert
Executable file
43
.bin/dummy-alert
Executable file
@@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
name=$RANDOM
|
||||||
|
url='http://localhost:9093/api/v1/alerts'
|
||||||
|
|
||||||
|
echo "firing up alert $name"
|
||||||
|
|
||||||
|
# change url o
|
||||||
|
curl -XPOST $url -d "[{
|
||||||
|
\"status\": \"firing\",
|
||||||
|
\"labels\": {
|
||||||
|
\"alertname\": \"$name\",
|
||||||
|
\"service\": \"my-service\",
|
||||||
|
\"severity\":\"warning\",
|
||||||
|
\"instance\": \"$name.example.net\"
|
||||||
|
},
|
||||||
|
\"annotations\": {
|
||||||
|
\"summary\": \"High latency is high!\"
|
||||||
|
},
|
||||||
|
\"generatorURL\": \"http://prometheus.int.example.net/<generating_expression>\"
|
||||||
|
}]"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "press enter to resolve alert"
|
||||||
|
read
|
||||||
|
|
||||||
|
echo "sending resolve"
|
||||||
|
curl -XPOST $url -d "[{
|
||||||
|
\"status\": \"resolved\",
|
||||||
|
\"labels\": {
|
||||||
|
\"alertname\": \"$name\",
|
||||||
|
\"service\": \"my-service\",
|
||||||
|
\"severity\":\"warning\",
|
||||||
|
\"instance\": \"$name.example.net\"
|
||||||
|
},
|
||||||
|
\"annotations\": {
|
||||||
|
\"summary\": \"High latency is high!\"
|
||||||
|
},
|
||||||
|
\"generatorURL\": \"http://prometheus.int.example.net/<generating_expression>\"
|
||||||
|
}]"
|
||||||
|
|
||||||
|
echo ""
|
||||||
@@ -57,7 +57,7 @@ in {
|
|||||||
];
|
];
|
||||||
|
|
||||||
environment.etc = {
|
environment.etc = {
|
||||||
"themes/dark/alacritty.yml".source = alacritty-cfg (import <niveum/lib/colours/owickstrom-dark.nix>);
|
"themes/dark/alacritty.yml".source = alacritty-cfg (import <niveum/lib/colours/papercolor-dark.nix>);
|
||||||
"themes/light/alacritty.yml".source = alacritty-cfg (import <niveum/lib/colours/owickstrom-light.nix>);
|
"themes/light/alacritty.yml".source = alacritty-cfg (import <niveum/lib/colours/papercolor-light.nix>);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -186,7 +186,17 @@ in {
|
|||||||
}
|
}
|
||||||
{programs.command-not-found.enable = true;}
|
{programs.command-not-found.enable = true;}
|
||||||
{
|
{
|
||||||
programs.gnupg.agent.enable = true;
|
home-manager.users.me = {
|
||||||
|
services.gpg-agent = rec {
|
||||||
|
enable = true;
|
||||||
|
enableSshSupport = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
defaultCacheTtl = 2 * 60 * 60;
|
||||||
|
defaultCacheTtlSsh = defaultCacheTtl;
|
||||||
|
maxCacheTtl = 4 * defaultCacheTtl;
|
||||||
|
maxCacheTtlSsh = maxCacheTtl;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
pkgs.gnupg
|
pkgs.gnupg
|
||||||
|
|||||||
@@ -7,19 +7,7 @@
|
|||||||
inherit (import <niveum/lib>) sshPort kieran;
|
inherit (import <niveum/lib>) sshPort kieran;
|
||||||
externalNetwork = import <niveum/lib/external-network.nix>;
|
externalNetwork = import <niveum/lib/external-network.nix>;
|
||||||
sshIdentity = name: "${config.users.users.me.home}/.ssh/${name}";
|
sshIdentity = name: "${config.users.users.me.home}/.ssh/${name}";
|
||||||
ssh-passphrase = lib.strings.fileContents <system-secrets/ssh/passphrase>;
|
|
||||||
in {
|
in {
|
||||||
services.xserver.displayManager.sessionCommands = toString (pkgs.writeScript "ssh-add" ''
|
|
||||||
#!${pkgs.expect}/bin/expect -f
|
|
||||||
spawn ${pkgs.openssh}/bin/ssh-add
|
|
||||||
expect "Enter passphrase for *:"
|
|
||||||
send "${ssh-passphrase}\n";
|
|
||||||
expect "Identity added: *"
|
|
||||||
interact
|
|
||||||
'');
|
|
||||||
|
|
||||||
programs.ssh.startAgent = true;
|
|
||||||
|
|
||||||
users.users.me.openssh.authorizedKeys.keys = kieran.sshKeys pkgs;
|
users.users.me.openssh.authorizedKeys.keys = kieran.sshKeys pkgs;
|
||||||
|
|
||||||
home-manager.users.me.programs.ssh = {
|
home-manager.users.me.programs.ssh = {
|
||||||
|
|||||||
8
flake.lock
generated
8
flake.lock
generated
@@ -211,11 +211,11 @@
|
|||||||
"stockholm": {
|
"stockholm": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1669968392,
|
"lastModified": 1670868652,
|
||||||
"narHash": "sha256-yXdKNYrOFpueTu6lFpm624rVri4rK6ad4qJqoUkc9vY=",
|
"narHash": "sha256-Y5kEs6GsKMvkLe+q+rAQDTIpLwmbt51lB07JLGbi4f8=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "645c3564f75589531abcf17fd3c3f920d93a394a",
|
"rev": "3884243448869bdf09f6434b385e532c7c26ae88",
|
||||||
"revCount": 10987,
|
"revCount": 11077,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://cgit.lassul.us/stockholm"
|
"url": "https://cgit.lassul.us/stockholm"
|
||||||
},
|
},
|
||||||
|
|||||||
37
lib/colours/papercolor-dark.nix
Normal file
37
lib/colours/papercolor-dark.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
rec {
|
||||||
|
black = {
|
||||||
|
dark = "#1c1c1c";
|
||||||
|
bright = "#585858";
|
||||||
|
};
|
||||||
|
red = {
|
||||||
|
dark = "#af005f";
|
||||||
|
bright = "#5faf5f";
|
||||||
|
};
|
||||||
|
green = {
|
||||||
|
bright = "#afd700";
|
||||||
|
dark = "#5faf00";
|
||||||
|
};
|
||||||
|
yellow = {
|
||||||
|
bright = "#af87d7";
|
||||||
|
dark = "#d7af5f";
|
||||||
|
};
|
||||||
|
blue = {
|
||||||
|
dark = "#5fafd7";
|
||||||
|
bright = "#ffaf00";
|
||||||
|
};
|
||||||
|
magenta = {
|
||||||
|
bright = "#ff5faf";
|
||||||
|
dark = "#808080";
|
||||||
|
};
|
||||||
|
cyan = {
|
||||||
|
dark = "#d7875f";
|
||||||
|
bright = "#00afaf";
|
||||||
|
};
|
||||||
|
white = {
|
||||||
|
dark = "#d0d0d0";
|
||||||
|
bright = "#5f8787";
|
||||||
|
};
|
||||||
|
background = black.dark;
|
||||||
|
foreground = white.dark;
|
||||||
|
cursor = blue.bright;
|
||||||
|
}
|
||||||
37
lib/colours/papercolor-light.nix
Normal file
37
lib/colours/papercolor-light.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
rec {
|
||||||
|
black = {
|
||||||
|
dark = "#eeeeee";
|
||||||
|
bright = "#bcbcbc";
|
||||||
|
};
|
||||||
|
red = {
|
||||||
|
dark = "#af0000";
|
||||||
|
bright = "#d70000";
|
||||||
|
};
|
||||||
|
green = {
|
||||||
|
dark = "#008700";
|
||||||
|
bright = "#d70087";
|
||||||
|
};
|
||||||
|
yellow = {
|
||||||
|
dark = "#5f8700";
|
||||||
|
bright = "#8700af";
|
||||||
|
};
|
||||||
|
blue = {
|
||||||
|
dark = "#0087af";
|
||||||
|
bright = "#d75f00";
|
||||||
|
};
|
||||||
|
magenta = {
|
||||||
|
bright = "#878787";
|
||||||
|
dark = "#d75f00";
|
||||||
|
};
|
||||||
|
cyan = {
|
||||||
|
dark = "#005f87";
|
||||||
|
bright = "#005faf";
|
||||||
|
};
|
||||||
|
white = {
|
||||||
|
dark = "#444444";
|
||||||
|
bright = "#005f87";
|
||||||
|
};
|
||||||
|
background = black.dark;
|
||||||
|
foreground = white.dark;
|
||||||
|
cursor = blue.bright;
|
||||||
|
}
|
||||||
@@ -40,7 +40,7 @@ rec {
|
|||||||
|
|
||||||
sshPort = 22022;
|
sshPort = 22022;
|
||||||
|
|
||||||
colours = import ./colours/ibm-3270.nix;
|
colours = import ./colours/papercolor-dark.nix;
|
||||||
|
|
||||||
theme = pkgs: {
|
theme = pkgs: {
|
||||||
gtk = {
|
gtk = {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ in {
|
|||||||
warning_fg = colours.yellow.bright;
|
warning_fg = colours.yellow.bright;
|
||||||
warning_bg = colours.background;
|
warning_bg = colours.background;
|
||||||
alternating_tint_bg = colours.background;
|
alternating_tint_bg = colours.background;
|
||||||
alternating_tint_fg = colours.background;
|
alternating_tint_fg = colours.foreground;
|
||||||
critical_bg = colours.background;
|
critical_bg = colours.background;
|
||||||
good_bg = colours.background;
|
good_bg = colours.background;
|
||||||
idle_bg = colours.background;
|
idle_bg = colours.background;
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ in {
|
|||||||
rm -rf "$stockholm"
|
rm -rf "$stockholm"
|
||||||
}
|
}
|
||||||
${pkgs.git}/bin/git clone ${remote} "$stockholm"
|
${pkgs.git}/bin/git clone ${remote} "$stockholm"
|
||||||
${pkgs.git}/bin/git --git-dir "$stockholm"/.git log --pretty='"%s" by %an, %ar.' --since "$(${pkgs.coreutils}/bin/date -I -d "yesterday")" \
|
${pkgs.git}/bin/git --git-dir "$stockholm"/.git log --pretty='"%s" by %an, %ar.' --since "$(${pkgs.coreutils}/bin/date -d '1 hours ago')" \
|
||||||
| ${pkgs.jq}/bin/jq -R '{text: ., from: now | todateiso8601, to: (now + (60 * 60)) | todateiso8601}' \
|
| ${pkgs.jq}/bin/jq -R '{text: ., from: now | todateiso8601, to: (now + (60 * 60)) | todateiso8601}' \
|
||||||
| ${pkgs.curl}/bin/curl -Ssfd @- http://radio-news.r/
|
| ${pkgs.curl}/bin/curl -Ssfd @- http://radio-news.r/
|
||||||
'';
|
'';
|
||||||
|
|||||||
@@ -20,32 +20,30 @@ in {
|
|||||||
krebs.htgen.tarot = {
|
krebs.htgen.tarot = {
|
||||||
port = tarotPort;
|
port = tarotPort;
|
||||||
user.name = "radio";
|
user.name = "radio";
|
||||||
script = ''. ${
|
scriptFile = pkgs.writers.writeDash "tarot" ''
|
||||||
pkgs.writers.writeDash "tarot" ''
|
case "$Method $Request_URI" in
|
||||||
case "$Method $Request_URI" in
|
"GET /")
|
||||||
"GET /")
|
if item=$(${pkgs.findutils}/bin/find ${toString tarotFiles} -type f | ${pkgs.coreutils}/bin/shuf -n1); then
|
||||||
if item=$(${pkgs.findutils}/bin/find ${toString tarotFiles} -type f | ${pkgs.coreutils}/bin/shuf -n1); then
|
card=$(mktemp --tmpdir tarot.XXX)
|
||||||
card=$(mktemp --tmpdir tarot.XXX)
|
trap 'rm $card' EXIT
|
||||||
trap 'rm $card' EXIT
|
reverse=$(${pkgs.coreutils}/bin/shuf -i0-1 -n1)
|
||||||
reverse=$(${pkgs.coreutils}/bin/shuf -i0-1 -n1)
|
if [ "$reverse" -eq 1 ]; then
|
||||||
if [ "$reverse" -eq 1 ]; then
|
${pkgs.imagemagick}/bin/convert -rotate 180 "$item" "$card"
|
||||||
${pkgs.imagemagick}/bin/convert -rotate 180 "$item" "$card"
|
else
|
||||||
else
|
${pkgs.coreutils}/bin/cp "$item" "$card"
|
||||||
${pkgs.coreutils}/bin/cp "$item" "$card"
|
fi
|
||||||
fi
|
printf 'HTTP/1.1 200 OK\r\n'
|
||||||
printf 'HTTP/1.1 200 OK\r\n'
|
printf 'Content-Type: %s\r\n' "$(${pkgs.file}/bin/file -ib "$card")"
|
||||||
printf 'Content-Type: %s\r\n' "$(${pkgs.file}/bin/file -ib "$card")"
|
printf 'Server: %s\r\n' "$Server"
|
||||||
printf 'Server: %s\r\n' "$Server"
|
printf 'Connection: close\r\n'
|
||||||
printf 'Connection: close\r\n'
|
printf 'Content-Length: %d\r\n' $(${pkgs.coreutils}/bin/wc -c < "$card")
|
||||||
printf 'Content-Length: %d\r\n' $(${pkgs.coreutils}/bin/wc -c < "$card")
|
printf '\r\n'
|
||||||
printf '\r\n'
|
cat "$card"
|
||||||
cat "$card"
|
exit
|
||||||
exit
|
fi
|
||||||
fi
|
;;
|
||||||
;;
|
esac
|
||||||
esac
|
'';
|
||||||
''
|
|
||||||
}'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
niveum.passport.services = [
|
niveum.passport.services = [
|
||||||
|
|||||||
Reference in New Issue
Block a user