{ stdenv, fetchgit, fetchpatch, }: let src = fetchgit { url = "https://gitlab.freifunk-dresden.de/firmware-developer/firmware.git"; sha256 = "sha256-3sV59uqFp+TZKrDf7kmksLvz+5ZKriwFyXZMBH2Sdws="; }; path = "feeds/19.07/feeds-own/bmxd"; makefile = builtins.readFile "${src}/${path}/Makefile"; makeDef = name: builtins.elemAt (builtins.match '' .*?${name}:=([^ ]+).*?'' makefile) 0; name = makeDef "PKG_NAME"; version = makeDef "PKG_VERSION"; release = makeDef "PKG_RELEASE"; patch = fetchpatch { name = "timercpy.patch"; url = "https://gitlab.freifunk-dresden.de/firmware-developer/firmware/merge_requests/36.patch"; sha256 = "sha256-40BbcCZ10cQzvkfsAi8ApCgmC4hGMh2J8xU6gjD3cng="; }; in stdenv.mkDerivation { name = "${name}-${version}-${release}"; inherit src; patches = [ patch ]; buildPhase = "cd ${path}/sources"; installPhase = '' make install SBINDIR=$out/sbin ''; }