{ pkgs, lib, repoFlake, ... }: let nixpkgs-wayland' = repoFlake.inputs.nixpkgs-wayland.packages.${pkgs.system}; in { fonts.fontconfig.enable = true; # services.gpg-agent.pinentryFlavor = lib.mkForce null; # services.gpg-agent.extraConfig = '' # pinentry-program "${wayprompt}/bin/pinentry-wayprompt" # ''; services = { blueman-applet.enable = true; network-manager-applet.enable = true; }; systemd.user.targets.tray = { Unit = { Description = "Home Manager System Tray"; Requires = [ "graphical-session-pre.target" ]; }; }; home.packages = with pkgs; [ # required by network-manager-applet networkmanagerapplet wlr-randr wayout wl-clipboard wmctrl nixpkgs-wayland'.shotman # identifies key input syms wev # TODO: whwat's this for? # wltype qt5.qtwayland qt6.qtwayland # libsForQt5.qt5.qtwayland # libsForQt6.qt6.qtwayland # audio playerctl helvum pasystray sonusmix pwvucontrol # probably required by flameshot # xdg-desktop-portal xdg-desktop-portal-wlr # grim waypipe ] ++ (lib.lists.optionals (!pkgs.stdenv.isAarch64) # TODO: broken on aarch64 [ ] ); home.sessionVariables = { XDG_SESSION_TYPE = "wayland"; NIXOS_OZONE_WL = "1"; MOZ_ENABLE_WAYLAND = "1"; WLR_NO_HARDWARE_CURSORS = "1"; }; home.pointerCursor = { name = "Vanilla-DMZ"; package = pkgs.vanilla-dmz; size = 32; x11.enable = true; gtk.enable = true; }; }