Evie Litherland-Smith
8c5ba7f4c3
Move home-manager setup back into being NixOS module where possible Parameterise common elements of system config to minimise rewriting and pass as function to all places needed
80 lines
1.8 KiB
Nix
80 lines
1.8 KiB
Nix
{ pkgs, hyprland, user ? "xenia", ... }: {
|
|
imports = [ ./desktop.nix hyprland.nixosModules.default ];
|
|
environment.systemPackages = with pkgs; [
|
|
xdg-utils
|
|
wlr-randr
|
|
gsettings-desktop-schemas
|
|
hyprpaper
|
|
pipewire
|
|
wireplumber
|
|
wl-clipboard
|
|
grim
|
|
slurp
|
|
swayimg
|
|
pamixer
|
|
pavucontrol
|
|
playerctl
|
|
brightnessctl
|
|
];
|
|
security.pam.services.swaylock = { };
|
|
services = {
|
|
blueman.enable = true;
|
|
gvfs.enable = true;
|
|
tumbler.enable = true;
|
|
greetd = {
|
|
enable = true;
|
|
settings = {
|
|
default_session = {
|
|
inherit user;
|
|
command = "Hyprland";
|
|
};
|
|
initial_session = {
|
|
inherit user;
|
|
command = "Hyprland";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
fonts = {
|
|
packages = with pkgs; [
|
|
# icon fonts
|
|
material-symbols
|
|
# normal fonts
|
|
jost
|
|
lexend
|
|
noto-fonts
|
|
noto-fonts-cjk
|
|
noto-fonts-emoji
|
|
roboto
|
|
# nerdfonts
|
|
(nerdfonts.override { fonts = [ "FiraCode" ]; })
|
|
];
|
|
fontconfig = {
|
|
enable = true;
|
|
# user defined fonts
|
|
# the reason there's Noto Color Emoji everywhere is to override DejaVu's
|
|
# B&W emojis that would sometimes show instead of some Color emojis
|
|
defaultFonts = {
|
|
serif = [ "Noto Serif" "Noto Color Emoji" ];
|
|
sansSerif = [ "Noto Sans" "Noto Color Emoji" ];
|
|
monospace = [ "FiraCode Nerd Font" "Noto Color Emoji" ];
|
|
emoji = [ "Noto Color Emoji" ];
|
|
};
|
|
};
|
|
};
|
|
xdg.portal = {
|
|
enable = true;
|
|
extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
|
|
};
|
|
programs = {
|
|
hyprland = {
|
|
enable = true;
|
|
package = hyprland.packages.${pkgs.system}.hyprland;
|
|
};
|
|
thunar = {
|
|
enable = true;
|
|
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
|
|
};
|
|
};
|
|
}
|