16 , withGui ? false # build GUI version
19 rustPlatform.buildRustPackage rec {
23 src = fetchFromGitHub {
24 owner = "RainbowCookie32";
27 sha256 = "sha256-BsbuEsW6cQbWg8BLtEBnjoCfcUCy1xWz9u0wBa8BKtA=";
30 cargoSha256 = "sha256-TD5du7I6Hw1PC8s9NI19jYCXlaZMnsdVj/a0q+M8Raw=";
34 ] ++ lib.optionals withGui [
41 ] ++ lib.optionals withGui [
57 buildNoDefaultFeatures = true;
58 buildFeatures = [ (if withGui then "egui" else "cli") ];
61 patchelf --set-rpath "${lib.makeLibraryPath buildInputs}" $out/bin/rusty-psn
62 '' + lib.optionalString withGui ''
63 mv $out/bin/rusty-psn $out/bin/rusty-psn-gui
66 desktopItem = lib.optionalString withGui (makeDesktopItem {
68 desktopName = "rusty-psn";
69 exec = "rusty-psn-gui";
70 comment = "A simple tool to grab updates for PS3 games, directly from Sony's servers using their updates API.";
82 desktopItems = lib.optionals withGui [ desktopItem ];
85 description = "Simple tool to grab updates for PS3 games, directly from Sony's servers using their updates API";
86 homepage = "https://github.com/RainbowCookie32/rusty-psn/";
87 license = licenses.mit;
88 platforms = [ "x86_64-linux" ];
89 maintainers = with maintainers; [ AngryAnt ];