mirror of
https://github.com/OpenRCT2/OpenRCT2.git
synced 2025-01-22 10:21:57 -05:00
Merge pull request #23236 from OpenRCT2/signpath
Sign Windows binaries with SignPath certificate
This commit is contained in:
commit
f788b60331
11 changed files with 236 additions and 39 deletions
120
.github/workflows/ci.yml
vendored
120
.github/workflows/ci.yml
vendored
|
@ -16,6 +16,17 @@ on:
|
|||
- '.github/workflows/localisation.yml'
|
||||
- '.gitignore'
|
||||
- '.vscode/**'
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
sign:
|
||||
description: Sign binaries
|
||||
type: choice
|
||||
options:
|
||||
- 'no'
|
||||
- test-signing
|
||||
- release-signing
|
||||
default: test-signing
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
@ -34,6 +45,11 @@ jobs:
|
|||
build_variables:
|
||||
name: Get version info
|
||||
runs-on: ubuntu-latest
|
||||
# We want to sign tagged releases with release certificates, but it is only allowed to be ran manually.
|
||||
# Disable automatic runs for tags and force release signing for tags.
|
||||
if: |
|
||||
(startsWith(github.ref, 'refs/tags/v') && github.event_name == 'workflow_dispatch' && github.event.inputs.sign == 'release-signing') ||
|
||||
(!startsWith(github.ref, 'refs/tags/v') && github.event.inputs.sign != 'release-signing')
|
||||
outputs:
|
||||
name: ${{ steps.artifact-name.outputs.name }}
|
||||
describe: ${{ steps.ghd.outputs.describe }}
|
||||
|
@ -41,6 +57,8 @@ jobs:
|
|||
distance: ${{ steps.ghd.outputs.distance }}
|
||||
tag: ${{ steps.ghd.outputs.tag }}
|
||||
push: ${{ steps.setenv.outputs.push }}
|
||||
sign: ${{ steps.sign.outputs.sign }}
|
||||
certificate: ${{ steps.sign.outputs.certificate }}
|
||||
steps:
|
||||
# We need to fetch entire repo to get the tags and correctly run `describe`
|
||||
- name: Check out code
|
||||
|
@ -75,6 +93,22 @@ jobs:
|
|||
run: |
|
||||
echo "name=${{ steps.ghd.outputs.describe }}"
|
||||
echo "name=${{ steps.ghd.outputs.describe }}" >> $GITHUB_OUTPUT
|
||||
- name: Sign
|
||||
id: sign
|
||||
run: |
|
||||
sign=${{ env.SIGNPATH_API_TOKEN != '' && github.event.inputs.sign != 'no' && (needs.build_variables.outputs.push || startsWith(github.ref, 'refs/tags/v')) }}
|
||||
# if using workflow_dispatch, use the provided certificate
|
||||
if [[ "$GITHUB_EVENT_NAME" == "workflow_dispatch" ]]; then
|
||||
certificate=${{ github.event.inputs.sign }}
|
||||
else
|
||||
# Default to no signing
|
||||
certificate=no
|
||||
sign=false
|
||||
fi
|
||||
echo "sign=$sign"
|
||||
echo "certificate=$certificate"
|
||||
echo "sign=$sign" >> $GITHUB_OUTPUT
|
||||
echo "certificate=$certificate" >> $GITHUB_OUTPUT
|
||||
lint-commit:
|
||||
name: Lint Commit Message
|
||||
if: github.event_name == 'pull_request'
|
||||
|
@ -139,13 +173,14 @@ jobs:
|
|||
windows:
|
||||
name: Windows
|
||||
runs-on: windows-latest
|
||||
needs: [check-code-formatting, build_variables]
|
||||
needs: [check-code-formatting, build_variables, g2dat]
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
platform: [win32, x64, arm64]
|
||||
env:
|
||||
PLATFORM: ${{ matrix.platform }}
|
||||
DISTANCE_FROM_TAG: ${{ needs.build_variables.outputs.distance }}
|
||||
steps:
|
||||
- name: Setup environment
|
||||
run: |
|
||||
|
@ -161,12 +196,50 @@ jobs:
|
|||
uses: ammaraskar/msvc-problem-matcher@master
|
||||
- name: Build OpenRCT2
|
||||
run: . scripts/setenv && build
|
||||
- name: Upload unsigned binaries
|
||||
id: upload-windows-binaries-unsigned
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-unsigned-${{ matrix.platform }}
|
||||
path: |
|
||||
bin/openrct2.exe
|
||||
bin/openrct2.com
|
||||
# Sign the binaries first, so that all other artifacts (portable, installer, symbols) use signed binaries
|
||||
- name: Sign binaries
|
||||
id: sign-binaries
|
||||
env:
|
||||
SIGNPATH_API_TOKEN: ${{ secrets.SIGNPATH_API_TOKEN }}
|
||||
if: ${{ needs.build_variables.outputs.sign == 'true' }}
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
with:
|
||||
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
|
||||
organization-id: 645b821f-6283-45e1-8198-264997072801
|
||||
project-slug: OpenRCT2
|
||||
signing-policy-slug: ${{ needs.build_variables.outputs.certificate }}
|
||||
artifact-configuration-slug: 'binaries'
|
||||
github-artifact-id: ${{ steps.upload-windows-binaries-unsigned.outputs.artifact-id }}
|
||||
wait-for-completion: true
|
||||
output-artifact-directory: files-signed
|
||||
parameters: |
|
||||
version: "${{ env.OPENRCT2_VERSION }}.${{ needs.build_variables.outputs.distance }}-${{ needs.build_variables.outputs.short-sha }}"
|
||||
- name: Use signed binaries
|
||||
if: ${{ needs.build_variables.outputs.sign == 'true' }}
|
||||
run: |
|
||||
mv files-signed/openrct2.com bin/openrct2.com
|
||||
mv files-signed/openrct2.exe bin/openrct2.exe
|
||||
- name: Download g2.dat on ARM64
|
||||
if: matrix.platform == 'arm64'
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: g2-${{ needs.build_variables.outputs.name }}.dat
|
||||
path: bin/data/g2.dat
|
||||
- name: Build artifacts
|
||||
run: |
|
||||
. scripts/setenv -q
|
||||
build-portable
|
||||
build-symbols
|
||||
build-installer -i
|
||||
echo "OPENRCT2_VERSION_EXTRA=$OPENRCT2_VERSION_EXTRA" >> "$GITHUB_ENV"
|
||||
- name: Rename artifacts
|
||||
run: |
|
||||
mv artifacts/openrct2-portable-*.zip artifacts/OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-portable-$PLATFORM.zip
|
||||
|
@ -178,11 +251,36 @@ jobs:
|
|||
name: OpenRCT2-${{ needs.build_variables.outputs.name }}-${{ runner.os }}-portable-${{ matrix.platform }}
|
||||
path: artifacts/OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-portable-${{ matrix.platform }}.zip
|
||||
if-no-files-found: error
|
||||
- name: Upload installer artifact (CI)
|
||||
- name: Upload unsigned installer artifact (CI)
|
||||
id: upload-windows-installer-unsigned
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: OpenRCT2-${{ needs.build_variables.outputs.name }}-${{ runner.os }}-installer-${{ matrix.platform }}-unsigned
|
||||
path: artifacts/OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-installer-${{ matrix.platform }}.exe
|
||||
if-no-files-found: error
|
||||
- name: Sign installer
|
||||
id: sign-installer
|
||||
if: ${{ needs.build_variables.outputs.sign == 'true' }}
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
with:
|
||||
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
|
||||
organization-id: 645b821f-6283-45e1-8198-264997072801
|
||||
project-slug: OpenRCT2
|
||||
signing-policy-slug: ${{ needs.build_variables.outputs.certificate }}
|
||||
artifact-configuration-slug: 'installer'
|
||||
github-artifact-id: ${{ steps.upload-windows-installer-unsigned.outputs.artifact-id }}
|
||||
wait-for-completion: true
|
||||
output-artifact-directory: files-signed
|
||||
parameters: |
|
||||
version: "${{ env.OPENRCT2_VERSION }}${{ env.OPENRCT2_VERSION_EXTRA }}"
|
||||
product: "OpenRCT2 ${{ matrix.platform }} Installer for Windows 7 and later"
|
||||
- name: Upload signed installer artifact (CI)
|
||||
id: upload-windows-installer-signed
|
||||
if: ${{ needs.build_variables.outputs.sign == 'true' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: OpenRCT2-${{ needs.build_variables.outputs.name }}-${{ runner.os }}-installer-${{ matrix.platform }}
|
||||
path: artifacts/OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-installer-${{ matrix.platform }}.exe
|
||||
path: files-signed/OpenRCT2-${{ needs.build_variables.outputs.name }}-windows-installer-${{ matrix.platform }}.exe
|
||||
if-no-files-found: error
|
||||
- name: Upload symbols artifact (CI)
|
||||
uses: actions/upload-artifact@v4
|
||||
|
@ -245,7 +343,7 @@ jobs:
|
|||
macos-cmake:
|
||||
name: macOS (${{ matrix.arch }}) using CMake
|
||||
runs-on: macos-14
|
||||
needs: check-code-formatting
|
||||
needs: [check-code-formatting, build_variables]
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
|
@ -417,7 +515,7 @@ jobs:
|
|||
if-no-files-found: error
|
||||
linux-docker:
|
||||
name: Ubuntu Linux (Docker)
|
||||
needs: check-code-formatting
|
||||
needs: [check-code-formatting, build_variables]
|
||||
if: github.repository == 'OpenRCT2/OpenRCT2' && github.ref == 'refs/heads/develop'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
@ -443,7 +541,7 @@ jobs:
|
|||
linux-clang:
|
||||
name: Ubuntu Linux (noble, debug, [http, network, flac, vorbis OpenGL] disabled) using clang
|
||||
runs-on: ubuntu-latest
|
||||
needs: check-code-formatting
|
||||
needs: [check-code-formatting, build_variables]
|
||||
container: openrct2/openrct2-build:16-noble
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
@ -539,6 +637,10 @@ jobs:
|
|||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
merge-multiple: true
|
||||
# Having multiple artifacts named the same might be confusing to the users. Drop the unsigned versions.
|
||||
- name: Remove unsigned artifacts
|
||||
run: |
|
||||
rm -rf *unsigned*
|
||||
- name: Concatenate sha1 files
|
||||
run: |
|
||||
ls -lR
|
||||
|
@ -551,11 +653,16 @@ jobs:
|
|||
sed -n '1,/^$/p' distribution/changelog.txt >> release_notes.txt
|
||||
echo "" >> release_notes.txt
|
||||
|
||||
echo "Release created in ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" >> release_notes.txt
|
||||
echo "" >> release_notes.txt
|
||||
|
||||
echo "SHA1 checksums:" >> release_notes.txt
|
||||
echo "\`\`\`" >> release_notes.txt
|
||||
cat OpenRCT2-${{ needs.build_variables.outputs.name }}-sha1sums.txt >> release_notes.txt
|
||||
echo "\`\`\`" >> release_notes.txt
|
||||
echo "" >> release_notes.txt
|
||||
|
||||
cat release_notes.txt
|
||||
# Only upload tagged releases, mark them as draft for manual verification
|
||||
- name: Create tagged release
|
||||
uses: softprops/action-gh-release@v2
|
||||
|
@ -563,7 +670,6 @@ jobs:
|
|||
with:
|
||||
draft: true
|
||||
files: |
|
||||
OpenRCT2-${{ needs.build_variables.outputs.name }}-sha1sums.txt
|
||||
OpenRCT2-${{ needs.build_variables.outputs.name }}-*
|
||||
body_path: release_notes.txt
|
||||
tag_name: ${{ needs.build_variables.outputs.tag }}
|
||||
|
|
|
@ -436,6 +436,7 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
|
|||
add_definitions(-DDOCDIR="${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DOCDIR}")
|
||||
file(GLOB DOC_FILES "${ROOT_DIR}/distribution/*.txt")
|
||||
list(APPEND DOC_FILES "${ROOT_DIR}/contributors.md"
|
||||
"${ROOT_DIR}/PRIVACY.md"
|
||||
"${ROOT_DIR}/licence.txt"
|
||||
"${ROOT_DIR}/distribution/scripting.md"
|
||||
"${ROOT_DIR}/distribution/openrct2.d.ts")
|
||||
|
|
55
PRIVACY.md
Normal file
55
PRIVACY.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
# Privacy Policy
|
||||
|
||||
## Overview
|
||||
This document describes how this project collects, handles, and processes data.
|
||||
|
||||
## Data Collection
|
||||
- No personal information is collected without explicit user consent
|
||||
- For multiplayer functionality, we only collect necessary data:
|
||||
- Username
|
||||
- Game session data
|
||||
- Network connection details
|
||||
|
||||
## Data Storage
|
||||
- User preferences and settings are stored locally on your device
|
||||
- No sensitive data is transmitted to external servers
|
||||
- Game saves and configurations remain on your local system
|
||||
|
||||
## Network Communications
|
||||
- Multiplayer sessions only transmit game-relevant data
|
||||
- Server connections are used solely for gameplay functionality
|
||||
- No tracking or analytics services are implemented
|
||||
|
||||
## Crash Reporting
|
||||
- Crash dumps may be sent to Backtrace.io for diagnostic purposes
|
||||
- Each crash report transfer requires explicit user consent
|
||||
- Crash dumps contain:
|
||||
- System information
|
||||
- Machine hostname
|
||||
- System username
|
||||
- Technical data about the crash
|
||||
- In-game screenshot
|
||||
- This data helps improve software stability
|
||||
- Users can decline sending crash reports without limiting gameplay functionality
|
||||
- Only team members have access to crash reports
|
||||
|
||||
## Third-Party Services
|
||||
If you use optional features:
|
||||
- Server hosting services may collect connection data
|
||||
- Plugin systems operate under their own privacy terms
|
||||
|
||||
## User Rights
|
||||
You have the right to:
|
||||
- Access your data
|
||||
- Delete your data
|
||||
- Opt out of any data collection
|
||||
- Request information about stored data
|
||||
|
||||
## Changes to Privacy Policy
|
||||
- Users will be notified of any privacy policy updates
|
||||
- Changes will be documented in the project's changelog
|
||||
|
||||
## Contact
|
||||
For privacy concerns or questions, please open an issue in the project repository or contact the team via [Discord](https://discord.gg/ZXZd8D8)
|
||||
|
||||
Last updated: 2024-11-18
|
|
@ -1,4 +1,4 @@
|
|||
Last updated: 2024-08-04
|
||||
Last updated: 2024-11-19
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
@ -13,7 +13,8 @@ Table of contents
|
|||
6.0) Translation
|
||||
7.0) Troubleshooting
|
||||
8.0) Licensing
|
||||
9.0) Credits
|
||||
9.0) Privacy policy
|
||||
10.0) Credits
|
||||
|
||||
1.0) About
|
||||
---- -----
|
||||
|
@ -156,6 +157,10 @@ Google Benchmark | Apache 2.0 licence.
|
|||
|
||||
Licences for sub-libraries used by the above may vary. For more information, visit the libraries' respective official websites.
|
||||
|
||||
9.0) Credits
|
||||
9.0) Privacy policy
|
||||
|
||||
For privacy policy, see the file 'PRIVACY.md'.
|
||||
|
||||
10.0) Credits
|
||||
---- -------
|
||||
For the full list of contributors to OpenRCT2, see the file 'contributors.md'.
|
||||
|
|
|
@ -35,7 +35,7 @@ SetCompressor LZMA
|
|||
|
||||
; Version Info
|
||||
VIProductVersion "${APPVERSIONINTERNAL}"
|
||||
VIAddVersionKey "ProductName" "OpenRCT2 ${APPBITS}-bit Installer for ${SUPPORTED_OS}"
|
||||
VIAddVersionKey "ProductName" "OpenRCT2 ${PLATFORM} Installer for ${SUPPORTED_OS}"
|
||||
VIAddVersionKey "Comments" "Installs ${APPNAMEANDVERSION}"
|
||||
VIAddVersionKey "CompanyName" "OpenRCT2 Developers"
|
||||
VIAddVersionKey "FileDescription" "Installs ${APPNAMEANDVERSION}"
|
||||
|
@ -44,7 +44,7 @@ VIAddVersionKey "InternalName" "InstOpenRCT2-${APPARCH}"
|
|||
VIAddVersionKey "FileVersion" "${APPVERSION}-${APPARCH}"
|
||||
VIAddVersionKey "LegalCopyright" " "
|
||||
; Main Install settings
|
||||
Name "${APPNAMEANDVERSION} ${APPBITS}-bit for ${SUPPORTED_OS}"
|
||||
Name "${APPNAMEANDVERSION} ${PLATFORM} for ${SUPPORTED_OS}"
|
||||
|
||||
; NOTE: Keep trailing backslash!
|
||||
InstallDirRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenRCT2" "Install Folder"
|
||||
|
@ -170,6 +170,9 @@ Section "!OpenRCT2" Section1
|
|||
File ..\..\contributors.md
|
||||
Push "$INSTDIR\contributors.md"
|
||||
Call unix2dos
|
||||
File ..\..\PRIVACY.md
|
||||
Push "$INSTDIR\PRIVACY.md"
|
||||
Call unix2dos
|
||||
File ..\scripting.md
|
||||
Push "$INSTDIR\scripting.md"
|
||||
Call unix2dos
|
||||
|
@ -204,6 +207,7 @@ Section "!OpenRCT2" Section1
|
|||
CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Readme.lnk" "$INSTDIR\Readme.txt"
|
||||
CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Changelog.lnk" "$INSTDIR\Changelog.txt"
|
||||
CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Contributors.lnk" "$INSTDIR\contributors.md"
|
||||
CreateShortCut "$SMPROGRAMS\$SHORTCUTS\Privacy Policy.lnk" "$INSTDIR\PRIVACY.md"
|
||||
!insertmacro MUI_STARTMENU_WRITE_END
|
||||
SectionEnd
|
||||
|
||||
|
@ -240,12 +244,14 @@ Section "Uninstall"
|
|||
Delete "$SMPROGRAMS\$SHORTCUTS\Readme.lnk"
|
||||
Delete "$SMPROGRAMS\$SHORTCUTS\Changelog.lnk"
|
||||
Delete "$SMPROGRAMS\$SHORTCUTS\Contributors.lnk"
|
||||
Delete "$SMPROGRAMS\$SHORTCUTS\Privacy Policy.lnk"
|
||||
|
||||
; Clean up OpenRCT2 dir
|
||||
Delete "$INSTDIR\changelog.txt"
|
||||
Delete "$INSTDIR\licence.txt"
|
||||
Delete "$INSTDIR\readme.txt"
|
||||
Delete "$INSTDIR\contributors.md"
|
||||
Delete "$INSTDIR\PRIVACY.md"
|
||||
Delete "$INSTDIR\scripting.md"
|
||||
Delete "$INSTDIR\openrct2.d.ts"
|
||||
Delete "$INSTDIR\${OPENRCT2_EXE}"
|
||||
|
|
44
readme.md
44
readme.md
|
@ -52,9 +52,13 @@ If you want to help translate the game to your language, please stop by the Loca
|
|||
- 4.4 - [Graphics](#44-graphics)
|
||||
- 4.5 - [Audio](#45-audio)
|
||||
- 4.6 - [Scenarios](#46-scenarios)
|
||||
- 5 - [Licence](#5-licence)
|
||||
- 6 - [More information](#6-more-information)
|
||||
- 7 - [Sponsors](#7-sponsors)
|
||||
- 5 - [Policies](#5-policies)
|
||||
- 5.1 - [Code of conduct](#51-code-of-conduct)
|
||||
- 5.2 - [Code signing policy](#52-code-signing-policy)
|
||||
- 5.3 - [Privacy policy](#53-privacy-policy)
|
||||
- 5 - [Licence](#6-licence)
|
||||
- 6 - [More information](#7-more-information)
|
||||
- 7 - [Sponsors](#8-sponsors)
|
||||
|
||||
---
|
||||
|
||||
|
@ -246,12 +250,32 @@ We would also like to distribute additional scenarios with the game, when the ti
|
|||
|
||||
---
|
||||
|
||||
# 5. Licence
|
||||
# 5. Policies
|
||||
|
||||
## 5.1 Code of Conduct
|
||||
|
||||
We have a [Code of Conduct](CODE_OF_CONDUCT.md) that applies to all OpenRCT2 projects. Please read it.
|
||||
|
||||
## 5.2 Code signing policy
|
||||
|
||||
We sign our releases with a digital certificate provided by SignPath Foundation.
|
||||
|
||||
Free code signing provided by [SignPath.io](https://about.signpath.io/), certificate by [SignPath Foundation](https://signpath.org/).
|
||||
|
||||
Signed releases can only be done by member of the [development team](https://github.com/OpenRCT2/OpenRCT2/blob/develop/contributors.md#development-team).
|
||||
|
||||
## 5.3 Privacy policy
|
||||
|
||||
See [PRIVACY.md](PRIVACY.md) for more information.
|
||||
|
||||
---
|
||||
|
||||
# 6. Licence
|
||||
**OpenRCT2** is licensed under the GNU General Public License version 3 or (at your option) any later version. See the [`licence.txt`](licence.txt) file for more details.
|
||||
|
||||
---
|
||||
|
||||
# 6. More information
|
||||
# 7. More information
|
||||
- [GitHub](https://github.com/OpenRCT2/OpenRCT2)
|
||||
- [OpenRCT2.org](https://openrct2.org)
|
||||
- [Forums](https://openrct2.org/forums/)
|
||||
|
@ -266,11 +290,11 @@ We would also like to distribute additional scenarios with the game, when the ti
|
|||
| [![icon_x128](https://user-images.githubusercontent.com/604665/53047651-2c533c00-3493-11e9-911a-1a3540fc1156.png)](https://github.com/OpenLoco/OpenLoco) | [![](https://github.com/OpenTTD/OpenTTD/raw/850d05d24d4768c81d97765204ef2a487dd4972c/media/openttd.128.png)](https://github.com/OpenTTD/OpenTTD) | [![](https://user-images.githubusercontent.com/550290/36507534-4693f354-175a-11e8-93a7-faa0481474fb.png)](https://github.com/SFTtech/openage) | [![](https://raw.githubusercontent.com/OpenRA/OpenRA/bleed/packaging/artwork/ra_128x128.png)](https://github.com/OpenRA/OpenRA) |
|
||||
| Chris Sawyer's Locomotion | Transport Tycoon Deluxe | Age of Empires 2 | Red Alert |
|
||||
|
||||
# 7. Sponsors
|
||||
# 8. Sponsors
|
||||
|
||||
Companies that kindly allow us to use their stuff:
|
||||
|
||||
| [DigitalOcean](https://www.digitalocean.com/) | [JetBrains](https://www.jetbrains.com/) | [Backtrace](https://backtrace.io/) |
|
||||
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [![do_logo_vertical_blue svg](https://user-images.githubusercontent.com/550290/36508276-8b572f0e-175c-11e8-8622-9febbce756b2.png)](https://www.digitalocean.com/) | [![jetbrains](https://user-images.githubusercontent.com/550290/36413299-0e0985ea-161e-11e8-8a01-3ef523b5905b.png)](https://www.jetbrains.com/) | [![backtrace](https://user-images.githubusercontent.com/550290/47113259-d0647680-d258-11e8-97c3-1a2c6bde6d11.png)](https://backtrace.io/) |
|
||||
| Hosting of various services | CLion and other products | Minidump uploads and inspection |
|
||||
| [DigitalOcean](https://www.digitalocean.com/) | [JetBrains](https://www.jetbrains.com/) | [Backtrace](https://backtrace.io/) | [SignPath](https://signpath.org/) |
|
||||
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------|
|
||||
| [![do_logo_vertical_blue svg](https://user-images.githubusercontent.com/550290/36508276-8b572f0e-175c-11e8-8622-9febbce756b2.png)](https://www.digitalocean.com/) | [![jetbrains](https://user-images.githubusercontent.com/550290/36413299-0e0985ea-161e-11e8-8a01-3ef523b5905b.png)](https://www.jetbrains.com/) | [![backtrace](https://user-images.githubusercontent.com/550290/47113259-d0647680-d258-11e8-97c3-1a2c6bde6d11.png)](https://backtrace.io/) | [![Image](https://github.com/user-attachments/assets/2b5679e0-76a4-4ae7-bb37-a6a507a53466)](https://signpath.org/) |
|
||||
| Hosting of various services | CLion and other products | Minidump uploads and inspection | Code signing |
|
||||
|
|
|
@ -12,17 +12,15 @@ cd $basedir
|
|||
|
||||
if [[ "$OSTYPE" == "cygwin" || "$OSTYPE" == "msys" ]]; then
|
||||
# Patch version.h
|
||||
if [[ -n "$OPENRCT2_BUILD" ]]; then
|
||||
echo -e "\033[0;36mPatching version.h...\033[0m"
|
||||
fileversion=$OPENRCT2_VERSION.$OPENRCT2_BUILD
|
||||
productversion="$fileversion-${OPENRCT2_SHA1_SHORT}"
|
||||
fileversion=${fileversion//./,}
|
||||
# FILEVERSION in the resource file can only take up to 4 digits in the version string, so we remove the surplus of version numbers
|
||||
fileversion=$(echo $fileversion | cut -f1-4 -d",")
|
||||
echo "#define OPENRCT2_FILE_VERSION $fileversion" > "resources/version.h"
|
||||
echo "#define OPENRCT2_PRODUCT_VERSION \"$productversion\"" >> "resources/version.h"
|
||||
cat "resources/version.h"
|
||||
fi
|
||||
echo -e "\033[0;36mPatching version.h...\033[0m"
|
||||
fileversion=$OPENRCT2_VERSION.$OPENRCT2_BUILD
|
||||
productversion="$fileversion-${OPENRCT2_SHA1_SHORT}"
|
||||
fileversion=${fileversion//./,}
|
||||
# FILEVERSION in the resource file can only take up to 4 digits in the version string, so we remove the surplus of version numbers
|
||||
fileversion=$(echo $fileversion | cut -f1-4 -d",")
|
||||
echo "#define OPENRCT2_FILE_VERSION $fileversion" > "resources/version.h"
|
||||
echo "#define OPENRCT2_PRODUCT_VERSION \"$productversion\"" >> "resources/version.h"
|
||||
cat "resources/version.h"
|
||||
|
||||
# Build everything
|
||||
echo -e "\033[0;36mBuilding OpenRCT2 for Windows $CONFIGURATION|$PLATFORM...\033[0m"
|
||||
|
|
|
@ -22,6 +22,7 @@ if [[ "$OSTYPE" == "cygwin" || "$OSTYPE" == "msys" ]]; then
|
|||
7z a -r $destination \
|
||||
openrct2.exe openrct2.com data \
|
||||
../contributors.md \
|
||||
../PRIVACY.md \
|
||||
../licence.txt \
|
||||
../distribution/changelog.txt \
|
||||
../distribution/readme.txt \
|
||||
|
|
|
@ -16,9 +16,7 @@ echo -e "\033[0;36mSetting up environment for OpenRCT2...\033[0m"
|
|||
# Get the build number (number of commits since last tag)
|
||||
get_build_number()
|
||||
{
|
||||
local pattern='.+-([0-9]+)-.+'
|
||||
[[ $OPENRCT2_DESCRIBE =~ $pattern ]]
|
||||
echo "${BASH_REMATCH[1]}"
|
||||
echo "${DISTANCE_FROM_TAG}"
|
||||
}
|
||||
export OPENRCT2_BUILD=$(get_build_number)
|
||||
|
||||
|
|
|
@ -184,6 +184,7 @@ if(MACOS_BUNDLE)
|
|||
PUBLIC ${ROOT_DIR}/distribution/readme.txt
|
||||
PUBLIC ${ROOT_DIR}/distribution/changelog.txt
|
||||
PUBLIC ${ROOT_DIR}/contributors.md
|
||||
PUBLIC ${ROOT_DIR}/PRIVACY.md
|
||||
PUBLIC ${ROOT_DIR}/resources/mac/openrct2.icns
|
||||
)
|
||||
|
||||
|
@ -192,6 +193,7 @@ if(MACOS_BUNDLE)
|
|||
${ROOT_DIR}/distribution/readme.txt
|
||||
${ROOT_DIR}/distribution/changelog.txt
|
||||
${ROOT_DIR}/contributors.md
|
||||
${ROOT_DIR}/PRIVACY.md
|
||||
${ROOT_DIR}/resources/mac/openrct2.icns
|
||||
)
|
||||
|
||||
|
|
|
@ -439,9 +439,10 @@ static void PrintAbout()
|
|||
Console::WriteLine("includes some 3rd party software under different licenses. See the file");
|
||||
Console::WriteLine("\"licence.txt\" shipped with the game for details.");
|
||||
Console::WriteLine();
|
||||
Console::WriteLine("Website: https://openrct2.io");
|
||||
Console::WriteLine("GitHub: https://github.com/OpenRCT2/OpenRCT2");
|
||||
Console::WriteLine("Contributors: https://github.com/OpenRCT2/OpenRCT2/blob/develop/contributors.md");
|
||||
Console::WriteLine("Website: https://openrct2.io");
|
||||
Console::WriteLine("GitHub: https://github.com/OpenRCT2/OpenRCT2");
|
||||
Console::WriteLine("Contributors: https://github.com/OpenRCT2/OpenRCT2/blob/develop/contributors.md");
|
||||
Console::WriteLine("Privacy Policy: https://github.com/OpenRCT2/OpenRCT2/blob/develop/PRIVACY.md");
|
||||
Console::WriteLine();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue