2016-04-29 25 views
6

Ký một .app bao bọc tập lệnh shell sử dụng OS X 10.11 không xác minh được trên 10.10 hoặc thấp hơn. Tôi có thể ký vào 10.10 và 10.9 và nó xác minh trên 10.9, 10.10 và 10.11.Việc ký các ứng dụng gói shell script có bị hỏng trong OS X 10.11 không?

Tôi đã đặt hai ứng dụng mẫu và tập lệnh trên github để hiển thị điều này. Hai HelloWorld.app chỉ khác nhau trong nhị phân trong Contents/MacOS/HelloWorld. Một là một kịch bản lệnh shell, phần còn lại được biên dịch mục tiêu-c.

công trình Ký và xác minh trên 10.11 cho cả hai phiên bản:

Shell Script phiên bản:

codesign -s "${signing_identity}" -v shell-script/HelloWorld.app 
signed bundle with generic [liamsharp.helloworld] 

codesign -vv shell-script/HelloWorld.app 
shell-script/HelloWorld.app: valid on disk 
shell-script/HelloWorld.app: satisfies its Designated Requirement 

Objective-C phiên bản:

codesign -s "${signing_identity}" -v objective-c/HelloWorld.app 
signed bundle with Mach-O thin (x86_64) [liamsharp.helloworld] 

codesign -vv objective-c/HelloWorld.app 
objective-c/HelloWorld.app: valid on disk 
objective-c/HelloWorld.app: satisfies its Designated Requirement 

Nhưng phiên bản shell script thất bại trong việc xác minh trên 10.10 và 10.9:

codesign -vv shell-script/HelloWorld.app 
shell-script/HelloWorld.app: invalid signature (code or signature have been modified) 

Tôi đã có quyền truy cập vào một máy 10,11 khác và cùng một vấn đề xảy ra khi nó ký .app's. Tôi có quyền truy cập vào máy 10.9 và cũng không thể xác minh.

Có sự khác biệt trong thư mục _CodeSignature được tạo cho tập lệnh shell .app.

Sau đây là cách nó được khi ký ngày 10.10:

CodeDirectory 
CodeRequirements 
CodeResources 
CodeSignature 

Nhưng khi ký kết vào ngày 10.11, chúng tôi có được thêm một số tập tin:

CodeDirectory 
CodeRequirements 
CodeRequirements-1 
CodeResources 
CodeSignature 
CodeTopDirectory 

Có một lựa chọn kỳ diệu tôi là thiếu cho codesign để cho phép điều này để làm việc? Hoặc là có một lỗi?

+0

Điều này dường như là lỗi với 'codesign' trên OS X 10.11. Lỗi này cũng ảnh hưởng đến các gói '.definition' của Automator. Tôi đã gửi lỗi với Apple là rdr: // 26297046. –

+1

Tôi cũng đã điền 26363618. – CodeBuddy

+0

Cảm ơn bạn. Tôi đánh giá cao việc bạn đặt câu hỏi này và tạo ra trường hợp thử nghiệm. Đó là yên tâm để tìm những người khác gặp phải lỗi OS X này. –

Trả lời

1

Tôi cũng đã có một câu trả lời từ Apple bây giờ, một số khác nhau để Graham mặc dù:

Engineering has determined that your bug report is a duplicate of another issue and will be closed. 

Duplicate of 25457707 (Open) 

Sẽ đăng một bản cập nhật nếu/khi tôi nghe nhiều hơn. Không có thêm chi tiết được cung cấp trên eta cho một sửa chữa, hoặc thậm chí nếu nó sẽ được cố định.

Cập nhật: Điều này hiện đã được sửa trong 10.11.5 - Tôi không có bất kỳ dấu hiệu nào từ Apple, nhưng giờ đây hoạt động sau khi nâng cấp.

Các vấn đề liên quan