1
0
mirror of https://github.com/arsenetar/dupeguru.git synced 2026-01-25 16:11:39 +00:00

Compare commits

..

11 Commits

Author SHA1 Message Date
Virgil Dupras
b1f2e1c191 Fixed debian packaging for PE. 2010-08-21 08:26:56 -07:00
Virgil Dupras
33f372f6c6 Fixed the building process of the block module for Qt. 2010-08-21 16:04:23 +01:00
Virgil Dupras
8e5c2a8875 pe v1.10.0 2010-08-21 16:44:50 +02:00
Virgil Dupras
36f3638ae4 [#104 state:fixed] Fixed str/bytes mixup in HTML export. 2010-08-21 16:34:35 +02:00
Virgil Dupras
d10210011f Added tag me5.9.0 for changeset b56fe4dd8c95 2010-08-20 12:19:06 +02:00
Virgil Dupras
e867840d81 Fixed debian packaging for ME. 2010-08-20 02:29:51 -07:00
Virgil Dupras
fb7e3189a8 me v5.9.0 2010-08-20 09:51:30 +02:00
Virgil Dupras
5733c0143b With PyQt 4.7.5's new from_imports option, sys.path hackage is not required anymore. 2010-08-20 09:48:16 +02:00
Virgil Dupras
ac4881f231 Updated py2app workarounds for ME again. 2010-08-18 12:01:10 +02:00
Virgil Dupras
939efd7dab Updated py2app workarounds for ME. 2010-08-18 11:37:18 +02:00
Virgil Dupras
a93d96d742 Added tag se2.11.0 for changeset 2b67955db2b0 2010-08-18 10:07:06 +02:00
25 changed files with 53 additions and 39 deletions

View File

@@ -24,3 +24,5 @@ f71d405e62badcfdc1b037facaac043cece40ee5 se2.10.1
3742e83edd9eadf44e1a501859f5e2462b1ef6fd me5.8.1 3742e83edd9eadf44e1a501859f5e2462b1ef6fd me5.8.1
724ff565dd785fb739774588c6ee652cfc0612d5 pe1.9.1 724ff565dd785fb739774588c6ee652cfc0612d5 pe1.9.1
634b66415c6529f46ae4f837318027cc9d70c3b5 before-py3k 634b66415c6529f46ae4f837318027cc9d70c3b5 before-py3k
2b67955db2b0580a8b0854dc918b6ab0d1fa3b88 se2.11.0
b56fe4dd8c95bca270b078a09e86848df77e2b2d me5.9.0

7
README
View File

@@ -45,7 +45,7 @@ Windows prerequisites
--- ---
- Visual Studio 2008 (Express is enough) is needed to build C extensions. (http://www.microsoft.com/Express/) - Visual Studio 2008 (Express is enough) is needed to build C extensions. (http://www.microsoft.com/Express/)
- PyQt 4.7 (http://www.riverbankcomputing.co.uk/news) - PyQt 4.7.5 (http://www.riverbankcomputing.co.uk/news)
- cx_Freeze, if you want to build a exe. You don't need it if you just want to run dupeGuru. (http://cx-freeze.sourceforge.net/) - cx_Freeze, if you want to build a exe. You don't need it if you just want to run dupeGuru. (http://cx-freeze.sourceforge.net/)
- Advanced Installer, if you want to build the installer file. (http://www.advancedinstaller.com/) - Advanced Installer, if you want to build the installer file. (http://www.advancedinstaller.com/)
@@ -66,8 +66,3 @@ Then, just build the thing and then run it with:
If you want to create ready-to-upload package, run: If you want to create ready-to-upload package, run:
python package.py python package.py
64-bit on OS X
---
The "release" configuration of dupeGuru's XCode project build with archs "i386 x86_64 ppc". However there are currently problems with py2app and 64 bit. If you want to correctly build 64-bit apps, refer to http://www.hardcoded.net/articles/building-64-bit-pyobjc-applications-with-py2app.htm .

View File

@@ -105,8 +105,8 @@ def build_pe_modules(ui):
move('_block_osx.so', op.join('core_pe', '_block_osx.so')) move('_block_osx.so', op.join('core_pe', '_block_osx.so'))
move('_cache.so', op.join('core_pe', '_cache.so')) move('_cache.so', op.join('core_pe', '_cache.so'))
move('_cache.pyd', op.join('core_pe', '_cache.pyd')) move('_cache.pyd', op.join('core_pe', '_cache.pyd'))
move('_block_qt.so', op.join('qt', 'pe', '_block.so')) move('_block_qt.so', op.join('qt', 'pe', '_block_qt.so'))
move('_block_qt.pyd', op.join('qt', 'pe', '_block.pyd')) move('_block_qt.pyd', op.join('qt', 'pe', '_block_qt.pyd'))
def main(): def main():
conf = yaml.load(open('conf.yaml')) conf = yaml.load(open('conf.yaml'))

View File

@@ -23,7 +23,7 @@
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>hsft</string> <string>hsft</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>5.8.1</string> <string>5.9.0</string>
<key>NSMainNibFile</key> <key>NSMainNibFile</key>
<string>MainMenu</string> <string>MainMenu</string>
<key>NSPrincipalClass</key> <key>NSPrincipalClass</key>

View File

@@ -11,10 +11,16 @@ from core_me.app_cocoa import DupeGuruME
from core.scanner import ScanType from core.scanner import ScanType
# Fix py2app imports which chokes on relative imports and other stuff # Fix py2app imports which chokes on relative imports and other stuff
from core_me import app_cocoa, data, fs, scanner import core_me.app_cocoa, core_me.data, core_me.fs, core_me.scanner
import hsaudiotag.aiff, hsaudiotag.flac, hsaudiotag.genres, hsaudiotag.id3v1,\
hsaudiotag.id3v2, hsaudiotag.mp4, hsaudiotag.mpeg, hsaudiotag.ogg, hsaudiotag.wma
from hsaudiotag import aiff, flac, genres, id3v1, id3v2, mp4, mpeg, ogg, wma from hsaudiotag import aiff, flac, genres, id3v1, id3v2, mp4, mpeg, ogg, wma
import hsutil.conflict
import core.engine, core.fs, core.app
import xml.etree.ElementPath import xml.etree.ElementPath
import gzip import gzip
import aem.kae
import appscript.defaultterminology
class PyDupeGuru(PyDupeGuruBase): class PyDupeGuru(PyDupeGuruBase):
def init(self): def init(self):

View File

@@ -23,7 +23,7 @@
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>hsft</string> <string>hsft</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>1.9.1</string> <string>1.10.0</string>
<key>NSMainNibFile</key> <key>NSMainNibFile</key>
<string>MainMenu</string> <string>MainMenu</string>
<key>NSPrincipalClass</key> <key>NSPrincipalClass</key>

View File

@@ -6,7 +6,6 @@
# which should be included with this package. The terms are also available at # which should be included with this package. The terms are also available at
# http://www.hardcoded.net/licenses/hs_license # http://www.hardcoded.net/licenses/hs_license
import tempfile
import os.path as op import os.path as op
from tempfile import mkdtemp from tempfile import mkdtemp
@@ -131,7 +130,7 @@ def export_to_xhtml(colnames, rows):
content = MAIN_TEMPLATE.replace('$colheaders', colheaders).replace('$rows', rendered_rows) content = MAIN_TEMPLATE.replace('$colheaders', colheaders).replace('$rows', rendered_rows)
folder = mkdtemp() folder = mkdtemp()
destpath = op.join(folder, 'export.htm') destpath = op.join(folder, 'export.htm')
fp = open(destpath, 'w') fp = open(destpath, 'wt', encoding='utf-8')
fp.write(content.encode('utf-8')) fp.write(content)
fp.close() fp.close()
return destpath return destpath

1
debian_me/compat Normal file
View File

@@ -0,0 +1 @@
7

View File

@@ -8,5 +8,5 @@ Homepage: http://www.hardcoded.net
Package: dupeguru-me Package: dupeguru-me
Architecture: any Architecture: any
Depends: python (>= 2.6), python-qt4 (>= 4.6) Depends: python3 (>= 3.1)
Description: dupeGuru Music Edition Description: dupeGuru Music Edition

View File

@@ -42,9 +42,9 @@ install: build
dh_installdirs dh_installdirs
chmod +x src/start.py chmod +x src/start.py
cp -R src/ $(CURDIR)/debian/tmp/usr/local/share/dupeguru_me cp -R src/ $(CURDIR)/debian/dupeguru-me/usr/local/share/dupeguru_me
cp $(CURDIR)/debian/dupeguru_me.desktop $(CURDIR)/debian/tmp/usr/share/applications cp $(CURDIR)/debian/dupeguru_me.desktop $(CURDIR)/debian/dupeguru-me/usr/share/applications
ln -s /usr/local/share/dupeguru_me/start.py $(CURDIR)/debian/tmp/usr/local/bin/dupeguru_me ln -s /usr/local/share/dupeguru_me/start.py $(CURDIR)/debian/dupeguru-me/usr/local/bin/dupeguru_me
# Build architecture-independent files here. # Build architecture-independent files here.

1
debian_pe/compat Normal file
View File

@@ -0,0 +1 @@
7

View File

@@ -8,5 +8,5 @@ Homepage: http://www.hardcoded.net
Package: dupeguru-pe Package: dupeguru-pe
Architecture: any Architecture: any
Depends: python (>= 2.6), python-qt4 (>= 4.6), python-imaging (>= 1.1.6) Depends: python3 (>= 3.1)
Description: dupeGuru Picture Edition Description: dupeGuru Picture Edition

View File

@@ -42,9 +42,9 @@ install: build
dh_installdirs dh_installdirs
chmod +x src/start.py chmod +x src/start.py
cp -R src/ $(CURDIR)/debian/tmp/usr/local/share/dupeguru_pe cp -R src/ $(CURDIR)/debian/dupeguru-pe/usr/local/share/dupeguru_pe
cp $(CURDIR)/debian/dupeguru_pe.desktop $(CURDIR)/debian/tmp/usr/share/applications cp $(CURDIR)/debian/dupeguru_pe.desktop $(CURDIR)/debian/dupeguru-pe/usr/share/applications
ln -s /usr/local/share/dupeguru_pe/start.py $(CURDIR)/debian/tmp/usr/local/bin/dupeguru_pe ln -s /usr/local/share/dupeguru_pe/start.py $(CURDIR)/debian/dupeguru-pe/usr/local/bin/dupeguru_pe
# Build architecture-independent files here. # Build architecture-independent files here.

View File

@@ -1,3 +1,12 @@
- date: 2010-08-20
version: 5.9.0
description: |
* Added the ability to save results (and reload them) at arbitrary locations.
* Improved the way reference files in dupe groups are chosen. (#15)
* Remember size/position of all windows between launches. (#102)
* Fixed a bug sometimes preventing dupeGuru from reloading previous results.
* Fixed a bug sometimes causing the progress dialog to be stuck there. [Mac OS X] (#103)
* Removed the Creation Date column, which wasn't displaying the correct value anyway. (#101)
- date: 2010-07-16 - date: 2010-07-16
version: 5.8.1 version: 5.8.1
description: | description: |

View File

@@ -1,3 +1,12 @@
- date: 2010-08-21
version: 1.10.0
description: |
* Added the ability to save results (and reload them) at arbitrary locations.
* Improved the way reference files in dupe groups are chosen. (#15)
* Remember size/position of all windows between launches. (#102)
* Fixed a bug sometimes preventing dupeGuru from reloading previous results.
* Fixed a bug sometimes causing the progress dialog to be stuck there. [Mac OS X] (#103)
* Removed the Creation Date column, which wasn't displaying the correct value anyway. (#101)
- date: 2010-07-17 - date: 2010-07-17
version: 1.9.1 version: 1.9.1
description: | description: |

View File

@@ -34,7 +34,6 @@ def package_windows(edition, dev):
return return
add_to_pythonpath('.') add_to_pythonpath('.')
add_to_pythonpath('qt') add_to_pythonpath('qt')
add_to_pythonpath(op.join('qt', 'base'))
add_to_pythonpath(op.join('qt', edition)) add_to_pythonpath(op.join('qt', edition))
os.chdir(op.join('qt', edition)) os.chdir(op.join('qt', edition))
from app import DupeGuru from app import DupeGuru
@@ -74,7 +73,6 @@ def package_windows(edition, dev):
def package_debian(edition): def package_debian(edition):
add_to_pythonpath('qt') add_to_pythonpath('qt')
add_to_pythonpath(op.join('qt', 'base'))
add_to_pythonpath(op.join('qt', edition)) add_to_pythonpath(op.join('qt', edition))
from app import DupeGuru from app import DupeGuru

View File

@@ -463,7 +463,7 @@
<customwidget> <customwidget>
<class>ResultsView</class> <class>ResultsView</class>
<extends>QTreeView</extends> <extends>QTreeView</extends>
<header>results_model</header> <header>.results_model</header>
</customwidget> </customwidget>
</customwidgets> </customwidgets>
<resources> <resources>

View File

@@ -17,7 +17,7 @@ class DupeGuru(DupeGuruBase):
EDITION = 'me' EDITION = 'me'
LOGO_NAME = 'logo_me' LOGO_NAME = 'logo_me'
NAME = 'dupeGuru Music Edition' NAME = 'dupeGuru Music Edition'
VERSION = '5.8.1' VERSION = '5.9.0'
DELTA_COLUMNS = frozenset([2, 3, 4, 5, 7]) DELTA_COLUMNS = frozenset([2, 3, 4, 5, 7])
def __init__(self): def __init__(self):

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python3
# Copyright 2010 Hardcoded Software (http://www.hardcoded.net) # Copyright 2010 Hardcoded Software (http://www.hardcoded.net)
# #
# This software is licensed under the "HS" License as described in the "LICENSE" file, # This software is licensed under the "HS" License as described in the "LICENSE" file,

View File

@@ -60,7 +60,7 @@ class DupeGuru(DupeGuruBase):
EDITION = 'pe' EDITION = 'pe'
LOGO_NAME = 'logo_pe' LOGO_NAME = 'logo_pe'
NAME = 'dupeGuru Picture Edition' NAME = 'dupeGuru Picture Edition'
VERSION = '1.9.1' VERSION = '1.10.0'
DELTA_COLUMNS = frozenset([2, 5]) DELTA_COLUMNS = frozenset([2, 5])
def __init__(self): def __init__(self):

View File

@@ -6,7 +6,7 @@
# which should be included with this package. The terms are also available at # which should be included with this package. The terms are also available at
# http://www.hardcoded.net/licenses/hs_license # http://www.hardcoded.net/licenses/hs_license
from _block import getblocks from _block_qt import getblocks
# Converted to C # Converted to C
# def getblock(image): # def getblock(image):

View File

@@ -159,7 +159,7 @@ static PyMethodDef BlockMethods[] = {
static struct PyModuleDef BlockDef = { static struct PyModuleDef BlockDef = {
PyModuleDef_HEAD_INIT, PyModuleDef_HEAD_INIT,
"_block", "_block_qt",
NULL, NULL,
-1, -1,
BlockMethods, BlockMethods,
@@ -170,7 +170,7 @@ static struct PyModuleDef BlockDef = {
}; };
PyObject * PyObject *
PyInit__block(void) PyInit__block_qt(void)
{ {
PyObject *m = PyModule_Create(&BlockDef); PyObject *m = PyModule_Create(&BlockDef);
if (m == NULL) { if (m == NULL) {

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python3
# Copyright 2010 Hardcoded Software (http://www.hardcoded.net) # Copyright 2010 Hardcoded Software (http://www.hardcoded.net)
# #
# This software is licensed under the "HS" License as described in the "LICENSE" file, # This software is licensed under the "HS" License as described in the "LICENSE" file,

View File

@@ -15,11 +15,6 @@ from PyQt4.QtGui import QApplication, QIcon, QPixmap
import base.dg_rc import base.dg_rc
if sys.platform == 'linux2':
# Under Python3, we have to add 'base' to pythonpath because UI files don't use
# relative imports.
sys.path.append(os.path.dirname(base.dg_rc.__file__))
from app import DupeGuru from app import DupeGuru
if sys.platform == 'win32': if sys.platform == 'win32':

1
run.py
View File

@@ -32,7 +32,6 @@ def main():
elif ui == 'qt': elif ui == 'qt':
add_to_pythonpath('.') add_to_pythonpath('.')
add_to_pythonpath('qt') add_to_pythonpath('qt')
add_to_pythonpath(op.join('qt', 'base'))
os.chdir(op.join('qt', edition)) os.chdir(op.join('qt', edition))
os.system('{0} start.py'.format(sys.executable)) os.system('{0} start.py'.format(sys.executable))
os.chdir('..') os.chdir('..')