diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..8d31a90 --- /dev/null +++ b/default.nix @@ -0,0 +1,27 @@ +{ pkgs ? import {} }: +pkgs.stdenv.mkDerivation { + pname = "ps3_hdd_reader"; + version = "1.0.0"; + + src = pkgs.fetchurl { + url = "https://www.psx-place.com/resources/ps3-hdd-reader.1278/download?version=2333"; + hash = "sha256-wqIx6K9VUNevC7AV2zxfncgWGxDw9goW6tB2DfTPWSM="; + }; + + 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 + ''; +} diff --git a/flake.nix b/flake.nix index 440a519..ef4a0f9 100644 --- a/flake.nix +++ b/flake.nix @@ -3,49 +3,13 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; - flake-utils.url = "github:numtide/flake-utils"; + 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; - }; + packages.default = import ./default.nix { inherit pkgs; }; }); }