diff --git a/pkgs/by-name/ul/ultimatepp/buildUppPackage.nix b/pkgs/by-name/ul/ultimatepp/buildUppPackage.nix index 8f4d581..83f795b 100644 --- a/pkgs/by-name/ul/ultimatepp/buildUppPackage.nix +++ b/pkgs/by-name/ul/ultimatepp/buildUppPackage.nix @@ -59,7 +59,7 @@ stdenv.mkDerivation (self: { "$assemblies" \ ${lib.escapeShellArg package} \ ${buildMethod} \ - -${if buildShared then "S" else "s"}uvr \ + -${if buildShared then "S" else "s"}uvr "-H$NIX_BUILD_CORES" \ ${flagsString} \ $out/${output} diff --git a/pkgs/by-name/ul/ultimatepp/package.nix b/pkgs/by-name/ul/ultimatepp/package.nix index 8e4b8af..867f5cc 100644 --- a/pkgs/by-name/ul/ultimatepp/package.nix +++ b/pkgs/by-name/ul/ultimatepp/package.nix @@ -5,6 +5,8 @@ makeWrapper, pkg-config, stdenv, + makeDesktopItem, + copyDesktopItems, # pkg-config dependencies libpng, @@ -60,7 +62,7 @@ in { nativeBuildInputs = [ makeWrapper pkg-config - ]; + ] ++ lib.optional (!self.passthru.bootstrap) copyDesktopItems; buildInputs = uppsrcDependencies ++ lib.optional (!self.passthru.bootstrap) libclang; @@ -94,8 +96,8 @@ in { if self.passthru.bootstrap then '' make -f umkMakefile -j $NIX_BUILD_CORES "$makeFlagsArray" '' else '' - ${lib.getExe' selfBootstrap "umk"} uppsrc ide ${buildMethod} -rvs - ${lib.getExe' selfBootstrap "umk"} uppsrc umk ${buildMethod} -rvs + ${lib.getExe' selfBootstrap "umk"} uppsrc ide ${buildMethod} -rvs "-H$NIX_BUILD_CORES" + ${lib.getExe' selfBootstrap "umk"} uppsrc umk ${buildMethod} -rvs "-H$NIX_BUILD_CORES" '') + '' runHook postBuild ''; @@ -112,10 +114,29 @@ in { wrapProgram $out/bin/theide \ --unset WAYLAND_DISPLAY + + mkdir -p $out/share/icons/hicolor/scalable/apps + cp uppsrc/ide/icon.svg $out/share/icons/hicolor/scalable/apps/ultimatepp-theide.svg + for size in 16 32 64 128 256 512; do + mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps + cp uppsrc/ide/icon''${size}x''${size}.png $out/share/icons/hicolor/''${size}x''${size}/apps/ultimatepp-theide.png + done '') + '' runHook postInstall ''; + desktopItems = [ + (makeDesktopItem { + name = "ultimatepp-theide"; + exec = "theide"; + icon = "ultimatepp-theide"; + desktopName = "TheIDE"; + comment = "The Ultimate++ Framework IDE"; + categories = [ "Development" "IDE" ]; + terminal = false; + }) + ]; + passthru = { bootstrap = false; inherit uppsrcDependencies;