this post was submitted on 19 Feb 2025
1 points (100.0% liked)

Self-Hosted Alternatives to Popular Services

224 readers
3 users here now

A place to share, discuss, discover, assist with, gain assistance for, and critique self-hosted alternatives to our favorite web apps, web...

founded 2 years ago
MODERATORS
 
This is an automated archive made by the Lemmit Bot.

The original was posted on /r/selfhosted by /u/thehelpfulidiot on 2025-02-18 23:27:03+00:00.


Hey r/selfhosted,

Yesterday, I introduced GhostFile โ€“ a temporary, on-demand file uploader that shuts down automatically after use. It was built for those quick file transfers where a full-fledged file server (like SMB, NFS, or even PairDrop) is overkill AND ALLOWS TRANSFERRING FILES TO A TERMINAL SYSTEM.

๐Ÿ”ฅ New in This Update โ€“ Standalone Binary!

Thanks to community feedback, you no longer need Python or Docker to run GhostFile! Now, you can just download the binary, make it executable, and run it from anywhere.

๐Ÿ‘‰ No dependencies โ€“ Works out of the box

๐Ÿ‘‰ Can be placed in your $PATH โ€“ Call it from any directory

๐Ÿ‘‰ Files upload directly to where you launched it

๐Ÿ› ๏ธ How It Works

Instead of setting up Python or Docker, just:

1๏ธโƒฃ Download the Latest Binary

Choose the correct binary based on CPU architecture.

๐Ÿ–ฅ๏ธ For x86_64 (Intel/AMD)

wget -O ghostfile $(curl -s https://api.github.com/repos/jon6fingrs/ghostfile/releases/latest | grep "browser_download_url" | grep "ghostfile\"$" | cut -d '"' -f 4)

๐Ÿ For ARM64 (Raspberry Pi, Apple Silicon)

wget -O ghostfile $(curl -s https://api.github.com/repos/jon6fingrs/ghostfile/releases/latest | grep "browser_download_url" | grep "ghostfile-arm64" | cut -d '"' -f 4)

2๏ธโƒฃ Make It Executable

chmod +x ghostfile

3๏ธโƒฃ (Optional) Move It to Your PATH

To use ghostfile from anywhere:

sudo mv ghostfile /usr/local/bin/

Now, you can launch GhostFile from any directory. Uploaded files will appear exactly where you run it!

๐Ÿš€ Running GhostFile

Just type:

ghostfile

This will:

๐Ÿ‘‰ Start a temporary web server on 0.0.0.0:5000

๐Ÿ‘‰ Let you upload multiple files via drag & drop or file picker

๐Ÿ‘‰ Save them in the directory where ghostfile was executed

๐Ÿ‘‰ Automatically shut down once the upload is complete

Example Workflow

cd ~/Downloads
ghostfile

Now, any file uploaded will appear in ~/Downloads.

Need to upload to a specific directory? Just cd there first, then run ghostfile.

โš™๏ธ Command-Line Options

GhostFile supports the following command-line switches:

ghostfile --help

Actual Output:

usage: ghostfile [-h] [--dir DIR] [--host HOST] [--port PORT]

A Flask file uploader that stops after handling an upload.

optional arguments:
  -h, --help   show this help message and exit
  --dir DIR    Directory to save uploaded files (default: current directory).
  --host HOST  Host/IP to bind to (default: 0.0.0.0).
  --port PORT  Port to listen on (default: 5000).

Examples:

  • Use a custom upload directory:ghostfile --dir /home/user/my_uploads
  • Run on a different port (e.g., 8080 instead of 5000):ghostfile --port 8080
  • Specify a different network interface (e.g., localhost only):ghostfile --host 127.0.0.1
  • Run with a custom directory, port, and host:ghostfile --dir /tmp/uploads --port 9090 --host 192.168.1.100

๐Ÿ’ก Why Use GhostFile?

๐Ÿ‘‰ On-demand file transfers โ€“ No need to set up persistent services

๐Ÿ‘‰ Works anywhere โ€“ No dependencies needed

๐Ÿ‘‰ LAN-friendly โ€“ Accessible from any device on your network

๐Ÿ‘‰ Zero overhead โ€“ Start, upload, and it shuts down

โš ๏ธ NOT a Persistent File Server

GhostFile is not meant for long-term file hosting. It is designed for:

  • Quick, temporary file transfers between machines
  • One-time uploads where other tools aren't practical
  • On-the-go use without keeping a service running

Once you upload your files, the server stops itself. No cleanup needed.

๐Ÿ–ผ๏ธ Screenshot

Here's what GhostFile looks like in action:

Screenshot

๐ŸŒ Get GhostFile

๐Ÿ’พ GitHub Repo:

Would love to hear your thoughts! ๐Ÿš€ Have feature requests? Let me know in the comments. ๐Ÿ––

no comments (yet)
sorted by: hot top controversial new old
there doesn't seem to be anything here