aboutsummaryrefslogtreecommitdiff
path: root/hosts/myrtle/configuration.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/myrtle/configuration.nix')
-rw-r--r--hosts/myrtle/configuration.nix145
1 files changed, 145 insertions, 0 deletions
diff --git a/hosts/myrtle/configuration.nix b/hosts/myrtle/configuration.nix
new file mode 100644
index 0000000..7539696
--- /dev/null
+++ b/hosts/myrtle/configuration.nix
@@ -0,0 +1,145 @@
1{ config, pkgs, lib, self, ... }:
2
3{
4 imports =
5 [
6 ./hardware-configuration.nix
7 ];
8
9 boot.loader.systemd-boot.enable = true;
10 boot.loader.efi.canTouchEfiVariables = true;
11 boot.kernelPackages = pkgs.linuxPackages_latest;
12
13 networking = {
14 hostName = "myrtle";
15 wireless.enable = true;
16 wireless.networks.Srividhya.psk = "gopalan2020";
17 };
18
19
20 i18n.defaultLocale = "en_US.UTF-8";
21 time.timeZone = "Asia/Kolkata";
22
23 nixpkgs.config = {
24 "2bwm".patches = [
25 ../../patches/2bwm/nerd-patch.diff
26 ];
27
28 st = {
29 conf = builtins.readFile ../../programs/st/config.h;
30 extraLibs = with pkgs; [ harfbuzz ];
31 patches = [
32 ../../patches/st/xres.diff
33 ../../patches/st/bright.diff
34 ../../patches/st/ligatures.diff
35 ];
36 };
37
38 # for zoom-us, nvidia
39 allowUnfree = true;
40 };
41
42 nixpkgs.overlays = with self.overlays; [
43 # statix
44 prompt
45 ];
46
47 environment.systemPackages = with pkgs; [
48 _2bwm
49 man-pages
50 man-pages-posix
51 (lib.hiPrio pkgs.bashInteractive_5)
52 ];
53
54
55 documentation = {
56 dev.enable = true;
57 man.generateCaches = true;
58 };
59
60 users.motd = with config; ''
61 Host ${networking.hostName}
62 OS NixOS ${system.nixos.release} (${system.nixos.codeName})
63 Version ${system.nixos.version}
64 Kernel ${boot.kernelPackages.kernel.version}
65 '';
66
67 programs = {
68 light.enable = true;
69 adb.enable = true;
70 };
71
72 sound.enable = true;
73 hardware = {
74 pulseaudio = {
75 enable = true;
76 package = pkgs.pulseaudioFull;
77 extraConfig = "load-module module-bluetooth-policy auto_switch=2";
78 };
79 # opengl.enable = true;
80 bluetooth = {
81 enable = true;
82 powerOnBoot = true;
83 };
84 # nvidia = {
85 # prime = {
86 # offload.enable = true;
87 # nvidiaBusId = "PCI:1:0:0";
88 # intelBusId = "PCI:0:2:0";
89 # };
90 # };
91 };
92
93
94 services.xserver = {
95 enable = true;
96 layout = "us";
97 videoDrivers = [ "nvidia" ];
98 displayManager.startx.enable = true;
99 libinput.enable = true;
100 };
101
102 services.asusd = {
103 enable = true;
104 enableUserService = true;
105 };
106 services.supergfxd.enable = true;
107
108 users.users.np = {
109 isNormalUser = true;
110 home = "/home/np";
111 extraGroups = [ "wheel" "users" "tty" "audio" "video" "input" "adbusers" "docker" ];
112 };
113
114 nix = {
115 package = pkgs.nixUnstable;
116 extraOptions = ''
117 experimental-features = nix-command flakes
118 warn-dirty = false
119 keep-outputs = false
120 keep-derivations = false
121 '';
122 settings = {
123 trusted-users = [
124 "root"
125 "np"
126 ];
127 };
128 };
129
130
131 # Copy the NixOS configuration file and link it from the resulting system
132 # (/run/current-system/configuration.nix). This is useful in case you
133 # accidentally delete configuration.nix.
134 # system.copySystemConfiguration = true;
135
136 # This value determines the NixOS release from which the default
137 # settings for stateful data, like file locations and database versions
138 # on your system were taken. It‘s perfectly fine and recommended to leave
139 # this value at the release version of the first install of this system.
140 # Before changing this value read the documentation for this option
141 # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
142 system.stateVersion = "23.05"; # Did you read the comment?
143
144}
145