Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Utility to send files over network
D Groff Shell Makefile C
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.

sfn Build Status

A small and fast utility to send files over network.

Various notes

  • If you're running Arch Linux, you can install package sfn from AUR. However, it's slightly outdated (but I prefer the word "stable").
  • It won't compile with gdc on Ubuntu (Mint, Debian, etc.) because libphobos there is too old.

Building and running


  • D compiler of your choice (dmd, ldc or gdc)
  • make

If you already have all this, just type make (or make ldc, or make gdc) to build sources.

make install will install sfn to /usr/bin/ (other destinations are not supported yet). install also accepts DESTDIR variable allows you to set root folder different from / (for example: make DESTDIR=/tmp/mypkg install).

If you need to rebuild the manpage (typically you don't), install ronn and run make man.



sfn --listen [options] [files to send]
sfn --connect <address> [options] [files to send]

sfn will establish a connection, send all the files, receive all the files from another side and then exit.

-l and -s are aliases for --listen, -c is an alias for --connect.


  • --version, -v: Show sfn version and exit.
  • --help, -h: Show this text and exit.
  • --port, -p: Use specified port. Defaults to 3214.
  • --prefix, -f: Add prefix to received files' path and name. For example: /home/user/downloads/, sfn-, /etc/file-.
  • --no-external-ip, -n: Don't perform external IP detection and reverse DNS lookup.
  • --zenity, -z: Call zenity to select files using standard GTK dialog.
  • --no-integrity-check, -e: Disable integrity check after transfer. This option was added for compatibility with older versions of sfn.

Related projects

  • siphon — a bit outdated, but still compatible C implementation
Something went wrong with that request. Please try again.