rmlint \(\geq 2.4.0\) a GUI frontend called
shipped alongside of
rmlint. It is written in Python and uses no external
gtk+ \(\geq 3.14\) and
The user interface is still in development. Use at your own risk! There is a safety net though: Every file will be re-checked before its deletion.
If you compiled
rmlint from source,
scons will try to build and install
the GUI, except you pass
--without-gui to it.
The GUI can be started via
rmlint --gui.The application is divided into several
views that guide you through the duplicate finding process.
Shows a list of locations the user might want to scan. A number of locations is guessed from the list of mounted volumes, recently used files and a static set of paths. The user can of course add a new location via a filebrowser.
The user can select one or multiple paths and hit Scan. In prior he might choose to prefer certain paths, so only files in non-preferred paths are deleted if they have a twin in a preferred path.
After hitting scan in the locations view, the application will start
in the background. The output will be shown live in the treeview on the left.
Once finished, a chart will be shown on the right that shows how the duplicates
are distributed over the scanned directories. The treeview will show the
detailed list of found files. A red cross will indicate that
to delete this file, a green checkmark will make it keep it.
The user can edit those to his liking.
Additionally, the view can be filtered after a search query. In the simplest
case this filters by a path element, in more complex usecases you can also
filter by size, mtime and twincount. The latter can be done by adding
size:1M-2M,3M-4M to the query (similar with
Once happy with the results, the user can generate a script out of the results (all or just those that are visible).
A source editor will show the generated script. It can be edited and searched
through. Apart from that, the file can be saved not only a
.sh file, but
The user can now choose to save the script and execute it himself, or
to click the
Run Script button. If this button is blue, it indicates a dry
run, where nothing will be deleted. A red button however will kill your files.
In any way, a running counter of deleted bytes will be shown.
The settings view is the leftmost view and will not be shown by default in the process. It can always be accessed by:
Normal user probably do not need to adjust anything.
The options shown here, resemble the option that may be given to
the commandline of
The design loosely follows the Gnome Human Interface Guidelines. [*] Beside the appearance, this means that the program should be easy and intuitive to use. Suggested actions should be clear to recognize and the application should always be responsive and never just do work in the background.
Shredder works by forking off
rmlint and reading its json output in
parallel. The script generation works by calling
rmlint --replay on the
json file, since this is the only sane way to filter the results
of all formats properly.