8 brisa.__enable_events_logging__ = True
9 from brisa.core import config
10 from brisa.core import log
11 from brisa.core.system import daemonize
12 from brisa.utils import options
15 from zukebox_server.system import linux
16 from zukebox_server.server.zb_server import ZukeBoxServer
19 pexists = os.path.exists
21 home_path = os.path.expanduser("~")
22 zb_base_path = pjoin(home_path, ".zukebox")
23 zb_database_path = pjoin(zb_base_path, "audio_library.db")
24 zb_module_path = zukebox_server.__path__[0]
25 zb_plugins_path = pjoin(zb_module_path, "plugins")
26 zb_services_path = pjoin(zb_module_path, "services")
27 zb_xml_path = pjoin(zb_module_path, "xml_descriptions")
29 plugin_section = "zukebox_server_plugin-audio-library"
31 def get_zbus_service():
33 bus = dbus.SessionBus()
34 bus_obj = bus.get_object("br.org.zagaia",
35 "/br/org/zagaia/ZukeBox")
36 bus_iface = dbus.Interface(bus_obj, "br.org.zagaia.ZukeBox")
37 log.info("zukebox-server.executing rescan audio path...")
38 bus_iface.rescan_audio_folder()
41 log.info("creating the dot zukebox path")
42 version = pjoin(zb_base_path, "version")
46 os.makedirs(zb_base_path, 0700)
47 open(version, "w").write(version_str)
49 if not pexists(zb_base_path):
54 log.info("setting the zukebox variables in config.manager")
56 config.manager.set_parameter("zukebox_server", "name", "ZukeBox Server")
57 config.manager.set_parameter("zukebox_server", "owner", "zukebox-server")
58 config.manager.set_parameter("zukebox_server", "module_path", zb_module_path)
59 config.manager.set_parameter("zukebox_server", "plugins", zb_plugins_path)
60 config.manager.set_parameter("zukebox_server", "services", zb_services_path)
61 config.manager.set_parameter("zukebox_server", "xml_path", zb_xml_path)
64 config.manager.set_parameter(plugin_section, "owner",
65 "zukebox_server_plugin-audio_library")
66 config.manager.set_parameter(plugin_section, "database_location",
68 config.manager.set_parameter(plugin_section, "enable", True)
70 sp = linux.SystemProperties()
71 audio_folder = sp.DEFAULT_DIR_AUDIO
73 config.manager.set_parameter(plugin_section, "audio_folder", audio_folder)
78 log.info("ZukeBox Server starting....")
79 listen_url, daemon = options.parse_args("ZukeBox Server")
80 print listen_url, daemon
83 server_name = config.get_parameter("zukebox_server", "name")
84 zb_srv = ZukeBoxServer(server_name, listen_url)
92 if __name__ == '__main__':