From 99ac9d9bec8e1aa586c4df8375c3c1f4754aa068 Mon Sep 17 00:00:00 2001 From: nat Date: Sat, 22 Feb 2025 15:13:21 +0100 Subject: [PATCH 1/4] limine: unpin llvmPackages the default version is now enough for crosscompiling to all supported archs --- pkgs/by-name/li/limine/package.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix index a8fa1403f3de..0d50b75cb411 100644 --- a/pkgs/by-name/li/limine/package.nix +++ b/pkgs/by-name/li/limine/package.nix @@ -2,7 +2,7 @@ { fetchurl, lib, - llvmPackages_18, + llvmPackages, mtools, nasm, # The following options map to configure flags. @@ -15,7 +15,6 @@ }: let - llvmPackages = llvmPackages_18; stdenv = llvmPackages.stdenv; version = "8.7.0"; From 21102c07a5d6cfb3f2953b5d5c27762e11408f86 Mon Sep 17 00:00:00 2001 From: nat Date: Sat, 22 Feb 2025 15:16:28 +0100 Subject: [PATCH 2/4] limine: reenable zerocallusedregs hardening should just work for the installer binary, doesn't matter for the freestanding part since it's built with unwrapped compiler --- pkgs/by-name/li/limine/package.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix index 0d50b75cb411..46752ae0b344 100644 --- a/pkgs/by-name/li/limine/package.nix +++ b/pkgs/by-name/li/limine/package.nix @@ -72,11 +72,6 @@ stdenv.mkDerivation { hash = "sha256-pwoR9ptMpdhdEe/Kbyc+smv9oNIqtJ9L0KFdf6/g0Ec="; }; - hardeningDisable = [ - # clang doesn't support this for RISC-V target - "zerocallusedregs" - ]; - enableParallelBuilding = true; nativeBuildInputs = From 9601183c40f20977e7bd2e392bc64cacd25d28c9 Mon Sep 17 00:00:00 2001 From: nat Date: Sat, 22 Feb 2025 15:31:14 +0100 Subject: [PATCH 3/4] limine: simplify x86 only features logic my ass WASN'T listening at school --- pkgs/by-name/li/limine/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix index 46752ae0b344..0bfcf3fb67df 100644 --- a/pkgs/by-name/li/limine/package.nix +++ b/pkgs/by-name/li/limine/package.nix @@ -55,9 +55,9 @@ let ]; in -assert lib.assertMsg (!(biosSupport && !hasI686)) "BIOS builds are possible only for x86"; +assert lib.assertMsg (!biosSupport || hasI686) "BIOS builds are possible only for x86"; -assert lib.assertMsg (!(pxeSupport && !hasI686)) "PXE builds are possible only for x86"; +assert lib.assertMsg (!pxeSupport || hasI686) "PXE builds are possible only for x86"; # The output of the derivation is a tool to create bootable images using Limine # as bootloader for various platforms and corresponding binary and helper files. From bd736dfe1de40bcc1f2c200b4b844b6d01209f2e Mon Sep 17 00:00:00 2001 From: nat Date: Sat, 22 Feb 2025 17:02:40 +0100 Subject: [PATCH 4/4] limine: 8.7.0 -> 9.0.0 --- pkgs/by-name/li/limine/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix index 0bfcf3fb67df..d46083c1d431 100644 --- a/pkgs/by-name/li/limine/package.nix +++ b/pkgs/by-name/li/limine/package.nix @@ -17,7 +17,7 @@ let stdenv = llvmPackages.stdenv; - version = "8.7.0"; + version = "9.0.0"; hasI686 = (if targets == [ ] then stdenv.hostPlatform.isx86_32 else (builtins.elem "i686" targets)) @@ -69,7 +69,7 @@ stdenv.mkDerivation { # Packaging that in Nix is very cumbersome. src = fetchurl { url = "https://github.com/limine-bootloader/limine/releases/download/v${version}/limine-${version}.tar.gz"; - hash = "sha256-pwoR9ptMpdhdEe/Kbyc+smv9oNIqtJ9L0KFdf6/g0Ec="; + hash = "sha256-jTApAnysHola1RX7zk2CLoEbNpS8r+O9qP1zJjxZ7Ho="; }; enableParallelBuilding = true;