Compare commits
24 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
60f523e400 | ||
![]() |
b9b30acfbb | ||
![]() |
1acb59d915 | ||
![]() |
b75acd894d | ||
![]() |
0d1d77a800 | ||
![]() |
9386b7df82 | ||
![]() |
89d2674a2f | ||
![]() |
f3c855015d | ||
![]() |
5743f7748b | ||
![]() |
9b108d9916 | ||
![]() |
0ac7c4b8af | ||
![]() |
67c302f19b | ||
![]() |
026d432804 | ||
![]() |
54eb783d7f | ||
![]() |
4a846610e1 | ||
![]() |
ffc7d7ea31 | ||
![]() |
d91513420d | ||
![]() |
931626def0 | ||
![]() |
c07a8d54b2 | ||
![]() |
245b666d27 | ||
![]() |
183b7fbe49 | ||
![]() |
d3e2e44d96 | ||
![]() |
d63b183858 | ||
![]() |
db5f59618a |
11 changed files with 73 additions and 176 deletions
28
.forgejo/actions/update_branch/action.yml
Normal file
28
.forgejo/actions/update_branch/action.yml
Normal file
|
@ -0,0 +1,28 @@
|
|||
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,10 +1,26 @@
|
|||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
# using code from the nixos repo
|
||||
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:
|
||||
# strategy:
|
||||
# matrix:
|
||||
# branch: [ main, skynet, anime_manga ]
|
||||
runs-on: nix
|
||||
permissions:
|
||||
# Give the default GITHUB_TOKEN write permission to commit and push the
|
||||
|
@ -15,45 +31,18 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
||||
- name: "Get LFS objects"
|
||||
uses: https://forgejo.skynet.ie/Skynet/actions/get_lfs@v3
|
||||
- name: "main"
|
||||
uses: ./.forgejo/actions/update_branch
|
||||
with:
|
||||
repository: ${{ gitea.repository }}
|
||||
ref_name: ${{ gitea.ref_name }}
|
||||
- name: Get all LFS objects
|
||||
run: |
|
||||
# Pull in all objects for all branches
|
||||
git lfs fetch --all
|
||||
- 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 }}"
|
||||
branch: "main"
|
||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
||||
- name: "skynet"
|
||||
uses: ./.forgejo/actions/update_branch
|
||||
with:
|
||||
branch: "skynet"
|
||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
||||
- name: "anime_manga"
|
||||
uses: ./.forgejo/actions/update_branch
|
||||
with:
|
||||
branch: "anime_manga"
|
||||
token: ${{ secrets.PIPELINE_TOKEN }}
|
||||
|
|
|
@ -1,13 +1,8 @@
|
|||
# No need to have anything outside teh packwiz files inside teh pack
|
||||
/.forgejo
|
||||
# DOnt add teh IDE's
|
||||
/.idea
|
||||
/docs
|
||||
/nix
|
||||
|
||||
.git*
|
||||
|
||||
# dont add nix stuff
|
||||
flake.*
|
||||
/nix
|
||||
|
||||
# Dont add documentation
|
||||
*.md
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
# 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
|
|
@ -1,69 +0,0 @@
|
|||
# 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
|
|
@ -1,21 +0,0 @@
|
|||
# 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)
BIN
docs/media/add_allocation.png
(Stored with Git LFS)
Binary file not shown.
|
@ -7,6 +7,7 @@
|
|||
};
|
||||
|
||||
nixConfig = {
|
||||
bash-prompt-suffix = "[Skynet Dev] ";
|
||||
extra-substituters = "https://nix-cache.skynet.ie/skynet-cache";
|
||||
extra-trusted-public-keys = "skynet-cache:zMFLzcRZPhUpjXUy8SF8Cf7KGAZwo98SKrzeXvdWABo=";
|
||||
};
|
||||
|
@ -28,7 +29,6 @@
|
|||
devShells.default = pkgs.mkShell {
|
||||
name = "Skynet Mod env";
|
||||
packages = packages_local;
|
||||
shellHook = "export PS1='[Skynet Dev] '";
|
||||
};
|
||||
|
||||
packages = {
|
||||
|
|
|
@ -1,5 +1,13 @@
|
|||
hash-format = "sha256"
|
||||
|
||||
[[files]]
|
||||
file = ".forgejo/actions/update_branch/action.yml"
|
||||
hash = "d766aa4529c72ab0b451e518367bd8b58126697181670248397b13db6ab16cb2"
|
||||
|
||||
[[files]]
|
||||
file = ".forgejo/workflows/geyser.yml"
|
||||
hash = "552840ea9426de23a692cd4f0dabef497acff0918d9fac9c074ad7a328cb2df5"
|
||||
|
||||
[[files]]
|
||||
file = "plugins/essentialsx-discord.pw.toml"
|
||||
hash = "3980e4f0ba4095425a76680031b9c469eda86845879160c34679d626b531c776"
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
buildGoModule {
|
||||
pname = "packwiz";
|
||||
version = "0-unstable-2025-05-08";
|
||||
version = "0-unstable-2024-10-15";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Silver-Golden";
|
||||
repo = "packwiz";
|
||||
rev = "7ae91a58dbec3b76ce0aaaf15aeba3118021a34f";
|
||||
sha256 = "sha256-3zUkePmVJTpU9+mkLyeqlZ1KNVDXNsFvoh8ifwXya1M=";
|
||||
rev = "453264019e54eae69f495078b0f3fa073f071e73";
|
||||
sha256 = "sha256-x6Z8MLaacZFlRYOVkTU+ffYtCJu4FAB3I2W/uQITwns=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ pack-format = "packwiz:1.1.0"
|
|||
[index]
|
||||
file = "index.toml"
|
||||
hash-format = "sha256"
|
||||
hash = "8232fce7440db8e2f5f8be1a01d74cf04852e9f8a220f32803614b7a1cecc814"
|
||||
hash = "47d471771ebad7b66101d002b55eeeab3d1ad8f863de649af12863e66cd8be92"
|
||||
|
||||
[versions]
|
||||
minecraft = "1.21.5"
|
||||
|
@ -13,4 +13,3 @@ purpur = "2428"
|
|||
|
||||
[options]
|
||||
acceptable-game-versions = ["1.21", "1.21.1", "1.21.2", "1.21.3", "1.21.4", "1.21.5"]
|
||||
datapack-folder = "plugins"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue