]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - pkgs/webapps/peertube/default.nix
Upgrade syden peertube to flake
[perso/Immae/Config/Nix.git] / pkgs / webapps / peertube / default.nix
index 7889ceeb23f5feb93a472ebff8ecaead0d79f2f0..c38cc156b0a6e9b53acf01047e99b9007d05b1c0 100644 (file)
@@ -1,14 +1,17 @@
-{ ldap ? false, sendmail ? false, light ? null, runCommand, libsass
+{ ldap ? false, sendmail ? false, light ? null, syden ? false, runCommand, libsass
 , lib, stdenv, rsync, fetchzip, youtube-dl, fetchurl, mylibs, python, nodejs, nodePackages, yarn2nix-moretea }:
 let
   nodeHeaders = fetchurl {
     url = "https://nodejs.org/download/release/v${nodejs.version}/node-v${nodejs.version}-headers.tar.gz";
-    sha256 = "1df3yhlwlvai0m9kvjyknjg11hnw0kj0rnhyzbwvsfjnmr6z8r76";
+    sha256 = "12415ss4fxxafp3w8rxp2jbb16y0d7f01b7wv72nmy3cwiqxqkhn";
   };
   source = mylibs.fetchedGithub ./peertube.json;
   patchedSource = stdenv.mkDerivation (source // rec {
     phases = [ "unpackPhase" "patchPhase" "installPhase" ];
-    patches = [ ./yarn_fix_http_node.patch ] ++ lib.optionals ldap [ ./ldap.patch ] ++ lib.optionals sendmail [ ./sendmail.patch ];
+    patches = [ ./yarn_fix_http_node.patch ]
+      ++ lib.optionals ldap [ ./ldap.patch ]
+      ++ lib.optionals sendmail [ ./sendmail.patch ]
+      ++ lib.optionals syden [ ./syden.patch ];
     installPhase = let
       # Peertube supports several languages, but they take a very long
       # time to build. The build script accepts --light which builds
@@ -37,18 +40,20 @@ let
   '';
 
   yarnModulesConfig = {
-    # all = {
-    #   buildInputs = [ yarn2nix-moretea.yarn2nix.src ];
-    # };
     bcrypt = {
       buildInputs = [ nodePackages.node-pre-gyp ];
       postInstall = let
+        node_module_version = "72";
         bcrypt_lib = fetchurl {
-          url = "https://github.com/kelektiv/node.bcrypt.js/releases/download/v3.0.7/bcrypt_lib-v3.0.7-node-v64-linux-x64-glibc.tar.gz";
-          sha256 = "0gbq4grhp5wl0f9yqb4y43kjfh8nivfd6y0nkv1x6gfvs2v23wb0";
+          url = "https://github.com/kelektiv/node.bcrypt.js/releases/download/v3.0.7/bcrypt_lib-v3.0.7-node-v${node_module_version}-linux-x64-glibc.tar.gz";
+          sha256 = "0kpm9j0yc4lqsafldfsql3m72rr1fapljlb6ddxvy3zi13rb7ppx";
         };
       in
         ''
+          if [ "$(node -e "console.log(process.versions.modules)")" != "${node_module_version}" ]; then
+            echo "mismatching version with nodejs please update bcrypt derivation"
+            false
+          fi
           mkdir lib && tar -C lib -xf ${bcrypt_lib}
           patchShebangs ../node-pre-gyp
           npm run install