!UNVBThoJtlIiVwiDjU:nixos.org

Staging

400 Members
Staging merges | Running staging cycles: https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Astaging-next+head%3Astaging-next-25.11 | Review Reports: https://malob.github.io/nix-review-tools-reports/128 Servers

Load older messages


SenderMessageTime
29 Jun 2026
@k900:0upti.meK900There's some seriously uhhh unconventional logic going on there21:17:38
@k900:0upti.meK900Like genuinely I have no idea who came up with that but it's using error codes to smuggle in non-error info21:20:51
@k900:0upti.meK900In a way that is somehow more confusing the more I stare at it21:21:17
@k900:0upti.meK900OK no wait what the fuck is happening anymore21:41:41
@k900:0upti.meK900I need sleep21:41:43
30 Jun 2026
@k900:0upti.meK900OK great09:37:34
@k900:0upti.meK900 Building 260.2 in a nix-shell bootctl update also fails 09:37:52
@9hp71n:matrix.orgghpzin As mentioned before I am pretty sure it is just systemd-boot-builer picking "fallback" file as installed_version.
The easiest is just a 1 line fix for filtering it out from bootctl status output before matching, ie:
--- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
+++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py
@@ -488,6 +488,8 @@
             stdout=subprocess.PIPE,
         ).stdout

+        installed_out = "\n".join([line for line in installed_out.splitlines() if "fallback" not in line])
+
         # See status_binaries() in systemd bootctl.c for code which generates this
         # Matches
         # Available Boot Loaders on ESP:
09:43:14
@k900:0upti.meK900No, it's not09:48:40
@k900:0upti.meK900Actually wait09:49:25
@k900:0upti.meK900Ugh09:49:26
@k900:0upti.meK900I see the problem09:49:29
@k900:0upti.meK900It is that but not in the way I thought09:49:41
@k900:0upti.meK900 We just didn't call bootctl update if our own update check succeeded 09:49:52
@k900:0upti.meK900Which is honestly kinda bad09:49:57
@k900:0upti.meK900Yeah OK this is so stupid09:51:15
@k900:0upti.meK900Ughhhhh the varlink interface works09:53:22
@k900:0upti.meK900But we can't rely on it09:53:24
@k900:0upti.meK900
❯ sudo varlinkctl call /run/systemd/io.systemd.BootControl io.systemd.BootControl.Install '{"operation":"update"}'
Method call io.systemd.BootControl.Install() failed: Stale file handle
{
        "origin" : "linux",
        "errno" : 116,
        "errnoName" : "ESTALE"
}
09:54:25
@k900:0upti.meK900 ESTALE here means "nothing to do" 09:54:34
@k900:0upti.meK900I wonder if it makes sense to just do varlink09:56:23
@k900:0upti.meK900And fall back to a direct bootctl invocation09:56:30
@k900:0upti.meK900The only situation it should matter is in a chroot09:57:03
@k900:0upti.meK900 ElvishJerricco need your thonk 09:59:03
@k900:0upti.meK900Also anyone else want to bash their head against paperless10:00:16
@k900:0upti.meK900Or should I just rip a bisect10:00:20
@k900:0upti.meK900And get back to you in 3-5 business days10:00:27
@flashonfire:lithium.ovhguillaumeI can start a bisect10:21:24
@k900:0upti.meK900Ahead of you10:21:43
@k900:0upti.meK900Unfortunately,
Download Unfortunately,
10:21:59

Show newer messages


Back to Room ListRoom Version: 6