forked from lavina/lavina
51 lines
1.1 KiB
Markdown
51 lines
1.1 KiB
Markdown
# Cheatsheet
|
|
|
|
Some useful commands for development and testing.
|
|
|
|
<!-- please use spaces at line start to indicate shell cmds -->
|
|
|
|
## Certificates
|
|
|
|
Following commands require `OpenSSL` to be installed. It is provided as `openssl` package in Arch Linux.
|
|
|
|
Generate self-signed TLS certificate:
|
|
|
|
openssl req -x509 -newkey rsa:4096 -sha256 -days 365 -noenc \
|
|
-keyout certs/xmpp.key -out certs/xmpp.pem \
|
|
-subj "/CN=example.com"
|
|
|
|
Print content of a TLS certificate:
|
|
|
|
openssl x509 -in certs/xmpp.pem -text
|
|
|
|
Make sure `xmpp.key` starts and ends with:
|
|
```
|
|
-----BEGIN RSA PRIVATE KEY-----
|
|
-----END RSA PRIVATE KEY-----
|
|
```
|
|
|
|
|
|
## Protocol Specs
|
|
|
|
XMPP XSDs - [https://xmpp.org/schemas/index.shtml]
|
|
|
|
IRC modern spec - [https://modern.ircdocs.horse/]
|
|
|
|
## Initializing DB with some users
|
|
|
|
sqlite3 db.sqlite < test/init_state.sql
|
|
|
|
Same test migration could be used for integration tests in the future.
|
|
|
|
## Using irssi
|
|
|
|
irssi in a TUI-based IRC client.
|
|
|
|
Connecting:
|
|
|
|
/connect -nocap <address> [<port> [<password> [<nick>]]]
|
|
|
|
Password should be the same as in storage.
|
|
Example:
|
|
|
|
/connect -nocap 127.0.0.1 6667 parolchik1 kek |