nixos-configs/lib/hypr/default.nix

58 lines
961 B
Nix
Raw Normal View History

{
concatStringsSep,
elemAt,
optionals,
...
}: rec {
pointToStr = p: "${toString (elemAt p 0)}, ${toString (elemAt p 1)}";
mkBezier = {
name,
p0,
p1,
}:
concatStringsSep "," [name (pointToStr p0) (pointToStr p1)];
mkAnimation = {
name,
enable ? true,
duration ? 0, # in ds (100ms)
bezier ? "default",
style ? null,
}:
concatStringsSep "," (
[
name
(
if enable
then "1"
else "0"
)
]
++ optionals enable (
[
(toString duration)
bezier
]
++ optionals (style != null) [style]
)
);
mkLayerRule = {
rule,
namespace,
}:
concatStringsSep "," [rule namespace];
mkBind = {
modifier ? "",
key,
dispatcher ? "exec",
command ? null,
}:
concatStringsSep "," (
[modifier key dispatcher]
++ optionals (command != null) [command]
);
}