4343 needs : setup
4444 strategy :
4545 matrix :
46- runner : ${{ fromJson((github.ref_type == 'tag' && startsWith(github.ref, 'refs/tags/Second_Life')) && '["windows-large","macos-15-xlarge"]' || '["windows-2022","macos-15-xlarge"]') }}
46+ runner : ${{ fromJson((github.ref_type == 'tag' && startsWith(github.ref, 'refs/tags/Second_Life')) && '["windows-large","macos-15-xlarge","linux-large" ]' || '["windows-2022","macos-15-xlarge","ubuntu-22.04 "]') }}
4747 configuration : ${{ fromJson(needs.setup.outputs.configurations) }}
4848 runs-on : ${{ matrix.runner }}
4949 outputs :
9090 with :
9191 ref : ${{ github.event.pull_request.head.sha || github.sha }}
9292
93+ - name : Linux Disk Cleanup
94+ if : runner.os == 'Linux'
95+ run : |
96+ # Prune various unused files from linux builder to fix free runner disk space exhaustion
97+ df -h
98+ sudo docker container prune -f
99+ sudo docker image prune -a -f
100+ sudo rm -rf /usr/local/share/boost
101+ sudo rm -rf /usr/share/dotnet
102+ sudo rm -rf /usr/local/lib/android
103+ sudo rm -rf /opt/ghc
104+ sudo rm -rf /usr/local/.ghcup
105+ df -h
106+
93107 - name : Setup python
94108 uses : actions/setup-python@v5
95109 with :
@@ -120,6 +134,21 @@ jobs:
120134 ${{ runner.os }}-64-${{ matrix.configuration }}-
121135 ${{ runner.os }}-64-
122136
137+ - name : Install Linux dependencies
138+ if : runner.os == 'Linux'
139+ run : |
140+ sudo apt update
141+ sudo apt install -y \
142+ libpulse-dev libunwind-dev \
143+ libgl1-mesa-dev libglu1-mesa-dev libxinerama-dev \
144+ libxcursor-dev libxfixes-dev libgstreamer1.0-dev \
145+ libgstreamer-plugins-base1.0-dev ninja-build libxft-dev \
146+ libpipewire-0.3-dev libdbus-1-dev libvlc-dev \
147+ libosmesa6-dev
148+ sudo locale-gen en_US.UTF-8
149+ sudo locale-gen en_GB.UTF-8
150+ sudo locale-gen fr_FR.UTF-8
151+
123152 - name : Determine source branch
124153 id : which-branch
125154 uses : secondlife/viewer-build-util/which-branch@v2
@@ -298,6 +327,16 @@ jobs:
298327 path : |
299328 ${{ steps.build.outputs.physicstpv }}
300329
330+ - name : Upload appearance utility package
331+ uses : actions/upload-artifact@v4
332+ if : steps.build.outputs.appearanceutility
333+ with :
334+ name : " ${{ steps.build.outputs.artifact }}-appearanceutility"
335+ # emitted by build.sh, zero or one lines
336+ path : |
337+ ${{ steps.build.outputs.appearanceutility }}
338+
339+
301340 sign-and-package-windows :
302341 env :
303342 AZURE_KEY_VAULT_URI : ${{ secrets.AZURE_KEY_VAULT_URI }}
@@ -425,20 +464,26 @@ jobs:
425464 runs-on : ubuntu-latest
426465 if : needs.setup.outputs.release_run
427466 steps :
428- - uses : actions/download-artifact@v4
467+ - uses : actions/download-artifact@v5
429468 with :
430469 pattern : " *-installer"
431470
432- - uses : actions/download-artifact@v4
471+ - uses : actions/download-artifact@v5
433472 with :
434473 pattern : " *-metadata"
435474
475+ - uses : actions/download-artifact@v5
476+ with :
477+ name : " Linux-app"
478+
436479 - name : Rename metadata
437480 run : |
438481 cp Windows-metadata/autobuild-package.xml Windows-autobuild-package.xml
439482 cp Windows-metadata/newview/viewer_version.txt Windows-viewer_version.txt
440483 cp macOS-metadata/autobuild-package.xml macOS-autobuild-package.xml
441484 cp macOS-metadata/newview/viewer_version.txt macOS-viewer_version.txt
485+ cp Linux-metadata/autobuild-package.xml Linux-autobuild-package.xml
486+ cp Linux-metadata/newview/viewer_version.txt Linux-viewer_version.txt
442487
443488 # forked from softprops/action-gh-release
444489 - name : Create GitHub release
@@ -462,6 +507,7 @@ jobs:
462507 files : |
463508 macOS-installer/*.dmg
464509 Windows-installer/*.exe
510+ *.tar.xz
465511 *-autobuild-package.xml
466512 *-viewer_version.txt
467513
0 commit comments