Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix AIOStreams: set runtime NODE_OPTIONS, document FUSE share require…
…ment

- systemd unit was building with --max-old-space-size=3072 but then
  unsetting NODE_OPTIONS before the service starts, so the running
  server got none of upstream's own runtime tuning. Upstream's
  package.json start script and official Docker image both run with
  --max-semi-space-size=8 --expose-gc; add that as the service's
  Environment= so the deployed server matches upstream's own defaults.
- Document that the optional FUSE library-mount share (off by default)
  needs /dev/fuse + SYS_ADMIN, which this unprivileged container
  doesn't have - traced through packages/server/src/fuse.ts and the
  shares config schema to confirm it degrades gracefully (state
  "unavailable") rather than breaking startup, so this is
  documentation, not a required fix.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
  • Loading branch information
MrNRod and claude committed Oct 5, 2026
commit f648d62bcd089454193e4425d7f69cb682fbcf03
1 change: 1 addition & 0 deletions install/aiostreams-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ Type=simple
User=root
WorkingDirectory=/opt/aiostreams
EnvironmentFile=/opt/aiostreams/.env
Environment="NODE_OPTIONS=--max-semi-space-size=8 --expose-gc"
ExecStart=/usr/bin/node /opt/aiostreams/packages/server/dist/server.js
Restart=on-failure
RestartSec=5
Expand Down
4 changes: 4 additions & 0 deletions json/aiostreams.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,10 @@
{
"text": "Most configuration (addons, presets, formatting, proxying) is done from the dashboard Settings page after deployment, not via the .env file.",
"type": "info"
},
{
"text": "The optional \"mount the library as a local folder\" share (Shares > FUSE) is disabled by default and needs /dev/fuse plus the SYS_ADMIN capability, neither of which this container has since it's unprivileged. It's not required for normal use - the WebDAV and NFS shares work without it - but if you want it, either build privileged or pass /dev/fuse through and add the container's AppArmor/cgroup allowances yourself.",
Comment thread
MrNRod marked this conversation as resolved.
Outdated
"type": "info"
}
]
}