{ pkgs, config, lib, ... }: { imports = [ ./bspwm.nix ./picom.nix ./audio.nix ./polybar.nix ./dunst.nix ./rofi.nix ./iosevka.nix ./kitty.nix ./element.nix ./url-eater.nix ]; # User packages users.users.agatha.packages = with pkgs; [ brightnessctl broot colmena element-desktop flameshot glib gnome.eog gnome.file-roller gnome.gnome-calendar gnome.gnome-control-center gnome.gnome-disk-utility gnome.gnome-font-viewer gnome.nautilus gnome.totem hyperfine lxappearance magic-wormhole neofetch nitrogen pfetch pridefetch rofi-calc rofimoji tdesktop wireguard-tools xdg-utils yubioath-desktop clipmenu xdotool prismlauncher obs-studio ]; # Brightness/volume keys users.users.agatha.extraGroups = [ "video" ]; programs.light.enable = true; services.xserver = { enable = true; displayManager = { gdm.enable = true; # gdm.wayland = true; sessionPackages = [ pkgs.sway ]; session = [{ manage = "window"; name = "bspwm"; start = let cfg = config.home-manager.users.agatha; in '' ${cfg.services.sxhkd.package}/bin/sxhkd ${ toString cfg.services.sxhkd.extraOptions } & ${cfg.xsession.windowManager.bspwm.package}/bin/bspwm -c ${cfg.xdg.configHome}/bspwm/bspwmrc ''; }]; }; # Layout overrides layout = lib.mkForce "eu,de(qwerty),ua,ru"; xkbOptions = "ctrl:nocaps,compose:rctrl"; synaptics = { enable = true; tapButtons = true; vertTwoFingerScroll = true; vertEdgeScroll = true; horizEdgeScroll = true; horizTwoFingerScroll = true; palmDetect = true; palmMinWidth = 8; palmMinZ = 100; }; }; home-manager.users.agatha = { # Compose key sequences home.file.".XCompose".text = '' include "%L" : "( ͡° ͜ʖ ͡°)" : "¯\\_(ツ)_/¯" : "༼ つ ◕_◕ ༽つ" : "🅱️" : "•" : "◆" : "✔" : "✓" : "​" <0> : "§" : "█" : "☭" : "√" : "⚧️ trans rights uwu" : "òwó" : "ÒwÓ"

: "👉👈"

: "🥺" : "/html " ''; # Cursor theme home.pointerCursor = { name = "Adwaita"; package = pkgs.gnome.adwaita-icon-theme; size = 24; x11 = { enable = true; defaultCursor = "Adwaita"; }; }; # Lockscreen services.betterlockscreen = { enable = true; arguments = [ "dimblur" ]; }; # GTK theme home.file.".themes" = { recursive = true; source = pkgs.fetchgit { url = "https://github.com/ZorinOS/zorin-desktop-themes.git"; rev = "6708d5148545c6d9a99712f63b5efe5a5c0eb2d9"; sha256 = "sha256-4wLkBIAPX1UfYxfKeNx9DhCNDwbZ25ezp/d+GGQTECc="; sparseCheckout = [ "ZorinPurple-Dark" ]; }; }; programs.direnv.enable = true; home.sessionVariables = { "DIRENV_LOG_FORMAT" = ""; }; }; services.gvfs.enable = true; security.polkit.enable = true; programs.dconf.enable = true; programs.geary.enable = true; programs.steam.enable = true; programs.firefox = { enable = true; autoConfig = '' pref("privacy.webrtc.legacyGlobalIndicator", false); pref("privacy.webrtc.hideGlobalIndicator", true); ''; }; # Screenshare on wlroots xdg = { portal = { enable = true; extraPortals = with pkgs; [ xdg-desktop-portal-wlr xdg-desktop-portal-gtk ]; wlr.enable = true; }; }; fonts.fontconfig.enable = true; fonts.fontDir.enable = true; fonts.fonts = with pkgs; [ (nerdfonts.override { fonts = [ "DaddyTimeMono" "NerdFontsSymbolsOnly" ]; }) cantarell-fonts cm_unicode crimson dejavu_fonts fira-code fira-code-symbols font-awesome_5 iosevka noto-fonts-cjk siji twitter-color-emoji ]; services.printing.enable = true; }