Added documentation
This commit is contained in:
parent
3f14f50674
commit
f154c62f70
3 changed files with 120 additions and 2 deletions
117
doc/index.md
Normal file
117
doc/index.md
Normal file
|
@ -0,0 +1,117 @@
|
||||||
|
<style>
|
||||||
|
code {color:white;}
|
||||||
|
</style>
|
||||||
|
# lainsafecli documentation
|
||||||
|
|
||||||
|
## History
|
||||||
|
|
||||||
|
[delegao](https://kill-9.xyz/rocks/people/delegao) and I were talking about how much I hate the modern web. He runs <https://safe.delegao.moe> which is the same but with JS, so I think it sucked. I started to make lainsafe to replace lolisafe.
|
||||||
|
|
||||||
|
## Lainsafe installation
|
||||||
|
|
||||||
|
Just put index.html and upload.cgi in a http directory. I use fcgi to run my cgi scripts. So it's what i recommend. To install fcgi on debian, run: ```# apt install fcgiwrap```
|
||||||
|
|
||||||
|
here's an example configuration for lainsafe, using nginx.
|
||||||
|
|
||||||
|
~~~
|
||||||
|
server
|
||||||
|
{
|
||||||
|
server_name lainsafe.foo.tld;
|
||||||
|
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
root /var/www/lainsafe;
|
||||||
|
|
||||||
|
location ~ \.cgi$ {
|
||||||
|
gzip off;
|
||||||
|
include /etc/nginx/fastcgi_params;
|
||||||
|
fastcgi_pass unix:/var/run/fcgiwrap.socket;
|
||||||
|
fastcgi_index index.cgi;
|
||||||
|
fastcgi_param SCRIPT_FILENAME /var/www/lainsafe/$fastcgi_script_name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
~~~
|
||||||
|
|
||||||
|
## lainsafecli
|
||||||
|
|
||||||
|
lainsafecli is a command line interface for lainsafe. It can be used in whatever that runs perl. Instalation is simple: if you're running debian install the libwww-perl package. If you are not running debian, search for that package in your repositories. Or use ```# cpan -i LWP::UserAgent```
|
||||||
|
|
||||||
|
### Installation
|
||||||
|
|
||||||
|
I haven't made a package for lainsafecli yet. So instalation is basically:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# wget https://raw.githubusercontent.com/qorg11/lainsafe/master/lainsafecli \
|
||||||
|
-O /bin/lainsafecli && chmod +x /bin/lainsafecli
|
||||||
|
~~~
|
||||||
|
|
||||||
|
That will install lainsafecli, run ```lainsafecli``` to make sure it is installed.
|
||||||
|
|
||||||
|
### Configuration
|
||||||
|
|
||||||
|
lainsafecli is a simple software. So it has just 2 configurable
|
||||||
|
parameters. lainsafecli do not have a config file. So you have to
|
||||||
|
change these parameters in the executable file.
|
||||||
|
|
||||||
|
These parameters are located in the line 34 of lainsafecli.
|
||||||
|
|
||||||
|
```$DEFAULT_SERVER``` the server that will be used if --server is not
|
||||||
|
specified.
|
||||||
|
```$DISPLAY_ASCII``` By default is true, change to 0 if you don't want
|
||||||
|
the Lain ascii art to appear when you upload a file.
|
||||||
|
|
||||||
|
the most "official" lainsafe instance is <https://lainsafe.delegao.moe>.
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
|
||||||
|
Before 1b8373
|
||||||
|
|
||||||
|
~~~
|
||||||
|
USAGE: lainsafecli [--server] --file=FILE
|
||||||
|
~~~
|
||||||
|
|
||||||
|
After 1b8373
|
||||||
|
|
||||||
|
~~~
|
||||||
|
USAGE: lainsafecli [--server] FILE
|
||||||
|
~~~
|
||||||
|
|
||||||
|
|
||||||
|
for example:
|
||||||
|
|
||||||
|
```lainsafe --server=https://lainsafe.foo.bar sicp.pdf```
|
||||||
|
|
||||||
|
will upload sicp.pdf to lainsafe.foo.bar
|
||||||
|
|
||||||
|
### Sample output
|
||||||
|
|
||||||
|
In this output, ```$DEFAULT_SERVER``` is lainsafe.delegao.moe. and ```
|
||||||
|
$DISPLAY_ASCII``` equals 1 (true)
|
||||||
|
|
||||||
|
~~~
|
||||||
|
lainsafecli sicp.pdf
|
||||||
|
|
||||||
|
_..-- ----- --.._
|
||||||
|
,-'' `-.
|
||||||
|
, \
|
||||||
|
/ \
|
||||||
|
/ ` . \
|
||||||
|
' / || ;
|
||||||
|
; ^/| |/ | |
|
||||||
|
| /v /\`-'v√\'-|\ ,
|
||||||
|
| /v` ,--- ---- .^.| ;
|
||||||
|
: | /´@@`, ,@@`\ | ;
|
||||||
|
' | '. @@ / \@@ / |\ |;
|
||||||
|
| ^| ----- --- | \/||
|
||||||
|
` |` | /\ /
|
||||||
|
\ \ |/ |,
|
||||||
|
' ; \ /| |
|
||||||
|
` \ -- / | |
|
||||||
|
` `. .-' | /
|
||||||
|
v,- `;._ _.; | |
|
||||||
|
`'`\ |-_ -^'^'| |
|
||||||
|
------ |/
|
||||||
|
|
||||||
|
https://lainsafe.delegao.moe/files/nzOhDKtB.pdf
|
||||||
|
~~~
|
|
@ -24,6 +24,7 @@ my $filename = $q->param('file');
|
||||||
my $upload_dir = "files/";
|
my $upload_dir = "files/";
|
||||||
print $q->header();
|
print $q->header();
|
||||||
$size = $ENV{CONTENT_LENGTH};
|
$size = $ENV{CONTENT_LENGTH};
|
||||||
|
|
||||||
# Configuration
|
# Configuration
|
||||||
|
|
||||||
$MAX_SIZE = 1024*1024*10; # Change for your size
|
$MAX_SIZE = 1024*1024*10; # Change for your size
|
||||||
|
@ -34,6 +35,7 @@ if($filename eq "")
|
||||||
print("What are you looking for?");
|
print("What are you looking for?");
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($size > $MAX_SIZE)
|
if($size > $MAX_SIZE)
|
||||||
{
|
{
|
||||||
print("Max size for a file is $MAX_SIZE_MB MBs");
|
print("Max size for a file is $MAX_SIZE_MB MBs");
|
||||||
|
@ -41,7 +43,7 @@ if($size > $MAX_SIZE)
|
||||||
}
|
}
|
||||||
|
|
||||||
my $extension = $filename;
|
my $extension = $filename;
|
||||||
$extension =~ s/.*\.//;
|
$extension =~ s/.*\.//; # tar.gz sucks with this
|
||||||
|
|
||||||
my @chars = ("A".."Z", "a".."z");
|
my @chars = ("A".."Z", "a".."z");
|
||||||
my $string;
|
my $string;
|
||||||
|
|
|
@ -115,4 +115,3 @@ $req = $ua->post($url_to_upload,
|
||||||
|
|
||||||
print $ASCII_ART if $DISPLAY_ASCII;
|
print $ASCII_ART if $DISPLAY_ASCII;
|
||||||
print $DEFAULT_SERVER . "/" . $req->{_content} . "\n";
|
print $DEFAULT_SERVER . "/" . $req->{_content} . "\n";
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue