1
0

default.nix 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. { config, pkgs, ... }:
  2. {
  3. environment.systemPackages = with pkgs; [
  4. cliphist
  5. wl-clipboard
  6. hyprpicker
  7. wtype
  8. mission-center
  9. nomacs
  10. alacritty
  11. vlc
  12. kdePackages.kdenlive
  13. kdePackages.ark
  14. # kdePackages.dolphin
  15. kdePackages.qtsvg
  16. kdePackages.kio
  17. kdePackages.kio-fuse
  18. kdePackages.kio-extras
  19. kdePackages.ksshaskpass
  20. pam_u2f
  21. ];
  22. programs.hyprland = {
  23. enable = true;
  24. withUWSM = true;
  25. xwayland.enable = true;
  26. };
  27. programs.kdeconnect.enable = true;
  28. environment.variables = {
  29. GDK_BACKEND = "wayland";
  30. XDG_SESSION_TYPE = "wayland";
  31. WLR_DRM_NO_ATOMIC = "1";
  32. NIXOS_OZONE_WL = "1";
  33. WLR_RENDERER = "vulkan";
  34. WLR_NO_HARDWARE_CURSORS = "1";
  35. ELECTRON_OZONE_PLATFORM_HINT = "wayland";
  36. };
  37. xdg.portal = {
  38. enable = true;
  39. extraPortals = with pkgs; [
  40. xdg-desktop-portal-gtk
  41. xdg-desktop-portal-wlr
  42. ];
  43. wlr.enable = true;
  44. config = {
  45. common = {
  46. # Use hyprland portal for screen sharing (screencast)
  47. "org.freedesktop.impl.portal.Screencast" = "hyprland";
  48. "org.freedesktop.impl.portal.Screenshot" = "hyprland";
  49. };
  50. };
  51. };
  52. environment.sessionVariables = {
  53. NIXOS_OZONE_WL = "1";
  54. QT_QPA_PLATFORM = "wayland";
  55. XDG_CURRENT_DESKTOP = "Hyprland";
  56. WLR_NO_HARDWARE_CURSORS = "1";
  57. };
  58. services.gnome.gnome-keyring.enable = true;
  59. security.pam.services.login.enableGnomeKeyring = true;
  60. security.pam.services.hyprland.enableGnomeKeyring = true;
  61. security.pam.services.login.enableKwallet = true;
  62. systemd.user.services.gnome-keyring = {
  63. wantedBy = [ "default.target" ];
  64. serviceConfig = {
  65. ExecStart = "${pkgs.gnome-keyring}/bin/gnome-keyring-daemon --start --foreground --components=pkcs11,secrets,ssh";
  66. Restart = "on-abort";
  67. };
  68. };
  69. }