=============================
IPsec, Rust, burritos, stew
=============================

This is yet another post with assorted news, on both IT and cooking.

A few weeks ago I have set an IPsec VPN, mostly used for home devices,
with strongSwan (on both computers, with Debian systems, and mobile
devices, with Android: a mobile version is available via F-Droid):
password-based authentication (eap-mschapv2) for clients, pubkey
authentication (with a personal CA and its certificate manually
imported everywhere) for the server. Maybe I would rather use a
pre-shared key authentication for both (with it being simpler), but
the Android client does not seem to support that. Have set it with
static addresses for "roadwarriors", so that they can be identified by
an address, and making them available to each other. Tried SIP on top
of it: baresip works mostly fine on Android (without video), Twinkle
mostly works on Debian (apparently requires user names though), and
though I tried Kamailio as a router initially, it is not that useful
with static addresses (since P2P can be used easily then). Though most
SIP clients support SRTP (and ZRTP), along with TLS. Also tried to
control a remote mpd and listen to its streams via M.A.L.P. (also
available from F-Droid), which does work. Maybe it could be useful for
rsync as well, since it doesn't have encryption on its own (though it
is commonly used over SSH, which is more straightforward than setting
up IPsec). I have not yet investigated how it works with ICE and
XMPP's Jingle: maybe it would help to establish more efficient
connections, going through a local machine instead of a remote TURN
server (though then again, it is easier to achieve by just setting
local XMPP and TURN servers). Anyway, IPsec is nice and it feels good
to have it set, at least for a few local machines, even though it is
not quite useful to me currently.

Also in the "nice but not necessarily useful" category, I rewrote the
SOCKS5 module of rexmpp in Rust, while keeping the C sources: hooked
it into the build scripts (autotools), so that optionally Rust sources
can be used instead of C ones: the relevant C ones are excluded, while
Rust ones are used to build a static library and link it. I did hook
it up rather awkwardly, without a proper cleanup or tracking of the
changes, but it is nice that it works at all, and went fairly
smoothly. Maybe I will rewrite other modules as well, also keeping it
optional, so that there will be both C's portability, and optionally
Rust's memory-safety.

I made a couple more batches of burritos, adjusting the recipe. The
most recent one involved onion, garlic, store-bought ground beef,
store-bought tomato puree (tried different ones), a bit of cheese,
canned small black beans (but probably not turtle beans; some mystery
beans from a store) without liquid, salt, pepper, plain wheat
tortillas (not cheese-infused ones). It tastes well, though that turns
400 grams of ground beef into 6 servings, which is about 13 grams of
protein per serving, and a few more from the beans, I guess at most 20
altogether. The reference intake is 0.8 g of protein per kg of a
person's weight, and it is rather 2-3 grams per kg while exercising
(i.e., at least 60 or 71, and up to 130, 210, or 222 grams per day for
an adult and fairly average male, according to different
recommendations), so it is pretty far from the day's norm. Though I
guess it is still helpful, not the least nutritious dish, and rather
convenient.

Yesterday I tried a beef stew: mirepoix (diced onions, celery,
carrots) with garlic, browned beef chunks (chopped chuck roll steak),
browned button mushrooms (sliced), then mixed everything with chopped
tomatoes (both fresh and store-bought), seasoned (salt, black pepper,
paprika, cumin, basil), simmered for 1.5 hours. Had a bit of fat left
on the meat chunks, been advised that it could be rendered out by
either trimming and frying beforehand, or simmering longer. And it is
a bit salty, but other than that -- turned out rather nice. Maybe will
try adding potatoes next time, too. The steak in it weighs about 500
grams, for a few servings, so maybe it will be about 100 grams of beef
per serving, roughly 20 grams of protein -- similarly to
burritos. There is not much of protein in mushrooms, and just a tiny
bit in vegetables. While I planned to treat it as the protein-rich
meal of the day. At least it looks like another good option for meal
prep, and can be tweaked.

Looking at dietary guidelines, I used to think that the tricky
recommendation is to consume at least 400 grams of fruits and
vegetables daily, but now it looks like the actual challenge is
protein. Though I didn't actually count nutritional values of all the
meals of a day (or a week); hopefully milk products (including
yogurts, hot chocolate, cheese), nuts, and other things add up at
least to those 60 grams. Maybe I should try to estimate it better, and
possibly adjust the meals.

Speaking of hot chocolate, I have marshmallows once again now: I have
not had those in a while, but saw a bag in a grocery store yesterday,
and acquired it. They are rather nice to add into a cup of cocoa, not
merely decorative. I think they do not seem important once one is used
to them, maybe bored with those, but after a long break they are quite
pleasant: tasty, the texture is nice, the beverage itself looks nicer.


----

:Date: 2023-05-08