From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 6A8DA1EEE8; Tue, 09 Sep 2025 03:46:48 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id 35C201EE7A; Tue, 09 Sep 2025 03:46:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-0.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_PASS,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=4.0.1 Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [IPv6:2607:f8b0:4864:20::b2e]) by atuin.qyliss.net (Postfix) with ESMTPS id A6BE31EE77 for ; Tue, 09 Sep 2025 03:46:45 +0000 (UTC) Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-e98b75eb577so5498458276.1 for ; Mon, 08 Sep 2025 20:46:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1757389604; x=1757994404; darn=spectrum-os.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=t4AL/e3brrrtO6sDl5UjaIXktoHMRf9W6w3rWIaZbr4=; b=LsPyzO99TE93iPkodnHdG2YaCEgQKafY1VYYN2ka7E85jNuHvAYISTGJihFKj/CKdo s6dZVVDzWyc6lD0zuKTumUKv+WV67dxeX7wMTsNP3ZvS5SY2oaHSnD+q/UjgBvtHp7EC GkyxxI2c9mU3TQldkR+RS0S3n7cHrsR3z/67qJw4J9pgLgA396UaiL8l6xzU40GZaztn 3aZU46VsrRJPSk6a26KYLz6KVHldt58O3ceir9N4UAeRC7B273Lnv1Tb8zyHGdENTk5e UwtYSiavPmneaObRbh5EggBPWyVOmYqR+YAS7eyNuVhT+YXe/CiJIq6FV9N0U/4F4dQo cZQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757389604; x=1757994404; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=t4AL/e3brrrtO6sDl5UjaIXktoHMRf9W6w3rWIaZbr4=; b=UYx0A4Z6gExpxlTi3ikNERkcJu5LcIvND5Tkr04w7P8KjjaB8dtpJyPTRME6i5o262 Sien72ffBzOs8YiUunAWWTSD0DISriCD6XFJWiCiEH8NXvUXftNv65SQPsZ4RwZqMG9L 9YTXj0NqkMs8pd6MzrKKPFiiO+WpDwKcOiICfUq7cek87cX+zL6V/U+QcCDEzdk/gZwp rNhUbVFQ7EcEHxK5nG42RgP15A5Hc5ErNIsHhS1ZO1xk6JiI6bPRs5uyK/+THTifz8N6 lrExfRTK7jWrE+eTJkq3clJEqzVLRd2AeWoBk+AbN/GB2cWvhyW7PoUcOdt43W/Yy58o yyWQ== X-Gm-Message-State: AOJu0YwNiJz9oxhJBBKnR0DvBcCvonqYVQwAvRopRRRuXDhprQ8dtNrx 99ZS1DOBPmrP0ot60R/vNpHuMAfW0PpP+RS/ju8rFMFmq8uXRuXv3ubaiR2QQg== X-Gm-Gg: ASbGncswOzP+EK77f9Y3TuidHHBg0/XQgLoZYkjY6DT9p9vewGRSu+K+1BmoDir9Oh9 M6poG+rvMBoUdfoLp2vhl69CCwzeBkwTnIhSpt4YnG/72+sAYY0DJmaF9VIS0Qsdkt6nB5vB4Co piwqXKJb+kEBSRnPVnzL+J8p0Br9S1DJ2ZtDdH8jcOTlSVLk3ru+W1iJO5vOxlffika/r0udu1f TEjcavRFObjBhr152TxaNnlYHs/qz4RXRAqT4pUDTuws5YHVpcFloy9Rh0Ka0fHwpO+x35fcO3y 3KSyAA/LWZjZ9X1m5CzbSr3cdn/S+BBjCiTX3kgdYrK0Rt+Yj0aRNcGnt/NVrwIv+yAoXK72lc8 yaDxum28wDfUif3ckUWPydh0MmKx/T32ccFfIXP8b7ByTJO20zYbaSbG3eXBURIkgy4UKeNQ0Nr idr4wxjDNCAav/8dKonlR3E6FFIzLIdlV8w0pcNsuzGCc= X-Google-Smtp-Source: AGHT+IG80X4Xi/HrPUUqIGJnSElndht6MMUc1rpFjuv67N/revG07c5DY9q5Ln1iUUSp4kCB7TWGaQ== X-Received: by 2002:a05:6902:c0e:b0:ea2:b55f:383d with SMTP id 3f1490d57ef6-ea2b55f3d70mr3554994276.2.1757389604093; Mon, 08 Sep 2025 20:46:44 -0700 (PDT) Received: from localhost.localdomain (h96-60-249-169.cncrtn.broadband.dynamic.tds.net. [96.60.249.169]) by smtp.gmail.com with UTF8SMTPSA id 3f1490d57ef6-e9bbe05cad6sm6179730276.17.2025.09.08.20.46.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Sep 2025 20:46:43 -0700 (PDT) From: Demi Marie Obenour Date: Mon, 08 Sep 2025 23:45:16 -0400 Subject: [PATCH] Prefer definition-before-use in Nix MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20250908-nix-cleanup-v1-1-1a0e49e5ec4e@gmail.com> X-B4-Tracking: v=1; b=H4sIAMuiv2gC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDI1MDSwML3bzMCt3knNTEvNICXQsTSzMLM6OUtNRUSyWgjoKi1LTMCrBp0bG 1tQBstZweXQAAAA== X-Change-ID: 20250908-nix-cleanup-8496862dfee9 To: Spectrum OS Development X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1757389515; l=7475; i=demiobenour@gmail.com; s=20250729; h=from:subject:message-id; bh=hjieDyL0U1oMX1QP+GNVHz/zqaBUPxC0bcwpSd5n3nI=; b=Yqg4iI4WZSwekuDBP7TwORtWCTB607njFDOh9KPf8Kp4UpjgOV6RDYxr2k82BtCFXE7ENVYYa JxBstws8V2FAv7exrYG+xdyJYuBddDPYAx6vlGyoNVYh679lz8MYmez X-Developer-Key: i=demiobenour@gmail.com; a=ed25519; pk=X57Q4/YQDj9t4SBeKaDwvXYKB6quZJVx/DE2Ly2out0= Message-ID-Hash: 3SNQG5VYIAUCMEBSBULRKFOWIQ3JPIX3 X-Message-ID-Hash: 3SNQG5VYIAUCMEBSBULRKFOWIQ3JPIX3 X-MailFrom: demiobenour@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-devel.spectrum-os.org-0; header-match-devel.spectrum-os.org-1; header-match-devel.spectrum-os.org-2; header-match-devel.spectrum-os.org-3; header-match-devel.spectrum-os.org-4; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Alyssa Ross , Demi Marie Obenour X-Mailman-Version: 3.3.9 Precedence: list List-Id: Patches and low-level development discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Nix does not require this, but it is easier to read. No functional change intended. Signed-off-by: Demi Marie Obenour --- img/app/default.nix | 74 ++++++++++++++++++++++++-------------------------- vm/sys/net/default.nix | 72 ++++++++++++++++++++++++------------------------ 2 files changed, 72 insertions(+), 74 deletions(-) diff --git a/img/app/default.nix b/img/app/default.nix index d3eed1f0accdc8968d1ba5bdec74ab597789082f..71a939c1c053ebd37fc02fa4eed49b883d50ef49 100644 --- a/img/app/default.nix +++ b/img/app/default.nix @@ -12,6 +12,42 @@ pkgsStatic.callPackage ( }: let + kernelTarget = + if stdenvNoCC.hostPlatform.isx86 then + # vmlinux.bin is the stripped version of vmlinux. + # Confusingly, compressed/vmlinux.bin is the stripped version of + # the top-level vmlinux target, while the top-level vmlinux.bin + # is the stripped version of compressed/vmlinux. So we use + # compressed/vmlinux.bin, since we want a stripped version of + # the kernel that *hasn't* been built to be compressed. Weird! + "compressed/vmlinux.bin" + else + stdenvNoCC.hostPlatform.linux-kernel.target; + + kernel = (linux_latest.override { + structuredExtraConfig = with lib.kernel; { + DRM_FBDEV_EMULATION = lib.mkForce no; + EROFS_FS = yes; + FONTS = lib.mkForce unset; + FONT_8x8 = lib.mkForce unset; + FONT_TER16x32 = lib.mkForce unset; + FRAMEBUFFER_CONSOLE = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_DETECT_PRIMARY = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_ROTATION = lib.mkForce unset; + RC_CORE = lib.mkForce unset; + VIRTIO = yes; + VIRTIO_BLK = yes; + VIRTIO_CONSOLE = yes; + VIRTIO_PCI = yes; + VT = no; + }; + }).overrideAttrs ({ installFlags ? [], ... }: { + installFlags = installFlags ++ [ + "KBUILD_IMAGE=$(boot)/${kernelTarget}" + ]; + }); + appimageFhsenv = (buildFHSEnv (appimageTools.defaultFhsEnvArgs // { name = "vm-fhs-env"; targetPkgs = pkgs: appimageTools.defaultFhsEnvArgs.targetPkgs pkgs ++ [ @@ -53,50 +89,12 @@ let pkgs.wireplumber ]; })).fhsenv; -in -let packagesSysroot = runCommand "packages-sysroot" {} '' mkdir -p $out/etc/ssl/certs ln -s ${appimageFhsenv}/{lib64,usr} ${kernel}/lib $out ln -s ${cacert}/etc/ssl/certs/* $out/etc/ssl/certs ''; - - kernelTarget = - if stdenvNoCC.hostPlatform.isx86 then - # vmlinux.bin is the stripped version of vmlinux. - # Confusingly, compressed/vmlinux.bin is the stripped version of - # the top-level vmlinux target, while the top-level vmlinux.bin - # is the stripped version of compressed/vmlinux. So we use - # compressed/vmlinux.bin, since we want a stripped version of - # the kernel that *hasn't* been built to be compressed. Weird! - "compressed/vmlinux.bin" - else - stdenvNoCC.hostPlatform.linux-kernel.target; - - kernel = (linux_latest.override { - structuredExtraConfig = with lib.kernel; { - DRM_FBDEV_EMULATION = lib.mkForce no; - EROFS_FS = yes; - FONTS = lib.mkForce unset; - FONT_8x8 = lib.mkForce unset; - FONT_TER16x32 = lib.mkForce unset; - FRAMEBUFFER_CONSOLE = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_DETECT_PRIMARY = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_ROTATION = lib.mkForce unset; - RC_CORE = lib.mkForce unset; - VIRTIO = yes; - VIRTIO_BLK = yes; - VIRTIO_CONSOLE = yes; - VIRTIO_PCI = yes; - VT = no; - }; - }).overrideAttrs ({ installFlags ? [], ... }: { - installFlags = installFlags ++ [ - "KBUILD_IMAGE=$(boot)/${kernelTarget}" - ]; - }); in stdenvNoCC.mkDerivation { diff --git a/vm/sys/net/default.nix b/vm/sys/net/default.nix index b5873ebe1e80dd88c1ba997f7ebd3ee7369bb40f..7b2b8b1fbb9b9027781812307bed0551b80f5a78 100644 --- a/vm/sys/net/default.nix +++ b/vm/sys/net/default.nix @@ -14,6 +14,42 @@ let inherit (lib) concatMapStringsSep; inherit (nixosAllHardware.config.hardware) firmware; + kernelTarget = + if stdenvNoCC.hostPlatform.isx86 then + # vmlinux.bin is the stripped version of vmlinux. + # Confusingly, compressed/vmlinux.bin is the stripped version of + # the top-level vmlinux target, while the top-level vmlinux.bin + # is the stripped version of compressed/vmlinux. So we use + # compressed/vmlinux.bin, since we want a stripped version of + # the kernel that *hasn't* been built to be compressed. Weird! + "compressed/vmlinux.bin" + else + stdenvNoCC.hostPlatform.linux-kernel.target; + + kernel = (linux_latest.override { + structuredExtraConfig = with lib.kernel; { + DRM_FBDEV_EMULATION = lib.mkForce no; + EROFS_FS = yes; + FONTS = lib.mkForce unset; + FONT_8x8 = lib.mkForce unset; + FONT_TER16x32 = lib.mkForce unset; + FRAMEBUFFER_CONSOLE = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_DETECT_PRIMARY = lib.mkForce unset; + FRAMEBUFFER_CONSOLE_ROTATION = lib.mkForce unset; + RC_CORE = lib.mkForce unset; + VIRTIO = yes; + VIRTIO_BLK = yes; + VIRTIO_CONSOLE = yes; + VIRTIO_PCI = yes; + VT = no; + }; + }).overrideAttrs ({ installFlags ? [], ... }: { + installFlags = installFlags ++ [ + "KBUILD_IMAGE=$(boot)/${kernelTarget}" + ]; + }); + connman = connmanMinimal; packages = [ @@ -58,42 +94,6 @@ let system.stateVersion = lib.trivial.release; }); - - kernelTarget = - if stdenvNoCC.hostPlatform.isx86 then - # vmlinux.bin is the stripped version of vmlinux. - # Confusingly, compressed/vmlinux.bin is the stripped version of - # the top-level vmlinux target, while the top-level vmlinux.bin - # is the stripped version of compressed/vmlinux. So we use - # compressed/vmlinux.bin, since we want a stripped version of - # the kernel that *hasn't* been built to be compressed. Weird! - "compressed/vmlinux.bin" - else - stdenvNoCC.hostPlatform.linux-kernel.target; - - kernel = (linux_latest.override { - structuredExtraConfig = with lib.kernel; { - DRM_FBDEV_EMULATION = lib.mkForce no; - EROFS_FS = yes; - FONTS = lib.mkForce unset; - FONT_8x8 = lib.mkForce unset; - FONT_TER16x32 = lib.mkForce unset; - FRAMEBUFFER_CONSOLE = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_DETECT_PRIMARY = lib.mkForce unset; - FRAMEBUFFER_CONSOLE_ROTATION = lib.mkForce unset; - RC_CORE = lib.mkForce unset; - VIRTIO = yes; - VIRTIO_BLK = yes; - VIRTIO_CONSOLE = yes; - VIRTIO_PCI = yes; - VT = no; - }; - }).overrideAttrs ({ installFlags ? [], ... }: { - installFlags = installFlags ++ [ - "KBUILD_IMAGE=$(boot)/${kernelTarget}" - ]; - }); in stdenvNoCC.mkDerivation { --- base-commit: 8ce6039b6dde7fda98ceea018addecb8bee0e7b3 change-id: 20250908-nix-cleanup-8496862dfee9 -- Sincerely, Demi Marie Obenour (she/her/hers)