diff --git a/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/0001-Avoid-usage-of-npx.patch b/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/0001-Avoid-usage-of-npx.patch new file mode 100644 index 000000000000..34e06d77bd29 --- /dev/null +++ b/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/0001-Avoid-usage-of-npx.patch @@ -0,0 +1,37 @@ +From c9aaff2461daba31a25ed20c0789ffd7c3561887 Mon Sep 17 00:00:00 2001 +From: Pasquale +Date: Tue, 9 Nov 2021 23:12:50 +0100 +Subject: [PATCH] Avoid usage of npx + +tsc is only used for checking type annotation +that are stripped by esbuild + +--- + src/kwinscript/CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/kwinscript/CMakeLists.txt b/src/kwinscript/CMakeLists.txt +index 6d85d5d..6f966a4 100644 +--- a/src/kwinscript/CMakeLists.txt ++++ b/src/kwinscript/CMakeLists.txt +@@ -29,7 +29,7 @@ add_custom_target( + + add_custom_command( + OUTPUT "bismuth/contents/code/index.mjs" +- COMMAND "npx" "esbuild" ++ COMMAND "esbuild" + "--bundle" "${CMAKE_CURRENT_SOURCE_DIR}/index.ts" + "--outfile=${CMAKE_CURRENT_BINARY_DIR}/bismuth/contents/code/index.mjs" + "--format=esm" +@@ -40,7 +40,7 @@ add_custom_command( + + add_custom_target( + LintViaTSC +- COMMAND "npx" "tsc" "--noEmit" "--incremental" ++ COMMAND "true" + COMMENT "👮 Checking sources using TS Compiler..." + ) + +-- +2.33.1 + diff --git a/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix b/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix new file mode 100644 index 000000000000..114eb31e69ce --- /dev/null +++ b/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix @@ -0,0 +1,48 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, kcoreaddons +, kwindowsystem +, plasma-framework +, systemsettings +, cmake +, extra-cmake-modules +, esbuild +}: + +mkDerivation rec { + pname = "bismuth"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "Bismuth-Forge"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-ICpGgFvVi7tiYbMCo3JWQmbA36rdWF4NFYTWIejhxr4="; + }; + + patches = [ + ./0001-Avoid-usage-of-npx.patch + ]; + + nativeBuildInputs = [ + cmake + extra-cmake-modules + esbuild + ]; + + buildInputs = [ + kcoreaddons + kwindowsystem + plasma-framework + systemsettings + ]; + + meta = with lib; { + description = "A dynamic tiling extension for KWin"; + license = licenses.mit; + maintainers = with maintainers; [ pasqui23 ]; + homepage = "https://bismuth-forge.github.io/bismuth/"; + inherit (kwindowsystem.meta) platforms; + }; +} diff --git a/pkgs/desktops/plasma-5/default.nix b/pkgs/desktops/plasma-5/default.nix index e5a239308886..8abf2b37dbec 100644 --- a/pkgs/desktops/plasma-5/default.nix +++ b/pkgs/desktops/plasma-5/default.nix @@ -155,6 +155,7 @@ let thirdParty = let inherit (libsForQt5) callPackage; in { plasma-applet-caffeine-plus = callPackage ./3rdparty/addons/caffeine-plus.nix { }; plasma-applet-virtual-desktop-bar = callPackage ./3rdparty/addons/virtual-desktop-bar.nix { }; + bismuth = callPackage ./3rdparty/addons/bismuth { }; kwin-dynamic-workspaces = callPackage ./3rdparty/kwin/scripts/dynamic-workspaces.nix { }; kwin-tiling = callPackage ./3rdparty/kwin/scripts/tiling.nix { }; krohnkite = callPackage ./3rdparty/kwin/scripts/krohnkite.nix { };