Skip to content
Find duplicate files
Branch: master
Clone or download
arsenetar Merge pull request #572 from jpvlsmv/issue-570
Issue 570 - CI process improvements
Latest commit ad2a07a May 23, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update and Oct 11, 2018
.tx Pulled all locs from Transifex Aug 3, 2013
core Bump version to 4.0.4 RC May 14, 2019
help Remove RC from changelog version May 14, 2019
hscommon @ a56aee2 Update hscommon & .travis.yml for Python 3.7 Dec 5, 2018
images Update packaging to conform with package unification and few fixes (#372 Jun 29, 2016
locale Updated wrongly translated wording Jul 11, 2018
pkg Add make install and make uninstall Aug 24, 2016
qt Merge pull request #534 from arsenetar/504 Apr 27, 2019
qtlib @ 5fc960d Update submodule for hscommon & qtlib Feb 28, 2018
scripts Add 'make srcpkg' Aug 23, 2016
.ctags Add ctags config Jun 8, 2016
.gitignore Update Windows Build Mar 25, 2019
.gitmodules Remove cocoa Mar 12, 2017
.travis.yml Use 3-ending python names consistantly May 23, 2019
CREDITS Moved credits to the root folder Aug 17, 2016
LICENSE Change license from BSD to GPLv3 Jan 4, 2015
Makefile Make tox work with non-venv interpreters Sep 19, 2017 Update and Oct 11, 2018 Initial Update of Windows Packaging (#438) Aug 28, 2017 Remove cocoa-related code from Mar 12, 2017 Bump version to 4.0.4 RC May 14, 2019
requirements-extra.txt Install requisites in install task, move tox-travis into -extras May 21, 2019
requirements-windows.txt Update Windows Build Mar 25, 2019
requirements.txt Integrated the jobprogress library into hscommon Oct 5, 2014 Initial Update of Windows Packaging (#438) Aug 28, 2017
tox.ini Reference standard dependencies on Windows May 23, 2019
win_version_info.temp Update Windows Build Mar 25, 2019


dupeGuru is a cross-platform (Linux, OS X, Windows) GUI tool to find duplicate files in a system. It's written mostly in Python 3 and has the peculiarity of using multiple GUI toolkits, all using the same core Python code. On OS X, the UI layer is written in Objective-C and uses Cocoa. On Linux, it's written in Python and uses Qt5.

The Cocoa UI of dupeGuru is hosted in a separate repo:

Current status: Additional Maintainers Wanted (/ Note on Things in General)

When I started contributing to dupeGuru, it was to help provide an updated Windows build for dupeGuru. I hoped to contribute more over time and help work through some of the general issues as well. Since Virgil Dupras left as the lead maintainer, I have not been able to devote enough time to work through as many issues as I had hoped. Now I am going to be devoting a more consistent amount of time each month to work on dupeGuru, however I will not be able to get to all issues. Additionally there are a few specific areas where additional help would be appreciated:

  • OSX maintenance
    • UI issues (I have no experience with cocoa)
    • General issues & releases (I lack OSX environments / hardware to develop and test on, looking into doing builds through Travis CI.)
  • Linux maintenance
    • Packaging (I have not really done much linux packaging yet, although will be spending some time trying to get at least .deb and potentially ppa's updated.)

I am still working to update the new site & update links within the help and the repository to use the new urls. Additionally, hoping to get a 4.0.4 release out this year for at least Windows and Linux.


Andrew Senetar

Contents of this folder

This folder contains the source for dupeGuru. Its documentation is in help, but is also available online in its built form. Here's how this source tree is organised:

  • core: Contains the core logic code for dupeGuru. It's Python code.
  • qt: UI code for the Qt toolkit. It's written in Python and uses PyQt.
  • images: Images used by the different UI codebases.
  • pkg: Skeleton files required to create different packages
  • help: Help document, written for Sphinx.
  • locale: .po files for localisation.

There are also other sub-folder that comes from external repositories and are part of this repo as git submodules:

  • hscommon: A collection of helpers used across HS applications.
  • qtlib: A collection of helpers used across Qt UI codebases of HS applications.

How to build dupeGuru from source


For windows instructions see the Windows Instructions.



dupeGuru is built with "make":

$ make
$ make run

Generate Ubuntu packages

$ bash -c "pyvenv --system-site-packages env && source env/bin/activate && pip install -r requirements.txt && python3 --clean && python3"

Running tests

The complete test suite is run with Tox 1.7+. If you have it installed system-wide, you don't even need to set up a virtualenv. Just cd into the root project folder and run tox.

If you don't have Tox system-wide, install it in your virtualenv with pip install tox and then run tox.

You can also run automated tests without Tox. Extra requirements for running tests are in requirements-extra.txt. So, you can do pip install -r requirements-extra.txt inside your virtualenv and then py.test core hscommon

You can’t perform that action at this time.