125 lines
3.5 KiB
Nix
125 lines
3.5 KiB
Nix
# Desktop environment aggregator — only loaded when context=desktop.
|
|
# Includes window manager, applications, theming, and desktop session config.
|
|
{
|
|
config,
|
|
inputs,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
imports = [
|
|
./wm
|
|
./apps
|
|
./theme
|
|
];
|
|
|
|
xdg = {
|
|
enable = true;
|
|
configFile."mimeapps.list".force = true;
|
|
mimeApps = {
|
|
enable = true;
|
|
associations.added = {
|
|
"application/zip" = ["org.gnome.FileRoller.desktop"];
|
|
"application/csv" = ["calc.desktop"];
|
|
"application/pdf" = ["okularApplication_pdf.desktop"];
|
|
};
|
|
defaultApplications = {
|
|
"application/zip" = ["org.gnome.FileRoller.desktop"];
|
|
"application/csv" = ["calc.desktop"];
|
|
"application/pdf" = ["okularApplication_pdf.desktop"];
|
|
"application/md" = ["nvim.desktop"];
|
|
"application/text" = ["nvim.desktop"];
|
|
"x-scheme-handler/http" = ["io.github.zen_browser.zen"];
|
|
"x-scheme-handler/https" = ["io.github.zen_browser.zen"];
|
|
};
|
|
};
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
setSessionVariables = true;
|
|
};
|
|
};
|
|
|
|
home.sessionVariables = {
|
|
WEBKIT_DISABLE_COMPOSITING_MODE = "1";
|
|
NIXOS_OZONE_WL = "1";
|
|
TERMINAL = "ghostty";
|
|
QT_QPA_PLATFORM = "wayland";
|
|
XDG_CURRENT_DESKTOP = "Hyprland";
|
|
XDG_SESSION_TYPE = "wayland";
|
|
XDG_SESSION_DESKTOP = "Hyprland";
|
|
};
|
|
|
|
home.sessionPath = [
|
|
"\${XDG_BIN_HOME}"
|
|
"\${HOME}/.cargo/bin"
|
|
"$HOME/.npm-global/bin"
|
|
"$HOME/.cache/.bun/bin"
|
|
];
|
|
|
|
fonts.fontconfig.enable = true;
|
|
|
|
programs.ghostty = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
enableBashIntegration = true;
|
|
settings = {
|
|
font-family = "Fira Code";
|
|
copy-on-select = "clipboard";
|
|
theme = "dankcolors";
|
|
# foreground = "#${config.colorScheme.palette.base05}";
|
|
# background = "#${config.colorScheme.palette.base00}";
|
|
# selection-foreground = "#${config.colorScheme.palette.base07}";
|
|
# selection-background = "#${config.colorScheme.palette.base02}";
|
|
# cursor-color = "#${config.colorScheme.palette.base05}";
|
|
# palette = [
|
|
# "0=#${config.colorScheme.palette.base01}"
|
|
# "1=#${config.colorScheme.palette.base08}"
|
|
# "2=#${config.colorScheme.palette.base0B}"
|
|
# "3=#${config.colorScheme.palette.base0A}"
|
|
# "4=#${config.colorScheme.palette.base0D}"
|
|
# "5=#${config.colorScheme.palette.base0E}"
|
|
# "6=#${config.colorScheme.palette.base0C}"
|
|
# "7=#${config.colorScheme.palette.base05}"
|
|
# "8=#${config.colorScheme.palette.base03}"
|
|
# "9=#${config.colorScheme.palette.base08}"
|
|
# "10=#${config.colorScheme.palette.base0B}"
|
|
# "11=#${config.colorScheme.palette.base0A}"
|
|
# "12=#${config.colorScheme.palette.base0D}"
|
|
# "13=#${config.colorScheme.palette.base0E}"
|
|
# "14=#${config.colorScheme.palette.base0C}"
|
|
# "15=#${config.colorScheme.palette.base07}"
|
|
# ];
|
|
};
|
|
};
|
|
|
|
home.pointerCursor = {
|
|
gtk.enable = true;
|
|
package = pkgs.bibata-cursors;
|
|
name = "Bibata-Modern-Ice";
|
|
size = 20;
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
appimage-run
|
|
bemoji
|
|
dconf
|
|
(element-desktop.override {
|
|
commandLineArgs = "--password-store=gnome-libsecret";
|
|
})
|
|
launch-webapp
|
|
file-roller
|
|
gsettings-desktop-schemas
|
|
seahorse
|
|
sushi
|
|
ksnip
|
|
nwg-look
|
|
qt6Packages.qt6ct
|
|
rose-pine-hyprcursor
|
|
remmina
|
|
slack
|
|
vivaldi
|
|
vivaldi-ffmpeg-codecs
|
|
vibetyper
|
|
];
|
|
}
|