{stdenv, lib, fetchFromGitHub, autoreconfHook, ApplicationServices}: stdenv.mkDerivation rec { pname = "duti"; version = "1.5.5pre"; src = fetchFromGitHub { owner = "moretension"; repo = pname; rev = "fe3d3dc411bcea6af7a8cbe53c0e08ed5ecacdb2"; sha256 = "1pg4i6ghpib2gy1sqpml7dbnhr1vbr43fs2pqkd09i4w3nmgpic9"; }; nativeBuildInputs = [autoreconfHook]; buildInputs = [ApplicationServices]; configureFlags = [ "--with-macosx-sdk=/homeless-shelter" # needed to prevent duti from trying to guess our sdk # NOTE: this is different than stdenv.hostPlatform.config! "--host=x86_64-apple-darwin18" ]; meta = with lib; { description = "A command-line tool to select default applications for document types and URL schemes on Mac OS X"; longDescription = '' duti is a command-line utility capable of setting default applications for various document types on Mac OS X, using Apple's Uniform Type Identifiers. A UTI is a unique string describing the format of a file's content. For instance, a Microsoft Word document has a UTI of com.microsoft.word.doc. Using duti, the user can change which application acts as the default handler for a given UTI. ''; maintainers = with maintainers; [matthewbauer]; platforms = platforms.darwin; license = licenses.publicDomain; homepage = "http://duti.org/"; }; }