Commit 671e89b4 authored by Christian Kögler's avatar Christian Kögler
Browse files

tbs: 20240506 -> 20241026

parent 93d9c993
Loading
Loading
Loading
Loading
+27 −13
Original line number Diff line number Diff line
{ stdenv, lib, fetchFromGitHub, kernel, kmod, patchutils, perlPackages }:
{
  stdenv,
  lib,
  fetchFromGitHub,
  kernel,
  kmod,
  patchutils,
  perlPackages,
}:
let

  media = fetchFromGitHub rec {
    name = repo;
    owner = "tbsdtv";
    repo = "linux_media";
    rev = "d8d1ff33c0c47e34fe3e860b52b4d6c457520866";
    hash = "sha256-1Z9itZ5GFpfUeRtp5xTnS+I91LUZLDhsEcF2v8ThaCs=";
    rev = "36ce48448be5dd42669a5199f61e85da1a68cf60";
    hash = "sha256-fbb1ITcWymLoybA7VkfdpJmuRHKCP1s0CqLn0Rl2E2I=";
  };

  build = fetchFromGitHub rec {
    name = repo;
    owner = "tbsdtv";
    repo = "media_build";
    rev = "8cd12a6e90999f3a341018812a5d66d7e6b30913";
    hash = "sha256-+I0NrML54ni37qgDHbRUQiLmmw/UZgXmoFoiDNDeH5A=";
    rev = "0f49c76b80838ded04bd64c56af9e1f9b8ac1965";
    hash = "sha256-S5g7OTBJjzClLfy6C0PJwUtukrqoCiIjyU26Yy26hDo=";
  };

in
stdenv.mkDerivation {
  pname = "tbs";
  version = "20240506-${kernel.version}";
  version = "20241026-${kernel.version}";

  srcs = [ media build ];
  srcs = [
    media
    build
  ];
  sourceRoot = build.name;

  # https://github.com/tbsdtv/linux_media/wiki
@@ -53,19 +64,22 @@ stdenv.mkDerivation {

  hardeningDisable = [ "pic" ];

  nativeBuildInputs = [ patchutils kmod perlPackages.ProcProcessTable ]
    ++ kernel.moduleBuildDependencies;
  nativeBuildInputs = [
    patchutils
    kmod
    perlPackages.ProcProcessTable
  ] ++ kernel.moduleBuildDependencies;

  postInstall = ''
    find $out/lib/modules/${kernel.modDirVersion} -name "*.ko" -exec xz {} \;
  '';

  meta = with lib; {
  meta = {
    homepage = "https://www.tbsdtv.com/";
    description = "Linux driver for TBSDTV cards";
    license = licenses.gpl2Only;
    maintainers = with maintainers; [ ck3d ];
    license = lib.licenses.gpl2Only;
    maintainers = with lib.maintainers; [ ck3d ];
    priority = -1;
    broken = kernel.kernelOlder "4.14" || kernel.kernelAtLeast "6.9";
    broken = kernel.kernelOlder "4.14" || kernel.kernelAtLeast "6.12";
  };
}