Guest User

configuration.nix

a guest
Jun 16th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.08 KB | None | 0 0
  1. # Edit this configuration file to define what should be installed on
  2. # your system. Help is available in the configuration.nix(5) man page
  3. # and in the NixOS manual (accessible by running ‘nixos-help’).
  4.  
  5. { config, pkgs, ... }:
  6.  
  7. {
  8. imports =
  9. [ # Include the results of the hardware scan.
  10. ./hardware-configuration.nix
  11. ];
  12.  
  13. # Use the GRUB 2 boot loader.
  14. boot.loader.grub.enable = true;
  15. boot.loader.grub.version = 2;
  16. # Define on which hard drive you want to install Grub.
  17. boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only
  18.  
  19. networking.hostName = "woogle"; # Define your hostname.
  20. networking.networkmanager.enable = true;
  21. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
  22.  
  23. # Select internationalisation properties.
  24. i18n = {
  25. consoleFont = "Lat2-Terminus16";
  26. consoleKeyMap = "us";
  27. defaultLocale = "en_US.UTF-8";
  28. };
  29.  
  30. # Set your time zone.
  31. time.timeZone = "Europe/Berlin";
  32.  
  33.  
  34.  
  35. # Some programs need SUID wrappers, can be configured further or are
  36. # started in user sessions.
  37. programs.bash.enableCompletion = true;
  38. # programs.mtr.enable = true;
  39. # programs.gnupg.agent = { enable = true; enableSSHSupport = true; };
  40.  
  41.  
  42. # Enable the OpenSSH daemon.
  43. # services.openssh.enable = true;
  44.  
  45. # Open ports in the firewall.
  46. # networking.firewall.allowedTCPPorts = [ ... ];
  47. # networking.firewall.allowedUDPPorts = [ ... ];
  48. # Or disable the firewall altogether.
  49. # networking.firewall.enable = false;
  50.  
  51. # Enable sound.
  52. sound.enable = true;
  53.  
  54. hardware = {
  55. enableAllFirmware = true;
  56. opengl.driSupport32Bit = true;
  57. sane.enable = true;
  58. pulseaudio.enable = true;
  59. };
  60.  
  61. services = {
  62. printing.enable = true;
  63. # Enable the X11 windowing system.
  64. xserver = {
  65. enable = true;
  66. layout = "us";
  67. xkbOptions = "lv3:ralt_switch,eurosign:e";
  68. # Enable touchpad support.
  69. libinput.enable = true;
  70. displayManager = {
  71. slim.defaultUser = "boogle";
  72. slim.autoLogin = true;
  73. slim.enable = true;
  74. sessionCommands = "${pkgs.xorg.xkbcomp}/bin/xkbcomp ${./beakool.xkb} $DISPLAY";
  75. };
  76. # Enable the xfce Desktop Environment.
  77. desktopManager = {
  78. xfce.enable = true;
  79. default = "xfce";
  80. xterm.enable = false;
  81. };
  82. };
  83. };
  84.  
  85. # Define a user account. Don't forget to set a password with ‘passwd’.
  86. users.extraUsers.boogle = {
  87. isNormalUser = true;
  88. uid = 1000;
  89. createHome = true;
  90. home = "/home/boogle";
  91. extraGroups = [ "wheel" ];
  92. };
  93.  
  94. environment.systemPackages = with pkgs; [
  95. vim
  96. htop
  97. firefox
  98. gimp
  99. pinta
  100. leafpad
  101. scrot
  102. pidgin
  103. discord
  104. steam
  105.  
  106. # utils
  107. xfce.xfce4-whiskermenu-plugin
  108. xorg.xkbcomp
  109. xorg.setxkbmap
  110. xfce.terminal
  111. gnome3.file-roller
  112. glibcLocales
  113. lm_sensors
  114. evince
  115. p7zip
  116. ntfs3g
  117. unzip
  118. wget
  119. git
  120. ntfs3g
  121. xdg_utils
  122. xlibs.xcursorthemes
  123. xlibs.mkfontdir
  124. xlibs.xev
  125. xlibs.xprop
  126. chkrootkit
  127. clamav
  128.  
  129. # audio/video
  130. ffmpeg
  131. mpv
  132. vlc
  133. pavucontrol
  134. pasystray
  135.  
  136. # dev
  137. gnumake
  138. binutils-unwrapped
  139. python
  140. clang
  141. cmake
  142. gcc
  143. lua
  144. pkgconfig
  145. haskell
  146. ihaskell
  147. ghc
  148. hlint
  149. cabal-install
  150. cabal2nix
  151. nix-prefetch-git
  152. haskellPackages.hdevtools
  153. haskellPackages.GLUT
  154. haskellPackages.GLUtil
  155.  
  156. # theme
  157. adapta-gtk-theme
  158. numix-icon-theme
  159. numix-icon-theme-circle
  160. numix-icon-theme-square
  161. numix-solarized-gtk-theme
  162. numix-sx-gtk-theme
  163. xorg.xcursorgen
  164. xorg.xcursorthemes
  165. arc-icon-theme
  166. arc-theme
  167. ];
  168.  
  169. nixpkgs.config.allowUnfree = true;
  170.  
  171. # This value determines the NixOS release with which your system is to be
  172. # compatible, in order to avoid breaking some software such as database
  173. # servers. You should change this only after NixOS release notes say you
  174. # should.
  175. system.stateVersion = "18.03"; # Did you read the comment?
  176. }
Advertisement
Add Comment
Please, Sign In to add comment