Network manager – it keeps getting worse
Warning: This is a report on unreleased software. The final released version might be free of the problems mentioned.
I have been testing opensuse 12.2, milestone 1. I noticed that it had a newer NetworkManager version (version 0.9.2), so I decided to give that a test. However, the KDE client was still 0.9.1 (same as in opensuse 12.1), so I decided to install Gnome and try the gnome client.
I first deleted all wifi network definitions while still in KDE. That was to give me a clean starting point. I had planned to try connecting to two different networks.
I logged into Gnome. It showed the network as disconnected, as expected. I next opened an xterm, where I listed the content of a file containing the key for my main home network. The plan was to use copy/paste to configure the key.
I clicked on the NetworkManager icon in the tray at the screen top. The icon was a tiny “x”, but putting the mouse over that identified it as the network icon, and I clicked it.
A list of available networks appeared. I clicked on the entry for my main home network. A window popped up asking for the root password. There was no option to have a privately defined network – just a demand for the root password.
I entered the root password. A window popped up asking for the WPA network key. I then attempted to copy to network key from the open xterm window. It would not allow that. The popup had grabbed complete control of mouse and focus, so that I could not use it on another window.
Well, scrap that. I canceled out. Then I copied the network key first, before starting over. Next, I repeated the same steps, getting to the window for the network key. I tried to paste in the key that I had already copied. Nothing happened. Apparently that was not being allowed. I presumably could have typed it in manually. However, my network key is around 40 random ASCII characters, so doing that would be tedious. Computers are supposed to allow better ways of doing things than manual typing.
I canceled out again. A different popup requested the key. This one was more friendly, allowed me to shift the focus to the xterm window, recopy the key, then paste it in. Then another request for the root password. Finally it all connected.
When I then checked the settings, the network had been configured as a system connection (shared with all users). There was never an option to deselect that in the original setup, but I could probably do that now.
Let me list the problems that I see:
- I should be able to initially set this as a privately defined network;
- I should be able to set it up, at least as a privately defined network, without needing the root key (more on this below);
- I should be able to use copy/paste for the network key, particularly when people are being advised to use long random strings for the key.
It is hard to say where the problem is. It could be partly in the NetworkManager applet. It could partly in opensuse 12.2, and the way that the interface between NetworkManager and policy kit has been configured. And it could be a problem in gnome shell – maybe it would have worked better in fallback mode (not tested).
I did not report as a bug. It really is more of a design flaw than a bug, and milestone 1 is still early in the testing cycle for opensuse 12.2, so perhaps I am seeing an incomplete configuration.
The root password problem
It should be obvious that requiring the root password here is a problem. It is true that for many users, their laptop is a single-user system and they know the key. But here’s the problem: I go to a restaurant or other public place, and try to connect to a public wifi network. The network itself may not have a key. But I am required to enter the root password before I can configure the network. So maybe I know the root password, but I really don’t want to type it when there are video cameras possibly recording everything that I am doing.
If I were using gnome 2 under opensuse 11.4, I would have been able to setup this network without a root key. It would be a privately defined network available only to me, but that would be fine for this temporary use at the restaurant. Later, when I got home, I would be able to change it to a system network definition (shared with other users) if I wanted that. I would need the root password then, but at home I would not have to be concerned with video cameras watching what I am doing.