View mode: basic / threaded / horizontal-split · Log in · Help
November 11, 2012
Re: Binary compatibility on Linux
Jacob Carlborg wrote:

> On 2012-11-11 10:30, Thomas Koch wrote:
> 
>> The best way is to get your software in the official debian archive.
>> There are infrastructure and established workflows to recompile packages
>> for each Debian version.
>> The backports archive contains newer versions of a package for the
>> current stable Debian release.
> 
> I don't want to limit myself to just the debian based package mangers. I
> want my tools to be available/usable on all distributions.

If your package is in Debian then it is automatically also in Ubuntu, Mint, 
Xandros, Univention, Aptosid, Knoppix and a few douzend more distributions 
which are all derivatives of Debian:

http://wiki.debian.org/Derivatives/Census
http://www.debian.org/misc/children-distros

Roughly the other half(?) of the linux universe is based on Fedora, e.g. 
CentOS, Red Hat:
https://fedoraproject.org/wiki/Derived_distributions

So by getting your package in the archives of Debian and Fedora, you should 
serve the large majority of linux users.

The Debian wiki has a list of advantages why somebody would want to have his 
software in a distributions archive:
http://wiki.debian.org/AdvantagesForUpstream

Best regards,

Thomas Koch
November 11, 2012
Re: Binary compatibility on Linux
On 11/11/2012 11:57 AM, Thomas Koch wrote:
> So by getting your package in the archives of Debian and Fedora, you should
> serve the large majority of linux users.

Which is well and good, but doesn't address the problem that software developers 
face, which is "How can I make directly available binaries of my programs that 
will work for any Linux user?"

It's useful to be able to do that regardless of whether your software is FOSS 
and regardless of whether or not it's in distro repositories, because your 
latest release will always take time to propagate to the distros and because not 
everyone is comfortable compiling from source.
November 11, 2012
Re: Binary compatibility on Linux
On 2012-11-10 20:10, 1100110 wrote:

> Oldest system to reasonably support?  I would say Debian Stable.
> It is used on a lot of server systems and isn't *too* far behind/old.

How would Debian Stable compare to, say, a five year old Ubuntu LTS that 
is still supported?

-- 
/Jacob Carlborg
November 11, 2012
Re: Binary compatibility on Linux
On Sun, 11 Nov 2012 12:45:56 +0100
Joseph Rushton Wakeling <joseph.wakeling@webdrake.net> wrote:

> On 11/11/2012 11:57 AM, Thomas Koch wrote:
> > So by getting your package in the archives of Debian and Fedora,
> > you should serve the large majority of linux users.
> 
> Which is well and good, but doesn't address the problem that software
> developers face, which is "How can I make directly available binaries
> of my programs that will work for any Linux user?"
> 

I'm not a Linux expert, but I'm fairly certain the answer is "You
can't". Linux is very good at a lot of things, but standardization is
definitely not one of them. Linux is just far too divergent ("herding
cats" comes to mind) for a widely-compatible binary to be realistic.
The best that can be done is make a dead-simple-to-use script to grab
dependencies (isolated from the rest of the system if need be) and
compile.

> It's useful to be able to do that regardless of whether your software
> is FOSS and regardless of whether or not it's in distro repositories,
> because your latest release will always take time to propagate to the
> distros and because not everyone is comfortable compiling from source.
November 11, 2012
Re: Binary compatibility on Linux
On 11/11/2012 01:19 PM, Nick Sabalausky wrote:
> I'm not a Linux expert, but I'm fairly certain the answer is "You
> can't". Linux is very good at a lot of things, but standardization is
> definitely not one of them. Linux is just far too divergent ("herding
> cats" comes to mind) for a widely-compatible binary to be realistic.
> The best that can be done is make a dead-simple-to-use script to grab
> dependencies (isolated from the rest of the system if need be) and
> compile.

I think you're most likely right -- at least, it's impossible in the general 
case if not perhaps for a narrow band of widely-used distros.

It's just that I think people were answering a different question from that 
which the OP asked, and I think his actual question deserves a decent answer 
(even if it's a negative one).
November 11, 2012
Re: Binary compatibility on Linux
On Sun, 2012-11-11 at 07:19 -0500, Nick Sabalausky wrote:
[…]
> I'm not a Linux expert, but I'm fairly certain the answer is "You
> can't". Linux is very good at a lot of things, but standardization is
> definitely not one of them. Linux is just far too divergent ("herding
> cats" comes to mind) for a widely-compatible binary to be realistic.
> The best that can be done is make a dead-simple-to-use script to grab
> dependencies (isolated from the rest of the system if need be) and
> compile.
[…]

There is only one Linux, well except that they keep evolving it and
changing the version number. Linux is very standardized in that there is
only one. There is no Linux divergence as there was UNIX divergence.

There are many, many, Linux-based distributions. The compilers vary, the
version of Linux varies, the libraries vary, the packaging system
varies. Binary compatibility across all of these is clearly impossible.
This is not a problem, this is the antithesis of problem, as long as you
allow the platform packagers to package or ship source and a build
specification. Hence aptitude, yum, Waf and such stuff.

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
November 11, 2012
Re: Binary compatibility on Linux
On Sun, 11 Nov 2012 04:45:48 -0600, Jacob Carlborg <doob@me.com> wrote:

> On 2012-11-10 20:10, 1100110 wrote:
>
>> Oldest system to reasonably support?  I would say Debian Stable.
>> It is used on a lot of server systems and isn't *too* far behind/old.
>
> How compatible is Debian with non-debian based distributions?
>

I've used alien a fair number of times, and its usually "just worked."
Here is an FAQ:  
http://www.debian.org/doc/manuals/debian-faq/ch-compat.en.html
That link provides a lot of info.

Honestly, unless Ubuntu has done something really weird, Debian should be  
just as compatible with non-Debian distros as Ubuntu is.  Give me a solid  
example of what you mean and I'll take a closer look.

Ubuntu has a Debian-for-Ubuntu-Devs page.  
https://wiki.ubuntu.com/Debian/ForUbuntuDevelopers
That should explain something at least.

How does Debian Stable compare to Ubuntu 8.04(Hardy Heron) LTS which loses  
support in April?
I'm not entirely sure.  http://packages.ubuntu.com/hardy/   
http://packages.debian.org/stable/
November 12, 2012
Re: Binary compatibility on Linux
On 2012-11-11 23:30, 1100110 wrote:

> I've used alien a fair number of times, and its usually "just worked."
> Here is an FAQ:
> http://www.debian.org/doc/manuals/debian-faq/ch-compat.en.html
> That link provides a lot of info.
>
> Honestly, unless Ubuntu has done something really weird, Debian should
> be just as compatible with non-Debian distros as Ubuntu is.  Give me a
> solid example of what you mean and I'll take a closer look.

I'm not saying it's incompatible, I'm asking :) BTW, I actually don't 
know how compatible Ubuntu either.

> Ubuntu has a Debian-for-Ubuntu-Devs page.
> https://wiki.ubuntu.com/Debian/ForUbuntuDevelopers
> That should explain something at least.

I guess I'll to take a look at that page.

> How does Debian Stable compare to Ubuntu 8.04(Hardy Heron) LTS which
> loses support in April?
> I'm not entirely sure.  http://packages.ubuntu.com/hardy/
> http://packages.debian.org/stable/

As I understand it Debian is a more stable distribution and Ubuntu is a 
faster moving target. The question is how much faster. Would Ubuntu LTS 
be more ahead of compared to the latest stable Debian.

-- 
/Jacob Carlborg
November 13, 2012
Re: Binary compatibility on Linux
On Sunday, 11 November 2012 at 11:46:07 UTC, Joseph Rushton 
Wakeling wrote:
> Which is well and good, but doesn't address the problem that 
> software developers face, which is "How can I make directly 
> available binaries of my programs that will work for any Linux 
> user?"

http://en.wikipedia.org/wiki/Open_Build_Service ?
November 14, 2012
Re: Binary compatibility on Linux
On Monday, 12 November 2012 at 07:22:04 UTC, Jacob Carlborg wrote:

> As I understand it Debian is a more stable distribution and 
> Ubuntu is a faster moving target. The question is how much 
> faster. Would Ubuntu LTS be more ahead of compared to the 
> latest stable Debian.

Debian testing is a rolling distribution, so it is always in an 
unstable state. Debian stable is, as it says, stable. To answer 
your question, just look at what debain version the particular 
ubuntu LTS version is based on.

To be honest, unless you're going to package all your 
dependancies along with the download, then you have to go down 
one of two routes: source distribution with a nice simple build 
procedure or making packages for the main distributions. I would 
recommend doing both.

Look at it this way: the sort of people who aren't using a debian 
or fedora based distro aren't going to be phased by building from 
source (as a matter of fact they might prefer it).
If you provide packages for debian and fedora and a source 
distribution as a fallback then you've covered the vast majority 
of your bases, allowing less advanced users to use package 
managers and letting the wild-west fringe distro people do 
whatever they want.
1 2 3 4
Top | Discussion index | About this forum | D home