Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '26'

- run: npm ci
- run: npm run build
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/master.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '26'

- run: npm ci
- run: npm run build
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,13 +39,13 @@ jobs:
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version: '18'
node-version: '26'

- run: npm ci
- run: npm run build

- name: GoReleaser
uses: goreleaser/goreleaser-action@v6.4.0
uses: goreleaser/goreleaser-action@v7.2.3
with:
args: release --clean
env:
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,7 @@
/vendor/
/app/
/node_modules/
/result
/cmd/audimance/audimance
/cmd/autotrigger/autotrigger
/cmd/redirector/redirector
47 changes: 36 additions & 11 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,32 @@ builds:
- amd64
- arm64
- arm
- binary: autotrigger
id: autotrigger
main: ./cmd/autotrigger
env:
- CGO_ENABLED=0
goos:
- windows
- darwin
- linux
goarch:
- amd64
- arm64
- arm
- binary: redirector
id: redirector
main: ./cmd/redirector
env:
- CGO_ENABLED=0
goos:
- windows
- darwin
- linux
goarch:
- amd64
- arm64
- arm

archives:
- id: audimance
Expand All @@ -28,14 +54,13 @@ changelog:
- '^docs:'
- '^test:'

dockers:
- dockerfile: Dockerfile.goreleaser
image_templates:
- 'cycoresystems/audimance:{{ .Tag }}'
- 'cycoresystems/audimance:{{ .Major }}'
- 'cycoresystems/audimance:{{ .Major }}.{{ .Minor }}'
- 'cycoresystems/audimance:latest'
- 'ghcr.io/cycoresystems/audimance:{{ .Tag }}'
- 'ghcr.io/cycoresystems/audimance:{{ .Major }}'
- 'ghcr.io/cycoresystems/audimance:{{ .Major }}.{{ .Minor }}'
- 'ghcr.io/cycoresystems/audimance:latest'
dockers_v2:
- images:
- cycoresystems/audimance
- ghcr.io/cycoresystems/audimance
tags:
- "{{ .Tag }}"
- "{{ .Major }}"
- "{{ .Major }}.{{ .Minor }}"
- "latest"
dockerfile: Dockerfile.goreleaser
3 changes: 2 additions & 1 deletion Dockerfile.goreleaser
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
FROM gcr.io/distroless/static
COPY audimance /go/bin/audimance
ARG TARGETPLATFORM
COPY $TARGETPLATFORM/audimance /go/bin/audimance
WORKDIR /data
ENTRYPOINT ["/go/bin/audimance"]
8 changes: 1 addition & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,7 @@ language governing permissions and limitations under the License.

## Compatibility

Audimance can currently only be built with versions of Node <= 19.9.0. This is due to its use of
Snowpack, which no longer maintained and is incompatible with changes in Node's ES module support
introduced in Node.js 20.

We are planning to migrate Audimance to a fully supported build tool (probably Vite), but in the
meantime we recommend using [nvm](https://github.com/nvm-sh/nvm) to manage Node.js versions.
If you have nvm installed, ```nvm use``` will switch to the correct version of Node.js.
Audimance is now compatible with at least Node v26.
Comment thread
Ulexus marked this conversation as resolved.

## Why?

Expand Down
7 changes: 0 additions & 7 deletions build.sh

This file was deleted.

File renamed without changes.
File renamed without changes.
25 changes: 25 additions & 0 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

78 changes: 78 additions & 0 deletions flake.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
{
description = "audimance";

# Nixpkgs / NixOS version to use.
inputs.nixpkgs.url = "nixpkgs/nixos-26.05";

outputs =
{ self, nixpkgs }:
let
# Generate a user-friendly version number.
version = builtins.substring 0 8 self.lastModifiedDate;

# System types to support.
supportedSystems = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-linux"
"aarch64-darwin"
];

# Helper function to generate an attrset '{ x86_64-linux = f "x86_64-linux"; ... }'.
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;

# Nixpkgs instantiated for supported system types.
nixpkgsFor = forAllSystems (system: import nixpkgs { inherit system; });

in
{

# Provide some binary packages for selected system types.
packages = forAllSystems (
system:
let
pkgs = nixpkgsFor.${system};
in
{
app = pkgs.buildNpmPackage {
pname = "audimance-app";
inherit version;

src = ./.;

nativeBuildInputs = [
pkgs.nodejs_26
];

vendorHash = "sha256-Up6pjR9C2Z5wX6yLnEytdqjGCqKMCbLUvEzTZIMN8sU=";
npmDepsHash = "sha256-6dDY4qR40LYpcVA8lkhSc3McupBpkYAOK8eDS35/Fvo=";
npmDepsFetcherVersion = 2;
};

default = pkgs.buildGoModule {
pname = "audimance";
inherit version;
src = ./.;

buildInputs = [ self.packages.${system}.app ];
nativeBuildInputs = [
pkgs.goreleaser
];

preBuild = ''
mkdir app
cp ${self.packages.${system}.app}/lib/node_modules/audimance-app/app/* app/
'';

vendorHash = "sha256-c9foWekoQRXSwFpmk+gQbmqN5aqzhG9ABq9DaCoHagI=";
};
}
);

overlays.default = (
final: prev: {
audimance = self.packages.${prev.system}.default;
}
);
};
}
8 changes: 2 additions & 6 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module github.com/CyCoreSystems/audimance

go 1.21
go 1.24

require (
github.com/gofrs/uuid v4.4.0+incompatible
Expand All @@ -17,22 +17,18 @@ require (
github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/kr/pretty v0.3.1 // indirect
github.com/kr/text v0.2.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
github.com/prometheus/client_model v0.5.0 // indirect
github.com/prometheus/common v0.45.0 // indirect
github.com/prometheus/procfs v0.12.0 // indirect
github.com/rogpeppe/go-internal v1.10.0 // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect
github.com/valyala/fasttemplate v1.2.2 // indirect
golang.org/x/crypto v0.15.0 // indirect
golang.org/x/sys v0.14.0 // indirect
golang.org/x/text v0.14.0 // indirect
golang.org/x/time v0.4.0 // indirect
google.golang.org/protobuf v1.31.0 // indirect
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
)
Loading
Loading