1
0

default.nix 1.8 KB

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