Advertisement
PROPESSOR

Error Free Configuration.Nix

Jun 6th, 2025
22
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.16 KB | None | 0 0
  1. { config, pkgs, ... }:
  2. {
  3. imports = [ ];
  4.  
  5. nixpkgs.config.allowUnfree = true;
  6.  
  7.  
  8. services.xserver.enable = true;
  9. services.xserver.excludePackages = [ pkgs.xterm ];
  10.  
  11. # Enable Hyprland and a compatible display manager
  12. # programs.hyprland.enable = true;
  13. programs.hyprland = {
  14. enable = true;
  15. withUWSM = true;
  16. };
  17.  
  18. # Display Manager
  19. # Enable SDDM
  20. services.displayManager.sddm.enable = true;
  21. # Set the custom theme
  22. services.displayManager.sddm.theme = "Magna-SDDM-6";
  23. # Set theme via config file
  24. environment.etc."sddm.conf.d/theme.conf".text = ''
  25. [Theme]
  26. Current=Magna-SDDM-6
  27. '';
  28. # Make sure SDDM can see the theme
  29. environment.etc."sddm/themes/Magna-SDDM-6".source = ./themes/Magna-SDDM-6;
  30.  
  31. # Suggestions By ChatGpt for file picker
  32. xdg.portal.enable = true;
  33. xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
  34.  
  35. environment.sessionVariables = {
  36. NIXOS_OZONE_WL = "1"; # For Wayland compatibility with Electron apps
  37. };
  38.  
  39. i18n.defaultLocale = "en_US.UTF-8"; # Replace with your preferred locale
  40. services.pipewire = {
  41. enable = true;
  42. alsa.enable = true;
  43. alsa.support32Bit = true;
  44. pulse.enable = true;
  45. jack.enable = true;
  46. };
  47.  
  48.  
  49. # Enable hardware-accelerated rendering (optional, adjust if necessary)
  50. services.xserver.videoDrivers = [ "modesetting" ];
  51.  
  52. # Configure the system timezone
  53. time.timeZone = "Asia/Kolkata";
  54.  
  55. # Enable networking
  56. #networking.wireless.enable = true;
  57. hardware.enableAllFirmware = true;
  58. networking.hostName = "nixos"; # Set your hostname
  59. networking.networkmanager.enable = true; # Enable NetworkManager for easi>
  60.  
  61. nixpkgs.config.permittedInsecurePackages = [
  62. "electron-24.8.6"
  63. ];
  64.  
  65.  
  66. # Configure system packages
  67. environment.systemPackages = with pkgs; [
  68. xdg-desktop-portal-hyprland
  69. networkmanagerapplet
  70. networkmanager # Add more packages as needed
  71. ];
  72.  
  73. # Enable sound
  74. # sound.enable = true;
  75. services.pulseaudio.enable = false;
  76.  
  77. # Enable Bluetooth
  78. hardware.bluetooth.enable = true;
  79.  
  80. # Enable SSH
  81. services.openssh.enable = true;
  82.  
  83. # Enable firewall
  84. networking.firewall.enable = true;
  85.  
  86. # Users
  87. users.users.veagle = { # Replace "yourusername" with your actual username
  88. isNormalUser = true;
  89. extraGroups = [ "wheel" "networkmanager" ]; # Add user to additional groups
  90. };
  91.  
  92. # Bootloader configuration
  93. #boot.loader.grub.enable = true;
  94. #boot.loader.grub.version = 2;
  95. #boot.loader.grub.device = "/dev/nvme0n1"; # Replace "sdX" with your actual disk, e.g., "/dev/sda"
  96.  
  97. # Enable systemd-boot (optional if not using GRUB)
  98. boot.loader.systemd-boot.enable = true;
  99. fileSystems."/boot" = {
  100. device = "/dev/nvme0n1p1"; # Replace with your actual ESP partition
  101. fsType = "vfat";
  102. };
  103.  
  104. # File systems
  105. fileSystems."/" = {
  106. device = "/dev/nvme0n1p6"; # Root partition
  107. fsType = "ext4"; # Assuming ext4 is the filesystem
  108. };
  109.  
  110. system.stateVersion = "24.11";
  111. swapDevices = [
  112. {
  113. device = "/swapfile";
  114. }
  115. ];
  116.  
  117. nix.settings.experimental-features = [ "nix-command" "flakes" ];
  118.  
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement