{ stdenv, fetchurl, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo , asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }: let version = "4.0.1"; in stdenv.mkDerivation (rec { name = "btrfs-progs-${version}"; src = fetchurl { url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz"; sha256 = "1jwk0bnb4nvhw6b7i9mw5wkvqc6igx99qqg8zwpaj5nxkvki0bic"; }; buildInputs = [ pkgconfig attr acl zlib libuuid e2fsprogs lzo asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt ]; # for btrfs to get the rpath to libgcc_s, needed for pthread_cancel to work NIX_CFLAGS_LINK = "-lgcc_s"; makeFlags = "prefix=$(out)"; meta = with stdenv.lib; { description = "Utilities for the btrfs filesystem"; homepage = https://btrfs.wiki.kernel.org/; license = licenses.gpl2; maintainers = with maintainers; [ raskin wkennington ]; platforms = platforms.linux; }; } // (if stdenv.isArm then { # gcc bug with -O1 on ARM patchPhase = "sed -i s/-O1/-O2/ configure"; } else {}))