diff --git a/Info.plist b/Info.plist
index a1fcb5be..0719c149 100644
--- a/Info.plist
+++ b/Info.plist
@@ -41,5 +41,7 @@
OSAScriptingDefinition
OpenSCAD.sdef
+ SUPublicDSAKeyFile
+ dsa_pub.pem
diff --git a/appcast-snapshots.xml.in b/appcast-snapshots.xml.in
index 31035655..f46c8148 100644
--- a/appcast-snapshots.xml.in
+++ b/appcast-snapshots.xml.in
@@ -11,6 +11,7 @@
diff --git a/appcast.xml.in b/appcast.xml.in
index e375fae7..f61710cc 100644
--- a/appcast.xml.in
+++ b/appcast.xml.in
@@ -11,6 +11,7 @@
diff --git a/dsa_pub.pem b/dsa_pub.pem
new file mode 100644
index 00000000..f0aee275
--- /dev/null
+++ b/dsa_pub.pem
@@ -0,0 +1,12 @@
+-----BEGIN PUBLIC KEY-----
+MIIBtjCCASsGByqGSM44BAEwggEeAoGBAMP6y57wSCnUvfwehhit5K8EU4W3uf6s
+zCFUGWIxWaweWjkezHIZLz7pTv0dLm5Va0vKTIWgrNseTtdTaJ491lyGAHWlu9sP
+LAe/vG+UpIA6uNZX3gB7dDxunRUenTczYgnVoQWSIVRhZUEjci9WgbJJrguTPQvi
+cCfuI6Hox6cDAhUA3duJXWi3eaOIMqCfm6RpEt/fRC8CgYApHNQB5Ar/SIPobxtJ
+Ox05xhhgm/YOJbGUcSZjsMgEP6rj+269vCBnYG+eE3nelXfOA5SXbOfY6Ju6+RBS
+OdPeNbWZah88QJK8bqBH7KS/EkMaiEXerPEIEIC5xOjKjYXs1z8AtNGUGORwWwjm
+85et2nY/WXvIJkUQtET/bWEYPQOBhAACgYB7hBLdC5rXpV0nqEmI4QYYt63OdP4D
+Lf2XISyKi9H1F+6mwoeU4It7fMdGC1MBXyx/3sv8U1YbYIeDHB+lDy6QN2UxSBTN
+VI9UPUqdcoYZwQiaHHgqWcoyPDqzEVsFtHi3/pXLckuszA19NT8980o+7noiKxUm
+3pDa4C+oANPFCQ==
+-----END PUBLIC KEY-----
diff --git a/openscad.pro b/openscad.pro
index a4678205..7b55a14c 100644
--- a/openscad.pro
+++ b/openscad.pro
@@ -66,7 +66,7 @@ macx {
ICON = icons/OpenSCAD.icns
QMAKE_INFO_PLIST = Info.plist
APP_RESOURCES.path = Contents/Resources
- APP_RESOURCES.files = OpenSCAD.sdef
+ APP_RESOURCES.files = OpenSCAD.sdef dsa_pub.pem
QMAKE_BUNDLE_DATA += APP_RESOURCES
LIBS += -framework Cocoa -framework Sparkle
}
@@ -323,7 +323,6 @@ macx {
src/EventFilter.h \
src/AutoUpdater.h \
src/SparkleAutoUpdater.h \
- src/CocoaInitializer.h \
src/CocoaUtils.h
SOURCES += src/AppleEvents.cc \
src/AutoUpdater.cc
diff --git a/scripts/publish-macosx.sh b/scripts/publish-macosx.sh
index 2fe85d42..306f1cd7 100755
--- a/scripts/publish-macosx.sh
+++ b/scripts/publish-macosx.sh
@@ -32,13 +32,15 @@ if [[ $? != 0 ]]; then
exit 1
fi
+SIGNATURE=$(openssl dgst -sha1 -binary < OpenSCAD-$VERSION.dmg | openssl dgst -dss1 -sign dsa_priv.pem | openssl enc -base64)
+
if [[ $VERSION == $VERSIONDATE ]]; then
APPCASTFILE=appcast-snapshots.xml
else
APPCASTFILE=appcast.xml
fi
echo "Creating appcast $APPCASTFILE..."
-sed -e "s,@VERSION@,$VERSION,g" -e "s,@VERSIONDATE@,$VERSIONDATE,g" -e "s,@FILESIZE@,$(stat -f "%z" OpenSCAD-$VERSION.dmg),g" $APPCASTFILE.in > $APPCASTFILE
+sed -e "s,@VERSION@,$VERSION,g" -e "s,@VERSIONDATE@,$VERSIONDATE,g" -e "s,@DSASIGNATURE@,$SIGNATURE,g" -e "s,@FILESIZE@,$(stat -f "%z" OpenSCAD-$VERSION.dmg),g" $APPCASTFILE.in > $APPCASTFILE
cp $APPCASTFILE ../openscad.github.com
if [[ $VERSION == $VERSIONDATE ]]; then
cp $APPCASTFILE ../openscad.github.com/appcast-snapshots.xml