Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
178 commits
Select commit Hold shift + click to select a range
636ca11
initial commit
darrell-k Oct 17, 2025
b456403
Merge branch 'public/9.1' into remote-service-enhancement
darrell-k Nov 7, 2025
945f601
further WIP
darrell-k Nov 7, 2025
b12ab2a
Tweak build pipeline: cache results, don't run unnecessary steps for …
michaelherger Nov 7, 2025
24862ec
Tweak the Issue template
michaelherger Nov 9, 2025
8440393
Merge branch 'SlimBrowse-Metadata' into remote-service-enhancement
darrell-k Nov 9, 2025
0bf641c
Update Czech translations
mipa87 Nov 9, 2025
8cf85cf
Merge pull request #1454 from mipa87/public/9.0
michaelherger Nov 10, 2025
489f2a1
Changelog update
michaelherger Nov 10, 2025
81a2ffb
Merge branch 'public/9.0' into public/9.1
michaelherger Nov 10, 2025
5844af9
It doesn't make sense to cache playcount and most recently played, as…
michaelherger Nov 13, 2025
3a0ad97
Update `Proc::Background`
michaelherger Nov 13, 2025
f2e60e1
Fix Squeezeplay Playlist icons - Move from 'Default' to 'EN' skin hie…
mw9 Nov 14, 2025
4fd1b56
Merge pull request #1455 from mw9/fix/SQP_playlist_icons
michaelherger Nov 17, 2025
566fbf4
Changelog update.
michaelherger Nov 17, 2025
7cdb0d4
Some users of `Async::Util::amap()` might call the callback twice - i…
michaelherger Nov 17, 2025
9e331ee
Add devcontainer configuration with Dockerfile and docker-compose setup
LMSSonos Nov 19, 2025
776145f
moved logic to post-create script, which checks if file exist for cur…
LMSSonos Nov 19, 2025
a3091ba
added documentation
LMSSonos Nov 22, 2025
402261d
Close HTTP connection only if close or if (request not keep-alive and…
philippe44 Nov 22, 2025
7018274
Revert "Close HTTP connection only if close or if (request not keep-a…
philippe44 Nov 22, 2025
2e034d4
Don't close HTTP when 1.1, unless explicit asked
philippe44 Nov 22, 2025
7a5c026
Update Czech translations
mipa87 Nov 23, 2025
7167116
Merge pull request #1462 from mipa87/public/9.0
michaelherger Nov 23, 2025
6408f49
Merge branch 'public/9.0' into public/9.1
michaelherger Nov 23, 2025
a2ae5ed
Merge pull request #1460 from philippe44/fix-HTTP-keep-alive
michaelherger Nov 24, 2025
ecf9a67
Merge pull request #1458 from LMSSonos/feature/devcontainers
michaelherger Nov 24, 2025
946d512
Changelog and .gitignore update
michaelherger Nov 24, 2025
e898312
fix wide characters in cache key
darrell-k Nov 24, 2025
9d0e1ca
Fix error calling getMetaDataFor () without valid $client
SamInPgh Nov 24, 2025
d45ef51
Merge pull request #1464 from darrell-k/public/9.1
michaelherger Nov 24, 2025
75e4f1e
Merge branch 'LMS-Community:public/9.1' into public/9.1
SamInPgh Nov 24, 2025
945c6a7
Fix problem in the HTTP protocol handler
SamInPgh Nov 24, 2025
b967c12
Merge pull request #1465 from SamInPgh/public/9.1
michaelherger Nov 25, 2025
23f4b2e
There's no need to repeatedly fetch the client object
michaelherger Nov 25, 2025
a158693
Add some sanity checking before using the client object in `getMetada…
michaelherger Nov 25, 2025
09a5018
Let the image proxy tell the upstream server what image file formats …
michaelherger Nov 26, 2025
3ec27e8
Add handler to resize WEBP using the image proxy. Lack of support in …
michaelherger Nov 26, 2025
bd69b98
Let's not limit to JPG, but keep the handler more generic.
michaelherger Nov 28, 2025
287ab9a
Make sure `Image::Scale` is loaded before we try to use it in `ImageP…
michaelherger Nov 28, 2025
a654a9a
Prevent "Error: Couldn't load module: (jpg)" messages
SamInPgh Dec 4, 2025
266af8f
Merge pull request #1467 from SamInPgh/public/9.1
michaelherger Dec 4, 2025
846196a
Fix #1469 Add plural `BROADCASTS` to translation table
michaelherger Dec 6, 2025
0e292ec
Consider all of a track's genres for scrob exclusion
jbylsma Dec 8, 2025
cc9cece
Only parse genres if ignoreGenres isn't empty
jbylsma Dec 9, 2025
2a9d713
Merge pull request #1471 from jbylsma/scrob-ignore-multiple-genres
michaelherger Dec 9, 2025
5f6ddfc
Changelog update
michaelherger Dec 9, 2025
e6ba94a
Add a few more new (optional) browse modes with full CLI support:
michaelherger Dec 12, 2025
dc94963
Compress a bunch of PNGs to shave off about 1.4MB overall
michaelherger Dec 12, 2025
ac0229f
Use different Material icons for different browse modes. The SVGs have
CDrummond Dec 12, 2025
110cbaa
Merge pull request #1472 from CDrummond/new-icons-for-extended-modes
michaelherger Dec 12, 2025
be2b2c2
Fix typo in filename
michaelherger Dec 12, 2025
185762b
Shave off another MB of image data
michaelherger Dec 12, 2025
ba47c5d
Fix jump bar handling (text keys), improve role filtering in new sort…
michaelherger Dec 12, 2025
9a56b6f
Don't show the VA item when using stats based sort orders in `artists…
michaelherger Dec 12, 2025
1799859
When listing items based on play stats, ignore items which have not b…
michaelherger Dec 13, 2025
cca4779
Make Material popular artist icon consistent with popular album icon.
CDrummond Dec 13, 2025
d3c45d3
Merge pull request #1473 from CDrummond/new-icons-for-extended-modes-2
michaelherger Dec 13, 2025
d96c212
Simplify the "Popular" item label
michaelherger Dec 14, 2025
0cc6ea5
#1468 Add `SUBTITLE` to Advanced Search
michaelherger Dec 20, 2025
ca0025a
#1468 Distinguish track subtitle and album/set subtitle. Map `SETSUBT…
michaelherger Dec 21, 2025
65aa473
Don't lock the DB when trying to play a playlist by name while a scan…
michaelherger Dec 22, 2025
b0d3862
Update Czech translations
mipa87 Dec 29, 2025
5020de1
Merge pull request #1477 from mipa87/public/9.1
michaelherger Dec 30, 2025
5185f16
Changelog update
michaelherger Dec 30, 2025
ac4b314
Add Homebrew's binary path to OSX search paths.
michaelherger Jan 4, 2026
4651de0
Merge branch 'public/9.0' into public/9.1
michaelherger Jan 4, 2026
1e49d88
No replay gain applied on some random mix tracks
SamInPgh Jan 5, 2026
9614a8a
#1482 Add `rescan album <album_id>` scan mode to scan individual albu…
michaelherger Jan 6, 2026
65c2350
Fix incorrect language tag.
michaelherger Jan 6, 2026
bb368b1
Merge branch 'LMS-Community:public/9.1' into public/9.1
SamInPgh Jan 7, 2026
4107e60
Update StreamingController.pm
SamInPgh Jan 7, 2026
60c2cbc
Merge branch 'public/9.1' of https://github.com/SamInPgh/slimserver i…
SamInPgh Jan 7, 2026
0821de5
Let plugins register contributor roles for which pictures should be r…
michaelherger Jan 7, 2026
ae6e5d9
Improve the `dumpFiltered()` helper.
michaelherger Jan 8, 2026
25c6b21
Fix gathering of role IDs. For whatever reason some installations wou…
michaelherger Jan 8, 2026
570083c
Align naming of My Music (Behaviour) and Information (LMS Status) set…
michaelherger Jan 10, 2026
c89c892
Update YAML to build on Perl 5.42 (tested on Fedora 43 only!)
michaelherger Jan 10, 2026
1a24c93
Update strings.txt
Blackfiction Jan 10, 2026
14cca00
Merge branch 'public/9.1' of https://github.com/SamInPgh/slimserver i…
SamInPgh Jan 10, 2026
a9362fd
Fix the REAL problem with remote replay gain.
SamInPgh Jan 10, 2026
fc3cb5f
Replace Perl 5.42 binaries with versions built on openSUSE/Tumbleweed…
michaelherger Jan 10, 2026
e5fcde5
Merge pull request #1485 from Blackfiction/patch-35
michaelherger Jan 10, 2026
ff091a4
NAME="osname" and NAME=osname both appear to be correct formats
paul-1 Mar 23, 2025
df3e832
Add Direct pCP support files.
paul-1 Mar 26, 2025
8792e49
Add missing UPDATE_DIR lost during a rebase.
paul-1 Mar 27, 2025
a120425
pCP: Use the prebuilt_tcz branch.
paul-1 Mar 29, 2025
58c8ef6
Simplify pCP update notification - integrate with other Linux based m…
michaelherger Mar 30, 2025
d4f5a2f
Updates: When a new installer is downloaded, remove old Versions of m…
paul-1 Mar 31, 2025
d71103a
Tweak the LMS update notification for pCP based systems to make the u…
michaelherger Apr 1, 2025
79f6f86
Changelog update...
paul-1 Apr 6, 2025
780d584
Merge pull request #1486 from SamInPgh/public/9.1
michaelherger Jan 12, 2026
1fdd90c
Merge pull request #1374 from piCorePlayer/Add_pCP_Stable
michaelherger Jan 12, 2026
acf3930
Merge branch 'public/9.0' into public/9.1
michaelherger Jan 12, 2026
de9aeae
Changelog update
michaelherger Jan 12, 2026
349ce3e
Update strings.txt
JohanSaaw Jan 12, 2026
688ec06
Update strings.txt
JohanSaaw Jan 12, 2026
ad5dcb3
Amend and update Swedish strings
JohanSaaw Jan 14, 2026
32e4dd8
Improve CJK search support
xxbin Jan 15, 2026
a826d90
Add support for building pCP's .tcz file
michaelherger Mar 19, 2025
ad6b7e2
No need for dev tools when building for pCP
michaelherger Mar 19, 2025
0107d31
Add CJK detection for optimized punctuation handling and single-chara…
xxbin Jan 16, 2026
317d5fd
Merge pull request #1488 from piCorePlayer/Update_Stable_for_pCP
michaelherger Jan 16, 2026
4ff8f0c
Don't fail build on s5cmd installation failure, but fall back to aws-cli
michaelherger Mar 24, 2025
8fb4531
Cache downloaded `s5cmd`, as the download often fails on macOS
michaelherger May 1, 2025
5914df4
Fix spelling
jawn Jun 26, 2025
be8b1a7
Tweak build pipeline: cache results, don't run unnecessary steps for …
michaelherger Nov 7, 2025
1a08d95
Fix incorrectly resolved merge conflict
michaelherger Oct 3, 2025
793a6ea
Merge branch 'public/9.0' into public/9.1
michaelherger Jan 16, 2026
a4064a3
Merge pull request #1487 from xxbin/public/9.1
michaelherger Jan 16, 2026
a284821
Changelog update
michaelherger Jan 16, 2026
f81a823
Update and amend Swedish translations
JohanSaaw Jan 16, 2026
f74902f
Merge branch 'LMS-Community:public/9.1' into public/9.1
JohanSaaw Jan 16, 2026
8f92576
Update StreamingController.pm
SamInPgh Jan 16, 2026
bc543ba
Amend Swedish translations.
JohanSaaw Jan 17, 2026
a0aeea9
Amend Swedish translations.
JohanSaaw Jan 17, 2026
5b087c5
Amend Swedish translations
JohanSaaw Jan 17, 2026
7826940
Amend Swedish translations
JohanSaaw Jan 17, 2026
030f522
Amend Swedish translations
JohanSaaw Jan 17, 2026
e41198e
Amend Swedish translations
JohanSaaw Jan 17, 2026
09ea32e
Amend Swedish translations
JohanSaaw Jan 17, 2026
e0414ce
Amend Swedish translations
JohanSaaw Jan 17, 2026
90aa9d7
Amend Swedish translations
JohanSaaw Jan 17, 2026
cac25cb
Amend Swedish translations
JohanSaaw Jan 17, 2026
b1c3b94
Amend Swedish translations
JohanSaaw Jan 17, 2026
e966a95
Amend Swedish translations
JohanSaaw Jan 17, 2026
0e38879
Amend Swedish translations
JohanSaaw Jan 17, 2026
5f94c36
Amend Swedish translations
JohanSaaw Jan 17, 2026
43d4b85
Amend Swedish translations
JohanSaaw Jan 17, 2026
d4582ac
Amend Swedish translations
JohanSaaw Jan 17, 2026
1203d23
Amend S
JohanSaaw Jan 17, 2026
8dee7f1
Amend Swedish translations
JohanSaaw Jan 17, 2026
2874b13
Amend Swedish translations
JohanSaaw Jan 17, 2026
f4b791a
Amend Swedish translations
JohanSaaw Jan 17, 2026
c452ce1
Amend Swedish translations
JohanSaaw Jan 17, 2026
802708e
Amend Swedish translations
JohanSaaw Jan 17, 2026
ade23c0
Amend Swedish translations
JohanSaaw Jan 17, 2026
082197c
Amend Swedish translations
JohanSaaw Jan 17, 2026
2185eb1
Amend Swedish translations
JohanSaaw Jan 17, 2026
ed4a584
Amend Swedish translations
JohanSaaw Jan 18, 2026
917a279
Amend Swedish translations
JohanSaaw Jan 18, 2026
a1f0aef
Amend Swedish translations
JohanSaaw Jan 18, 2026
a0088d2
Amend Swedish translations
JohanSaaw Jan 18, 2026
416f2a0
Amend Swedish translations
JohanSaaw Jan 18, 2026
98f6c28
Amend Swedish translations
JohanSaaw Jan 18, 2026
8593711
Amend Swedish translations
JohanSaaw Jan 18, 2026
4e282cf
Amend Swedish translations
JohanSaaw Jan 18, 2026
2d0514b
Fix incorrect ICY stream title sent during track change
maniac103 Jan 18, 2026
1a2d695
Corrected Swedish translation (format error).
JohanSaaw Jan 18, 2026
1d2c251
Corrected special accented characters in Swedish translations.
JohanSaaw Jan 18, 2026
8bb115a
Amend Swedish translations, format error
JohanSaaw Jan 18, 2026
9c31f18
Amend Swedish translations
JohanSaaw Jan 18, 2026
5b73445
Amedn Swedish translations.
JohanSaaw Jan 18, 2026
754ba95
Merge pull request #1491 from JohanSaaw/public/9.1
michaelherger Jan 19, 2026
43d1a77
Merge pull request #1489 from SamInPgh/public/9.1
michaelherger Jan 19, 2026
ff401f2
Changelog update
michaelherger Jan 19, 2026
c3cb593
Merge pull request #1490 from maniac103/icy-title-fix
michaelherger Jan 19, 2026
b8e922c
Reduce the minimum sync adjustment from 10ms to 5ms.
michaelherger Jan 19, 2026
4934fc8
Update stale issues workflow to cover PRs correctly
michaelherger Jan 23, 2026
cd33557
Use metadata from the library for remote tracks when possible.
SamInPgh Jan 23, 2026
326f506
New & changed scan - null values fix
darrell-k Jan 24, 2026
6ac5413
Transcode from FLAC to MP3 via raw PCM for stream seeking
jbylsma Jan 30, 2026
a6be829
Allow embedded cuesheet FLACs to be transcoded to MP3
jbylsma Jan 30, 2026
d49afba
#1502 - Fix a last(?) reference to SqueezeCenter
michaelherger Feb 1, 2026
3cd3b77
Fix a few warnings.
michaelherger Feb 1, 2026
0581a45
Merge pull request #1496 from darrell-k/scanner-empty-columns
michaelherger Feb 1, 2026
3418479
Merge pull request #1494 from SamInPgh/public/9.1
michaelherger Feb 1, 2026
2c82016
Merge pull request #1500 from jbylsma/flac-mp3-transcoding
michaelherger Feb 2, 2026
fbb39ee
Changelog update
michaelherger Feb 2, 2026
82c5029
Sign release builds using SignPath's service
michaelherger Jan 23, 2026
e2fb67f
Darrell's WIP
darrell-k Feb 3, 2026
8d46fe2
rework and add Works processing
darrell-k Feb 4, 2026
e48069e
some rework
darrell-k Feb 5, 2026
0e1dfc2
Merge pull request #1507 from darrell-k/albumScanFullText
michaelherger Feb 5, 2026
3b69ef0
Remove some unreachable code.
michaelherger Feb 5, 2026
ffd9c59
Merge branch 'public/9.0' into public/9.1
michaelherger Feb 5, 2026
44536ff
Extract ID prefixes for the FTS index into constants
michaelherger Feb 6, 2026
64da614
Merge branch 'public/9.1' into remote-service-enhancement
darrell-k Feb 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
FROM mcr.microsoft.com/devcontainers/base:bookworm

# taken from: https://github.com/LMS-Community/slimserver-platforms/blob/public/9.1/Docker/Dockerfile

# Set environment variables
ENV DEBIAN_FRONTEND=noninteractive
ENV LC_ALL="C.UTF-8" LANG="en_US.UTF-8" LANGUAGE="en_US.UTF-8"


# Install packages
RUN sudo apt-get update -qq && \
sudo apt-get install --no-install-recommends -qy procps psmisc wget curl perl tzdata libcrypt-blowfish-perl libwww-perl libfont-freetype-perl liblinux-inotify2-perl \
libdata-dump-perl libio-socket-ssl-perl libnet-ssleay-perl libcrypt-ssleay-perl libcrypt-openssl-rsa-perl libssl-dev libgomp1 libasound2 lame opus-tools && \
sudo apt-get clean -qy && \
sudo rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
36 changes: 36 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/debian
{
"name": "Lyrion Debian devcontainer",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
//"image": "mcr.microsoft.com/devcontainers/base:bookworm",
"dockerComposeFile": "docker-compose.yml",
"service": "lyrion-devcontainer",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [
9000,
3483,
9090
],
"portsAttributes": {
"9000": {
"label": "web interface",
"protocol": "http"
},
"3483": {
"label": "SlimProto"
},
"9090": {
"label": "CLI"
}
},
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "/workspaces/slimserver/.devcontainer/post-create.sh"
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
16 changes: 16 additions & 0 deletions .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
version: '3.11'

services:
lyrion-devcontainer:
# add this line so we can connect to the host machine
build:
context: .
dockerfile: Dockerfile
volumes:
- lyrion-dev-volume:/workspace

# Overrides default command so things don't shut down after the process ends.
command: sleep infinity

volumes:
lyrion-dev-volume:
21 changes: 21 additions & 0 deletions .devcontainer/post-create.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash
set -e

# get current git branch
BRANCH="$(git rev-parse --abbrev-ref HEAD)"

URL_BRANCH="https://raw.githubusercontent.com/LMS-Community/slimserver-platforms/${BRANCH}/Docker/Slim-Utils-OS-Custom.pm"
URL_HEAD="https://raw.githubusercontent.com/LMS-Community/slimserver-platforms/HEAD/Docker/Slim-Utils-OS-Custom.pm"
TARGET_FILE="/workspaces/slimserver/Slim/Utils/OS/Custom.pm"

echo "Detected branch: ${BRANCH}"
echo "Trying branch-specific file..."

# Try downloading branch version
if curl -fSL "$URL_BRANCH" -o "$TARGET_FILE"; then
echo "Downloaded branch version from: $URL_BRANCH"
else
echo "Branch file not found, falling back to HEAD..."
curl -fSL "$URL_HEAD" -o "$TARGET_FILE"
echo "Downloaded latest version from: $URL_HEAD"
fi
6 changes: 4 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@ If applicable, add screenshots to help explain your problem.

**System Information (please complete the following information):**
- OS on which you're running LMS: [e.g. pCP 10]
- Hardware on which you're running LMS (x86_64, aarch64, ARM, ...)
- Web skin used: [e.g. Material, Default]
- Browser [e.g. chrome, safari]
- LMS Version [e.g. 22]
- Browser [e.g. Chrome, Safari]
- LMS Version
- Player(s) involved
- Addition information from the Settings/Information header section

**Additional context**
Add any other context about the problem here. E.g. a `server.log` or `scanner.log` snippet (see Settings/Information in your LMS)
44 changes: 40 additions & 4 deletions .github/actions/build/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,16 @@ inputs:
description: The key ID to use to upload to S3
AWS_SECRET_ACCESS_KEY:
description: The secret to use to upload to S3
SIGNPATH_API_TOKEN:
description: The SignPath API token to use for code signing
SIGNPATH_ORG_ID:
description: The SignPath organization ID to use for code signing
SIGNPATH_PROJECT_SLUG:
description: The SignPath project slug to use for code signing
SIGNPATH_SIGNING_POLICY_SLUG:
description: The SignPath signing policy slug to use for code signing
SIGNPATH_ARTIFACT_CONFIG_SLUG:
description: The SignPath artifact config slug to use for code signing

runs:
using: composite
Expand All @@ -33,7 +43,7 @@ runs:


- name: Check out LMS platform code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: ${{ github.repository_owner }}/slimserver-platforms
path: platforms
Expand All @@ -42,7 +52,7 @@ runs:

- name: Check out pCP platform code
if: ${{ startsWith(inputs.build-params, 'pcp') }}
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: picoreplayer/lms-update-script
path: platforms/pcp
Expand Down Expand Up @@ -120,12 +130,14 @@ runs:
fi

- name: Cache s5cmd
uses: actions/cache@v4
if: ${{ !startsWith(inputs.build-params, 'docker') }}
uses: actions/cache@v5
with:
key: s5cmd-${{ runner.os }}
path: ${{ runner.temp }}/s5cmd-bin

- name: Check if s5cmd is installed
if: ${{ !startsWith(inputs.build-params, 'docker') }}
id: check-s5cmd
continue-on-error: true
shell: bash
Expand All @@ -151,11 +163,35 @@ runs:

- name: Archive artifacts
if: ${{ !startsWith(inputs.build-params, 'docker') }}
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
id: upload-artifact
with:
name: ${{ inputs.build-params }}
path: publish

- name: Prepare Windows release signing
if: ${{ startsWith(inputs.build-params, 'win64') && inputs.build-type == 'release' }}
uses: signpath/github-action-submit-signing-request@v2
with:
api-token: '${{ inputs.SIGNPATH_API_TOKEN }}'
organization-id: '${{ inputs.SIGNPATH_ORG_ID }}'
project-slug: '${{ inputs.SIGNPATH_PROJECT_SLUG }}'
signing-policy-slug: '${{ inputs.SIGNPATH_SIGNING_POLICY_SLUG }}'
artifact-configuration-slug: '${{ inputs.SIGNPATH_ARTIFACT_CONFIG_SLUG }}'
github-artifact-id: '${{ steps.upload-artifact.outputs.artifact-id }}'
wait-for-completion: true
output-artifact-directory: publish

- name: Calculate hash for signed Windows binary
if: ${{ startsWith(inputs.build-params, 'win64') && inputs.build-type == 'release' }}
shell: bash
run: |
cd publish
for f in LyrionMusicServer-*exe;
do
md5sum $f > $f.md5
done

- name: Upload artifacts to R2
if: ${{ !startsWith(inputs.build-params, 'docker') && github.repository_owner == 'LMS-Community' }}
shell: bash
Expand Down
30 changes: 23 additions & 7 deletions .github/workflows/00_build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
steps:
# we must check out here, as otherwise the build action is not available
- name: Check out LMS code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
path: server
ref: ${{ inputs.branch }}
Expand Down Expand Up @@ -89,16 +89,17 @@ jobs:
steps:
# we must check out here, as otherwise the build action is not available
- name: Check out LMS code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
path: server
ref: ${{ inputs.branch }}

- name: Prepare build environment
if: ${{ matrix.flavour[0] != 'tarball' && matrix.flavour[0] != 'pcp' }}
run: |
sudo apt update
sudo apt install -y apt-transport-https debhelper devscripts
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: apt-transport-https debhelper devscripts
version: 1

- name: Launch build process
uses: ./server/.github/actions/build
Expand All @@ -115,7 +116,7 @@ jobs:
steps:
# we must check out here, as otherwise the build action is not available
- name: Check out LMS code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
path: server
ref: ${{ inputs.branch }}
Expand Down Expand Up @@ -148,7 +149,7 @@ jobs:
steps:
# we must check out here, as otherwise the build action is not available
- name: Check out LMS code
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
path: server
ref: ${{ inputs.branch }}
Expand All @@ -160,6 +161,21 @@ jobs:
build-type: ${{ inputs.build_type }}
AWS_KEY_ID: ${{ secrets.R2_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
SIGNPATH_API_TOKEN: ${{ secrets.SIGNPATH_API_TOKEN }}
SIGNPATH_ORG_ID: ${{ vars.SIGNPATH_ORG_ID }}
SIGNPATH_PROJECT_SLUG: ${{ vars.SIGNPATH_PROJECT_SLUG }}
SIGNPATH_SIGNING_POLICY_SLUG: ${{ vars.SIGNPATH_SIGNING_POLICY_SLUG }}
SIGNPATH_ARTIFACT_CONFIG_SLUG: ${{ vars.SIGNPATH_ARTIFACT_CONFIG_SLUG }}

- name: Archive signed Windows artifact
# we only sign for release builds - no need to do this for nightlies
if: ${{ inputs.build-type == 'release' }}
# needs to be run here as the above build action can't run upload twice
uses: actions/upload-artifact@v6
id: upload-artifact
with:
name: win64-signed
path: publish/

updateRepoFile:
name: Trigger repository file update
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/00_smoketest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,19 @@ jobs:
exit 1
fi

- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Install dependencies
if: ${{ !env.ACT }}
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: libio-socket-ssl-perl libnet-ssleay-perl netcat-traditional
version: 1

- name: Install dependencies (ACT fallback)
if: ${{ env.ACT }}
run: |
if [ "$ACT" == "true" ]; then
sudo apt-get update
fi
sudo apt-get update
sudo apt-get install -y libio-socket-ssl-perl libnet-ssleay-perl netcat-traditional

- name: Test Strings File
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/close-stale-issues.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,18 @@ jobs:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v9
- uses: actions/stale@v10
with:
days-before-issue-stale: 720
days-before-issue-close: 14
stale-issue-label: "stale"
stale-issue-message: ":warning: This issue is stale because it has been open for 720 days with no activity. Please chime in if you want to keep it alive."
close-issue-message: ":no_entry: This issue was closed because it has been inactive for 14 days since being marked as stale."
days-before-pr-stale: -1
days-before-pr-close: -1
days-before-pr-stale: 720
days-before-pr-close: 14
stale-pr-label: "stale"
stale-pr-message: ":warning: This pull request is stale because it has been open for 720 days with no activity. Please chime in if you want to keep it alive."
close-pr-message: ":no_entry: This pull request was closed because it has been inactive for 14 days since being marked as stale."
repo-token: ${{ secrets.GITHUB_TOKEN }}
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Ignore custom OS module as this is installed in devcontainer and not part of this repo
Slim/Utils/OS/Custom.pm

# Ignore cache, logs and prefs files
Cache/*
Logs/*
prefs/*
Plugins/*
Loading