Evgeny
Мне это только предстоит...
Vadim
135 попыток, жесть
Oleh
Не не, попыток 13 было. У нас уже было приложение в сторедо этого
Vadim
Не не, попыток 13 было. У нас уже было приложение в сторедо этого
Хорошо))) А то 135 немного(очень) запредельно
Evgeny
https://github.com/ubergrape/grape-electron/blob/master/scripts/resignAndPackage.sh
у меня какаято мистика, делаю всё тоже самое, на выходе Exception Type: EXC_CRASH (Code Signature Invalid) Пробую и mas и mas-dev, самое интересное, что mas билд вообще не должен пускаться локально https://developer.apple.com/library/archive/qa/qa1884/_index.html#//apple_ref/doc/uid/DTS40015141
Oleh
Попробуй сделать с нуля то что говорится здесь - https://github.com/electron-userland/electron-builder/issues/4553#issuecomment-623451338
Oleh
У тебя возможно что-то не так с сертификатами
Evgeny
Вот только на них и остаётся думать... У тебя также проходит две подписи, сначала "Developer ID Application" потом "3rd Party Mac Developer Application"?
Oleh
Для mas?
Evgeny
Ага
Oleh
Не помню, сейчас попробую
Oleh
Oleh
Да, все верно
Evgeny
А у тебя этот билд, получается 3 раза подписанный: 1) Developer ID Application 2) 3rd Party Mac Developer Application 3) и получается ещё раз "3rd Party Mac Developer Application" пускается локально?
Oleh
Oleh
Да, запускается. Ты отключил hardenedRuntime?
Evgeny
Да, отключил, теперь точно ничего не понимаю, он так то не должен пускаться...
Oleh
А ты пробовал подписать пустое приложение?
Evgeny
Пока нет, но похоже придётся
Oleh
Попробуй, это 10 минут займет
Oleh
Но сразу станет понятно проблема ли в сертификатах
Evgeny
Ага
Evgeny
Кстати, а если у тебя убрать переподпись вот тем скриптом, то перестаёт пускаться?
Oleh
Да
Oleh
В таком случае запускается только если убрать sandbox и сделать mas-dev
Oleh
Покажи что у тебя в termination reason
Evgeny
System Integrity Protection: enabled Crashed Thread: 0 Exception Type: EXC_CRASH (Code Signature Invalid) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY Termination Reason: Namespace CODESIGNING, Code 0x1
Oleh
Да, так же было
Oleh
Namespace CODESIGNING, Code 0x1
Oleh
Ну не знаю, проверь expiration date
Evgeny
одинаковый резон и mas и mas-dev, так что похоже что-то с сертификатами не то
Electron.js releases
v10.0.0-nightly.20200513 https://github.com/electron/electron/releases/tag/v10.0.0-nightly.20200513 v10.0.0-nightly.20200513
Oleh
Но если убрать sandobox с entitlements для mas-dev, то запускалось
Oleh
Но тогда надо убрать inherit в child.plist и скопировать все entitlements с parent в child
Evgeny
чистый проект, пересоздал все сертификаты, аналогично, добавляем sandobox - падает
Oleh
А без него запускается?
Evgeny
Да, без app-sandbox запускается
Oleh
Ну а ты переподписал, все как надо?
Oleh
Если надо, я могу сделать проект пустой
Oleh
И проверить у себя и подписать, и скинуть тебе
Oleh
В плане, скинуть код, который точно после подписи работает
Abdubek
Всем привет, мне нужно сделать чат для локальной сети, и я не могу понять как разные аппки будут устанавливать соеденение с друг другом
Abdubek
есть у кого опыт?)
Lev
пиртупир?
Anonymous
https://github.com/Arduino1987/local-network-chat-on-electron/blob/dev/README.md
Vadim
https://github.com/Arduino1987/local-network-chat-on-electron/blob/dev/README.md
Репа конечно так себе, для 2018 плоховато. Но может то что нужно) Дока + качество кода + использование технологий на весьма низком уровне.
Evgeny
Это просто пиздец, товарщи! Я разобрался, почему mas и mas-dev билды падают, если их собирать electron-builder-ом без хаков с тройной подписью
Evgeny
В плане, скинуть код, который точно после подписи работает
в общем, копипаста твоего кода собрало чистое приложение которое не падает локально в mas-dev и проходит валидацию перед загрузкой в стор в сборке mas
Oleh
Мне впадло было лезть куда-то
Evgeny
но, что мне сразу бросилось в глаза, что третья подпись, почти 1:1 как вторая
Abdubek
пиртупир?
Кажется да
Evgeny
вторая, это которая электрон билдовская
Vadim
Проект начат но там реализации вообще не вижу никаких
Я посмотрел на точку входа и закрыл не ожидая чего-то хорошего)
Evgeny
так вот, они отличаются только тем, что: * если в entitlements есть app-sandbox то билдер пересохраняет этот файл в бинарном формате * и все сборки идут по пизде - и mas и mas-dev и вообще все, если в entitlements проскакивает app-sandbox
Oleh
Не думаю, я пробовал бинарники перегнать в xml или что там
Oleh
Где-то был скрипт, не прошлел мой pkg потом валидацию
Abdubek
Кажется да
Видел peerjs либу, но ему нужно запускать сервер для соединение клиентов
Evgeny
Где-то был скрипт, не прошлел мой pkg потом валидацию
да, скорее всего потому что билдер при следующем прогоне опять его в бинарный конвертнул
Oleh
Не, я руками сбилдил
Oleh
Может я что-то недоподписал
Oleh
https://github.com/electron/electron-osx-sign/issues/223#issuecomment-611070794
Oleh
Вот этим скриптом я переделал на XML
Oleh
И как-то собрал pkg, не помню как уже
Evgeny
у тебя получатся: 1) первый проход подпихивает правильные ElectronTeamID https://github.com/electron-userland/electron-builder/blob/master/packages/app-builder-lib/electron-osx-sign/util-entitlements.js#L50 2) а второй проход подписывает НЕ бинарным entitlements https://github.com/ubergrape/grape-electron/blob/master/scripts/resignAndPackage.sh#L19
Evgeny
и дело в шляпе
Oleh
https://github.com/ubergrape/grape-electron/blob/c4e33294e86601b52e8a078ce017dff7e38f2a1e/resources/osx/pack.sh
Oleh
Вот так я собирал
Evgeny
ага, всё сходится ;)
Oleh
Думаю что не только в этом дело, а еще и в hardenedRuntime
Oleh
Так а чего у меня не прошло валидацию тогда?
Oleh
В плане, я не мог этот билд запустить
Evgeny
Думаю что не только в этом дело, а еще и в hardenedRuntime
не, не в нём hardenedRuntime - false по дефолту в mas и mas-dev
Oleh
Я сбилдил, у меня вышел .app. Потом я переделеал entitlements в xml, и собрал скриптом выше
Oleh
Ну не знаю, у меня с hardenedRuntime: true не работает
Oleh
Надо его обязательно ставить false
Evgeny
это для нотаризации нужно хардендед