Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
923 commits
Select commit Hold shift + click to select a range
fb1c37e
Move request classes out of server lobby (not completely)
kimden Mar 5, 2025
67d427f
Allow specifying players who can /power with any password, in categories
kimden Mar 6, 2025
f9ffcc6
Add smooth strength adjustion & Unlock modifying default camera & Fix…
CodingJellyfish Mar 8, 2025
146f0d0
Fix explosion camera bug
CodingJellyfish Mar 8, 2025
f21ef27
Merge https://github.com/supertuxkart/stk-code up to normal camera code
kimden Mar 9, 2025
6fdf215
Fix out-of-focus text box widget when alphabet characters are assigne…
CodingJellyfish Mar 10, 2025
6c287e0
Fix #5252 & #5189 (#5367)
CodingJellyfish Mar 11, 2025
414a8e9
Make sure only game master controls kart filter (#5368)
CodingJellyfish Mar 12, 2025
c7b34e9
Fix memory corruption when closing
CodingJellyfish Mar 13, 2025
edfdb1f
Initial work on PBR vulkan
CodingJellyfish Mar 14, 2025
9c7e342
Fix missing PBR textures when material is shared in vulkan engine
CodingJellyfish Mar 16, 2025
f7b1c56
Move everything to LobbyContext, use less ServerConfig
kimden Mar 9, 2025
767a1d8
Even less ServerConfig, chat stuff moved to another unit
kimden Mar 12, 2025
cbec871
Team stuff moved to team manager
kimden Mar 13, 2025
aa0c98c
Started clearing ServerLobby from event consequences, also renames in…
kimden Mar 13, 2025
377e843
GP manager, more function movements
kimden Mar 14, 2025
07ad1e6
Protocol cleanup: one packet
kimden Mar 15, 2025
7675e37
Try to fix compilation
kimden Mar 15, 2025
c3bf411
Remove debug stringutils stuff that led to negative ip
kimden Mar 16, 2025
0b34cc9
Fix crash that didn't happen in Debug
kimden Mar 17, 2025
7275aa7
Straightforwardly fix #5157
CodingJellyfish Mar 20, 2025
5275ebd
Cooldown for starting the game
kimden Mar 17, 2025
9141f3a
GP standings fix + refactor for legacy gp mode and a test command
kimden Mar 18, 2025
d4ad6bf
Removing useless AJPW
kimden Mar 19, 2025
49f2166
Move scoring to its separate class, store it inside LobbyGPManager
kimden Mar 19, 2025
c99ae24
Update cutscene_gui.cpp (#5374)
iamnytik Mar 21, 2025
c9efa23
Use vsync on android.
deveee Mar 21, 2025
295631c
Disable 1000 fps and 200% scale nonsense on mobile
deveee Mar 21, 2025
fef37db
Disable ghost version check & Disable ghost skid sound
CodingJellyfish Mar 23, 2025
888b9e5
Add warning to oversampling
CodingJellyfish Mar 23, 2025
e5c5468
Quick teamchat and KartTeamSet fixes
kimden Mar 23, 2025
f667fdd
Proper fix for lighting according to d339d9a
CodingJellyfish Mar 24, 2025
1b663ae
Move srgb255ToLinear to GE
CodingJellyfish Mar 24, 2025
b4849ca
Use 100% scale on good enough devices
deveee Mar 24, 2025
398805a
Use srgb255ToLinear for GE PBR if needed
CodingJellyfish Mar 25, 2025
2d3a0fb
Don't add skid mark quads too frequently which breaks fade-out effect
CodingJellyfish Mar 25, 2025
b07e338
Properly reset vsync setting (default on) for everyone
CodingJellyfish Mar 25, 2025
8749429
Move vertex and index buffer updates into separate conditions
CodingJellyfish Mar 26, 2025
ac2ca19
Fix crash when re-entering options screen
CodingJellyfish Mar 26, 2025
5e4809c
Words
kimden Mar 26, 2025
b1490fb
Fix more crash
CodingJellyfish Mar 27, 2025
bbc8364
Add initSamplers to SP for reloading samplers live
CodingJellyfish Mar 27, 2025
16d6a18
Make SPTexture reload work with texture compression when max size cha…
CodingJellyfish Mar 27, 2025
ec24238
Remove m_max_size in all ge textures
CodingJellyfish Mar 27, 2025
948a408
Clean up Material::getMaskImageMani
CodingJellyfish Mar 28, 2025
19a0df1
Fix OptionsScreenVideo::setImageQuality for reloading live
CodingJellyfish Mar 28, 2025
be34827
Friendship ended with CommandManager, move stuff to Asset- and new Cr…
kimden Mar 23, 2025
cae443a
Get rid of m_result_ns and simplify calls to GameSetup
kimden Mar 23, 2025
a7c1a0e
Minor cleanups, mostly in TeamManager
kimden Mar 25, 2025
6e82502
Most hasTypo -> validate, remove extra GameInfo from LobbySettings
kimden Mar 25, 2025
9326d3e
Remove getABCD from all LobbyContext files abcd.cpp
kimden Mar 25, 2025
761befc
Moved GameInfo fill out of ServerLobby, added DatabaseConnector to Lo…
kimden Mar 25, 2025
8eec690
Minor movements
kimden Mar 26, 2025
0a9dce9
STKConfig is no longer a lonely pointer
kimden Mar 27, 2025
b15c5b9
Trying some compilation fixes
kimden Mar 28, 2025
7705e30
Move two more methods out of ServerLobby
kimden Mar 29, 2025
cfe350d
A few more logs in db connector
kimden Mar 29, 2025
43a0745
Fix /length x value not accepting doubles
kimden Mar 29, 2025
297399a
Erase inserted texture in m_ondemand_load_texture_paths one by one
CodingJellyfish Mar 30, 2025
957b10e
Ignore PBR data in kart textures preloading
CodingJellyfish Mar 30, 2025
84d0e3d
Make loading screen icons fit ~40% of it (#5383)
kimden Mar 30, 2025
58b005f
Shader Fix Bundle (#5375)
CodingJellyfish Mar 31, 2025
cb66ff6
More vulkan work
deveee Apr 2, 2025
f0a2d6a
Update the changelog and credits
Alayan-stk-2 Apr 6, 2025
99d9576
Fix #5318
Alayan-stk-2 Apr 6, 2025
5a2acb2
Avoid duplicate names when the active player is not the first
Alayan-stk-2 Apr 8, 2025
edbafec
Fix vulkan synchronization issues
deveee Apr 8, 2025
76ac9af
Don't apply ranking 64 times (left from testing) (#5393)
kimden Apr 8, 2025
634121a
Enable vulkan synchronization validation
deveee Apr 8, 2025
db8585f
Fix pbr with rotated preTransform
deveee Apr 9, 2025
0f6dbc7
Remove duplicated code in GEVulkanSkyBoxRenderer
deveee Apr 10, 2025
6b24709
Add GEVulkanAttachmentTexture
deveee Apr 10, 2025
9c36b79
Make push constants reproducible
deveee Apr 11, 2025
fe0d89c
Enable depth prepass if necessary
deveee Apr 12, 2025
b238cac
Refresh cooldown when changing the mode/difficulty
kimden Apr 14, 2025
f1f322a
Add a clickable link to the stk website in the credits page (#5398)
willliam9 Apr 16, 2025
949df5c
Remove duplicated pbr code in vulkan shaders
deveee Apr 16, 2025
4fcbd2a
Improve the credits code
Alayan-stk-2 Apr 18, 2025
0d6537b
Update changelog and credits
Alayan-stk-2 Apr 18, 2025
84b214d
Fix #5251
Alayan-stk-2 Apr 18, 2025
222b4d6
Improve the ghost replay dialog
Alayan-stk-2 Apr 18, 2025
10fcbd2
Fix possible exit crash
deveee Apr 18, 2025
80eabf3
Fix missing leak sanitizer report
deveee Apr 18, 2025
b3860cb
Various fixes for *mute commands and formatting
kimden Apr 20, 2025
a2d5500
Initial, by far incomplete decorator implementation
kimden Mar 30, 2025
9d050d7
updateServerOwner → CrownManager minus sort
kimden Apr 1, 2025
c5a8651
Minus one method
kimden Apr 2, 2025
8eb0db2
Remove duplicated code
Alayan-stk-2 Apr 20, 2025
952ef18
Improve the code for tab dimensions
Alayan-stk-2 Apr 20, 2025
b177f3d
Add asynchronous skybox loading
deveee Apr 20, 2025
068c1ba
Add unicolor array texture
deveee Apr 20, 2025
7e6b312
Restore previous sampler use in mesh texture descriptor
deveee Apr 20, 2025
a75ac1c
Make it possible to reload shaders in vulkan
deveee Apr 21, 2025
79df88b
Fix gles ibl shader
deveee Apr 21, 2025
b4c1fa1
Fixed some crashes in performance test
deveee Apr 26, 2025
ebbbaa6
Fix #5288
Alayan-stk-2 Apr 27, 2025
52f7629
Add ibl for vulkan
deveee Apr 27, 2025
35ede2e
Improve vulkan pipeline settings
deveee Apr 27, 2025
acb9083
Greatly improve the layout of multi-row ribbons
Alayan-stk-2 Apr 28, 2025
ca1bdf5
Improve the layout of screens using dynamic ribbons
Alayan-stk-2 Apr 28, 2025
4f1f2d5
Add `StartupWMClass` to the desktop file (#5404)
fiftydinar Apr 29, 2025
2d235dd
Add a font to render Hindi
Alayan-stk-2 May 2, 2025
b09c68b
Update translations
Alayan-stk-2 May 2, 2025
f4d39be
Update the changelog
Alayan-stk-2 May 2, 2025
0d71d6b
Apply bullet patch to support backface culling
deveee May 2, 2025
ae83f1a
Apply bullet patch to fix undefined behaviour
deveee May 2, 2025
4d4a469
More undefined behaviour fixes
deveee May 2, 2025
5efc6ac
Fix assertion when using favourite karts uninitialized
deveee May 2, 2025
674e175
Allow non-bot clients to see chat messages
kimden May 3, 2025
aa2e94e
Show hours in displayed time, just in database, etc
kimden May 3, 2025
69a4605
Merge https://github.com/supertuxkart/stk-code
kimden May 3, 2025
e2dea06
Fix compilation as STK still uses global pointers...
kimden May 3, 2025
e7fc33e
Add point and spot lights rendering for vulkan
deveee May 3, 2025
f46ef18
Enable kart lighting effects on vulkan
deveee May 4, 2025
2403662
Various small refactors, mainly for string constants
kimden May 5, 2025
7c72a53
Update for latest MoltenVK
deveee May 6, 2025
63af3c2
Add spot lights rendering for opengl
deveee May 7, 2025
cc8d79d
Fix vulkan skinning shader
deveee May 7, 2025
1ac91f7
Fix #5408
Alayan-stk-2 May 9, 2025
984b8c9
Fix #5411
Alayan-stk-2 May 9, 2025
eb6f304
Fix #5417
Alayan-stk-2 May 10, 2025
14b356a
Fix #5419
Alayan-stk-2 May 10, 2025
f77f887
Add a random track button outside of the track chooser (#5399)
Hanuko33 May 10, 2025
9d9c74f
Adjust the Tracks and GPs screen to better fit the random track button
Alayan-stk-2 May 10, 2025
ff40874
Some renames, also string and permission refactors
kimden May 10, 2025
48b6daf
Add point and spot lights rendering for vulkan
deveee May 3, 2025
ab43799
Enable kart lighting effects on vulkan
deveee May 4, 2025
e6d4803
Update for latest MoltenVK
deveee May 6, 2025
5b301c1
Add spot lights rendering for opengl
deveee May 7, 2025
dc32aef
Fix vulkan skinning shader
deveee May 7, 2025
d4806f1
Fix #5408
Alayan-stk-2 May 9, 2025
97288d2
Fix #5411
Alayan-stk-2 May 9, 2025
6c0d60a
Fix #5417
Alayan-stk-2 May 10, 2025
6e9d21f
Fix #5419
Alayan-stk-2 May 10, 2025
ea470dd
Add a random track button outside of the track chooser (#5399)
Hanuko33 May 10, 2025
09f3de8
Adjust the Tracks and GPs screen to better fit the random track button
Alayan-stk-2 May 10, 2025
489af52
Add RelWithDebInfo to pipeline
kimden May 10, 2025
05d5997
Update mojoAL to latest version, fixes #5418 (#5421)
qwertychouskie May 12, 2025
df513f0
Fix #5420
Alayan-stk-2 May 12, 2025
6aa1a9e
Make spinner widgets use the small font size if the label doesn't fit
Alayan-stk-2 May 12, 2025
700991c
Remove the random track option within the tracks ribbon widget
Alayan-stk-2 May 12, 2025
44acb8d
Tweaks to the kart and track selection screens
Alayan-stk-2 May 12, 2025
95bcc15
Don't crash if unable to print the log properly
kimden May 12, 2025
0f6977c
Load spot lights data from exporter settings
deveee May 12, 2025
02df7ed
Optimize spot lights shaders
deveee May 12, 2025
889cb80
Fix server only build
deveee May 12, 2025
3b340d6
Take into account the crown order inside FFA filters
kimden May 12, 2025
9252418
Fix #5424
Alayan-stk-2 May 13, 2025
4eaddca
Allow single-row ribbons to be smaller to show more elements
Alayan-stk-2 May 13, 2025
e38f32a
Account more accurately for scrolling arrows size in dynamic ribbon w…
Alayan-stk-2 May 13, 2025
6cb843e
Try to fix switch build
deveee May 13, 2025
68c395a
Another try to fix switch build
deveee May 13, 2025
184c801
Fixed cmake 4.0 warnings
deveee May 15, 2025
12c194d
Fixed DEBUG flag for Visual Studio and also add missing libraries for…
deveee May 15, 2025
f34d98d
Try to eliminate log crash once again
kimden May 16, 2025
4e1554d
Try to fix macos build
deveee May 18, 2025
536ab51
Simplify CM, initial impl of /as
kimden May 11, 2025
f55ac44
Some fixes for /as
kimden May 13, 2025
a5ab4e5
Seemingly restore the ability to have null peer when needed (for voting)
kimden May 13, 2025
75e69dd
Get rid of most bugs
kimden May 13, 2025
fe7c561
Proper permissions in xml, proper power2
kimden May 18, 2025
55d8077
Use acting permissions for /commands
kimden May 18, 2025
728ef38
Fix #5429
Alayan-stk-2 May 21, 2025
d3c68a1
Improve IconButton behavior and fix #5413
Alayan-stk-2 May 21, 2025
bdf0282
Fix server-only build
Alayan-stk-2 May 21, 2025
5d299e3
Updated Cartoon focus icons.
SvenAndreasBelting May 21, 2025
369221b
Add RISC-V to linux build script + some small fixes
deveee May 21, 2025
cc3ae93
Improve textbox highlight for the cartoon coal skin
Alayan-stk-2 May 21, 2025
05a0fb3
Fix regressions from recent widget changes
deveee May 23, 2025
bedfcba
Allow a skin to fetch textures from its base theme
Alayan-stk-2 May 25, 2025
afa147a
Correct colors for the player name spinners in cartoon themes (fix #5…
Alayan-stk-2 May 25, 2025
db8be22
Movements from crown to asset manager, minor edits
kimden May 25, 2025
87239d8
Update the changelog
Alayan-stk-2 May 26, 2025
58fac34
Fix #5434
Alayan-stk-2 May 26, 2025
e976386
Add a crown icon to the game master in splitscreen kart selection (Fi…
willliam9 May 26, 2025
d1efab8
Minor improvements
Alayan-stk-2 May 26, 2025
cc60e22
Try to fix macos wiiuse build
deveee May 27, 2025
4dbe097
Update Android target SDK
deveee May 28, 2025
c9d6b7d
Don't count handled AI in gSBL
kimden May 29, 2025
c1ead9e
Fix #5443
Alayan-stk-2 May 30, 2025
bc21570
Replace deprecated std::iterator (#5147)
nyllet May 30, 2025
6aea989
Remove unneeded header files
deveee May 30, 2025
5740698
Fix memory leak
deveee May 30, 2025
1ca2cf3
Remove duplicated code
deveee May 31, 2025
30df627
Add /countteams
kimden Jun 1, 2025
9ccb4c8
Use world normal in vertex shaders
deveee Jun 1, 2025
829873f
Fix uninitialized variable in CameraFPS
deveee Jun 1, 2025
ce3564b
Reset to default mode only in WAITING... state
kimden Jun 2, 2025
b77c580
Move chat functions out of server lobby
kimden Jun 2, 2025
87f2a3f
Add /network and /everynet
kimden Jun 3, 2025
d197ff2
Update language version to C++17 (#31)
kimden Jun 6, 2025
a0e5da6
Improve the scaling of race GUI elements (powerups, speedometer, gauge)
Alayan-stk-2 Jun 9, 2025
48da00e
Improve ghost shader via depth prepass
deveee Jun 9, 2025
c563ba1
Fix #5410
Alayan-stk-2 Jun 10, 2025
b43d9c6
Improve the formula for font size
Alayan-stk-2 Jun 12, 2025
757503e
Fix #5454
Alayan-stk-2 Jun 12, 2025
d63d0fb
Increase density in the addons list by 1/3rd
Alayan-stk-2 Jun 12, 2025
46f9954
Remove duplicated code in vulkan draw call
deveee Jun 12, 2025
45695df
Minor cleanup
Alayan-stk-2 Jun 13, 2025
feee527
Remove hardcoded materials in vulkan
deveee Jun 13, 2025
3cc5915
Remove newlines at the end of log strings
kimden Jun 13, 2025
d24fe7c
Add unlit and splatting shaders for vulkan
deveee Jun 14, 2025
b84d71e
Fix length multiplier being applied as int
kimden Jun 14, 2025
0ed2a04
Avoid extra lobby inactivity kicks by updating activity upon leaving …
kimden Jun 14, 2025
1ae2518
Make loadAllShaders possible to reload shaders
deveee Jun 15, 2025
f5f767c
Fix use of uninitialized variable in PowerupManager (#5459)
nyllet Jun 16, 2025
fc61b91
Fix compiler warnings
deveee Jun 16, 2025
31695b5
Better warning message when shaderc is not enabled
deveee Jun 16, 2025
3524703
Enable BC7 texture compression with cross compiled ISPC
deveee Jun 16, 2025
db16a19
Update path for android debug symbols
deveee Jun 17, 2025
e6d4695
Fix for kart selection screen on Android TV
deveee Jun 17, 2025
1aa7404
Get rid of some warnings
kimden Jun 17, 2025
e43acd5
Some tweaks in android manifest
deveee Jun 17, 2025
ec0202a
Don't link against ntdllcrt
deveee Jun 17, 2025
b528010
Fix uninitialized variable in PlayerKartWidget
deveee Jun 17, 2025
8835034
Fix my own memory leak
kimden Jun 17, 2025
ad25726
Fix a couple of clang-19 warnings (#5461)
nyllet Jun 20, 2025
b289796
Shorten recording replay message
kimden Jun 21, 2025
0cbce30
Merge May and June commits https://github.com/supertuxkart/stk-code
kimden Jun 28, 2025
abde14f
Logs: don't make non-format string format, remove extra []s
kimden Jul 1, 2025
6c23f94
Try to fix windows c++17 build
kimden Jun 29, 2025
a08b7e4
Try to fix mxe
kimden Jun 30, 2025
31366bf
Cleanup after fixing windows build
kimden Jul 3, 2025
ca342f3
Merge upstream (June 2025) and fix windows build for C++ (#35)
kimden Jul 3, 2025
4a67afb
Remove forced empty release name
kimden Jul 3, 2025
0fc190c
Fix wrongly merged shader
kimden Jul 3, 2025
9aa4c76
Words again
kimden Jul 4, 2025
92335d7
Rework /version, don't show preview and ignored releases
kimden Jul 5, 2025
91b5842
Fix replay color and ambiguous naming
kimden Jul 7, 2025
7e46f5a
A few quote corrections in database connector
kimden Jul 14, 2025
f3ede1d
Fix folder names and (hopefully) rich presence for cross win compilation
kimden Jul 19, 2025
f584ed5
Fix #41, use temp teams instead of standard ones
kimden Aug 7, 2025
41edb69
Some whitespace and string cleanups
kimden Aug 12, 2025
c4669c4
Missing line prevents compilation :(
matahina Aug 13, 2025
429a92a
Allow booking slots for specified players
kimden Aug 16, 2025
963a1d7
Tournament: fix default settings, add exception, don't show 0 when vo…
kimden Aug 19, 2025
48c09ac
Some external commands refactor [skip ci]
kimden Aug 21, 2025
25bf7fb
Fix compilation, don't pass CommandMgr to Command
kimden Aug 23, 2025
f22b17c
Separate command reading from xml from CM
kimden Aug 23, 2025
2db2d73
Delete unused AbstractResource which was merged into existing Command…
kimden Aug 23, 2025
7afd1a7
Basic MapFileResource implementation + method moves
kimden Aug 23, 2025
cc98caa
Implement segment view of MapFileResource
kimden Aug 25, 2025
dbcd150
Minus includes, context.error() everywhere
kimden Aug 28, 2025
e0ae06d
Minor queue command improvements (not all of them)
kimden Aug 28, 2025
af4ae1a
Move restoreCmdFromArgv to StringUtils
kimden Aug 29, 2025
1c42811
Revert having fixed stun server list
kimden Sep 5, 2025
4940952
Initial commit on public values
kimden Sep 17, 2025
00f167b
Make /MapFileResource bigNumber show all entries, remove division by …
kimden Sep 17, 2025
3c03b89
Avoid throwing when saying to nullptr peer for some voted commands
kimden Dec 7, 2025
152069c
Improvements for random teams
kimden Dec 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
53 changes: 0 additions & 53 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

89 changes: 89 additions & 0 deletions .github/ISSUE_TEMPLATE/defect.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: Defect
description: Report bugs, crashes, or unintended behavior
labels: ['T: bug']

body:

- type: textarea
id: description
attributes:
label: Description
description: Provide a clear and concise explanation of the problem encountered.
validations:
required: true

- type: textarea
id: to_reproduce
attributes:
label: Steps to reproduce
description: Outline the exact sequence of actions required to reproduce the issue.
placeholder: |
1. Launch SuperTuxKart
2. Navigate to [specific menu/location]
3. Perform [specific action]
4. Observe unexpected behavior
validations:
required: true

- type: textarea
id: config
attributes:
label: Configuration
description: |
Include the following details to help us diagnose the issue:
- SuperTuxKart version (visible in the "About" menu)
- Installation source (official website, package manager, etc.)
- Operating system and version
- CPU/GPU specifications
- Controller/keyboard type (if relevant)
placeholder: |
SuperTuxKart version: 1.4
Installation source: Official repository
OS: Ubuntu 24.04
CPU: i5-10400
GPU: RX 580
Input device: USB keyboard
validations:
required: true

- type: textarea
id: error_msg
attributes:
label: Error message
description: |
If an error message was shown, please paste the complete error message, or a screenshot of it.
value: |
```
[Paste error message here]
```

- type: textarea
id: stdout
attributes:
label: Log File (stdout.log)
description: |
Attach the log file (stdout.log) from your latest session where the issue occurred.
File locations:
- Windows: %appdata%\supertuxkart\config-0.10\stdout.log
- macOS: ~/Library/Application Support/supertuxkart/config-0.10/stdout.log
- Linux and other Unix-based systems:
$XDG_CONFIG_HOME/supertuxkart/config-0.10/stdout.log
or ~/.config/supertuxkart/config-0.10/stdout.log
value: |
```
[Paste contents of stdout.log here]
```

- type: textarea
id: input
attributes:
label: Input Configuration (input.xml)
description: |
If your issue is related to the input config (gamepads, keyboards),
please provide your file input.xml located in the same directory as stdout.log.
value: |
```
[Paste contents of input.xml here]
```


13 changes: 13 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: Enhancement
description: Request for new features
labels: ['T: Suggestion']

body:
- type: textarea
id: description
attributes:
label: Description
description: |
If applicable, add screenshots or mockups to help explain your request.
validations:
required: true
71 changes: 40 additions & 31 deletions .github/workflows/apple.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,15 @@ jobs:
uses: ASzc/change-string-case-action@v1
with:
string: ${{ matrix.platform }}
- name: Download cctools
- name: Download cctools and ISPC
run: |
cd /opt
wget https://github.com/supertuxkart/dependencies/releases/download/cctools/cctools-14.1.tar.xz
wget https://github.com/kimden/stk-dependencies/releases/download/cctools/cctools-14.1.tar.xz
tar xf cctools-14.1.tar.xz
rm cctools-14.1.tar.xz
wget https://github.com/supertuxkart/dependencies/releases/download/preview/ispc-cross-1.26.0.tar.xz
tar xf ispc-cross-1.26.0.tar.xz
rm ispc-cross-1.26.0.tar.xz
- name: Restore timestamps
run: |
wget https://github.com/MestreLion/git-tools/archive/refs/heads/main.zip
Expand All @@ -49,7 +52,7 @@ jobs:
echo "cache_$number=apple-${{ github.ref }}-${{ matrix.arch }}-${{ matrix.platform }}-$id" >> $GITHUB_ENV
done
- name: Handle build cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: |
build
Expand All @@ -66,7 +69,7 @@ jobs:
${{ env.cache_9 }}
- name: Download dependencies
run: |
wget https://github.com/supertuxkart/dependencies/releases/download/preview/dependencies-${{ steps.sysroot.outputs.lowercase }}.tar.xz
wget https://github.com/kimden/stk-dependencies/releases/download/preview/dependencies-${{ steps.sysroot.outputs.lowercase }}.tar.xz
tar xf dependencies-${{ steps.sysroot.outputs.lowercase }}.tar.xz
- name: Configure clang runtime name
run: |
Expand All @@ -86,14 +89,15 @@ jobs:
mkdir -p build
cd build
cmake .. -DCCTOOLS_PREFIX=/opt/cctools -DCCTOOLS_ARCH=${{ matrix.arch }} -DCCTOOLS_PLATFORM=${{ matrix.platform }} \
-DRT=/opt/cctools/darwin/libclang_rt.${{ env.rt }}.a -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-cctools.cmake -DCHECK_ASSETS=OFF
-DRT=/opt/cctools/darwin/libclang_rt.${{ env.rt }}.a -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-cctools.cmake -DCHECK_ASSETS=OFF \
-DBC7_ISPC=ON -DCMAKE_ISPC_COMPILER=/opt/ispc/bin/ispc
- name: Build
run: |
cd build
make -j4
mv bin ../${{ steps.sysroot.outputs.lowercase }}-${{ matrix.arch }}
- name: Upload binaries
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: ${{ steps.sysroot.outputs.lowercase }}-${{ matrix.arch }}
path: ${{ steps.sysroot.outputs.lowercase }}-${{ matrix.arch }}
Expand All @@ -113,7 +117,7 @@ jobs:
echo "release_tag=`basename $GITHUB_REF`" >> $GITHUB_ENV
echo "release_name=`basename $GITHUB_REF`" >> $GITHUB_ENV
- name: Configure packaging name for non-releasing branch
if: ${{ (github.ref != 'refs/heads/master' && !startsWith(github.ref, 'refs/tags/')) || github.repository_owner != 'supertuxkart' }}
if: ${{ (github.ref != 'refs/heads/master' && !startsWith(github.ref, 'refs/tags/')) }}
run: |
echo "release_tag=" >> $GITHUB_ENV
echo "release_name=" >> $GITHUB_ENV
Expand All @@ -131,27 +135,29 @@ jobs:
echo "${{ env.release_name }}"
echo "${{ env.release_pre }}"
- name: Download binaries
uses: actions/download-artifact@v2
- name: Mask developer name
run: |
echo "::add-mask::${{ secrets.MAC_DEVELOPER_NAME }}"
- name: Import certificates
if: ${{ env.release_tag != '' }}
uses: apple-actions/import-codesign-certs@v1
with:
p12-file-base64: ${{ secrets.MAC_DEVELOPER_ID_P12_FILE }}
p12-password: ${{ secrets.MAC_DEVELOPER_ID_P12_PASSWORD }}
uses: actions/download-artifact@v4
#- name: Mask developer name
# run: |
# echo "::add-mask::${{ secrets.MAC_DEVELOPER_NAME }}"
#- name: Import certificates
# if: ${{ env.release_tag != '' }}
# uses: apple-actions/import-codesign-certs@v1
# with:
# p12-file-base64: ${{ secrets.MAC_DEVELOPER_ID_P12_FILE }}
# p12-password: ${{ secrets.MAC_DEVELOPER_ID_P12_PASSWORD }}
- name: Run dylibbundler and sign STK
if: ${{ env.release_tag != '' }}
env:
developer_id: "Developer ID Application: ${{ secrets.MAC_DEVELOPER_NAME }} (${{ secrets.MAC_DEVELOPER_TEAM }})"
# env:
# developer_id: "Developer ID Application: ${{ secrets.MAC_DEVELOPER_NAME }} (${{ secrets.MAC_DEVELOPER_TEAM }})"
run: |
wget https://github.com/supertuxkart/dependencies/releases/download/preview/dependencies-macosx.tar.xz
wget https://github.com/kimden/stk-dependencies/releases/download/preview/dependencies-macosx.tar.xz
tar xf dependencies-macosx.tar.xz
HOMEBREW_NO_AUTO_UPDATE=1 brew install dylibbundler
lipo -create ./macosx-x86_64/supertuxkart.app/Contents/MacOS/supertuxkart ./macosx-arm64/supertuxkart.app/Contents/MacOS/supertuxkart -output ./macosx-arm64/supertuxkart.app/Contents/MacOS/supertuxkart
chmod 755 ./macosx-arm64/supertuxkart.app/Contents/MacOS/supertuxkart
dylibbundler -od -b -x ./macosx-arm64/supertuxkart.app/Contents/MacOS/supertuxkart -d ./macosx-arm64/supertuxkart.app/Contents/libs/ -p @executable_path/../libs/ -s dependencies-macosx/lib -ns
install_name_tool -delete_rpath @loader_path/Frameworks ./dependencies-macosx/lib/libSDL2.dylib
install_name_tool -delete_rpath @executable_path/Frameworks ./dependencies-macosx/lib/libSDL2.dylib
dylibbundler -od -b -x ./macosx-arm64/supertuxkart.app/Contents/MacOS/supertuxkart -d ./macosx-arm64/supertuxkart.app/Contents/libs/ -p @executable_path/../libs/ -s ./dependencies-macosx/lib -ns
# We use SDL_Vulkan_LoadLibrary for 10.9 compatibility, so otool -L supertuxkart has no libMoltenVK.dylib
cp ./dependencies-macosx/lib/libMoltenVK.dylib ./macosx-arm64/supertuxkart.app/Contents/libs/
cd ./macosx-arm64/supertuxkart.app/Contents/Resources/data
Expand All @@ -160,16 +166,19 @@ jobs:
rm stk-assets-full.zip
cd ../../../../..
mv ./macosx-arm64/supertuxkart.app SuperTuxKart.app
codesign --force --sign "$developer_id" SuperTuxKart.app/Contents/libs/*.dylib
codesign --force --options=runtime --deep --sign "$developer_id" SuperTuxKart.app
- name: "Notarize release build"
if: ${{ env.release_tag != '' && github.ref != 'refs/heads/master' }}
run: |
ditto -c -k --sequesterRsrc --keepParent SuperTuxKart.app tmp.zip
xcrun notarytool submit tmp.zip --apple-id ${{ secrets.STK_NOTARIZATION_USERNAME }} \
--password ${{ secrets.STK_NOTARIZATION_PASSWORD }} \
--team-id ${{ secrets.MAC_DEVELOPER_TEAM }} --wait
xcrun stapler staple SuperTuxKart.app
# Use Ad Hoc certificate for now, previous certificate has been expired.
codesign --force -s - SuperTuxKart.app/Contents/libs/*.dylib
codesign --force --deep -s - SuperTuxKart.app
#codesign --force --sign "$developer_id" SuperTuxKart.app/Contents/libs/*.dylib
#codesign --force --options=runtime --deep --sign "$developer_id" SuperTuxKart.app
#- name: "Notarize release build"
# if: ${{ env.release_tag != '' && github.ref != 'refs/heads/master' }}
# run: |
# ditto -c -k --sequesterRsrc --keepParent SuperTuxKart.app tmp.zip
# xcrun notarytool submit tmp.zip --apple-id ${{ secrets.STK_NOTARIZATION_USERNAME }} \
# --password ${{ secrets.STK_NOTARIZATION_PASSWORD }} \
# --team-id ${{ secrets.MAC_DEVELOPER_TEAM }} --wait
# xcrun stapler staple SuperTuxKart.app
- name: Archive
if: ${{ env.release_tag != '' }}
run: |
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
matrix:
os: [ubuntu-latest]
compiler: [gcc, clang]
build_type: [Debug, Release]
build_type: [Debug, RelWithDebInfo, Release]
server_only: [ON, OFF]
exclude:
- os: macos-latest
Expand Down Expand Up @@ -56,8 +56,7 @@ jobs:
echo "release_name=`basename $GITHUB_REF`" >> $GITHUB_ENV
- name: Configure packaging name for non-releasing branch
if: ${{ matrix.build_type != 'Release' || matrix.server_only != 'OFF' ||
!(github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) ||
github.repository_owner != 'supertuxkart' }}
!(github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) }}
run: |
echo "release_tag=" >> $GITHUB_ENV
echo "release_name=" >> $GITHUB_ENV
Expand Down Expand Up @@ -137,7 +136,7 @@ jobs:
$CXX --version
mkdir "build"
cd "build"
CFLAGS="-mmacosx-version-min=10.9" CXXFLAGS="-mmacosx-version-min=10.9" LINKFLAGS="-mmacosx-version-min=10.9" LDFLAGS="-mmacosx-version-min=10.9" /usr/local/opt/cmake/bin/cmake .. -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DSERVER_ONLY=$SERVER_ONLY -DCHECK_ASSETS=off -DBUILD_RECORDER=off;
CFLAGS="-mmacosx-version-min=10.13" CXXFLAGS="-mmacosx-version-min=10.13" LINKFLAGS="-mmacosx-version-min=10.13" LDFLAGS="-mmacosx-version-min=10.13" /usr/local/opt/cmake/bin/cmake .. -DCMAKE_OSX_DEPLOYMENT_TARGET=10.13 -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DSERVER_ONLY=$SERVER_ONLY -DCHECK_ASSETS=off -DBUILD_RECORDER=off;
- name: Build and install
working-directory: build
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/switch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
echo "release_tag=`basename $GITHUB_REF`" >> $GITHUB_ENV
echo "release_name=`basename $GITHUB_REF`" >> $GITHUB_ENV
- name: Configure packaging name for non-releasing branch
if: ${{ (github.ref != 'refs/heads/master' && !startsWith(github.ref, 'refs/tags/')) || github.repository_owner != 'supertuxkart' }}
if: ${{ (github.ref != 'refs/heads/master' && !startsWith(github.ref, 'refs/tags/')) }}
run: |
echo "release_tag=" >> $GITHUB_ENV
echo "release_name=" >> $GITHUB_ENV
Expand All @@ -72,7 +72,7 @@ jobs:
echo "cache_$number=switch-${{ github.ref }}-$id" >> $GITHUB_ENV
done
- name: Handle build cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
# This is unnecessarily verbose and might break, but again ! seems broken
# See: https://github.com/Mstrodl/stk-code/runs/2333673736?check_suite_focus=true#step:16:34
Expand Down
Loading