<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: PackageKit Stop Energy</title>
	<atom:link href="http://blog.floopily.org/2008/04/14/packagekit-stop-energy/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/</link>
	<description></description>
	<lastBuildDate>Fri, 28 May 2010 23:33:15 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Philip Van Hoof</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-240</link>
		<dc:creator>Philip Van Hoof</dc:creator>
		<pubDate>Mon, 14 Apr 2008 14:23:21 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-240</guid>
		<description>Agree with the IPC solution (D-BUS).

Right now Ubuntu&#039;s solution is to run some GNOME application (that is NOT security audited NOR is the GNOME stack of libraries being used security audited either) in a highly predictable way with sudo (therefore, as root).

Worse, they have a (hidden) VTE widget that is running the apt-get or dpkg application as root, too.

Worse, any application and the user herself too can send keystrokes to this widget. Including combinations like CTRL+C. At least on the Ubuntu versions that I tested this against it was even possible to send SIGHUP to apt-get this way (user input breaking the application). 

I already filed a bug about this at Ubuntu but that bug was dismissed as invalid. I also, in that bug, tried to discuss a solution for this problem. My ad-hoc solution was to run an ad-hoc SUID root application that gets controlled instructions (over an IPC like pipe() and STDIN or a Unix socket) from the user-application and then executes them.

PackageKid wraps a similar solution (not suid but running a daemon) into a good API, making it possible for any application to securely interact with this.

Questions that are to be asked by the user should in my opinion not be asked by a UI application that runs as root. Something that sits in the middle, converts the questions into something that can&#039;t ever be a security problem and then does IPC with a securely written application to get it done, is a far better architecture for this.

Not only is Ubuntu&#039;s solution a severe security mistake. Running an application as root also creates theming problems, configuration problems (proxy settings, getting user-specific default answers and values, etc).

In stead of for ever postphoning the solution for this problem for the reason &quot;because silly packagers want to ask questions in a non-standard way&quot;, should distributions like Ubuntu attack the problem by supporting a real solution.</description>
		<content:encoded><![CDATA[<p>Agree with the IPC solution (D-BUS).</p>
<p>Right now Ubuntu&#8217;s solution is to run some GNOME application (that is NOT security audited NOR is the GNOME stack of libraries being used security audited either) in a highly predictable way with sudo (therefore, as root).</p>
<p>Worse, they have a (hidden) VTE widget that is running the apt-get or dpkg application as root, too.</p>
<p>Worse, any application and the user herself too can send keystrokes to this widget. Including combinations like CTRL+C. At least on the Ubuntu versions that I tested this against it was even possible to send SIGHUP to apt-get this way (user input breaking the application). </p>
<p>I already filed a bug about this at Ubuntu but that bug was dismissed as invalid. I also, in that bug, tried to discuss a solution for this problem. My ad-hoc solution was to run an ad-hoc SUID root application that gets controlled instructions (over an IPC like pipe() and STDIN or a Unix socket) from the user-application and then executes them.</p>
<p>PackageKid wraps a similar solution (not suid but running a daemon) into a good API, making it possible for any application to securely interact with this.</p>
<p>Questions that are to be asked by the user should in my opinion not be asked by a UI application that runs as root. Something that sits in the middle, converts the questions into something that can&#8217;t ever be a security problem and then does IPC with a securely written application to get it done, is a far better architecture for this.</p>
<p>Not only is Ubuntu&#8217;s solution a severe security mistake. Running an application as root also creates theming problems, configuration problems (proxy settings, getting user-specific default answers and values, etc).</p>
<p>In stead of for ever postphoning the solution for this problem for the reason &#8220;because silly packagers want to ask questions in a non-standard way&#8221;, should distributions like Ubuntu attack the problem by supporting a real solution.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard Hughes</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-239</link>
		<dc:creator>Richard Hughes</dc:creator>
		<pubDate>Sun, 13 Apr 2008 23:10:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-239</guid>
		<description>Well, PackageKit doesn&#039;t obsolete anything  - you can still use apt-get, synaptic, pirut, zipper or even rpm and dpkg directly. It&#039;s just a layer of prettyness that lets us fix some real problems with the backends. There&#039;s quite a nice intro here: http://people.freedesktop.org/~hughsient/public/introduction-to-packagekit.pdf</description>
		<content:encoded><![CDATA[<p>Well, PackageKit doesn&#8217;t obsolete anything  &#8211; you can still use apt-get, synaptic, pirut, zipper or even rpm and dpkg directly. It&#8217;s just a layer of prettyness that lets us fix some real problems with the backends. There&#8217;s quite a nice intro here: <a href="http://people.freedesktop.org/~hughsient/public/introduction-to-packagekit.pdf" rel="nofollow">http://people.freedesktop.org/~hughsient/public/introduction-to-packagekit.pdf</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rob</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-238</link>
		<dc:creator>rob</dc:creator>
		<pubDate>Sun, 13 Apr 2008 22:54:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-238</guid>
		<description>Micheal: Hmm, seems we have a different parsing of what PackageKit wants to be. AFAIK its just about user-facing package install and certainly not about replacing current package installation methods. I guess one simple policy is if a package requires stdin/out the packagekit backend should just fail to install it with a suitable warning. The hard bit would be spotting this of course.</description>
		<content:encoded><![CDATA[<p>Micheal: Hmm, seems we have a different parsing of what PackageKit wants to be. AFAIK its just about user-facing package install and certainly not about replacing current package installation methods. I guess one simple policy is if a package requires stdin/out the packagekit backend should just fail to install it with a suitable warning. The hard bit would be spotting this of course.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael R. Head</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-237</link>
		<dc:creator>Michael R. Head</dc:creator>
		<pubDate>Sun, 13 Apr 2008 22:50:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-237</guid>
		<description>I don&#039;t think the issue has anything to do with debconf, since debconf doesn&#039;t require a terminal for input.

The problem is that there are (a small number of) packages that don&#039;t use debconf. These are the packages that won&#039;t install unless the user interacts with it via STDIN/OUT.

The crux of the problem, in my opinion, is that PackageKit attempts to support all packages on all distributions. dpkg explicitly allows packagers to build packages to work with STDIN/OUT. My guess is that most of the packages in question are server-oriented, not desktop-oriented. If PackageKit were design to work with just the GNOME (or desktop-related) packages, then it might be fair to force packagers to follow PackageKit&#039;s requirements. But PackageKit wants to abstract over all packages on all distributions.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t think the issue has anything to do with debconf, since debconf doesn&#8217;t require a terminal for input.</p>
<p>The problem is that there are (a small number of) packages that don&#8217;t use debconf. These are the packages that won&#8217;t install unless the user interacts with it via STDIN/OUT.</p>
<p>The crux of the problem, in my opinion, is that PackageKit attempts to support all packages on all distributions. dpkg explicitly allows packagers to build packages to work with STDIN/OUT. My guess is that most of the packages in question are server-oriented, not desktop-oriented. If PackageKit were design to work with just the GNOME (or desktop-related) packages, then it might be fair to force packagers to follow PackageKit&#8217;s requirements. But PackageKit wants to abstract over all packages on all distributions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rob</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-236</link>
		<dc:creator>rob</dc:creator>
		<pubDate>Sun, 13 Apr 2008 22:12:49 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-236</guid>
		<description>jldugger: As far as I understand it, stop energy is unconstructive criticism. I&#039;ve updated my post to add some hopefully constructive criticism and try to untangle the argument ;)

James: that sucks, what a shame :(</description>
		<content:encoded><![CDATA[<p>jldugger: As far as I understand it, stop energy is unconstructive criticism. I&#8217;ve updated my post to add some hopefully constructive criticism and try to untangle the argument <img src='http://blog.floopily.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>James: that sucks, what a shame <img src='http://blog.floopily.org/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Sherlock</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-235</link>
		<dc:creator>Chris Sherlock</dc:creator>
		<pubDate>Sun, 13 Apr 2008 22:09:49 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-235</guid>
		<description>I&#039;m still confused why PackageKit can&#039;t accept user input from a package. The only packages that require this sort of thing are complicated server software type packages. The argument that the &quot;user will be confused&quot; doesn&#039;t really hold much water when you think of things in that way.</description>
		<content:encoded><![CDATA[<p>I&#8217;m still confused why PackageKit can&#8217;t accept user input from a package. The only packages that require this sort of thing are complicated server software type packages. The argument that the &#8220;user will be confused&#8221; doesn&#8217;t really hold much water when you think of things in that way.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-234</link>
		<dc:creator>James</dc:creator>
		<pubDate>Sun, 13 Apr 2008 21:51:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-234</guid>
		<description>You can&#039;t enable OpenID without enabling anonymous on LiveJournal at the moment, despite me submitting a patch to do so *counts* 8 months ago. Despite inventing OpenID, LJ&#039;s support has stagnated the past few years, and I don&#039;t see it getting any better with their new owners.</description>
		<content:encoded><![CDATA[<p>You can&#8217;t enable OpenID without enabling anonymous on LiveJournal at the moment, despite me submitting a patch to do so *counts* 8 months ago. Despite inventing OpenID, LJ&#8217;s support has stagnated the past few years, and I don&#8217;t see it getting any better with their new owners.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jldugger</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-233</link>
		<dc:creator>jldugger</dc:creator>
		<pubDate>Sun, 13 Apr 2008 21:31:46 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-233</guid>
		<description>OpenID basically means accepting any anonymous provider of openID, even those fun &quot;validate everyone&quot; providers. It provides authentication, but not trust, not even trust that the authenticated isn&#039;t a computer!

&quot;Stop Energy&quot; is a useful tool in engineering. I see lots of enthusiastic developers writing specs and selling their ideas to Ubuntu, but rarely do I see any meaningful set of downsides, caveats etc.  For example, packagekit&#039;s apt backend support is terrible, given the proportion of apt users.  Directing stop energy into criticism and evaluations helps, I think.</description>
		<content:encoded><![CDATA[<p>OpenID basically means accepting any anonymous provider of openID, even those fun &#8220;validate everyone&#8221; providers. It provides authentication, but not trust, not even trust that the authenticated isn&#8217;t a computer!</p>
<p>&#8220;Stop Energy&#8221; is a useful tool in engineering. I see lots of enthusiastic developers writing specs and selling their ideas to Ubuntu, but rarely do I see any meaningful set of downsides, caveats etc.  For example, packagekit&#8217;s apt backend support is terrible, given the proportion of apt users.  Directing stop energy into criticism and evaluations helps, I think.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rob</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-232</link>
		<dc:creator>rob</dc:creator>
		<pubDate>Sun, 13 Apr 2008 19:30:24 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-232</guid>
		<description>Mark: yeah, though he already said he can&#039;t figure how to enable OpenId without enabling anonymous, and when he enables anonymous he gets ~50 spam comments a day... ;)</description>
		<content:encoded><![CDATA[<p>Mark: yeah, though he already said he can&#8217;t figure how to enable OpenId without enabling anonymous, and when he enables anonymous he gets ~50 spam comments a day&#8230; <img src='http://blog.floopily.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Brown</title>
		<link>http://blog.floopily.org/2008/04/14/packagekit-stop-energy/comment-page-1/#comment-231</link>
		<dc:creator>Mark Brown</dc:creator>
		<pubDate>Sun, 13 Apr 2008 19:09:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.floopily.org/2008/04/13/packagekit-stop-energy/#comment-231</guid>
		<description>Or Richard could just enable anonymous and/or OpenID comments on his LJ...</description>
		<content:encoded><![CDATA[<p>Or Richard could just enable anonymous and/or OpenID comments on his LJ&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
