2 Commits
Author SHA1 Message Date
awkawbandClaude Sonnet 5 37abda5f39 package: update invoiceninja to v5.13.50, ui to 18.10.2026.1
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-22 17:35:00 -04:00
awkawbandClaude Sonnet 5 4e544f6e46 flake: add cachix binary cache
Adds nixConfig substituter/key for the invoiceninja-nixos cachix cache,
a `just push-cache` target to build and push the package and automated
test to it, and exposes the UI frontend build as a passthru output
(`invoiceninja.ui`) so it can be built and pushed independently.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-22 15:59:29 -04:00
3 changed files with 24 additions and 7 deletions
+7
View File
@@ -1,6 +1,13 @@
{
description = "An Invoice Ninja package and module.";
nixConfig = {
extra-substituters = [ "https://invoiceninja-nixos.cachix.org" ];
extra-trusted-public-keys = [
"invoiceninja-nixos.cachix.org-1:TmRZaji8FFVjjIw9KZmvLrxMxfP+JDThOyOX04z526A="
];
};
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
outputs =
+8
View File
@@ -36,3 +36,11 @@ boot-vm:
test:
nix flake check -L
[doc('Build the package and automated test, then push results to the invoiceninja-nixos cachix cache')]
[group('maintenance')]
push-cache:
nix build --print-out-paths --no-link \
".#invoiceninja" \
".#checks.x86_64-linux.invoiceninja" \
| cachix push invoiceninja-nixos
+9 -7
View File
@@ -14,13 +14,13 @@
let
pname = "invoiceninja";
version = "5.13.48";
version = "5.13.50";
src = fetchFromGitHub {
name = "${pname}";
owner = pname;
repo = pname;
rev = "v${version}";
hash = "sha256-NBAdJMb12czveBBjhdc5pT+53L5lE+o2ol4bM/j1vEc=";
hash = "sha256-UU0Q2WReh8LXBGClQqw1QmOVG6I5Ho27U/u4fTHiwE0=";
postFetch = ''
# add missing integrity fields to lockfile
@@ -28,13 +28,13 @@ let
'';
};
uiVersion = "06.10.2026.1";
uiVersion = "18.10.2026.1";
uiSrc = fetchFromGitHub {
name = "${pname}-ui";
owner = pname;
repo = "ui";
tag = uiVersion;
hash = "sha256-9346AeF/Q4dve+1xlCLoDSg566s3iWbqX2u48QqZGQU=";
hash = "sha256-56szHmIWU9De04Orykp2RxrW0RV87JxB7Y1yvdrSJm4=";
postFetch = ''
# add missing integrity fields to lockfile
@@ -50,7 +50,7 @@ let
nodejs = nodejs_22;
npmDepsHash = "sha256-atPoPW4a97NV8QJQ+eSd0Hua5Ni6oe5fdFRAL6BBzQc=";
npmDepsHash = "sha256-j5XocHvBfMvzNrkaVkTsck2+yPraYWrXQxAbf3EYfIk=";
preConfigure = ''
sed -i 's/VITE_IS_TEST=true/VITE_IS_TEST=false/' .env.example
@@ -74,6 +74,8 @@ php82.buildComposerProject (finalAttrs: {
inherit src version;
pname = "${pname}-composer";
passthru.ui = ui;
nativeBuildInputs = [
jq
nodejs_22
@@ -81,7 +83,7 @@ php82.buildComposerProject (finalAttrs: {
npmHooks.npmBuildHook
];
vendorHash = "sha256-tf5+/OG1jmcpx1oTHm/U12UWvUfDiSKkCW3Icgexo/Y=";
vendorHash = "sha256-z/DX3w0F8FfejnK84yMawKuvft8I4I51Xn7Kgiy/DQo=";
# Upstream composer.json has invalid license, webpatser/laravel-countries package is pointing
# to commit-ref, and php required in require and require-dev
@@ -92,7 +94,7 @@ php82.buildComposerProject (finalAttrs: {
npmDeps = fetchNpmDeps {
name = "${pname}-${version}-npm-deps";
inherit src;
hash = "sha256-ucflODA9mpgTlJTE/+65AY2m2m+UCuFb//9fDTre+OY=";
hash = "sha256-1Bw8m4JdCXQ48p9eO936OP3qW8n0sbrDfzBA2y+dcqY=";
};
preConfigure = ''