this post was submitted on 14 Jan 2024
32 points (100.0% liked)

Selfhosted

39980 readers
780 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 1 year ago
MODERATORS
 

I’ve been trying out Kavita as an ebook software, and I really like it so far, with one exception. Accounts are all local to the app, and there is no ability handle user accounts through their site, similar to how Plex does it. This means that every time I screw up and have to set up again over the years, my users will have to get new invites and make new accounts. When I mess up Plex and have to reinstall, I can just add new permissions for the users already linked to my account, which makes it easy to transition everyone to a new server with minimal impact to my viewers.

Before I fully commit to Kavita, is there any program out there for ebooks that has accounts managed through a central server rather than my local one?

top 21 comments
sorted by: hot top controversial new old
[–] [email protected] 7 points 10 months ago (2 children)

I use Calibre-Web and external auth. The auth headers are added by Authelia + Nginx which sit in front of it.

Not exactly turn-key, but since I was already using Authelia, it was simple enough to switch from local accounts to external.

[–] [email protected] 2 points 10 months ago (1 children)

Similarly I use COPS (php calibre front-end)... But with no users or auth. If you can guess the URL you are in! Exciting.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago) (1 children)
[–] [email protected] 1 points 9 months ago

Thanks for the link. Yeah, my server is old. COPS is old, but still works great for me. .

Calibre has built in server, but while running server (last I checked) it locks the db so you can't do much with the Gui, can't add books etc. Also I'm already running a a web server with php so it's more efficient just to slap the COPS web app there rather than run yet another server.

[–] [email protected] 1 points 9 months ago (1 children)

Any good resources you can point me to for that?

[–] [email protected] 2 points 9 months ago

I use the version packaged by linuxserver.io:

https://docs.linuxserver.io/images/docker-calibre-web/

Unfortunately, that's about as good of docs as I've been able to find for it.

To configure external auth, go to its web interface at /admin/config and then expand "Feature Configuration"

There's a checkbox for "Enable reverse proxy authentication" and below that a field to specify the header name that will contain the email address of the authenticated user. In my case, it's REMOTE_EMAIL.

That header will vary depending on what you have setup for authentication, but it needs to provide an email address that determines the user.

My version is a little old, but from skimming the current docs, it may support OAUTH now.

[–] [email protected] 6 points 10 months ago (1 children)

Just backup your data and restore it?

[–] [email protected] 2 points 10 months ago

Over the years, as I’ve learned more and gotten better at things, I’ve occasionally had the need to try new Linux distros or remake a VM to fix a bigger problem that I’m not skilled enough to detangle yet. I could probably get away with backups and restores now, but Plex’s account management has saved my butt several times over the years, so I figured it was worth checking to see if there was something similar out there.

[–] [email protected] 4 points 9 months ago (1 children)

Jellyfin does books but its a little wonky right now from.my experience

[–] [email protected] 2 points 9 months ago

Are you optimistic about the Jellyfin epub library support?

[–] [email protected] 3 points 9 months ago (1 children)

How about using LDAP? It's a bit complicated to learn but it's easy to integrate it in a bunch of applications and it allows you to manage user accounts and permissions in one central place.

Maybe try LLDAP which is a modern implementation (haven't used it myself) which is designed to be simplified and I assume more welcoming to newcomers.

[–] [email protected] 3 points 9 months ago

Thanks, I will have to do some googling about that today.

[–] [email protected] 3 points 10 months ago (1 children)

Jellyfin has a (plugin) opds server for ebooks that use the same accounts as the rest of jellyfin. I use calibre to deal with organization/metadata.

If you have a bunch of plex users, switching to jellyfin might be a bridge too far.

[–] [email protected] 1 points 9 months ago (1 children)

Are jellyfin accounts handled through their own account system like Plex?

[–] [email protected] 1 points 9 months ago (1 children)

No. Jellyfin accounts are local. So you need to set them up on the server. No external auth system

[–] [email protected] 1 points 9 months ago

Looks like there is an LDAP auth plugin: https://github.com/jellyfin/jellyfin-plugin-ldapauth

If you ran such a beast.

[–] [email protected] 2 points 9 months ago (2 children)

I love the look and idea of Kavita, but I wish it was written in something like node.js instead of .net. It requires a handful of shared libraries on non-windows platforms, and I can rarely get it to work.

[–] [email protected] 2 points 9 months ago (1 children)

It's not as slick looking but take a look at Ubooquity. I have it on my Linux server and haven't had any issues. Granted I mostly use it for sharing ebook files, not reading them on the server itself so it might not be what you're looking for

[–] [email protected] 1 points 9 months ago

It's worth pointing out that Ubooquity is dead in terms of development.

[–] [email protected] 2 points 9 months ago

Have you tried the docker version? Works perfectly for me. Here’s my docker config if you want to give it a shot:

sudo docker run -d
--name=kavita
-e PUID=1000
-e PGID=1000
-e TZ=YOUR/TIMEZONE
-p 5000:5000
-v path/to/kavita/config/:/config
-v path/ro/kavita/ebooks/:/data
--restart unless-stopped
lscr.io/linuxserver/kavita:latest

Edit the time zone and volume paths as needed. You can just make a new volume for config and it will fill it with settings stuff, and then point the data volume to the folder with your ebooks.

The ebooks themselves need to be sorted a little differently depending on if they are PDF’s, ePub, or comics, but it isn’t to hard once you get the hang of it. Basically ePub likes to be in a subfolder and PDF likes to be in the root folder for some reason, otherwise it puts the PDF’s in a collection named after the subfolder.

Overall, I’ve been really happy with Kavita and think it has a lot of potential, especially as an ebook extension of Plex since the layout is nearly identical.

[–] [email protected] 1 points 9 months ago

I recommend going with regular backups and maybe something like docker. Then you just have to restore the config volumes and all the accounts should still be there.