A: omg you're piping curl to bash! so insecure!!
B: well wait a second, i) you can just curl the script & inspect it before running it if you want ii) step-by-step install instructions still require that you trust the source of the code and iii) how is installing a precompiled binary any more secure? All scenarios short of personally auditing the source code require you to trust someone.
A: Hmm ok well I guess so.
~the end~ This is how this conversation has gone down the last 5 times I saw it. Can we please discuss the tool itself now?
I would like to use a package management tool in the future.
(My personal preference would be to deploy the service on my own VPS, though.)
> filename=$(echo "$1" | sed 's/\// /g' | awk '{ print $4 }')
1. You could remove the sed, if you change the field separator:
$(echo "$1" | awk 'BEGIN {FS="/"} {print $5}'
(this might be better for file names with spaces in them; though, if I understand your use case, this will never happen, but you might need to deal with space-to-%20 in wsend-gpg and then %20-to-space in wget-gpg...)2. Or you could just replace this with:
filename=$(basename "$1")
> filenamed=$(echo "$filename" | sed 's/.gpg//')3. The problem that this cuts the first occurrence of .gpg in the file name, so nitpick.gpg.nitpick.gpg will become nitpick.nitpick.gpg instead of nitpick.gpg.nitpick
To remove this substring from the end of the string, you can probably replace the pattern with a greedy one or just use:
filenamed=${filename%.gpg}
EDIT: previous related discussions:https://news.ycombinator.com/item?id=6083884
https://news.ycombinator.com/item?id=6158719
https://news.ycombinator.com/item?id=6179424
I like your persistence and glad you finally made it to the front page. Good luck.
Since you will probably iterate new versions fast and update, may I suggest embedding an update checker into the program. Atleast until you get properly setup in the different distro repo's.
please provide ebuild and add to gentoo portage