A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita audio rust zig deno mpris rockbox mpd
at master 31 lines 805 B view raw
1use std::{env, thread}; 2 3use anyhow::Error; 4use opener::open; 5use owo_colors::OwoColorize; 6use rockbox::{install_rockboxd, wait_for_rockboxd}; 7 8use super::start::*; 9 10pub fn webui() -> Result<(), Error> { 11 let port = env::var("ROCKBOX_UI_PORT").unwrap_or_else(|_| "6062".to_string()); 12 install_rockboxd()?; 13 14 let handle = thread::spawn(|| match start(false) { 15 Ok(_) => {} 16 Err(e) => { 17 eprintln!("Failed to start Rockbox server: {}", e); 18 } 19 }); 20 21 wait_for_rockboxd(port.parse()?, None)?; 22 match open(format!("http://localhost:{}", port)) { 23 Ok(_) => {} 24 Err(_) => println!( 25 "Open this link in your browser {}", 26 format!("http://localhost:{}", port).purple() 27 ), 28 }; 29 handle.join().unwrap(); 30 Ok(()) 31}