OMG I just posted this to lemmy and saw it had already been posted. Great work! Amazing video!!
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
nice project! I'll check it out! I've also really enjoyed your replies here. it's obvious you really know your stuff. thanks!
this looks amazing! (from the youtube video. also the controls/features seem to be well thought-through) i'll give it a shot tomorrow
🤯
Wo wo wow, is that my man JC Denton ??
"There are two editors in case you hate one of them"
You crack me up !!!
Now it would be interesting to setup a raspberry pi with harddrives plugged in the USB 3 ports💡
I looked at the comparison for Seafile as that's the one I'm most familiar with. In my opinion Seafile's greatest strength is its encryption, but in your comparison you seem to see this as a negative as I assume this bullet refers to the encryption? "isolated on-disk file hierarchy, incompatible with other software. much worse than nextcloud in that regard"
the intention with that statement was that seafile, by default, places all the files inside its own proprietary file container thing, where the files are not easily accessible from the server's actual filesystem, using regular linux utilities. My knowledge of seafile is really minimal, so this could be wrong -- in which case I'll fix that right away! or, at the very least, try to clarify what I meant to avoid this confusion.
in case you happen to know -- are you aware if it's possible to use Seafile while having it just place all the files and folders on the disk like any other program would?
@tripflag @disobey2623 Your statement is correct; the way seafile stores files is in blocks (for de-duplication, apparently).
They offer a fuse extension that allows you to view stuff like a normal filesystem, though I've never tried it: https://manual.seafile.com/latest/extension/fuse/
And obviously, encrypted folders can't be accessed through the file system even with the fuse add on, because that would break the whole point of encryption.
To me, the one big advantage Seafile has is its e2e encryption and encrypted folders, as it allows me to host it externally without allowing access to my files to the server administrator.
Looks fantastic, I'll actually be trying this. Love how it doesn't lock my files into some obscure format like seafiles.
This looks great, nothing to check it out.
I'll have to say that this is about one of the most detailed instructions I've seen, replete with copious screenshots. I'm going to have to give it a go just based on that. LOL
This is really impressive
OMG! I've been looking for something like this for quite some time!
I will try this as soon as I have time. Thank you!
Can you point me to the WebDAV code? I’m interested to see your implementation. There are some parts of the spec that are ambiguous, and I like to see how those are implemented in different servers.
sure! my implementation is really basic, just the stuff that's needed to make the clients i've tested happy, so there's probably still clients that won't be able to connect (And i'll fix those as soon as I hear about them!)
httpcli.py is the http methods handler, and the webdav-specific handlers are all next to eachother, propfind // proppatch // lock // unlock // mkcol // and there's also put for the uploads, but that's not entirely webdav-specific, just webdav-aware.
Thanks! So you put in the displayname
prop even if it’s not set by the client. For the life of me, I can’t figure out what that prop is supposed to be in the spec. It calls it a live prop, but doesn’t give an explanation or an equivalent HTTP header.
I love how you named the error for 400 statuses, “Pebkac”! xD
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.
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?
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.
Clearly a labour of love 👍
Maybe support for some music streaming apps (subsonic?) would be cool?
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 :>
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.
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.
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.
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
Ah, so you have compiled it into one file? Didn't know that was possible for python, what tool do you use for this?
What do you use to bundle into one file?
copyparty-sfx.py
is a custom packer (see this reply) created by make-sfx.sh, and copyparty.pyz
is a standard zipapp, created by make-pyz.sh. The zipapp has more disadvantages than the sfx.py
, so that's the default/recommended build.
you even mention ladybird as browser, nice 😎
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.
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.