OSX pop-up when starting Arduino

Status
Not open for further replies.

hoosieree

Active member
Screen Shot 2014-12-01 at 9.47.22 AM.png

On Mac OS 10.10 (Yosemite) this is what greets me every time I launch the Arduino application. It only does this after installing Teensy Loader. OSX signs app packages, and tampering with the package (e.g. by adding Teensy Loader) alters the package's signature, which causes the app to throw this error every time.

Proof that this is the cause of the issue:
Code:
$ codesign -v /Applications/Arduino106.app/
/Applications/Arduino106.app/: invalid Info.plist (plist or signature have been modified)
In architecture: ppc
$

What I tried:
  • turn off firewall completely (the pop-up goes away but this is not a viable option for normal use)
  • add Arduino106 to firewall options and selectively block internet connections (no change)
  • add Arduino106 to firewall options and selectively allow internet connections (no change)
  • use self-signed certificate as described here (no change)


Finally what worked is this (there may be some extra steps in there but for now I'm satisfied):
  • download and unzip (but don't run) Arduino 1.0.6
  • add self-signed cert using the --deep option along with --force and --self
  • move Arduino.app/src to Arduino.app/Contents/src based on this note which advises everything should be under the Contents/ directory
  • start Arduino application (with Teensy Loader added) for the first time

Hope this helps. If you're about to try this, try moving src/ inside Contents/ first, I suspect that may be sufficient.

-Alex
 
I noticed this too, just always excepted yes but all ways made me wonder why there is network connection needed anyway?
 
It's because the Arduino IDE supports clicking hyperlinks, or at least that's the only reason I've noticed.
 
It's because the Arduino IDE supports clicking hyperlinks, or at least that's the only reason I've noticed.

this made wonder so i disallowed network connections and still can click on links fine in the ide, plus why would you need a incoming connection for that?
 
Yup. Apple changed how app signing works, again. This new change makes things particularly difficult, so it's going to be a while until a fix is made.
 
Hello
I *think* I may have found a method for getting rid of this message, In that I have applied the certificate and not seen the message after restarting the computer and loading the arduino software.

I created a self-signed certificate, as described here: http://apple.stackexchange.com/ques...f-firewall-accept-incoming-connections-dialog in the second answer, one that begins: "While RedYeti's link is useful, ...".

Also, I have firewall on and the Arduino software is on the list of Allowed Incoming Connections (I don't know if this is required).

Hope that helps
Karl.
 
Not sure, I'm fairly new to the Apple environment so couldn't say.

As an experiment I have just tried the following on a Mac without the self-signed certificate:

1. deleted the arduino software from applications, (shift-backspace on the arduinio icon), and deleted the directory in ~/Library/Arduino15
2. checked that the firewall is on, and see that arduino is not on the list of allowed incoming connections.
3. downloaded and installed arduino ide v1.6.9
4. ran the arduino software, got the usual "downloaded from the internet" warning for first time run, continued anyway. Nothing about "incoming network connections"
5. checked firewall settings again, arduino now listed twice on the list of allowed incoming connections.
6. restarted mac - ran arduino again - no firewall message.
7. downloaded and installed teensyduino v1.29 with all the libraries (got the usual "downloaded from the internet" warning, continued anyway).
8. exited the teensydunio installer and unmouted the install volume.
9. ran the arduino software - I now see the "do you want the application 'arduino.app' to accept incoming network connections?' message.

Looks like the teensyduino install is modifying the arduino installation in some way, this changes the arduino checksum, which in turn upsets the certificate supplied by arduino. (This is a theory, and could be wrong).

Also, comparing the output from:
$ codesign -dvvvv /Applications/arduino.app

the only difference I can see is in one line, before teensyduino install:

Info.Plist entries=26

after:

Info.Plist entries=not bound

I don't know if that helps you in anyway.
Karl.
 
Status
Not open for further replies.
Back
Top