14 inherit (nodePackages) nodejs;
17 src = fetchFromGitLab {
18 domain = "framagit.org";
22 hash = "sha256-x8s7eBVmHCY3kAjHjACotCncvZq6OBiLPJGF6hvfawE=";
25 offlineCache = fetchYarnDeps {
26 yarnLock = src + "/yarn.lock";
27 hash = "sha256-LXeAyxZSZOm6GxRuJb5rlHTlQpYa1fdKSENVjwLY4tU=";
30 packageJSON = ./package.json;
32 # for pkg-config dependencies:
34 export npm_config_nodedir=${nodePackages.nodejs}
36 # So that sqlite can be found:
40 nodePackages.prebuild-install
45 yarn --offline run install
48 # Sharp need to find a vips library
56 buildInputs = [ vips ];
58 yarn --offline run install
62 # build need a writeable node_modules
66 cp -r $node_modules node_modules
67 chmod -R +w node_modules
75 export HOME=$(mktemp -d)
77 yarn --offline pack --filename gancio.tgz
79 tar -C deps/gancio/ --strip-components=1 -xf gancio.tgz
86 updateScript = ./update.sh;
88 inherit (nixosTests) gancio;
93 description = "Shared agenda for local communities, running on nodejs";
94 homepage = "https://gancio.org/";
95 changelog = "https://framagit.org/les/gancio/-/raw/master/CHANGELOG.md";
96 license = lib.licenses.agpl3Plus;
97 platforms = lib.platforms.linux;
98 mainProgram = "gancio";
99 maintainers = with lib.maintainers; [ jbgi ];