Package Details: audiobookshelf 1:2.31.0-1

Git Clone URL: https://aur.archlinux.org/audiobookshelf.git (read-only, click to copy)
Package Base: audiobookshelf
Description: Self-hosted audiobook server for managing and playing audiobooks
Upstream URL: https://github.com/advplyr/audiobookshelf
Licenses: GPL-3.0-only
Submitter: ruahcra
Maintainer: ruahcra (wnndgws, evine)
Last Packager: evine
Votes: 9
Popularity: 1.92
First Submitted: 2024-02-24 08:28 (UTC)
Last Updated: 2025-12-02 00:16 (UTC)

Latest Comments

1 2 3 4 5 Next › Last »

ruahcra commented on 2025-11-30 07:41 (UTC) (edited on 2025-11-30 07:42 (UTC) by ruahcra)

Build is fixed now. Can remove workaround once https://github.com/advplyr/audiobookshelf/issues/4876 is resolved.

Pinned Node to LTS version (v20) as that's what the upstream Dockerfile uses anyway

Left libnusqlite3 since couldn't find documentation about what removing this for an existing installation would do / what exactly is lost by not having this installed other than just "Unicode". If someone can confirm with upstream and report back that would be great :)

Qwerty-Space commented on 2025-11-26 10:00 (UTC)

This package fails to build

o0oradaro0o commented on 2025-11-25 03:40 (UTC) (edited on 2025-11-25 03:41 (UTC) by o0oradaro0o)

As a heads up if you use the gitea kindly provided by balki and your audiobook library is in your home directory somewhere audiobookshelf will no longer be able to access it. I believe because he added ProtectHome=yes as part of this commit: https://gitea.balki.me/balki-aur/audiobookshelf/commit/45cef2195cc3680578f378b1db6f092a959b5127 and that is what is meant by "Add harden systemd directives" but I'm no expert. Other than that his branch does seem to work so thanks balki.

balki commented on 2025-11-02 17:38 (UTC) (edited on 2025-11-02 17:39 (UTC) by balki)

I have updated PKGBUILD implementing the previous comments here: https://gitea.balki.me/balki-aur/audiobookshelf

Changes:
* Use nodejs-lts instead of nodejs (as v25 is broken)
* add `npm install` in build step
* Remove libnusqlite dependency
* Add harden systemd directives

Diff as of now: https://gitea.balki.me/balki-aur/audiobookshelf/compare/bb1f4ef582ef4ce0fe69d412ea2cc8cee150581d...79b01e1deafe8233b43ad46b6463dcc3165bbc03#

commontime commented on 2025-10-25 17:30 (UTC) (edited on 2025-10-25 17:31 (UTC) by commontime)

Looks like there's an incompatibility with node v25.0.0

Oct 25 10:14:16 systemd[1]: Started Self-hosted audiobook server for managing and playing audiobooks.
Oct 25 10:14:17 audiobookshelf[1524]: /usr/lib/audiobookshelf/node_modules/buffer-equal-constant-time/index.js:37
Oct 25 10:14:17 audiobookshelf[1524]: var origSlowBufEqual = SlowBuffer.prototype.equal;
Oct 25 10:14:17 audiobookshelf[1524]:                                   ^
Oct 25 10:14:17 audiobookshelf[1524]: TypeError: Cannot read properties of undefined (reading 'prototype')
Oct 25 10:14:17 audiobookshelf[1524]:     at Object.<anonymous> (/usr/lib/audiobookshelf/node_modules/buffer-equal-constant-time/index.js:37:35)
Oct 25 10:14:17 audiobookshelf[1524]:     at Module._compile (node:internal/modules/cjs/loader:1759:14)
Oct 25 10:14:17 audiobookshelf[1524]:     at Object..js (node:internal/modules/cjs/loader:1892:10)
Oct 25 10:14:17 audiobookshelf[1524]:     at Module.load (node:internal/modules/cjs/loader:1479:32)
Oct 25 10:14:17 audiobookshelf[1524]:     at Module._load (node:internal/modules/cjs/loader:1298:12)
Oct 25 10:14:17 audiobookshelf[1524]:     at TracingChannel.traceSync (node:diagnostics_channel:328:14)
Oct 25 10:14:17 audiobookshelf[1524]:     at wrapModuleLoad (node:internal/modules/cjs/loader:244:24)
Oct 25 10:14:17 audiobookshelf[1524]:     at Module.require (node:internal/modules/cjs/loader:1502:12)
Oct 25 10:14:17 audiobookshelf[1524]:     at require (node:internal/modules/helpers:152:16)
Oct 25 10:14:17 audiobookshelf[1524]:     at Object.<anonymous> (/usr/lib/audiobookshelf/node_modules/jwa/index.js:1:19)
Oct 25 10:14:17 audiobookshelf[1524]: Node.js v25.0.0
Oct 25 10:14:17 systemd[1]: audiobookshelf.service: Main process exited, code=exited, status=1/FAILURE
Oct 25 10:14:17 systemd[1]: audiobookshelf.service: Failed with result 'exit-code'.

downgrading to nodejs-24.9.0-1 resolved the issue for me

aeonblue commented on 2025-10-12 10:22 (UTC)

@Gilrain Yep that fixed it, thanks!

Gilrain commented on 2025-10-10 15:56 (UTC)

The important part is this one:

npm error `npm ci` can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with `npm install` before continuing.

The solution is to insert 'npm install' in between the 2 npm command in build (it works, but don't ask me why).

aeonblue commented on 2025-10-09 11:06 (UTC)

Version 2.30 is failing to install for me.

Here's the output: https://pastebin.com/vHaKWQq2

I don't understand any of the npm stuff but this is the first error which appears:

[9:58:08 pm] ERROR (node:23572) [DEP0187] DeprecationWarning: Passing invalid argument types to fs.existsSync is deprecated (Use node --trace-deprecation ... to show where the warning was created)

Shasta commented on 2025-06-12 21:00 (UTC) (edited on 2025-06-12 21:03 (UTC) by Shasta)

The libnusqlite3 dependency is optional. So if anyone else doesn't want to install it, you can safely remove it from the PKGBUILD and remove NUSQLITE3_PATH from the conf.d env file, presumably at the cost of some Unicode handling.

It might be nice to set this as an optdepends, this library seems unmaintained, and basically unused by any other projects so I wasn't wanting to install it.

Source:

https://github.com/advplyr/audiobookshelf/blob/22f6e86a12bd4a52f5cbddd76ea043cae3e3f3d0/server/Database.js#L257

https://github.com/advplyr/audiobookshelf/blob/22f6e86a12bd4a52f5cbddd76ea043cae3e3f3d0/server/managers/BinaryManager.js#L327 (this line is setting the "required" argument to false)

evine commented on 2025-03-30 12:25 (UTC)

@shierji This issue occurred because upgrading CMake to version 4.0 caused a compilation error in libnusqlite3, a dependency of audiobookshelf. The compilation issue has now been fixed in libnusqlite3, so you can simply reinstall it to resolve the problem.