Skip to content

Сакрэты рэпазіторыя

En Parlant~ выкарыстоўвае GitHub Actions для зборкі рэлізных бінарных файлаў для Windows, macOS і Linux. CI-канвеер патрабуе ўліковых даных для подпісу кода, подпісу абнаўленняў, сканіравання на вірусы і URL-адрасы шматкарыстальніцкага рэле-сервера. Яны захоўваюцца як сакрэты рэпазіторыя GitHub — зашыфраваныя значэнні, якія GitHub уводзіць у запускі працоўных працэсаў, але ніколі не адлюстроўвае.

Калі вы зробіце форк En Parlant~ і захочаце ствараць уласныя падпісаныя зборкі, вам спатрэбіцца наладзіць уласныя сакрэты. Зборкі ўсё роўна скампілюецца без іх, але бінарныя файлы не будуць падпісаныя, абнаўленні не будуць правярацца, а этап сканіравання VirusTotal будзе прапушчаны.

Azure Trusted Signing (подпіс кода для Windows)

Section titled “Azure Trusted Signing (подпіс кода для Windows)”

Карыстальнікі Windows бачаць папярэджанне SmartScreen («Windows абараніла ваш ПК»), калі запускаюць непадпісаны .exe. Подпіс кода ліквідуе гэтае папярэджанне і паведамляе Windows, што бінарны файл паходзіць ад верыфікаванага выдаўца.

En Parlant~ выкарыстоўвае Azure Trusted Signing для гэтага. Зборка Tauri выклікае trusted-signing-cli падчас этапу зборкі для Windows, які ўзаемадзейнічае з Azure для подпісу выканальнага файла.

СакрэтПрызначэнне
AZURE_CLIENT_IDІдэнтыфікатар прыкладання сэрвіснага прынцыпала
AZURE_CLIENT_SECRETУліковыя даныя сэрвіснага прынцыпала
AZURE_TENANT_IDТэнант Azure AD
AZURE_SUBSCRIPTION_IDПадпіска Azure
AZURE_CODE_SIGNING_ACCOUNTНазва ўліковага запісу Trusted Signing
AZURE_CODE_SIGNING_ENDPOINTURL-адрас канчатковай кропкі Trusted Signing
AZURE_CODE_SIGNING_PROFILEНазва профілю сертыфіката

Каб наладзіць самастойна: Стварыце ўліковы запіс Azure, наладзьце рэсурс Trusted Signing, стварыце профіль сертыфіката і зарэгіструйце сэрвісны прынцыпал з адпаведнымі дазволамі. Кароткае кіраўніцтва па Trusted Signing ад Microsoft апісвае ўвесь працэс.

Калі вы прапусціце гэта: Зборкі для Windows усё роўна працуюць, але вашых карыстальнікаў сустрэне жахлівы сіні экран SmartScreen — вы ведаеце, які менавіта. Мы ўсе хоць раз націскалі «Усё роўна запусціць» і спадзяваліся на лепшае. Зборкі для macOS і Linux не закранаюцца.

Убудаваны механізм абнаўлення Tauri правярае, што абнаўленні паходзяць ад сапраўднага выдаўца, а не з падробленай крыніцы. Калі праграма правярае наяўнасць новай версіі, яна спампоўвае абнаўленне і правярае яго подпіс адносна адкрытага ключа, убудаванага ў праграму. Закрыты ключ, які стварае гэтыя подпісы, знаходзіцца ў CI.

СакрэтПрызначэнне
TAURI_PRIVATE_KEYЗакрыты ключ Ed25519 для подпісу абнаўленняў
TAURI_KEY_PASSWORDПароль для абароны закрытага ключа

Каб наладзіць самастойна: Згенеруйце пару ключоў з дапамогай pnpm tauri signer generate. Змясціце закрыты ключ і пароль у сакрэты вашага рэпазіторыя, а адкрыты ключ — у tauri.conf.json у раздзел plugins.updater.pubkey.

Калі вы прапусціце гэта: Праграма зберацца нармальна, але аўтаабнаўленне не будзе працаваць. Карыстальнікам давядзецца спампоўваць новыя версіі ўручную.

Пасля зборкі рэлізных артэфактаў CI-канвеер загружае кожны бінарны файл (.exe, .dmg, .deb, .rpm, .AppImage) на VirusTotal для аўтаматычнага сканіравання на шкоднасныя праграмы. Гэта сігнал даверу — карыстальнікі могуць пераканацца, што афіцыйныя зборкі чыстыя.

СакрэтПрызначэнне
VIRUSTOTAL_API_KEYAPI-ключ для VirusTotal v3 API

Каб наладзіць самастойна: Стварыце бясплатны ўліковы запіс VirusTotal і скапіруйце API-ключ з вашага профілю.

Калі вы прапусціце гэта: Этап сканіравання VirusTotal ціха завершыцца з памылкай. Зборкі ўсё роўна паспяхова завершацца і выпускаюцца нармальна — проста ў вас не будзе аўтаматычных вынікаў сканіравання.

URL-адрас шматкарыстальніцкага рэле-сервера

Section titled “URL-адрас шматкарыстальніцкага рэле-сервера”

URL-адрас шматкарыстальніцкага рэле-сервера ўводзіцца падчас зборкі, каб праграма ведала, куды падключацца для анлайн-гульняў.

СакрэтПрызначэнне
VITE_RELAY_URLWebSocket URL-адрас шматкарыстальніцкага рэле-сервера (напр., wss://your-relay.fly.dev)

Каб наладзіць самастойна: Разгарніце ўласны рэле-сервер (гл. кіраўніцтва па наладцы шматкарыстальніцкага сервера) і ўстанавіце тут яго публічны URL-адрас.

Калі вы прапусціце гэта: Шматкарыстальніцкі рэжым усё роўна працуе, калі вы ўстановіце URL-адрас рэле-сервера ў наладах праграмы падчас выканання. Гэты сакрэт проста задае значэнне па змаўчанні, каб карыстальнікам не даводзілася наладжваць яго ўручную.

Група сакрэтаўПатрабуецца дляЦі можна прапусціць?
Azure (7 сакрэтаў)Падпісаныя зборкі для WindowsТак — зборкі працуюць, карыстальнікі бачаць папярэджанне SmartScreen
Tauri (2 сакрэты)АўтаабнаўленнеТак — зборкі працуюць, без аўтаабнаўлення
VirusTotal (1 сакрэт)Справаздачы пра сканіраванне на шкоднасныя праграмыТак — зборкі працуюць, без вынікаў сканіравання
URL рэле-сервера (1 сакрэт)Шматкарыстальніцкі сервер па змаўчанніТак — карыстальнікі могуць задаць яго ў наладах праграмы

Ні адзін з гэтых сакрэтаў не патрабуецца для лакальнай зборкі і запуску праграмы. Яны маюць значэнне толькі для CI/CD рэлізных зборак.