Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
JoCat committed Jul 26, 2024
2 parents af2cac9 + ae63e42 commit 502449b
Show file tree
Hide file tree
Showing 14 changed files with 754 additions and 503 deletions.
5 changes: 3 additions & 2 deletions docs/.vitepress/theme/custom.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
:root {
scroll-behavior: smooth;

/* TODO */
/* https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css */
--vp-c-brand-1: #4f7fff;
--vp-c-brand-2: #4c7af6;
--vp-c-brand-3: #4269d4;
}
15 changes: 14 additions & 1 deletion docs/basic/build.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@

Есть 2 способа публикации новых версий лаунчера:

- `github` - Создаётся публичный репозиторий где в вкладке `Releases` будут храниться новые версии
- `generic` - Использование встроенного в лаунчсервер сервер релизов
- `github` - Создаётся публичный репозиторий где в вкладке `Releases` будут храниться новые версии. Для опытных пользователей
- `s3` - Облачное хранилище файлов. Для опытных пользователей

Для удобной компиляции лаунчера для разных ОС мы используем систему `GitHub Actions`.
Expand All @@ -26,6 +27,11 @@
"releaseType": "release",
"owner": "JoCat",
"repo": "LauncherPublic"
},
{
"provider": "generic",
"url": "http://127.0.0.1:1370/files/release",
"channel": "latest"
}
],
}
Expand All @@ -41,6 +47,8 @@
- `releaseType` - какой вид имеет релиз
- `owner` - владелец репозитория в котором будет опубликован релиз
- `repo` - название публичного репозитория
- `url` - адрес по которому лежат готовые версии лаунчера на лаунсервере
- `channel` - как называть файлы содержащие информацию о релизе

## Выпускаем токен для репозитория

Expand Down Expand Up @@ -74,3 +82,8 @@
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
```

## Настройка выгрузки релизов <Badge type="tip" text="для версии 0.0.5 и выше" />

Для корректной выгрузки релизов у вас уже должен лежать `public.pem` в репозитории и указан адрес лаунчсервера в `config.ts`.
Первый в списке publish должен быть provider `generic`.
8 changes: 7 additions & 1 deletion docs/basic/clients.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ downloadclient 1.19.4 TestClient mirror
::: details Работа с зеркалами

Для загрузки сборок с зеркала вам необходимо сначала найти на просторах сообщества его адрес и разместить его в таком виде:

```hjson
{
mirrors: [
Expand All @@ -67,10 +68,14 @@ downloadclient 1.19.4 TestClient mirror
"uuid": "016ed45e-93ba-45d9-972a-7de258ad778c",
"sortIndex": 0,
"servers": [
{
"hostname": "example.com",
"title": "Test"
},
{
"ip": "127.0.0.1",
"port": 25565,
"title": "Test"
"title": "Test 2"
}
],
"javaVersion": 17,
Expand All @@ -95,6 +100,7 @@ downloadclient 1.19.4 TestClient mirror
- `sortIndex` - в какой очерёдности должен стоять профиль в лаунчере
- `ip` - адрес игрового сервера для получения числа игроков онлайн
- `port` - порт игрового сервера
- `hostname` - заменяет `ip` и `port` на домен с SRV записью
- `title` - название сервера в списке профилей
- `javaVersion` - версия Java которая будет скачиваться для игры
- `version` - версия игры
Expand Down
11 changes: 9 additions & 2 deletions docs/basic/demon.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,14 @@ pm2 save
```sh
sudo nano /etc/systemd/system/launcher.service
```
Создаём отдельного юзера для управления лаунчерсервером:
```sh
adduser launchserver --no-create-home --gecos ""
```
Чтобы все работало корректно, вам потребуется выдать юзеру права на папку:
```sh
sudo chown launchserver:launchserver путь до вашей папки с лаунчсервером
```

Само содержимое файла:
```systemd
Expand All @@ -44,14 +52,13 @@ Description=launcher Server
[Service]
# Укажите путь где у вас размещён лаунчсервер
ExecStart=LauncherServer-linux
ExecStart=/home/LauncherServer-linux
Restart=always
RestartSec=10
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=launcher
User=launchserver
Group=servers
[Install]
WantedBy=multi-user.target
Expand Down
31 changes: 19 additions & 12 deletions docs/basic/dictionary.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,53 @@
# Словарь определений

В данный словарь поможет вам более точно понять профессионализмы которыми оперирует даная wiki.
Данный словарь поможет вам более точно понять профессионализмы которыми оперирует данная документация.

## Список определений

`Лаунчер сервер` - это программа для раздачи игровых файлов и авторизации в лаунчере.
`Лаунчсервер (лаунчер-сервер)` - это программа отвечающая за загрузку и раздачу игровых файлов, взаимодействие с лаунчером и серверами и другие функциональные возможности.

---

`Сервер (ядро)` - это программа для создание игровых миров в игре.
`Лаунчер (лаунчер)` - это программа отвечающая за загрузку игровых файлов на компьютер пользователя, авторизацию в системе, запуск игры и другие функциональные возможности.

---

`Клиент` - это игра и файлы которое нужны для её запуска.
`Сервер (ядро)` - это программа отвечающая за создание и поддержку игрового мира. Например Paper, Purpur, Mohist, Arclight и др.

---

`Зеркало (mirror)` - Это сайт который раздаёт готовые сборки клиентов.
`Клиент` - это файлы игры которые нужны для её запуска.

---

`Профиль` - это файл в котором описывается как нужно запускать игру.
`Зеркало (mirror)` - это сайт который раздаёт готовые сборки клиентов.

---

`Хеш-функции` - это способ перевести пароль в не читаемый вид но при сравнивании одинаковых паролей их `хеш` будет одинаков.
`Профиль` - это файл в котором содержатся параметры для запуска клиента.

---

`API` - это стандарт общение двух или более программ.
`API` - это стандарт общения двух или более программ.

## Git сленг

`Гит (Git)` - это система контроля версий, которая помогает отслеживать историю изменений в файлах.

---

`Деплой` - это скрипт описывает как нужно подготовить систему сборки лаунчера.
`Репозитории (Repository)` - это все файлы, находящиеся под контролем версий, вместе с историей их изменения и другой служебной информацией.

## Git сленг
---

`Комит` - отправка изменения в GitHub.
`Коммит (Commit)` - фиксация (сохранение) внесённых изменений в репозитории.

---

`Мердж` - копирование изменений с других веток.
`Ветка (Branch)` - это набор коммитов, расположенных в хронологическом порядке.

---

`Мердж (Merge)` - слияние изменений с разных веток в репозитории.

---
42 changes: 28 additions & 14 deletions docs/basic/discord-rpc.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,23 @@

```ts
export const discordRPC = {
appId: "1214685301793103902",
firstLineText: "Тестирую лаунчер",
secondLineText: "Чувак, ты думал здесь что-то будет?",
buttons: [
{
label: "Прекол",
url: "https://youtu.be/dQw4w9WgXcQ",
appId: '1214685301793103902',
default: {
firstLineText: 'Тестирую лаунчер',
secondLineText: 'Чувак, ты думал здесь что-то будет?',
buttons: [
{
label: 'Прекол',
url: 'https://youtu.be/dQw4w9WgXcQ',
},
],
largeImageKey: 'logo',
smallImageKey: 'logo_mc',
largeImageText: 'Aurora Launcher',
smallImageText: 'Minecraft',
},
],
largeImageKey: "logo",
smallImageKey: "logo_mc",
largeImageText: "Aurora Launcher",
smallImageText: "Minecraft",
profile: {...},
game: {...}
};
```

Expand All @@ -30,11 +34,21 @@ export const discordRPC = {
- `smallImageKey` - Название маленького (в правом нижнем углу основного) изображения приложения
- `largeImageText` - Какой текст будет при наведении на основное изображение
- `smallImageText` - Какой текст будет при наведении на маленькое изображение

- `default` - Статус который будет при окне авторизации, выбора профиля
- `profile` - Статус который будет при окне скачивания, запуска игры
- `game` - Статус который будет во время игры
:::info Для справки:
Самое верхнее жирное строка это название приложение которое вы дали при создании.
Самая верхняя жирная строка это название приложение которое вы дали при создании.
::::

##### Описание заполнителей

- `{server}` - Хранит название профиля который выбрал игрок
- `{nickname}` - Хранит никнейм игрока
:::info Для справки:
Заполнители работают только в статусах `profile` и `game`.
:::

## Где найти appId?

Для начала вы должны авторизоваться на сайте [Discord Developer](https://discord.com/developers) и создать своё первое приложение.
Expand Down
6 changes: 6 additions & 0 deletions docs/basic/install-launch-server.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@ LauncherServer-win.exe
```

:::

##### Аргументы запуска лаунчсервера

- `--host` - указывается адрес для прослушивания
- `--port` - указывается порт для прослушивания

Сервер создаст конфигурационный файл и после чего выключится.
После чего вы можете произвести его настройку.
Все настройки хранятся в файле `LauncherServerConfig.hjson`.
Expand Down
4 changes: 2 additions & 2 deletions docs/basic/install-launch.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Начало работы

Для настройки [ланучера](https://github.com/AuroraTeam/Launcher) понадобится завести аккаунт GitHub, так как сборка лаунчера происходит в той операционной системе под которую собирается.
Для настройки [лаунчера](https://github.com/AuroraTeam/Launcher) понадобится завести аккаунт GitHub, так как сборка лаунчера происходит в той операционной системе под которую собирается.

## Создание репозитория

Expand All @@ -16,7 +16,7 @@

После настройки лаунчер-сервера в его корневой директории должен появиться файл `public.pem`. Его нужно скопировать в корень репозитория лаунчера. Это нужно чтобы сервер знал что к нему подключается оригинальный лаунчер, а не сторонние приложения.

## Настройка ланучера
## Настройка лаунчера

Все настройки хранятся в файле `config.ts`.

Expand Down
3 changes: 3 additions & 0 deletions docs/basic/nginx.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ server {
charset utf-8;
#access_log /var/log/nginx/launcher.ВАШ_ДОМЕН.access.log;
#error_log /var/log/nginx/launcher.ВАШ_ДОМЕН.error.log notice;
client_max_body_size 100M;
location /files {
Expand Down Expand Up @@ -57,6 +58,7 @@ server {
ssl_certificate_key /etc/nginx/ssl/КЛЮЧ_ОТ_СЕРТИФИКАТА;
#access_log /var/log/nginx/launcher.ВАШ_ДОМЕН.access.log;
#error_log /var/log/nginx/launcher.ВАШ_ДОМЕН.error.log notice;
client_max_body_size 100M;
location /files {
Expand Down Expand Up @@ -91,6 +93,7 @@ server {
charset utf-8;
#access_log /var/log/nginx/access.log;
#error_log /var/log/nginx/error.log notice;
client_max_body_size 100M;
location /files {
Expand Down
1 change: 1 addition & 0 deletions docs/basic/signing.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
- Вкладка `Области применения ключа` в левом столбце выбираем `Digital Signature` в правом `Code Signing` и `Microsoft Individual Code Signing`.
- Создаём Code Signing сертификат кнопкой `OK`
- Выделяем Code Signing сертификат и нажимаем `Экспорт` в формате `PKCS#12 chain` и запоминаем пароль он нам пригодиться в настройке `certificatePassword`.
![1.png](/signing/1.webp)

## Подпись исполняемого файла

Expand Down
10 changes: 7 additions & 3 deletions docs/public/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/public/signing/1.webp
Binary file not shown.
Loading

0 comments on commit 502449b

Please sign in to comment.