MacOS 10.14.5 рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд╕рд╛рде, Apple рдиреЗ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирд┐рд╡рд╛рд░реНрдп Notarization рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди.рдЬреЗрдПрд╕ рдкрд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдкрд░ рдЗрд╕ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрдард┐рдирд╛рдЗрдпрд╛рдВ рдкреИрджрд╛ рд╣реБрдИ рд╣реИрдВред

рдкрд░рд┐рдЪрдп
Electron.js рдХреЗ рдЙрдлрд╛рди рдХреЗ 2 рд╕рд╛рд▓ рдмрд╛рдж, рдпрд╣ рдХрд┐рддрдирд╛ рдмреБрд░рд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдЧрд░реНрдо рд╣реЛрд▓реАрд╡реЙрдЯрд░ рд╢рд╛рдВрдд рд╣реИрдВред рдЖрдЗрдП рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдЙрддреНрддреЗрдЬрд┐рдд рди рдХрд░реЗрдВред рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рдж
рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдкреИрдЧрд░ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реЛрдЧреАред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрд╡рдпрдВ рдХреНрд▓рд╛рдЙрдб рдЧреЗрдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд╛рдВрдЪрд░ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рджреВрд░рд╕реНрде рдХрдВрдкреНрдпреВрдЯрд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджреЗрд╢реА рдХреНрд▓рд╛рдЗрдВрдЯ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдирд╛ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреВрд░реНрдгрддрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЛ рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░
рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ Apple рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ рд╕реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:
- рдбреЗрд╡рд▓рдкрд░ рдЖрдИрдбреА рдЖрд╡реЗрджрди
- рдбреЗрд╡рд▓рдкрд░ рдЖрдИрдбреА рдЗрдВрд╕реНрдЯреЙрд▓рд░
- * 3 рдкрд╛рд░реНрдЯреА рдореИрдХ рдбреЗрд╡рд▓рдкрд░ рдПрдкреНрд▓реАрдХреЗрд╢рди рдФрд░ 3 рдкрд╛рд░реНрдЯреА рдореИрдХ рдбреЗрд╡рд▓рдкрд░ рдЗрдВрд╕реНрдЯрд╛рд▓рд░ (рдпрджрд┐ рдЖрдк AppStore рдореЗрдВ рдЖрд╡реЗрджрди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ)
рдбреЗрд╡рд▓рдкрд░ рдЖрдИрдбреА рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрдВрдбрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкреИрдХреЗрдЬ.рдЬреЙрди рдореЗрдВ appId рдкреИрд░рд╛рдореАрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдПред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЗрдВ рдХрд┐рдЪреЗрди рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ (рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдкрд░ 2 рдХреНрд▓рд┐рдХ)ред
рдлрд┐рд░ рд╣рдо рдХрд┐рдЪреЗрди рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдореЗрдВ "рдирд┐рд░реНрдпрд╛рдд рдЖрдЗрдЯрдо" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВред рдирд┐рд░реНрдпрд╛рдд рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди .p12 рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИред

рдкреНрд░рд╛рдкреНрдд рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рдж, рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рдЬреЛрдбрд╝реЗрдВ
- CSC_LINK (рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрде .p12)
- CSC_KEY_PASSWORD (рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдПрдХреНрд╕реЗрд╕ рдкрд╛рд╕рд╡рд░реНрдб)
рдпрджрд┐ рдЖрдк рдЗрди рдЪрд░реЛрдВ рдХреЛ рдирд╣реАрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдХрд▓реЗрдХреНрдЯрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рдЪреЗрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░реЗрдЧрд╛ред рдЗрди рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЖрдк рдЙрди рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдЗрди рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЗ рдмрд╛рдж, рдЖрдк рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рдЪрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣ рддрдм рддрдХ рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд░рд╣рд╛ рдЬрдм рддрдХ рдХрд┐ macOS 10.14.5 рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ ...ред
MacOS 10.14.5 рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ
рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╡рд┐рд╖рдпрд╛рдВрддрд░ред рд░рд╛рдд рдореЗрдВ рдирдП рдкреИрдЪ рдкрд░ рдЖрдЦрд┐рд░реА рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рд╕реБрдмрд╣ рдореЗрдВ рдЙрддреНрдкрд╛рджрди рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ macOS рдкрд░ рдПрдХ рдЕрдкрдбреЗрдЯ рдЖрдпрд╛ рдФрд░ рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рдХреЗ рд╕реЛ рдЧрдпрд╛ред
рдЕрдЧрд▓реА рд╕реБрдмрд╣, рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рддреЗ рд╕рдордп рдЕрд╕реЗрдВрдмрд▓реА рдПрдХ рдЕрдЬреНрдЮрд╛рдд рддреНрд░реБрдЯрд┐ рд╕реЗ рдЧрд┐рд░рддреА рд╣реИ - "рдЕрдЬреНрдЮрд╛рдд рдбреЗрд╡рд▓рдкрд░"ред
рдХрд▓ рддрдХ рдордд рд░рдЦреЛ рдХрд┐ рдЖрдЬ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрдВрдЬрд╛рдорд┐рди рдлреНрд░реИрдВрдХрд▓рд┐рди
рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рд░
MacOS 10.14.5 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ, Apple рдиреЗ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдиреЛрдЯрд░реАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХреА рд╣реИред рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ Apple рдХрд╛ рдкрд╣рд▓рд╛ рд▓реЗрдЦ 2018 рдореЗрдВ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдЕрджреНрдпрддрди рдХреЗ рд╕рд╛рде рдерд╛ рдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реЛ рдЧрдИред рд╡рд╣ рдХреИрд╕реА рджрд┐рдЦрддреА рд╣реИ
рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ -> рдЗрд╕реЗ рдРрдкреНрдкрд▓ рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬреЗрдВ -> рдРрдкреНрдкрд▓ рдЗрд╕реЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рддрд╛ рд╣реИ -> рд╕рдлрд▓ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреА рд╕реНрдерд┐рддрд┐ рд▓реМрдЯрд╛рддрд╛ рд╣реИ -> рдкреНрд░рдорд╛рдгрди рд╕реНрдЯреИрдореНрдк рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИред
Xcode рдкрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмрд╕ рдиреЛрдЯрд░реАрдХрд░рдг рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрдХрдЯреНрдареЗ рдЖрд╡реЗрджрди рдХреЗ рдиреЛрдЯрд░реАрдХрд░рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред
$ xcrun altool --notarize-app --primary-bundle-id "com.example.ote.zip" --username "AC_USERNAME" --password "@keychain:AC_PASSWORD" --file OvernightTextEditor_11.6.8.zip
- рдкреНрд░рд╛рдердорд┐рдХ-рдмрдВрдбрд▓-рдЖрдИрдбреА - рдЖрд╡реЗрджрди рдмрдВрдбрд▓
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо - developer.apple.com рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓реЙрдЧрд┐рди
- рдкрд╛рд╕рд╡рд░реНрдб - "рдРрдк-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╛рд╕рд╡рд░реНрдб"ред рдЗрд╕реЗ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдЦрд╛рддреЗ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЖрдкрдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ appleid.apple.com рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдиреЛрдЯрд░реАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╡рд┐рдВрдбреЛ рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдЧреЗрдЯрдХреАрдкрд░ рдЖрд╡реЗрджрди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдпрд╣ рд╡рд╣ рдерд╛ рдЬрд┐рд╕рдиреЗ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рдкрд░ рдЖрд╡реЗрджрди рдХреА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдерд╛ред

рдЗрд▓реЗрдХреНрдЯреНрд░рд╛рди-рдмрд┐рд▓реНрдбрд░ рдирд┐рд░реНрдорд╛рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреИрд╕реА рджрд┐рдЦреА
рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдУрдПрдХреНрд╕-рд╕рдВрдХреЗрдд рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, .app рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рдж, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд┐рдП рдЧрдП рдереЗред рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЧреЗрдЯрдХреЗрдкрд░ рдХреЗ рд╕рд╛рде рдЖрд╡реЗрджрди рдХреА рдЬрд╛рдВрдЪ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХреА рдЧрдИ рдереАред рд▓реЗрдХрд┐рди рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде, рджреНрд╡рд╛рд░рдкрд╛рд▓ рдиреЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╣реА рдиреЛрдЯрд░реАрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдЗрд╕рдиреЗ рдЖрд╡реЗрджрди рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреАред

рдиреЛрдЯрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреИрдЪ
Github рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ Kallin рдиреЗ рддреБрд░рдВрдд рдПрдХ рд╕рдорд╛рдзрд╛рди рд╕реБрдЭрд╛рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рджреЛ рдирдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдкрд╣рд▓рд╛ "рдЧреЗрдЯрдХреАрдкрд░ рдПрд╕реЗрд╕" рд╣реИ - рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЕрд╕реЗрдВрдмрд▓реА рд╕рддреНрдпрд╛рдкрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░рд╛ "рд╕рд╛рдЗрди" рд╣реИ - рдЬреЛ рдПрдХ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рд╕рд╛рде рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдлрд╝рд╛рдЗрд▓ (рдбреАрдЬреАрдПрдо) рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдореЗрдВ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкреНрд░рддрд┐рдмрджреНрдз рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ 20.43.0 рдХреА рд░рд┐рд╣рд╛рдИ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред
рдиреЛрдЯрд░реАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП, рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдпреВрдЬрд░рд▓реИрдВрдб рдореЗрдВ рдПрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдиреЛрдЯрд░реАрдЬрд╝ рдореЙрдбреНрдпреВрд▓ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдХрд░рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдмрд╕ рдПрдХ рдЫреЛрдЯреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдФрд░ рдЗрд╕реЗ рдЖрдлреНрдЯрд░рд╕рд┐рдВрдХ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрд╡реЗрджрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдФрд░ рдиреЛрдЯрд░реАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рд╕рдВрд╕реНрдХрд░рдг> = 20.43.0 рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдиреЛрдЯрд░реА рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИред
рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдореЗрдВ 2 рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рдЬреЛрдбрд╝реЗрдВ:
- appleId - developer.apple.com рд▓реЙрдЧрд┐рди
- appleASP - "рдРрдк-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╛рд╕рд╡рд░реНрдб", рдЬрд┐рд╕реЗ рдЖрдкрдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ appleid.apple.com ред

рдЕрдм рдПрдХ рдиреЛрдЯрд░реАрдХрд░рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ рдЬрд┐рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
const notarize = require('electron-notarize').notarize; module.exports = async (context) => { const { electronPlatformName } = context; if (electronPlatformName === 'darwin') { try { console.log('Try notarize app'); await notarize({ appBundleId: 'APP_BUNDLE_ID', appPath: './dist/mac/APP_NAME.app', appleId: process.env.appleId, appleIdPassword: process.env.appleASP, }); console.log('Success notarize'); } catch (err) { console.log(err); } } };
рд╣рдо рдЗрд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЬрдЧрд╣ рдкрд░ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрдЪрд┐рдд рдиреЛрдЯрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЕрднрд┐рдЧрдо рдЕрдзрд┐рдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдПред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ рдмрд┐рд▓реНрдб / рдПрдВрдЯрд╛рдЗрдЯреЗрд▓рдореЗрдВрдЯ.mac.inherit.plist рдмрдирд╛рдПрдБ
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>com.apple.security.cs.allow-jit</key> <true/> <key>com.apple.security.cs.allow-unsigned-executable-memory</key> <true/> <key>com.apple.security.cs.allow-dyld-environment-variables</key> <true/> <key>com.apple.security.cs.disable-library-validation</key> <true/> <key>com.apple.security.cs.disable-executable-page-protection</key> <true/> <key>com.apple.security.cs.debugger</key> <true/> <key>com.apple.security.automation.apple-events</key> <true/> </dict> </plist>
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реАред рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рд╡рд░реНрдгрди ред
Electron.js рдХреЗ рд▓рд┐рдП рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИ - com.apple.security.cs.allow-unsigned-рдирд┐рд╖реНрдкрд╛рджрдиреАрдп-рдореЗрдореЛрд░реАред
рдЕрдм package.json рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ
MacOS рдХреЗ рд▓рд┐рдП рдЕрдиреБрднрд╛рдЧ рдореЗрдВ:

- GatekeeperAssess (рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдСрдХреНрд╕-рд╕рд╛рдЗрди рд╕рд╛рдЗрдб рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рддреНрдпрд╛рдкрди рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ)
- рд╣рд╛рд░реНрдбрд░рдВрдЯрдЯрд╛рдЗрдо (рдЖрдкрдХреЛ рд╕реБрд░рдХреНрд╖рд╛ рдЕрдиреБрдорддрд┐ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ)
- рдПрдВрдЯрд╛рдЗрдЯреЗрд▓рдореЗрдВрдЯ (рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕реЗрд╕ рдЕрдиреБрдорддрд┐ рдХреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрде)
рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди-рдмрд┐рд▓реНрдбрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдЦрдВрдб рдореЗрдВ:

- afterSign (рдиреЛрдЯрд░реАрдХрд░рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрде, рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛)
рд╣рдо рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдирд┐рд▓рдВрдмрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдлрд╝рд╛рдЗрд▓ рдХреЛ Apple рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ (3 рд╕реЗ 10 рдорд┐рдирдЯ рддрдХ)
рд╕реВрдЪрдирд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
$ xcrun altool --notarization-history 0 -u $appleId -p $appleASP
рдЬрд╡рд╛рдм рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕реНрдерд┐рддрд┐ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдорд╛рди 'рдкреНрд░рдХреНрд░рд┐рдпрд╛', 'рд╕реНрд╡реАрдХреГрдд', 'рдЕрдорд╛рдиреНрдп' рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдпрджрд┐ рд╕реНрдерд┐рддрд┐ 'рдЕрдорд╛рдиреНрдп' рд╣реИ, рддреЛ рдЖрдк рдЕрдиреБрд░реЛрдз рд╕рдВрдЦреНрдпрд╛ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖред
$ xcrun altool --notarization-info "RequestUUID" -u $appleId
рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдФрд░ рдиреЛрдЯрд░реАрдХрд░рдг рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдпрд╣реА рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рд▓реЗрдЦ рдЙрдкрдпреЛрдЧреА рд▓рдЧрд╛ рд╣реЛрдЧрд╛ред рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рдж
рдЫреЛрдЯрд╛ рдЬреЛрдбрд╝
рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЧрдбрд╝рдмрдбрд╝ рдЦреЛрдЬ рдХреА рдЧрдИ рдереАред рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЖрд╡реЗрджрди рдХреЛ рдХреЗрд╡рд▓ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред рд▓реЙрдЧ рдХреЛ рджреЗрдЦрддреЗ рд╕рдордп, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЖрд╡реЗрджрди рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЧрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдХрд┐рд╕ рдХрд╛рд░рдг рдФрд░ рдХреИрд╕реЗ рд╣реБрдЖ, рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рдирд╣реАрдВ рдорд┐рд▓рд╛ред Yandex.Disk (рдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЕрдиреНрдп рддрд░реАрдХрд╛) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рднреЗрдЬрддреЗ рд╕рдордп, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ