diff --git a/seeddms/install/etc/periodic/15min/seeddms b/seeddms/install/etc/periodic/15min/seeddms
new file mode 100755
index 0000000..1abcd46
--- /dev/null
+++ b/seeddms/install/etc/periodic/15min/seeddms
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+if [ -e /run/openrc/started/seeddms ]; then
+ lxc-attach -u 8010 -g 8010 seeddms -- /srv/seeddms/seeddms/utils/seeddms-indexer >/dev/null
+fi
diff --git a/seeddms/install/etc/periodic/hourly/seeddms b/seeddms/install/etc/periodic/hourly/seeddms
deleted file mode 100755
index 920a3be..0000000
--- a/seeddms/install/etc/periodic/hourly/seeddms
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-if [ -e /run/openrc/started/seeddms ]; then
- # TODO: Check why this stopped working after 5.1.7
- lxc-attach -u 8010 -g 8010 seeddms -- sh -c "cd /srv/seeddms/seeddms/utils; php indexer.php --config /srv/seeddms/conf/settings.xml" >/dev/null
-fi
diff --git a/seeddms/install/srv/seeddms/conf/settings.xml b/seeddms/install/srv/seeddms/conf/settings.xml
index 7b57afc..1dbfe31 100644
--- a/seeddms/install/srv/seeddms/conf/settings.xml
+++ b/seeddms/install/srv/seeddms/conf/settings.xml
@@ -21,7 +21,7 @@
-
+
pdftotext -enc UTF-8 -nopgbrk %s -
unoconv -d document -f txt --stdout %s
diff --git a/seeddms/lxc/srv/seeddms/seeddms/utils/seeddms-indexer b/seeddms/lxc/srv/seeddms/seeddms/utils/seeddms-indexer
new file mode 100755
index 0000000..42bc537
--- /dev/null
+++ b/seeddms/lxc/srv/seeddms/seeddms/utils/seeddms-indexer
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+cd $(realpath $(dirname "${0}"))
+(
+ if ! flock -n 3; then
+ echo "Indexer is still running"
+ exit 1
+ fi
+ /usr/bin/php indexer.php --config /srv/seeddms/conf/settings.xml
+) 3>indexer.lock