diff options
| author | uvok cheetah | 2026-02-21 17:09:58 +0100 |
|---|---|---|
| committer | uvok cheetah | 2026-02-21 17:09:58 +0100 |
| commit | 574da5a51216130d3221473f1d8f0e7275e627d0 (patch) | |
| tree | 50df6d74e26b57459e2430fcf85b15d896fb1da3 /_posts/2026-02-21-updating-my-servers-to-trixie.md | |
| parent | b35b162f6a47f08b3abe1c97fbe219c9731bd9e5 (diff) | |
Add pyenv section
Diffstat (limited to '_posts/2026-02-21-updating-my-servers-to-trixie.md')
| -rw-r--r-- | _posts/2026-02-21-updating-my-servers-to-trixie.md | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/_posts/2026-02-21-updating-my-servers-to-trixie.md b/_posts/2026-02-21-updating-my-servers-to-trixie.md index e2853c2..0942db0 100644 --- a/_posts/2026-02-21-updating-my-servers-to-trixie.md +++ b/_posts/2026-02-21-updating-my-servers-to-trixie.md @@ -14,7 +14,7 @@ the "least problematic" servers first. (Gut feeling). Turns out, my intuition was relatively right. What confused me extremely is that the upgrade notes appear to have moved to -https://www.debian.org/releases/trixie/release-notes/upgrading.html. +[a readthedocs look like page](https://www.debian.org/releases/trixie/release-notes/upgrading.html). Previously, iirc, it was always a chapter in the Debian Handbook. So, the pain points of Debian updates, for me, always is the config file @@ -30,7 +30,7 @@ The actual **major** pain point was indeed the last server. I've been accumulating various questionable packages on this one, for some reason, I installed ffmpeg in the past, which means there were lot of X-related libraries pulled in. During the cleanup, I unwisely -must've fired off some purge command[1]… Which I acknowledged without +must've fired off some purge command[^1]… Which I acknowledged without looking properly. The result was that my entire /etc/letsencrypt directory was erased, as I used the distro-supplied certbot in the past. I just removed the package at some point and installed certbot via pip. @@ -40,6 +40,23 @@ nginx config manually, adding temporary fake certs/keys, so that nginx would start at all, so that certbot could work, and I could re-add the certificates again. +The second biggest pain point is Python virtual environments. Since +Debian upgrades always(?) update the Python minor version, all existing +venv's stop working, since a) they are created with a pointer to, +e.g. `/usr/bin/python3.11`, and b) packages/modules go into a +version-specific site-packages subdirectory. So, the procedure always +is go through all of them, recreate the venv, reinstall all packages, +hope it still works. In my case, even the Python script that +triggers buildbot builds didn't work anymore, because +`from future.utils import itertools`[^2] didn't work anymore, +and needed to be replaced by `dict.items()`. And my looking glass +didn't work no more because apparently Python stopped shipping +the `cgi` module. The current "replacement" seems to be +[legacy-cgi](https://pypi.org/project/legacy-cgi/). +I have no "proper" solution for this yet. + Lesson learned: Read the fucking output before you hit enter. -[1]: Via ansible, nonetheless. +[^1]: Via ansible, nonetheless. + +[^2]: [contrib script](https://github.com/buildbot/buildbot/blob/master/master/contrib/git_buildbot.py#L26) |
