From 385d420dcc17cebb742416717ad683911a171be0 Mon Sep 17 00:00:00 2001 From: Michael Herger Date: Wed, 24 Jan 2024 15:27:41 +0100 Subject: [PATCH] Add documentation for the Github workflow, and a sample file to build using ACT. --- CPAN/Docker/act.json | 9 +++++++++ CPAN/README.md | 30 ++++++++++++++++++++++++++---- 2 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 CPAN/Docker/act.json diff --git a/CPAN/Docker/act.json b/CPAN/Docker/act.json new file mode 100644 index 000000000..44cd509b5 --- /dev/null +++ b/CPAN/Docker/act.json @@ -0,0 +1,9 @@ +{ + "action": "workflow_dispatch", + "inputs": { + "flavour": "debian", + "tag": "bullseye", + "platform": "arm64", + "module": "Audio::Scan" + } +} \ No newline at end of file diff --git a/CPAN/README.md b/CPAN/README.md index 86e35fb59..e1c55f549 100644 --- a/CPAN/README.md +++ b/CPAN/README.md @@ -1,7 +1,29 @@ Building Perl binaries for Logitech Media Server ============================ -(aka. SlimServer, SqueezeboxServer, SliMP3...) --------- + +## Build using the Github Workflow `buildCPAN` + +There's a Github Workflow `buildCPAN.yaml` to build on various platforms using a few parameters. It's easiest to run it directly on Github. Alas, Github Actions only support x86_64 for Linux so far, no ARM. But the same workflow file can be run locall using [ACT](https://nektosact.com/installation/index.html). Run on a Mac with Apple Silicon this allows you to build for the ARM platform, too. + +After you've set up ACT following the instructions from above link you can set up a configuration file, like eg. [`CPAN/Docker/act.json`]: + +```json +{ + "action": "workflow_dispatch", + "inputs": { + "flavour": "debian", + "tag": "bullseye", + "platform": "arm64", + "module": "Audio::Scan" + } +} +``` + +Where: +* `flavour`: currently `debian` or `fedora` are supported +* `tag`: the Docker tag if you wish to use a specific version of one of those distributions. See Docker Hub for available tags for [Debian](https://hub.docker.com/_/debian) or [Fedora](https://hub.docker.com/_/fedora). The workflow would fall back to `testing` or `latest`, respectively. + +## Building on your machine In most cases it should be good enough to just run `./buildme.sh` from this folder. @@ -31,6 +53,6 @@ On FreeBSD, FreeNAS, etc. make sure you have the following packages/ports instal * net/rsync * lang/perl5 (or perl5.22 or perl5.26) -In addition, you should make sure that your Perl was compiled with the same family of compiler -(gcc or clang) as you are attempting to use with buildme.sh. Compiler mismatches can cause +In addition, you should make sure that your Perl was compiled with the same family of compiler +(gcc or clang) as you are attempting to use with buildme.sh. Compiler mismatches can cause signficant problems.