Cristian et al,
I am concerned about the adoption of systemd instead of sysvinit as OpenSuSE init and particularly concerned about the suggestion of phasing sysvinit out entirely. I think this would be a mistake at this time.
Long-term Linux developers are surely entirely familiar with the setup of Linux. They are probably entirely familiar with installing development tools, downloading Kernel source through git, perhaps making changes to the source, compiling the amended source, copying the image into the relevant boot directory (different on OS n'est pas?), making changes to grub.conf (say), preparing their own initramfs etc. Then changing init scripts through bash and getting those scripts to run in the relevant runlevels.
It is an everyday thing... done in the blink of an eye.
Consider, however, the situation of somebody who has not begun to program in C - let alone begun to understand Linux architecture. They know there are programs running, they know there is a kernel that boots the machine, they know that is probably the first thing to run. But they really have no clue where to start beginning to understand how Linux actually works.
But they are eager to join the merry band of programmers - they hanker to develop for the Kernel - one day... one day...
Where to start??
So they pick up a book on Linux - generic Linux mind - not a specific OpenSuSE Linux. There must be something in this book that will tell me how my machine starts...
So they open a book...I'll give you a short list of books:
1) How Linux Works: (Ward - No Starch Press): Chapter 3, Page 52++ "How Linux Boots"... Page 54 "The Init Process" 2) Linux Command Line and Shell Scripting Bible (Blum - John Wiley Press): Chapter 1: Pages 7-9: "The kernel creates the first process, the init process..." 3) Linux In A Nutshell (Siever, Weber, Figgins, Love & Robbins - O'Reilly Press - 5th Edition): Page 214 "init - System administration command... usually run from the boot loader". 4) Linux Professional Institute LPIC-1 Study Guide (Roderick W. Smith - Sybex press): Chapter 5: Page 234 "The Boot Process - point 5... Once the Linux kernel takes over... finally loading.... /sbin/init". 5) Understanding the Linux Kernel (Bovet & Cesati - O'Reilly Press): Chapter 1: An Overview of Unix Kernels Page 29: "The solution lies in a special system process called init..." 6) Beginning Linux Programming (Matthew & Stone - Wrox Press - 3rd Edition): Page 797 "init (where it all begins)" 7) Professional Assembly Language (Blum - Wrox Press): Chapter 12 - Using Linux System Calls ".... The kernel creates the first process, called the init process, to start all other processes...".
Has anybody written a book for the beginner programmer to explain how OpenSuSE booting with SYSTEMD differs markedly from all those Linux books that are on sale describing SysVInit?
Personally I don't like the idea of one process seeking to do so many things - it looks a bit like a Windows machine to me ("Here's a desktop. Live with it"). However, I can understand that it may be the way forward for some Linux developers/users.
My concern is that if OpenSuSE drop support for SysVInit before there are adequate descriptions of SYSTEMD in programmers books, then I expect future programmers will develop for Gentoo, Arch etc. rather than OpenSuSE.
You create a barrier with those who aim to develop in future.
I am gradually moving to Gentoo before developing a full-blown "Linux From Scratch" system. SYSTEMD ain't for me (yet... perhaps never). OpenSuSE is getting a little monolithic to be honest and the support cycle ever shorter (11.3 already deprecated!).
Finally, Lennart Poettering's attitude to other developers is frankly quite abusive - and I think that too is likely to see somebody else develop a better alternative to SYSTEMD.. So, don't burn your bridges just yet ;-)
Mike
P.S. I apologise for the length of this first post. Best regards to all. P.P.S. Yes it is a "Think of the children..." post.