nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 72 lines 1.7 kB view raw
1{ 2 lib, 3 fetchFromGitHub, 4 fetchYarnDeps, 5 nodejs, 6 yarn, 7 yarnConfigHook, 8 nixosTests, 9 php, 10}: 11 12php.buildComposerProject2 (finalAttrs: { 13 pname = "engelsystem"; 14 version = "3.6.0"; 15 16 src = fetchFromGitHub { 17 owner = "engelsystem"; 18 repo = "engelsystem"; 19 tag = "v${finalAttrs.version}"; 20 hash = "sha256-Pi+nowImUvENx2c4gsku1KkFb3pLM84oT8WevI6ImQg="; 21 }; 22 23 inherit php; 24 25 composerNoDev = true; 26 composerStrictValidation = false; 27 vendorHash = "sha256-JRd5FJviNf5NUI9PwRcMqdDXYBlMoBB6o5yx7dvostE="; 28 29 yarnOfflineCache = fetchYarnDeps { 30 pname = "${finalAttrs.pname}-yarn-deps"; 31 yarnLock = "${finalAttrs.src}/yarn.lock"; 32 hash = "sha256-nyCLM9OF2qwlW+VK38kiRMo6jMlupNFG+91N3Fb/WLY="; 33 }; 34 35 strictDeps = true; 36 37 nativeBuildInputs = [ 38 nodejs 39 yarn 40 yarnConfigHook 41 ]; 42 43 preBuild = '' 44 yarn build 45 ''; 46 47 preInstall = '' 48 rm -rf node_modules 49 50 # link config and storage into FHS locations 51 ln -sf /etc/engelsystem/config.php ./config/config.php 52 rm -rf storage 53 ln -snf /var/lib/engelsystem/storage/ ./storage 54 ''; 55 56 postInstall = '' 57 mkdir $out/bin 58 ln -s $out/share/php/engelsystem/bin/migrate $out/bin/migrate 59 ''; 60 61 passthru.tests = nixosTests.engelsystem; 62 63 meta = { 64 changelog = "https://github.com/engelsystem/engelsystem/releases/tag/v${finalAttrs.version}"; 65 description = "Coordinate your volunteers in teams, assign them to work shifts or let them decide for themselves when and where they want to help with what"; 66 homepage = "https://engelsystem.de"; 67 license = lib.licenses.gpl2Only; 68 mainProgram = "migrate"; 69 maintainers = [ ]; 70 platforms = lib.platforms.all; 71 }; 72})