22 lines
593 B
Nix
22 lines
593 B
Nix
{ 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"
|
|
'';
|
|
}
|