tvl-depot/users/flokli/ipu6-softisp/default.nix
sterni 71435d9546 chore(3p/sources): Bump channels & overlays
* agenix has not been updated (https://github.com/ryantm/agenix/pull/241).
* wasm-bindgen bumped to 0.2.92 in Rust WASM projects
* 3p/lisp: port lispPackages from stable channel

  The Lisp package set we are using (`pkgs.lispPackages`) is the "old
  old" package set, whereas we were supposed to have been using
  `pkgs.lispPackages_new` (which is the "old new" package set).

  Either way we missed that train, and now there's a "new new" package
  set, but with a twist: Lisp packages in nixpkgs are now tied to
  their compilers, so the most generic way to access them seems to be
  from `pkgs.sbclPackages`.

  Switching to the packages from the "new new" package set doesn't
  work: Lots of stuff stops building if we just switch the sources
  over, and not everything is trivially fixable.

  For now we stay on the lispPackages from the stable channel. We need
  to look into the migration later.

  Or rewrite panettone.
* tvix: update generated protobuf files
* 3p/nixpkgs: pick trunk from stable channel; newer versions try to
  read files and do network I/O during build, but don't print enough
  details in error messages to figure out why.
* 3p/overlays: remove tdlib override (nixpkgs is currently new enough)
* 3p/overlays: override telega.el sources while updates are lagging in
  nixpkgs
* users/flokli/ipu6-softisp: update firmware paths, which NixOS now
  stores zstd-compressed.

Change-Id: I5a7a6c8b5d0688461bca92b9e6d654356d3a1cf1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11711
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
Reviewed-by: tazjin <tazjin@tvl.su>
2024-06-08 15:20:48 +00:00

57 lines
1.7 KiB
Nix

# This file ensures the fixes from ./config.nix build with the version of
# nixpkgs from depot.
# If you're an outside user of this, import config.nix as a NixOS module (and
# check the README.md file).
{ depot
, pkgs
, ...
}:
let
systemFor = sys: (depot.ops.nixos.nixosFor sys).system;
in
depot.nix.readTree.drvTargets rec {
testSystem = systemFor ({ modulesPath, pkgs, ... }: {
imports = [
# Import the module, this is something a user would do in their config.
./config.nix
];
# Make sure we use the linuxPackages_latest.
boot.kernelPackages = pkgs.linuxPackages_latest;
# Enable firmware.
hardware.enableAllFirmware = true;
# Set some options necessary to evaluate.
boot.loader.systemd-boot.enable = true;
fileSystems."/" = {
device = "/dev/disk/by-partlabel/root";
fsType = "xfs";
};
# Enable pipewire and wireplumber.
services.pipewire = {
enable = true;
wireplumber.enable = true;
};
# Shut off the warning.
system.stateVersion = "24.05";
});
# Make sure the firmware requested by the driver is present in our firmware.
# We do have a .zst suffix here, but that's fine, since request_firmware does
# check ${name}.zst too in case CONFIG_FW_LOADER_COMPRESS is set.
# The path needs to be kept in sync with the ones used in the kernel patch.
checkFirmware = pkgs.runCommand "check-firmware" { } ''
stat ${testSystem}/firmware/intel/ipu/ipu6se_fw.bin.zst
stat ${testSystem}/firmware/intel/ipu/ipu6ep_fw.bin.zst
stat ${testSystem}/firmware/intel/ipu/ipu6_fw.bin.zst
stat ${testSystem}/firmware/intel/ipu/ipu6epmtl_fw.bin.zst
# all good, succeed build
touch $out
'';
}