HNHacker News
TopNewBestAskShowJobs

grepular

13,526 karma · joined December 29, 2009

  ```

  -----BEGIN PGP SIGNED MESSAGE-----
  Hash: SHA512
  
  Last Updated: 2026-Oct-13
    
  Director Engineering @ https://redsift.com/
    
  Blog:     https://www.grepular.com/blog/
  Code:     https://gitlab.com/grepular
  Docker:   https://hub.docker.com/u/grepular
  LinkedIn: https://www.linkedin.com/in/mikecardwell
    
  Email:    mike.cardwell([-at-])grepular.com
  Matrix:   @grepular:matrix.org
  Mastodon: @grepular@mastodon.social
  BlueSky:  https://bsky.app/profile/grepular.com
    
  Websites:
    - https://www.emailprivacytester.com
    - https://www.parsemail.org
    
  Public PGP Key: https://www.grepular.com/1801A332.txt
    
  Tips:
    
    Paypal:  https://www.paypal.me/grepular
    Bitcoin: bitcoin:1PQLtWnjUi1itHLG6QCQeHM3Nxua8pRsq1
    BMAC:    https://buymeacoffee.com/grepular
  -----BEGIN PGP SIGNATURE-----
  
  iQEzBAEBCgAdFiEEWazVMy7edA17fJTj0V47FkDmu60FAmrOdgcACgkQ0V47FkDm
  u60ffgf/Sudg+PI+a3J/UHwJl8DwfD7ioFWSsH936K56YjAeXwgUtgao7o4jfXZs
  XjXOgeOFcMzZ3mCcOjbkX8NA+n/wXer8D3Sa/VnIgL7Nb4tF7zVcv1IC/Igl0You
  FrX9n9/gvps/7e6+ZQqgxO6l3SgRViRuSNKAaf0JtcNnoKC/qPXMYkIDIBrC+OsF
  E6RZQW0Yb8ibj6qr14CpRkYIC/bOY/sosp5sohUHuXkRmaID2iY+lc8O5MLBlJaP
  71UU4Um0/OzJuWl6YDwZByi/e6JR0QkEE+eVMtkz8ZfEI9HzabQTqoVY//w95xQp
  +aTA3Tp+n4YpRvgBUYzJphwuRvvVBg==
  =3FnZ
  -----END PGP SIGNATURE-----


  ```
submissionscomments
grepular··on Evolution Mail Users Easily Trackable Part 2
You use an insecure library in your product, it is your responsibility to deal with that situation yes. You can deal with it by:

1. Fixing the insecure library

2. Getting somebody else to fix the insecure library

3. Switching to a different library that isn't insecure

4. Patching over the problem in your application so that the insecure parts are no longer insecure (Santising and stripping html before passing to Webkit, as many, many other email clients do)

5. Warning the users about the problem (A "do not rely on for privacy" notice next to the feature in the UI, with a link to more info)

Evolution Mail wont do any of this. They don't accept any responsbility for the problem. They submitted a bug report to the library and then sat on their hands. If this is still a problem a year from now, they will still accept no responsbility and still claim there is nothing they can do about it, and their users will still be suffering from the problem with absolutely no knowledge about it.

I find it astonishing that anybody thinks their approach to this is acceptable, or even normal in the software industry. It's totally bizarre.

grepular··on Cloudflare starts blocking pirate sites for UK users
It's actually pretty ok for casual browsing these days. Have you tried it recently?
grepular··on LLM Inevitabilism
Those that aren't willing to pay for it directly, can still use it for free, but will just have to tolerate product placement.
grepular··on Evolution Mail Users Easily Trackable
Yes
grepular··on Use Plaintext Email (2019)
Was a local error. Fixed now
grepular··on Use Plaintext Email (2019)
Sorry about that. Try again now
grepular··on Use Plaintext Email (2019)
And use https://www.emailprivacytester.com to test that your email client is configured correctly
grepular··on Nginx Restic Back End
Came up in a thread on a different submission, so thought I'd submit it even though it's a bit old, as it's still relevant today - https://news.ycombinator.com/item?id=44211612
grepular··on BorgBackup 2 has no server-side append-only anymore
You say "only with the restic backend" but you can do it with a simple Nginx backend too https://www.grepular.com/Nginx_Restic_Backend - The restic server part is redundant
grepular··on Oniux: Kernel-level Tor isolation for any Linux app
Hmm. I assumed this worked like torsocks in that it would direct traffic through the locally running tor daemon. However, I've noticed that if I stop the locally running tor daemon, oniux still works whilst torify and torsocks do not. [edit] The documentation does actually say this. Pretty neat.

It works inside docker as well, but I needed to use --privileged. Just copied the binary into a debian:12 container and it works there:

  docker run -it --rm --privileged -v "$PWD/oniux:/usr/bin/oniux" debian:12
grepular··on Oniux: Kernel-level Tor isolation for any Linux app
Instructions on front page for install don't work. Need to change the version number from 0.4.0 to 0.5.0

  cargo install --git https://gitlab.torproject.org/tpo/core/oniux oniux@0.5.0
grepular··on Ask HN: Anyone making a living from a paid API?
And what commands do I run if I want to do 100 screenshots per second?
grepular··on U.S. Economy Contracts at 0.3% Rate in First Quarter
Precisely. Seems fairly likely the tariffs will be gone 5 years from now one way or another. Who in their right mind would build a business based on those tariffs still existing into the future.
grepular··on Writing "/etc/hosts" breaks the Substack editor
Just rot13 any request data using javascript before posting, and rot13 it again on the server side. Problem solved. (jk)
grepular··on Ask HN: How can sending emails cost Let's Encrypt five figures?
> 2.5B * $.1/1000 = $250K/yr

Lets Encrypt doesn't send an email for every certificate that expires.

> especially if you let it expire

All certificates expire.

grepular··on YouTube DRM added on ALL videos with TV (TVHTML5) clients
> No one in this thread used the word "stealing" before you

It's right there in the comment he was responding to

grepular··on Zelensky leaves White House after angry meeting
I could see how somebody might think that, if they ignore the content of what was said and only look at the presentation.
grepular··on Zelensky leaves White House after angry meeting
I couldn't even watch the whole video. Horrendous. Depressing. How can you tolerate having those men running your country America. Nightmare fuel.
grepular··on How I Use Home Assistant in 2025
I have some smart plugs which I can use to turn things on/off from Home Assistant, but more usefully, they report current power draw. I use this with Home Assistant to:

- Turn on my electric blanket from my watch 10 minutes before I go to bed

- Make my echo dot announce when one of the following finishes:

  - A washing machine load
  - A tumble drier load
  - A dishwasher load
  - A 3D print
Some other things I use Home Assistant for:

- Force charge my home battery during cheap electric periods

- Turn off the heat pump if the grid goes down, so I can decide myself if I want to use my remaining battery power on heating

- Announce if my printer is low on toner via a message to my watch

- Program a more efficient routine for my water heating than the native solution that came with my heat pump allows.

[edit] I just added another automation I've been meaning to: If the time is after 22:00 and I am home, and the outdoor temp is < 6C and I switch the TV from on to off, then turn on the electric blanket and send a notification to my watch to inform me it has been done. Done this because I sometimes forget to do it manually and turning off the TV at that time is a good indicator that I'm heading to bed shortly.

grepular··on Back to basics: Why we chose long-polling over websockets
As the other guy said, that's why I mentioned using an ID. And as the other guy said, the same as required regardless of what channel you're using.
grepular··on Back to basics: Why we chose long-polling over websockets
That race condition has nothing to do with long polling, it's just poor design. The sender should stick the message in a queue and the client reads from that queue. Perhaps with the client specifying the last id it saw.
grepular··on Just: Just a Command Runner
Hmm. Maybe the dev that set it up made the first recipe run `just --list`
grepular··on Just: Just a Command Runner
I don't have my work laptop to hand to compare, but I usually run "just" to get a list of commands and what they do, rather than "just --list". Hope that saves you 7 key presses going forwards.
grepular··on New Mac Mini with M4
UPS
grepular··on Show HN: I made tool that let's you see everything about any website
It says my domain "grepular.com" doesn't have dnssec. It does. It also says I don't use DKIM or DMARC. I do.
grepular··on Show HN: Markdown HN profiles at {user}.at.hn
Good catch. Thanks
grepular··on Show HN: Markdown HN profiles at {user}.at.hn
There seems to be some weird encoding issues and failure to convert URLs to links properly, for my profile - https://mike-cardwell.at.hn/ - Also, some of the indenting and white space is broken making the PGP signature invalid
grepular··on Privacy focused platform Skiff is joining Notion, Skiff to be sunset
Their product wasn't that great anyway - https://www.grepular.com/Skiff_Emails_Various_Privacy_Failur...
grepular··on Show HN: Mailready – meet the new email deliverability standards
Your fix is wrong. It states the SPF record is invalid. It is not.

https://datatracker.ietf.org/doc/html/rfc7208

> Unrecognized modifiers MUST be ignored no matter where, or how often, they appear in a record. This allows implementations conforming to this document to gracefully handle records with modifiers that are defined in other specifications.

A correct SPF validator will ignore the xss modifier, not treat the SPF record as invalid.

grepular··on Show HN: Mailready – meet the new email deliverability standards
Basic XSS - https://mailready.info/authentication?domain=grepular.com
← PreviousPage 4 of 34Next →