1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 nodejs,
6 pnpm_8,
7}:
8stdenv.mkDerivation rec {
9 pname = "it-tools";
10 version = "2024.10.22-7ca5933";
11
12 src = fetchFromGitHub {
13 owner = "CorentinTh";
14 repo = "it-tools";
15 rev = "v${version}";
16 hash = "sha256-SQAZv+9tINRH10lewcuv8G2qwfulLOP8sGjX47LxeUk=";
17 };
18
19 nativeBuildInputs = [
20 nodejs
21 pnpm_8.configHook
22 ];
23
24 pnpmDeps = pnpm_8.fetchDeps {
25 inherit pname version src;
26 fetcherVersion = 1;
27 hash = "sha256-m1eXBE5rakcq8NGnPC9clAAvNJQrN5RuSQ94zfgGZxw=";
28 };
29
30 buildPhase = ''
31 runHook preBuild
32
33 pnpm build
34
35 runHook postBuild
36 '';
37
38 installPhase = ''
39 runHook preInstall
40
41 mkdir -p $out/lib
42 cp -R ./dist/* $out/lib/
43
44 runHook postInstall
45 '';
46
47 meta = {
48 description = "Self-hostable website containing handy tools for developers, with great UX";
49 homepage = "https://it-tools.tech/";
50 license = lib.licenses.gpl3Only;
51 maintainers = with lib.maintainers; [ akotro ];
52 };
53}