diff --git a/pkgs/by-name/ul/ultimatepp/package.nix b/pkgs/by-name/ul/ultimatepp/package.nix index e117de2..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; @@ -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;