element-desktop icon indicating copy to clipboard operation
element-desktop copied to clipboard

Added pre-requisites for building native modules on linux and updated native-node-modules.md

Open ttheshreeyasingh opened this issue 3 years ago • 6 comments

Added file linux-requirements.md in element-desktop/docs and updated native-node-modules.md, put the config part before the yarn start step for more clarity. Also added steps to install SQLCipher library in Adding Seshat for search in E2E encrypted rooms. Made all the changes requested on the previous PR. PS: Created a new PR due to some merging issues faced Signed-off-by: Shreeya [email protected]


This PR currently has no changelog labels, so will not be included in changelogs.

A reviewer can add one of: T-Deprecation, T-Enhancement, T-Defect, T-Task to indicate what type of change this is, or add Type: [enhancement/defect/task] to the description and I'll add them for you.

ttheshreeyasingh avatar Apr 21 '22 16:04 ttheshreeyasingh

(You could have force pushed to your branch after cleaning locally)

You did not address my comment.

ArchangeGabriel avatar Apr 21 '22 16:04 ArchangeGabriel

@andybalaam Hi, could you re-review this PR?

(You could have force pushed to your branch after cleaning locally)

You did not address my comment.

Sorry, was facing some issues, my bad. regarding your comment, should I not mention the installation of SQLCipher at all? image and change this as well?

ttheshreeyasingh avatar Apr 21 '22 16:04 ttheshreeyasingh

Sorry, was facing some issues, my bad. regarding your comment, should I not mention the installation of SQLCipher at all? image and change this as well?

Yeah, you could instead write “Seshat also depends on the SQLCipher library to store its data in encrypted from on disk. This dependency is however vendored and compiled statically to avoid conflicts with any other sqlite library that might be loaded.”.

ArchangeGabriel avatar Apr 21 '22 16:04 ArchangeGabriel

Yeah, you could instead write “Seshat also depends on the SQLCipher library to store its data in encrypted from on disk. This dependency is however vendored and compiled statically to avoid conflicts with any other sqlite library that might be loaded.”.

Since it's the dependency is taken care of and the user doesn't need to run any command, I've removed the sentence as it felt unnecessary. Does that work?

ttheshreeyasingh avatar Apr 21 '22 16:04 ttheshreeyasingh

Fine by me, but I’m not in anyway a decision maker here. ;)

ArchangeGabriel avatar Apr 21 '22 19:04 ArchangeGabriel

Unfortunately the story with SQLCipher here is a bit more complex. The doc says to add matrix seshat directly with yarn, which I think is a bit odd (I filed https://github.com/vector-im/element-web/issues/21883 for that) but this means it won't build its own SQLCipher, static or otherwise, like it does when running yarn run build:native, so you'll still need an SQLCipher separately. IMO the best thing to do would be for the doc to just direct the user to yarn run build:native though.

In general, I'd prefer that we didn't copy & paste installation instructions for everything into our doc, as it's more for us to keep up to date: I'd suggest just referring to the project homepage and telling the user to install things however they prefer. On Node, I wouldn't bother with this in this doc at all since it's necessary for building the app at all, not just the native modules.

dbkr avatar Apr 22 '22 12:04 dbkr