Theodore Ts'o
Shared publicly - 2014-03-30[Don't Bug Me]
Identity=unix-group:sudo
Action=*
ResultActive=yes
I added this because Network Manager insisted on popping up a window and asking me to type my password whenever I tried joining a new network. And figuring out how to make Network Manager not do such a brain-damaged thing was so painful, that after going through reams of poorly documented XML schemas, and 50 language translations interspersed with actual configuration in various XML files, I just gave up and used the Big Hammer to make policykit just Completely Go Away.
I could tell similar horror stories about dbus when I had to debug various suspend/resume failures, which is something else which is similarly opaque and impossible to understand, but the point is that many of these failures have caused many people to want simple shell scripts, instead of having to crawl through badly designed XML schemas, or someone else's complex C or C++ code, just to figure out what the hell they did and how to patch around their design fail.
It's not entirely fair to charge all of this to Systemd's account, but I think one of the reasons why this happens is because+Kay Sievers and+Lennart Poettering often have the same response style to criticisms as the+GNOME developers --- go away, you're clueless, we know better than you, and besides, we have commit privs and you don't, so go away.
That being said, I recently did try moving my laptop to systemd, and I was pleasantly surprised by the Debian's integration --- it didn't blow away my rsyslog configuration, or do any number of a things that I'm worried about. +GNOME may start depending on more and more of systemd's features, and thus make it even harder to configure away its design failings, but that's+GNOME's problem, not systemd. And besides, this is why I'm using XFCE and not GNOME. :-)
I do find it very difficult sometimes to figure out why a particular systemd service gets started, and when I tried putting together a battery target which would automatically shut down various daemons that I don't need when I want to save power, it apparently somehow caused the brightness keys (fn-F5 and fn-F6) to mysteriously stop working --- and as I expected, it was impossible to debug. So instead of using a systemd target, I'll just hack together a shell script that runs the necessary "service <foo> stop" instead of using a systemd target. If things start breaking horribly, I'll file debian bugs, and try to find ways to work around the brain damage. The fact that I won't be able to edit shell scripts to work around brain damage is still a little anxiety-producing, and the fact it's much more difficult to create a runlevel which is "just like runlevel 3 but without certain services running" is unfortunate, but I'll give it a try and see how much pain is involved.
At least with Debian, it's relatively easy (at least at this point) to roll back to sysvinit if systemd proves to be intolerable. I figure I might as well try it now before I'm forced off of sysvinit and then discover all of the things that break and which can't be easily worked around.



1
0
1
0
1
0
1
0
10
9
8
7
In my subjective opinion+Kay Sievers and+Lennart Poettering are not at all closed to criticism (no comment on GNOME), but don't take my word for it, just post any technical problems you are having, or things that seem opaque/obscure and we will surely see if things should be changed (or simply better documented). As always, you should of course be prepared to defend your feature requests (or whatever it is) on technical grounds, not just things like "this doesn't feel quite like the stuff I'm used to, please make it feel differently" or other vague or philosophical complaints. For a kernel developer I suppose you won't have hard time though, moving from the LKML to the systemd mailing list is probably akin to moving from a war-zone to a spa. In my experience any contributions/questions are taken seriously and people are treated with respect, even though not everything gets merged nor all feature requests get implemented.
If you want commit access, simply start submitting high-quality patches and it will almost certainly be given to you; as it was to me and about a dozen other contributors (number pulled out of my ass, I lost count).
6
5
Regarding GNOME and "commit privs": I gave 2 MATE developersgit.gnome.org access and they can approve newgit.gnome.org accounts (so pretty sure almost all MATE developers havegit.gnome.org accounts atm). They took over some modules and a few of them can release tarballs (onhttps://download.gnome.org).
Regarding overusage of XML: the kdbus stuff will make the XML bit for dbus (not policykit) go away IIRC.
Filing bugs is good, that way things can be improved.
6
5
3
2
And the support mentality is broken, too. Support is the primary business model around Free Software, so make you support good, and people will love your software (because it works, and if it doesn't, helpful people will make it work quickly). Remember: For every person complaining, there are 100 persons who have the same problem, but don't bother to complain.
2
1
This is why I believe it will harm the user if and when GNOME starts using more systemd technologies. Because with systemd, you can no longer hack around its clients' design fail by hacking shell scripts, and GNOME doesn't care about people like me as users (only the clueless types that will buy Apple products anyway). What I did to hack around Policykit is actually quite evil from a security perspective, but the bottom line is that I couldn't figure out any other way to do it, and at least this way, I've neutered Policykit, so while I still think it's design is horrible, it's at least no longer getting in my way. And the moment wicd can actually competently handle a large number of AP's supporting a single SSID (such as can be found at any conference or on the googleguest wireless network), I can dump NetworkManager (and I suspect so will a lot of other people).
Effectively I've dumped GNOME in favor of XFCE, and my only concern now is that there are still some some places where various GtK applications still have GNOME dependencies. For example, it's due to some weird GNOME setting why roxterm refuses to let me change its keyboard accelerator. And by that, I mean more than just the can-change-accels registry entry/dconf entry/gconf entry. (D*mnit, if I liked manipulating secret registry entries, I'd still be using Windows.) But it's completely non-transparent why this GtK application is refusing to let me edit its keyboard accelerators, even after I tried editing the sekrit registry entry. Fortunately, I figured out which non-documented text file it uses to store its keyboard accelerators, and I hand-edited it to fix my problem. This example encapsulates everything that I hate and loathe about GNOME --- and to bring back this back to systemd, this is the sort of non-transparency and non-debuggability and non-flexibility that people fear about systemd. So for you systemd folks --- the reason why people hate systemd IMHO can be largely blamed on people worried that you already have a terminal case of GNOME disease.
1
0
New polkit don't use those INI style files, they use JavaScript code. That sound like a weird decision, but from a sysadmin point of view that has allowed me to define policies that were impossible to do with rigid configuration files.
3
2
So what I really need is a "systemctl --verbose isolate battery.target" which tells me exactly which services it is starting up, and which services it is stopping, and why. Basically, what I need is something like "make -n -d" (although hopefully with a slightly better output format). Maybe there's a secret command option or environment variable or log file that will tell me all of this. But I've looked through all of the FAQ's and man pages I could find, and I couldn't find it.
This is not a disaster, I'll just create a "powersave-battery" shell script that will run the "service pcscd stop", "killall -9 scdaemon", etc. commands explicitly. Shell scripts are explicit, and easily debuggable. Systemd may be "magic" in that it doesn't require all of this explicit commands, but debugging its implicit dependencies and conflicts makes all of the magic disappear, and makes the result pure hell.
6
5
I also don't agree with the statement: "I think one of the reasons why this happens is because Kay Sievers and Lennart Poettering often have the same response style to criticisms as the +GNOME developers --- go away, you're clueless, we know better than you, and besides, we have commit privs and you don't, so go away." This has just not been my experience. While I've known Lennart for a number of years, I don't think I can remember any time when I've had this kind of response delivered with this kind of attitude. Sure, I've had some suggestions or ideas shot down before, but never with a "you're too dumb, go away" response - always with a good technical argument and nothing in the way of any kind of personal attack! Just read the systemd mailing list and see the kind of responses given - they are almost always productive discussions with any reasons to reject a patch given clearly based on technical merit. Being able to reject patches and steer a project is a key skill and accepting patches so as not to offend someone is probably the worst thing you could do.
But as Tom said above, the systemd mailing list is actually a nice place to be. Discussion are productive and rarely bike-sheddy or flamey.
Anyway, I'm glad you had a good experience with switching to systemd on your system and I hope you and others will reassess some of the opinions you have on the attitudes of the people involved.
6
5
2
1
If you want to introspect the dependencies statically without actually starting the target, all the info should be exposed by "systemctl show <some unit file>", the frontend is not ideal for your use-case (as you probably want to do this recursively), but this info is also exposed over dbus if you prefer that (or you could parse the text output if that's your thing).
1
0
We do ship custom patches for network-manager, network-manager-gnome and gnome-shell to not require admin privileges and fall back to create user connections instead in such a case.
So you shouldn't ever see such a PolicyKit prompt.
See e.g.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=696256
3
2
OK, that's fine. My complaint is that once youdo want to configure things, it's hard or impossible to figure out how to do it. And I don't consider Javascript an improvement. Does that mean that you need to understand Javascript in order to join a wireless network for the first time? Does that even sound right to you?
2
1
And indeed, that's not really what I needed. What I really needed is a "what will happen if I run 'systemctl isolate battery.target', given my current system state vis-a-vis what services are currently running?"
And in turn, I need this because I want to shut down a number of services when I do the equivalent of "enter runlevel N" in sysvinit speak, where I created runlevel N by first cloning runlevel 3 via something like "rsync -avH --delete /etc/rc3.d /etc/rc4.d" and then manually adding and deleting some symlinks. From looking at the contents of /etc/rc4.d, it's immediately obvious what will happen when I enter runlevel 4, both in terms of which services will get started, and more importantly, which services will get stopped.
From looking at the contents of battery.target and related systemd config files, it is NOT obvious, especially with how the /etc/init.d backwards compatibility feature seems to create implicit phantom services files and phantom multiuser.target.wants entries.
3
2
BTW, the network manager commit described in the bug entry very much describes the GNOME philosophy. "Fixing the underlying problem is too hard, so we'll just remove functionality, and screw over users until we get around to fixing it correctly --- which might be never."
commit 443c95a6b9c8709f5d9038421df1856f190eeb24
Author: Daniel Gnoutcheff <daniel@gnoutcheff.name>
Date: Tue Jul 13 18:09:56 2010 -0400
nm-manager: start removing user settings services
It turns out that user settings services are strange and complicated
beasts. We will remove support for them, and we will later implement
security mechanisms on the system settings service that will do what
user settings services were intended to do.
This commit is a bulk removal of nm-manager's internal support code for
user settings services. The external API is largely unchanged, but
errors are returned if anyone ties to do something with user settings.
Work remaining includes some possible flattening of nm-manager's
internal code, along with code removal and API changes in other modules.
1
0
At the very least Network manager should have shipped with some default polkit files that used some standard group, and made sure that was extremely well documented, and encouraged distributions to add that group, so that whether you need to put random desktop users into "wheel" or "sudo" or maybe some new "network-manager-usable" group, it's standard across distributions.
1
0
I think Debian is actually the only distro which does the network-manager integration properly, ie. make the connections system-wide if the user has admin privileges and user-owned, if not.
1
0
1
0
<action id="org.freedesktop.NetworkManager.settings.modify.system">
<defaults>
<allow_inactive>no</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
</action>
That means every local user can read the secrets from such a system connection. That is fine for a single-user system, but I consider that a security flaw for a multi-user installation
2
1
2
1
1
0
Yes, it means that a system administrator who needs to lock down the system will need to edit /etc/groups, but better editing /etc/groups than forcing the system administrator to find an XML file, and then paw through 50 different translations of descriptions which was also inexplicably dropped into the same XML file, and edit said XML file. Sys admins are at least more used to understanding and editing /etc/groups, and if users are dropped into network-manager-usable by default, at least that way it's obvious that there is some group magic going on. I didn't say it was perfect, but IMHO it's a better way of papering over a Network manager Fail.
2
1
As wicd was mentioned earlier, I just want to add that from a security POV it has an all-or-nothing approach and is much less flexible then NetworkManager. In wicd, everyone which is granted access to wicd can read the secrets fromall connections.
1
0
a/ I've created a wireless connection as user A (the one which was created during installation with admin privs)
b/ I've created a second user B without admin privs and logged in as that user.
c/ I was able to read the stored wpa-psk created by user A using gnome-control-center or nm-connection-editor
1
0
1
0
As you say NM policies could be improved, but I don't see design problems with NM or polkit, I see implementation bugs.
I think I never noticed this problem because my multiuser installations always disable all ModemManager, NetworkManager, packagekit and udisk policies (and removable media only for some users) Seehttp://fpaste.org/90251/27776713/
2
1
dbus-send --system --print-reply --dest=org.freedesktop.NetworkManager
/org/freedesktop/NetworkManager org.freedesktop.NetworkManager.GetPermissions
Is how you should debug things, is a symptom of the problem. Exactly how are you supposed to know that the magic destination is "/org/freedesktop/NetworkManager/org.freedesktop.NetworkManager.GetPermissions"? And you say that editing /etc/rc.d files is opaque?!?
8
7
And adding a Turing-complete configuration language, and forcing sysadmins to use it, does not make a bad situation better. And if you are going to use a Turing-complete configuration language, I would argue that it should be shell scripts, since that way system administrators only have to learnone turing-complete configuratoin language. I can't wait until someone decides that the next critical piece of desktop infrastructure requires ruby as the configuration language. :-)
4
3
For your specific comment, the upcoming 0.9.10 release has "nmcli g perm" which shows you the permissions you have, like:
org.freedesktop.NetworkManager.settings.modify.system yes
org.freedesktop.NetworkManager.settings.modify.own yes
org.freedesktop.NetworkManager.settings.modify.hostname auth
We've spent a load of time over the last two years enhancing our command-line tools (nmcli) to ensure that NM can be used without any GUI whatsoever.
The core issue you had is that (a) WiFi connections are created system-wide for all users, partly so they are available before you log in, (b) creating network connections is inherently a privileged operation since networking is a shared resource, and (c) NetworkManager punches holes through the kernel's CAP_ADMIN restrictions to do this stuff, so we have to be really careful about security.
NetworkManager upstream shipped with a restrictive default security policy, which we intended to be customized by distributions. A desktop-targeted distro should probably set modify.system=yes while a server-targeted distro should set modify.system=auth_admin_keep. These rules can be further customized with PolicyKit logic on user/group/whatever basis. We probably did not communicate this adequately downstream.
+Michael Biebl has been a huge advocate for solving these issues in a better, more usable manner, and I'm very grateful to him for continuing to push this.
4
3
Not all that long ago, I found a rather interesting tutorial which basically opened up a huge security hole due to bad javascript syntax! I thought it was a bad bug but limited in scope, but+Zbyszek Jedrzejewski-Szmek (another systemd guy) highlighted that it was actually even worse than I thought! The article is updated now so the bug is gone, but it was up there for some time giving out bad advice. I think the problem would have been avoided had the "configuration" syntax been a bit saner (i.e. not Turing complete!)http://www.linuxsysadmintutorials.com/configure-polkit-to-run-virsh-as-a-normal-user/
The dbus policy stuff is another example. I found a bug in a Fedora tool a year or so back (CVE-2012-1615) whose broken dbus policy let normal users access dbus interfaces they weren't meant to. In my case this allowed my user to restart any systemd services (due to the use of dbus). Ironically the tool in question was called "sectool". (https://bugzilla.redhat.com/show_bug.cgi?id=809437) Installing it for extra security kinda backfired!
Ultimately, I'mvery happy Lennart, Kay and Daniel (and others) are reworking the policy stuff to be more sane, with man pages and not XML based!
2
1
7
6
So while "nmcli g perm" may be an improvement, what's really important is that the user can find out, at that very moment that they are getting a frustrating popup dialog box demanding that they type in either their password or worse, the root password (both of which violates many security guidelines), there should be a way they should be told: here are the files and the line numbers that caused policykit to return the decision that it did.
And this is why having a turing-equivalent configuration language for policykit makes things worse, not better. It means that it's a lot harder to give the user a set of files and line numbers of indecipherable XML filled with translations of $!@! descriptions into Polish, Danish, German, etc., Instead, you would have to give them a full set of indecipherable Javascript files and hope the user can understand Javascript. Oh, Joy.
So perhaps the real problem is that network manager decided to rely on PolicyKit, which is a User Experience Disaster and complete Design Fail.
5
4
In ageneral comment though, if not PolicyKit, thensomething is needed to handle finer-grained access control like PolicyKit does. sudo, suid, CAP_*, and every existing option before PolicyKit were coarse-grained and insufficient to implement flexible policy.
I'm also not very interested in creating a parallel, duplicated-effort solution that's specific to NetworkManager, because that's a ton more code to maintain and and it must work on all DEs/platforms including the command-line.
What I would suggest, if the existing PolicyKit does not do what you'd like it to do, or does not operate how you'd like it to, that you or somebody else improve PolicyKit in cooperation with the community to ensure that the goals of both you and the community that currently relies on PolicyKit are satisified. Otherwise we'll just keep turning the fragmentation wheel with multiple-but-incompatible implementations of the same general functionality.
We need something like PolicyKit, if not PolicyKit, or better yet, a better PolicyKit. Having a single "admin yes/no" switch is not sufficient.
4
3
What I would have done if I were running things is to allow for a local configuration file that allowed for coarse-grained authentication. That way, for those people who were happy before Network Manager 0.9, wouldn't break when their distro upgraded to a newer version of Network Manager.
The decision to remove functionality was made in 2010, and here we are, in 2014, still Waiting For Godot. (At least to be merged upstream. Kudo's to+Michael Biebl coming up with a proper fix years earlier.)
It's the lack of taking responsibility for ones own product, and instead foisting off responsibility to some other component such as PolicyKit (or claiming it's the distro's fault), which is why people get really worried when something like Systemd shows up on the horizon, claiming to offer "new features", and the risk is that components such as Network Manager will start depending on the new hotness, abandon local, traditional Unix configuration schemes, which had the advantage that they were at least more comprehensible than XML and Javascript config files. The fact that using the new hotness might result in some new feature, or solving some Really Important Problem, doesn't really increase users' trust, when they know there is a distinct possibility the new hotness might result in a regression for the use case they care about.
P.S. In retrospect, it probably would have been better to have shipped NM with a number of sample polkit configuraiton files, one of which used traditional Unix group permissions, and explicitly told distributors that this was something important they needed to worry about, and given how awful PolicyKit was, here was some possible workarounds.
3
2
"And the support mentality is broken, too. Support is the primary business model around Free Software, so make you support good, and people will love your software (because it works, and if it doesn't, helpful people will make it work quickly)."
I don't understand the relationship between primary business model and what you're saying now. You're not paying GNOME. We lack people who provide support, so there barely is any support. I don't see primary purpose of GNOME is to provide support. It would be very welcome if support was given, but that's not what is happening. So I'm wondering if you mean GNOME, or some company packaging GNOME.
Regarding: "we know it better and you are an idiot"-mentality, I think this is more assumption than based on interaction? Note that I base this exactly on the wording you've used/quoted.
4
3
I'd also note that, while I don't necessarily disagree with your suggestion for a simpler file-based permissions setup, adding support for that increases the number of codepaths for security-critical operations and increases the complexity ofany code, and it's important to recognize the tradeoffs. I'd much rather solve the problem by providing examples, fixing any PolicyKit issues, and taking improved approaches to permissions issues instead of adding another security-critical codepath.
I'd certainly agree that we dropped the ball on documenting the enhanced permissions framework that NetworkManager 0.9+ use, and how to take advantage of that using PolicyKit. We can and will do better.
1
0
3
2
What's important is putting the user first --- and not some software engineering ideology.
1
0
If you aren't satisfied with the level of support given by Red Hat or SuSE, then complain to them. But for GNOME, there barely is any support.
You're also comparing something which needs lots of usability testing (UI) with something which you can more easily determine technically (POSIX complaint vs what programs are doing). Those are worlds apart.
I've read the bugreports about where people complain about the default setting for some true/false option. It was changed and new GNOME is released. Another group complains that the default for that option obviously should be different.
There is not a lot of usability testing going on and it is very hard to judge things. I can point out the many instances where people have been looking for feedback and changing things. At the same time, there probably are lots of times where that didn't occur. It's not perfect.
5
4
This is why the kernel mantra is so important:
Thoushaltnotbreakthings.
Noregressions.
3
2
Really? There must be something terribly wrong with your system cause I don't remember NM doing such a thing. And yes, I do connect to new networks all the time (wireless and wired). Such issues usually turn out to be user trying to be oversmart and fiddling with their system. Since youare a smart guy, I sure hope you are not one of those. :)
2
1
The reason why we are discussing this is that there is a mindset (``It's not my problem, it's PolicyKit's! It's a distro bug![1]'') that seems to be very common amongst different FreeDesktop.org and GNOME projects, and it relates to how people react to systemd's takeover with fear and loathing. We saw how well Policykit's attempt to take over the world worked out.
[1] And I'm sure the PolicyKit folks will blame the distributions and/or Network Manager. That's part of the problem. No one is taking responsibility for delighting the user, or at least, not making things worse. (And if you do make things worse; you put things back. You revert the change. Or you fix the regression immediately, not wait four years. No exceptions.)
1
0
"What's important is putting the user first --- and not some software engineering ideology."
And if you look at why he made that decision: It wasuse cases. It wasn't POSIX. From a POSIX point of view, Ted's first reaction at the ext4 bug was right. But in the end, the solution was a pragmatic solution, and as result, I'm convinced that I can trust Ted and his file system. Or Chris Mason, who fixed the same problem in btrfs back then.
I can't add much beyond that; this doesn't depend whether it's Gnome, the kernel, RedHat or SuSE. A lot of free software development isn't done by students in their spare time, but sponsored by companies which make money with Linux systems (they employ the developers); quite often, their business model is actuallysupport (with advertising as second business model catching up - but advertising means the user is not the customer; this explains why Android's quality is pretty low, at least compared to RHEL/Fedora and SLES/OpenSuSE). Another reason to employ a FOSS developer is because the company depends on the product (like Google or Oracle), and that also means "support" is what pays the wages of the developer. Support includes adding features.
10
9
The rant about configurability made me laugh though; I wouldn't say /proc, /sys, module flags and random bonkers ioctl()s (all wholly undocumented) is really the state of the art in user-accessible configurability.
But maybe, given that I like using GNOME 3 on my Apple laptop (which is obviously the total opposite of people who do Real Software Development), I'm precisely the kind of idiot who should blindly assent to all these kinds of statements passed down from the great moral high ground.
8
7
Must it look like that for eternity? Is removing the slider for hide-animation speed a regression, because some people really need to configure it? Or is this, in fact, utterly subjective, and at the whim of personal preference and belief, unable to be called a 'regression' or otherwise?
Anyway, while we're speaking of desperately poor user experience: why the absolute fuck does running dd to an SD card, or just copying files to a USB thumbdrive, still make my audio skip in 2014? I'm 100% sure this used to not happen in the past. (Is the answer here to ionice random chunks of your session to real-time, and dd to idle? If so, consider if that qualifies as exactly the kind of the mystical undiscoverable configuration voodoo you so dislike.)
But rather than embark on a grand self-serving diatribe about how kernel developers are idiots who wouldn't know sensible behaviour (non-skipping audio over a little less throughput) if it bit them on the ear, I'll just chalk it down to something that requires improvement and hope it gets fixed some day.
4
3
Meanwhile, on the vanishingly rare occasions that anything goes wrong with ext4, there is no dread, even if my backups are out of date,even though all my data depends on ext4 working properly and none of it depends on e.g. udisks working (what breaks? calibre. big deal). Why? Because I know the maintainers will start from the assumption that if the thing went wrong there is probably something wrong withit, not with the user, and that bugs in one's own software are a very bad thing and should be crushed, even if that meansgasp talking to users and getting problems replicated on a God-knows-how-weird alien bizarro-world system that you don't even have access to. None of this feeling that what they're thinking is "not the same distro as me? sod off".
It's a matter of pride in craft. The ext4 developers have it, as do e.g. the new glibc developers, and the software shows that. I'm not so sure about f.d.o stuff. (systemd seems much better than the norm in this area though, and should I find bugs Iwill report them and try to fix them, an exception to my general rule.)
4
3
NetworkManager doesn't (often) work around kernel driver problems. We fix them at the source, and that's why you'll find my and other NM developer's names in the kernel commit logs. That's the only way things get better. Working around problems only complicates our code and doesn't make the world better. "Temporary" workarounds tend to stick around since the problem gets papered over and the impetus to solve it disappears.
All that said, I certainly agree that the new WiFi network issue could have been better handled through more downstream communication, more attention to how distros do their default configuration, and more attention to+Michael Biebl's tireless efforts to push the issue forward.
2
1
(X.org -- and, one hopes, systemd! -- are giant exceptions to this, helpful to a fault.)
3
2
Similarly, every time you as a developer throw away something users are using and say that oh, it'll be back soon, get on without it, you're really telling them "don't trust anything we produce from now on: for that matter, don't start using any new features we may introduce, because we might take them away just as fast, then castigate you if you complain that a useful feature was removed". And castigating users in public for 'disliking change' when their workflows are repeatedly brokenis something I have seen come from the GNOME crowd. (In public, as if that matters. Contempt for one's users is still contempt when it happens in private.)
btw, if this sounds bitter -- this is what is left after repeated rounds of self-censorship and removal of potentially inflammatory material. It wasmuch more bitter before: that's how unpleasant reporting bugs to these (carefully unnamed) projects can be. If potential bug reporters are made to feel like this, I'd say you're doing something wrong. Certainly you'll get fewer bug reports.
1
0
From what I can see from'systemctl --help' , it basically works like switching runlevels:'Start one unit and stop all others'
Maybe what you're looking for is'systemctl start' instead of'isolate'. See if'systemctl start battery.target' accomplishes what you want.
2
1
Basically, the documentation about how "conflicts", "wants", "requires", etc. interact with each other is a bit tricky, and the reason why I want to do this is because I want to keep "battery.target" to be "the same as graphical.target except certain services should be stopped and one or two one-shot scripts should be run". It's not clear what's the most colloquial way to express this using systemd's constructs.
1
0
The service might have been started through some socket, dbus or systemd.path activation or by some uevent. I guess in those cases, none of the targets explicitly have it as a dependency since the started services aren't pulled in by anything, but are "activated" by some other non-dependency based trigger (Though I'm just guessing here) and a 'systemctl isolate' would kill it since it doesn't show up in the dependency tree. An example would be cups.service, it's not pulled in as a dependency but is instead triggered by a socket.
So it's probably not so good to use isolate, because it would probably also stop the static units that you manually start yourself (if you use such units).
2
1
1
0
systemctl enable rsyslog
systemctl start multi-user.target
and /var/log/syslog should be populated
1
0
…https://lkml.org/lkml/2014/4/2/420
“I willnot be merging any code from Kay into the kernel until this constant pattern is fixed.”
LEL, go back to never fixing ext4 corruption issues.
1
0
My latest gripe (and time wasted): logind replacing upower functionality for no good reason, with a new and more obscure dbus name.
If you don't run logind, no more dbus power events for you. See:
http://lists.freedesktop.org/archives/devkit-devel/2014-March/001581.html
1
0
+Chester Moy Thank you - I did go through those steps, but got stuck when it didn't work like it said on the tin. It's been a couple months, so I'm not recalling the precise details at the moment, but I think it was that having rsyslog consume systemd journal data directly was considered to be a broken setup but that systemd forwarding to syslog was supposed to work OK. I love having rsyslog split out all my logs by machine, date, service, etc.
5
4
Part of this is an attitude thing. The Debian systemd maintainer is deliberately taking things slow, and not doing things that would infuriate people and cause people to say, "See, I told you systemd was a mistake".
The systemd people seem to want it both ways. Sometimes, people will say that the systemd has many components, and no one is forcing you to consume all of them --- and so they are not trying to take over the world. Other times, if anything breaks, and you're not using all of their components, they will say that you have a broken setup, and the only way to use Base OS (and sometimes this was known as GNOME OS, but I think they realized that was going too far, and/or GNOME was pissing off too many power users) is to use all of the pieces of their Base OS.
1
0
If you don't need a complicated system you can use this simple init system I wrote:
https://github.com/felipec/finit/blob/master/init
You can add a ton of services if you need, but you would have to do it manually, so it might be a hassle, but I bet definitely less than having to deal with systemd stupidities since you can actually read and understand the whole code. It's a simple script of 230 lines of code.
2
1
2
1
The default PolicyKit rules as supplied in various distros renders things like NetworkManager, printer management, and a whole suite of other stuff, unusable in an RDP session.
So I sat down one day and tried to grok how PolicyKit actually worked - the documentation was (and still probably is - I haven't checked) opaque and mysterious, and just plain outright /bad/.
The end result was an article I wrote ( http://scarygliders.net/2012/06/20/a-brief-guide-to-policykit/ ) - which outlined my understanding of it at the time and seems to have helped other to get to grips with it. The method of altering the XML files is probably all wrong (i.e. better to generate pkla files rather than change the default distor-supplied policies), but that was how far I was prepared to take it at that point, and I got diverted by real life and other more interesting things.
A spin-off from looking into it was that I wrote Polkit Explorer, which turns the XML files into something a human can quickly understand by presenting the info in a GUI; http://scarygliders.net/2013/03/26/polkit-explorer-v1-0-released/
The repo is at https://github.com/scarygliders/Polkit-Explorer , and hasn't been touched for a year now - anyone wishing to fork it and/or use it is free to do so.
PolicyKit is a real PITA.
2
1
Or for that matter, if I'm running a pipe from a terminal that takes "too long", and X is available, then it can pop up a completion display. It's ... it's ... it's ... like design of the shell stopped when X started.
2
1
I want to refer you to this video before reading my response:
http://youtu.be/UFFTYRWB0Tk?t=20m22s
The thing with systemd is that, as said in the video (and I know this sounds paranoic but at this point I'm over that) the tremendous quantity of bugs that systemd creates could be an excuse for Red Hat to implement backdoors into Linux Kernel. As a matter of fact, right now some people in the Arch community is dealing with something that is relevant to this topic: systemd is starting services without the user's consent.It's been fixed in testing but that kind of things made me wonder about the liability that systemd provides (by the way, all the services that systemd starts are security services like iptables and Kerberos V).

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.




























