Transfer.sh – File sharing from the command line
51–60 of 117 posts
Re: Transfer.sh – File sharing from the command line
#52Earlier quoted context omitted.
Simplest explanation I can think of: Static binaries have no dependencies. They should just run and not bark about missing (shared/dynamic) libraries, nor require you to install them. Of course, even static binaries rely on some basic level of compatibility; typically system-level things that don't change much. Dynamically-linked binaries have the potential to create a massive dependency graph that can hard or even i…
Those annoying dependency graphs provide both standardized visibility and also the ability to fix and patch components independently of each other.
Re: Transfer.sh – File sharing from the command line
#53Earlier quoted context omitted.
Could you please go into details like what's basic difference b/w static binaries and apps which use dynamic linking. What are the benefits of one over another? Something like grokking this concept for once and all :D
Simplest explanation I can think of: Static binaries have no dependencies. They should just run and not bark about missing (shared/dynamic) libraries, nor require you to install them. Of course, even static binaries rely on some basic level of compatibility; typically system-level things that don't change much. Dynamically-linked binaries have the potential to create a massive dependency graph that can hard or even i…
Re: Transfer.sh – File sharing from the command line
#54Earlier quoted context omitted.
I built a proof of concept project that was a lot like transfer.sh at one point in time. My solution was to not only have a time limit but a download limit as well. I'd guess most people transferring files from the command line want to transfer something from one machine to another, or maybe to a few other machines. I was going to allow a transfer limit of 10 transfers before the file/link went dead, which would hope…
Unless you are storing hashes, what would prevent someone from writing a script that simply reuploads the file to your service after downloading? That would increase the share limit.
Re: Transfer.sh – File sharing from the command line
#55On a related note, I recently learnt that if you're on the same local network, there's a much faster way to transfer than the old tar|nc trick[0]: udpcast. You do $ udp-sender --min-receivers 1 --full-duplex --pipe 'tar czvf - theDirectory' on the sender and $ udp-receiver --pipe 'tar xzp' and at least on my home network it's 11x faster than tar|nc. There are some caveats[1] about udp not working well everywhere, and…
Re: Transfer.sh – File sharing from the command line
#56I like it! But for me ssh already provides a simple and secure way to move files from one place or another.. tar -cf - ./files.txt ./orDir/ | ssh host "(cd /dest/dir; tar -xf -)" Given that ssh it so ubiquitous I think this will always be my go to.
@{cd fromdir && tar cp .} | @{cd todir && tar xT}
Re: Transfer.sh – File sharing from the command line
#57During Hacktoberfest I also started my own, written in Go, so I could have my friends can use it without installing a Python ecosystem [8].
[1]: https://github.com/nils-werner/zget
[2]: https://github.com/cowbell/sharedrop
[3]: https://github.com/webtorrent/instant.io
[4]: https://github.com/kern/filepizza
[5]: https://github.com/warner/magic-wormhole
[6]: https://github.com/zerotier/toss
Re: Transfer.sh – File sharing from the command line
#58Re: Transfer.sh – File sharing from the command line
#59Earlier quoted context omitted.
Static binaries are magic :)
Could you please go into details like what's basic difference b/w static binaries and apps which use dynamic linking. What are the benefits of one over another? Something like grokking this concept for once and all :D
* single binary that you can scp (or use transfer.sh haha) into the production machine and run; no runtime environments, package installation etc.
* two different applications can depend on different versions of a library without any intermediate package manager or virtual environment
* guaranteed execution: related to the first point, but I see enough merit in this to make it a separate point
Cons:
* If there's a security issue in a commonly used library (database/sql, for example), you'll need to patch every application that uses it. With dynamic dependencies, you just patch the library.