2026-02-10 22:42:47 -08:00
|
|
|
{ config, inputs, pkgs, makeEnable, ... }:
|
2026-04-15 10:45:22 -07:00
|
|
|
let
|
|
|
|
|
system = pkgs.stdenv.hostPlatform.system;
|
|
|
|
|
kanshiSniPackage =
|
|
|
|
|
inputs.kanshi-sni.packages.${system}.default.overrideAttrs (old: {
|
|
|
|
|
patches = (old.patches or [ ]) ++ [
|
|
|
|
|
./patches/kanshi-sni-refresh-and-reconnect.patch
|
|
|
|
|
];
|
|
|
|
|
});
|
|
|
|
|
in
|
2026-02-04 15:16:56 -08:00
|
|
|
makeEnable config "myModules.sni" true {
|
|
|
|
|
home-manager.sharedModules = [
|
2026-04-17 13:12:14 -07:00
|
|
|
({ lib, ... }: {
|
2026-02-10 22:42:47 -08:00
|
|
|
systemd.user.services.kanshi-sni = {
|
|
|
|
|
Unit = {
|
|
|
|
|
Description = "kanshi-sni tray app";
|
2026-04-15 10:45:22 -07:00
|
|
|
After = [ "graphical-session.target" "tray.target" "kanshi.service" ];
|
|
|
|
|
PartOf = [ "graphical-session.target" "kanshi.service" ];
|
2026-02-10 22:42:47 -08:00
|
|
|
Requires = [ "tray.target" ];
|
2026-04-15 10:45:22 -07:00
|
|
|
Wants = [ "kanshi.service" ];
|
2026-02-10 22:42:47 -08:00
|
|
|
};
|
|
|
|
|
Service = {
|
2026-04-15 10:45:22 -07:00
|
|
|
ExecStart = "${kanshiSniPackage}/bin/kanshi-sni";
|
2026-02-10 22:42:47 -08:00
|
|
|
Restart = "always";
|
|
|
|
|
RestartSec = 3;
|
|
|
|
|
};
|
|
|
|
|
Install = {
|
|
|
|
|
WantedBy = [ "graphical-session.target" ];
|
2026-02-05 12:00:46 -08:00
|
|
|
};
|
2026-02-04 15:16:56 -08:00
|
|
|
};
|
|
|
|
|
|
2026-02-10 22:42:47 -08:00
|
|
|
services.blueman-applet.enable = true;
|
|
|
|
|
|
2026-02-04 15:16:56 -08:00
|
|
|
services.kdeconnect = {
|
|
|
|
|
enable = true;
|
|
|
|
|
indicator = true;
|
|
|
|
|
};
|
|
|
|
|
|
2026-04-17 13:12:14 -07:00
|
|
|
home.activation.disableKdeConnectBluetooth =
|
|
|
|
|
lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
|
|
|
|
${pkgs.kdePackages.kconfig}/bin/kwriteconfig6 \
|
|
|
|
|
--file kdeconnect/config \
|
|
|
|
|
--group General \
|
|
|
|
|
--key disabled_providers \
|
|
|
|
|
'BluetoothLinkProvider,AsyncLinkProvider'
|
|
|
|
|
'';
|
|
|
|
|
|
2026-02-04 15:16:56 -08:00
|
|
|
services.network-manager-applet.enable = true;
|
|
|
|
|
|
|
|
|
|
# Disable the XDG autostart for nm-applet since we're managing it via systemd.
|
|
|
|
|
# The XDG autostart races with the systemd service and doesn't use --indicator.
|
|
|
|
|
xdg.configFile."autostart/nm-applet.desktop".text = ''
|
|
|
|
|
[Desktop Entry]
|
|
|
|
|
Hidden=true
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
services.udiskie = {
|
|
|
|
|
enable = true;
|
|
|
|
|
tray = "always";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
services.pasystray.enable = true;
|
|
|
|
|
|
2026-02-20 01:07:46 -08:00
|
|
|
services.flameshot = {
|
|
|
|
|
enable = true;
|
|
|
|
|
settings = {
|
|
|
|
|
General = {
|
|
|
|
|
useGrimAdapter = true;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
2026-04-17 13:12:14 -07:00
|
|
|
})
|
2026-02-04 15:16:56 -08:00
|
|
|
];
|
|
|
|
|
}
|