FTS desktop file search with previews
Dosyaya git
Albert S e715be9787 gui: Fix dispatch of SandboxedProcessor
There was an off-by-one, the SandboxedProcessor was only passed
'process', not the path to the file.

No processor was found for 'process', thus 'nothingProcessor' was
returned. Therefore, we never sandboxed (because we never had
to process anything).

The sandboxing would have failed though, because we need to launch
QCoreApplication, not QApplication.

The CLI was never affected.
2022-06-04 17:09:26 +02:00
cli cli: CommandUpdate: Add missing clear of files vector 2022-04-25 22:22:40 +02:00
gui gui: Fix dispatch of SandboxedProcessor 2022-06-04 17:09:26 +02:00
shared FileSaver: Don't add files in blacklisted paths 2022-06-04 17:09:26 +02:00
submodules submodules: exile.h: Update 2022-06-04 17:09:26 +02:00
.gitmodules Switch to exile.h 2022-01-01 17:58:52 +01:00
icon.svg gui: Add icon 2022-04-28 09:13:34 +02:00
LICENSE add LICENSE 2022-04-24 20:07:25 +02:00
looqs.desktop Begin a .desktop file 2022-02-04 18:19:08 +01:00
looqs.pro Rename qss.pro to looqs.pro 2021-06-12 15:14:10 +02:00
README.md update README 2022-05-29 11:20:28 +02:00

looqs - FTS for the Linux desktop with previews for search results

looqs creates a full text search index for your files. It allows you to look at previews where your search terms have been found, as shown in the screenshots below.

Screenshots

The screenshots in this section may occasionally be slightly outdated, but they are usually recent enough to get an overall impression of the current state.

List

Screenshot looqs results

Preview

Screenshot looqs Screenshot looqs search fstream

Current status

Last version: 2022-0X-XX, v0.1

Please see Changelog for a human readable list of changes.

Goals and principles

  • Find & Preview. Instead of merely telling you where your search phrase has been found, it should also render the corresponding portion/pages of the documents and highlight the searched words.
  • No daemons. As some other desktop search projects are prone to have annoying daemons running that eat system resources away, this solution should make do without daemons where possible.
  • Easy setup. Similiarly, there should be no need for heavy-weight databases. Instead, this solution tries to squeeze out the most from simple approaches. In particular, it relies on sqlite.
  • GUI & CLI. Provide CLI interfaces and GUI interfaces
  • Sandboxing. As reading and rendering lots of formats naturally opens the door for security bugs, those tasks are offloaded to small, sandboxed sub-processes to mitigate the effect of exploited vulnerabilities.

Supported platforms

Linux (on amd64) is currently the main focus. Currently, I don't plan on supporting anything else and the sandboxing architecture does not make it likely. I suppose a version without sandboxing might be conceivable for other platforms, but I have no plans or resources to actively target anything but Linux at this point.

Licence

GPLv3.

Contributing

Fow now, github issues and pull-requests are preferred, but you can also just email your patches or issues to : looqs at quitesimple.org

Build

Ubuntu 21.10/22.04

git submodule init
git submodule update
sudo apt install build-essential qtbase5-dev libpoppler-qt5-dev libuchardet-dev libquazip5-dev
qmake
make

Documentation

Please see Usage.md for the user manual.

Packages

Coming soon™