diff --git a/modules/applications/btop/default.nix b/modules/applications/btop/default.nix index 6f87dd3..1e27b13 100644 --- a/modules/applications/btop/default.nix +++ b/modules/applications/btop/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.btop = { diff --git a/modules/applications/claude/default.nix b/modules/applications/claude/default.nix index aaec6a9..91c914c 100644 --- a/modules/applications/claude/default.nix +++ b/modules/applications/claude/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.claude = { diff --git a/modules/applications/fcitx5/default.nix b/modules/applications/fcitx5/default.nix index 7becf6f..11c198e 100644 --- a/modules/applications/fcitx5/default.nix +++ b/modules/applications/fcitx5/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.fcitx5 = { diff --git a/modules/applications/ghostty/default.nix b/modules/applications/ghostty/default.nix index 950c021..966e80c 100644 --- a/modules/applications/ghostty/default.nix +++ b/modules/applications/ghostty/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.ghostty = { diff --git a/modules/applications/git/default.nix b/modules/applications/git/default.nix index 89243c6..6d7bbf9 100644 --- a/modules/applications/git/default.nix +++ b/modules/applications/git/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.git = { diff --git a/modules/applications/gtk/default.nix b/modules/applications/gtk/default.nix index f4e8f45..9c8d388 100644 --- a/modules/applications/gtk/default.nix +++ b/modules/applications/gtk/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.gtk = { diff --git a/modules/applications/gtk/system.nix b/modules/applications/gtk/system.nix index bf89701..c3434fc 100644 --- a/modules/applications/gtk/system.nix +++ b/modules/applications/gtk/system.nix @@ -1,4 +1,8 @@ -{ lib, config, ... }: +{ + lib, + config, + ... +}: let cfg = config.my.applications.gtk.system; in @@ -10,5 +14,7 @@ in config = lib.mkIf cfg.enable { programs.dconf.enable = true; programs.seahorse.enable = true; + + services.gnome.gnome-keyring.enable = true; }; } diff --git a/modules/applications/niri/default.nix b/modules/applications/niri/default.nix index 7858c87..f42e307 100644 --- a/modules/applications/niri/default.nix +++ b/modules/applications/niri/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.niri = { diff --git a/modules/applications/noctalia/default.nix b/modules/applications/noctalia/default.nix index c555310..9ac464b 100644 --- a/modules/applications/noctalia/default.nix +++ b/modules/applications/noctalia/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.noctalia = { diff --git a/modules/applications/ssh/default.nix b/modules/applications/ssh/default.nix index caafc4e..89e6c85 100644 --- a/modules/applications/ssh/default.nix +++ b/modules/applications/ssh/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.ssh = { diff --git a/modules/applications/vim/default.nix b/modules/applications/vim/default.nix index ea5460e..17711f3 100644 --- a/modules/applications/vim/default.nix +++ b/modules/applications/vim/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home + ./system.nix ]; options.my.applications.vim = { diff --git a/modules/applications/vim/home/plugins/default.nix b/modules/applications/vim/home/plugins/default.nix index d99031d..ec310f7 100644 --- a/modules/applications/vim/home/plugins/default.nix +++ b/modules/applications/vim/home/plugins/default.nix @@ -1,7 +1,7 @@ { ... }: { imports = [ - ./ui ./editor + ./ui ]; } diff --git a/modules/applications/vim/home/plugins/editor/default.nix b/modules/applications/vim/home/plugins/editor/default.nix index ed0668a..d03d572 100644 --- a/modules/applications/vim/home/plugins/editor/default.nix +++ b/modules/applications/vim/home/plugins/editor/default.nix @@ -1,23 +1,23 @@ { ... }: { imports = [ - ./snacks.nix - ./treesitter.nix - ./blink-cmp.nix - ./gitsigns.nix - ./comment.nix ./autopairs.nix - ./lsp-signature.nix - ./copilot.nix - ./trouble.nix + ./blink-cmp.nix + ./comment.nix ./conform.nix - ./surround.nix - ./git.nix - ./git-conflict.nix - ./glance.nix + ./copilot.nix ./flash.nix - ./todo-comments.nix + ./git-conflict.nix + ./git.nix + ./gitsigns.nix + ./glance.nix + ./lsp-signature.nix + ./snacks.nix ./spectre.nix + ./surround.nix + ./todo-comments.nix + ./treesitter.nix + ./trouble.nix ./wakatime.nix ]; } diff --git a/modules/applications/vim/home/plugins/ui/default.nix b/modules/applications/vim/home/plugins/ui/default.nix index 7709bc0..0e72a6f 100644 --- a/modules/applications/vim/home/plugins/ui/default.nix +++ b/modules/applications/vim/home/plugins/ui/default.nix @@ -1,20 +1,20 @@ { ... }: { imports = [ - ./lualine.nix - ./neo-tree.nix - ./blankline.nix - ./which-key.nix - ./web-devicons.nix - ./toggleterm.nix - ./treesitter.nix ./barbar.nix - ./lightbulb.nix + ./blankline.nix ./colorizer.nix ./dropbar.nix - ./scrollbar.nix - ./ufo.nix - ./zen-mode.nix + ./lightbulb.nix + ./lualine.nix ./markview.nix + ./neo-tree.nix + ./scrollbar.nix + ./toggleterm.nix + ./treesitter.nix + ./ufo.nix + ./web-devicons.nix + ./which-key.nix + ./zen-mode.nix ]; } diff --git a/modules/applications/vscode/default.nix b/modules/applications/vscode/default.nix index 6fe9147..96a36d3 100644 --- a/modules/applications/vscode/default.nix +++ b/modules/applications/vscode/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.vscode = { diff --git a/modules/applications/zellij/default.nix b/modules/applications/zellij/default.nix index 69a4d65..81a0c8a 100644 --- a/modules/applications/zellij/default.nix +++ b/modules/applications/zellij/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.zellij = { diff --git a/modules/applications/zsh/default.nix b/modules/applications/zsh/default.nix index 1d7b07b..10ee585 100644 --- a/modules/applications/zsh/default.nix +++ b/modules/applications/zsh/default.nix @@ -8,8 +8,8 @@ let in { imports = [ - ./system.nix ./home.nix + ./system.nix ]; options.my.applications.zsh = { diff --git a/modules/default.nix b/modules/default.nix index e69de29..8030ff0 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -0,0 +1,8 @@ +{ + imports = [ + ./applications + ./drivers + ./integrations + ./system + ]; +} diff --git a/modules/system/audio.nix b/modules/system/audio.nix new file mode 100644 index 0000000..d859857 --- /dev/null +++ b/modules/system/audio.nix @@ -0,0 +1,22 @@ +{ lib, config, ... }: +let + cfg = config.my.system.audio; +in +{ + options.my.system.audio = { + enable = lib.mkEnableOption "Audio support (PipeWire)"; + }; + + config = lib.mkIf cfg.enable { + security.rtkit.enable = true; + + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + jack.enable = true; + wireplumber.enable = true; + }; + }; +} diff --git a/modules/system/boot/default.nix b/modules/system/boot/default.nix index 81bb87b..63e8b0a 100644 --- a/modules/system/boot/default.nix +++ b/modules/system/boot/default.nix @@ -4,8 +4,14 @@ ... }: { + imports = [ + ./nfs.nix + ./uefi.nix + ]; + boot = { loader.systemd-boot.configurationLimit = lib.mkDefault 8; kernelPackages = pkgs.linuxPackages_latest; }; + programs.nix-ld.enable = true; } diff --git a/modules/system/boot/nfs.nix b/modules/system/boot/nfs.nix index 023ebd8..7a84414 100644 --- a/modules/system/boot/nfs.nix +++ b/modules/system/boot/nfs.nix @@ -14,5 +14,6 @@ in config = lib.mkIf cfg.enable { boot.supportedFilesystems = [ "nfs" ]; fuse.userAllowOther = true; + services.rpcbind.enable = true; }; } diff --git a/modules/system/default.nix b/modules/system/default.nix index 282b3f6..aeefa4e 100644 --- a/modules/system/default.nix +++ b/modules/system/default.nix @@ -1,14 +1,15 @@ { imports = [ + ./audio.nix ./boot - ./nix.nix ./camera.nix ./fingerprint.nix ./fonts.nix ./gc.nix - ./locale.nix ./hardware + ./locale.nix ./network + ./nix.nix ./power.nix ./secure-boot.nix ./user diff --git a/modules/system/hardware/default.nix b/modules/system/hardware/default.nix index 6ccc795..722b480 100644 --- a/modules/system/hardware/default.nix +++ b/modules/system/hardware/default.nix @@ -1,7 +1,14 @@ { lib, ... }: { + imports = [ + ./bluetooth.nix + ./gui.nix + ]; + hardware = { enableRedistributableFirmware = lib.mkDefault true; keyboard.qmk.enable = true; }; + + services.fwupd.enable = true; } diff --git a/modules/system/network/default.nix b/modules/system/network/default.nix index 4783c4c..894fe2e 100644 --- a/modules/system/network/default.nix +++ b/modules/system/network/default.nix @@ -4,6 +4,10 @@ ... }: { + imports = [ + ./wifi.nix + ]; + networking = { hostName = host; diff --git a/modules/system/power.nix b/modules/system/power.nix index c99e6b1..6ab8466 100644 --- a/modules/system/power.nix +++ b/modules/system/power.nix @@ -24,5 +24,14 @@ in services.power-profiles-daemon.enable = true; services.tlp.enable = false; services.upower.enable = true; + + services.logind = { + settings.Login = { + HandleLidSwitch = "suspend"; + HandleLidSwitchDocked = "ignore"; + HandleLidSwitchExternalPower = "suspend"; + LidSwitchIgnoreInhibited = "no"; + }; + }; }; } diff --git a/modules/system/version.nix b/modules/system/version.nix index cc8f061..3218185 100644 --- a/modules/system/version.nix +++ b/modules/system/version.nix @@ -7,12 +7,12 @@ options.my.stateVersions = { nixos = lib.mkOption { type = lib.types.str; - default = "25.11"; + default = "26.05"; }; homeManager = lib.mkOption { type = lib.types.str; - default = "25.11"; + default = "26.05"; }; };