anchor.diff:  { stdenv
   , elfutils
   , fetchzip
  +, perl
   
   , kernel
   , libmnl
  
positive.code:     optionals
      optionalString;
  
    rev = "765b5186c972c83083fc32a24f629ccc50529bd1";
    date = "2018-11-15";
  in
  stdenv.mkDerivation {
    name = "wireguard-${date}${optionalString (kernel != null) "-${kernel.version}"}";
  
negative.code:   src = fetchzip {
      version = 6;
      url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${rev}.tar.xz";
      multihash = "QmQtBx2jGBzrzJbwLXoNKHz7h9GXV59Uwmi9KVgiTNVVd4";
      sha256 = "5b37b753beeb0e90ebf689469dc6881add4ee24ebfaa9d9ff604932615046ea0";
    };
  
    nativeBuildInputs = optionals (kernel != null) [
      elfutils
      perl
    ];
  
    buildInputs = optionals (kernel == null) [
  