Quote:
Originally Posted by
tomegun
Android is a good example of a Linux system which does not use udev. Busybox (with mdev) is another (albeit much more minor one), so it is not true that you MUST use udev.
In the world of ideas, it's possible to use Linux without udev. If you're a billionaire company such as Google, you can pay people to develop and maintain a udev replacement, and track the kernel development in order to implement the necessary changes every time they're required.
Or, if you run Linux on an embedded board that is controlled through a serial port, you can be fine with mdev.
But in reality, if what you use is the plain desktop Linux, then you need udev and libudev even for basic tasks such as starting the X server.
Quote:
It is not true that "udev is constantly changing together with the kernel".
It gets updated when drivers get merged into / updated / removed from the kernel and this reflects into udev rules. Also libudev changes frequently and userspace needs the new APIs.
Quote:
The concern is understandable. However, you should by now have been told repeatedly that 1) non-systemd support for udev will continue as long as non-systemd uses exist (and they do, Martin Pitt of Canonical/Ubuntu fame has commit access to systemd-ubev for crying out load)
Great news! Then certainly before long all those non-systemd developers that contribute to systemd-udev, and decide and shape its future, will give us a Makefile target for us to build and install udev separately from systemd. I'm looking forward to that moment, I hope it won't take long!
Quote:
if ever udev becomes dependent on systemd creating a fork would be trivial (don't look to eudev as an example, what they are doing is crazy and creating a lot more trouble/bugs/work for themselves than necessary).
And yet currently it's the only alternative I'd have should udev be integrated into systemd when everybody "sees the light" (besides switching to Android or BusyBox as you've suggested above). So I hope they'll fix the problems they have; I'm certain that systemd-udev developers will help them and encourage them, in the spirit of open source collaboration.
Quote:
That's news to me. Udev works just fine without systemd. We supported that for some time in Arch Linux without problems and we still support udev without systemd in our initramfs.
I never said that it does not work without systemd. I said that it does not build without systemd, which is a rather big change, while they said there would be no change, and that it changed the way it works in a way that broke my system, for example by changing the name and position of the main udev binary.
Quote:
You do not have to build all of systemd to build udev. With the correct packaging script building only the necessary is trivial. That said, the simplest approach is probably to just flip the right ./configure switches to avoid building almost all of systemd.
Are there such switches? The last version I've built, 191, didn't have them, so I had to build the whole systemd and then guess what files I had to take out from it. I'm happy to know that now they're in place, I'll download and install 197 as soon as I have time.
Quote:
If by 'many' you mean 'two', then you are correct: libcap and dbus. python (and everything else) is an optional dependency, which you would obviously disable in your setting.
Python was hardcoded in the makefiles the last time I built udev. I know because I was cross-compiling it, like I had always done when udev was a standalone package, and could no longer do it because of Python. Again, I'm happy to know that this changed, it will save me a lot of time.
Quote:
It was just a matter of deleting some stuff and moving some stuff, I don't see what the fuss is about. If you prefer to have patch against the Makefile to make this even more trivial, that would be an obvious thing for your distro to carry if they don't wish to use systemd. The patch would be extremely trivial... Only reason I never wrote this (would take 5 minutes) is that my distro uses systemd so there is no point.
I'm no distribution maintainer. It takes me a lot more than 5 minutes to study, dissect and rebuild a package that is essential to boot and keep my system running, and repeat this operation every time a new systemd release is out. If such a patch would be "extremely trivial", then why a patch that does exactly this was never accepted upstream?
Quote:
You are misreading this statement, and it has been explained repeatedly. They (we) are looking forward to the day when there is no longer a need for non-systemd udev. Meaning the day that everyone has seen the light and switched to systemd.
You're actually confirming my concerns. Especially with the last sentence, where you go as far as delineating a difference between light and dark.
Quote:
As long as Debian/Ubuntu are not using systemd by default you have nothing to worry about.
When I said that people are planning "to stop supporting udev without systemd in a somewhat unspecified future", you told me that it was "a gross misrepresentation, and absolutely not true". But to me "as soon as Ubuntu starts shipping systemd by default" is the same as "in a somewhat unspecified future", because I don't work at Ubuntu and have completely no idea about their future plans.