Find a file
Charles Hall ec7aeb1096 move resolver logic into the resolver
Honestly not sure why it wasn't done like this before. This code is much
less awkward to follow and more compartmentalized.

These changes were mainly motivated by a clippy lint triggering on the
original code, which then made me wonder if I could get rid of some of
the `Box`ing. Turns out I could, and this is the result of that.

Co-authored-by: strawberry <strawberry@puppygock.gay>
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-01-25 19:28:33 -05:00
.gitea
.github chore(deps): update actions/cache action to v4 2024-01-17 12:04:47 -05:00
.gitlab/merge_request_templates
.vscode
complement the great persy, sled, and heed purge (and bump MSRV to 1.74.1) 2024-01-14 20:55:56 -05:00
debian the great persy, sled, and heed purge (and bump MSRV to 1.74.1) 2024-01-14 20:55:56 -05:00
docker the great persy, sled, and heed purge (and bump MSRV to 1.74.1) 2024-01-14 20:55:56 -05:00
nix
src move resolver logic into the resolver 2024-01-25 19:28:33 -05:00
tests
.dockerignore
.envrc
.gitignore use engage for gitlab CI 2024-01-25 19:28:33 -05:00
.gitlab-ci.yml use engage for gitlab CI 2024-01-25 19:28:33 -05:00
APPSERVICES.md
Cargo.lock update deps 2024-01-25 19:28:33 -05:00
Cargo.toml update deps 2024-01-25 19:28:33 -05:00
CODE_OF_CONDUCT.md
conduwuit-example.toml don't send requests to specified list of IP CIDRs 2024-01-25 19:28:33 -05:00
Cross.toml
DEPLOY.md make warning and slight changes to DEPLOY.md for conduwuit 2024-01-25 19:28:33 -05:00
DIFFERENCES.md update DIFFERENCES.md 2024-01-25 19:28:33 -05:00
engage.toml
flake.lock use engage for gitlab CI 2024-01-25 19:28:33 -05:00
flake.nix use engage for gitlab CI 2024-01-25 19:28:33 -05:00
LICENSE
README.md revamp README.md to conduwuit 2024-01-06 14:51:08 -05:00
renovate.json
rustfmt.toml
TURN.md

conduwuit

a well maintained fork of Conduit

What is Matrix?

Matrix is an open network for secure and decentralized communication. Users from every Matrix homeserver can chat with users from all other Matrix servers. You can even use bridges (also called Matrix appservices) to communicate with users outside of Matrix, like a community on Discord.

What is the goal?

An efficient Matrix homeserver that's easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.

Can I try it out?

There are no public conduwuit homeservers available, however conduwuit is incredibly simple to install. It's just a binary, a config file, and a database path.

What is the current status?

conduwuit is a fork of Conduit which is in beta, meaning you can join and participate in most Matrix rooms, but not all features are supported and you might run into bugs from time to time. conduwuit attempts to fix and improve the majority of upstream Conduit bugs or UX issues that are taking too long to be resolved, or unnecessary Matrix or developer politics halting simple things from being merged or fixed, and general inactivity.

There are still a few nice to have features missing that some users may notice:

  • Outgoing read receipts and typing indicators (receiving works)

What's different about your fork than upstream Conduit?

See DIFFERENCES.md

Why does this fork exist? Why don't you contribute back upstream?

I have tried, but:

  • unnecessary Matrix / developer politics
  • bikeshedding unnecessary or irrelevant things in MRs
  • disagreement with how the upstream project is maintained including the codebase
  • infinitely broken CI/CD and no interest in fixing it or improving it
  • upstream maintainer inactivity
  • questionable community members
  • lack of MR reviews or issue triaging and no upstream maintainer interest in receiving help
  • severe bugs, including denial of service and other likely vulnerabilities, not being merged due to things mentioned above
  • no interest in adding co-maintainers to help out

are what are keeping me from contributing. If the state of the upstream project improves, I'm willing to start contributing again. As is, I think if folks want a more polished and well-kept version of Conduit, conduwuit exists for that.

How can I deploy my own?

If you want to connect an Appservice to Conduit, take a look at APPSERVICES.md.

How can I contribute?

  1. Look for an issue you would like to work on and make sure it's not assigned to other users
  2. Ask someone to assign the issue to you (comment on the issue or chat in #conduwuit:puppygock.gay)
  3. Fork the repo and work on the issue.
  4. Submit a PR (please keep contributions to the GitHub repo, main development is done here, not the GitLab repo which exists just as a mirror.)

Contact

If you run into any question, feel free to

Donate

Liberapay: https://liberapay.com/girlbossceo
Ko-fi: https://ko-fi.com/puppygock
GitHub Sponsors: https://github.com/sponsors/girlbossceo

No official conduwuit logo exists. Repo and Matrix room picture is from bran (<3).