<?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: Experiments with runtime-less app-bundles</title>
	<atom:link href="http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/</link>
	<description>Cool links and commentary</description>
	<lastBuildDate>Wed, 21 Oct 2009 16:29:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Flavio</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-239</link>
		<dc:creator>Flavio</dc:creator>
		<pubDate>Fri, 24 Aug 2007 14:28:04 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-239</guid>
		<description>Hello to all &quot;packaging gurus&quot; around,
Everybody is talking about how (k/g)lick cannot replace centralized package managament. While I agree that the &quot;base system&quot; must be managed with something like apt, is there a reason why a distribution could not be built using apt for the &quot;system&quot; and something like klik for the applications?</description>
		<content:encoded><![CDATA[<p>Hello to all &#8220;packaging gurus&#8221; around,<br />
Everybody is talking about how (k/g)lick cannot replace centralized package managament. While I agree that the &#8220;base system&#8221; must be managed with something like apt, is there a reason why a distribution could not be built using apt for the &#8220;system&#8221; and something like klik for the applications?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Luca Cappelletti</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-229</link>
		<dc:creator>Luca Cappelletti</dc:creator>
		<pubDate>Sun, 19 Aug 2007 02:52:59 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-229</guid>
		<description>I would say also that when I was in Dapper I made a little experiment embedding a .desktop file into the header of a Makeself runnable file and Nautilus parses it well showing me and Icon!!! like in a classical .exe windows file...
But everything goes away from future nautilus (a bug? a feature? I never know what happen to nautilus to stop to parse that files..).
Another side of the architecture I made is that it use ROX AppDir as Bundle format so when the Makeself extract the Bundle into /tmp/Programs you canfly with Rox Filer and click like a natural AppDir due to it&#039;s /tmp/Programs/TEST/Linux-ix86/bin structure and an AppRun, .DirIcon etc etc gateway objects that let ROX an easy parsing.
The word Programs was taken from Gobo Linux world and I think it&#039;s better than the word Application used into OSX because &quot;programs&quot; is a word that everyone easy understand today (my mother too ;-).

Luca Cappelletti</description>
		<content:encoded><![CDATA[<p>I would say also that when I was in Dapper I made a little experiment embedding a .desktop file into the header of a Makeself runnable file and Nautilus parses it well showing me and Icon!!! like in a classical .exe windows file&#8230;<br />
But everything goes away from future nautilus (a bug? a feature? I never know what happen to nautilus to stop to parse that files..).<br />
Another side of the architecture I made is that it use ROX AppDir as Bundle format so when the Makeself extract the Bundle into /tmp/Programs you canfly with Rox Filer and click like a natural AppDir due to it&#8217;s /tmp/Programs/TEST/Linux-ix86/bin structure and an AppRun, .DirIcon etc etc gateway objects that let ROX an easy parsing.<br />
The word Programs was taken from Gobo Linux world and I think it&#8217;s better than the word Application used into OSX because &#8220;programs&#8221; is a word that everyone easy understand today (my mother too <img src='http://blogs.gnome.org/alexl/wp-content/mu-plugins/tango-smilies/tango/face-wink.png' alt=';-)' class='wp-smiley' /> .</p>
<p>Luca Cappelletti</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Luca Cappelletti</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-228</link>
		<dc:creator>Luca Cappelletti</dc:creator>
		<pubDate>Sun, 19 Aug 2007 02:31:47 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-228</guid>
		<description>Hello,

this is one of my old way to solve thinks taking into account an evolution starting from ROX AppDir, OSX Bundles/DMG handling, Klik gateways and others.
I explored also an os centric mode with mount bind into a live tmp filesystem but everything pass through the root...and it&#039;s bad for me.
I&#039;m working now into a solution that does not take into account of oscentric and esoteric out of rootless peoples control.
My vision is 100% user centric.
To let you understand what I&#039;m going to do just point to some of my experimental packages here:
Oldest one: http://sourceforge.net/project/showfiles.php?group_id=43393&amp;package_id=151348
Newest one:
http://sourceforge.net/project/showfiles.php?group_id=199098
Whith what I&#039;ve renamed as &quot;SpatialBundles&quot; I&#039;ve no requirements other than: Bash.
So no root, no fuse, no tmpfs, no mount.
Nash it&#039;s not a striclty requiremente in the future because for performance reasons I can choose to use and ELF file directly like glik but my point of view in terms of usability take into account to let better developers to manipulate directly the Bundles using the standard bash shell.
My technology now use directly Makeself to make a single file runnable where there is embedded al what I call as &quot;CrossBundles&quot; that let me run the bundle on a Linux/BSD/OSX platform depends on how I &#039;bundled&#039; the runnable objects.
This days I&#039;m solving newer issues to permit a good mime interaction bundling Java6 with very good and promising results.
My technology it&#039;s not so publicy available because I&#039;m trying to develope a tool to permit developers to freely build their own packages without lost into the developing tools world as you can do into a generic tool like *pkg*, xcode, and so on...trying to reduce to the max complexity and offer to developer something so banal tha should be 100% transparent...
The skeleton of my SpatialBundles are made by a nativa recompilation against:
/tmp/Programs/
than repackaged with Makeself to make single file runnable where it acts as a gateway if there where a previous run (speeding up the run) or,as Makeself do, extract into /tmp/Programs and then run the main binary.
Peoples manipulate spatially the original Bundle doing thinks like, duplicate, sending via mail/bluetooth etc etc, renaming, trashing...nothing is installed, nothing require installation and a two fase turbo cache (disk and ram) could be activated to improve future runs into a os restart session.
After the first run the Bundle is shared with al the system user so they could feel and improvement of speed for their first run...
I&#039;m working to better thinks and include features...it&#039;s just a matter of time ;)

In the mean time you can simply reverse packages due to it&#039;s native Makeself-ish
Hope next day could give you more.
Tnx to Alexander for your work,

Luca Cappelletti</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p>this is one of my old way to solve thinks taking into account an evolution starting from ROX AppDir, OSX Bundles/DMG handling, Klik gateways and others.<br />
I explored also an os centric mode with mount bind into a live tmp filesystem but everything pass through the root&#8230;and it&#8217;s bad for me.<br />
I&#8217;m working now into a solution that does not take into account of oscentric and esoteric out of rootless peoples control.<br />
My vision is 100% user centric.<br />
To let you understand what I&#8217;m going to do just point to some of my experimental packages here:<br />
Oldest one: <a href="http://sourceforge.net/project/showfiles.php?group_id=43393&amp;package_id=151348" rel="nofollow">http://sourceforge.net/project/showfiles.php?group_id=43393&amp;package_id=151348</a><br />
Newest one:<br />
<a href="http://sourceforge.net/project/showfiles.php?group_id=199098" rel="nofollow">http://sourceforge.net/project/showfiles.php?group_id=199098</a><br />
Whith what I&#8217;ve renamed as &#8220;SpatialBundles&#8221; I&#8217;ve no requirements other than: Bash.<br />
So no root, no fuse, no tmpfs, no mount.<br />
Nash it&#8217;s not a striclty requiremente in the future because for performance reasons I can choose to use and ELF file directly like glik but my point of view in terms of usability take into account to let better developers to manipulate directly the Bundles using the standard bash shell.<br />
My technology now use directly Makeself to make a single file runnable where there is embedded al what I call as &#8220;CrossBundles&#8221; that let me run the bundle on a Linux/BSD/OSX platform depends on how I &#8216;bundled&#8217; the runnable objects.<br />
This days I&#8217;m solving newer issues to permit a good mime interaction bundling Java6 with very good and promising results.<br />
My technology it&#8217;s not so publicy available because I&#8217;m trying to develope a tool to permit developers to freely build their own packages without lost into the developing tools world as you can do into a generic tool like *pkg*, xcode, and so on&#8230;trying to reduce to the max complexity and offer to developer something so banal tha should be 100% transparent&#8230;<br />
The skeleton of my SpatialBundles are made by a nativa recompilation against:<br />
/tmp/Programs/<br />
than repackaged with Makeself to make single file runnable where it acts as a gateway if there where a previous run (speeding up the run) or,as Makeself do, extract into /tmp/Programs and then run the main binary.<br />
Peoples manipulate spatially the original Bundle doing thinks like, duplicate, sending via mail/bluetooth etc etc, renaming, trashing&#8230;nothing is installed, nothing require installation and a two fase turbo cache (disk and ram) could be activated to improve future runs into a os restart session.<br />
After the first run the Bundle is shared with al the system user so they could feel and improvement of speed for their first run&#8230;<br />
I&#8217;m working to better thinks and include features&#8230;it&#8217;s just a matter of time <img src='http://blogs.gnome.org/alexl/wp-content/mu-plugins/tango-smilies/tango/face-wink.png' alt=';)' class='wp-smiley' /> </p>
<p>In the mean time you can simply reverse packages due to it&#8217;s native Makeself-ish<br />
Hope next day could give you more.<br />
Tnx to Alexander for your work,</p>
<p>Luca Cappelletti</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kalikiana</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-227</link>
		<dc:creator>kalikiana</dc:creator>
		<pubDate>Sun, 12 Aug 2007 05:01:05 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-227</guid>
		<description>Now this is the first implementation of app bundles on linux that I would seriously recommend to others if you continue it. With fuse being the only hard requirement  and possibly enhancing the portability with help of the already mentioned autopackage tools, this would be perfect for testing versions of applications or for trying out new apps very quickly.

Imho the only unclear point is the desktop file/ icon issue. Maybe a workaround is an option, for example the app provides an option to install the desktop file and icon to ~/.local/share/ along with a subtle uninstall option, similar to what autopackage does. In any case this is a minor problem imho, since we don&#039;t want long-time users anyway but rather encourage users to use the distribution package of a stable version if they are going to use it more often.</description>
		<content:encoded><![CDATA[<p>Now this is the first implementation of app bundles on linux that I would seriously recommend to others if you continue it. With fuse being the only hard requirement  and possibly enhancing the portability with help of the already mentioned autopackage tools, this would be perfect for testing versions of applications or for trying out new apps very quickly.</p>
<p>Imho the only unclear point is the desktop file/ icon issue. Maybe a workaround is an option, for example the app provides an option to install the desktop file and icon to ~/.local/share/ along with a subtle uninstall option, similar to what autopackage does. In any case this is a minor problem imho, since we don&#8217;t want long-time users anyway but rather encourage users to use the distribution package of a stable version if they are going to use it more often.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Klik esce dal buio? Notizione! &#171; pollycoke :)</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-226</link>
		<dc:creator>Klik esce dal buio? Notizione! &#171; pollycoke :)</dc:creator>
		<pubDate>Fri, 10 Aug 2007 18:53:36 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-226</guid>
		<description>[...] succosissime novità di klik2, ha creato una sua implementazione sperimentale di klik, e l&#8217;ha rilasciata come &#8220;glik&#8221; (sorpresa!). La grossa novità è questa sua implementazione non avrebbe bisogno di alcun ambiente [...]</description>
		<content:encoded><![CDATA[<p>[...] succosissime novità di klik2, ha creato una sua implementazione sperimentale di klik, e l&#8217;ha rilasciata come &#8220;glik&#8221; (sorpresa!). La grossa novità è questa sua implementazione non avrebbe bisogno di alcun ambiente [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexl</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-225</link>
		<dc:creator>alexl</dc:creator>
		<pubDate>Wed, 08 Aug 2007 18:53:09 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-225</guid>
		<description>probono: 
I don&#039;t see why it shouldn&#039;t work fine with unmodified binaries really.</description>
		<content:encoded><![CDATA[<p>probono:<br />
I don&#8217;t see why it shouldn&#8217;t work fine with unmodified binaries really.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: probono</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-224</link>
		<dc:creator>probono</dc:creator>
		<pubDate>Wed, 08 Aug 2007 18:46:28 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-224</guid>
		<description>Hats off, Alexander. From what I read, your implementation is way cleaner than ours. Will it work with unmodified binaries? (E.g. RealPlayer, Skype, Picasa,....) These are the most frequently downloaded applications from klik, since they are not frequently distributed due to their closed-source nature. Also, &quot;klik2&quot; is centered around &quot;application virtualization&quot; (also known as &quot;Portable Apps&quot; in the Windows world), so that you can take the application and all its related data with you, e.g., on a USB stick.

&quot;Hopefully the klik people will look at my work and steal the appropriate ideas.&quot; --&gt; We&#039;d definitely like to invite you to our next developer meeting (http://klik.atekon.de/wiki/index.php/Developer_meetings), and to #klik on freenode. This invitation also extends to other interested developers (= all frequent readers here).

As for the &quot;k&quot; in klik, it is no longer specifically related to KDE. We do have GNOME and CLI interfaces Today, &quot;klik&quot; has no special meaning besides its resemblance to &quot;click&quot;. 

Again, &quot;hats off&quot;. I&#039;m going to test it now...</description>
		<content:encoded><![CDATA[<p>Hats off, Alexander. From what I read, your implementation is way cleaner than ours. Will it work with unmodified binaries? (E.g. RealPlayer, Skype, Picasa,&#8230;.) These are the most frequently downloaded applications from klik, since they are not frequently distributed due to their closed-source nature. Also, &#8220;klik2&#8243; is centered around &#8220;application virtualization&#8221; (also known as &#8220;Portable Apps&#8221; in the Windows world), so that you can take the application and all its related data with you, e.g., on a USB stick.</p>
<p>&#8220;Hopefully the klik people will look at my work and steal the appropriate ideas.&#8221; &#8211;&gt; We&#8217;d definitely like to invite you to our next developer meeting (<a href="http://klik.atekon.de/wiki/index.php/Developer_meetings)" rel="nofollow">http://klik.atekon.de/wiki/index.php/Developer_meetings)</a>, and to #klik on freenode. This invitation also extends to other interested developers (= all frequent readers here).</p>
<p>As for the &#8220;k&#8221; in klik, it is no longer specifically related to KDE. We do have GNOME and CLI interfaces Today, &#8220;klik&#8221; has no special meaning besides its resemblance to &#8220;click&#8221;. </p>
<p>Again, &#8220;hats off&#8221;. I&#8217;m going to test it now&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Graveley</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-223</link>
		<dc:creator>Alex Graveley</dc:creator>
		<pubDate>Wed, 08 Aug 2007 18:44:38 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-223</guid>
		<description>Awesome idea Alex.  There&#039;s some talk internally about trying to get VMware WS or Player running as a glick package.  We already run very well with relocatable install locations, but it&#039;ll stress glick viability given a large, complex app.  I&#039;ll keep you posted :-)</description>
		<content:encoded><![CDATA[<p>Awesome idea Alex.  There&#8217;s some talk internally about trying to get VMware WS or Player running as a glick package.  We already run very well with relocatable install locations, but it&#8217;ll stress glick viability given a large, complex app.  I&#8217;ll keep you posted <img src='http://blogs.gnome.org/alexl/wp-content/mu-plugins/tango-smilies/tango/face-smile.png' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Things n&#8217; Stuff &#187; Blog Archive &#187; Just another non-installer application distribution plan</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-222</link>
		<dc:creator>Things n&#8217; Stuff &#187; Blog Archive &#187; Just another non-installer application distribution plan</dc:creator>
		<pubDate>Wed, 08 Aug 2007 17:00:52 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-222</guid>
		<description>[...] So wouldn&#8217;t it be great to have a software package that can actually be downloaded and run easily with out the need to actually &#8220;prepare&#8221; your system for zero installation ? Alexander Larsson thinks so as well and has an interesting solution. [...]</description>
		<content:encoded><![CDATA[<p>[...] So wouldn&#8217;t it be great to have a software package that can actually be downloaded and run easily with out the need to actually &#8220;prepare&#8221; your system for zero installation ? Alexander Larsson thinks so as well and has an interesting solution. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isak Savo</title>
		<link>http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/comment-page-1/#comment-221</link>
		<dc:creator>Isak Savo</dc:creator>
		<pubDate>Wed, 08 Aug 2007 15:48:22 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/alexl/2007/08/07/experiments-with-runtime-less-app-bundles/#comment-221</guid>
		<description>Very interesting alexl! 

Another way to make an application relocatable is to use our binreloc code (http://www.autopackage.org/docs/binreloc/). We have two versions, one that require some code changes, and one that uses a dynamic prefix through the proc filesystem. Linux only though.

As Joe Shaw experienced, there are more problems with shipping distribution neutral packages than wrapping them in a container and making them relocatable. The binary incompatibilities between distributions, and even versions of distributions, requires compilation tweaks to make it work. libc and gcc does not support &quot;build once, run everywhere&quot; out of the box, and there&#039;s tons of &quot;Oh-by-the-way&quot;&#039;s to consider. For Autopackage, we have developed and use APBuild (http://www.autopackage.org/aptools.html) which is a perl script around gcc/g++ that addresses many of the issues.

For self contained apps, the appfolder style bundle is quite useful, but as soon as the apps depend on each other (e.g., plugins) or it contains files used by the system such as dbus session files, fonts, images/icons, desktop files) it needs to go to a location where the system can find it.

That&#039;s enough pessimism for now, and all things considered, I think this is a very cool investigation project! :-)</description>
		<content:encoded><![CDATA[<p>Very interesting alexl! </p>
<p>Another way to make an application relocatable is to use our binreloc code (<a href="http://www.autopackage.org/docs/binreloc/)" rel="nofollow">http://www.autopackage.org/docs/binreloc/)</a>. We have two versions, one that require some code changes, and one that uses a dynamic prefix through the proc filesystem. Linux only though.</p>
<p>As Joe Shaw experienced, there are more problems with shipping distribution neutral packages than wrapping them in a container and making them relocatable. The binary incompatibilities between distributions, and even versions of distributions, requires compilation tweaks to make it work. libc and gcc does not support &#8220;build once, run everywhere&#8221; out of the box, and there&#8217;s tons of &#8220;Oh-by-the-way&#8221;&#8217;s to consider. For Autopackage, we have developed and use APBuild (<a href="http://www.autopackage.org/aptools.html" rel="nofollow">http://www.autopackage.org/aptools.html</a>) which is a perl script around gcc/g++ that addresses many of the issues.</p>
<p>For self contained apps, the appfolder style bundle is quite useful, but as soon as the apps depend on each other (e.g., plugins) or it contains files used by the system such as dbus session files, fonts, images/icons, desktop files) it needs to go to a location where the system can find it.</p>
<p>That&#8217;s enough pessimism for now, and all things considered, I think this is a very cool investigation project! <img src='http://blogs.gnome.org/alexl/wp-content/mu-plugins/tango-smilies/tango/face-smile.png' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
