summary refs log tree commit diff
path: root/nixos/modules
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@gmail.com>2016-02-26 18:10:11 -0600
committerThomas Tuegel <ttuegel@gmail.com>2016-02-26 18:10:11 -0600
commit272cf5c44fbe973c33e9dde9a40c458a341d48cc (patch)
tree08d31a0ac359e23e8af69ed9c0b6559eea77820d /nixos/modules
parent90525b718ff563f3e3e0c4fa71d414e04050b1f3 (diff)
parentd30a1284677ebf2d74e00591811fb2a1b74f13d4 (diff)
downloadnixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar.gz
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar.bz2
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar.lz
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar.xz
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.tar.zst
nixlib-272cf5c44fbe973c33e9dde9a40c458a341d48cc.zip
Merge branch 'ibus'
Diffstat (limited to 'nixos/modules')
-rw-r--r--nixos/modules/i18n/inputMethod/ibus.nix20
1 files changed, 14 insertions, 6 deletions
diff --git a/nixos/modules/i18n/inputMethod/ibus.nix b/nixos/modules/i18n/inputMethod/ibus.nix
index 86059751a3d2..5d01311c91bd 100644
--- a/nixos/modules/i18n/inputMethod/ibus.nix
+++ b/nixos/modules/i18n/inputMethod/ibus.nix
@@ -9,6 +9,17 @@ let
     name  = "ibus-engine";
     check = x: (lib.types.package.check x) && (attrByPath ["meta" "isIbusEngine"] false x);
   };
+
+  ibusAutostart = pkgs.writeTextFile {
+    name = "autostart-ibus-daemon";
+    destination = "/etc/xdg/autostart/ibus-daemon.desktop";
+    text = ''
+      [Desktop Entry]
+      Name=IBus
+      Type=Application
+      Exec=${ibusPackage}/bin/ibus-daemon -dx
+    '';
+  };
 in
 {
   options = {
@@ -27,17 +38,14 @@ in
 
   config = mkIf (config.i18n.inputMethod.enabled == "ibus") {
     # Without dconf enabled it is impossible to use IBus
-    environment.systemPackages = [ ibusPackage pkgs.gnome3.dconf ];
-
-    gtkPlugins = [ pkgs.ibus ];
-    qtPlugins  = [ pkgs.ibus-qt ];
+    environment.systemPackages = with pkgs; [
+      ibusPackage ibus-qt gnome3.dconf ibusAutostart
+    ];
 
     environment.variables = {
       GTK_IM_MODULE = "ibus";
       QT_IM_MODULE = "ibus";
       XMODIFIERS = "@im=ibus";
     };
-
-    services.xserver.displayManager.sessionCommands = "${ibusPackage}/bin/ibus-daemon --daemonize --xim --cache=none";
   };
 }