Upstream is concatenating CMAKE_INSTALL_LIBDIR onto CMAKE_INSTALL_PREFIX to get
a directory to use for the install_name on Darwin. This is not the right way of
making CMAKE_INSTALL_LIBDIR absolute.
The config was first set up for breakage when the CMAKE_INSTALL_LIBDIR was made relative,
in order to work around the wrong concatenation. This caused the _IMPORT_PREFIX to be
computed by walking up the directory tree from the config file, instead of using
the absolute CMAKE_INSTALL_LIBDIR.
Then outputs were introduced to the derivation and the config was moved to a different
output. Now the prefix it walks up to is the wrong prefix, and the config is busted.
Fix by reverting the original workaround so we have an absolute CMAKE_INSTALL_LIBDIR,
and pulling a patch that fixes the bad concatenation.
On high core machines those easily can fail similar to:
matrix-synapse> tests.storage.test_room_search.MessageSearchTest.test_postgres_web_search_for_phrase
matrix-synapse> ===============================================================================
matrix-synapse> [ERROR]
matrix-synapse> Traceback (most recent call last):
matrix-synapse> File "/build/source/tests/unittest.py", line 122, in new
matrix-synapse> return code(orig, *args, **kwargs)
matrix-synapse> File "/build/source/tests/unittest.py", line 216, in setUp
matrix-synapse> return orig()
matrix-synapse> File "/build/source/tests/unittest.py", line 338, in setUp
matrix-synapse> self.hs = self.make_homeserver(self.reactor, self.clock)
matrix-synapse> File "/build/source/tests/app/test_openid_listener.py", line 34, in make_homeserver
matrix-synapse> hs = self.setup_test_homeserver(
matrix-synapse> File "/build/source/tests/unittest.py", line 606, in setup_test_homeserver
matrix-synapse> hs = setup_test_homeserver(self.addCleanup, **kwargs)
matrix-synapse> File "/build/source/tests/server.py", line 921, in setup_test_homeserver
matrix-synapse> prepare_database(
matrix-synapse> File "/nix/store/2cc0p5apn2yg2fr5ii9mvb7fcwd74y26-matrix-synapse-1.86.0/lib/python3.10/site-packages/synapse/storage/prepare_database.py", line 155, in prepare_database
matrix-synapse> raise UpgradeDatabaseException(EMPTY_DATABASE_ON_WORKER_ERROR)
matrix-synapse> synapse.storage.prepare_database.UpgradeDatabaseException: Uninitialised database: run the main synapse process to prepare the database schema before starting worker processes.
matrix-synapse>