aya.nix 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. { config, lib, pkgs, inputs, ... }:
  2. let
  3. email = "badya65@gmail.com";
  4. user = "aya";
  5. username = "badbayan";
  6. in {
  7. users.users.${user} = {
  8. description = username;
  9. extraGroups = [ "wheel" "audio" "video" "kvm" "tss" "libvirtd" "networkmanager" "adbusers" ];
  10. initialPassword = user;
  11. isNormalUser = true;
  12. openssh.authorizedKeys.keys = import inputs.self.modules.keys.aya;
  13. };
  14. networking.firewall.allowedUDPPorts = [ 4242 ];
  15. nix.buildMachines = builtins.concatLists [
  16. (lib.optionals (config.networking.hostName != "yama") [{
  17. hostName = "10.0.0.1";
  18. maxJobs = 8;
  19. protocol = "ssh-ng";
  20. publicHostKey = "c3NoLWVkMjU1MTkgQUFBQUMzTnphQzFsWkRJMU5URTVBQUFBSVB2anVMK0hoRHdnb2dqYmJQbE1CSmxXbllOelloOGx0V3ZTTDB0NTg3MXEgcm9vdEB5YW1hCg==";
  21. speedFactor = 2;
  22. sshKey = "/root/.ssh/id_ed25519";
  23. sshUser = "nixbuilder";
  24. supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];
  25. system = "x86_64-linux";
  26. }])
  27. ];
  28. environment.gnome.excludePackages = with pkgs; [ gnome-text-editor ];
  29. home-manager.users.${user} = {
  30. imports = with inputs.self.modules.home; lib.optionals (config.roles.desktop != null) [
  31. dicts
  32. emacs
  33. nethack
  34. obs
  35. ];
  36. programs.git = {
  37. userEmail = email;
  38. userName = username;
  39. };
  40. dconf.settings = lib.mkIf (config.roles.desktop == "gnome") {
  41. "org/gnome/shell" = {
  42. enabled-extensions = [
  43. "AlphabeticalAppGrid@stuarthayhurst"
  44. "BingWallpaper@ineffable-gmail.com"
  45. "caffeine@patapon.info"
  46. # "overviewbackground@github.com.orbitcorrection"
  47. ];
  48. favorite-apps = [
  49. "google-chrome.desktop"
  50. "element-desktop.desktop"
  51. "foot.desktop"
  52. "emacs.desktop"
  53. "org.gnome.Nautilus.desktop"
  54. ];
  55. };
  56. "org/gnome/shell/extensions/bingwallpaper" = {
  57. set-background = false;
  58. };
  59. "org/gtk/gtk4/settings/file-chooser" = {
  60. show-hidden = true;
  61. };
  62. "org/gtk/settings/file-chooser" = {
  63. show-hidden = true;
  64. };
  65. };
  66. home.packages = lib.mkIf (config.roles.desktop != null) (with pkgs; [
  67. audacity
  68. crawlTiles
  69. eartag
  70. easyeffects
  71. element-desktop
  72. gimp
  73. google-chrome
  74. infra-arcana
  75. lan-mouse
  76. librewolf-wayland
  77. remmina
  78. telegram-desktop
  79. virt-manager
  80. ]);
  81. };
  82. }