mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 09:02:15 -06:00
add contrib
This commit is contained in:
parent
f550a8171d
commit
7aba9cb76b
15
contrib/README.md
Normal file
15
contrib/README.md
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
### [`copyparty.bat`](copyparty.bat)
|
||||||
|
* launches copyparty with no arguments (anon read+write within same folder)
|
||||||
|
* intended for windows machines with no python.exe in PATH
|
||||||
|
* works on windows, linux and macos
|
||||||
|
* assumes `copyparty-sfx.py` was renamed to `copyparty.py` in the same folder as `copyparty.bat`
|
||||||
|
|
||||||
|
### [`index.html`](index.html)
|
||||||
|
* drop-in redirect from an httpd to copyparty
|
||||||
|
* assumes the webserver and copyparty is running on the same server/IP
|
||||||
|
* modify `10.13.1.1` as necessary if you wish to support browsers without javascript
|
||||||
|
|
||||||
|
# OS integration
|
||||||
|
init-scripts to start copyparty as a service
|
||||||
|
* [`systemd/copyparty.service`](systemd/copyparty.service)
|
||||||
|
* [`openrc/copyparty`](openrc/copyparty)
|
33
contrib/copyparty.bat
Normal file
33
contrib/copyparty.bat
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
exec python "$(dirname "$0")"/copyparty.py
|
||||||
|
|
||||||
|
@rem on linux, the above will execute and the script will terminate
|
||||||
|
@rem on windows, the rest of this script will run
|
||||||
|
|
||||||
|
@echo off
|
||||||
|
cls
|
||||||
|
|
||||||
|
set py=
|
||||||
|
for /f %%i in ('where python 2^>nul') do (
|
||||||
|
set "py=%%i"
|
||||||
|
goto c1
|
||||||
|
)
|
||||||
|
:c1
|
||||||
|
|
||||||
|
if [%py%] == [] (
|
||||||
|
for /f %%i in ('where /r "%localappdata%\programs\python" python 2^>nul') do (
|
||||||
|
set "py=%%i"
|
||||||
|
goto c2
|
||||||
|
)
|
||||||
|
)
|
||||||
|
:c2
|
||||||
|
|
||||||
|
if [%py%] == [] set "py=c:\python27\python.exe"
|
||||||
|
|
||||||
|
if not exist "%py%" (
|
||||||
|
echo could not find python
|
||||||
|
echo(
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
|
||||||
|
start cmd /c %py% "%~dp0\copyparty.py"
|
43
contrib/index.html
Normal file
43
contrib/index.html
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>⇆🎉 redirect</title>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<style>
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
font-family: sans-serif;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
padding: 1em 2em;
|
||||||
|
font-size: 1.5em;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
font-size: 1.2em;
|
||||||
|
padding: .1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<span id="desc">you probably want</span> <a id="redir" href="//10.13.1.1:3923/">copyparty</a>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
var a = document.getElementById('redir'),
|
||||||
|
proto = window.location.protocol.indexOf('https') === 0 ? 'https' : 'http',
|
||||||
|
loc = window.location.hostname || '127.0.0.1',
|
||||||
|
port = a.getAttribute('href').split(':').pop().split('/')[0],
|
||||||
|
url = proto + '://' + loc + ':' + port + '/';
|
||||||
|
|
||||||
|
a.setAttribute('href', url);
|
||||||
|
document.getElementById('desc').innerHTML = 'redirecting to';
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
window.location.href = url;
|
||||||
|
}, 500);
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
18
contrib/openrc/copyparty
Normal file
18
contrib/openrc/copyparty
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
#!/sbin/openrc-run
|
||||||
|
|
||||||
|
# this will start `/usr/local/bin/copyparty-sfx.py`
|
||||||
|
# and share '/mnt' with anonymous read+write
|
||||||
|
#
|
||||||
|
# installation:
|
||||||
|
# cp -pv copyparty /etc/init.d && rc-update add copyparty
|
||||||
|
#
|
||||||
|
# you may want to:
|
||||||
|
# change '/usr/bin/python' to another interpreter
|
||||||
|
# change '/mnt::a' to another location or permission-set
|
||||||
|
|
||||||
|
name="$SVCNAME"
|
||||||
|
command_background=true
|
||||||
|
pidfile="/var/run/$SVCNAME.pid"
|
||||||
|
|
||||||
|
command="/usr/bin/python /usr/local/bin/copyparty-sfx.py"
|
||||||
|
command_args="-q -v /mnt::a"
|
19
contrib/systemd/copyparty.service
Normal file
19
contrib/systemd/copyparty.service
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# this will start `/usr/local/bin/copyparty-sfx.py`
|
||||||
|
# and share '/mnt' with anonymous read+write
|
||||||
|
#
|
||||||
|
# installation:
|
||||||
|
# cp -pv copyparty.service /etc/systemd/system && systemctl enable --now copyparty
|
||||||
|
#
|
||||||
|
# you may want to:
|
||||||
|
# change '/usr/bin/python' to another interpreter
|
||||||
|
# change '/mnt::a' to another location or permission-set
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=copyparty file server
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/bin/python /usr/local/bin/copyparty-sfx.py -q -v /mnt::a
|
||||||
|
ExecStartPre=/bin/bash -c 'mkdir -p /run/tmpfiles.d/ && echo "x /tmp/pe-copyparty*" > /run/tmpfiles.d/copyparty.conf'
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Loading…
Reference in a new issue