]> arthur.barton.de Git - netatalk.git/blobdiff - etc/netatalk/netatalk.c
Fix for empty volume list
[netatalk.git] / etc / netatalk / netatalk.c
index 54e93b21f23d476f21d11720520e71541650b0cf..9aaa3a742603eede7b5b68a2e34fa7f6e509b79d 100644 (file)
@@ -78,12 +78,15 @@ static int set_sl_volumes(void)
     EC_NULL_LOG( volumes = getvolumes() );
 
     for (vol = volumes; vol; vol = vol->v_next) {
-        bstring volnamequot = bformat("'%s'", vol->v_path);
-        bstrListPush(vollist, volnamequot);
+        if (vol->v_flags & AFPVOL_SPOTLIGHT) {
+            bstring volnamequot = bformat("'%s'", vol->v_path);
+            bstrListPush(vollist, volnamequot);
+        }
     }
 
     volnamelist = bjoin(vollist, sep);
-    cmd = bformat("gsettings set org.freedesktop.Tracker.Miner.Files index-recursive-directories \"[%s]\"", bdata(volnamelist));
+    cmd = bformat("gsettings set org.freedesktop.Tracker.Miner.Files index-recursive-directories \"[%s]\"",
+                  bdata(volnamelist) ? bdata(volnamelist) : "");
     LOG(log_debug, logtype_sl, "set_sl_volumes: %s", bdata(cmd));
     system(bdata(cmd));
 
@@ -407,9 +410,8 @@ int main(int argc, char **argv)
     setenv("DBUS_SESSION_BUS_ADDRESS", "unix:path=/tmp/spotlight.ipc", 1);
     setenv("XDG_DATA_HOME", _PATH_STATEDIR, 0);
     setenv("XDG_CACHE_HOME", _PATH_STATEDIR, 0);
-    setenv("XDG_CONFIG_HOME", _PATH_CONFDIR, 0);
 
-    dbus_path = iniparser_getstring(obj.iniconfig, INISEC_GLOBAL, "dbus daemon path", DBUS_DAEMON_PATH);
+    dbus_path = iniparser_getstring(obj.iniconfig, INISEC_GLOBAL, "dbus daemon", DBUS_DAEMON_PATH);
     LOG(log_debug, logtype_default, "DBUS: '%s'", dbus_path);
     if ((dbus_pid = run_process(dbus_path, "--config-file=" _PATH_CONFDIR "dbus-session.conf", NULL)) == -1) {
         LOG(log_error, logtype_default, "Error starting '%s'", dbus_path);
@@ -421,12 +423,16 @@ int main(int argc, char **argv)
 #endif
 
 #ifdef HAVE_TRACKER_SPARQL
+#ifdef SOLARIS
+    setenv("XDG_DATA_DIRS", TRACKER_PREFIX "/share", 0);
+    setenv("TRACKER_DB_ONTOLOGIES_DIR", TRACKER_PREFIX "/share/tracker/ontologies", 0);
+    setenv("TRACKER_EXTRACTOR_RULES_DIR", TRACKER_PREFIX "/share/tracker/extract-rules", 0);
+    setenv("TRACKER_LANGUAGE_STOPWORDS_DIR", TRACKER_PREFIX "/share/tracker/languages", 0);
+#endif
     set_sl_volumes();
     system(TRACKER_PREFIX "/bin/tracker-control -s");
 #endif
 #ifdef HAVE_TRACKER_RDF
-    if (asprintf(&trackerd_loglev, "--verbosity=%d", obj.options.tracker_loglevel) == -1)
-        netatalk_exit(EXITERR_CONF);
     if ((trackerd_pid = run_process(TRACKERD_PATH, trackerd_loglev, NULL)) == -1) {
         LOG(log_error, logtype_default, "Error starting '%s'", TRACKERD_PATH);
         netatalk_exit(EXITERR_CONF);