nixos/system/hyprland.nix

75 lines
1.9 KiB
Nix
Raw Normal View History

{ pkgs, user ? "xenia", hyprland, ... }: {
imports = [ ./desktop.nix hyprland.nixosModules.default ];
environment.systemPackages = with pkgs; [
2023-09-11 13:47:08 +01:00
libsForQt5.polkit-kde-agent
xdg-utils
wlr-randr
hyprpaper
pipewire
wireplumber
2023-09-05 18:44:29 +01:00
wtype
wl-clipboard
grim
slurp
swayimg
pamixer
pavucontrol
playerctl
brightnessctl
];
security.pam.services.swaylock = { };
services = {
blueman.enable = true;
gvfs.enable = true;
tumbler.enable = true;
xserver.displayManager = {
sessionPackages = [ hyprland.packages.${pkgs.system}.hyprland ];
defaultSession = "hyprland";
};
};
2023-08-18 12:23:52 +01:00
fonts = {
packages = with pkgs; [
# normal fonts
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
font-awesome
2023-08-18 12:23:52 +01:00
# nerdfonts
(nerdfonts.override { fonts = [ "FiraCode" ]; })
# icon fonts
material-symbols
emacs-all-the-icons-fonts
material-design-icons
weather-icons
vscode-extensions.file-icons.file-icons
2023-08-18 12:23:52 +01:00
];
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 Sans" "Noto Color Emoji" ];
2023-08-18 12:23:52 +01:00
emoji = [ "Noto Color Emoji" ];
};
};
};
2023-09-13 17:43:20 +01:00
xdg.portal = {
enable = true;
extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
};
2023-08-03 16:01:13 +01:00
programs = {
hyprland = {
enable = true;
package = hyprland.packages.${pkgs.system}.hyprland;
2023-09-11 23:04:29 +01:00
xwayland.enable = true;
};
2023-08-03 16:01:13 +01:00
thunar = {
enable = true;
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
};
};
}