From 00fa5aa042e254914371398b2ce30eabca1194eb Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 10 Aug 2021 19:57:00 +0200 Subject: flameshot: add imgur patch 0.10.1 Also 21.05 --- krebs/5pkgs/override/default.nix | 3 +++ 1 file changed, 3 insertions(+) (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/override/default.nix b/krebs/5pkgs/override/default.nix index 4cb6a1cb4..c2149ae55 100644 --- a/krebs/5pkgs/override/default.nix +++ b/krebs/5pkgs/override/default.nix @@ -18,6 +18,9 @@ self: super: { "0.9.0" = [ ./flameshot/flameshot_imgur_0.9.0.patch ]; + "0.10.1" = [ + ./flameshot/flameshot_imgur_0.9.0.patch + ]; }.${old.version}; }); -- cgit v1.2.3 From f01a67acc19215f6f779ce9a78b86912f7f07f76 Mon Sep 17 00:00:00 2001 From: lassulus Date: Wed, 25 Aug 2021 12:04:38 +0200 Subject: htgen-cyberlocker: init at 1.0.0 --- krebs/5pkgs/simple/htgen-cyberlocker/default.nix | 29 ++++++++ .../simple/htgen-cyberlocker/src/htgen-cyberlocker | 79 ++++++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 krebs/5pkgs/simple/htgen-cyberlocker/default.nix create mode 100644 krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/htgen-cyberlocker/default.nix b/krebs/5pkgs/simple/htgen-cyberlocker/default.nix new file mode 100644 index 000000000..515ea3cf9 --- /dev/null +++ b/krebs/5pkgs/simple/htgen-cyberlocker/default.nix @@ -0,0 +1,29 @@ +with import ; +{ pkgs, stdenv }: +stdenv.mkDerivation rec { + pname = "htgen-cyberlocker"; + version = "1.0.0"; + + src = ./src; + + buildPhase = '' + ( + exec > htgen-cyberlocker + echo PATH=${makeBinPath [ + pkgs.coreutils + pkgs.file + pkgs.findutils + pkgs.gnugrep + pkgs.jq + pkgs.nix + pkgs.utillinux + ]} + echo STATEDIR=${shell.escape "\${STATEDIR-$HOME}"} + cat $src/htgen-cyberlocker + ) + ''; + + installPhase = '' + install -D htgen-cyberlocker $out/bin/htgen-cyberlocker + ''; +} diff --git a/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker b/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker new file mode 100644 index 000000000..6c3ed6552 --- /dev/null +++ b/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker @@ -0,0 +1,79 @@ +delete_response() { + jq -n -r \ + --arg server "$Server" \ + ' + [ "HTTP/1.1 204 OK\r" + , "Connection: close\r" + , "Server: \($server)\r" + , "\r" + ][] + ' +} + +file_response() {( + type=$(file -ib "$1") + size=$(wc -c < "$1") + jq -n -r \ + --arg type "$type" \ + --arg size "$size" \ + --arg server "$Server" \ + ' + [ "HTTP/1.1 200 OK\r" + , "Connection: close\r" + , "Content-Length: \($size)\r" + , "Content-Type: \($type)\r" + , "Server: \($server)\r" + , "\r" + ][] + ' + cat "$1" +)} + +read_uri() { + jq -cn --arg uri "$1" ' + $uri | + capture("^((?[^:]*):)?(//(?[^/]*))?(?[^?#]*)([?](?[^#]*))?([#](?.*))?$") | + . + { + query: (.query | if . != null then + split("&") | + map(split("=") | {key:.[0],value:.[1]}) | + from_entries + else . end) + } + ' +} + +uri=$(read_uri "$Request_URI") +path=$(jq -nr --argjson uri "$uri" '$uri.path') + +case "$Method $path" in + 'POST /'*|'PUT /'*) + content=$(mktemp -t htgen.$$.content.XXXXXXXX) + trap "rm $content >&2" EXIT + + head -c $req_content_length > $content + + item=$STATEDIR/items/$(echo "$path" | jq -rR @uri) + + mkdir -v -p $STATEDIR/items >&2 + cp -v $content $item >&2 + + scheme=${req_x_forwarded_proto-http} + link=$scheme://$req_host/$path + + ;; + 'GET /'*) + item=$STATEDIR/items/$(echo "$path" | jq -rR @uri) + if [ -e "$item" ]; then + file_response "$item" + exit + fi + ;; + 'DELETE /'*) + item=$STATEDIR/items/$(echo "$path" | jq -rR @uri) + if [ -e "$item" ]; then + rm "$item" + delete_response + exit + fi +esac -- cgit v1.2.3 From 3c35eca7e892a43c1d2874311c504afc3dc6146e Mon Sep 17 00:00:00 2001 From: lassulus Date: Sun, 29 Aug 2021 14:00:18 +0200 Subject: cyberlocker-tools: init --- krebs/5pkgs/simple/cyberlocker-tools/default.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 krebs/5pkgs/simple/cyberlocker-tools/default.nix (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/cyberlocker-tools/default.nix b/krebs/5pkgs/simple/cyberlocker-tools/default.nix new file mode 100644 index 000000000..420acb192 --- /dev/null +++ b/krebs/5pkgs/simple/cyberlocker-tools/default.nix @@ -0,0 +1,19 @@ +{ pkgs }: +pkgs.symlinkJoin { + name = "cyberlocker-tools"; + paths = [ + (pkgs.writers.writeDashBin "cput" '' + set -efu + path=$1 + + ${pkgs.curl}/bin/curl -Ss --data-binary @- "http://c.r/$path" + echo "http://c.r/$path" + '') + (pkgs.writers.writeDashBin "cdel" '' + set -efu + path=$1 + + ${pkgs.curl}/bin/curl -X DELETE "http://c.r/$path" + '') + ]; +} -- cgit v1.2.3 From 0276209ad400c448525a9475701b89fcf14b5c56 Mon Sep 17 00:00:00 2001 From: lassulus Date: Sun, 29 Aug 2021 14:15:47 +0200 Subject: cyberlocker-tools: make path optional for upload --- krebs/5pkgs/simple/cyberlocker-tools/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/cyberlocker-tools/default.nix b/krebs/5pkgs/simple/cyberlocker-tools/default.nix index 420acb192..80593bcae 100644 --- a/krebs/5pkgs/simple/cyberlocker-tools/default.nix +++ b/krebs/5pkgs/simple/cyberlocker-tools/default.nix @@ -4,7 +4,7 @@ pkgs.symlinkJoin { paths = [ (pkgs.writers.writeDashBin "cput" '' set -efu - path=$1 + path=''${1:-$(hostname)} ${pkgs.curl}/bin/curl -Ss --data-binary @- "http://c.r/$path" echo "http://c.r/$path" -- cgit v1.2.3 From 1ac0608fc53214897703e4a163186a4586c73bb6 Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 31 Aug 2021 19:26:37 +0200 Subject: cyberlocker-tools: pass fail --- krebs/5pkgs/simple/cyberlocker-tools/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/cyberlocker-tools/default.nix b/krebs/5pkgs/simple/cyberlocker-tools/default.nix index 80593bcae..d43be1d69 100644 --- a/krebs/5pkgs/simple/cyberlocker-tools/default.nix +++ b/krebs/5pkgs/simple/cyberlocker-tools/default.nix @@ -6,14 +6,14 @@ pkgs.symlinkJoin { set -efu path=''${1:-$(hostname)} - ${pkgs.curl}/bin/curl -Ss --data-binary @- "http://c.r/$path" + ${pkgs.curl}/bin/curl -fSs --data-binary @- "http://c.r/$path" echo "http://c.r/$path" '') (pkgs.writers.writeDashBin "cdel" '' set -efu path=$1 - ${pkgs.curl}/bin/curl -X DELETE "http://c.r/$path" + ${pkgs.curl}/bin/curl -f -X DELETE "http://c.r/$path" '') ]; } -- cgit v1.2.3 From 34930b3db2d4386e4826ae782f0c24044e45b9c5 Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 31 Aug 2021 20:26:53 +0200 Subject: htgen-cyberlocker: remove crud, exit after success POST --- krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker b/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker index 6c3ed6552..ab9c4e8e3 100644 --- a/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker +++ b/krebs/5pkgs/simple/htgen-cyberlocker/src/htgen-cyberlocker @@ -57,10 +57,7 @@ case "$Method $path" in mkdir -v -p $STATEDIR/items >&2 cp -v $content $item >&2 - - scheme=${req_x_forwarded_proto-http} - link=$scheme://$req_host/$path - + exit ;; 'GET /'*) item=$STATEDIR/items/$(echo "$path" | jq -rR @uri) -- cgit v1.2.3 From e8dc3141ae6a7f109c6ce9e5852dd1a62c60d543 Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 31 Aug 2021 22:44:27 +0200 Subject: cyberlocker-tools: normalize url --- krebs/5pkgs/simple/cyberlocker-tools/default.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'krebs/5pkgs') diff --git a/krebs/5pkgs/simple/cyberlocker-tools/default.nix b/krebs/5pkgs/simple/cyberlocker-tools/default.nix index d43be1d69..6e6563fb1 100644 --- a/krebs/5pkgs/simple/cyberlocker-tools/default.nix +++ b/krebs/5pkgs/simple/cyberlocker-tools/default.nix @@ -5,15 +5,19 @@ pkgs.symlinkJoin { (pkgs.writers.writeDashBin "cput" '' set -efu path=''${1:-$(hostname)} + path=$(echo "/$path" | sed -E 's:/+:/:') + url=http://c.r$path - ${pkgs.curl}/bin/curl -fSs --data-binary @- "http://c.r/$path" - echo "http://c.r/$path" + ${pkgs.curl}/bin/curl -fSs --data-binary @- "$url" + echo "$url" '') (pkgs.writers.writeDashBin "cdel" '' set -efu path=$1 + path=$(echo "/$path" | sed -E 's:/+:/:') + url=http://c.r$path - ${pkgs.curl}/bin/curl -f -X DELETE "http://c.r/$path" + ${pkgs.curl}/bin/curl -f -X DELETE "$url" '') ]; } -- cgit v1.2.3