diff --git a/bin/partyfuse-streaming.py b/bin/partyfuse-streaming.py index df4938e8..cc0633e1 100755 --- a/bin/partyfuse-streaming.py +++ b/bin/partyfuse-streaming.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 from __future__ import print_function, unicode_literals -"""copyparty-fuse-streaming: remote copyparty as a local filesystem""" +"""partyfuse-streaming: remote copyparty as a local filesystem""" __author__ = "ed " __copyright__ = 2020 __license__ = "MIT" @@ -12,7 +12,7 @@ __url__ = "https://github.com/9001/copyparty/" mount a copyparty server (local or remote) as a filesystem usage: - python copyparty-fuse-streaming.py http://192.168.1.69:3923/ ./music + python partyfuse-streaming.py http://192.168.1.69:3923/ ./music dependencies: python3 -m pip install --user fusepy @@ -21,7 +21,7 @@ dependencies: + on Windows: https://github.com/billziss-gh/winfsp/releases/latest this was a mistake: - fork of copyparty-fuse.py with a streaming cache rather than readahead, + fork of partyfuse.py with a streaming cache rather than readahead, thought this was gonna be way faster (and it kind of is) except the overhead of reopening connections on trunc totally kills it """ @@ -154,7 +154,7 @@ def dewin(txt): class RecentLog(object): def __init__(self): self.mtx = threading.Lock() - self.f = None # open("copyparty-fuse.log", "wb") + self.f = None # open("partyfuse.log", "wb") self.q = [] thr = threading.Thread(target=self.printer) @@ -185,9 +185,9 @@ class RecentLog(object): print("".join(q), end="") -# [windows/cmd/cpy3] python dev\copyparty\bin\copyparty-fuse.py q: http://192.168.1.159:1234/ -# [windows/cmd/msys2] C:\msys64\mingw64\bin\python3 dev\copyparty\bin\copyparty-fuse.py q: http://192.168.1.159:1234/ -# [windows/mty/msys2] /mingw64/bin/python3 /c/Users/ed/dev/copyparty/bin/copyparty-fuse.py q: http://192.168.1.159:1234/ +# [windows/cmd/cpy3] python dev\copyparty\bin\partyfuse.py q: http://192.168.1.159:1234/ +# [windows/cmd/msys2] C:\msys64\mingw64\bin\python3 dev\copyparty\bin\partyfuse.py q: http://192.168.1.159:1234/ +# [windows/mty/msys2] /mingw64/bin/python3 /c/Users/ed/dev/copyparty/bin/partyfuse.py q: http://192.168.1.159:1234/ # # [windows] find /q/music/albums/Phant*24bit -printf '%s %p\n' | sort -n | tail -n 8 | sed -r 's/^[0-9]+ //' | while IFS= read -r x; do dd if="$x" of=/dev/null bs=4k count=8192 & done # [alpine] ll t; for x in t/2020_0724_16{2,3}*; do dd if="$x" of=/dev/null bs=4k count=10240 & done diff --git a/bin/partyfuse.py b/bin/partyfuse.py index 2f7e4044..6997b0c4 100755 --- a/bin/partyfuse.py +++ b/bin/partyfuse.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 from __future__ import print_function, unicode_literals -"""copyparty-fuse: remote copyparty as a local filesystem""" +"""partyfuse: remote copyparty as a local filesystem""" __author__ = "ed " __copyright__ = 2019 __license__ = "MIT" @@ -12,7 +12,7 @@ __url__ = "https://github.com/9001/copyparty/" mount a copyparty server (local or remote) as a filesystem usage: - python copyparty-fuse.py http://192.168.1.69:3923/ ./music + python partyfuse.py http://192.168.1.69:3923/ ./music dependencies: python3 -m pip install --user fusepy @@ -166,7 +166,7 @@ def dewin(txt): class RecentLog(object): def __init__(self): self.mtx = threading.Lock() - self.f = None # open("copyparty-fuse.log", "wb") + self.f = None # open("partyfuse.log", "wb") self.q = [] thr = threading.Thread(target=self.printer) @@ -197,9 +197,9 @@ class RecentLog(object): print("".join(q), end="") -# [windows/cmd/cpy3] python dev\copyparty\bin\copyparty-fuse.py q: http://192.168.1.159:1234/ -# [windows/cmd/msys2] C:\msys64\mingw64\bin\python3 dev\copyparty\bin\copyparty-fuse.py q: http://192.168.1.159:1234/ -# [windows/mty/msys2] /mingw64/bin/python3 /c/Users/ed/dev/copyparty/bin/copyparty-fuse.py q: http://192.168.1.159:1234/ +# [windows/cmd/cpy3] python dev\copyparty\bin\partyfuse.py q: http://192.168.1.159:1234/ +# [windows/cmd/msys2] C:\msys64\mingw64\bin\python3 dev\copyparty\bin\partyfuse.py q: http://192.168.1.159:1234/ +# [windows/mty/msys2] /mingw64/bin/python3 /c/Users/ed/dev/copyparty/bin/partyfuse.py q: http://192.168.1.159:1234/ # # [windows] find /q/music/albums/Phant*24bit -printf '%s %p\n' | sort -n | tail -n 8 | sed -r 's/^[0-9]+ //' | while IFS= read -r x; do dd if="$x" of=/dev/null bs=4k count=8192 & done # [alpine] ll t; for x in t/2020_0724_16{2,3}*; do dd if="$x" of=/dev/null bs=4k count=10240 & done diff --git a/bin/partyfuse2.py b/bin/partyfuse2.py index f8801c92..0885a2b8 100755 --- a/bin/partyfuse2.py +++ b/bin/partyfuse2.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 from __future__ import print_function, unicode_literals -"""copyparty-fuseb: remote copyparty as a local filesystem""" +"""partyfuse2: remote copyparty as a local filesystem""" __author__ = "ed " __copyright__ = 2020 __license__ = "MIT" @@ -42,13 +42,13 @@ except: mount a copyparty server (local or remote) as a filesystem usage: - python ./copyparty-fuseb.py -f -o allow_other,auto_unmount,nonempty,pw=wark,url=http://192.168.1.69:3923 /mnt/nas + python ./partyfuse2.py -f -o allow_other,auto_unmount,nonempty,pw=wark,url=http://192.168.1.69:3923 /mnt/nas dependencies: sudo apk add fuse-dev python3-dev python3 -m pip install --user fuse-python -fork of copyparty-fuse.py based on fuse-python which +fork of partyfuse.py based on fuse-python which appears to be more compliant than fusepy? since this works with samba (probably just my garbage code tbh) """ @@ -639,7 +639,7 @@ def main(): print(" need argument: mount-path") print("example:") print( - " ./copyparty-fuseb.py -f -o allow_other,auto_unmount,nonempty,pw=wark,url=http://192.168.1.69:3923 /mnt/nas" + " ./partyfuse2.py -f -o allow_other,auto_unmount,nonempty,pw=wark,url=http://192.168.1.69:3923 /mnt/nas" ) sys.exit(1) diff --git a/copyparty/web/a/partyfuse.py b/copyparty/web/a/partyfuse.py new file mode 120000 index 00000000..1919aa51 --- /dev/null +++ b/copyparty/web/a/partyfuse.py @@ -0,0 +1 @@ +../../../bin/partyfuse.py \ No newline at end of file diff --git a/scripts/sfx.ls b/scripts/sfx.ls index e2c546f2..0827f92b 100644 --- a/scripts/sfx.ls +++ b/scripts/sfx.ls @@ -59,6 +59,7 @@ copyparty/vend/asynchat.py, copyparty/vend/asyncore.py, copyparty/web, copyparty/web/a, +copyparty/web/a/partyfuse.py, copyparty/web/a/up2k.py, copyparty/web/a/webdav-cfg.bat, copyparty/web/baguettebox.js,