My app is signed (verified with spctl and codesign) but it still "can’t be opened because it is from an unidentified developer."

Hi,


I am having trouble signing a .pkg that I have made. I have wrapped the .pkg in a .dmg, you can download it here: www.sptgps.com/GameTrakaInstaller.dmg


I have verified that the .pkg is signed with a number of tools, output is below. I have read about the new version 2 signatures and I think that I am using one (even though my Sealed Resource=none.)


I am using OS X Yosemite 10.10.5 (14F27).


I am manually signing and building my application as it is a Java Web Start (jnlp) based application.


My installer package does the following:


1) installs java: (I have signed this .pkg)

sudo installer -pkg java8u60.pkg -target /


2) installs a USB driver: (I have signed this .pkg)

sudo installer -pkg PIUSBGPSDriver-4.2.1b5.pkg -target /


3) executes an application.jnlp file

sudo javaws application.jnlp


I know that all the moving parts are working, because if I bypass Gatekeeper everything runs smoothly.


Any help would be greatly appreciated!


Thank you,


Andreas.





Verification that root package is signed.


$ spctl -a -t exec -vv GameTraka.pkg

accepted

source=Developer ID

origin=Developer ID Application: Sports Performance Tracking Pty. Ltd. (PVSCK6959S)


$ codesign --verify --deep --verbose=2 GameTraka.pkg

GameTraka.pkg: valid on disk

GameTraka.pkg: satisfies its Designated Requirement


$ spctl --assess -v GameTraka.pkg

GameTraka.pkg: accepted

source=Developer ID


$ codesign -dv GameTraka.pkg

Executable=/Volumes/GameTraka/GameTraka.pkg

Identifier=gametraka_mac

Format=generic

CodeDirectory v=20200 size=137 flags=0x0(none) hashes=1+2 location=embedded

Signature size=8573

Timestamp=11 Sep 2015 3:53:36 pm

Info.plist=not bound

TeamIdentifier=PVSCK6959S

Sealed Resources=none

Internal requirements count=1 size=176

I’m having this same problem! I don’t understand it – like you, the output from codesign and spctl both looks good and says it’s valid and accepted.


Did you ever solve this?

I've also had this same issue recently. My app uses CMake and its link_directories was the culprit.

After I replaced it with find_library, everything worked fine!


CMakeLists.txt before change


set( BREAKPAD_LIBS "breakpad_dir")
link_directories(${BREAKPAD_LIBS})
target_link_libraries(${PROJECT_NAME} "-F${PROJECT_SOURCE_DIR}/${BREAKPAD_LIBS}" # "-framework Breakpad")


CMakeLists.txt after change


set( BREAKPAD_LIBS "breakpad_dir")
find_library(Breakpad Breakpad PATHS ${BREAKPAD_LIBS})
target_link_libraries(${PROJECT_NAME} ${Breakpad})
My app is signed (verified with spctl and codesign) but it still "can’t be opened because it is from an unidentified developer."
 
 
Q