forked from nikkuss/pkgs
drop the x1e packages; they live in x1e-nixos now (#28)
drop x1e pkgs Reviewed-on: nikkuss/pkgs#28 Co-authored-by: Nikkuss <Scuggo@pm.me>
This commit is contained in:
@@ -98,20 +98,6 @@
|
|||||||
};
|
};
|
||||||
date = "2026-08-12";
|
date = "2026-08-12";
|
||||||
};
|
};
|
||||||
qebspil = {
|
|
||||||
pname = "qebspil";
|
|
||||||
version = "8e4d9e676a3b3afe136cda9b953a2139ff1a32d0";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/stephan-gh/qebspil.git";
|
|
||||||
rev = "8e4d9e676a3b3afe136cda9b953a2139ff1a32d0";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
deepClone = false;
|
|
||||||
leaveDotGit = false;
|
|
||||||
sparseCheckout = [ ];
|
|
||||||
sha256 = "sha256-kWUXzeYWNxGgmjt/p9yozrWc5ouUs0XXBRfiFMlu+QQ=";
|
|
||||||
};
|
|
||||||
date = "2025-10-25";
|
|
||||||
};
|
|
||||||
radare2-ghidra = {
|
radare2-ghidra = {
|
||||||
pname = "radare2-ghidra";
|
pname = "radare2-ghidra";
|
||||||
version = "6.2.0";
|
version = "6.2.0";
|
||||||
@@ -134,17 +120,6 @@
|
|||||||
sha256 = "sha256-btJfvsIC/xRfdQYJL0FYqUHsvP7zn/2EnUzLesWZPK4=";
|
sha256 = "sha256-btJfvsIC/xRfdQYJL0FYqUHsvP7zn/2EnUzLesWZPK4=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
slbounce = {
|
|
||||||
pname = "slbounce";
|
|
||||||
version = "v5";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "TravMurav";
|
|
||||||
repo = "slbounce";
|
|
||||||
rev = "v5";
|
|
||||||
fetchSubmodules = false;
|
|
||||||
sha256 = "sha256-w+0SKR0A/hcFU6iFEOgyG+vWwgAWF8h9D0/X7GSFm7w=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
vpkmerge = {
|
vpkmerge = {
|
||||||
pname = "vpkmerge";
|
pname = "vpkmerge";
|
||||||
version = "v0.19.0";
|
version = "v0.19.0";
|
||||||
|
|||||||
@@ -18,19 +18,10 @@ fetch.github = "radareorg/radare2-mcp"
|
|||||||
src.github = "radareorg/r2ghidra"
|
src.github = "radareorg/r2ghidra"
|
||||||
fetch.github = "radareorg/r2ghidra"
|
fetch.github = "radareorg/r2ghidra"
|
||||||
|
|
||||||
[slbounce]
|
|
||||||
src.github = "TravMurav/slbounce"
|
|
||||||
fetch.github = "TravMurav/slbounce"
|
|
||||||
|
|
||||||
[base24-schemes]
|
[base24-schemes]
|
||||||
src.git = "https://github.com/tinted-theming/schemes.git"
|
src.git = "https://github.com/tinted-theming/schemes.git"
|
||||||
fetch.git = "https://github.com/tinted-theming/schemes.git"
|
fetch.git = "https://github.com/tinted-theming/schemes.git"
|
||||||
|
|
||||||
[qebspil]
|
|
||||||
src.git = "https://github.com/stephan-gh/qebspil.git"
|
|
||||||
fetch.git = "https://github.com/stephan-gh/qebspil.git"
|
|
||||||
git.fetchSubmodules = true
|
|
||||||
|
|
||||||
[ath-tools]
|
[ath-tools]
|
||||||
src.git = "https://github.com/qca/qca-swiss-army-knife.git"
|
src.git = "https://github.com/qca/qca-swiss-army-knife.git"
|
||||||
fetch.git = "https://github.com/qca/qca-swiss-army-knife.git"
|
fetch.git = "https://github.com/qca/qca-swiss-army-knife.git"
|
||||||
|
|||||||
@@ -1,63 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
callPackage,
|
|
||||||
stdenv,
|
|
||||||
gnumake,
|
|
||||||
dtc,
|
|
||||||
glibc,
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
sources = callPackage ../../../../_sources/generated.nix { };
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
pname = "qebspil";
|
|
||||||
version = "unstable-${sources.qebspil.date}";
|
|
||||||
|
|
||||||
inherit (sources.qebspil) src;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
gnumake
|
|
||||||
dtc
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = ''
|
|
||||||
# Create a symlink to glibc's elf.h for gnu-efi
|
|
||||||
mkdir -p external/gnu-efi/inc/sys
|
|
||||||
ln -sf ${glibc.dev}/include/elf.h external/gnu-efi/inc/sys/elf.h
|
|
||||||
|
|
||||||
# Set up build environment
|
|
||||||
export SRCDIR=$PWD
|
|
||||||
export OUTDIR=$PWD/out
|
|
||||||
'';
|
|
||||||
|
|
||||||
makeFlags = [
|
|
||||||
"QEBSPIL_ALWAYS_START=1"
|
|
||||||
"CROSS_COMPILE="
|
|
||||||
"ARCH=aarch64"
|
|
||||||
];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
# Install the EFI binary
|
|
||||||
mkdir -p $out/share/efi
|
|
||||||
cp out/qebspilaa64.efi $out/share/efi/
|
|
||||||
|
|
||||||
# Also create a symlink in a more standard location
|
|
||||||
mkdir -p $out/lib/systemd/boot/efi
|
|
||||||
ln -s $out/share/efi/qebspilaa64.efi $out/lib/systemd/boot/efi/qebspilaa64.efi
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "UEFI boot driver to start co-processors on Qualcomm platforms late during the boot process";
|
|
||||||
homepage = "https://github.com/stephan-gh/qebspil";
|
|
||||||
license = licenses.gpl2Only;
|
|
||||||
platforms = [ "aarch64-linux" ];
|
|
||||||
mainProgram = "qebspilaa64.efi";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
callPackage,
|
|
||||||
stdenv,
|
|
||||||
fetchzip,
|
|
||||||
fetchgit,
|
|
||||||
fetchFromGitHub,
|
|
||||||
buildPackages,
|
|
||||||
dtc,
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
sources = callPackage ../../../../_sources/generated.nix { };
|
|
||||||
|
|
||||||
aarch64-system-register-xmls = fetchzip {
|
|
||||||
url = "https://developer.arm.com/-/media/developer/products/architecture/armv8-a-architecture/2020-06/SysReg_xml_v86A-2020-06.tar.gz";
|
|
||||||
stripRoot = false;
|
|
||||||
hash = "sha256-wpWMIdR4v4sGZ0FEn/j5+AzkpPFOF7lUKIFpVl5AMEE=";
|
|
||||||
};
|
|
||||||
|
|
||||||
arm64-sysreg-lib = stdenv.mkDerivation {
|
|
||||||
name = "arm64-sysreg-lib";
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "ashwio";
|
|
||||||
repo = "arm64-sysreg-lib";
|
|
||||||
sparseCheckout = [ "/" ];
|
|
||||||
rev = "d421e249a026f6f14653cb6f9c4edd8c5d898595";
|
|
||||||
hash = "sha256-vUuV8eddYAdwXGQe+L7lKiAwyqHPYmiOdVFKvwCMWkQ=";
|
|
||||||
};
|
|
||||||
nativeBuildInputs = [
|
|
||||||
(buildPackages.python3.withPackages (ps: [ ps.beautifulsoup4 ]))
|
|
||||||
];
|
|
||||||
buildPhase = ''
|
|
||||||
python ./run-build.py ${aarch64-system-register-xmls}/SysReg_xml_v86A-2020-06
|
|
||||||
'';
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/include
|
|
||||||
cp -r include $out/
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
gnu-efi = fetchFromGitHub {
|
|
||||||
owner = "ncroxon";
|
|
||||||
repo = "gnu-efi";
|
|
||||||
rev = "3.0.15";
|
|
||||||
hash = "sha256-flQJIRPKd0geQRAtJSu4vravJG0lTB6BfeIqpUM5P2I=";
|
|
||||||
};
|
|
||||||
|
|
||||||
dtc-src = fetchgit {
|
|
||||||
url = "https://git.kernel.org/pub/scm/utils/dtc/dtc.git";
|
|
||||||
rev = "v1.7.2";
|
|
||||||
hash = "sha256-KZCzrvdWd6zfQHppjyp4XzqNCfH2UnuRneu+BNIRVAY=";
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
|
||||||
pname = "slbounce";
|
|
||||||
version = lib.removePrefix "v" sources.slbounce.version;
|
|
||||||
|
|
||||||
inherit (sources.slbounce) src;
|
|
||||||
|
|
||||||
nativeBuildInputs = [ dtc ];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
rmdir external/{arm64-sysreg-lib,dtc}
|
|
||||||
ln -s ${arm64-sysreg-lib} external/arm64-sysreg-lib
|
|
||||||
ln -s ${dtc-src} external/dtc
|
|
||||||
|
|
||||||
cp -r ${gnu-efi}/* external/gnu-efi/
|
|
||||||
chmod -R u+w external/gnu-efi
|
|
||||||
'';
|
|
||||||
|
|
||||||
makeFlags = [
|
|
||||||
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
|
|
||||||
# Force EL2 switch regardless of DTB detection
|
|
||||||
# Without this, slbounce checks for 'dtbhack-el2-overlay' in DTB
|
|
||||||
"SLBOUNCE_ALWAYS_SWITCH=1"
|
|
||||||
# Enable debug output
|
|
||||||
"DEBUG=1"
|
|
||||||
"all"
|
|
||||||
];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/share/slbounce
|
|
||||||
cp out/*.efi $out/share/slbounce/
|
|
||||||
|
|
||||||
# Also build and install DTB overlays
|
|
||||||
make dtbs || true
|
|
||||||
mkdir -p $out/share/slbounce/dtbo
|
|
||||||
cp out/dtbo/*.dtbo $out/share/slbounce/dtbo/ 2>/dev/null || true
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "EL2 (hypervisor mode) enabler for Qualcomm Windows-on-ARM devices";
|
|
||||||
homepage = "https://github.com/TravMurav/slbounce";
|
|
||||||
license = licenses.gpl2Only;
|
|
||||||
platforms = [ "aarch64-linux" ];
|
|
||||||
};
|
|
||||||
})
|
|
||||||
@@ -1,96 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
stdenvNoCC,
|
|
||||||
stdenv,
|
|
||||||
p7zip,
|
|
||||||
curl,
|
|
||||||
jq,
|
|
||||||
cacert,
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "22621.6060";
|
|
||||||
# Fixed-Output Derivation to fetch winre.wim from Microsoft CDN via UUPDump API
|
|
||||||
winre-wim = stdenvNoCC.mkDerivation {
|
|
||||||
pname = "winre-wim";
|
|
||||||
inherit version;
|
|
||||||
nativeBuildInputs = [
|
|
||||||
curl
|
|
||||||
jq
|
|
||||||
cacert
|
|
||||||
];
|
|
||||||
|
|
||||||
UUP_ID = "b90029a9-23b4-4558-9687-2142f79e5ae2";
|
|
||||||
|
|
||||||
dontUnpack = true;
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
|
|
||||||
echo "Querying UUPDump API for winre.wim..."
|
|
||||||
WINRE_URL=$(curl -s "https://api.uupdump.net/get.php?id=$UUP_ID" | jq -r '.response.files["winre.wim"].url')
|
|
||||||
|
|
||||||
if [[ -z "$WINRE_URL" || "$WINRE_URL" == "null" ]]; then
|
|
||||||
echo "ERROR: Failed to get winre.wim URL from UUPDump API"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Downloading winre.wim from: $WINRE_URL"
|
|
||||||
curl -L -o winre.wim "$WINRE_URL"
|
|
||||||
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
cp winre.wim "$out"
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
outputHashMode = "flat";
|
|
||||||
outputHashAlgo = "sha256";
|
|
||||||
outputHash = "sha256-jEBM0ZXEqe7HEjbpQdWNumWH5/KmCuGnIcIlFGN3W6g=";
|
|
||||||
|
|
||||||
SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "tcblaunch";
|
|
||||||
inherit version;
|
|
||||||
src = winre-wim;
|
|
||||||
|
|
||||||
nativeBuildInputs = [ p7zip ];
|
|
||||||
|
|
||||||
dontUnpack = true;
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
echo "Extracting tcblaunch.exe from winre.wim..."
|
|
||||||
mkdir -p extracted
|
|
||||||
7z e "$src" -oextracted 'Windows/System32/tcblaunch.exe' -y
|
|
||||||
if [[ ! -f "extracted/tcblaunch.exe" ]]; then
|
|
||||||
echo "ERROR: tcblaunch.exe was not extracted"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
ls -lh extracted/tcblaunch.exe
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
mkdir -p "$out/share/tcblaunch"
|
|
||||||
cp extracted/tcblaunch.exe "$out/share/tcblaunch/tcblaunch.exe"
|
|
||||||
chmod 644 "$out/share/tcblaunch/tcblaunch.exe"
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Microsoft tcblaunch.exe for Qualcomm Secure Launch (required by slbounce)";
|
|
||||||
homepage = "https://github.com/TravMurav/slbounce";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
platforms = [
|
|
||||||
"aarch64-linux"
|
|
||||||
"x86_64-linux"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
{
|
|
||||||
msitools,
|
|
||||||
tree,
|
|
||||||
fetchurl,
|
|
||||||
lib,
|
|
||||||
stdenv,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation (
|
|
||||||
let
|
|
||||||
fw_files = [
|
|
||||||
"adsp_dtbs.elf"
|
|
||||||
"adspr.jsn"
|
|
||||||
"adsps.jsn"
|
|
||||||
"adspua.jsn"
|
|
||||||
"battmgr.jsn"
|
|
||||||
"cdsp_dtbs.elf"
|
|
||||||
"cdspr.jsn"
|
|
||||||
"qcadsp8380.mbn"
|
|
||||||
"qccdsp8380.mbn"
|
|
||||||
"qcdxkmsuc8380.mbn"
|
|
||||||
"bdwlan01.e0b"
|
|
||||||
];
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
rec {
|
|
||||||
name = "x1e80100-firmware";
|
|
||||||
version = "26100_26.053.36539.0";
|
|
||||||
src = fetchurl {
|
|
||||||
# https://www.microsoft.com/en-us/download/details.aspx?id=106120
|
|
||||||
url = "https://download.microsoft.com/download/b7ca2c3f-d320-4795-be0f-529a0117abb4/SurfaceLaptop7_ARM_Win11_${version}.msi";
|
|
||||||
hash = "sha256-ZrbhrOfl8BvFks1MmueKowu7DgSrV0kc0D7CqqbhIps=";
|
|
||||||
};
|
|
||||||
nativeBuildInputs = [
|
|
||||||
msitools
|
|
||||||
tree
|
|
||||||
];
|
|
||||||
unpackPhase = ''
|
|
||||||
msiextract -C . "$src"
|
|
||||||
'';
|
|
||||||
buildPhase = ''
|
|
||||||
mkdir -p "$out/lib/firmware/qcom/x1e80100/microsoft/Romulus"
|
|
||||||
for file in ${lib.concatStringsSep " " fw_files}; do
|
|
||||||
echo -e "\tSearching for $file..."
|
|
||||||
fw_path=$(find . -type f -name "$file" -print | head -n 1)
|
|
||||||
if [[ -n "$fw_path" ]]; then
|
|
||||||
cp -v "$fw_path" "$out/lib/firmware/qcom/x1e80100/microsoft/Romulus/"
|
|
||||||
else
|
|
||||||
echo "Error: $file not found!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
cp "$out/lib/firmware/qcom/x1e80100/microsoft/Romulus/qcdxkmsuc8380.mbn" "$out/lib/firmware/qcom/x1e80100/microsoft/qcdxkmsuc8380.mbn"
|
|
||||||
'';
|
|
||||||
meta = {
|
|
||||||
platforms = [ "aarch64-linux" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
)
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
--- a/board-2.json 2025-07-24 19:46:44.712406478 +0000
|
|
||||||
+++ b/board-2.json 2025-07-24 19:46:42.655405480 +0000
|
|
||||||
@@ -27,7 +27,8 @@
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"names": [
|
|
||||||
- "bus=pci,vendor=17cb,device=1107,subsystem-vendor=17cb,subsystem-device=3378,qmi-chip-id=2,qmi-board-id=255"
|
|
||||||
+ "bus=pci,vendor=17cb,device=1107,subsystem-vendor=17cb,subsystem-device=3378,qmi-chip-id=2,qmi-board-id=255",
|
|
||||||
+ "bus=pci,vendor=17cb,device=1107,subsystem-vendor=17cb,subsystem-device=1107,qmi-chip-id=2,qmi-board-id=255"
|
|
||||||
],
|
|
||||||
"data": "bus=pci,vendor=17cb,device=1107,subsystem-vendor=17cb,subsystem-device=3378,qmi-chip-id=2,qmi-board-id=255.bin"
|
|
||||||
},
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{ ath-tools, linux-firmware }:
|
|
||||||
linux-firmware.overrideAttrs (final: {
|
|
||||||
postInstall = ''
|
|
||||||
mkdir temp
|
|
||||||
cd temp || exit
|
|
||||||
${ath-tools.ath12k-tools}/bin/ath12k-bdencoder -e $out/lib/firmware/ath12k/WCN7850/hw2.0/board-2.bin
|
|
||||||
patch -p1 < ${./firmware.patch}
|
|
||||||
${ath-tools.ath12k-tools}/bin/ath12k-bdencoder -c board-2.json
|
|
||||||
cp board-2.bin $out/lib/firmware/ath12k/WCN7850/hw2.0/board-2.bin
|
|
||||||
'';
|
|
||||||
})
|
|
||||||
Reference in New Issue
Block a user