From c501fc631e37198fe587b4eac085480458401b31 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Wed, 4 Mar 2026 06:21:23 +0000 Subject: [PATCH] Add glib-networking to Nix flake for WebKitGTK TLS support WebKitGTK on Linux uses GLib's GIO for HTTPS networking. The Tauri binary links against Nix's glib, which looks for GIO modules in /nix/store paths. Without the TLS backend module (libgiognutls.so from glib-networking), all HTTPS fetch() calls fail with 'Load failed', causing attestation document fetches to fail during login. This adds glib-networking to the Linux dev shell packages and sets GIO_MODULE_DIR in the shell hook so WebKitGTK can find the TLS backend automatically. Co-Authored-By: tony@opensecret.cloud --- flake.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/flake.nix b/flake.nix index 2ac8588c..04cd143c 100644 --- a/flake.nix +++ b/flake.nix @@ -46,6 +46,10 @@ # (e.g., VMs, CI, containers). Provides libEGL_mesa.so and swrast DRI # drivers needed by WebKitGTK to initialize EGL. pkgs.mesa + # glib-networking provides the GIO TLS backend (libgiognutls.so) that + # WebKitGTK needs for HTTPS requests. Without it, all fetch() calls to + # HTTPS URLs fail with "Load failed" (e.g., attestation document fetch). + pkgs.glib-networking ] else []) ++ (if pkgs.stdenv.isDarwin then [ # macOS-specific dependencies pkgs.darwin.apple_sdk.frameworks.WebKit @@ -65,6 +69,7 @@ export LIBGL_ALWAYS_SOFTWARE=1 export WEBKIT_DISABLE_COMPOSITING_MODE=1 export WEBKIT_DISABLE_DMABUF_RENDERER=1 + export GIO_MODULE_DIR=${pkgs.glib-networking}/lib/gio/modules ''; }; }