2023-09-26 19:03:50 +01:00
|
|
|
{ pkgs, user ? "xenia", ... }:
|
|
|
|
|
|
|
|
{
|
|
|
|
imports = [ ./desktop.nix ];
|
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-26 19:03:50 +01:00
|
|
|
xserver.displayManager.defaultSession = "hyprland";
|
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-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
|
|
|
}
|