Skip to content

0.0.1

Choose a tag to compare

@github-actions github-actions released this 11 Aug 14:20
· 7 commits to main since this release

Local Drive is a private alternative to Google Drive that runs on a computer you own. Your files stay on your machine. There is no account to make with anyone, no subscription, and no company in the middle.

This is the first release. It works, and it is also version 0.0.1, so keep a backup of anything you care about rather than trusting this as the only copy of it.

Install

Linux

wget https://github.com/MultiX0/LocalDrive/releases/latest/download/server
chmod +x server
./server

Windows, in PowerShell

Invoke-WebRequest https://github.com/MultiX0/LocalDrive/releases/latest/download/server.exe -OutFile server.exe
.\server.exe

That is the whole install. One file, no runtime, nothing to configure first. It asks a few questions, generates every secret it needs, and starts. It also offers to put itself on your PATH and to keep running after a reboot, so after the first run you type localdrive from anywhere.

On a Raspberry Pi or an ARM server use server-arm64 instead of server.

Then install an app

The server has no browser interface in this release. Install one of the apps and point it at the address setup printed:

Device Download
Android localdrive-client.apk
Windows localdrive-client-setup.exe, or localdrive-client-windows.zip for a folder you can carry
Linux localdrive-client-linux.tar.gz

The first account to sign up becomes the admin. That is you. After that the server refuses to create another one that way.

Which server file

Running the server on Download
Linux, most machines server
Linux on ARM, such as a Raspberry Pi server-arm64
Windows server.exe

What it does

  • Files, folders, versions, and a trash that holds things for 30 days
  • Share a link with anyone, with an optional password, an optional expiry, and view only or download. Change any of that later without the link changing
  • Share with someone on your server directly, with no usernames to type
  • A photo and video gallery, grouped by month and ordered by when things were taken rather than when they were uploaded
  • Uploads survive a dropped connection and resume from the exact byte they stopped at
  • Plug in a USB drive and use it as storage, on Linux
  • A new device is held for approval before it gets in, and a correct code from your authenticator lets one straight through, so a lost phone is not a locked account
  • Two factor authentication, required on admin accounts and optional on the rest
  • English and Arabic, each with its own typeface and full right to left layout

Being an admin means you manage accounts, storage and settings. It does not mean you can read anyone else's files.

HTTPS

Plain HTTP is the default, because no certificate authority issues certificates for an address on a home network.

Set LD_DOMAIN to a domain pointing at the machine and the binary requests a real certificate and renews it on its own, with no proxy and nothing else to install. That needs ports 80 and 443 reachable, since those are the only two Let's Encrypt connects back on.

The port keeps answering plain HTTP for the machine's own addresses at the same time, so setting a domain does not cost you the way in from your own network.

Worth knowing before you install

  • No browser interface. The server serves the API and the apps. A browser UI exists in the source but is not built or shipped in this release.
  • No macOS or iOS builds. Both build from source; neither is published here. The macOS server is two commands: cd server && go build ./cmd/localdrive.
  • The Windows installer is not code signed, so Windows will warn about an unknown publisher.
  • USB drive management needs Linux. On Windows and macOS, point Local Drive at a folder instead.
  • Video thumbnails need ffmpeg. If it is missing the server downloads one on Linux and Windows, or you can install it yourself and set LOCALDRIVE_FETCH_FFMPEG=false.

Verifying a download

SHA256SUMS lists a hash for every file here.

sha256sum -c SHA256SUMS

MIT licensed. Documentation is at https://localdrive.iprog.dev/docs and in the repository under docs/.