{ eclipses, stdenv, requireFile, ... }: let name = "mcuxpressotools"; version = "v16-1"; description = "MCUXpresso Config Tools"; filename = "mcuxpresso-config-tools-${version}_amd64.deb"; src = stdenv.mkDerivation { inherit version description; name = "${name}-src"; src = requireFile { url = "https://www.nxp.com/design/software/development-software/mcuxpresso-config-tools-pins-clocks-and-peripherals:MCUXpresso-Config-Tools"; name = "${filename}.bin"; sha256 = "sha256-BbEwxm1urV2IrgUiTiMBEAPvonQGwdL4fpqFftGgRxI="; }; buildCommand = '' # Unpack tarball. mkdir -p deb sh $src --target deb || true ar -xv deb/${filename} tar xfvz data.tar.gz -C . mkdir -p ./final/eclipse mv ./opt/nxp/MCUX_CFG_v13/bin/.* final/eclipse mv ./usr final/ mv final/eclipse/tools final/eclipse/eclipse mv final/eclipse/tools.ini final/eclipse/eclipse.ini # Create custom .eclipseproduct file echo "name=${name} id=com.nxp.${name} version=${version} " > final/eclipse/.eclipseproduct # Additional files mkdir -p final/usr/share/mime mv ./opt/nxp/MCUX_CFG_v13/mcu_data final/mcu_data cd ./final tar -czf $out ./ ''; }; in eclipses.buildEclipse {inherit description name src;}