diff --git a/home/shell/default.nix b/home/shell/default.nix index c346f5d..e301aab 100644 --- a/home/shell/default.nix +++ b/home/shell/default.nix @@ -7,5 +7,6 @@ ./starship.nix ./yazi.nix ./zoxide.nix + ./transfer.nix ]; } diff --git a/home/shell/transfer.nix b/home/shell/transfer.nix new file mode 100644 index 0000000..97eaaf5 --- /dev/null +++ b/home/shell/transfer.nix @@ -0,0 +1,37 @@ +{ + pkgs, + osConfig, + ... +}: { + home.packages = [ + (pkgs.writeShellScriptBin "transfer" '' + PASSWORD=$(sed 's/.*="\(.*\)"/\1/' ${osConfig.age.secrets.transferSh.path}) + + + if [ -z "$PASSWORD" ]; then + echo "Error: Password not found." + return 1 + fi + + file_path="$1" + if [ -z "$file_path" ]; then + echo "Usage: transfer " + return 1 + fi + + response=$(curl -sD - --user "jsw:$PASSWORD" --progress-bar --upload-file "$file_path" "https://share.jsw.tf/$(basename "$file_path")") + + if [ $? -eq 0 ]; then + DELETE=$(echo "$response" | grep x-url-delete | sed "s/.*\///") + URL=$(echo "$response" | tail -n1) + + echo "Delete code: $DELETE" + echo "URL: $URL" + else + echo "Upload failed." + return 1 + fi + echo + '') + ]; +} diff --git a/hosts/lapserv/default.nix b/hosts/lapserv/default.nix index 0b3bb51..3a5013f 100644 --- a/hosts/lapserv/default.nix +++ b/hosts/lapserv/default.nix @@ -4,4 +4,11 @@ ]; niksos.server = true; + + systemd.sleep.extraConfig = '' + AllowSuspend=no + AllowHibernation=no + AllowHybridSleep=no + AllowSuspendThenHibernate=no + ''; } diff --git a/secrets/default.nix b/secrets/default.nix index e2f7a80..93ab03c 100644 --- a/secrets/default.nix +++ b/secrets/default.nix @@ -1,6 +1,9 @@ { age.secrets = { - transferSh.file = ./transfer-sh.age; + transferSh = { + file = ./transfer-sh.age; + owner = "jsw"; + }; password.file = ./password.age; }; }