After setting it up to run on a non-Gmail email host, however, I noticed the logs were complaining that isbg couldn’t find Gmail-specific folders. That meant that, somehow, my configuration was telling isbg that I was on a gmail host, even though the line"isGmail": "no" was in my config.
After some looking around, I saw the offending piece of code in docker_isbg (newlines added for clarity):
if( confLoader.tableHasKey( config, "isGmail" )
and config.isGmail )
then gmailOption =" --gmail"else gmailOption =""end
The code checks whether config (which is a dictionary-like object resulting from the parsing of the above JSON) has a isGmail key, and whether it is set to anything: it can be yes, no or any other string and it will pass the --gmail option to isbg.
To fix it, I opened a PR that changes the above lines to
if( confLoader.tableHasKey( config, "isGmail" )
and config.isGmail =="yes" )
then gmailOption =" --gmail"else gmailOption =""end
While the project seems to be mostly abandoned so I don’t expect a prompt merge, there’s another easy fix: changing the "isGmail": "no", line to "isGmail": false in the configuration file as in that case the config.isGmail code will evaluate to false.
For more than 10 years, I’ve been a happy client of Tweak (how long will that link work?). One of the many features it offered was a fixed IP address.
Now that I’m forced to switch to Odido, I will lose this affordance, which serves me greatly whenever I need to connect to my VPN at home. In fact, my phone and laptop are configured to just connect to a subdomain of lanzani.nl, which pointed to my home address, and that address never changed.
I then started looking for ways to update my IP address automatically. Luckily, there seems to be a service that’s been designed for this, ddclient that I’ve set up in my home server as follows:
First of all, as my DNS is managed by Porkbun, I have to enable API access to change DNS parameters programatically;
Configuring it is as easy as writing in ~/code/ddclient the following
I am building a Telegram chatbot to remind me to take out the trash.
I’m overengineering it, so of course it has Docker and a (sqlite) database.
One component of the chatbot does an hourly check. If tomorrow the trash will be collected, and the current time is later than the time I want to receive the notification (and if I haven’t been notified today), I should get a message.
However, I was not getting the messages. The code seemed solid
SELECTuserFROM users
WHERE(
TIME('now', 'localtime') > TIME(time_of_day) AND DATETIME('now', 'localtime', '-1 day') >= DATETIME(last_executed_run, TIME(time_of_day))
)
OR last_executed_run ISNULL
Worse of all, when I was running on the Docker host, I would get notified at the right time.
It turns out Docker doesn’t respect the host timezone, but you need to be explicit about it, adding a TZ environment variable (in my case TZ=Europe/Amsterdam).
While using a static site generator is a low-maintenance endeavor, it also means that complex requirements need to be coded if nobody has done it before.
Today, I automated image previews that can be used to display a nice preview through for Open Graph (and Twitter cards!).
The Open Graph protocol enables any web page to become a rich object in a social graph. My blog, however, is text-heavy and often misses the images, so I had to come up with something else.
In the end, I settled with a solution (code below) that displays a static image with some text on top, including the title, a snippet of the blog, and the URL.
The snippet can be explicitly set in the front matter with the snippet key, otherwise it will take the first characters of the post itself.
To make it all work, you need a couple of things in your Hugo theme
In the quoted toot, Lyz Lenz offers the wrong solution to a wide-spread societal problem: men who have remained children.
Our society tries to delay or prevent people growing up: making irreversible decisions, taking responsibility, caring for someone else more than for yourself, suffering.
Women are forced to much of the above when they become mothers (an irreversible decision, they take responsibility for the newborn, they will defend their child with their life, and laboring is a lot of suffering).
Men, on the other hand, can skip everything when they become fathers: they can leave and, when they stay, they can pretend to continue as nothing happened.
The tragedy is a that the situation creates a vicious cycle: as the father is absent or doesn’t take up his duties as a father, the mother protects her child even more, making it hard for the child to grow.
I’ve added a page about my public appearances throughout the years. I still have to figure out how to make it load faster with all those pesky videos coming from youtube!
What’s happening in China is really interesting. If we trust their official figures and estimates, the economy was driven by 3 things:
Real estate (who’s crashing hard)
Consumer spending (who’s in decline, as their population is not growing and aging)
Exports (who are threatened by India and South East Asia)
As 1. is crashing, consumers—who put most of their savings in, guess what, real estate—are more conscious about spending, hurting another good 30% of their economy.
So, 2/3 of their economy is hurting and will hurt more badly in 2024.
The Chinese’s and Hong Kong’s markets are also spooked, having shed USD 1.5 TRN in January alone.
As my work email is hosted by Microsoft, I’m bugged to no end by this system, which doesn’t make it easy to extract the URL in a readable format (read the blog if you want to know more shortcomings of the system).
For a couple of years, I have a Typinator snippet that decodes the URL, so that by typing ;dec, the following script is triggered
The script is not perfect, but, since defining it, Typinator analytics tell me I’ve used it some hundred times and I can’t recall when it didn’t just work.
Too often universities reflexively try to mollify students rather than have them grapple with ideas they find unsettling, says Edward Hall, a philosophy professor at Harvard. Administrators see an angry or upset student in their office and instantly try to make them feel better.
A failure of good parenting for those who grew up in the wave of the 60s and 70s?