matrix-org / matrix-ircd

An IRCd implementation backed by Matrix.
Apache License 2.0
224 stars 41 forks source link

Add snapcraft packaging #63

Closed digitalrayne closed 4 years ago

digitalrayne commented 4 years ago

Hello,

This PR adds snapcraft packaging information for matrix-ircd - which in addition to allowing folks to easily deploy the daemon, also adds a level of confinement to the process. I have added a small wrapper to allow the daemon to use a .env file to read parameters, so that the daemon can easily be run as a systemd unit. I have been working on creating snapcraft packaging for various parts of the Matrix ecosystem and matrix-ircd is something I'm keen to get deploying via snap, along with synapse which has also had snapcraft packaging metadata merged.

I have tested this locally and haven't found any issues.

If/when this is merged, it would be possible to register this repo with the snapcraft store (snapcraft.io) so that builds could automatically be pushed as commits are pushed to this repo - the metadata from the git repository is currently used by this snapcraft packaging to derive version information, so if annotated tags were added along with releases, the snap will pick them up and use that version when setting the version of the package.

Please let me know if you have any questions or concerns!

Signed-off-by: James Hebden james@ec0.io

digitalrayne commented 4 years ago

I've been running this on my homeserver via the snap for a couple of days now, and can happily report that there don't seem to be any issues with running this from the built snap. Also, matrix-ircd is wonderful.