{ description = "Flake for PS3 HDD Reader"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; version = "1.0.0"; ps3hddreader-zip = pkgs.fetchurl { url = "https://www.psx-place.com/resources/ps3-hdd-reader.1278/download?version=2333"; hash = "sha256-wqIx6K9VUNevC7AV2zxfncgWGxDw9goW6tB2DfTPWSM="; }; ps3hddreader-bin = pkgs.stdenv.mkDerivation { pname = "ps3_hdd_reader"; inherit version; src = ps3hddreader-zip; nativeBuildInputs = with pkgs; [p7zip]; unpackPhase = '' mkdir unpacked 7z x $src -ounpacked ''; buildPhase = '' cd unpacked/Linux/source make ''; installPhase = '' mkdir -p $out/bin cp ps3_hdd_reader $out/bin ''; }; in { legacyPackages.ps3hddreader = ps3hddreader-bin; packages = rec { ps3hddreader = ps3hddreader-bin; default = ps3hddreader; }; apps = rec { ps3hddreader = flake-utils.lib.mkApp { drv = ps3hddreader-bin; }; default = ps3hddreader; }; }); }