LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Linux From Scratch
User Name
Password
Linux From Scratch This Forum is for the discussion of LFS.
LFS is a project that provides you with the steps necessary to build your own custom Linux system.

Notices


Reply
  Search this Thread
Old 04-20-2015, 06:36 AM   #1
Keith Hedger
Senior Member
 
Registered: Jun 2010
Location: Wiltshire, UK
Distribution: Void, Linux From Scratch, Slackware64
Posts: 3,152

Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
More systemd creep and a script to spot it


Well I built a new 7.7 system and like ReaperX7 mentioned in this thread:
http://www.linuxquestions.org/questi...vt-4175538803/
I had some problems with xfce4 session ( logout/shutdown buttons greyed out ), so I rolled back to 4.10, this seemed to fix it until some days later I went to mount a disk via clicking on the desktop icon only to be told I don't have the correct permissions! Come on! I was getting this sort of rubbish 5 years ago, anyway roled back all of xfce to xfce4.10 and it seems ok now but I wondered what the problems with xfsession where and having had a look at the code I found a load of references to systemd! So I wondered how to check for other incursions and hacked together the attached script ( it's not elegant I know but it is only a quick and dirty hack ), when pointed at a folder full of source code archives it will unpack them and check for references to systemd and logind ( this can be changed in the script ), it will count the number of refs and if it is above a certain number ( also can be changed in the script ) it will write to a summary log file and create a detailed log file, the script doesn't attempt to analize the code it just gives the references, thought people might find it useful/interesting any way just download the attached file, remove the '.txt' exctension that the forum requires and make the scrip executable point it at a folder and let it run.
Change these bits at the front of the script to suit yourself
Code:
SRCFOLDER=/media/SkyNet/LFSSourceArchives-7.5
LOGNAME=/tmp/check.log
TMPFOLDER=/tmp/xxx
DETAILEDLOGS=/tmp/detailedlogs
#check these regexex see grep manpage
CHECKFOR="-e systemd -e logind"
#only log if more than this number of matches
MINMATCHES=4
Fairly self explanatory.
Attached Files
File Type: txt checksystemd.txt (1.1 KB, 76 views)
 
Old 04-24-2015, 04:45 AM   #2
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Unfortunately the creep is going to continue with projects. The longer systemd continues its march onwards, and the more systemd code inserts into the Linux kernel, the worse it will get. Kdbus, unfortunately has made it in with Linux-next, but there hasn't been any word from Linus Torvalds if it will make it into mainline kernels. We all know when that happens Lennart has said udev netlink support is being terminated as his own way of bullying non-conforming distributions to stop resisting and fall in line. Fortunately Devuan provided a possible way out with Jude C. Nelson's vdev, but it's still pre-alpha.

Currently, our best hope is that Torvalds puts his foot down, but that seems less and less likely to happen.
 
Old 04-24-2015, 05:10 AM   #3
Keith Hedger
Senior Member
 
Registered: Jun 2010
Location: Wiltshire, UK
Distribution: Void, Linux From Scratch, Slackware64
Posts: 3,152

Original Poster
Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
Quote:
Originally Posted by ReaperX7 View Post
Unfortunately the creep is going to continue with projects. The longer systemd continues its march onwards, and the more systemd code inserts into the Linux kerne ... Currently, our best hope is that Torvalds puts his foot down, but that seems less and less likely to happen.
Agreed!

I personaly think it is now too late to stop the rot, big buisness (redhat, canonical ) has got it's toe in the door and that never gets pushed out again.

I am seriously debating whether to swap to BSD, but that is going to involve a whole new learning curve, or whether to create my own desktop free of gtk3/systemd, but that also has problems as more and more apps get pushed into using the truly awful gtk3 and dropping support for gtk2 ( cairo-dock just went that way ).
 
Old 04-24-2015, 05:54 AM   #4
veerain
Senior Member
 
Registered: Mar 2005
Location: Earth bound to Helios
Distribution: Custom
Posts: 2,524

Rep: Reputation: 319Reputation: 319Reputation: 319Reputation: 319
Quote:
Originally Posted by ReaperX7 View Post
our best hope is that Torvalds puts his foot down, but that seems less and less likely to happen.
Apparently from lkml mailing lists it appears Torvalds won't let some entities hijack device drivers userspace handling. He showed annoyance toward systemd/udev (specifically udev) developers.
 
Old 04-24-2015, 05:48 PM   #5
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
True, but you have to remember Greg Hartman is playing two hands. One for the kernel and another for systemd, and he currently is the maintainer of kdbus. We all aren't blind and we know who and what all is behind this. Corporate interests, greed, and politics as always. The problem is Greg has even tried to usurp authority away from Linus saying Linus needs to be put in check when he rants.

I honestly think we need to start rallying developers to the side of sanity in UNIX as a whole. Vdev obviously can break the stranglehold systemd has created with udev, but it needs heavy polishing and more completeness to do so. Once we do get vdev however, the door to any init system, service supervisor, and design is open forever.
 
Old 04-24-2015, 05:58 PM   #6
Keith Hedger
Senior Member
 
Registered: Jun 2010
Location: Wiltshire, UK
Distribution: Void, Linux From Scratch, Slackware64
Posts: 3,152

Original Poster
Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
I think the final goal of systemd et al is to do away with the linux kernel and independent developers anyway.
It's all really rather depressing and seems to be a step backwards into corporations dictating what software we use, people are finaly realising that there is an alternative to microsoft, and now the linux community seems to want make there own sofware into ms look-a-likes, with all the crud that goes with it.
 
Old 04-25-2015, 04:35 AM   #7
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Exactly but GNU/Linux isn't Windows. It's a clone of UNIX, not MSDOS or OS2.
 
Old 04-26-2015, 04:35 AM   #8
veerain
Senior Member
 
Registered: Mar 2005
Location: Earth bound to Helios
Distribution: Custom
Posts: 2,524

Rep: Reputation: 319Reputation: 319Reputation: 319Reputation: 319
Well I think Redhat invested in Systemd because they wanted better and tighter integration between varied components just like Apple or Microsoft has/does.

But definitely this should not have ended udev and may be consolekit. But no one in Linux and software community had need to keep udev as it was before systemd.

There is eudev which took of as fork of systemd/udev and some developer even said that some one in community should develop/fork out systemd-logind but did not happened.

And definitely Greg Hartman can't take over basic kernel side of things by himself.
 
Old 04-26-2015, 05:04 PM   #9
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Logind did get forked as LoginKit + ConsoleKit2, and/or systemd-shim.

ConsoleKit2 brought in part of the logind specifications but LoginKit supplements the rest. systemd-shim does more but does part of the API as well with cgroups support.

The project in full has been forked out numerous times or already existed:

uselessd/runit/s6/daemontools/(and many others) - cloned the init and seperated out journald, or already the the work of service supervision.
eudev/vdev/mdev+hotplug/smdev - cloned out or replaced udev.
syslog-ng/sysklogd/rsyslog - already did logging better the journald
loginkit/systemd-shim - either supplemented the cgroups manager, logind, and API in part or in whole.
dhcpcd/dhcp/NetworkManager/netplug - already did the work of networkd.
 
Old 04-27-2015, 12:13 AM   #10
veerain
Senior Member
 
Registered: Mar 2005
Location: Earth bound to Helios
Distribution: Custom
Posts: 2,524

Rep: Reputation: 319Reputation: 319Reputation: 319Reputation: 319
@ReaperX7: I want to know whether LoginKit is still a proper replacement for systemd-logind. Around a month or so the developer changed the code very much. He says it now works for XFCE based devuan properly perhaps only. And he also removed dependency on ConsoleKit2. So is it still usable as general systemd-logind replacement.
 
Old 04-27-2015, 06:12 AM   #11
bitshark
LQ Newbie
 
Registered: Apr 2015
Posts: 7

Rep: Reputation: Disabled
Hey guys,

This post is to detail LFS / CLFS / BLFS in Spring 2015 for purposes of ditching Systemd. I've gotten custom-built LFS and 64-bit CLFS working in VMware without systemd.

I am so mortified at the prospect of systemd, I just got done building a few different LFS systems ...

Systemd has it's tentacles in everything, and I don't think the average linux user will understand what this means for awhile. I've considered moving to BSD. In any case, the best non-systemd option I've found at the moment are either LFS _or_ Alpine Linux / Gentoo .

In any case...

Systemd (with all config options enabled) currently creates 69 binaries in userspace. Each one is supposedly task-specific.

What you want to do these days to build a LFS system is use a non-official LiveCD that's been updated for the LFS 7.x series. Run it on a VPS or in a virtual machine so you can let it go overnight. You'll want to have at least a few gigs of RAM, a few gigs of swap, and a decent size hd.

The unofficial Live CD linked below will build a current LFS / CLFS system with some minor tweaks. You'll want to enable it to build the kernel, etc. The main trick is you may have to manually point "make menuconfig" ALFS script (in /home/jhalfs) to a directory that has your LFS-derived target book (LFS 7.5, CLFS 3.0-SysV, whatever).
http://www.clfs.org/~kb0iic/livecdupd/

I've built the latest LFS 7.x SysV (32bit on 64bit host) and CLFS 3.0 SysV (64bit only on 64bit host) using the above CD, then tar'd up the filesystem, extracted it to VMware / virtualbox, fdisk'd the partition, installed grub, then booted them.

If you want 32-bit linux without systemd, using LFS or BLFS works well. If you want 64-bit linux without systemd, then your only realistic option is to use CLFS 3.0 stable (there is a specific non-systemd branch).

----

What I find interesting is that even with a super-basic LFS system, systemd is much more than an init system. It's got a binary journal, it handles login authentication, it starts your cryptdisks, all sorts of stuff. And forget getting X with Gnome2 or Gnome3 to work properly without it.

Even just to boot a non-systemd box with the latest LFS/CLFS.. You have to utilize the Gentoo fork of "udev" called "eudev".... AND you have to utilize either sysvinit or openrc... Even that just boots you to a shell.

Systemd has particularly deep tentacles into Gnome / GTK3 (as well as GTK2). So setting up X on a non-systemd LFS system with anything Gnome-derived -- ie. MATE, Cinnamon, or even Gnome3 on a non-systemd box is a real PITA.

Even KDE has systemd dependencies... Mainly related to login I believe...

Map of Systemd Dependencies (courtesy some folks at Debian)
http://i.imgur.com/SxufNQ2.png

Your best bet for X without Systemd is to go with something that's not GTK based... I think you probably want to be based on libQt instead (KDE, LXQT, Enlightenment, Elementary). (I was not able to get MATE working)

So something like KDE, LXQT, XFCE, or Enlightenment are your best bets for getting a nice desktop running without systemd in my opinion. Ideally you want to be entirely out of the GTK system since the Gnome people have made it clear they don't mind making their stuff tightly integrated.

Setting up Systemd with XFCE is possible but can be buggy (XFCE has a few 'touch points' with GTK2), but I got it working in Alpine Linux as well as in LFS. See the diagram above.

The only way to completely eliminate Systemd + X + WM on an LFS distro is to use SysV init along with non-GTK GUI. So this means using something like LXQT, KDE, or Elementary , especially if you can eliminate the login manager part.

See the following threads for details:
http://www.reddit.com/r/linux/commen..._dependencies/ <-- best one
https://groups.google.com/forum/#!to...qt/H0bg9td-RtE
http://lkcl.net/reports/removing_systemd_from_debian/

Hope this helps.
 
1 members found this post helpful.
Old 04-27-2015, 07:19 AM   #12
bitshark
LQ Newbie
 
Registered: Apr 2015
Posts: 7

Rep: Reputation: Disabled
Oh a side point... You'll have a heck of a time getting anything GTK based to work without Systemd... Forget Gnome3 , hah.... MATE probably won't even work without alot of effort... Even on LFS...

The options are Xfce (for now)... And KDE, LXQT, and Enlightenment-based UIs...

Just a side note : It might be worth checkout out the new desktop environment from PC-BSD (FreeBSD OS ) called Lumina ... https://github.com/pcbsd/lumina ... It's designed to be Qt based, so it's a clean implementation dependencies with the GTK crap.

The rumors say it works on Linux ... I see Arch just released a package. So Lumina might be an option for LFS.

http://wiki.pcbsd.org/index.php/Lumina/10.1

https://wiki.archlinux.org/index.php/Lumina
 
Old 04-27-2015, 08:23 AM   #13
Keith Hedger
Senior Member
 
Registered: Jun 2010
Location: Wiltshire, UK
Distribution: Void, Linux From Scratch, Slackware64
Posts: 3,152

Original Poster
Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
Quote:
Originally Posted by bitshark View Post
Oh a side point... You'll have a heck of a time getting anything GTK based to work without Systemd... Forget Gnome3 ...
Agreed!
Which is why am slowly switching to QT5 based apps.
 
Old 04-27-2015, 08:49 AM   #14
veerain
Senior Member
 
Registered: Mar 2005
Location: Earth bound to Helios
Distribution: Custom
Posts: 2,524

Rep: Reputation: 319Reputation: 319Reputation: 319Reputation: 319
Quote:
Originally Posted by bitshark View Post
Oh a side point... You'll have a heck of a time getting anything GTK based to work without Systemd... Forget Gnome3 , hah.... MATE
Has Gtk+3 started hard dependency on systemd?
 
Old 04-27-2015, 10:55 AM   #15
Keith Hedger
Senior Member
 
Registered: Jun 2010
Location: Wiltshire, UK
Distribution: Void, Linux From Scratch, Slackware64
Posts: 3,152

Original Poster
Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
Quote:
Originally Posted by bitshark View Post
... Just a side note : It might be worth checkout out the new desktop environment from PC-BSD (FreeBSD OS ) called Lumina ... https://github.com/pcbsd/lumina ... It's designed to be Qt based, so it's a clean implementation dependencies with the GTK crap. ...
Looks nice I will give it whirl and report back.
 
  


Reply

Tags
lfs, logind, script, systemd



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Open Source and Feature Creep - some thoughts vharishankar Linux - News 2 05-02-2015 04:21 AM
LXer: Feature-creep will ensure that systemd stays LXer Syndicated Linux News 0 10-17-2014 09:10 AM
[SOLVED] run script on boot with systemd Mario Blunk SUSE / openSUSE 2 09-23-2014 11:12 AM
systemd startup script fails v3ct0r Linux - Newbie 5 03-04-2014 08:15 AM
mysterious mouse creep on dell C600 synaptics touchpad theoldman Debian 2 08-17-2006 12:30 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Linux From Scratch

All times are GMT -5. The time now is 06:47 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration