2023-09-13 06:45:28 +01:00
|
|
|
{ pkgs, user ? "xenia", hyprland, ... }: {
|
|
|
|
imports = [ ./desktop.nix hyprland.nixosModules.default ];
|
2023-09-21 08:51:07 +01:00
|
|
|
nixpkgs.overlays = [
|
|
|
|
(final: prev: {
|
|
|
|
waybar = prev.waybar.overrideAttrs (oldAttrs: {
|
|
|
|
mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ];
|
|
|
|
});
|
|
|
|
})
|
|
|
|
];
|
2023-08-02 10:23:16 +01:00
|
|
|
environment.systemPackages = with pkgs; [
|
2023-09-11 13:47:08 +01:00
|
|
|
libsForQt5.polkit-kde-agent
|
2023-08-02 10:23:16 +01:00
|
|
|
xdg-utils
|
2023-08-21 11:01:19 +01:00
|
|
|
wlr-randr
|
|
|
|
hyprpaper
|
2023-08-08 08:21:51 +01:00
|
|
|
pipewire
|
|
|
|
wireplumber
|
2023-09-05 18:44:29 +01:00
|
|
|
wtype
|
2023-08-08 08:21:51 +01:00
|
|
|
wl-clipboard
|
|
|
|
grim
|
|
|
|
slurp
|
|
|
|
swayimg
|
|
|
|
pamixer
|
|
|
|
pavucontrol
|
|
|
|
playerctl
|
|
|
|
brightnessctl
|
2023-08-02 10:23:16 +01:00
|
|
|
];
|
|
|
|
security.pam.services.swaylock = { };
|
|
|
|
services = {
|
|
|
|
blueman.enable = true;
|
|
|
|
gvfs.enable = true;
|
|
|
|
tumbler.enable = true;
|
2023-09-17 17:57:24 +01:00
|
|
|
xserver.displayManager = {
|
|
|
|
sessionPackages = [ hyprland.packages.${pkgs.system}.hyprland ];
|
|
|
|
defaultSession = "hyprland";
|
2023-08-03 21:26:48 +01:00
|
|
|
};
|
2023-08-02 10:23:16 +01:00
|
|
|
};
|
2023-08-18 12:23:52 +01:00
|
|
|
fonts = {
|
|
|
|
packages = with pkgs; [
|
|
|
|
# normal fonts
|
|
|
|
noto-fonts
|
|
|
|
noto-fonts-cjk
|
|
|
|
noto-fonts-emoji
|
2023-09-08 13:30:15 +01:00
|
|
|
font-awesome
|
2023-08-18 12:23:52 +01:00
|
|
|
# nerdfonts
|
|
|
|
(nerdfonts.override { fonts = [ "FiraCode" ]; })
|
2023-09-10 17:07:11 +01:00
|
|
|
# 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" ];
|
2023-09-10 17:07:11 +01:00
|
|
|
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-08 08:21:51 +01:00
|
|
|
};
|
2023-08-03 16:01:13 +01:00
|
|
|
programs = {
|
2023-08-08 10:45:13 +01:00
|
|
|
hyprland = {
|
|
|
|
enable = true;
|
2023-09-13 06:45:28 +01:00
|
|
|
package = hyprland.packages.${pkgs.system}.hyprland;
|
2023-09-11 23:04:29 +01:00
|
|
|
xwayland.enable = true;
|
2023-08-08 10:45:13 +01:00
|
|
|
};
|
2023-08-03 16:01:13 +01:00
|
|
|
thunar = {
|
|
|
|
enable = true;
|
|
|
|
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
|
|
|
|
};
|
|
|
|
};
|
2023-08-02 10:23:16 +01:00
|
|
|
}
|