diff options
| author | Jon Santmyer <jon@jonsantmyer.com> | 2026-08-29 10:29:26 -0400 |
|---|---|---|
| committer | Jon Santmyer <jon@jonsantmyer.com> | 2026-08-29 10:29:26 -0400 |
| commit | 2ea5db7f5d23edb609823c4e3279f980389885cd (patch) | |
| tree | bc30850ffd313f3b31f8fe4149b5b9433405506b /modules | |
| parent | 40c65ac3e6226dcf5c834c0ba2447df1bd0ca37d (diff) | |
| download | nix-config-laptop.tar.gz nix-config-laptop.tar.bz2 nix-config-laptop.zip | |
laptop changes 2026-08-29laptop
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/desktop/apps/editors/neovim.nix | 18 | ||||
| -rw-r--r-- | modules/desktop/greetd.nix | 3 | ||||
| -rw-r--r-- | modules/desktop/niri.nix | 36 | ||||
| -rw-r--r-- | modules/device.nix | 6 | ||||
| -rw-r--r-- | modules/hardware/laptop.nix | 40 |
5 files changed, 80 insertions, 23 deletions
diff --git a/modules/desktop/apps/editors/neovim.nix b/modules/desktop/apps/editors/neovim.nix index 304aca7..e3bb02e 100644 --- a/modules/desktop/apps/editors/neovim.nix +++ b/modules/desktop/apps/editors/neovim.nix @@ -22,9 +22,10 @@ in { }; home.packages = [ - pkgs.clang-tools pkgs.nil pkgs.texlab + pkgs.zls + pkgs.wgsl-analyzer ]; home.manager.programs.neovim = { @@ -34,8 +35,8 @@ in { withNodeJs = true; extraConfig = '' - luafile /etc/nixos/config/nvim/lua/settings.lua - luafile /etc/nixos/config/nvim/lua/lsp.lua + luafile ~/.config/nvim/lua/settings.lua + luafile ~/.config/nvim/lua/lsp.lua ''; coc.enable = true; coc.settings = { @@ -47,6 +48,16 @@ in { "nix.enableLanguageServer" = true; "nix.serverPath" = "nil"; + + "zig.enabled" = true; + "zig.path" = "${pkgs.zls}/bin/zls"; + + "languageserver" = { + "wgsl" = { + "command" = "${pkgs.wgsl-analyzer}/bin/wgsl-analyzer"; + "filetypes" = [ "wgsl" ]; + }; + }; }; plugins = with pkgs.vimPlugins; [ @@ -60,6 +71,7 @@ in { popup-nvim plenary-nvim telescope-nvim + wgsl-vim nvim-lspconfig nvim-treesitter nvim-treesitter.withAllGrammars diff --git a/modules/desktop/greetd.nix b/modules/desktop/greetd.nix index 0bc5208..4177839 100644 --- a/modules/desktop/greetd.nix +++ b/modules/desktop/greetd.nix @@ -15,9 +15,6 @@ in { }; config = lib.mkIf (greetdConf.enable) { - services.greetd = { - enable = true; - }; security.pam.services.greetd.enableGnomeKeyring = true; }; } diff --git a/modules/desktop/niri.nix b/modules/desktop/niri.nix index 1cf80e8..0b0a902 100644 --- a/modules/desktop/niri.nix +++ b/modules/desktop/niri.nix @@ -25,6 +25,11 @@ in { home.manager.services.polkit-gnome.enable = true; + fonts.packages = + with pkgs; [ + adwaita-fonts + ]; + home.packages = with pkgs; [ libnotify killall @@ -34,13 +39,29 @@ in { mako jq swww + + adwaita-icon-theme + adwaita-icon-theme-legacy ]; + home.manager.xdg.configFile."niri/config.kdl".source = "${configDir}/niri/${config.networking.hostName}.kdl"; + + programs.regreet = { + enable = true; + theme.name = "Adwaita"; + cursorTheme.name = "Adwaita"; + }; + + home.file.".icons/default".source = "${pkgs.adwaita-icon-theme}/share/icons/Adwaita"; + modules.device.displayProtocol = "wayland"; environment.sessionVariables.NIXOS_OZONE_WL = "1"; - home.manager.xdg.configFile."niri/config.kdl".source = "${configDir}/niri/${config.networking.hostName}.kdl"; + home.manager.gtk.cursorTheme = { + name = "Adwaita"; + size = 12; + }; system.userActivationScripts.linkwaybar.text = '' if [[ ! -h "$HOME/.config/waybar" ]]; then @@ -49,19 +70,6 @@ in { ''; } (lib.mkIf (config.modules.desktop.greetd.enable) { - services.greetd.settings = { - default_session.command = '' - ${pkgs.greetd.tuigreet}/bin/tuigreet \ - --time \ - --asterisks \ - --user-menu \ - --cmd niri-session - ''; - }; - - environment.etc."greetd/environments".text = '' - Niri - ''; }) ]); } diff --git a/modules/device.nix b/modules/device.nix index fbf4d95..e46e4fa 100644 --- a/modules/device.nix +++ b/modules/device.nix @@ -10,8 +10,8 @@ gpu = lib.mkOption {type = lib.types.enum ["intel" "nvidia"];}; drive = lib.mkOption {type = lib.types.enum ["ssd" "nvme"];}; - hasBluetooth = lib.mkOption {type = lib.types.bool;}; - hasPrinter = lib.mkOption { type = lib.types.bool; }; - displayProtocol = lib.mkOption {type = lib.types.enum ["xserver" "wayland"];}; + hasBluetooth = lib.mkOption {type = lib.types.bool; default = true; }; + hasPrinter = lib.mkOption { type = lib.types.bool; default = true; }; + displayProtocol = lib.mkOption {type = lib.types.enum ["xserver" "wayland"]; default = "wayland"; }; }; } diff --git a/modules/hardware/laptop.nix b/modules/hardware/laptop.nix new file mode 100644 index 0000000..af8d581 --- /dev/null +++ b/modules/hardware/laptop.nix @@ -0,0 +1,40 @@ +{ + config, + lib, + pkgs, + ... +}: let + laptopConfig = config.modules.hardware.laptop; +in { + options.modules.hardware.laptop = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (laptopConfig.enable) { + services.thermald.enable = true; + services.tlp = { + enable = true; + settings = { + CPU_SCALING_GOVERNOR_ON_AC = "performance"; + CPU_SCALING_GOVERNOR_ON_BAT = "powersave"; + + CPU_ENERGY_PERF_POLICY_ON_AC = "performance"; + CPU_ENERGY_PERF_POLICY_ON_BAT = "power"; + + CPU_MIN_PERF_ON_AC = 0; + CPU_MAX_PERF_ON_AC = 100; + + CPU_MIN_PERF_ON_BAT = 0; + CPU_MAX_PERF_ON_BAT = 33; + + START_CHARGE_THRESH_BAT0 = 75; + STOP_CHARGE_THRESH_BAT0 = 95; + }; + }; + + environment.systemPackages = with pkgs; [ xorg.xbacklight ]; + }; +} |
