nixpkgs/pkgs/by-name/ki/kimai/package.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

70 lines
1.6 KiB
Nix
Raw Normal View History

2023-12-15 04:12:09 +07:00
{
php,
fetchFromGitHub,
lib,
2024-11-02 05:50:17 +07:00
nixosTests,
2023-12-15 04:12:09 +07:00
}:
php.buildComposerProject2 (finalAttrs: {
2023-12-15 04:12:09 +07:00
pname = "kimai";
2025-01-23 10:36:06 +00:00
version = "2.28.0";
2023-12-15 04:12:09 +07:00
src = fetchFromGitHub {
owner = "kimai";
repo = "kimai";
tag = finalAttrs.version;
2025-01-23 10:36:06 +00:00
hash = "sha256-z8NyPpaG6wNxQ7SSEdtVM/gFTOzxjclhE/Y++M4wN5I=";
2023-12-15 04:12:09 +07:00
};
php = php.buildEnv {
extensions = (
{ enabled, all }:
enabled
++ (with all; [
gd
intl
mbstring
pdo
tokenizer
xsl
zip
])
);
# Asset building and (later) cache building process requires a little bit
# more memory.
extraConfig = ''
memory_limit=384M
'';
};
vendorHash = "sha256-E0l6eeMlXFmsZ1v27/v4DbbmiINxXf+t2H/Xcr/hocs=";
2023-12-15 04:12:09 +07:00
composerNoPlugins = false;
composerNoScripts = false;
postInstall = ''
# Make available the console utility, as Kimai doesn't list this in
# composer.json.
mkdir -p "$out"/share/php/kimai "$out"/bin
ln -s "$out"/share/php/kimai/bin/console "$out"/bin/console
'';
2024-11-02 05:50:17 +07:00
passthru.tests = {
kimai = nixosTests.kimai;
};
2023-12-15 04:12:09 +07:00
meta = {
description = "Web-based multi-user time-tracking application";
homepage = "https://www.kimai.org/";
license = lib.licenses.agpl3Plus;
longDescription = "
Kimai is a web-based multi-user time-tracking application. Works great for
everyone: freelancers, companies, organizations - everyone can track their
times, generate reports, create invoices and do so much more.
";
maintainers = with lib.maintainers; [ peat-psuwit ];
platforms = lib.platforms.all;
};
})