The Localsearch package contains a filesystem indexer as well as a metadata extractor.
Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://download.gnome.org/sources/localsearch/3.8/localsearch-3.8.1.tar.xz
Download MD5 sum: fc642f7cc48a1ec13aed3093daf83cdd
Download size: 4.3 MB
Estimated disk space required: 35 MB (with tests)
Estimated build time: 0.4 SBU (with parallelism=4; add as much as 1.0 SBU for tests, dependent on disk speed)
gst-plugins-base-1.24.10, tinysparql-3.8.1, Exempi-2.6.5, and gexiv2-0.14.3
giflib-5.2.2, gst-plugins-good-1.24.10 (runtime), gst-libav-1.24.10 (runtime), ICU-76.1, libexif-0.6.24, libgxps-0.3.2, libseccomp-2.5.5, Poppler-24.12.0, and UPower-1.90.6
asciidoc-10.2.1, CMake-3.31.1, DConf-0.40.0, FFmpeg-7.1, libgsf-1.14.53, NetworkManager-1.50.0, taglib-2.0.2, totem-pl-parser-3.26.6, libcue, libgrss, libitpcdata, libosinfo, and gupnp
Enable the following options in the kernel configuration, then recompile the kernel and reboot if necessary:
Security options ---> [*] Enable different security models [SECURITY] [*] Landlock support [SECURITY_LANDLOCK] # List more Linux Security Modules here (separated with comma) if needed, # for example 'landlock,lockdown,smack': (landlock) Ordered list of enabled LSMs [LSM]
If you are upgrading this package from a version where it was
known as tracker-miners, there
are several files which will cause conflicts. Before installing
this package, remove these files as the root
user:
rm -fv /etc/xdg/autostart/tracker-miner-fs-3.desktop && rm -fv /usr/lib/systemd/user/tracker-miner-fs-3.service && rm -fv /usr/lib/systemd/user/tracker-miner-fs-control-3.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Writeback.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.Control.service
If you plan to run the tests, some timeouts are too short when
using spinning disks. There are two places where timeouts are
used: first, individual tests inside a group of tests have a
default timeout of 10s. This can be changed by setting the
environment variable TRACKER_TESTS_AWAIT_TIMEOUT
to the desired value
when running the tests (see below). Second, a global timeout for
a group of tests is fixed at configuration time. The default
value in the functional-tests
directory (other directories have only short lived tests) may be
increased with the following command (replace 200 with a value
suitable for your machine):
sed -i s/120/200
/ tests/functional-tests/meson.build
Install Localsearch by running the following commands:
mkdir build && cd build && meson setup --prefix=/usr \ --buildtype=release \ -D man=false \ -D miner_rss=false \ .. && ninja
To test the results, issue (adjust the individual test timeout to a value suitable for your machine, see the note above):
dbus-run-session env LC_ALL=C.UTF-8 TRACKER_TESTS_AWAIT_TIMEOUT=20
\
ninja test &&
rm -rf ~/tracker-tests
Now, as the root
user:
ninja install
The tests create files in the user directory (up to 24 MB), so they have to be removed afterwards.
--buildtype=release
:
Specify a buildtype suitable for stable releases of the package, as
the default may produce unoptimized binaries.
-D man=false
: This switch
prevents the build process from generating man pages. Omit this
switch if you have asciidoc-10.2.1 installed and wish to
generate and install the man pages.
-D miner_rss=false
: This
switch prevents using libgrss for indexing RSS feeds because
libgrss is insecure and no longer in BLFS.
-D seccomp=false
: This option disables
the seccomp system call filter. On some architectures, such as i686
and ARM, the functions that tracker-miners uses are not guarded
properly, and tracker-miners will get killed with a SIGSYS as a
result. Note that disabling seccomp may cause the system to be
compromised worse in the event that a security vulnerability in
localsearch or its dependencies is exploited.
-D landlock=disabled
: This switch
disables the Landlock file access sandbox. Use it if you don't want
to build the kernel with Landlock support. Note that disabling
Landlock may cause the system to be compromised worse in the event
that a security vulnerability in localsearch or its dependencies is
exploited.
-D battery_detection=none
: Use this
option if you have not installed the recommended dependency upower.
Do not use this option if your system has a battery (laptop battery
or UPS), or localsearch may waste the battery power and lifespan
when the A/C power is unavailable.