about summary refs log tree commit diff stats
path: root/pkgs/by-name/mp/mpdpopm/src/config.rs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-01-31 16:21:47 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-01-31 16:21:47 +0100
commit00e7c2523274688015877b643b185dc7fb42b08c (patch)
tree472c1b849ebfc53ef11efc27951b766ef45d2a51 /pkgs/by-name/mp/mpdpopm/src/config.rs
parentpkgs/mpdpopm: Provide full access queries via the `searchadd` command (diff)
downloadnixos-config-00e7c2523274688015877b643b185dc7fb42b08c.zip
pkgs/mpdpopm: Don't fail on config init, when `MPD_HOST` is unset
Diffstat (limited to '')
-rw-r--r--pkgs/by-name/mp/mpdpopm/src/config.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/pkgs/by-name/mp/mpdpopm/src/config.rs b/pkgs/by-name/mp/mpdpopm/src/config.rs
index 2d9c466b..b4fe3c53 100644
--- a/pkgs/by-name/mp/mpdpopm/src/config.rs
+++ b/pkgs/by-name/mp/mpdpopm/src/config.rs
@@ -56,7 +56,16 @@ pub enum Connection {
 
 impl Connection {
     pub fn new() -> Result<Self> {
-        let env = env::var("MPD_HOST")?;
+        let env = match env::var("MPD_HOST") {
+            Ok(env) => Some(env),
+            Err(err) => match err {
+                env::VarError::NotPresent => None,
+                env::VarError::NotUnicode(_) => {
+                    bail!("Failed to get `MPD_HOST` env var: {err}")
+                }
+            },
+        }
+        .unwrap_or("/run/mpd/socket".to_owned());
 
         if env.starts_with("/") {
             // We assume that this is a path to a local socket