From 0cc08a1f2bcd138943865cc285c9a445c7234b12 Mon Sep 17 00:00:00 2001 From: KokaKiwi Date: Tue, 2 Jul 2024 20:22:04 +0200 Subject: cluster(prod/app/cryptpad): Update CryptPad to 2024.6.0 --- cluster/prod/app/cryptpad/build/default.nix | 20 +++++++++++++++++--- cluster/prod/app/cryptpad/build/deuxfleurs.nix | 4 +++- cluster/prod/app/cryptpad/config/config.js | 6 ++++++ cluster/prod/app/cryptpad/deploy/cryptpad.hcl | 2 +- 4 files changed, 27 insertions(+), 5 deletions(-) (limited to 'cluster/prod') diff --git a/cluster/prod/app/cryptpad/build/default.nix b/cluster/prod/app/cryptpad/build/default.nix index c853a38..83296d5 100644 --- a/cluster/prod/app/cryptpad/build/default.nix +++ b/cluster/prod/app/cryptpad/build/default.nix @@ -3,6 +3,7 @@ , buildNpmPackage , fetchFromGitHub +, fetchzip , nodejs @@ -40,6 +41,14 @@ pname = "${pname}-onlyoffice"; inherit version; + x2t = let + version = "v7.3+1"; + in fetchzip { + url = "https://github.com/cryptpad/onlyoffice-x2t-wasm/releases/download/${version}/x2t.zip"; + hash = "sha256-d5raecsTOflo0UpjSEZW5lker4+wdkTb6IyHNq5iBg8="; + stripRoot = false; + }; + srcs = lib.mapAttrsToList (version: { rev, hash ? lib.fakeHash }: fetchFromGitHub { name = "${final.pname}-${version}-source"; owner = "cryptpad"; @@ -57,20 +66,21 @@ (version: "cp -Tr ${final.pname}-${version}-source $out/${version}") (builtins.attrNames onlyOfficeVersions) )} + cp -Tr $x2t $out/x2t ''; }); in buildNpmPackage rec { pname = "cryptpad"; - version = "2024.3.1"; + version = "2024.6.0"; src = fetchFromGitHub { owner = "cryptpad"; repo = "cryptpad"; rev = version; - hash = "sha256-kXghuktaKicFOz98Siy/OjJ9rlgy6C2BTKkD2OFLE+k="; + hash = "sha256-huIhhnjatkaVfm1zDeqi88EX/nAUBQ0onPNOwn7hrX4="; }; - npmDepsHash = "sha256-fjImdtv0bwgdDvl/BXV0DesreOAW2u8HsNqJ13hrJMw="; + npmDepsHash = "sha256-Oh1fBvP7OXC+VDiH3D+prHmi8pRrxld06n30sqw5apY="; inherit nodejs; @@ -107,6 +117,10 @@ in buildNpmPackage rec { runHook postInstall ''; + passthru = { + inherit onlyOffice; + }; + meta = { description = "Collaborative office suite, end-to-end encrypted and open-source."; homepage = "https://cryptpad.org"; diff --git a/cluster/prod/app/cryptpad/build/deuxfleurs.nix b/cluster/prod/app/cryptpad/build/deuxfleurs.nix index b566dae..0048590 100644 --- a/cluster/prod/app/cryptpad/build/deuxfleurs.nix +++ b/cluster/prod/app/cryptpad/build/deuxfleurs.nix @@ -5,8 +5,10 @@ pkgs = import sources.nixpkgs {}; in rec { cryptpad = pkgs.callPackage ./default.nix {}; - docker = pkgs.callPackage ./docker.nix { + docker = import ./docker.nix { + inherit pkgs; inherit name tag; inherit cryptpad; + withOnlyOffice = true; }; } diff --git a/cluster/prod/app/cryptpad/config/config.js b/cluster/prod/app/cryptpad/config/config.js index c693125..eee8981 100644 --- a/cluster/prod/app/cryptpad/config/config.js +++ b/cluster/prod/app/cryptpad/config/config.js @@ -188,6 +188,12 @@ module.exports = { * DATABASE VOLUMES * ===================== */ + /* + * We need this config entry, else CryptPad will try to mkdir + * some stuff into Nix store apparently... + */ + base: '/mnt/data', + /* * CryptPad stores each document in an individual file on your hard drive. * Specify a directory where files should be stored. diff --git a/cluster/prod/app/cryptpad/deploy/cryptpad.hcl b/cluster/prod/app/cryptpad/deploy/cryptpad.hcl index cc74a5a..b14a093 100644 --- a/cluster/prod/app/cryptpad/deploy/cryptpad.hcl +++ b/cluster/prod/app/cryptpad/deploy/cryptpad.hcl @@ -26,7 +26,7 @@ job "cryptpad" { } config { - image = "kokakiwi/cryptpad:2024.3.1" + image = "kokakiwi/cryptpad:2024.6.0" ports = [ "http" ] volumes = [ -- cgit v1.2.3