summaryrefslogtreecommitdiff
path: root/hosts/local/i3.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/local/i3.nix')
-rw-r--r--hosts/local/i3.nix134
1 files changed, 134 insertions, 0 deletions
diff --git a/hosts/local/i3.nix b/hosts/local/i3.nix
new file mode 100644
index 0000000..623fcf9
--- /dev/null
+++ b/hosts/local/i3.nix
@@ -0,0 +1,134 @@
+{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
+
+ 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;
+}