News for hackers. Stuff that matters.

GamePad64

Show HN: Notifico – Open-Source notification server with Email & Slack support

https://notifico.tech/

Hello, HN! I have built an open source notification server, that supports Email, SMS (SMPP), Slack, Telegram, WhatsApp Business.It is called Notifico.I have worked in a bunch of tech companies, and in each of them there was a half-baked, in-house built notification server for sending emails and other notifications. So, I've collected the requirements, processed them and written the...

( Read More... | 2 comments | 3 points | on HN )
Milvus had very limited filter support, which has now been removed from its release. And with Qdrant you can do, for example, a geo-filter on top of semantic search
Nope, it is not purely static. It is static-first (declarative), bot running a command and parsing its output or delegating the completion to some shell code is a planned feature.
Also, the accompanying code: https://github.com/openautocomplete/oactool It currently supports generating completion code for fish (experimental), but zsh and bash are similar to it, but a bit complicated, so it will be implemented later.
Thanks for the reply! I've googled hard, but couldn't find anything like that. The problem I see is that Shellac is dynamic. So, it is pretty intrusive. This is how Click autocompletion works in Python. Also, I don't think, that Shellac is mutually exclusive with OpenAutoComplete. Being a Shell-to-autocompletion server protocol, it could use openautocomplete library as a data source.
Well, before even writing anything, I've looked up into PS docs, and noticed Register-ArgumentCompleter cmdlet. It could definitely be used for autocompletion purposes, but we need something like a database of autocomplete definitions for common utilities to get started, and a tool to read such a database. So, I propose to create a format for autocomplete definitions and invite everyone to discuss it.
I'have just posted something like "request for comments" thing, so we could talk and make a proper solution. I've tried to use PowerShell in Windows, and it was pure pain: the tools, that are written in PS work fine, everything else (like git, InnoSetup, CMake, everything else...) just didn't have autocompletion at all. Maybe, some tools, like git do have shell plugins (like posh-git), but the problem in general still persists. Also, I am using Poetry and Werf utilities, that have built-in generator for autocomplete (bash, zsh and fish), but it doesn't work very well and the developers had to write it by themselves.

So, I've tried to make the spec as generic as possible, so it could support current compicated cases, like git (with its infinite number of commands and options), scp (with its remote file listing), some old Windows commands (like "format" for windows95 and so on).

Also, this format could be used with a single-pass recursive generator, because each usage pattern is just a JSON array and all its properties can be defined in-place. So, it would be okay to use it with languages, like C, that have no JSON serializer built-in.

Yes, I am planning versions for Arch and Fedora soon. Android version is in plans, too, but I need to make desktop version stable first.
Actually, there is per-chunk HMAC support in the protocol and present revisions add HMAC for each chunk into Meta: https://github.com/Librevault/librevault-common/blob/master/...

This HMAC is computed over plaintext chunks and used to determine, if we already have this chunk in database (because of random IV we get different hash of ciphertext every time), not for verification.

And what is wrong about verifying integrity and authenticity by hash-then-sign?

Yes. The protocol is pretty stable now, it hasn't been changed for a while and has necessary extension points, so I can add more features in the future. I will publish the protocol specification in two weeks.
I have no server infrastructure. ZK in this context means, that you can create an encrypted share. But, I think, it is not an appropriate term here.
It is headless by design. GUI and synchronization daemon are separate applications, that communicate using the WebSocket protocol. So, you can install your sync daemon to NAS and you are good.

But to let you control the daemon via the net, I am making Web UI, that will enable you to fully control synchronization process from your browser.

During the indexing procedure, the value of SHA3-224(AES256(data)) is computed for each chunk.

Then, the list of these hashes is placed into Meta structure. After that, this Meta is ECDSA-signed using a EC point, decoded from A-type secret.

Any other type of secret contain the public part of EC point and can verify the signature.

I don't use it on GitHub page. It updates more frequently than the site. The next revision of the website will contain a new motto, but I have to make a new motto first.
Maybe, you have a GitHub page?
But it is still a web ui, not a native one. Also, SyncTrayzor itself is not cross-platform, so Linux users have to install syncthing-inotify for watching the directories for changes.
There are certain differences between Librevault and Syncthing now:

* Librevault is simpler for the end user. From my perspective, Syncthing doesn't aim to be user-friendly. More like geek-only solution.

* Librevault supports adding a folder by key, like BTSync. And also, it supports a URL scheme for adding a new folder just by clicking it in the browser: https://librevault.com/blog/lvlt-scheme/

* inotify, fsevents, kqueue and ReadDirectoryChangesW support out of the box. Syncthing requires you to install a separate third-party plugin for this.

* DHT support, so it doesn't need any trackers for peer discovery. DHT is Mainline DHT, so it can connect to BitTorrent clients and ask them for peers. It means, that Librevault can participate in the world's largest distributed peer discovery network and will not suffer the lack of DHT nodes.

Also, it has a proper (!) desktop UI inspired by BitTorrent Sync 1.3.

Thank you for advice. This revision of the website is a stub, it does not contain any useful information, just some general words. It will be heavily reworked soon.

Also, I will add the comparison table with Syncthing, BTSync and some cloud storages, like Dropbox.