Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mautrix-signal: fix build with goolm, enable checks & version test #353730

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

christoph-heiss
Copy link
Contributor

On current master, building mautrix-signal is broken when using witGoolm = true, as it needs to explicitly link to libstdc++ (which is transitivly required).

Further, enable checks on the package, which only need a small workaround for properly finding libstdc++ in the check phase -- hopefully that is acceptable, but maybe there is a better solution to this.

Finally, add a basic version test for the resulting binary with testers.testVersion.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

pkgs/servers/mautrix-signal/default.nix Outdated Show resolved Hide resolved
pkgs/servers/mautrix-signal/default.nix Outdated Show resolved Hide resolved
pkgs/servers/mautrix-signal/default.nix Outdated Show resolved Hide resolved
@niklaskorz
Copy link
Contributor

niklaskorz commented Nov 5, 2024

Seems to run fine so far on my own server. Interestingly much better than the last time I testdrove goolm!

When building with goolm support, libstdc++ must be linked, as
libsignal-ffi depends on it being linked.

When building with (deprecated) libolm, it's pulled in transitively, it
seems -- and it that case, this is effectively a no-op.

Signed-off-by: Christoph Heiss <[email protected]>
Signed-off-by: Christoph Heiss <[email protected]>
Signed-off-by: Christoph Heiss <[email protected]>
@christoph-heiss
Copy link
Contributor Author

Seems to run fine so far on my own server. Interestingly much better than the last time I testdrove goolm!

Thanks for reviewing & testing!

@niklaskorz
Copy link
Contributor

If this runs sufficiently well, we could consider switching the default to withGoolm ? true in the future.
As the current libolm default results in this package being marked as insecure, it already requires further user configuration to use.

@christoph-heiss
Copy link
Contributor Author

If this runs sufficiently well, we could consider switching the default to withGoolm ? true in the future. As the current libolm default results in this package being marked as insecure, it already requires further user configuration to use.

Yeah, sounds like a good idea, since - as you say - already requires some form of intervention anyway.

@wegank wegank added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants