diff --git a/nixos/tests/signal-desktop.nix b/nixos/tests/signal-desktop.nix index deddb9d0834..42485cd0da7 100644 --- a/nixos/tests/signal-desktop.nix +++ b/nixos/tests/signal-desktop.nix @@ -44,12 +44,11 @@ import ./make-test-python.nix ({ pkgs, ...} : # - https://github.com/NixOS/nixpkgs/issues/108772 # - https://github.com/NixOS/nixpkgs/pull/117555 print(machine.succeed("su - alice -c 'file ~/.config/Signal/sql/db.sqlite'")) - # TODO: The DB should be encrypted and the following should be machine.fail - # instead of machine.succeed but the DB is currently unencrypted and we - # want to notice if this isn't the case anymore as the transition to a - # encrypted DB can cause data loss!: machine.succeed( - "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -i sqlite" + "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep 'db.sqlite: data'" + ) + machine.fail( + "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -e SQLite -e database" ) ''; }) diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 50161f1be14..38d52b26bff 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -117,9 +117,15 @@ in stdenv.mkDerivation rec { runHook postInstall ''; + # Required for $SQLCIPHER_LIB which contains "/build/" inside the path: + noAuditTmpdir = true; + preFixup = '' + export SQLCIPHER_LIB="$out/lib/Signal/resources/app.asar.unpacked/node_modules/better-sqlite3/build/Release/better_sqlite3.node" + test -x "$SQLCIPHER_LIB" # To ensure the location hasn't changed gappsWrapperArgs+=( --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ] }" + --prefix LD_PRELOAD : "$SQLCIPHER_LIB" ${customLanguageWrapperArgs} )