nixpkgs/pkgs/os-specific/linux/usbip/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

32 lines
835 B
Nix

{ lib, stdenv, kernel, udev, autoconf, automake, libtool, kernelOlder }:
stdenv.mkDerivation {
name = "usbip-${kernel.name}";
src = kernel.src;
patches = lib.optionals (kernelOlder "5.4") [
# fixes build with gcc8
./fix-snprintf-truncation.patch
# fixes build with gcc9
./fix-strncpy-truncation.patch
];
nativeBuildInputs = [ autoconf automake libtool ];
buildInputs = [ udev ];
NIX_CFLAGS_COMPILE = [ "-Wno-error=address-of-packed-member" ];
preConfigure = ''
cd tools/usb/usbip
./autogen.sh
'';
meta = with lib; {
homepage = "https://github.com/torvalds/linux/tree/master/tools/usb/usbip";
description = "allows to pass USB device from server to client over the network";
license = licenses.gpl2;
platforms = platforms.linux;
broken = kernelOlder "4.10";
};
}