This week, I’ve spent a bit of time working on a network panel for the new control center. The old network settings configuration dialog allowed you to do everything to anything, and most users (myself included) only touched a fraction of one percent of the functionality, and the complexity of other other controls made the UI very difficult and unintuative to use.
In the design research we’ve looked at what other OS’s do, such as Meego, OSX, etc and have started working on some design mockups. The network control panel will probably change quite a lot in GNOME 3 from what I’m showing here, based on user feedback and designers doing proper mockups. So, onto the interesting bit:
It’s all work in progress, and comments welcome. It’s using NetworkManager as a backend. Woot.
Published by
hughsie
Richard has over 10 years of experience developing open source software. He is the maintainer of GNOME Software, PackageKit, GNOME Packagekit, GNOME Power Manager, GNOME Color Manager, colord, and UPower and also contributes to many other projects and opensource standards. Richard has three main areas of interest on the free desktop, color management, package management, and power management.
Richard graduated a few years ago from the University of Surrey with a Masters in Electronics Engineering. He now works for Red Hat in the desktop group, and also manages a company selling open source calibration equipment. Richard's outside interests include taking photos and eating good food.
View all posts by hughsie
40 thoughts on “GNOME 3 and “The Network Control Panel””
is this a networkmanager frontend or gnome-system-tools?
NetworkManager
VPN and DSL bits appear to be missing as well as IPv6 but presumably that’s all on the todo list
Yup, all on the TODO.
Just a quick thing I noticed and I wouldn’t say major in the least bit, but many of our sites have left IPv4 and moved on to IPv6 or IPv4/IPv6 mixed networks.
Would the network panel always be fixed to showing only IPv4 information? Because that’s a headache we already have with all the network GUIs that come with most distros. Up to the point that our staff wrote our own python GUI just to say, 1) This is your IPv6 address – 2) This is the hostname of your system – 3) Now call ###### with those two pieces of information.
Again, an incredibly small thing I noticed.
My router doesn’t support giving IPv6 addresses — so I can’t really test this (ideas welcome on how to fake it!) — Could you tell me how to present the IPV6 address,prefix and gateways in a UI, in a sane way?
The major pain-in-the-neck with current gnome proxy settings is that when ever user switches between networks, network connection itself works fine but proxy settings need to be changed manually. On fedora this is abit more user-friendly due to their tools but in ubuntu proxy switching requires root password to be entered twice.
It would be really nice if there would be some sort of tie-in that when user is on network N1 , proxy settings P1 will be used, on network N2 would use P2 and so forth.
Can we trust hardware detection enough yet to remove the Add/Remove buttons?
And can we add “Tor Network” as an entry in the left hand column? Or in the network proxy Method drop down? Possibly only if Tor is already installed.
Looks really great by the way :)
I think we need them for VPN connections at least.
With regards to proxy settings, OSX has a decent solution for the per-network settings, iirc (I’m not an OSX user). Perhaps that is worth a look? It’d also be nice if NetworkManager would publish some sort of unique network fingerprint for networks (should be independent of whether you’re connecting to a certain network wirelessly or wired) so that you can identify the particular network you’re connected to and remember the settings for it (which gnome could then latch onto for things like proxy settings, firewall managers could latch onto for relaxing certain rules etc). That’s more of a NetworkManager feature but you might want to raise it on their mailing list?
As far as the UI goes it’s very nice and clean. One question: what happens when you have two wired connections? This happens on high-end desktop machines a lot and I have been in situations where I’ve been using both of the interfaces (NetworkManager’s default UI sucks for this – you have to manually set the MAC address for the interface you desire in the wired profiles).
And how can you change anything in this, so called “Settings”? As I see it its only possible to select the wireless network you want to connect to. No possibility to change IP-addresses, gateways, DNS etc. etc.
Please don’t remove important options just because some people don’t need them.
Yeah an “Edit” button seems to be missing, this seems to assume everything is using DHCP.
That looks more like an information panel than a control panel.
I get that feeling from the Wireless Connection screenshot. The most important setting for the regular user is “Network Name” so it should be the most visible.
The UI looks nice and clean. But it looks like it is going away from my use case. I am a network engineer and I am often working within the DMZ of my customers. Currently I have about 10 different wired connections (profiles) configured because I always need different statically set IP addresses.
It would be great if you could address this situation too.
What about location based settings? Maybe geoclue can help in that task. I use the same laptop at home and at work and I always have to change the settings when I move and that is a bit annoying
+1
Personaly, I think we must put advanced settings of the “old network settings configuration” behind an “Advanced options” button.
On each kind of connexion (Wired, Wireless, etc), have a button nammed “Options” or “Advanced” for which appear a window with all advanceds options range classified by tabs.
Might want to change “speed” into something less confusing since the “link speed” / “hardware speed” rarely is the same thing as the user will think of as speed (ie. speed towards internet via some interface?)….
Comboboxes are so ’90 in UX.
User must see what is available. Especially when choosing wifi network.
a +1 to the comments from Jani Mikkonen and Graham Lyon: Proxy’s should be able to be configured for a specific network (in my work place using a manually configured proxy was mandatory till recently to get a inet connection) and system wide (if you want to use one for other purposes)
Where am I supposed to enter my IP address and DNS server? Is this most essential stuff also on your TODO list?
Yes.
The mockup looks really nice but I like the tabbed interface of the current network manager a little bit better.
Maby a treeview which shows the category above the connection would be an option. I think that there could be a lot of connections so it would be really handy to have some sort of category to enhance usability.
I’m undecided on my preference of tabs vs this layout. Does the Gnome HIG cover this? However I’d prefer that all Gnome apps stuck to one layout or the other.
Couple of things I’d like to suggest making handy:
1) Share this connection to this other connection.
I’ve had linux people flip out over the fact that NM can do this for them when they’d built some huge fragile script to do the job with dnsmasq and everything. Being able to hand someone with wireless problems a wire to get the local wireless from is awesome. Converse, take my USB-tethered phone connection (which just works, wow) and spit that out over the wireless in the car on the road trip.
2) Let other users use this connection.
Actually, I’d love for wireless connection setup to set this automatically. I don’t know anyone that wants other users on their system to have to type in the wireless password too, and more importantly, they want the computer to stay on the wireless even if they log out and no session is active. This is another one where I tell experienced linux people where the checkbox is and they say “I didn’t know NM did this! I’ve been manually using wpa_supplicant and it’s miserable.”
It would be good for Ubuntu to join the party upstream.
Or you could contact Matthew Paul Thomas (aka mpt) so that he can re-work his mockup into gnome-control-centre (not as a standalone window as is now) and you can can implement it. I just linked to that spec because I think it is better and logically more consistent.
Unfortunately, it seems Ubuntu is going away from NetworkManager to ConnMan so I’m not sure how much they will be able to do that. Unless of course there can be multiple backends to let the same interface control NM or CM.
Then Ubuntu gets to write it’s own connection editor too. NetworkManager is a blessed dep of GNOME, ConnMan isn’t. Sorry to be harsh.
This is looking really good Richard. I might be looking into trying out gnome 3 again in the near future as I’ve not ran it in a while. That interface is a much needed improvement over the current NetworkManager interface provided with most distributions
The UI looks gud, but alot of empty spaces seen. U can move the stuffs so that the window size can be made smaller and less wasted empty spaces over UI.
And of all the Network managers have used so far, they have 1 ting lacking with: Stability or Consistency.
We all need to make them more robust and consistent in its behavior. So gud to concentrate on that part!
1 more suggestions to the above i made,
The new ubuntu asks for MAC address for setting up the interfaces. I tink its not gud for new bies as they dont know how to get or what MAC addy is. So always follow KISS principle!
Nice. Suggestion: be a bit more generous with space for selecting Wifi networks. Some kind of box where you see all networks if there aren’t too many and just favorites if there are a lot rather than a rather cramped drop-down.
Please this needs many improvements, is very incomplete:
1 – Redefine the buttons add, remove, unlock, is ugly.
(they become smaller and more clear-cut as it were a button)
2 – Show the earth and link between in icon connection and the earth when effectively with internet. (because of the problems that arise from the DHCP)
3 – Create a button that lets you fix the link or renew.
4 – Rebuilds the menu of wireless networks in order to rise to all the networks that are configured on the computer.
is this a networkmanager frontend or gnome-system-tools?
NetworkManager
VPN and DSL bits appear to be missing as well as IPv6 but presumably that’s all on the todo list
Yup, all on the TODO.
Just a quick thing I noticed and I wouldn’t say major in the least bit, but many of our sites have left IPv4 and moved on to IPv6 or IPv4/IPv6 mixed networks.
Would the network panel always be fixed to showing only IPv4 information? Because that’s a headache we already have with all the network GUIs that come with most distros. Up to the point that our staff wrote our own python GUI just to say, 1) This is your IPv6 address – 2) This is the hostname of your system – 3) Now call ###### with those two pieces of information.
Again, an incredibly small thing I noticed.
My router doesn’t support giving IPv6 addresses — so I can’t really test this (ideas welcome on how to fake it!) — Could you tell me how to present the IPV6 address,prefix and gateways in a UI, in a sane way?
The major pain-in-the-neck with current gnome proxy settings is that when ever user switches between networks, network connection itself works fine but proxy settings need to be changed manually. On fedora this is abit more user-friendly due to their tools but in ubuntu proxy switching requires root password to be entered twice.
It would be really nice if there would be some sort of tie-in that when user is on network N1 , proxy settings P1 will be used, on network N2 would use P2 and so forth.
Can we trust hardware detection enough yet to remove the Add/Remove buttons?
And can we add “Tor Network” as an entry in the left hand column? Or in the network proxy Method drop down? Possibly only if Tor is already installed.
Looks really great by the way :)
I think we need them for VPN connections at least.
And wireless networks with hidden SSIDs.
I personally think that each interface should have an on/off switch too, as shown for the network status menu on http://live.gnome.org/GnomeShell/Design/Guidelines/SystemStatus/Network.
On the TODO.
With regards to proxy settings, OSX has a decent solution for the per-network settings, iirc (I’m not an OSX user). Perhaps that is worth a look? It’d also be nice if NetworkManager would publish some sort of unique network fingerprint for networks (should be independent of whether you’re connecting to a certain network wirelessly or wired) so that you can identify the particular network you’re connected to and remember the settings for it (which gnome could then latch onto for things like proxy settings, firewall managers could latch onto for relaxing certain rules etc). That’s more of a NetworkManager feature but you might want to raise it on their mailing list?
As far as the UI goes it’s very nice and clean. One question: what happens when you have two wired connections? This happens on high-end desktop machines a lot and I have been in situations where I’ve been using both of the interfaces (NetworkManager’s default UI sucks for this – you have to manually set the MAC address for the interface you desire in the wired profiles).
And how can you change anything in this, so called “Settings”? As I see it its only possible to select the wireless network you want to connect to. No possibility to change IP-addresses, gateways, DNS etc. etc.
Please don’t remove important options just because some people don’t need them.
Yeah an “Edit” button seems to be missing, this seems to assume everything is using DHCP.
That looks more like an information panel than a control panel.
I get that feeling from the Wireless Connection screenshot. The most important setting for the regular user is “Network Name” so it should be the most visible.
The UI looks nice and clean. But it looks like it is going away from my use case. I am a network engineer and I am often working within the DMZ of my customers. Currently I have about 10 different wired connections (profiles) configured because I always need different statically set IP addresses.
It would be great if you could address this situation too.
What about location based settings? Maybe geoclue can help in that task. I use the same laptop at home and at work and I always have to change the settings when I move and that is a bit annoying
+1
Personaly, I think we must put advanced settings of the “old network settings configuration” behind an “Advanced options” button.
On each kind of connexion (Wired, Wireless, etc), have a button nammed “Options” or “Advanced” for which appear a window with all advanceds options range classified by tabs.
Might want to change “speed” into something less confusing since the “link speed” / “hardware speed” rarely is the same thing as the user will think of as speed (ie. speed towards internet via some interface?)….
Comboboxes are so ’90 in UX.
User must see what is available. Especially when choosing wifi network.
a +1 to the comments from Jani Mikkonen and Graham Lyon: Proxy’s should be able to be configured for a specific network (in my work place using a manually configured proxy was mandatory till recently to get a inet connection) and system wide (if you want to use one for other purposes)
Where am I supposed to enter my IP address and DNS server? Is this most essential stuff also on your TODO list?
Yes.
The mockup looks really nice but I like the tabbed interface of the current network manager a little bit better.
Maby a treeview which shows the category above the connection would be an option. I think that there could be a lot of connections so it would be really handy to have some sort of category to enhance usability.
I’m undecided on my preference of tabs vs this layout. Does the Gnome HIG cover this? However I’d prefer that all Gnome apps stuck to one layout or the other.
Couple of things I’d like to suggest making handy:
1) Share this connection to this other connection.
I’ve had linux people flip out over the fact that NM can do this for them when they’d built some huge fragile script to do the job with dnsmasq and everything. Being able to hand someone with wireless problems a wire to get the local wireless from is awesome. Converse, take my USB-tethered phone connection (which just works, wow) and spit that out over the wireless in the car on the road trip.
2) Let other users use this connection.
Actually, I’d love for wireless connection setup to set this automatically. I don’t know anyone that wants other users on their system to have to type in the wireless password too, and more importantly, they want the computer to stay on the wireless even if they log out and no session is active. This is another one where I tell experienced linux people where the checkbox is and they say “I didn’t know NM did this! I’ve been manually using wpa_supplicant and it’s miserable.”
I’m just going to leave this here: https://wiki.ubuntu.com/Networking
It would be good for Ubuntu to join the party upstream.
Or you could contact Matthew Paul Thomas (aka mpt) so that he can re-work his mockup into gnome-control-centre (not as a standalone window as is now) and you can can implement it. I just linked to that spec because I think it is better and logically more consistent.
Unfortunately, it seems Ubuntu is going away from NetworkManager to ConnMan so I’m not sure how much they will be able to do that. Unless of course there can be multiple backends to let the same interface control NM or CM.
Then Ubuntu gets to write it’s own connection editor too. NetworkManager is a blessed dep of GNOME, ConnMan isn’t. Sorry to be harsh.
This is looking really good Richard. I might be looking into trying out gnome 3 again in the near future as I’ve not ran it in a while. That interface is a much needed improvement over the current NetworkManager interface provided with most distributions
The UI looks gud, but alot of empty spaces seen. U can move the stuffs so that the window size can be made smaller and less wasted empty spaces over UI.
And of all the Network managers have used so far, they have 1 ting lacking with: Stability or Consistency.
We all need to make them more robust and consistent in its behavior. So gud to concentrate on that part!
1 more suggestions to the above i made,
The new ubuntu asks for MAC address for setting up the interfaces. I tink its not gud for new bies as they dont know how to get or what MAC addy is. So always follow KISS principle!
Nice. Suggestion: be a bit more generous with space for selecting Wifi networks. Some kind of box where you see all networks if there aren’t too many and just favorites if there are a lot rather than a rather cramped drop-down.
Please this needs many improvements, is very incomplete:
1 – Redefine the buttons add, remove, unlock, is ugly.
(they become smaller and more clear-cut as it were a button)
2 – Show the earth and link between in icon connection and the earth when effectively with internet. (because of the problems that arise from the DHCP)
3 – Create a button that lets you fix the link or renew.
4 – Rebuilds the menu of wireless networks in order to rise to all the networks that are configured on the computer.
Good Work
sory my poor english