Initial import of HortusFox Nix flake packaging
Packages HortusFox from source via php.buildComposerProject and provides a NixOS module (services.hortusfox-web) to deploy it as a full service (mariadb + phpfpm + nginx/caddy + ACME + cron timers). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+30
@@ -0,0 +1,30 @@
|
||||
{ lib, php, fetchFromGitHub, ... }:
|
||||
|
||||
# buildComposerProject installs the project to
|
||||
# $out/share/php/<pname>/ (with vendor/ populated)
|
||||
php.buildComposerProject (finalAttrs: {
|
||||
pname = "hortusfox-web";
|
||||
version = "5.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "danielbrendel";
|
||||
repo = "hortusfox-web";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-O4I25YntVL+UwWATRiI5h9MYkVeN7JEmrRLt0eVwMTs=";
|
||||
};
|
||||
|
||||
# composer.lock is committed upstream, so a fixed vendorHash works.
|
||||
vendorHash = "sha256-b9t5S12TJoiup7fkQ4bo2xH+CvEt6MqOrQxQ/gJ4Deg=";
|
||||
|
||||
# No console entrypoint to expose on PATH; we call `php asatru` ourselves.
|
||||
composerNoDev = true;
|
||||
|
||||
composerStrictValidation = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Self-hosted collaborative plant management system";
|
||||
homepage = "https://github.com/danielbrendel/hortusfox-web";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
})
|
||||
Reference in New Issue
Block a user