fixed wshowkeys setuid problems

This commit is contained in:
2026-07-11 20:30:07 +01:00
parent 0c8cd3dd3d
commit 0920cf080d
2 changed files with 19 additions and 32 deletions

View File

@@ -8,33 +8,34 @@
self',
pkgs,
...
}: let
}: {config, ...}: let
modules = with self.nixosModules; [
audio
systemTheme
];
runtimePkgs = self'.packages.hyprland.passthru.runtimePackages;
lib = pkgs.lib;
runtimeTarget = name: pkg:
if config.security.wrappers ? ${name}
then "/run/wrappers/bin/${name}"
else lib.getExe pkg;
in {
imports = modules;
programs.hyprland = {
enable = true;
package = self'.packages.hyprland;
};
services.xserver.enable = true;
security.polkit.enable = true;
environment.systemPackages = with pkgs; [
hyprlock
gsettings-desktop-schemas
];
system.activationScripts.hyprRuntimeEnv = lib.stringAfter ["specialfs"] ''
mkdir -p /run/hypr-runtime-env/bin
${lib.concatStringsSep "\n" (lib.mapAttrsToList (name: pkg: ''
ln -sfn ${lib.getExe pkg} /run/hypr-runtime-env/bin/${name}
ln -sfn ${runtimeTarget name pkg} /run/hypr-runtime-env/bin/${name}
'')
runtimePkgs)}
'';
@@ -55,6 +56,7 @@
gotify-desktop = self'.packages.gotify-desktop;
otter-launcher = self'.packages.otter-launcher;
quickshell = self'.packages.quickshell;
wshowkeys = self'.packages.wshowkeys;
waybar = self'.packages.waybar;
wlogout = self'.packages.wlogout;
way-edges = self'.packages.way-edges;

View File

@@ -1,32 +1,17 @@
{
inputs,
moduleWithSystem,
...
}: {
flake.nixosModules.wshowkeys = moduleWithSystem ({inputs', ...}: {
{moduleWithSystem, ...}: {
flake.nixosModules.wshowkeys = moduleWithSystem ({
self',
pkgs,
...
}: let
lib = pkgs.lib;
in {
programs.wshowkeys = {
enable = true;
package = inputs'.wshowkeys.packages.default;
package = self'.packages.wshowkeys;
};
});
perSystem = {
pkgs,
inputs',
...
}: {
packages.wshowkeys = inputs.wrappers.lib.wrapPackage ({...}: {
inherit pkgs;
package = inputs'.wshowkeys.packages.default;
flags = {
"-a" = ["right" "top"];
"-F" = "'FiraMono Nerd Font 35'";
"-s" = "'#cba6f7ff'";
"-f" = " '#cdd6f4ff'";
"-b" = "'#45475a99'";
"-m" = "70";
"-l" = "60";
"-t" = "1000";
};
});
perSystem = {inputs', ...}: {
packages.wshowkeys = inputs'.wshowkeys.packages.default;
};
}