{pkgs, ...}: { environment.pathsToLink = ["/libexec"]; services.xserver = { xkb.layout = "us"; xkb.variant = ""; enable = true; desktopManager = { xterm.enable = true; }; windowManager.i3 = { enable = true; extraPackages = with pkgs; [ dmenu i3status i3lock i3blocks ]; }; }; services.displayManager.defaultSession = "none+i3"; environment.sessionVariables = { GTK_IM_MODULE = "fcitx"; QT_IM_MODULE = "fcitx"; XMODIFIERS = "@im=fcitx"; }; environment.systemPackages = with pkgs; [ rofi # screenshots flameshot shutter maim alacritty signal-desktop tdesktop brave gimp vlc thunderbird kmail firefox chromium pavucontrol # icons polkit_gnome gnome-themes-extra gtk-engine-murrine gtk_engines gsettings-desktop-schemas lxappearance adwaita-qt adwaita-icon-theme xfce.thunar libreoffice qbittorrent zathura # libcamera # pipewire seems to want this easyeffects ]; # cjk input i18n = { inputMethod = { type = "fcitx5"; fcitx5.addons = with pkgs; [fcitx5-rime fcitx5-mozc]; }; }; fonts = { enableDefaultPackages = true; fontconfig = { defaultFonts.emoji = ["Noto Color Emoji"]; defaultFonts.monospace = ["Hack" "Sarasa Mono SC"]; defaultFonts.sansSerif = ["DejaVu Sans"]; defaultFonts.serif = ["DejaVu Serif" "Source Han Serif SC"]; }; packages = with pkgs; [ fira-code fira cooper-hewitt ibm-plex jetbrains-mono iosevka spleen fira-code-symbols powerline-fonts nerdfonts arphic-ukai arphic-uming dejavu_fonts font-awesome inconsolata # monospaced noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra powerline-fonts source-han-sans-japanese source-han-sans-korean source-han-sans-simplified-chinese source-han-sans-traditional-chinese source-sans-pro ubuntu_font_family wqy_microhei wqy_zenhei ]; }; # screen capture # xdg.portal.enable = true; xdg.portal.config.common.default = "*"; xdg.portal.wlr.enable = true; services.dbus.enable = true; ## Remove sound.enable or set it to false if you had it set previously, as sound.enable is only meant for ALSA-based configurations # rtkit is optional but recommended hardware.pulseaudio.enable = false; security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; wireplumber.enable = true; # If you want to use JACK applications, uncomment this jack.enable = true; }; # pipewire requires these off # sound.enable = true; # hardware.pulseaudio.enable = true; # hardware.bluetooth.enable = true; }