A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita audio rust zig deno mpris rockbox mpd
at master 49 lines 1.5 kB view raw
1require("rbsettings") 2require("settings") 3rb.metadata = nil -- remove track metadata settings 4------------------------------------------------------------------------------- 5 6local function print_setting_table(t_tbl, s_sep) 7 s_sep = s_sep or "" 8 local str = "" 9 local function pfunct(t, sep, s, n) -- recursive print function 10 local vtype 11 for k, v in pairs(t) do 12 vtype = type(v) 13 if vtype == "table" then 14 local f = string.format("%s[%s]", n, k) 15 s = pfunct(v, sep, s, f) 16 elseif vtype == "boolean" then 17 v = v and "true" or "false" 18 s = string.format("%s%s[%s] = %s%s", s, n, k, v, sep) 19 elseif v then 20 s = string.format("%s%s[%s] = %s%s", s, n, k, v, sep) 21 end 22 end 23 return s 24 end 25 return pfunct(t_tbl, s_sep, str, "") 26end 27 28local filename = "/settings.txt" 29local file = io.open(filename, "w+") -- overwrite 30local t_settings 31 32if not file then 33 rb.splash(rb.HZ, "Error writing " .. filename) 34 return 35end 36 37t_settings = rb.settings.dump('global_settings', "system") 38file:write("global_settings:\n") 39file:write(print_setting_table(t_settings, "\n")) 40file:write("\n\n") 41 42t_settings = rb.settings.dump('global_status', "system") 43file:write("global_status:\n") 44file:write(print_setting_table(t_settings, "\n")) 45file:write("\n\n") 46 47file:close() 48 49rb.splash(100, "rb settings dumped: " .. filename)