Advertisement
Guest User

dotfile

a guest
Apr 28th, 2019
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.41 KB | None | 0 0
  1. { config, pkgs, ... }:
  2.  
  3. {
  4. imports = [
  5. #<nixpkgs/nixos/modules/installer/virtualbox-demo.nix>
  6. <nixpkgs/nixos/modules/profiles/base.nix>
  7. ];
  8.  
  9. # Let demo build as a trusted user.
  10. nix.trustedUsers = [ "demo" "skykanin"];
  11.  
  12. boot.loader.grub.device ="/dev/sda";
  13. fileSystems = [ # Mount the root file system #
  14. { mountPoint ="/"; device ="/dev/sda1";}
  15. ];
  16.  
  17. networking.hostName = "skykanins-machine";
  18.  
  19. environment.systemPackages = with pkgs; [
  20. git
  21. wget
  22. emacs
  23. oh-my-zsh
  24. ];
  25.  
  26. # Mount a VirtualBox shared folder.
  27. # This is configurable in the VirtualBox menu at
  28. # Machine / Settings / Shared Folders.
  29. # fileSystems."/mnt" = {
  30. # fsType = "vboxsf";
  31. # device = "nameofdevicetomount";
  32. # options = [ "rw" ];
  33. # };
  34.  
  35. # By default, the NixOS VirtualBox demo image includes SDDM and Plasma.
  36. # If you prefer another desktop manager or display manager, you may want
  37. # to disable the default.
  38. # services.xserver.desktopManager.plasma5.enable = false;
  39. # services.xserver.displayManager.sddm.enable = false;
  40.  
  41. services.xserver = {
  42. enable = true;
  43.  
  44. windowManager.i3 = {
  45. enable = true;
  46. package = pkgs.i3-gaps;
  47. extraPackages = with pkgs; [
  48. dmenu
  49. i3status
  50. i3lock
  51. ];
  52. };
  53.  
  54. desktopManager = {
  55. plasma5.enable = false;
  56. xfce.enable = true;
  57. };
  58.  
  59. displayManager = {
  60. sddm.enable = false;
  61. lightdm = {
  62. enable = true;
  63. autoLogin = {
  64. enable = true;
  65. user = "skykanin";
  66. };
  67. };
  68. };
  69. };
  70.  
  71. # Create user
  72. users.users.skykanin = {
  73. isNormalUser = true;
  74. description = "Skykanin Foobar";
  75. extraGroups = [ "wheel" "audio" "networkmanager" "postgres"];
  76. initialPassword = "skykanin";
  77. };
  78.  
  79. # Use zsh as default shell
  80. users.defaultUserShell = pkgs.zsh;
  81.  
  82. programs.zsh = {
  83. ohMyZsh = {
  84. enable = true;
  85. };
  86. syntaxHighlighting.enable = true;
  87. interactiveShellInit = ''
  88. export ZSH=${pkgs.oh-my-zsh}/share/oh-my-zsh
  89. #Customise your oh-my-zsh options here
  90. ZSH_THEME="agnoster"
  91. plugins=(git)
  92. source $ZSH/oh-my-zsh.sh
  93. '';
  94. promptInit = ""; # Clear this to avoid a conflict with oh-my-zsh
  95. };
  96.  
  97. # Set your time zone.
  98. time.timeZone = "Europe/Oslo";
  99.  
  100. system.autoUpgrade.enable = true;
  101. nixpkgs.config.allowUnfree = true;
  102.  
  103. # Enable the OpenSSH daemon.
  104. services.openssh.enable = true;
  105.  
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement