This repository has no description
1.3 kB
57 lines
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 nodejs,
6 pnpm_10,
7 fetchPnpmDeps,
8 pnpmConfigHook,
9}:
10
11# Calino: a static, local-first CalDAV web client. Accounts, settings and the
12# event cache live in the browser; there is no backend. The CalDAV server has
13# to allow the origin Calino is served from via CORS.
14stdenv.mkDerivation (finalAttrs: {
15 pname = "calino";
16 version = "0.38.0";
17
18 src = fetchFromGitHub {
19 owner = "Ivan-Malinovski";
20 repo = "calino";
21 tag = "v${finalAttrs.version}";
22 hash = "sha256-DaT4vJB1/zTPwWnoDvHHQT7XlhmctHVLMIoedgs/1B4=";
23 };
24
25 pnpmDeps = fetchPnpmDeps {
26 inherit (finalAttrs) pname version src;
27 pnpm = pnpm_10;
28 fetcherVersion = 4;
29 hash = "sha256-7V/Ej1xiVu8b4sLiADulSZtZ0kb3nRzTqqYfIGTPxGc=";
30 };
31
32 nativeBuildInputs = [
33 nodejs
34 pnpm_10
35 pnpmConfigHook
36 ];
37
38 buildPhase = ''
39 runHook preBuild
40 pnpm run build
41 runHook postBuild
42 '';
43
44 installPhase = ''
45 runHook preInstall
46 cp -r dist $out
47 runHook postInstall
48 '';
49
50 meta = {
51 description = "Local-first CalDAV calendar web client (static files)";
52 homepage = "https://github.com/Ivan-Malinovski/calino";
53 changelog = "https://github.com/Ivan-Malinovski/calino/blob/v${finalAttrs.version}/CHANGELOG.md";
54 license = lib.licenses.mit;
55 platforms = lib.platforms.all;
56 };
57})