Translate code comments and admin strings to English

This commit is contained in:
2026-08-06 01:25:53 +02:00
parent 1c7498ca4a
commit 57e47a15a0
25 changed files with 129 additions and 127 deletions
@@ -11,8 +11,8 @@ class CreateWarpEngineTables < ActiveRecord::Migration[8.0]
t.string :site
t.string :status, limit: 20, default: "development"
t.boolean :highlighted, default: false
# A publikáló token ownere (enforce_software_ownership) — nem lehet FK,
# az owner osztályát a host adja.
# Owner of the publishing token (enforce_software_ownership) — no FK,
# the owner class comes from the host.
t.string :owner_type, limit: 128
t.bigint :owner_id
t.datetime :deleted_at, precision: 3
@@ -87,7 +87,7 @@ class CreateWarpEngineTables < ActiveRecord::Migration[8.0]
t.string :token_digest, limit: 64, null: false
t.string :token_prefix, limit: 12, null: false
t.json :scopes
# Belső token: az enforce_software_ownership nem vonatkozik rá.
# Internal token: exempt from enforce_software_ownership.
t.boolean :unrestricted, default: false, null: false
t.datetime :expires_at, precision: 3
t.datetime :last_used_at, precision: 3
@@ -1,43 +1,44 @@
Rails.application.config.to_prepare do
WarpEngine.configure do |c|
# A build-artifactok és képek tárolási helye (defaultok az env-ből:
# FILE_CONTAINER_PATH ill. IMAGE_CONTAINER_PATH).
# Storage locations for build artifacts and images (defaults from ENV:
# FILE_CONTAINER_PATH and IMAGE_CONTAINER_PATH).
# c.file_container_path = "/softwares"
# c.image_container_path = "/images"
# A /build/* endpointok shared secretje (default: ENV["UPDATE_SECRET"]).
# Beállítatlan secret esetén az endpointok minden kérést elutasítanak.
# Shared secret of the /build/* endpoints (default: ENV["UPDATE_SECRET"]).
# With no secret configured the endpoints reject every request.
# c.update_secret = ENV["UPDATE_SECRET"]
# A /build/* hitelesítési forrása — kizárólagos választás:
# :env — a fenti shared secret érvényes (default)
# :database — csak DB-tárolt WarpEngine::ApplicationToken érvényes
# ("update" scope-pal); a shared secret ilyenkor NEM működik.
# A :database módhoz kötelező a tokenek tulajdonos-osztálya is:
# Auth source of the /build/* endpoints — an exclusive choice:
# :env — the shared secret above is accepted (default)
# :database — only DB-stored WarpEngine::ApplicationToken records are
# accepted (with the "update" scope); the shared secret
# stops working the moment you switch.
# :database mode also requires the owner class every token belongs to:
# c.application_token_source = :database
# c.application_token_owner_class = "AdminUser"
# Woodpecker configuration extension (/build/config): a kiszolgált
# platformok builder image-ei és a CI-szerver aláíró kulcsa. Üres
# ci_platforms (default) = a feature inaktív.
# Woodpecker configuration extension (/build/config): builder images of
# the served platforms and the CI server's signing key. An empty
# ci_platforms (default) keeps the feature inactive.
# c.ci_platforms = {
# "godot" => { builder: "registry.example/godot-builder:4.6" },
# "tic80" => { builder: "registry.example/tic80-builder:1.0",
# exporter: "registry.example/tic80pro:1.0" }
# }
# c.ci_extension_public_key_url = "https://ci.example.org/api/signature/public-key"
# c.ci_update_server = nil # nil: a kérés base_url-je
# c.ci_update_server = nil # nil: the request base_url
# A /build/upload (és az admin file manager) méretplafonja bájtban (default: 500MB).
# Size cap in bytes for /build/upload (and the admin file manager, default: 500MB).
# c.max_upload_size = 500 * 1024 * 1024
# Owner-izoláció: DB-token csak a saját ownerének szoftvereit
# uploadolhatja/publisholhatja (unrestricted token kivétel). Csak azután
# kapcsold be, hogy a meglévő szoftverek ownert kaptak (backfill)!
# Owner isolation: a DB token may only upload/publish its own owner's
# softwares (unrestricted tokens are exempt). Enable only after existing
# softwares got an owner (backfill)!
# c.enforce_software_ownership = true
# Ha a host modelljei is hivatkoznak katalógus-képekre, regisztráld őket,
# hogy az admin Images oldal orphan-detektálása figyelembe vegye:
# If host models also reference catalog images, register them so the
# admin Images page's orphan detection takes them into account:
# c.image_owners = [
# {
# label: "member",
+1 -1
View File
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: bevy, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: bevy, name: <%= name %>)
steps:
- name: version
image: alpine
+1 -1
View File
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: c64, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: c64, name: <%= name %>)
steps:
- name: version
image: alpine
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: ebitengine, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: ebitengine, name: <%= name %>)
steps:
- name: version
image: alpine
@@ -41,8 +41,8 @@ steps:
VERSION=$(cat .version)
# win-x86 / win-x64: pure Go cross-compile (Windowson nem kell cgo)
# linux-x64: cgo build, linux/amd64 hoston fut (builder image, X11/GL dev libekkel)
# belső helper: egy target buildje + zip egyetlen gyökérmappával
# (a zipet unixos zip készíti, így a végrehajtási bit megmarad)
# helper: builds one target + zips it with a single root folder
# (unix zip keeps the executable bit)
binary_build() {
B_GOOS="$1"; B_GOARCH="$2"; B_CGO="$3"; B_EXT="$4"; B_TARGET="$5"
PKG_DIR="<%= name %>-$VERSION-$B_TARGET"
@@ -56,7 +56,7 @@ steps:
rm -rf "$PKG_DIR"
echo "==> $PKG_DIR.zip kesz"
}
# a CI (linux builder) ezt a hármat építi:
# CI (linux builder) builds these three:
binary_build "windows" "386" "0" ".exe" "win-x86"
binary_build "windows" "amd64" "0" ".exe" "win-x64"
binary_build "linux" "amd64" "1" "" "linux-x64"
+6 -6
View File
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: godot, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: godot, name: <%= name %>)
steps:
- name: version
image: alpine
@@ -32,8 +32,8 @@ steps:
rm -rf dist/web
- |
VERSION=$(cat .version)
# win/linux target exportja + zip egyetlen gyökérmappával (embed_pck
# miatt az export egyetlen futtatható fájl)
# exports a win/linux target + zips it with a single root folder
# (embed_pck makes the export a single executable)
binary_build() {
B_PRESET="$1"; B_EXT="$2"; B_TARGET="$3"
PKG_DIR="<%= name %>-$VERSION-$B_TARGET"
@@ -47,9 +47,9 @@ steps:
rm -rf "$PKG_DIR"
echo "==> $PKG_DIR.zip kesz"
}
# mac: a Godot linuxról csak .zip-be tud macOS-t exportálni (benne a
# .app), átcsomagoljuk a gyökérmappás konvencióra (zip -ry: exec bitek
# és symlinkek megmaradnak)
# mac: from linux Godot can only export macOS into a .zip (holding the
# .app); repackage it to the root-folder convention (zip -ry keeps
# exec bits and symlinks)
binary_build_mac() {
B_PRESET="$1"; B_TARGET="$2"
PKG_DIR="<%= name %>-$VERSION-$B_TARGET"
+11 -11
View File
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: love, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: love, name: <%= name %>)
steps:
- name: version
image: alpine
@@ -34,8 +34,8 @@ steps:
--exclude "metadata.json" \
--exclude "*.zip"
mkdir -p dist/web
# A love-builder CI image ide előre letölti a love.js-t; lokális
# buildnél GitHubról jön.
# The love-builder CI image pre-fetches love.js here; local builds
# fall back to GitHub.
if [ -f /opt/lovejs.zip ]; then
echo "==> Using cached love.js (/opt/lovejs.zip)"
cp /opt/lovejs.zip dist/lovejs.zip
@@ -68,8 +68,8 @@ steps:
commands:
- |
VERSION=$(cat .version)
# Az export step törölte a .love-ot, itt újraépítjük (make-ben a
# binary-* targetek love-prerequisite-je tette ugyanezt).
# The export step deleted the .love, rebuild it here (in make the
# binary-* targets' love prerequisite did the same).
mkdir -p dist
zip -r dist/<%= name %>.love . \
--exclude "*.git*" \
@@ -79,8 +79,8 @@ steps:
--exclude ".version" \
--exclude "metadata.json" \
--exclude "*.zip"
# A love-builder CI image a dist-fájlokat /opt/love-dist alá előre
# letölti; lokális buildnél GitHubról jönnek.
# The love-builder CI image pre-fetches the dist files to
# /opt/love-dist; local builds fall back to GitHub.
fetch_love() {
if [ -f "/opt/love-dist/$1" ]; then
echo "==> Using cached $1"
@@ -117,10 +117,10 @@ steps:
zip -qry "$PKG_DIR.zip" "$PKG_DIR"
rm -rf "$PKG_DIR" dist/macos
echo "==> $PKG_DIR.zip kesz"
# Az AppImage runtime glibc-dinamikus, alpine (musl) alatt nem
# futtatható, ezért nem a runtime-ot futtatjuk: az offsetet readelf-ből
# számoljuk (shoff + shentsize*shnum), a squashfs-t unsquashfs -o
# bontja ki.
# The AppImage runtime is glibc-dynamic and cannot run on alpine
# (musl), so we do not run the runtime: the offset is computed from
# readelf (shoff + shentsize*shnum) and the squashfs is extracted
# with unsquashfs -o.
echo "==> Fusing linux AppImage"
fetch_love love-11.5-x86_64.AppImage
PKG_DIR="<%= name %>-$VERSION-linux-x64"
+1 -1
View File
@@ -1,4 +1,4 @@
# Generált pipeline — WarpEngine /build/config (platform: phaser, name: <%= name %>)
# Generated pipeline — WarpEngine /build/config (platform: phaser, name: <%= name %>)
steps:
- name: version
image: alpine
+5 -4
View File
@@ -1,6 +1,7 @@
# Generált pipeline — WarpEngine /build/config (platform: tic80, name: <%= name %>)
# A verzió a forrásból jön (inc/meta/meta.header.lua "-- version:" komment) — a
# WarpEngine is a Lua headerből parsolja a tic80-metadatát, ezért nincs metadata.json.
# Generated pipeline — WarpEngine /build/config (platform: tic80, name: <%= name %>)
# The version comes from the source (inc/meta/meta.header.lua "-- version:"
# comment) — WarpEngine parses tic80 metadata from the Lua header too, hence
# no metadata.json.
steps:
- name: version
image: alpine
@@ -136,7 +137,7 @@ steps:
echo "==> Exporting native players for version $VERSION"
tic80 --cli --skip --fs=. \
--cmd="load <%= name %>.lua & export win <%= name %>-win & export linux <%= name %>-linux & export mac <%= name %>-mac & exit"
# unixos zip őrzi a végrehajtási bitet
# unix zip preserves the executable bit
pack_binary() {
SLUG="$1"; SRC_FILE="$2"; DST_FILE="$3"
PKG_DIR="<%= name %>-$VERSION-$SLUG"
+18 -18
View File
@@ -1,25 +1,25 @@
module WarpEngine
class Configuration
# Owner kontraktus az image_owners elemeire:
# Owner contract for image_owners elements:
# label: String
# image_ids: -> { Array<Integer> } az owner által használt image id-k
# usage_label: ->(image) { String vagy nil } — megjelenítendő címke, ha használja
# application_token_source: a /build/* endpointok hitelesítési forrása, kizárólagos.
# :env — a shared secret (update_secret) érvényes, a DB-tokenek nem
# :database — csak WarpEngine::ApplicationToken érvényes, a shared secret nem
# application_token_owner_class: a tokenek kötelező tulajdonosának osztályneve
# (pl. "AdminUser"); nil esetén a :database mód minden kérést elutasít.
# max_upload_size: a /build/upload (és az admin file manager) fájlméret-plafonja bájtban.
# enforce_software_ownership: ha true, egy DB-token csak a saját ownerének
# szoftvereit uploadolhatja/publisholhatja (unrestricted token kivétel).
# Bekapcsolás CSAK backfill után: gazdátlan software-t bármely token elvihet.
# ci_platforms: a /build/config által kiszolgált platformok:
# image_ids: -> { Array<Integer> } — image ids used by the owner
# usage_label: ->(image) { String or nil } label to display when in use
# application_token_source: auth source of the /build/* endpoints, exclusive.
# :env — the shared secret (update_secret) is accepted, DB tokens are not
# :database — only WarpEngine::ApplicationToken is accepted, the shared secret is not
# application_token_owner_class: class name of the mandatory token owner
# (e.g. "AdminUser"); nil makes :database mode reject every request.
# max_upload_size: file size cap in bytes for /build/upload (and the admin file manager).
# enforce_software_ownership: when true, a DB token may only upload/publish
# its own owner's softwares (unrestricted tokens are exempt).
# Enable ONLY after the backfill: any token can claim an ownerless software.
# ci_platforms: platforms served by /build/config:
# { "godot" => { builder: "<image>" }, "tic80" => { builder: ..., exporter: ... } }
# Üres map = a feature inaktív (POST → 204, GET → 404).
# ci_extension_public_key(_url): a Woodpecker httpsig ed25519 publikus kulcsa
# PEM-ben, vagy URL, ahonnan letölthető (pl. https://ci.../api/signature/public-key).
# Egyik sincs beállítva → a POST /build/config minden kérést elutasít.
# ci_update_server: az upload/publish stepekbe írt szerver-URL; nil → a kérés base_url-je.
# Empty map = the feature is inactive (POST → 204, GET → 404).
# ci_extension_public_key(_url): the Woodpecker httpsig ed25519 public key as
# PEM, or a URL to fetch it from (e.g. https://ci.../api/signature/public-key).
# With neither set, POST /build/config rejects every request.
# ci_update_server: server URL written into the upload/publish steps; nil → the request's base_url.
attr_accessor :file_container_path,
:image_container_path,
:update_secret,