82
submitted 1 week ago* (last edited 1 week ago) by Charger8232@lemmy.ml to c/selfhosted@lemmy.world

This question has been answered. Please stop trying to repeat information that has already been said many times before. Everything in this thread is in good faith, I am here to learn, so I will make mistakes. Furthermore, if you want to contribute something new, please read the entire post to avoid misunderstanding the purpose of this post.

Selfhosting is useful when you either need a lot of storage or a lot of processing power. For example, Kiwix is useful to selfhost on a server because a lot of its content can take up terabytes of storage, which a phone may not have. LLMs are also useful to selfhost because they require a degree of processing power that, again, a phone may not have.

In both cases, there is also a need for perpetual access. If you simply hosted an LLM on your home computer, it wouldn't be very useful to access from your phone since your computer won't be running all the time. So, a separate always-on server is needed.

However, there are some selfhosted software that I don't see a use for. For example, Immich. Immich requires to be run on a server to function, but a lot of (or even all) of its functions are things that could reasonably done entirely on-device. Aves combined with some automatic backup solution such as Nextcloud gets (from what I can tell) most of the functionality Immich offers. Obviously, some features like AI image tagging are missing, but you get the point. AI image tagging is also something that could be run on-device as well, since it's mostly lightweight (iPhones are capable of it). Having a setup like that also comes with the benefit of automatic backups being completely optional, rather than required.

There's no reasonable need for extra storage or extra processing power needed for that use case, from what I can tell. (Disclaimer: I haven't actually used Immich before, so this is speculation. I apologize if I'm missing something obvious) There's a lot of other selfhosted tools like spotDL which have a selfhosted web UI, but no GUI that can be installed outside of a web browser.

I guess my question is why there are so many selfhosted tools that unnecessarily require being run on a separate device. I do understand the legitimate use cases some of them have, but others seem better off on-device airgapped. This especially became an issue trying to find a notes app for Android that requires no account and runs fully locally, or an RSS reader that loads from the device itself. I found Joplin and Feeder or Read You as the software for each of those. I don't like "server-based" selfhosting for things that could be done from the device itself.

I'm sorry if this turned into a rant. If someone could help me understand, I would appreciate that very much.

Cheers!

Edit: The comparison here isn't between selfhosting and using a cloud provider. The comparison here is between selfhosting on a server and running explicitly on-device (besides where extra storage or processing power is required)

Answer

So that nobody has to dig through the comments for answers, this is what I've learned: In the case of Immich, its purpose isn't designed to be a photo gallery. It's designed to be a more polished backup solution, designed explicitly for photos and not general files. While Nextcloud could be used to backup photos, it's not as focused on photos as Immich, and so it isn't as nice to use for that purpose. Immich also allows you to share photos with a link, rather than relying on a cloud provider to do that for you. There's also another benefit to selfhosting that I hadn't entirely realized, which is availability across devices. Some things like an eBook library may not take up much space, but it's convenient to not have to sync manually (or automatically) across devices, and instead access it from a central server. That same logic is true for RSS readers as well, since it's inconvenient to manually add and sync feeds across devices. Syncing across devices can be done with something like Syncthing in some cases, but not all, and so that's where selfhosting can be useful.

top 28 comments
sorted by: hot top controversial new old
[-] MeepMorp@lemmy.world 35 points 1 week ago

I think the point with all of these is that they are "cloud"-based. Except instead of the cloud being someone else's computer, it's your own. Let's take Immich, for example. Sure I could keep all my photos on my phone. But what if I lose or break my phone? What if I have an actual camera with an SD card and I want to offload those photos? Self-hosting lets me keep a backup. I can set up a server with redundant drives that itself backs up to a server in another location with its own separate drives. Thus, I have my own safe cloud storage.

[-] mystik@lemmy.world 15 points 1 week ago

I use Immich because I have multiple devices and multiple people uploading photos to it , so we can all organize together.

Self hosting anything also gives you a lot of practice and experience (and confidence) to also self hosting anything for others, an important skill for many to have in order to have a more distributed internet.

[-] Charger8232@lemmy.ml -2 points 1 week ago

I use Immich because I have multiple devices and multiple people uploading photos to it , so we can all organize together.

Would something like Syncthing work for this instead?

[-] DefrostedTuna@lemmy.world 9 points 1 week ago

I personally use Syncthing for backing up gamesaves to my home server and it works great. While it would technically work for this application, it would be significantly more work to set up and maintain for photo management than just kicking up an Immich Docker container. Go check out their docs if you haven't already, it's pretty sweet how easy it is to manage stuff with Immich

[-] poVoq@slrpnk.net 13 points 1 week ago* (last edited 1 week ago)

In your example Immich is an alternative to Nextcloud that is more specialized. If you already run a Nextcloud there is no real need to run Immich indeed. But in reverse you might not need all the features Nextcloud provides and Immich would be a more streamlined alternative for sharing and storing images.

[-] Charger8232@lemmy.ml 3 points 1 week ago

If every app had their own selfhosted backup solution, it wouldn't be very convenient. I'd think it better to run Nextcloud to back everything up than to deal with setting each backup solution up individually. Is there a major benefit to Immich that I'm missing?

[-] poVoq@slrpnk.net 13 points 1 week ago* (last edited 1 week ago)

If all you need is a photo backup solution (and for many people that is true) then Immich is a far more polished and less janky option. Nextcloud is a typical "jack of all trades, master of none" type of software.

[-] Charger8232@lemmy.ml 1 points 1 week ago

That's a good point, and I agree. I still wish Immich could function as an on-device photo app, with selfhosted backups being optional.

[-] ragebutt@lemmy.dbzer0.com 5 points 1 week ago

On device isn’t always ideal. I don’t use immich because i don’t have a large photo library. But I do use komga. Nextcloud can sort and manage epub/pdf like komga but as poVoq said, the specialized solution is superior

This point is where on device app is not the ideal situation, for me at least. These apps exist. Tachiyomi and the resultant forks can import a local library. And frankly even a somewhat massive local library can fit on a cheap SD card

The point of the server is portability. With this I have portability across my devices. My library, reading status, metadata, etc is available on all devices. I can read a book on my ereader, close it, the status is synced. I can pick up from my laptop and the same thing occurs. I can pick up from my phone, download the book to my device, and keep reading while I’m away from home. If I wanted to I could open remote access to my server and avoid the need for downloading the books but that’s a whole thing

I don’t think it would make sense to run a server solely for this but it’s a service that doesn’t take much in terms of resources and I read a lot.

[-] 30p87@feddit.org 2 points 1 week ago

I run both ... nextcloud is very inconvenient for finding stuff and slow in loading. I still use nextcloud to sync, but immich for tagging and displaying, because it's much faster and better in UI etc.

[-] Konraddo@lemmy.world 7 points 1 week ago

There are three reasons that I can think of:

  1. Privacy
  2. Collaboration
  3. Accessibility / cost

Privacy. This is obvious. People don't want their private information to be sold by corporations or scraped by AI.

Collaboration To share information with others, while maintaining point 1, people have to self host. Say, you want to archive a bunch of photos for personal viewing then you can store them anywhere you like. But if you want to share them with family, a self hosted solution is the way to go.

Accessibility / cost People want to do things for free. Many applications offer free version or demo, but features are often limited and you can't really customize them to your own needs. In addition, applications often adopt a subscription model these days and people don't like that.

[-] Charger8232@lemmy.ml 1 points 1 week ago

I mentioned in the edit: I'm not asking why things should be selfhosted instead of run on a cloud provider, I'm asking why things are selfhosted on a server that could be run entirely on-device. The latter I argue provides more privacy and less cost. Again, there are some cases as I mentioned in the post where selfhosting on a server is useful (storage or processing power), but I keep seeing a lot of server-based selfhosting that could instead be run on the device itself.

[-] catloaf@lemm.ee 5 points 1 week ago

I have two devices. How do I view photos from both, together in one library, without running something like Immich on a third device?

[-] Charger8232@lemmy.ml 1 points 1 week ago

That's a fair point, and I don't suppose Nextcloud or Syncthing would be quite as useful or as designed for photos. Thank you for helping me understand!

[-] DefrostedTuna@lemmy.world 4 points 1 week ago

I agree that self hosting is useful for things that require lots of storage or processing power, but there are more reasons to self host than that. For me, it's more that I want control of certain services, and that I want a central place to manage them from. For example, I personally host an Immich server on a local rig in my home along with a number of other services that don't require enormous amounts of storage or processing power.

Home Assistant, Jellyfin and the Arr stack, Audiobookshelf, Koel, Immich, etc. Things like Jellyfin require large amounts of space, sure. But things like the Home Assistant, Arr stack, Audiobookshelf, and Koel are more for convenience than anything else. Going back to the Immich example, this provides me with a way to centralize my family's photos while on our local network, or a VPN, and allows us to share them publicly with others using explicit links. It keeps our personal photos out of the corporate cloud and provides mostly the same functionality as though I were using an alternative mainstream product. That and if someone yeets my phone into the ocean for some reason, I still have all my photos.

Having explicit control of these services and the underlying content is probably more of a reason to self host than anything else for me. S3-type bucket storage and spot processing power is relatively cheap these days. Privacy and control is not.

[-] Charger8232@lemmy.ml 1 points 1 week ago

and allows us to share them publicly with others using explicit links.

That's something I hadn't considered. I'm somewhat used to everything being completely local, no exceptions. It's why I started selfhosting so late, I never saw much of a point to it. I also don't feel completely comfortable opening any part of my home internet to the public, but I'm sure there's safe ways of going about it.

Another bias of mine is having a lot of compartmentalization. For example, none of my desktop account credentials are stored on my phone's password manager, and vice versa. If one device is compromised, I want to isolate the risk as much as I can. That also means that if I were to ever set up a movie library, for example, I would want to keep those isolated per-device as well.

Backups are a bit of a special case. You can either selfhost an automatic cloud backup, or use something simple like a USB stick you manually backup to. Besides that, though, I would argue you maintain more control over software that doesn't rely on an external device to begin with. I gave examples, such as Aves, Joplin, or Feeder. If those are on my phone only (and properly backed up), I maintain full control knowing that I don't need to rely on my own server at home to manage the data that I have in my pocket.

This has helped me see some new benefits of selfhosting, though. I've spent my whole life without a SIM card, so it isn't always easy finding a network (especially a trustworthy one) to connect to on the go to connect to my server with. Even in the moments I could connect to a network, they had heavy censorship (blocked VPNs and certain IP addresses). That's why I like having everything on-device.

[-] ocean@lemmy.selfhostcat.com 4 points 1 week ago

They’re meant to be run on a local server ie whatever other computer you have that runs 24/7

[-] BaroqueInMind@lemmy.one 3 points 1 week ago* (last edited 1 week ago)

In immich I can open the world map and select photos i took in Hungary and Colorado without having to manually tag and manually locate them, and I have thousands of photos (hundreds of gigs of videos backed up from my phone as well) from the last 25 years taken across the world and can do this seamlessly by simply uploading them and having my server run a heuristic to automatically do this from the photograph metadata, and then proceed to share them with a self-hosted link to my spouse to enjoy.

Can I do this with NextCloud or on my phone without killing the battery?

[-] Charger8232@lemmy.ml 2 points 1 week ago

Can I do this with NextCloud or on my phone without killing the battery?

I suppose not. That's a fair point. Although I will mention, if your camera supports it, location metadata can be embedded automatically. Aves and many other gallery apps support viewing photos with location data on the map.

[-] BaroqueInMind@lemmy.one 1 points 1 week ago* (last edited 1 week ago)

I don't use gallery apps on my phone because I don't have the space for terabytes of photos and videos on my phone, but my server sitting in my closet does.

So Aves and other gallery apps are useless to me, and I'll stick with whatever native gallery app exists ob whatever phone i use.

I can remotely view my entire gallery from abroad with Immich (which also happens to allow me to sync photos), and save the space on my phone for more photos

[-] zoostation@lemmy.world 2 points 1 week ago

Why would you need a home server in addition to your day to day desktop computer? I leave my desktop on at all times because it's a Plex/ErsatzTV server, HomeAssistant server, web server for various utilities I've written, etc. It works great.

[-] Charger8232@lemmy.ml 0 points 1 week ago

I've made a point not to perpetually leave my home computer on simply because frequent restarts are healthy for it. Another reason is compartmentalization. I would want to keep my selfhosted server separate from where I game or browse the internet, if at least to keep it more secure.

[-] zoostation@lemmy.world 2 points 1 week ago

Why are frequent restarts healthy? Do you mean at a hardware level or for the OS?

[-] Charger8232@lemmy.ml 1 points 1 week ago

Both. If your hardware isn't designed like a server to run 24/7 it can be unhealthy for it, especially if it isn't properly maintained. It can cause wear to it. As far as the OS, restarting is good to clear caches, fully install some software, and keep the system sanitary overall.

[-] atomicpoet@atomicpoet.org 2 points 1 week ago

@Charger8232@lemmy.ml I run my own server for a simple reason: it means owning my social media presence.

I own my content, my audience, and who I federate with.

this post was submitted on 27 Jan 2025
82 points (82.0% liked)

Selfhosted

41868 readers
318 users here now

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:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. 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.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS