# PhotoBackup Perl server
The Perl implementation of PhotoBackup server. It provides a server and startup script
for [PhotoBackup](https://photobackup.github.io/) Android app. It was developed by
reading the [API docs](https://github.com/PhotoBackup/api/blob/master/api.raml)
and looking at the sourcecode of the
[bottle](https://github.com/PhotoBackup/server-bottle) and
[flask](https://github.com/PhotoBackup/server-flask) python implementations.
## Usage
# Initial setup of server config.
photobackup.pl init
# Launch server using config.
photobackup.pl run
## Description
### new()
Constructor.
Any args will be added to $self, overriding any defaults.
### init()
Create, or recreate the user's config file.
The user will be prompted for the following information:
Media root - Directory where the pictures will be stored.
Server password - The password to use for all HTTP operations.
Server port - Defaults to 8420.
Some rudimentary checking will be done for valid input.
### config()
Read and write server config file.
Returns undef if config file doesn't exist, or doesn't hold all required
data.
The config will be written to ~/.photobackup in INI format.
I'm reading and writing this simple INI file manually rather than using a
CPAN module so as to reduce the dependencies.
### run()
Launch the PhotoBackup web service using config from the conf file.
### stop()
Kill any running PhotoBackup web service.
### app()
Return the PSGI application subref.
## License
Copyright (C) 2015 Dave Webb.
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
## Author
Dave Webb <github@d5ve.com>