Hacker News new | past | comments | ask | show | jobs | submit login

I have found NetworkManager to be no more difficult to use than setting up networking in Windows. For me, for simple cases, it tends to just work; for more complicated cases with multiple interfaces, it takes some fiddling but can be made to work as well; and pretty similar to the amount of fiddling on Windows. I've found OS X to require less fiddling for some of the simpler and moderately complex cases, but also have problems of its own when you get to some more complicated cases.



It always "just works" at first. The problems start creeping in after a few weeks or months, when NetworkManager inexplicably vomits all over itself with dropped connections, unexplained failures to connect to wireless networks, and duplicate wireless entries (among many, many other things) when the underlying components (namely, wpa_supplicant) work perfectly fine on their own on the same hardware.


Are you trying to imply every OS doesn't face issues like these? A simple google search of "wifi broken after upgrade [insert OS]" will get you thousands of results.

I'd say I had worse wifi issues with Windows than Linux.


This isn't a "oh no, I upgraded and it broke". This is a case of "oh no, it simply stopped working properly without any perceptible cause".

Yes, I'm fully aware how broken Windows' wifi implementation is. NetworkManager, however, tends to make the Windows equivalent look wonderful in comparison.

And yes, every operating system has problems. That's not my point. My point is that we (the free-software-loving community) can do better than the current state of NetworkManager. It's the one pain point that seems to be pervasive across GNU/Linux distributions, and pretending that "oh, every operating system's wireless stack is broken, so we shouldn't be worried" is delusional. Even if NetworkManager is "just as bad" as the others, why shouldn't we be striving to make something better?


Well I've never had any of the problems you're experiencing on Linux in the past 3 years. Only issue I've had was a driver not being included by default. I've had issues on OS X and Windows though, and they put billions of dollars into their operating systems. So if they can't get it right, then maybe the problems go beyond the code and into the actual hardware?


Maybe you're just lucky. Or perhaps I'm just unlucky.

Whatever the case, I know it's not the hardware; wpa_supplicant (the underlying software that allows NetworkManager to function) has (in my experience) generally worked much better than NetworkManager, and OpenBSD's networking stack is also pretty flawless in my experience. So it's something about NetworkManager specifically that needs to be fixed or replaced.

And note that my criticisms about networking are not about Linux as a whole; on the contrary. My criticisms are strictly about NetworkManager. You probably understand this already, but your comment seems to be phrased in defense of GNU/Linux as a whole as if I consider the failings of NetworkManager I've experienced to be the fault of the kernel or somesuch - which is very much not the case - so I figure it's worth clarifying just in case.


I fear that at least one of the big DEs have contracted a severe case of developer paternalism.

In essence the developers involved are attempting to encode every use case they can think of into the program logic, and anything outside of that gets met with a "why would you want to do that?!".


I've been putting off learning it for years and years and years. Finally decided if I'm going to keep doing this as a career I'd better figure out how to use the new tools.

Have a new Cent7 install on a laptop at home.

I spent over an hour trying to get the wifi to simply connect to the network. Much of this was me trying to learn how to use the networkmanager syntax which is neigh-on-impossible to decipher. The help is useless, and apparently the syntax made a huge change from 0.9 to 1.0, and not knowing either means that 90% of the hits I found on Google were utterly and completely wrong and used deprecated flags.

I finally broke down and tried to use nmtui to solve my nmcli woes, but it only made things worse.

The installer was nice enough to create an ifcfg-<myssid>, but when I try to ifup that interface, the system complains there is no DEVICE for it. So I added a DEVICE= line corresponding to my wireless adapter (which nmcli sees), but then the system complains that my wireless device (WHICH NMCLI SEES!) does not exist.

I believe I have traced the problem to a bug report I found on RedHat's bug tracker -- I needed NetworkManager-Wireless installed in order for it to use my wireless adapter. Why lspci sees my adapter, the OS names it, the firmware is installed and up to date, and nmcli even sees the adapter as a wifi adapter, but then can't use it, is beyond me. nmcli wireless scans constantly failed (which is what led me to the bug report).. the bug report says it's fixed and provides better guidance that you need NetworkManager-Wireless installed as of <some version> but that's probably wrong, since I have the latest Cent7.1 (unless the bug report is REALLY recent).

Regardless, after adding the EPEL repo and installing the wireless-utils package which provides the iwlist, I was able to scan for wireless networks.

NetworkManager still was unable to scan, so I did a network restart hoping I could solve the issue without rebooting the whole box. Sadly, I lost my wired connection to the system at that point, so I'll have to wait until I get home to play with it some more.

Oh, and by the way -- even though my wired i/f is set to "ONBOOT=true", it did not, in fact, come up on boot because the cable was disconnected. After I connected the cable it took me 5+ mins to realize I had to restart the network service to get the connection to function, which is not the way it works pre-NetworkManager.

Suffice it to say, the software is massively, massively, massively, massively sub-par, and far less user-friendly than the good 'ol "editing text files" way. I suspect I am soon to have many more similar headaches as I delve into the world of systemd head first (another thing I've been avoiding).

Fortunately, we get to do really exciting things now that NetworkManager has taken over. I can CD to things, and set properties and methods, and all kinds of shit that makes me feel like I'm using Fujitsu's deplorable ALOM:

nmcli> goto ipv4

nmcli ipv4> describe

Available properties: method, dns, dns-search, addresses, routes, ignore-auto-routes, ignore-auto-dns, dhcp-client-id, dhcp-send-hostname, dhcp-hostname, never-default, may-fail

Property name? method

nmcli ipv4> set method auto

nmcli> back

see how fun and intuitive it is?


Like poking around inside a router via serial terminal...




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: