depot/third_party/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland-plugins/hyprland-plugins.nix

54 lines
1.6 KiB
Nix

let
# shared src for upstream hyprland-plugins repo
# function generating derivations for all plugins in hyprland-plugins
hyprland-plugins =
builtins.mapAttrs
(
name: description:
(
{
lib,
cmake,
fetchFromGitHub,
hyprland,
mkHyprlandPlugin,
}:
let
version = "0.45.0";
hyprland-plugins-src = fetchFromGitHub {
owner = "hyprwm";
repo = "hyprland-plugins";
rev = "refs/tags/v${version}";
hash = "sha256-hOljwsXpY4Y6guvcr51tWCnXo6c56yaBknnLXk1m3Vk=";
};
in
mkHyprlandPlugin hyprland {
pluginName = name;
inherit version;
src = "${hyprland-plugins-src}/${name}";
nativeBuildInputs = [ cmake ];
meta = {
homepage = "https://github.com/hyprwm/hyprland-plugins";
description = "Hyprland ${description} plugin";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [
fufexan
johnrtitor
];
inherit (hyprland.meta) platforms;
};
}
)
)
{
borders-plus-plus = "multiple borders";
csgo-vulkan-fix = "CS:GO/CS2 Vulkan fix";
hyprbars = "window title";
hyprexpo = "workspaces overview";
hyprtrails = "smooth trails behind moving windows";
hyprwinwrap = "xwinwrap-like";
};
in
hyprland-plugins