nixos/lib/tempVendoredDavis.nix
2025-12-20 14:30:29 -05:00

46 lines
1.2 KiB
Nix

{
lib,
fetchFromGitHub,
php,
nixosTests,
}:
php.buildComposerProject2 (finalAttrs: {
pname = "davis";
version = "5.3.0";
src = fetchFromGitHub {
owner = "tchapi";
repo = "davis";
tag = "v${finalAttrs.version}";
hash = "sha256-YLVfcoC8cIcCfi7R2zWXNxD4P+KIXOCL+MqFEt2Z7Tc=";
};
vendorHash = "sha256-ub2iv4455AAP9ohN2Zh+8DCbYT1uJOasMeZ/P7tDdw0=";
composerNoPlugins = false;
postInstall = ''
chmod -R u+w $out/share
# Only include the files needed for runtime in the derivation
mv $out/share/php/davis/{migrations,public,src,config,bin,templates,tests,translations,vendor,symfony.lock,composer.json,composer.lock} $out
# Save the upstream .env file for reference, but rename it so it is not loaded
mv $out/share/php/davis/.env $out/env-upstream
rm -rf "$out/share"
'';
passthru = {
php = php;
tests = {
inherit (nixosTests) davis;
};
};
meta = {
changelog = "https://github.com/tchapi/davis/releases/tag/v${finalAttrs.version}";
homepage = "https://github.com/tchapi/davis";
description = "Simple CardDav and CalDav server inspired by Baïkal";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ramblurr ];
};
})