aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsalmon <salmonik@tuta.io>2026-08-09 23:24:03 +0200
committersalmon <salmonik@tuta.io>2026-08-09 23:24:03 +0200
commiteb9d3c3ce0f6063ceaf50cd527158fd800c56607 (patch)
treeec0ddd24745c535ed449b6909090afee2fc8126d
parentActual message when daemon could not be found (diff)
downloadrsplayer-eb9d3c3ce0f6063ceaf50cd527158fd800c56607.tar.gz
rsplayer-eb9d3c3ce0f6063ceaf50cd527158fd800c56607.zip
Document FreeBSD requirements in README
-rw-r--r--README.md33
1 files changed, 32 insertions, 1 deletions
diff --git a/README.md b/README.md
index 7826c41..9cc85fb 100644
--- a/README.md
+++ b/README.md
@@ -12,6 +12,37 @@ install.sh will:
12- install shell autocompletions (zsh, bash and fish supported) 12- install shell autocompletions (zsh, bash and fish supported)
13- install user systemd service and activate it 13- install user systemd service and activate it
14 14
15## FreeBSD
16
17FreeBSD is supported out of the box; no code changes or extra Rust crates are needed.
18The audio backend (cpal) uses ALSA on FreeBSD, which is provided by the ports as a
19userspace shim over the kernel's OSS (/dev/dsp).
20
21Requirements:
22```
23pkg install alsa-lib alsa-plugins # audio: ALSA API + OSS backend plugin (mandatory)
24pkg install cmake # build-time only, for the rustls TLS stack (aws-lc-sys)
25pkg install rust # if you don't have a Rust toolchain yet
26```
27
28Build and install (FreeBSD convention is /usr/local/bin):
29```
30cargo build --release
31install -m 755 target/release/rsp /usr/local/bin/rsp
32```
33
34FreeBSD notes:
35- There is no systemd: run `rsp start-daemon` manually, from your login shell,
36 or via an rc.d script. `start-daemon`/`stop-daemon`/`restart` behave the same.
37- XDG_RUNTIME_DIR is not set by default on FreeBSD, so the daemon socket and PID
38 file fall back to /tmp/rsplayer/. Set XDG_RUNTIME_DIR in your rc.d script or
39 shell profile if you prefer a private runtime dir.
40- Desktop notifications and MPRIS (playerctl etc.) require a running D-Bus session
41 bus (`pkg install dbus`) and a notification daemon; without them the daemon runs
42 fine, those features are just disabled.
43- If you have multiple sound cards, pick the output with:
44 `sysctl hw.snd.default_unit=N` (persist in /etc/sysctl.conf).
45
15## Usage 46## Usage
16 47
17configuration is generated at startup in $XDG_CONFIG_HOME/rsplayer/config.toml 48configuration is generated at startup in $XDG_CONFIG_HOME/rsplayer/config.toml
@@ -26,7 +57,7 @@ all other values can be changed in runtime using commands
26as for commands: 57as for commands:
27RSP will be installed as rsp, in this fragment, rsp will be ommited 58RSP will be installed as rsp, in this fragment, rsp will be ommited
28 59
29these commands should only be used in testing or by systemd service: 60these commands should only be used in testing or by the init system (systemd/rc.d):
30- `start-daemon` Start the daemon 61- `start-daemon` Start the daemon
31- `stop-daemon` Stop the daemon 62- `stop-daemon` Stop the daemon
32- `restart` Restart the daemon (kill existing and start new) 63- `restart` Restart the daemon (kill existing and start new)