dotfiles/modules/cli/bin/share.nix

22 lines
593 B
Nix
Raw Normal View History

2022-01-21 22:03:51 +01:00
{ pkgs }:
pkgs.writeShellApplication {
name = "share";
runtimeInputs = with pkgs; [ curl coreutils rofi p7zip xclip ];
text = ''
files="$(find "$HOME" -maxdepth 10 -type 'f' -not -path '*/.*' | rofi -dmenu -d 15 -p 'Files to share')"
password="$(rofi -dmenu -p 'Password for encryption')"
zipname="$HOME/Downloads/share-$(date +"%Y-%m-%d").zip"
if [[ $password == "" ]]; then
args=""
else
args="-p""$password"""
fi
7z a "$zipname" "$files" "$args" -mx9 > /dev/null
curl -s -F"file=@$zipname" 0x0.st | xclip -sel c
rm "$zipname"
'';
}