• 0 Posts
  • 5 Comments
Joined 2 years ago
cake
Cake day: June 20th, 2023

help-circle
  • Hadn’t heard about PirateBox before – love the concept, but nah aside from a small amount of overlap they’re very different things :-)

    When users join the PirateBox wireless network and open a web browser, they are automatically redirected to the PirateBox welcome page. Users can anonymously chat, post images or comments on the bulletin board, watch or listen to streaming media, or upload and download files inside their web browser.

    I guess if you put copyparty on a raspberry pi (or boot the copyparty live-cd on a nuc) then you get something vaguely similar – a wifi node where you can download and upload files, but none of the other stuff (chat, messageboard, captive portal). Maybe cool ideas for future spinoff projects hehe


  • Mind if I suggest my own software, copyparty?

    Regarding authentication, someone who has an account (in this case just yourself) can create password-protected shares which other people can browse, or upload, or browse+upload to (configurable when creating the share).

    There is WebDAV support, and it should integrate well enough with shares, but I haven’t tested that specifically.

    It has photo and video thumbnails, and a basic image-viewer, and with some elbow-grease it can also show exif-tags (gps-coordinates etc).

    There is also optional file dedup, so if two people upload the same file, it’ll detect and skip that during the 2nd upload (doesn’t waste any bandwidth) and swap out the new file with a symlink to the existing one. Default disabled to avoid surprising someone with symlinks.

    I think the following command would be enough to get you started:

    wget https://github.com/9001/copyparty/releases/latest/download/copyparty-sfx.py
    python3 copyparty-sfx.py -a sintan:yourpassword -v .::A,sintan --shr=/shr -e2dsa -e2ts
    

    but since that’s entirely unreadable, you can do it with a config file instead,

    [global]
      e2dsa  # enable filesystem indexing 
      e2ts  # enable media indexing (music tags)
      shr: /shr  # enable shares under this url
    
    [accounts]
      sintan: yourpassword 
    
    [/]  # create a volume at this url
      /srv/share/partypics  # the filesystem path to share
      accs:
        sintan: A  # give sintan read-write-move-delete-admin
    

    and use it like this:

    python3 copyparty-sfx.py -c the.conf
    

    there’s another example here and here for inspiration.




  • I’ve been making copyparty, and one of the initial inspirations/usecases was exactly this one – bunch of internet-friends meeting in meatspace for some event, and needing to stream across pics/vids before we split up and maybe never meet again :-)

    You can run the server on android using termux; see the instructions in the readme for the installation part, and then run the server like so: copyparty -e2ds --qr -v /storage/emulated/0/Pictures/from-family/::w

    it will show a QR-code which you can scan from the other device to start uploading, and the folder is shared write-only (:w instead of :rw), so nobody can download anything. And it keeps track of which files have already been transferred, so the client will skip across dupes without reuploading them, and also resume interrupted uploads automatically.

    Tried sending 340 photos (1.21 GiB) from an old iPhone to an android hotspot just now; I turned off the iPhone screen as soon as it started sending, and it finished in 41 seconds, so around 30 MiB/s? Maybe there are faster alternatives… But my javascript should be fairly resilient and recover from network glitches and such, so uploading from safari like this should be fine.