You are not logged in.
Good morning all,
in my new install I tried to set up japanese input. I followed the instructions here:
https://wiki.archlinux.org/index.php/In … _using_uim
But had several problems with my chosen system (UIM with mozc).
In particular: I am using systemd for managing Xorg. The locations of the systemd configuration files are not found in my system (~/.config/systemd/ does not exist).
The services which are supposed to be enabled do not exist:
[gian@Giankun-PC ~]$ systemctl --user enable uim.service
Failed to enable unit: Unit file uim.service does not exist.
[gian@Giankun-PC ~]$ systemctl --user uim-toolbar.service
Unknown operation uim-toolbar.service.package uim is installed correctly. uim-pref-gtk does open the GUI configuration window.
At the end I set up Japanese input with ibus Anthy, (https://wiki.archlinux.org/index.php/IBus) but this is far from ideal.
What can I check?
Offline
You are supposed to create those files and directories (which is why their entire contents are spelled out). After you can start them as part of the systemd --user session. Read https://wiki.archlinux.org/index.php/Systemd/User to understand what you are doing by creating these files.
But as you don't have this set up yet, it's unlikely you are using systemd to start xorg, as you'd have to have made at least one file there. So you probably want to rather follow instead: https://wiki.archlinux.org/index.php/In … _variables
Last edited by V1del (2020-02-16 11:04:07)
Offline
Systemctl does start the gdm service to start gnome (and older style configuration files are ignored), but yes, I didn't create any further configuration. Now I will read more about systemd configuration files and try again
Offline
Ok, I think I know what problem I have.
~/.config/systemd/user/uim-env.service
[Unit]
Description=uim environment initialization
Before=xorg.target
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl --user set-environment XMODIFIERS=@im=uim
ExecStart=/usr/bin/systemctl --user set-environment GTK_IM_MODULE=uim
ExecStart=/usr/bin/systemctl --user set-environment QT_IM_MODULE=uimis not right for me because in my system I start gdm from /usr/lib/systemd/user/
So I believe trying to start the uim-env.service isn't going to work (in fact, the service starts, but it is dead. The toolbar starts, but doesn't see any input systems available. Could I start the uim service as systemwide (putting the config in the same place as other package services, which are the first to be executed), or is there a particular reason for not wanting to start uim as a systemwide service?
Offline
It is right for you /usr/lib/systemd/user is just the system path for --user session files. It's a oneshot, it's supposed to be dead after having executed, check your environment with printenv. however xorg.target doesn't really sound relevant, default.target is more guaranteed to be properly executed (or rather, the relevant --user session gnome target, i.e. in this case change the Before=xorg.target to Before=gnome-session-x11.target ).
The reason for not starting the uim program system wide is because you want it to be handled and used for programs of your user and not root.
Also a big part of systemd is that the physical location of service files doesn't determine execution order. That is handled via the unit files directives, so it doesn't matter whether your file originated from /usr/lib/user as a package provided file or via a location in your home dir. If you correctly define dependency ordering within the unit files, they will be ordered properly.
Also pretty important, I'm fairly certain this will only work for a xorg session, are you starting a xorg session? And why is the IBus method not ideal? It's the officially integrated variant for GNOME and likely most well tested in that environment, is there a particular reason you want to switch here?
Last edited by V1del (2020-02-16 13:18:06)
Offline
Ok, now I have been able to solve it.
The reason why I found ibus not acceptable is that it would only be configured with anthy, which is not my favorite input method. Mozc is what I wanted to use. However, after you asked, I checked the aur package ibus-mozc. I managed to make it work following this --> https://wiki.archlinux.org/index.php/Mozc. It actually did not work until I also installed this package: ibus-m17n-1.4.2-1
Now it's all right! ありがとう!
Last edited by gkun (2020-02-16 14:06:35)
Offline