6
1
mirror of https://git.mills.io/saltyim/saltyim.git synced 2024-06-25 00:08:26 +00:00
Commit Graph

360 Commits

Author SHA1 Message Date
James Mills
cb7441efa7
Fix Dockerfile to remove non-existent internal/web paths 2023-04-23 20:01:03 +10:00
James Mills
4289174761
Update version of kaniko used to build docker images 2023-04-23 20:00:19 +10:00
James Mills
376de27023 Split out the PWA into its own repository (#194)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/194
2023-04-23 09:31:43 +00:00
James Mills
97e1ae2a65 Upgrade msgbus to v0.1.21 (#193)
Fixes #24

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/193
2023-04-23 02:37:59 +00:00
James Mills
11973f1257
Trigger CI 2023-03-27 00:54:29 +10:00
James Mills
d5c9b6d825
Fix client.Read() context usage 2023-03-12 15:17:57 +10:00
James Mills
60abd2fae6
Fix Docker image 2023-03-12 14:43:50 +10:00
xuu
f351c73319 fix: use default client for testing (#191)
Co-authored-by: Jon Lundy <me@sour.is>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/191
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: xuu <xuu@noreply@mills.io>
Co-committed-by: xuu <xuu@noreply@mills.io>
2023-03-05 22:05:24 +00:00
James Mills
778133f763
Fix typo 2023-02-28 08:47:14 +10:00
James Mills
ae26edfa42
Rename package to go.salty.im/saltyim 2023-02-28 08:37:50 +10:00
James Mills
15a64de828 Fix CI by using my local exec runner(s) (#190)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/190
2023-01-28 07:07:19 +00:00
lyse
c67f5c69b2 Fix typos (#186)
Disclaimer: I have no idea what I'm looking at.

Some tests fail, but I believe they have nothing to do with my changes
(fingers crossed). `make certs` doesn't work, I don't have `minica`
installed and don't want to litter my system with even more stuff. It's
bad enough that I got a shitload of Go dependencies downloaded when
running `make test`.

Co-authored-by: Lysander Trischler <twtxt@lyse.isobeef.org>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/186
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: lyse <lyse@noreply@mills.io>
Co-committed-by: lyse <lyse@noreply@mills.io>
2023-01-27 23:24:19 +00:00
James Mills
f3b7f14e5e Add .Blobs() service object to the client for easier usage of the Blob API (#184)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/184
2023-01-27 23:20:49 +00:00
James Mills
ba77f9e32c Refactor read options with functional options for easier usage (#183)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/183
2023-01-27 23:19:52 +00:00
James Mills
57970ff67f Add resolver tests (#182)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/182
2023-01-27 23:14:03 +00:00
James Mills
36f9b25ec9 Add format tests (#181)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/181
2023-01-27 23:13:51 +00:00
James Mills
09a513e2ec Fix CI (hopefully) by splitting our build and test (#185)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/185
2023-01-27 14:44:14 +00:00
James Mills
14857206cb Add client e2e integration tests (#180)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/180
2023-01-26 22:30:16 +00:00
James Mills
8cdda7118d Fix tests (#179)
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/179
2023-01-26 04:27:20 +00:00
James Mills
ddd16c202f Add blob service and support for signing and verifying HTTP requests (#178)
Alternative to #177

The way this works is:

Client:

- Client creates a normal `net/http.Request{}` object using the `Request()` function in `utils.go`. The `http.Request{}` object is then signed using the Client's Ed25519 private key.
- The HTTP Method and Path (_note this is important_) are hashed, as well as the request body (if any) using the FNV128a hashing algorithm.
- This hash is then signed by the Client's's Ed25519 private key.
- The resulting signature is then encoded to Base64 (_standard encoding_) and added to the HTTP headers as a `Signature:` header.
- In addition the Client's Ed25519 public key is added to the HTTP headers as `Signer:`

Server:

- The server calculates the same FNV128a hash of the HTTP Request Method and Path and the body (if any)
- The server decodes the HTTP header `Signature:`
- The server then uses the Client's Ed25519 public key in the HTTP header `Signer:` to verify the signature of the `Signature:` HTTP header which gives us back the original FNV128a hash the Client calculated for the request.
- The server then compares the Client's hash with the expected hash to see if they compare equally.

Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Co-authored-by: Jon Lundy <jon@xuu.cc>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/178
Reviewed-by: xuu <xuu@noreply@mills.io>
2023-01-25 23:05:29 +00:00
James Mills
96d8afcbef
Add package level docs 2023-01-14 12:48:22 +10:00
James Mills
2e3907a3b3
Add doc strings for all the thigns 2023-01-14 12:46:47 +10:00
James Mills
ae2199bff4
Fix version handling 2023-01-14 12:05:29 +10:00
James Mills
03c863c028
Fix version output when no version is injected (i.e: go install) 2023-01-14 10:38:53 +10:00
James Mills
a42f9e85ec
Add an improved version string contianing the commit timestamp 2023-01-14 10:27:14 +10:00
James Mills
95663345d4 Adds support for multiple chats (#174)
Closes #146

See attached screenshots.

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Co-authored-by: James Mills <1290234+prologic@users.noreply.github.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/174
Reviewed-by: xuu <xuu@noreply@mills.io>
2023-01-11 22:58:07 +00:00
James Mills
801493a85b
Update logo 2022-10-24 14:40:30 +10:00
xuu
318c3275b5 fix: Make register lookup broker if default to blank (#175)
Co-authored-by: Jon Lundy <jon@xuu.cc>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/175
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: xuu <xuu@noreply@mills.io>
Co-committed-by: xuu <xuu@noreply@mills.io>
2022-10-15 21:45:13 +00:00
James Mills
37135ce6af
Fix possible nil map from State.Load() 2022-10-05 13:21:55 +10:00
James Mills
7c149128b4
Fix README logo by centering it 2022-09-25 13:00:55 +10:00
James Mills
c91603b11c
Fix logo extension 2022-09-25 12:58:48 +10:00
James Mills
2d6abaf918
Fix README (Fixes #74) 2022-09-25 12:52:51 +10:00
James Mills
5253269b19 Fix consistent coloring of nicks using taigrr's colorhash library (#173)
Fixes #81

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/173
2022-09-25 02:29:27 +00:00
Aoi Koizumi (古泉 あおい)
bc12377edb
Add OpenBSD instructions, based on my personal setup. Update docs/Deployment.md
Signed-off-by: Aoi Koizumi (هڈ¤و³‰ مپ‚مپٹمپ„) <koizumi.aoi@kyoko [dash]
project [dot] wer [dot] ee>
2022-08-27 12:25:23 +10:00
James Mills
2b32d9539f
fix: Fix links to Deployment and Development guides in README 2022-06-12 12:52:03 +10:00
James Mills
b227f57b7a
feat: Add development guide with screenshots and refactor docs 2022-06-12 12:49:19 +10:00
James Mills
7420ff47cc
Update PWA 2022-05-23 00:10:37 +10:00
James Mills
c145c27325
Update CHANGELOG for 0.0.22 2022-05-14 01:01:00 +10:00
James Mills
8a18428b87
Fix regression in 330701d causing register to no longe rwork 2022-05-14 01:00:15 +10:00
James Mills
cea7e7fcf6
Update CHANGELOG for 0.0.21 2022-05-07 08:50:44 +10:00
James Mills
9c5fec5caf Fix bug when endpoint is invalid or not configured proeprly and fails lookup (#171)
Fixes #169

This now behaves like this:

```
/Users/prologic/Projects/saltyim/saltyim # ./salty-chat write prologic@mills.io test
WARN[0000] error looking up user endpoint                error="error looking up user testing123@shortcircuit.net.au: non-2xx response received: 404 Not Found"
error initializing client: unable to find your endpoint for testing123@shortcircuit.net.au
/Users/prologic/Projects/saltyim/saltyim #
```

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/171
Reviewed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-05-06 22:44:06 +00:00
James Mills
dc432abdc3 Fix handling for invalid or no endpoint passed to make-user (#170)
See #169 which this patch partially fixes one issue found but not the most critical one (hence this PR does not close the issue)

Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/170
Reviewed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-05-06 21:48:07 +00:00
James Mills
09826d2caa
Update CHANGELOG for 0.0.20 2022-05-02 12:26:27 +10:00
James Mills
ee86b96ee5
Fix goreleaser config 2022-05-02 12:24:32 +10:00
James Mills
9727105c4b
Update CHANGELOG for 0.0.20 2022-05-02 12:19:31 +10:00
mlctrez
504c66f7c1 make outbox.state same as client.state to allow persisting last message retrieved (#168)
After testing quite a bit on the saltyim/app client, I tracked down why all outbox messages were being pulled every time a new client starts up.

I believe the outbox client state should be shared with the parent client to allow the last message retrieved from the oubox to be persisted.

Co-authored-by: mlctrez <mlctrez@gmail.com>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/168
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: mlctrez <mlctrez@noreply@mills.io>
Co-committed-by: mlctrez <mlctrez@noreply@mills.io>
2022-04-29 21:59:40 +00:00
m u t e f a l l
12fc010ce7 docker swarm deployment and dns documentation (#167)
this changeset addresses the need for a simple docker swarm deployment and setup of dns records on cloudflare.

Co-authored-by: m u t e f a l l <mutefall@noreply.mills.io>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/167
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: m u t e f a l l <mutefall@noreply@mills.io>
Co-committed-by: m u t e f a l l <mutefall@noreply@mills.io>
2022-04-26 01:44:51 +00:00
James Mills
af206c0ace
Fix certs Makefile target for local dev and fix alternate subject name 2022-04-15 18:11:46 +10:00
James Mills
994895681d Fix handling for bad endpoints from mixbehaving clients proxying send requests (#163)
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/163
Reviewed-by: xuu <xuu@noreply@mills.io>
2022-04-11 22:09:35 +00:00
Sheldon Smith
823c112547 CSS fixes for desktop (#161)
As outlined in [issue #155](https://git.mills.io/saltyim/saltyim/issues/155) and will also improve things such as overflow not working (there's currently no wrapping on overflow) and changing the sidebar and text input to be fixed so only the chatbox scrolls and the text input doesn't overflow off of the view area.

Reviewed-on: https://git.mills.io/saltyim/saltyim/pulls/161
Reviewed-by: James Mills <james@mills.io>
Co-authored-by: Sheldon Smith <screem@noreply@mills.io>
Co-committed-by: Sheldon Smith <screem@noreply@mills.io>
2022-04-11 09:59:52 +00:00