You are correct that uninstalling `im-config` and reverting `99x11-common_start` to its original `exec $STARTUP`. But that just hides the issue by removing the package containing the bug, and in particular these lines in `70im-config_launch`:
```
if [ -x "$IMLAUNCH" ]; then
STARTUP="$IMLAUNCH $STARTUP"
fi
```
I'm sorry to insist, but I think the understanding of the issue is incomplete. Please look at the error message in the first comment, and compare:
```
rubin ~ $ bash -c '/usr/bin/nosuch xyz'
bash: /usr/bin/nosuch: No such file or directory
rubin ~ $ bash -c '"/usr/bin/nosuch xyz"'
bash: /usr/bin/nosuch xyz: No such file or directory
```
the shell includes only the first component of the command line in its error message, indicating that it has searched for that string in PATH. In the first comment, you'll see that a space character and `i3` appear in the error message.
Another fix to this issue is to replace
```
exec $STARTUP
```
with
```
$STARTUP
```
meaning that something in how dash is interpreting that `exec` is causing it to not split the argument correctly. If this was bash I might suspect that STARTUP was an array, but dash appears to not support arrays.
It should be possible to replicate this with a new install, installing i3 and selecting that option from the login menu.
You are correct that uninstalling `im-config` and reverting `99x11- common_ start` to its original `exec $STARTUP`. But that just hides the issue by removing the package containing the bug, and in particular these lines in `70im-config_ launch` :
``` "$IMLAUNCH $STARTUP"
if [ -x "$IMLAUNCH" ]; then
STARTUP=
fi
```
I'm sorry to insist, but I think the understanding of the issue is incomplete. Please look at the error message in the first comment, and compare:
```
rubin ~ $ bash -c '/usr/bin/nosuch xyz'
bash: /usr/bin/nosuch: No such file or directory
rubin ~ $ bash -c '"/usr/bin/nosuch xyz"'
bash: /usr/bin/nosuch xyz: No such file or directory
```
the shell includes only the first component of the command line in its error message, indicating that it has searched for that string in PATH. In the first comment, you'll see that a space character and `i3` appear in the error message.
Another fix to this issue is to replace
```
exec $STARTUP
```
with
```
$STARTUP
```
meaning that something in how dash is interpreting that `exec` is causing it to not split the argument correctly. If this was bash I might suspect that STARTUP was an array, but dash appears to not support arrays.
It should be possible to replicate this with a new install, installing i3 and selecting that option from the login menu.