32 lines
2.2 KiB
Markdown
32 lines
2.2 KiB
Markdown
# Project Pie Cannon
|
|
Pie Cannon is an easy way to upload files to the internet and get a shareable link. File goes in, link comes out.
|
|
|
|
It doesn't come with a backend because you're expected to bring your own. A plain old FTP/SFTP+HTTP server will work fine, but support for more backends is on the way.
|
|
|
|
This project is separated into a library and a desktop application (targeting mainly GNU/Linux), with an Android application in the works.
|
|
|
|
## How to build
|
|
Run `mvn clean install` in this directory to build the `lib` and `desktop` modules.
|
|
|
|
If the `ANDROID_HOME` environment variable exists, `android` will also be built.
|
|
|
|
Under GNU Guix System, the `guix_activate_environment` script can be used to create an environment that contains necessary packages for building this app.
|
|
|
|
### F-Droid
|
|
If the `fdroid` command is available, the app can be built using `fdroid build`. The Guix environment script will add the `fdroidserver` package to the generated environment.
|
|
|
|
## How to install
|
|
### GNU/Linux
|
|
`desktop` contains a wrapper script that will call the version of `piecannon-desktop-app` installed in your maven repository, and then open the uploaded file in your browser. You can copy or symlink this wrapper script anywhere. Typically you would put it in `~/bin` or `~/.local/bin`. Make sure that directory is in your `PATH`.
|
|
|
|
### Windows
|
|
TODO
|
|
|
|
### Mac OS
|
|
TODO
|
|
|
|
## How to use
|
|
Place a `servers.json` in the Pie Cannon data directory. For GNU/Linux this is `XDG_DATA_HOME` (by default this would be `~/.local/share/piecannon`) (create this directory if it does not exist. For Android this would be the app's "externalFilesDir" (probably something like `Android/data/net.monarchpass.piecannon/files` - the app will tell you when you launch it). See `servers.example.json` for an example of such a file. Whenever you initiate a file upload, Pie Cannon will select one of your defined servers at random and upload the file.
|
|
|
|
For FTP/SFTP servers (the only supported types as of now), the `path` is relative to your home directory and should be where `url` points to. i.e. a file uploaded to `path` should be downloadable at `url`. In the future Pie Cannon should be able to get SSH credentials from your agent so you won't need to put a password in this file.
|