diff --git a/features/desktop-minimal.nix b/features/desktop-minimal.nix new file mode 100644 index 0000000..73ff718 --- /dev/null +++ b/features/desktop-minimal.nix @@ -0,0 +1,45 @@ +{ + nixos = + { pkgs, inputs, ... }: + { + imports = [ inputs.stylix.nixosModules.stylix ]; + + # audio + services.pipewire = { + enable = true; + pulse.enable = true; + }; + + security.polkit.enable = true; + services.dbus.enable = true; + services.playerctld.enable = true; + + xdg.portal = { + enable = true; + xdgOpenUsePortal = true; + extraPortals = [ + pkgs.xdg-desktop-portal-wlr + pkgs.xdg-desktop-portal-gtk + ]; + }; + + fonts.packages = with pkgs; [ + font-awesome + nerd-fonts.jetbrains-mono + ]; + + # theming + stylix = { + enable = true; + polarity = "dark"; + image = "${inputs.assets}/wallpaper.png"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-material-dark-medium.yaml"; + }; + }; + + home = + { inputs, ... }: + { + home.file.".assets".source = inputs.assets; + }; +} diff --git a/features/shell-minimal.nix b/features/shell-minimal.nix new file mode 100644 index 0000000..5ecde47 --- /dev/null +++ b/features/shell-minimal.nix @@ -0,0 +1,16 @@ +{ + nixos = _: { + programs.zsh.enable = true; + environment.etc."zshenv".text = '' + export ZDOTDIR=$HOME/.config/zsh + ''; + }; + + home = + { pkgs, ... }: + { + home.packages = with pkgs; [ + starship + ]; + }; +}