Comments 5
Прошу прощения за дилетантский вопрос. Я тоже заинтересован в получении сертификата разработчика для своего проекта, но опасаюсь, что в моем случае это полностью нереально. Поэтому прежде, чем начинать курить эту тему, хотел бы получить советы (мнения) тех, кто уже прошел этот путь.
Вводная такая. Есть некоммерческий проект, очень похожий на опенсорс: рабочие сборки доступны для всех желающих, исходные коды формально открыты (все пользователи имеют к ним доступ). Документация тоже
общедоступна
Но, выложено это все не на Гите, а на Я-диске. Продублировать все на Гит - не проблема (я просто не работал с ним никогда). Однако, там будет именно эхо-копия проекта, а не первооригинал, так как сейчас у меня есть налаженная система сборки, и менять ее не хочется
а в нее Гит не вписывается - он там просто не нужен
Более конкретно, сборка проекта у меня сейчас идет сугубо локально, под Виндой, в среде VS 2008. При этом требуется настройка кучи внутренних зависимостей. Переносимость организована так: на каждой машине настраивается логический диск O:\, туда кладется все дерево папок, и все эти пути явным образом прописаны в конфигах сборки. Это позволяет нам выполнять сборку проекта на разных машинах (дерево папок, включая и папку с настройками проектов, синхронизируется через Я-диск или как-то еще). Такая система у нас работает еще с 1990г. При этом разработчиков изначально было два с половиной человека (а сейчас и вообще полтора), поэтому никакой необходимости мерджить ветки или контролировать версии не возникает вообще. Все изменения всегда делаются только на мастер-машине с актуальной копией проекта. То есть, мастер-машины могут меняться, но мы всегда работаем с кодом строго поочередно.
Отсюда первый вопрос: я правильно понял, что для использования описанной в статье схемы сертификации сборка должна происходить непосредственно из репозитория Git? Онлайн-сборку мне наладить
почти нереально
Во-первых, я этого просто не умею, так как всегда все собирал локально, а Гитом не пользовался (когда он появился, у нас уже лет 15 как все работало, а как известно, "если работает-то не трогай").
Во-вторых, у меня проприетарный компилятор. Я вообще не уверен, что он может компилировать файлы, лежащие где-то в сети, и выкладывать туда результат. Но даже если это можно как-то настроить, то тогда появляется
В-третьих: у меня даже на локальном компе сборка занимает определенное время... а когда идет активная работа над проектом, то я порой делаю полную пересборку по несколько раз в день. И мне очень бы не хотелось, чтобы этот процесс как-то зависел от доступности онлайн-ресурсов, или просто тормозил из-за этого.
Ну и еще один нюанс: мой проект включает около 40 субпроектов, для каждого из которых есть свои настройки сборки, которые я иногда меняю. Сейчас они прописаны в vfproj-файлах VS 2008. А для онлайн-сборки все это надо будет прописать в батниках? В принципе, я умею копировать команды сборки из VS куда-то еще, но делать это регулярно (при каждом изменении любой настройки) и безошибочно - это точно не мой конек. А более новую VS (которая вроде бы уже что-то знает про Git) я так и не установил, т.к. не сумел справиться с известными ограничениями....
В общем, хочется сборку по-прежнему делать локально...
Ну и второй вопрос: проект у меня компилируется в примерно 40 exe-шников (их число понемногу растет, но не быстро). Конечно, стабильную сборку я делаю не каждый день, и ради этого я готов иногда сделать 40 "Signing" вручную. Но достаточно ли будет для этого получить сертификат один раз?
P.S. Проект у меня очень узконишевый и
некоммерческий
хотя я и занимаюсь его развитием на работе примерно 20% времени, а еще 60% моей работы состоит в использовании этих программ для решения разных научных задач
Поэтому платные или чересчур времязатратратные способы получения сертификата не рассматриваются вообще. Но некоторое количество активных пользователей проект имеет, и если бы я сумел облегчить им жизнь ценой нескольких дней борьбы, то было бы здорово...
Не гит, а гитхаб. Вам не нужен гит для версионирования, но при этом очень нужен сертификат разработчика?)
Зачем?
Не гит, а гитхаб. Вам не нужен гит для версионирования,
Да, спасибо за уточнение. Я же говорю, что никогда гитхабом не пользовался, т.к. необходимости не было, и лишь очень примерно представляю себе общую идею (а в терминах путаюсь).
но при этом очень нужен сертификат разработчика?) Зачем?
Простите, я наверно был чересчур многословен, и причина моего вопроса при чтении поста ускользает. Я - автор большой самодельной программной системы, у которой есть определенное количество пользователей. Эта система регулярно (несколько раз в год) обновляется, после чего каждому пользователю приходится объяснять своей Винде, что он хочет запускать только что скачанные с моего Я-диска программы. Причем, их там целая куча (в пакете - 40 exe-шников, которые все время вызывают друг друга), поэтому обычный способ "нажал-подтвердил" не очень удобен. Вдобавок у нас есть одна особенность архитектуры: взаимодействие всех программ координирует скрытый процесс (у него нет собственного окна, оно бы просто мешалось при работе, как мусор). Вероятно, поэтому некоторые версии 10-ки
точнее, некоторые комбинации 10-ка + установленный поверх антивирус
тот же антивирус с другой сборкой 10-ки, а так же та же самая сборка, но с другим антивирусом - работали
вообще отказывались запускать программу без очень настойчивых танцев с бубном.
В общем, я всего лишь хочу упростить жизнь своим пользователям, чтобы собранные мной программы просто запускались и делали нужное юзеру дело без лишних вопросов. Мой собственный "статус разработчика" мне при этом до фени, естественно. Если этой цели можно добиться каким-то другим способом (применив какой-то не слишком заумный трюк на моей стороне) - расскажите, буду благодарен за советы.
Надеюсь эта статья поможет и вам сделать мир свободных приложений более доступным и безопасным для широкого круга пользователей.
Тут нет никакой связи. Они доступны в любом случае. И безопасность у них одинаковая, разница только в реакции так называемых антивирусов.
Спасибо за статью! Давно искал вариант подписи open source проекта.
Получение бесплатного сертификата разработчика для проекта с открытым исходным кодом от SignPath