NixOS deployment for LinuxLab
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

92 lines
2.0 KiB

2 weeks ago
2 weeks ago
6 days ago
6 days ago
6 days ago
2 weeks ago
6 days ago
2 weeks ago
2 weeks ago
6 days ago
2 weeks ago
  1. { pkgs, lib, ... }:
  2. with lib;
  3. {
  4. services = {
  5. xserver = {
  6. enable = true;
  7. displayManager = {
  8. gdm = {
  9. enable = true;
  10. wayland = true;
  11. autoSuspend = false;
  12. };
  13. };
  14. desktopManager = {
  15. gnome = {
  16. enable = false; # Flashback only
  17. debug = true;
  18. flashback.enableMetacity = true;
  19. };
  20. xterm.enable = false;
  21. };
  22. xkb.layout = "de";
  23. };
  24. displayManager = {
  25. logToFile = true;
  26. defaultSession = "gnome-flashback-metacity";
  27. };
  28. gnome = {
  29. core-utilities.enable = true;
  30. core-shell.enable = true;
  31. core-os-services.enable = true;
  32. gnome-keyring.enable = true;
  33. };
  34. };
  35. environment.gnome.excludePackages = with pkgs; [
  36. epiphany
  37. gnome-online-accounts-gtk
  38. gnome-tour
  39. geary
  40. gnome-calendar
  41. gnome-contacts
  42. xterm
  43. ];
  44. programs.dconf = {
  45. enable = true;
  46. profiles.user.databases = [
  47. {
  48. settings = {
  49. # Set the color scheme to dark.
  50. "org/gnome/desktop/interface".color-scheme = "prefer-dark";
  51. "org/gnome/desktop/wm/keybindings".close = [ "<Super>q" ];
  52. "org/gnome/desktop/session".idle-delay = gvariant.mkUint32 180;
  53. "org/gnome/desktop/screensaver".lock-delay = gvariant.mkUint32 0;
  54. # Prevent hibernation
  55. "org/gnome/settings-daemon/plugins/power".power-button-action = "nothing";
  56. "org/gnome/settings-daemon/plugins/power".sleep-inactive-ac-type = "logout";
  57. "org/gnome/settings-daemon/plugins/power".sleep-inactive-ac-timeout = "900";
  58. # Allow to switch users
  59. "org/gnome/desktop/lockdown".disable-user-switching = false;
  60. "org/gnome/desktop/screensaver".user-switch-enabled = true;
  61. };
  62. }
  63. ];
  64. profiles.gdm.databases = [
  65. {
  66. settings = {
  67. "org/gnome/login-screen" = {
  68. disable-user-list = true;
  69. };
  70. };
  71. }
  72. ];
  73. };
  74. }