From 6002b09ca66005db9d5c5ed80cde2b7a0bc6190f Mon Sep 17 00:00:00 2001 From: Lucy Hochkamp Date: Mon, 27 Oct 2025 10:50:07 +0100 Subject: [PATCH] moar -> moor --- flake.nix | 8 +++--- hm-modules/git.nix | 5 ++-- modules/desktop/fcitx5.nix | 27 -------------------- modules/desktop/ibus.nix | 52 ++++++++++++++++++++++++++++++++++++++ modules/module-list.nix | 6 ++--- modules/presets/cli.nix | 6 ++--- modules/presets/gui.nix | 1 + 7 files changed, 66 insertions(+), 39 deletions(-) delete mode 100644 modules/desktop/fcitx5.nix create mode 100644 modules/desktop/ibus.nix diff --git a/flake.nix b/flake.nix index 41ff0624..913a4261 100644 --- a/flake.nix +++ b/flake.nix @@ -121,6 +121,10 @@ networking.hostName = x; imports = modules ++ [ (./instances/${x}) ]; _module.args.otherNodes = lib.filterAttrs (n: v: n != x) nodes; + deployment.privilegeEscalationCommand = [ + "run0" + "--unit=colmena-apply" + ]; }; }) n; in @@ -134,10 +138,6 @@ specialArgs = { inherit inputs; }; nixpkgs = genPkgs "x86_64-linux"; }; - deployment.privilegeEscalationCommand = [ - "run0" - "--unit=colmena-apply" - ]; } (importConfigs [ "ds9" diff --git a/hm-modules/git.nix b/hm-modules/git.nix index bf999b94..41076a40 100644 --- a/hm-modules/git.nix +++ b/hm-modules/git.nix @@ -9,13 +9,14 @@ in { options.xyno.git.enable = lib.mkEnableOption "xynos git config"; config = lib.mkIf cfg.enable { + programs.difftastic.git.enable = true; + programs.difftastic.enable = true; programs.git = { enable = true; - difftastic.enable = true; lfs.enable = true; # Default configs - extraConfig = { + settings = { commit.gpgSign = true; gpg.format = "ssh"; diff --git a/modules/desktop/fcitx5.nix b/modules/desktop/fcitx5.nix deleted file mode 100644 index b57073f8..00000000 --- a/modules/desktop/fcitx5.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: -let - cfg = config.xyno.desktop.fcitx5; -in -{ - options.xyno.desktop.fcitx5.enable = lib.mkEnableOption "enable fcitx5 input daemon thing"; - config = lib.mkIf cfg.enable { - i18n.inputMethod = { - type = "fcitx5"; - enable = true; - fcitx5.addons = with pkgs; [ - fcitx5-table-other - ]; - fcitx5.waylandFrontend = true; - fcitx5.quickPhrase = { - ":pleading:" = "🥺"; - ":pointing_right:" = "👉"; - ":pointing_left:" = "👈"; - }; - }; - }; -} diff --git a/modules/desktop/ibus.nix b/modules/desktop/ibus.nix new file mode 100644 index 00000000..00d22ebb --- /dev/null +++ b/modules/desktop/ibus.nix @@ -0,0 +1,52 @@ +{ + pkgs, + config, + lib, + ... +}: +with lib; +let + cfg = config.xyno.desktop.ibus; +in +{ + options.xyno.desktop.ibus.enable = mkEnableOption "enable ibus input daemon thing"; + options.xyno.desktop.ibus.wantedBy = mkOption { + type = types.str; + default = "niri.service"; + }; + config = mkIf cfg.enable { + services.libinput.enable = true; + + # just... enable ibus as input method and maybe now we have consistent unicode input everywhere + # fuck qt tbh + i18n.inputMethod = { + enable = true; + type = "ibus"; + }; + systemd.user.services.ibus = + let + ibusPackage = config.i18n.inputMethod.package; + in + assert hasPrefix "ibus-with-plugins" ibusPackage.name; + { + # panel is weird... + # default is ${ibusPackage}/libexec/ibus-ui-gtk3 which works but sends a notification that it's misconfigured + # wayland support can be enabled with --enable-wayland-im but that segfaults (possible due to zwp_input_method_v1 not being available?) + script = '' + exec ${ibusPackage}/bin/ibus-daemon --xim --replace --panel '${ibusPackage}/libexec/ibus-ui-gtk3' + ''; + serviceConfig = { + Type = "dbus"; + BusName = "org.freedesktop.IBus"; + Restart = "on-abnormal"; + }; + unitConfig = { + CollectMode = "inactive-or-failed"; + }; + # yeah we hardcoding this now, fuck it + wantedBy = [ cfg.wantedBy ]; + partOf = [ "graphical-session.target" ]; + }; + + }; +} diff --git a/modules/module-list.nix b/modules/module-list.nix index 65fff1c0..3351eefb 100644 --- a/modules/module-list.nix +++ b/modules/module-list.nix @@ -5,9 +5,9 @@ ./desktop/audio.nix ./desktop/common-programs.nix ./desktop/easyeffects.nix - ./desktop/fcitx5.nix ./desktop/foot.nix ./desktop/fuzzel.nix + ./desktop/ibus.nix ./desktop/mako.nix ./desktop/niri.nix ./desktop/shikane.nix @@ -21,8 +21,8 @@ ./presets/common.nix ./presets/development.nix ./presets/gui.nix - ./presets/server.nix ./presets/home-manager.nix + ./presets/server.nix ./services/authentik ./services/caddy ./services/monitoring.nix @@ -30,8 +30,8 @@ ./system/impermanence.nix ./system/meta.nix ./system/user.nix + ./to-upstream/fido2-hid-bridge.nix ./user-services/khal.nix ./user-services/syncthing.nix - ./to-upstream/fido2-hid-bridge.nix ] diff --git a/modules/presets/cli.nix b/modules/presets/cli.nix index 408cfc02..2b51fd1a 100644 --- a/modules/presets/cli.nix +++ b/modules/presets/cli.nix @@ -130,7 +130,7 @@ in imagemagick jq lm_sensors - moar + moor neofetch nix-output-monitor poppler @@ -145,7 +145,7 @@ in programs.mosh.enable = true; environment.variables.EDITOR = "hx"; environment.variables.VISUAL = "hx"; - environment.variables.PAGER = "moar"; + environment.variables.PAGER = "moor"; environment.shellAliases = { l = "ls -alh"; @@ -161,7 +161,7 @@ in p = "cd ~/proj"; ytl = ''yt-dlp -f "bv*+mergeall[vcodec=none]" --audio-multistreams''; sudo = "run0"; - less = "moar"; + less = "moor"; }; }; } diff --git a/modules/presets/gui.nix b/modules/presets/gui.nix index 81680433..c6fe3e9c 100644 --- a/modules/presets/gui.nix +++ b/modules/presets/gui.nix @@ -21,6 +21,7 @@ in pkgs.yubikey-personalization ]; xyno.desktop.niri.enable = true; + xyno.desktop.ibus.enable = true; xyno.desktop.audio.enable = mkDefault true; xyno.user-services.khal.enable = true; boot.kernelPackages = mkDefault pkgs.linuxPackages_zen;