nixos/system/hyprland.nix

85 lines
1.9 KiB
Nix
Raw Normal View History

{ config, lib, pkgs, user, ... }:
{
imports = [ ./desktop.nix ];
nixpkgs.overlays = [
(final: prev: {
waybar = prev.waybar.overrideAttrs (oldAttrs: {
mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ];
});
})
];
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
];
services = {
blueman.enable = true;
gvfs.enable = true;
tumbler.enable = true;
greetd.settings = rec {
default_session.command = "Hyprland";
initial_session = {
inherit user;
inherit (default_session) command;
};
};
};
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;
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 ];
};
};
}