I made a video about copyparty, the selfhosted fileserver I’ve been making for the past 5 years.

The main focus of the video is the features, but it also touches upon configuration. Was hoping it would be easier to follow than the readme on github… not sure how well that went, but hey :D

This video is also available to watch on the copyparty demo server, as a high-quality AV1 file and a lower-quality h264.

  • SilentKnightOwl@slrpnk.net
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    Does anyone know if you can manage multiple devices from a single interface? If I had it on a couple of old phones and a laptop, for example.

  • theorangeninja@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    5 days ago

    I played around with copyparty and I have to say it is just awesome! The config is just fun to mess around with and everything feels snappy.

    But I ran into an issue with FTP (probably just something I configured incorrectly) and could not find a discussion for that. I should probably start an issue on Github but as a non-developer I’m not sure how to do that in the correct way.

    Edit: I managed to “solve” the problem. Apparently the user uploading to a subfolder over FTP needs the move permission for the folder above said subfolder.

  • muusemuuse@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    56
    ·
    edit-2
    9 days ago

    You made this on your phone on the bus ride to and from work.

    I cleaned the cat box yesterday and considered that an accomplishment.

    Fuck.

  • johntash@eviltoast.org
    link
    fedilink
    English
    arrow-up
    46
    ·
    9 days ago

    Your readme looks super in depth, thanks for that! I haven’t watched the video yet but will later.

    I didn’t see it mentioned from a quick glance, but is either sftp or ftps supported?

    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      37
      ·
      9 days ago

      SFTP is not currently on the roadmap, but it’s not entirely implausible.

      FTPS is supported, but it requires an optional dependency to be installed (pyopenssl), so it’s not available in the Windows EXE. And I just realized that the dependency is currently not present inside the docker images either, so I’ll get that fixed right away.

  • poVoq@slrpnk.net
    link
    fedilink
    English
    arrow-up
    35
    arrow-down
    1
    ·
    9 days ago

    Clearly a labour of love 👍

    Maybe support for some music streaming apps (subsonic?) would be cool?

    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      18
      ·
      9 days ago

      That’s a neat idea – I’ve heard that a lot of stuff uses the subsonic API under the hood, so I’ll see what it would take to become compatible with that. At first glance it looks like I’d have to mine and index way more information about audio files, but could still be doable :>

  • chellomere@lemmy.world
    link
    fedilink
    English
    arrow-up
    26
    ·
    edit-2
    9 days ago

    Hey fellow scener, cool project!

    Just a few thoughts/questions:

    • BTRFS and ZFS support real deduplication via copy on write, and would eliminate all current disadvantages of symlink and hardlink deduplication. It just works.
    • Why have it be one huge python source file? This is a serious code smell imo, and something you really should avoid doing as this can be a major maintenance burden.
    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      29
      arrow-down
      1
      ·
      9 days ago

      BTRFS and ZFS support real deduplication via copy on write, and would eliminate all current disadvantages of symlink and hardlink deduplication. It just works.

      yeah that’s a good point, I’ll add an option to take advantage of this if you know you’re running on a filesystem where that works as intended.

      Why have it be one huge python source file?

      oh don’t worry, it’s all separate files during development – there’s a build-stage which bundles everything up into a single file for distribution. But thanks for the concern :D

      • chellomere@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        9 days ago

        Ah, so you have compiled it into one file? Didn’t know that was possible for python, what tool do you use for this?

        • tripflag@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          15
          ·
          9 days ago

          sooo this is one of the things that started with someone saying “wouldn’t it be funny if…”

          if you open copyparty-sfx.py in a text editor, you’ll see how – but please make sure to use an editor which is able to handle about 600 KiB of comments which contain invalid utf8 / binary garbage 😁

          I ended up rolling my own packer since I wanted optimal encoding efficiency, and everything I could find would do stuff like base85 or ucs2 tricks, but it turns out python is perfectly happy with binary garbage in comments if you declare that the file is latin-1 so it realizes all hope is lost :D

          the only drawback of the sfx.py is that it needs to extract to $TEMP before running, so that’s the slight advantage of the zipapp (the .pyz alternative), but that suffers from some performance reduction in return, and is more hermetic (doesn’t let you swap out the bundled dependencies with fresh versions as easily if necessary)

    • Suzune@ani.social
      link
      fedilink
      English
      arrow-up
      3
      ·
      9 days ago

      Just a remark from someone who runs ZFS since the beginning. Many people don’t like the deduplication feature because of its memory footprint.

      It’s also nice to have this feature without relying on a certain filesystem.

      • chellomere@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 days ago

        I assume you mean automatic deduplication? I haven’t used ZFS, but BTRFS does not have that. There are a variety of ways to perform deduplication, I have duperemove scheduled to run regularly.

        If ZFS is still capable of being instructed to perform deduplication when automatic deduplication is turned off, which it really should be able to do, then this should work even with it turned off.

  • perishthethought@piefed.social
    link
    fedilink
    English
    arrow-up
    23
    ·
    9 days ago

    The fact you mention security features, without ever saying it’s ‘super secure’ tells me you know a lot about what you’re doing. I’m so sick of apps like this that start with “most secure app on the net” but you know they’re delusional. Thank you, going to check this out.

    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      8 days ago

      so uhh, sorry for the late response to this – was going to reply much earlier, but then suddenly it became more timely than ever…

      the good news is, I’m fairly confident in how it handles the filesystem and permissions, preventing unauthorized access to files.

      but the part I’m a bit less sure about is sanitizing user data; the kind of vulnerabilities where someone uploads a malicious file and bad stuff happens if you then open that file in a certain way, or someone sends you a malicious link and trick you into clicking it – in other words, the kind of vulnerabilities which require the attacker to have a certain level of access already, or that requires tricking you into doing something.

      …and with version 1.18.5 released just now, we got a prime example of exactly one of those. Really unfortunate timing, but it’s a blessing to have so many new and curious eyes on it to spot these sooner rather than later. It is what it is.

  • KiwiTB@lemmy.world
    link
    fedilink
    English
    arrow-up
    20
    ·
    8 days ago

    Put out some in-depth docker instructions and this will be common use in a month. Good work.

  • Palle@piefed.social
    link
    fedilink
    English
    arrow-up
    17
    ·
    edit-2
    8 days ago

    Is there a way to help translate the UI.

    I would like to help translate it into Danish.

  • buddascrayon@lemmy.world
    link
    fedilink
    English
    arrow-up
    16
    ·
    8 days ago

    Holy shit this is so unbelievably full featured it’s not even funny. This is going to rattle some big names. I wonder how long till they try to shut it down because it’s better than anything commercially available.

    • tiramichu@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      15
      ·
      edit-2
      8 days ago

      I haven’t even tried it yet, but just from the video you can tell it’s going to be insanely good. I’m so impressed.

      It’s the first bit of software I’ve seen in a long time where I took one look and immediately thought “Fuck me, I need that!”

      I use Unraid for my NAS server and just on the off-chance I checked the Unraid community ‘app store’ and someone’s already created a Docker definition for it, published just today! The hype is real

      I’ll be giving this a shot

    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      19
      ·
      9 days ago

      it’s such an impressive project! Amazing what they’ve accomplished in so little time, and so important too – we need as many options as we can get.

      • pwalker@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        5
        ·
        9 days ago

        I agree but it’s still in an early development state. Not really usable for everyday work let alone most people never heard about it 😅 But yeah still cool to mention it under “modern” browsers. I wish them good luck with the first alpha next year. I hope it’ll be successful.

  • dblsaiko@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    14
    ·
    9 days ago

    Oh my god, this seems really good and closer to what I want than anything yet. Been looking for something to replace Nextcloud and found nothing good so I might take a look at this.

    • rhabarba@feddit.org
      link
      fedilink
      English
      arrow-up
      5
      ·
      9 days ago

      I replaced nextCloud’s file sharing with Syncthing just recently, as I found myself only synchronising between two computers (one desktop, one smartphone) anyway. :-)

      • dblsaiko@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 days ago

        That won’t work for me since I have multiple people using this Nextcloud instance, and I also use it to publicly share files. I also have a big network share (currently 5 TB of data) that I would like to better integrate somehow (right now it’s available from Nextcloud read-only in essentially “anonymous mode” with no access to private user files).

    • gedaliyah@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      9 days ago

      Just curious, why did you replace nextcloud? I’m looking into transitioning from my current file server, and I’ve mostly heard only good things and not NextCloud.

      • dblsaiko@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        8
        ·
        edit-2
        9 days ago

        I want something with a permission model that works the same when accessed over a network share (SMB, ideally NFS) and access over a web interface. Ideally it would have a Mac File Provider sync client and whatever the Windows equivalent is called as well.

        Nextcloud is fine but it’s not that.

        • rhabarba@feddit.org
          link
          fedilink
          English
          arrow-up
          6
          ·
          9 days ago

          Also, it’s like Wordpress, growing new slow features you’ll never need with each new release.

          • Tibi@discuss.tchncs.de
            link
            fedilink
            English
            arrow-up
            1
            ·
            8 days ago

            They recently recieved a “Blauer Engel” certificate for nextcloud-server. Iirc that seal requires the user to be able to choose what he wants. So new features are OK but they have to be optional. That certificate is handed out by a german government Institution. And very recently they started handing it out to software too, with nextcloud beeing the first BIG reciever.

  • Leon@pawb.social
    link
    fedilink
    English
    arrow-up
    13
    ·
    8 days ago

    I bumped into copyparty the other month when looking for a software that could let me transfer files to a friend with the ability to pause/resume. Didn’t bother with it, tried another software instead. Never really got it to work so I gave up on it.

    Bumped into the YouTube video today, decided to give copyparty a shot, damn sir you’ve written a fine piece of software. It’s so easy to get up and configure. The UI is a bit janky, but charming at the same time. Thanks for all the hard work!