{ pkgs, config, lib, ... }: { imports = [ ./bspwm.nix ./picom.nix ./polybar.nix ./dunst.nix ./iosevka.nix ./kitty.nix ./element.nix ]; # User packages users.users.agatha.packages = with pkgs; [ brightnessctl broot colmena element-desktop firefox flameshot glib gnome.eog gnome.file-roller gnome.geary 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 pamixer pavucontrol pfetch playerctl pridefetch rofi rofi-calc rofimoji tdesktop wireguard-tools xdg-utils yubioath-desktop clipmenu xdotool ]; # 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"; }; }; }; services.gvfs.enable = true; security.polkit.enable = 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.fonts = with pkgs; [ cantarell-fonts crimson dejavu_fonts fira-code fira-code-symbols font-awesome_5 iosevka noto-fonts-cjk siji twitter-color-emoji (nerdfonts.override { fonts = [ "DaddyTimeMono" "NerdFontsSymbolsOnly" ]; }) ]; services.printing.enable = true; # Pipewire security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; }; programs.noisetorch.enable = true; }