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.

  • muusemuuse@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    43
    ·
    7 months 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.

  • poVoq@slrpnk.net
    link
    fedilink
    English
    arrow-up
    27
    ·
    7 months 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
      13
      ·
      7 months 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
    21
    ·
    7 months 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
      21
      arrow-down
      1
      ·
      7 months 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
        4
        ·
        7 months 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
          13
          ·
          7 months 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)

          • chellomere@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            7 months ago

            Ah, reminds me of the old self-extracting gzip executable trick. I used that once a very long time ago to make a 4k linux intro, before I realized to be competitive I should switch to windows to be able to use Crinkler, which is superior even though the decompressor is part of the executable.

  • KiwiTB@lemmy.world
    link
    fedilink
    English
    arrow-up
    13
    ·
    7 months ago

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

    • Womble@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 months ago

      Yup, I tried to run the docker image with the suggested docker command and it errored out for lack of a config file (though it did offer a fix in the logs for mounting the current directory as read/write)

    • tripflag@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      14
      ·
      7 months 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
        ·
        7 months 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.

  • buddascrayon@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    7 months 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
      9
      ·
      edit-2
      7 months 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

  • dblsaiko@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    10
    ·
    7 months 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.

    • gedaliyah@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 months 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
        5
        ·
        7 months 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.

      • RheumatoidArthritis@mander.xyz
        link
        fedilink
        English
        arrow-up
        4
        ·
        7 months ago

        Nextcloud is like Windows 95, it works great when you install it then it just keeps getting slower as you fill it with content

  • HexesofVexes@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    7 months ago

    Elderly raspberry pi B [✓]

    Large portable drive gathering dust [✓]

    Guess I’m setting up a locally hosted file server in the near future.

  • utopiah@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    7 months ago

    Thanks for making the video but also for providing non Youtube link. Maybe there is a PeerTube server that would enjoy hosting it.

  • Admax@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    7 months ago

    I’m properly in awe at this project. Not only does it support a wide range of protocols and runs practically everywhere, but it can play audio, video, display images and has keyboard shortcut support ???

    It’s got everything I could think about and so much more.

    I can’t wait to try it out !

    Thank you so much for your time and for making this open source.

  • sun@slrpnk.net
    link
    fedilink
    English
    arrow-up
    5
    ·
    7 months ago

    The video are amazing. It’s entertaining and explains everything so it’s easily understood.

  • LifeInMultipleChoice@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    7 months ago

    Thank you so very much. I needed to transfer some files locally yesterday and didn’t have a NAS set up. So I thought I would quickly set up a samba share on my pop-os media server so my spouse (windows) and I (mint) could swap/store files on the fly in the future. It took me 25 minutes and I almost gave up because my config file was having issues.

    This looks sooooo much nicer. May every road rise up to meet you

    • cravl@slrpnk.net
      link
      fedilink
      English
      arrow-up
      4
      ·
      7 months ago

      I would add PairDrop to your list to have bookmarked. It’s completely web-based so no download required and thus fully cross-platform. It also works across different networks (i.e. over the internet) by pairing devices or creating a room. Basically Apple AirDrop, but universal and on steroids.

      • LifeInMultipleChoice@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Bookmarked, thanks. I’ll have to try them all out at some point and see what works quickest. Obviously the storage aspect of the poster is a different ball game, but out and about this sounds useful