{ config, ... }: { home.sessionPath = [ "$HOME/bin" "$HOME/.local/share/JetBrains/Toolbox/scripts" ]; metacfg = { user = { enable = true; name = config.snowfallorg.user.name; }; cli-apps = { bash.enable = true; fish.enable = true; neovim.enable = false; bat.enable = true; starship.enable = true; home-manager.enable = true; }; tools = { git.enable = true; }; gui.kbd.ellipsis = true; }; fonts.fontconfig.enable = true; services.syncthing = { enable = true; tray.enable = true; }; dconf.settings = { # ... "org/gnome/shell" = { disable-user-extensions = false; # `gnome-extensions list` for a list enabled-extensions = [ "Vitals@CoreCoding.com" "appindicatorsupport@rgcjonas.gmail.com" "dash-to-panel@jderose9.github.com" "hibernate-status@dromi" "autohide-battery@sitnik.ru" "clipboard-history@alexsaveau.dev" ]; # dconf watch / favorite-apps = [ "org.wezfurlong.wezterm.desktop" "jetbrains-toolbox.desktop" "org.mozilla.firefox.desktop" "firefox.desktop" "thunderbird.desktop" "org.mozilla.Thunderbird.desktop" "slack.desktop" "keybase.desktop" "cider-2.desktop" "org.gnome.Nautilus.desktop" "virt-manager.desktop" ]; }; "org/virt-manager/virt-manager/connections" = { autoconnect = [ "qemu:///system" ]; uris = [ "qemu:///system" ]; }; }; dconf.settings."org/gnome/desktop/input-sources".xkb-options = [ "mod:ellipsis" ]; xdg.enable = true; xdg.mime.enable = true; xdg.configFile."wezterm/wezterm.lua".text = '' local wezterm = require("wezterm") local config = wezterm.config_builder() local act = wezterm.action config.enable_kitty_keyboard = true config.enable_scroll_bar = true local function action_unless_fullscreen(action, key) return wezterm.action_callback(function(win, pane) if pane:is_alt_screen_active() then -- a program is full screen, passthrough the key win:perform_action(act.SendKey { key = key, mods = 'NONE' }, pane) else -- do the action win:perform_action(action, pane) end end) end -- config.keys = { -- { key = 'PageUp', mods = 'NONE', action = action_unless_fullscreen(act.ScrollByPage(-0.5), 'PageUp') }, -- { key = 'PageDown', mods = 'NONE', action = action_unless_fullscreen(act.ScrollByPage(0.5), 'PageDown') }, -- } config.term = 'wezterm' return config ''; }