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

Compare commits

...

10 Commits

Author SHA1 Message Date
Virgil Dupras
24c3d7ed00 Update cocoalib subrepo. 2012-05-15 08:03:49 -04:00
Virgil Dupras
8f7657573d me v6.3.1 2012-05-15 07:49:25 -04:00
Virgil Dupras
c03c7f2be1 Added tag se3.4.1 for changeset c153aef25e5c 2012-05-14 09:41:53 -04:00
Virgil Dupras
91a157cb2b Fixed build bug where the qtlib po file wouldn't be copied to the build locale folder. 2012-05-14 08:55:23 -04:00
Virgil Dupras
7ced1e7b9d Disabled broken signature option in se installer project under qt. 2012-05-14 08:45:24 -04:00
Virgil Dupras
4c0545189e se v3.4.1 2012-05-14 08:26:32 -04:00
Virgil Dupras
21af7b2fcd Fixed the "Folders" mode in SE which was broken since the conversion to objp. 2012-05-13 12:45:22 -04:00
Virgil Dupras
df9af9a796 Fixed crash on iTunes library parsing when the "Location" element is missing in track data dictionary. 2012-04-13 15:21:48 -04:00
Virgil Dupras
933474400c Sign OS X app at package time rather than build time. 2012-04-07 11:21:38 -04:00
Virgil Dupras
b2c8e779bd Added tag pe2.5.0 for changeset 93ed33410df2 2012-03-31 12:14:53 -04:00
13 changed files with 41 additions and 19 deletions

View File

@@ -70,3 +70,5 @@ a619f313712e2923160b8f90d8250ee0e184c7b9 pe2.4.1
fad463ae749b7189dce92f1e42a57ac4ee03987d se3.3.3 fad463ae749b7189dce92f1e42a57ac4ee03987d se3.3.3
236cf9b690a144392e7e86e7c9749fc834a8b271 me6.3.0 236cf9b690a144392e7e86e7c9749fc834a8b271 me6.3.0
90318f1303858d9d01065d92d78d98b888b38ea0 se3.4.0 90318f1303858d9d01065d92d78d98b888b38ea0 se3.4.0
93ed33410df2d2f21229a77ae49c83ece2c50a55 pe2.5.0
c153aef25e5c9911f2197d13899591c50cf38ffc se3.4.1

View File

@@ -117,9 +117,6 @@ def build_localizations(ui, edition):
loc.compile_all_po('locale') loc.compile_all_po('locale')
loc.compile_all_po(op.join('hscommon', 'locale')) loc.compile_all_po(op.join('hscommon', 'locale'))
loc.merge_locale_dir(op.join('hscommon', 'locale'), 'locale') loc.merge_locale_dir(op.join('hscommon', 'locale'), 'locale')
if op.exists(op.join('build', 'locale')):
shutil.rmtree(op.join('build', 'locale'))
shutil.copytree('locale', op.join('build', 'locale'), ignore=shutil.ignore_patterns('*.po', '*.pot'))
if ui == 'cocoa': if ui == 'cocoa':
print("Creating lproj folders based on .po files") print("Creating lproj folders based on .po files")
for lang in loc.get_langs('locale'): for lang in loc.get_langs('locale'):
@@ -140,6 +137,9 @@ def build_localizations(ui, edition):
elif ui == 'qt': elif ui == 'qt':
loc.compile_all_po(op.join('qtlib', 'locale')) loc.compile_all_po(op.join('qtlib', 'locale'))
loc.merge_locale_dir(op.join('qtlib', 'locale'), 'locale') loc.merge_locale_dir(op.join('qtlib', 'locale'), 'locale')
if op.exists(op.join('build', 'locale')):
shutil.rmtree(op.join('build', 'locale'))
shutil.copytree('locale', op.join('build', 'locale'), ignore=shutil.ignore_patterns('*.po', '*.pot'))
def build_updatepot(): def build_updatepot():
print("Building .pot files from source files") print("Building .pot files from source files")

View File

@@ -83,7 +83,10 @@ def get_itunes_songs(plistpath):
for song_data in plist['Tracks'].values(): for song_data in plist['Tracks'].values():
if song_data['Track Type'] != 'File': if song_data['Track Type'] != 'File':
continue continue
song = ITunesSong(song_data) try:
song = ITunesSong(song_data)
except KeyError: # No "Location" or "Track ID" key in track
continue
if io.exists(song.path): if io.exists(song.path):
result.append(song) result.append(song)
return result return result

View File

@@ -963,7 +963,6 @@
C01FCF4C08A954540054247B /* release */ = { C01FCF4C08A954540054247B /* release */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;
@@ -1006,7 +1005,6 @@
CED596C6111AF56D00C0CF2B /* dev */ = { CED596C6111AF56D00C0CF2B /* dev */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;

View File

@@ -968,7 +968,6 @@
C01FCF4C08A954540054247B /* release */ = { C01FCF4C08A954540054247B /* release */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;
@@ -1011,7 +1010,6 @@
CEE00FF1111AF37400BC1A77 /* dev */ = { CEE00FF1111AF37400BC1A77 /* dev */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;

View File

@@ -39,7 +39,7 @@ http://www.hardcoded.net/licenses/bsd_license
- (void)setScanOptions - (void)setScanOptions
{ {
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults]; NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
[model setScanType:n2b([ud objectForKey:@"scanType"])]; [model setScanType:n2i([ud objectForKey:@"scanType"])];
[model setMinMatchPercentage:n2i([ud objectForKey:@"minMatchPercentage"])]; [model setMinMatchPercentage:n2i([ud objectForKey:@"minMatchPercentage"])];
[model setWordWeighting:n2b([ud objectForKey:@"wordWeighting"])]; [model setWordWeighting:n2b([ud objectForKey:@"wordWeighting"])];
[model setMixFileKind:n2b([ud objectForKey:@"mixFileKind"])]; [model setMixFileKind:n2b([ud objectForKey:@"mixFileKind"])];

View File

@@ -947,7 +947,6 @@
C01FCF4C08A954540054247B /* release */ = { C01FCF4C08A954540054247B /* release */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;
@@ -986,7 +985,6 @@
CE85E850111AF63D00187B0D /* dev */ = { CE85E850111AF63D00187B0D /* dev */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
CODE_SIGN_IDENTITY = "Mac Developer";
DEPLOYMENT_LOCATION = YES; DEPLOYMENT_LOCATION = YES;
DEPLOYMENT_POSTPROCESSING = YES; DEPLOYMENT_POSTPROCESSING = YES;
DSTROOT = /; DSTROOT = /;

View File

@@ -1,2 +1,2 @@
__version__ = '6.3.0' __version__ = '6.3.1'
__appname__ = 'dupeGuru Music Edition' __appname__ = 'dupeGuru Music Edition'

View File

@@ -1,2 +1,2 @@
__version__ = '3.4.0' __version__ = '3.4.1'
__appname__ = 'dupeGuru' __appname__ = 'dupeGuru'

View File

@@ -1,3 +1,8 @@
=== 6.3.1 (2012-04-15)
* Fixed crash on iTunes library parsing. [Mac]
* Fixed localization issues. [Windows, Linux]
=== 6.3.0 (2012-03-27) === 6.3.0 (2012-03-27)
* Improved iTunes support. [Mac] * Improved iTunes support. [Mac]

View File

@@ -1,3 +1,8 @@
=== 3.4.1 (2012-04-14)
* Fixed the "Folders" scan type. [Mac]
* Fixed localization issues. [Windows, Linux]
=== 3.4.0 (2012-03-29) === 3.4.0 (2012-03-29)
* Improved results window UI. [Windows, Linux] * Improved results window UI. [Windows, Linux]

View File

@@ -6,23 +6,38 @@
# 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/bsd_license # http://www.hardcoded.net/licenses/bsd_license
import sys
import os import os
import os.path as op import os.path as op
import compileall import compileall
import shutil import shutil
import json import json
from argparse import ArgumentParser
from hscommon.plat import ISWINDOWS, ISLINUX from hscommon.plat import ISWINDOWS, ISLINUX
from hscommon.build import (build_dmg, add_to_pythonpath, print_and_do, copy_packages, from hscommon.build import (build_dmg, add_to_pythonpath, print_and_do, copy_packages,
build_debian_changelog, copy_qt_plugins, get_module_version) build_debian_changelog, copy_qt_plugins, get_module_version)
def package_cocoa(edition): def parse_args():
parser = ArgumentParser()
parser.add_argument('--sign', dest='sign_identity',
help="Sign app under specified identity before packaging (OS X only)")
args = parser.parse_args()
return args
def package_cocoa(edition, sign_identity):
app_path = { app_path = {
'se': 'cocoa/se/dupeGuru.app', 'se': 'cocoa/se/dupeGuru.app',
'me': 'cocoa/me/dupeGuru ME.app', 'me': 'cocoa/me/dupeGuru ME.app',
'pe': 'cocoa/pe/dupeGuru PE.app', 'pe': 'cocoa/pe/dupeGuru PE.app',
}[edition] }[edition]
# Rather than signing our app in XCode during the build phase, we sign it during the package
# phase because running the app before packaging can modify it and we want to be sure to have
# a valid signature.
if sign_identity:
sign_identity = "Developer ID Application: {}".format(sign_identity)
print_and_do('codesign --force --sign "{}" "{}"'.format(sign_identity, app_path))
else:
print("WARNING: packaging an unsigned application")
build_dmg(app_path, '.') build_dmg(app_path, '.')
def package_windows(edition, dev): def package_windows(edition, dev):
@@ -107,13 +122,14 @@ def package_debian(edition):
os.system("dpkg-buildpackage") os.system("dpkg-buildpackage")
def main(): def main():
args = parse_args()
conf = json.load(open('conf.json')) conf = json.load(open('conf.json'))
edition = conf['edition'] edition = conf['edition']
ui = conf['ui'] ui = conf['ui']
dev = conf['dev'] dev = conf['dev']
print("Packaging dupeGuru {0} with UI {1}".format(edition.upper(), ui)) print("Packaging dupeGuru {0} with UI {1}".format(edition.upper(), ui))
if ui == 'cocoa': if ui == 'cocoa':
package_cocoa(edition) package_cocoa(edition, args.sign_identity)
elif ui == 'qt': elif ui == 'qt':
if ISWINDOWS: if ISWINDOWS:
package_windows(edition, dev) package_windows(edition, dev)

View File

@@ -54,9 +54,6 @@
<ROW Path="&lt;AI_DICTS&gt;ui.ail"/> <ROW Path="&lt;AI_DICTS&gt;ui.ail"/>
<ROW Path="&lt;AI_DICTS&gt;ui_en.ail"/> <ROW Path="&lt;AI_DICTS&gt;ui_en.ail"/>
</COMPONENT> </COMPONENT>
<COMPONENT cid="caphyon.advinst.msicomp.DigCertStoreComponent">
<ROW DigitalCertificate="\\vmware-host\Shared Folders\Public\mac_app.pfx" SignerDescription="[|ProductName]" SignOptions="7" SignTool="0"/>
</COMPONENT>
<COMPONENT cid="caphyon.advinst.msicomp.FragmentComponent"> <COMPONENT cid="caphyon.advinst.msicomp.FragmentComponent">
<ROW Fragment="CommonUI.aip" Path="&lt;AI_FRAGS&gt;CommonUI.aip"/> <ROW Fragment="CommonUI.aip" Path="&lt;AI_FRAGS&gt;CommonUI.aip"/>
<ROW Fragment="FolderDlg.aip" Path="&lt;AI_THEMES&gt;classic\fragments\FolderDlg.aip"/> <ROW Fragment="FolderDlg.aip" Path="&lt;AI_THEMES&gt;classic\fragments\FolderDlg.aip"/>