Compare commits
54 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8904e14a27 | ||
![]() |
683eca8367 | ||
![]() |
36e7896f07 | ||
![]() |
0a74e1f9a6 | ||
![]() |
831b9ffda9 | ||
![]() |
9ad0b9820e | ||
![]() |
40bd725b3c | ||
![]() |
955b95c27c | ||
![]() |
5c8888dc22 | ||
![]() |
766eac8913 | ||
![]() |
f067c0ee01 | ||
![]() |
e19b46f92b | ||
![]() |
5059fcc4c5 | ||
![]() |
dbc4613044 | ||
![]() |
665c43c0a3 | ||
08bd6b5aa0 | |||
3299103050 | |||
![]() |
785e3f7189 | ||
![]() |
75ce74dc8f | ||
![]() |
0f53a996fd | ||
![]() |
6d370db912 | ||
![]() |
d8a46c37d7 | ||
![]() |
cdeee718ee | ||
![]() |
5026f5557d | ||
![]() |
a7d8333d68 | ||
1492379094 | |||
3432122a73 | |||
b0b4e95ba2 | |||
d9c4ea3dc7 | |||
e3f139b8b0 | |||
58f1cfd110 | |||
89fe5bead9 | |||
6ab0b31054 | |||
c40fd4c51d | |||
0fd8903755 | |||
653ea3c750 | |||
8f877d3a56 | |||
286526026e | |||
![]() |
b306108dcb | ||
e1c37c1ce3 | |||
c73e874fc4 | |||
e5ed381c64 | |||
7f78033810 | |||
0de011828d | |||
fb9929fa30 | |||
3f7ba2bc7f | |||
6f3686a47e | |||
909604160a | |||
407576de60 | |||
2932232f14 | |||
519b3c70e1 | |||
194daa9b00 | |||
c3f1f9bba0 | |||
93493a971c |
12 changed files with 179 additions and 76 deletions
|
@ -1,28 +0,0 @@
|
||||||
name: 'Update_Geyser'
|
|
||||||
description: 'Updates Geyser for a specified branch'
|
|
||||||
inputs:
|
|
||||||
branch: # id of input
|
|
||||||
description: 'what branch to update'
|
|
||||||
required: true
|
|
||||||
default: 'main'
|
|
||||||
token: # id of input
|
|
||||||
description: 'Token needed to commit changes'
|
|
||||||
required: true
|
|
||||||
runs:
|
|
||||||
using: "composite"
|
|
||||||
permissions:
|
|
||||||
# Give the default GITHUB_TOKEN write permission to commit and push the
|
|
||||||
# added or changed files to the repository.
|
|
||||||
contents: write
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
ref: ${{ inputs.branch }}
|
|
||||||
token: ${{ inputs.token }}
|
|
||||||
- run: nix run .#update_plugin -- update geyser
|
|
||||||
shell: bash
|
|
||||||
- uses: https://github.com/stefanzweifel/git-auto-commit-action@v5
|
|
||||||
with:
|
|
||||||
commit_message: "Updated geyser for ${{ inputs.branch }}"
|
|
||||||
- run: git checkout main
|
|
||||||
shell: bash
|
|
|
@ -1,26 +1,10 @@
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
schedule:
|
schedule:
|
||||||
- cron: '0 0 * * *'
|
- cron: '0 0 * * *'
|
||||||
|
|
||||||
# using code from the nixos repo
|
|
||||||
jobs:
|
jobs:
|
||||||
# deploy_active:
|
|
||||||
# strategy:
|
|
||||||
# matrix:
|
|
||||||
# batch: [ active-core, active, active-ext ]
|
|
||||||
# runs-on: nix
|
|
||||||
# needs: [ deploy_dns ]
|
|
||||||
# steps:
|
|
||||||
# - uses: actions/checkout@v4
|
|
||||||
# - run: colmena apply -v --on @${{ matrix.batch }} --show-trace
|
|
||||||
# shell: bash
|
|
||||||
|
|
||||||
update:
|
update:
|
||||||
# strategy:
|
|
||||||
# matrix:
|
|
||||||
# branch: [ main, skynet, anime_manga ]
|
|
||||||
runs-on: nix
|
runs-on: nix
|
||||||
permissions:
|
permissions:
|
||||||
# Give the default GITHUB_TOKEN write permission to commit and push the
|
# Give the default GITHUB_TOKEN write permission to commit and push the
|
||||||
|
@ -31,18 +15,45 @@ jobs:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: "main"
|
|
||||||
uses: ./.forgejo/actions/update_branch
|
|
||||||
with:
|
|
||||||
branch: "main"
|
|
||||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
token: ${{ secrets.PIPELINE_TOKEN }}
|
||||||
- name: "skynet"
|
- name: "Get LFS objects"
|
||||||
uses: ./.forgejo/actions/update_branch
|
uses: https://forgejo.skynet.ie/Skynet/actions/get_lfs@v3
|
||||||
with:
|
with:
|
||||||
branch: "skynet"
|
repository: ${{ gitea.repository }}
|
||||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
ref_name: ${{ gitea.ref_name }}
|
||||||
- name: "anime_manga"
|
- name: Get all LFS objects
|
||||||
uses: ./.forgejo/actions/update_branch
|
run: |
|
||||||
with:
|
# Pull in all objects for all branches
|
||||||
branch: "anime_manga"
|
git lfs fetch --all
|
||||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
- name: setup git config
|
||||||
|
run: |
|
||||||
|
# setup the username and email. I tend to use 'GitHub Actions Bot' with no email by default
|
||||||
|
git config user.name "Skynet"
|
||||||
|
git config user.email "<>"
|
||||||
|
- name: Update each branch
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
branches=()
|
||||||
|
eval "$(git for-each-ref --shell --format='branches+=(%(refname))' refs/remotes/origin/)"
|
||||||
|
for branch in "${branches[@]}"; do
|
||||||
|
# for debugging
|
||||||
|
echo "$branch"
|
||||||
|
if [ "$branch" == "refs/remotes/origin/HEAD" ]; then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
# need to convert "'refs/remotes/origin/main" to "main"
|
||||||
|
branch_local=$(echo "$branch" | awk -F'[\\\\/]' ' { print $4 }')
|
||||||
|
git switch $branch_local
|
||||||
|
git lfs pull
|
||||||
|
git status
|
||||||
|
nix run .#update_plugin -- update geyser
|
||||||
|
|
||||||
|
## these will only succeed if there are changes
|
||||||
|
git add --all || true
|
||||||
|
git commit -m "Updated geyser for $branch_local" || true
|
||||||
|
git push || true
|
||||||
|
done
|
||||||
|
# - uses: https://github.com/stefanzweifel/git-auto-commit-action@v5
|
||||||
|
# with:
|
||||||
|
# commit_message: "Updated geyser for ${{ matrix.branch }}"
|
|
@ -1,8 +1,13 @@
|
||||||
# DOnt add teh IDE's
|
# No need to have anything outside teh packwiz files inside teh pack
|
||||||
|
/.forgejo
|
||||||
/.idea
|
/.idea
|
||||||
|
/docs
|
||||||
|
/nix
|
||||||
|
|
||||||
|
.git*
|
||||||
|
|
||||||
# dont add nix stuff
|
# dont add nix stuff
|
||||||
flake.*
|
flake.*
|
||||||
/nix
|
|
||||||
|
|
||||||
|
# Dont add documentation
|
||||||
*.md
|
*.md
|
||||||
|
|
29
docs/Admin_Ports.md
Normal file
29
docs/Admin_Ports.md
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
# Ports allocated
|
||||||
|
|
||||||
|
## Minecraft
|
||||||
|
Ports are grouped together like so:
|
||||||
|
* 255XY - Java Port
|
||||||
|
* TCP
|
||||||
|
* 244XY - Voice Chat port
|
||||||
|
* UDP
|
||||||
|
* 233XY - Bedrock Port
|
||||||
|
* UDP
|
||||||
|
|
||||||
|
| XY | Society | Bot |
|
||||||
|
|----|----------|-----|
|
||||||
|
| 18 | Computer | Y |
|
||||||
|
| 19 | Computer | Y |
|
||||||
|
| 20 | | |
|
||||||
|
| 21 | Games | |
|
||||||
|
| 22 | PhilDeb | |
|
||||||
|
| 23 | Anime | Y |
|
||||||
|
| 24 | | |
|
||||||
|
| 25 | | |
|
||||||
|
|
||||||
|
|
||||||
|
## Steam
|
||||||
|
This covers games like TF2 and CSGO.
|
||||||
|
Currently just for Compsoc
|
||||||
|
|
||||||
|
* 27015
|
||||||
|
* 27020
|
69
docs/Minecraft_Setup.md
Normal file
69
docs/Minecraft_Setup.md
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
# Server Setup
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
### Ports
|
||||||
|
* 255XY - Java Port
|
||||||
|
* 244XY - Voice Chat port
|
||||||
|
* 233XY - Bedrock Port
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
### Config
|
||||||
|
1. In [this repo][config_01] create a new branch for the club/soc who wants the server.
|
||||||
|
2. Push this branch to Forgejo.
|
||||||
|
|
||||||
|
[config_01]: https://forgejo.skynet.ie/Skynet/minecraft_plugins_v2
|
||||||
|
|
||||||
|
### Server
|
||||||
|
1. In the admin panel create a new server. [link][setup_01]
|
||||||
|
2. ``Information``
|
||||||
|
* ``Primary Allocation``
|
||||||
|
* You will need to create allocations for both ports using the add allocation button
|
||||||
|
![add_allocation.png][setup_02]
|
||||||
|
* Add allocations for all 3 ports ``255XY``/``244XY``/``233XY``
|
||||||
|
* ``Owner``
|
||||||
|
* If the Club/Soc already has an account then use that
|
||||||
|
* Else use the plus:
|
||||||
|
![add_allocation.png][setup_02]
|
||||||
|
To create a new account for them.
|
||||||
|
* ``username`` - This should be the Club/Soc as lowercase.
|
||||||
|
Check with Admin if they already have a Skynet account, if they have then use that.
|
||||||
|
* ``email`` - use ``$username@skynet.ie`` or ``$username@ulwolves.ie``
|
||||||
|
Do not use any other email.
|
||||||
|
3. ``Egg Configuration``
|
||||||
|
* For the egg choose ``mcsleepingserverstarter-Packwiz-Purpur-Geyser-Floodgate``.
|
||||||
|
* For ``{{PACKWIZ_URL}}`` it is ``https://forgejo.skynet.ie/Skynet/minecraft_plugins_v2/raw/branch/$BRANCHNAME/pack.toml``.
|
||||||
|
* ``$BRANCHNAME`` is the name of the branch as done in [Config](#config).
|
||||||
|
4. Move onto ``Environment Configuration``
|
||||||
|
* Memory give it about ``6144`` MB or so.
|
||||||
|
* Swap Memory give it about ``1024``
|
||||||
|
* ``Feature Limits`` give one or two backups.
|
||||||
|
|
||||||
|
[setup_01]: https://panel.games.skynet.ie/admin/servers/create
|
||||||
|
[setup_02]: media/add_allocation.png
|
||||||
|
|
||||||
|
### Minecraft
|
||||||
|
Now in the panel ye need to modify some files.
|
||||||
|
If an option is not already in teh file then create it.
|
||||||
|
|
||||||
|
1. ``server.properties``
|
||||||
|
* ``enforce-secure-profile=false`` - This allows bedrock players to talk in text chat
|
||||||
|
2. ``sleepingSettings.yml``
|
||||||
|
* See the [Github repo][minecraft_01] for full config details
|
||||||
|
* ``serverName`` - This is what gets shown on users server listings when teh server is sleeping.
|
||||||
|
``GSoc, connect to wake up then reconnect in a min`` is what is on teh GSoc one,
|
||||||
|
* ``serverPort`` - Use the Java port ``255XY``
|
||||||
|
* ``bedrockPort`` - Use the Bedrock port ``233XY``
|
||||||
|
3. ``plugins/Geyser-Spigot/config.yml``
|
||||||
|
* ``bedrock.port`` - Use the Bedrock port ``233XY``
|
||||||
|
4. ``plugins/voicechat/voicechat-server.properties``
|
||||||
|
* ``port`` - Use the Voice port ``244XY``
|
||||||
|
|
||||||
|
[minecraft_01]: https://github.com/vincss/mcsleepingserverstarter
|
||||||
|
|
||||||
|
### DNS
|
||||||
|
An entry needs to be added to the [Forgejo DNS Config][dns_01] in the form of ``minecraft.$NAME``.
|
||||||
|
Where ``$NAME`` is the name of teh club/soc, lowercase.
|
||||||
|
|
||||||
|
[dns_01]: https://forgejo.skynet.ie/Skynet/nixos/src/branch/main/applications/games/minecraft.nix#L27
|
21
docs/Minecraft_Users.md
Normal file
21
docs/Minecraft_Users.md
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# Minecraft - Users
|
||||||
|
|
||||||
|
## Discord Bot
|
||||||
|
If the Club/Soc uses the Skynet Discord bot then you will need to add your username to it.
|
||||||
|
Instructions can be found here: [link][users_04]
|
||||||
|
|
||||||
|
## Java
|
||||||
|
* Connect via ``minecraft.$NAME.games.skynet.ie``
|
||||||
|
* If you want to use voice chat install it locally
|
||||||
|
* [Modrinth][users_02]
|
||||||
|
* [Wiki][users_03] (Has more detailed install instructions)
|
||||||
|
|
||||||
|
## Bedrock
|
||||||
|
* Connect via ``minecraft.$NAME.games.skynet.ie``
|
||||||
|
* Port is ``233XY``
|
||||||
|
* Bedrock users need to [link][users_01] their account to join the server
|
||||||
|
|
||||||
|
[users_01]: https://link.geysermc.org/method/online
|
||||||
|
[users_02]: https://modrinth.com/plugin/simple-voice-chat
|
||||||
|
[users_03]: https://modrepo.de/minecraft/voicechat/wiki/installation
|
||||||
|
[users_04]: https://forgejo.skynet.ie/Skynet/discord-bot/src/branch/main/doc/User.md#minecraft
|
BIN
docs/media/add_allocation.png
(Stored with Git LFS)
Normal file
BIN
docs/media/add_allocation.png
(Stored with Git LFS)
Normal file
Binary file not shown.
|
@ -7,7 +7,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
nixConfig = {
|
nixConfig = {
|
||||||
bash-prompt-suffix = "[Skynet Dev] ";
|
|
||||||
extra-substituters = "https://nix-cache.skynet.ie/skynet-cache";
|
extra-substituters = "https://nix-cache.skynet.ie/skynet-cache";
|
||||||
extra-trusted-public-keys = "skynet-cache:zMFLzcRZPhUpjXUy8SF8Cf7KGAZwo98SKrzeXvdWABo=";
|
extra-trusted-public-keys = "skynet-cache:zMFLzcRZPhUpjXUy8SF8Cf7KGAZwo98SKrzeXvdWABo=";
|
||||||
};
|
};
|
||||||
|
@ -29,6 +28,7 @@
|
||||||
devShells.default = pkgs.mkShell {
|
devShells.default = pkgs.mkShell {
|
||||||
name = "Skynet Mod env";
|
name = "Skynet Mod env";
|
||||||
packages = packages_local;
|
packages = packages_local;
|
||||||
|
shellHook = "export PS1='[Skynet Dev] '";
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = {
|
packages = {
|
||||||
|
|
10
index.toml
10
index.toml
|
@ -1,13 +1,5 @@
|
||||||
hash-format = "sha256"
|
hash-format = "sha256"
|
||||||
|
|
||||||
[[files]]
|
|
||||||
file = ".forgejo/actions/update_branch/action.yml"
|
|
||||||
hash = "d766aa4529c72ab0b451e518367bd8b58126697181670248397b13db6ab16cb2"
|
|
||||||
|
|
||||||
[[files]]
|
|
||||||
file = ".forgejo/workflows/geyser.yml"
|
|
||||||
hash = "552840ea9426de23a692cd4f0dabef497acff0918d9fac9c074ad7a328cb2df5"
|
|
||||||
|
|
||||||
[[files]]
|
[[files]]
|
||||||
file = "plugins/essentialsx-discord.pw.toml"
|
file = "plugins/essentialsx-discord.pw.toml"
|
||||||
hash = "3980e4f0ba4095425a76680031b9c469eda86845879160c34679d626b531c776"
|
hash = "3980e4f0ba4095425a76680031b9c469eda86845879160c34679d626b531c776"
|
||||||
|
@ -25,7 +17,7 @@ metafile = true
|
||||||
|
|
||||||
[[files]]
|
[[files]]
|
||||||
file = "plugins/geyser.pw.toml"
|
file = "plugins/geyser.pw.toml"
|
||||||
hash = "7dce743e21119b286b2014756451e7e860ef4a9d06d708eb449e835df5d54f2f"
|
hash = "cfcebc4e44d75a227f46216b100437fb3d1dc786b10c6e517790f6aca2cbcff3"
|
||||||
metafile = true
|
metafile = true
|
||||||
|
|
||||||
[[files]]
|
[[files]]
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
buildGoModule {
|
buildGoModule {
|
||||||
pname = "packwiz";
|
pname = "packwiz";
|
||||||
version = "0-unstable-2024-10-15";
|
version = "0-unstable-2025-05-08";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Silver-Golden";
|
owner = "Silver-Golden";
|
||||||
repo = "packwiz";
|
repo = "packwiz";
|
||||||
rev = "453264019e54eae69f495078b0f3fa073f071e73";
|
rev = "7ae91a58dbec3b76ce0aaaf15aeba3118021a34f";
|
||||||
sha256 = "sha256-x6Z8MLaacZFlRYOVkTU+ffYtCJu4FAB3I2W/uQITwns=";
|
sha256 = "sha256-3zUkePmVJTpU9+mkLyeqlZ1KNVDXNsFvoh8ifwXya1M=";
|
||||||
};
|
};
|
||||||
passthru.updateScript = unstableGitUpdater { };
|
passthru.updateScript = unstableGitUpdater { };
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ pack-format = "packwiz:1.1.0"
|
||||||
[index]
|
[index]
|
||||||
file = "index.toml"
|
file = "index.toml"
|
||||||
hash-format = "sha256"
|
hash-format = "sha256"
|
||||||
hash = "93853b87fdbba621190f0cbacbcee0475f153c3d9eb744a8c2d0c2c4bfad4556"
|
hash = "8232fce7440db8e2f5f8be1a01d74cf04852e9f8a220f32803614b7a1cecc814"
|
||||||
|
|
||||||
[versions]
|
[versions]
|
||||||
minecraft = "1.21.5"
|
minecraft = "1.21.5"
|
||||||
|
@ -13,3 +13,4 @@ purpur = "2428"
|
||||||
|
|
||||||
[options]
|
[options]
|
||||||
acceptable-game-versions = ["1.21", "1.21.1", "1.21.2", "1.21.3", "1.21.4", "1.21.5"]
|
acceptable-game-versions = ["1.21", "1.21.1", "1.21.2", "1.21.3", "1.21.4", "1.21.5"]
|
||||||
|
datapack-folder = "plugins"
|
||||||
|
|
|
@ -3,11 +3,11 @@ filename = "Geyser-Spigot.jar"
|
||||||
side = "server"
|
side = "server"
|
||||||
|
|
||||||
[download]
|
[download]
|
||||||
url = "https://cdn.modrinth.com/data/wKkoqHrH/versions/xIN8Ujrm/Geyser-Spigot.jar"
|
url = "https://cdn.modrinth.com/data/wKkoqHrH/versions/29cMfxqV/Geyser-Spigot.jar"
|
||||||
hash-format = "sha512"
|
hash-format = "sha512"
|
||||||
hash = "6ac40376aa5603e1a8de7c4fe39fe4925c76e26b1a66a1a9db43995542195d620c7adf1079ba75c7205d9f62ab16f3897fca3da0c7fa6ad18fab63a6ac2a6304"
|
hash = "e2b7d92bda3c4ef0f61027ed321816b9d8a88d4c60ab38279caa36c776f767588260fed4f3de183ec518a764695552e2cb7d6165c55f7c2c8a655f97a3109c4c"
|
||||||
|
|
||||||
[update]
|
[update]
|
||||||
[update.modrinth]
|
[update.modrinth]
|
||||||
mod-id = "wKkoqHrH"
|
mod-id = "wKkoqHrH"
|
||||||
version = "xIN8Ujrm"
|
version = "29cMfxqV"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue