python312Packages.argos-translate-files: 1.1.4 -> 1.2.0 (#361677)
[NixPkgs.git] / pkgs / by-name / xc / xcodes / package.nix
blobbd5a56ce145dffe47b7e3a9d364e44fa425f4099
2   lib,
3   fetchFromGitHub,
4   swiftPackages,
5   swift,
6   swiftpm,
7   swiftpm2nix,
8   makeWrapper,
9   aria2,
11 let
12   generated = swiftpm2nix.helpers ./generated;
13   stdenv = swiftPackages.stdenv;
15 stdenv.mkDerivation (finalAttrs: {
16   pname = "xcodes";
17   version = "1.6.0";
19   src = fetchFromGitHub {
20     owner = "XcodesOrg";
21     repo = "xcodes";
22     rev = finalAttrs.version;
23     hash = "sha256-TwPfASRU98rifyA/mINFfoY0MbbwmAh8JneVpJa38CA=";
24   };
26   nativeBuildInputs = [
27     swift
28     swiftpm
29     makeWrapper
30   ];
32   configurePhase = generated.configure;
34   installPhase = ''
35     runHook preInstall
37     binPath="$(swiftpmBinPath)"
38     install -D $binPath/xcodes $out/bin/xcodes
39     wrapProgram $out/bin/xcodes \
40       --prefix PATH : ${lib.makeBinPath [ aria2 ]}
42     runHook postInstall
43   '';
45   meta = {
46     changelog = "https://github.com/XcodesOrg/xcodes/releases/tag/${finalAttrs.version}";
47     description = "Command-line tool to install and switch between multiple versions of Xcode";
48     homepage = "https://github.com/XcodesOrg/xcodes";
49     license = with lib.licenses; [
50       mit
51       # unxip
52       lgpl3Only
53     ];
54     maintainers = with lib.maintainers; [
55       _0x120581f
56       emilytrau
57     ];
58     platforms = lib.platforms.darwin;
59   };