Suggestion request: Self-hosted app for shared directories like google drive
I thought of this after a recent trip with some friends. We shared the photos when we were still in person. But sometimes we need to share a lot of photos over the internet. In the past, we have used a shared google drive directory for this. But I'd prefer a self-hosted option. There should be some sort of password protection as well (ideally per share, and no need for accounts). One should be able to both access the current files and upload new ones, just like google drive or dropbox.
I currently have FileShelter, which works for 1-to-1 sharing but not for groups. I guess something like ProjectSend would work, but it's too complex for my usecase. I'd prefer something more lightweight since I'll maybe use it once every few months. Also, it should be noob-friendly, and accessible using a browser.
Update: I'm very happy with copyparty. It does what I want, and much much more. I even replaced my older webdav server with it since it provides more granular control over share locations and permissions. Kudos to the developer @tripflag@lemmy.world!
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:
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.
Oh hey, this is just what I was looking for recently! I wanted to recommend PirateBox to another thread on here, but realised it was eol'ed six years back. This is pretty much similar usage, right?
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
To me, it's always nice meeting the face behind the software. I have never used copyparty, but if I had a use case, it would be high on the list just based of the volume of detailed instructions. I think that is probably the most detailed selfhosted piece of software I've seen at GitHub......gotta be something good going on with that. And...and replete with pictures of the UI in a variety of scenarios. That's just top drawer in my book. If a need ever arises, I have bookmarked it, because that's where I'll start. Awesome job my man, and thank you for your dedication to the craft.
Maybe something like xbackbone? I've used it to share small-ish files and it works fine; I don't know how much of a pain it would be to use for a group of people, but as long as everyone has an account they should be able to access files with a link.
Unfortunately that doesn't seem possible, afaik. Although you could always create a zip file with a password, and share it with an open link (anyone with the link can download it, no need for account).
Might take a look at NextCloud though it may be overkill as it’s intended to be a full Google Cloud or Office365 replacement. On the other hand, it is modular so you only have to set up what you actually need.
Super small. Lightweight. Web focused. Only downside is no multi-user access. Setup an account to share between your friends, and give them the login information. Then they can upload albums, edit albums, whatever. Anything uploaded is private unless shared, then anyone with the link can view the photos.
Seems like a decent fit for you. They're also working on multiple users.
Self-plug: PENEfiles! (yes it’s an unfortunate name but I didn’t know back then cuz I am not a native speaker). Comes with a tag system and file ownership management. Supports direct link sharing, and the whole website can be visited without logging in. Here is a detailed intro and here is the source code.
Are there ways to share stuff with a group of people that are self-hosted? Absolutely.
Can you get security through those means? Not without some unified authentication.
Maybe back up a few steps and figure out specifically how much trouble you're willing to go through for this. There's a reason these photo sharing platforms exist with sharing and permissions.
I don't care too much about security, since I'll delete everything in a few days after copying them to my gallery. Then, I usually share a link with them to an album on my PhotoPrism instance. So, per share password is fine by me.