Octave 4.2 binary + all packages in Linux ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
35 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Octave 4.2 binary + all packages in Linux ?

roland65
Hi,

on Windows, Octave 4.2.x + all packages are available in one big zip archive or exe install. So, it's straightforward to install the whole thing.

On Linux, I didn't find any place to download Octave 4.2.x + all packages. Distributions like Debian or Ubuntu still provide 4.0.x and individual packages.

So, I believe we should have the same facility as in Windows to install the latest Octave + packages in one single binary archive, just like LibreOffice or Mozilla Firefox.

Does it make sense to you? Is it feasible (I guess there should be library compatibility issues)?

Any thought would help...

Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Olaf Till-2
On Thu, Apr 13, 2017 at 12:03:33AM -0700, roland65 wrote:

> Hi,
>
> on Windows, Octave 4.2.x + all packages are available in one big zip archive
> or exe install. So, it's straightforward to install the whole thing.
>
> On Linux, I didn't find any place to download Octave 4.2.x + all packages.
> Distributions like Debian or Ubuntu still provide 4.0.x and individual
> packages.
>
> So, I believe we should have the same facility as in Windows to install the
> latest Octave + packages in one single binary archive, just like LibreOffice
> or Mozilla Firefox.
On Windows there is currently no other way. On GNU/Linux, it's up to
the distribution to provide binaries. The reason that Octave itself
doesn't distribute current binaries for GNU/Linux distributions is
probably that it's relativley easy to build a current Octave on
GNU/Linux, compared to the effort to make a distribution-specific
binary. As for Octave Forge packages, I don't think that all of them
are provided for Windows. And since each package has its own dynamic
it is adequate to provide them separately.

If you see a need for current GNU/Linux binaries provided by Octave
itself, I'd say that would be something that has to be payed for (not
me).

Olaf

--
public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave

signature.asc (836 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

roland65
Olaf Till-2 wrote
As for Octave Forge packages, I don't think that all of them
are provided for Windows.
Building Octave on Linux is not so easy because of the lot of dependencies.

In Windows, I got Octave + 44 packages without any effort, while on Linux I spent hours to configure and compile Octave 4.2.1 and 12 packages...

Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Thomas D. Dean-2
On 04/13/2017 04:34 AM, roland65 wrote:
> Olaf Till-2 wrote
>> As for Octave Forge packages, I don't think that all of them
>> are provided for Windows.
>
> Building Octave on Linux is not so easy because of the lot of dependencies.
>
> In Windows, I got Octave + 44 packages without any effort, while on Linux I
> spent hours to configure and compile Octave 4.2.1 and 12 packages...

I track head.

One time per week, I update sources and compile/install.  Takes a couple
minutes.

Then, I use pkg update.  Also takes a couple minutes...

Tom Dean


_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Mike Miller-4
In reply to this post by roland65
On Thu, Apr 13, 2017 at 04:34:29 -0700, roland65 wrote:
> Building Octave on Linux is not so easy because of the lot of dependencies.
>
> In Windows, I got Octave + 44 packages without any effort, while on Linux I
> spent hours to configure and compile Octave 4.2.1 and 12 packages...

I think you are comparing unlike efforts here.

Very low effort is installing a prebuilt binary of Octave:

  Windows: download and run the installer, or use cygwin installer

  GNU/Linux: ${apt or dnf or yum} install octave octave-{geometry,image,io,...}

This is very low effort for the user because the package maintainers
have spent countless thankless hours making this process easy.

Medium effort is running a build script that someone else took the time
to write:

  Windows: boot a GNU/Linux VM, pull mxe-octave, build it

  GNU/Linux: build an Octave source package from a distribution, install
  it, then install packages from Octave Forge

In both cases, the scripts auto-install dependencies, run the right
build rules, out pops a binary that you can use. Takes a little more
effort on your part but a lot of CPU cycles.

Larger effort is getting the Octave source yourself and figuring out how
to build it yourself:

  Windows: install cygwin or mingw, fetch Octave source, figure out how
  to configure and compile it

  GNU/Linux: install dependencies, fetch Octave source, figure out how
  to configure and compile it

Why do things the hard way on GNU/Linux but the easy way on Windows?

Have you tried mxe-octave's native GNU/Linux build option?

Are you asking for help finding the easy to way install the latest
stable release on GNU/Linux $distro?

Are you suggesting that it's unfair that there is an all-in-one
installer for Windows but not for GNU/Linux $distro?

--
mike

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Mike Miller-4
In reply to this post by roland65
Sorry, I just went back and re-read your original message. I now think I
understand that you are interested in working on this and asking for
advice, is that right?

On Thu, Apr 13, 2017 at 00:03:33 -0700, roland65 wrote:
> So, I believe we should have the same facility as in Windows to install the
> latest Octave + packages in one single binary archive, just like LibreOffice
> or Mozilla Firefox.
>
> Does it make sense to you? Is it feasible (I guess there should be library
> compatibility issues)?

If you want to work on such a thing, you are certainly welcome to try.
It sounds possible, if not worthwhile, to me. You might start with
mxe-octave, which already has an option to build natively on GNU/Linux
systems.

--
mike

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

roland65
In reply to this post by Thomas D. Dean-2
Thomas D. Dean-2 wrote
One time per week, I update sources and compile/install.  Takes a couple minutes. Then, I use pkg update.  Also takes a couple minutes...
This probably works at home, but in a company, behind some uncoventional proxy, this will fail.

Also, this doesn't allow to easily distribute the binary to users of a working group, for example...
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

roland65
In reply to this post by Mike Miller-4
Mike Miller-4 wrote
Are you asking for help finding the easy to way install the latest
stable release on GNU/Linux $distro?

Are you suggesting that it's unfair that there is an all-in-one
installer for Windows but not for GNU/Linux $distro?
Sorry, I was probably not very clear. I'd just like to know if there is somewhere a complete binary package for Octave that is more or less independent of the distribution.

I dind't find such a thing, so I just ask if it could be done or not.

My need is the following: in my company there are some Linux users that could use Octave. Some are on Ubuntu, some on Redhat, some on OpenSuse, etc. Most of them have distribution that only propose the 4.0.x version...

As I said, I spent at lot of time to compile Octave 4.2.1 + 12 packages in Ubuntu 16.04 for my own use and if each Linux user has to do the same, this is a big waste of time...

Of course, people could stick on the old version, but there are a couple of annoying bugs that have been fixed in the new version, so it could be nice if every user could install a common binary, like we do with LibreOffice or Mozilla, for example...



Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Przemek Klosowski-7
In reply to this post by roland65
On 04/13/2017 12:26 PM, roland65 wrote:
Thomas D. Dean-2 wrote
One time per week, I update sources and compile/install.  Takes a couple
minutes. Then, I use pkg update.  Also takes a couple minutes...
This probably works at home, but in a company, behind some uncoventional
proxy, this will fail.

Also, this doesn't allow to easily distribute the binary to users of a
working group, for example... 
Surely the company in your example would have an infrastructure to manage their system that includes distributing software updates? The advantage of using such system for octave is that you don't have to do anything different specifically for octave---you just make sure all software has the latest updates.
Your proposed 'software bolus' may be easier to install upfront, but is harder to manage in the long term: you end up with everyone having a slightly different version, depending on when exactly they picked up their installer.


_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Przemek Klosowski-7
In reply to this post by roland65
On 04/13/2017 12:37 PM, roland65 wrote:
Sorry, I was probably not very clear. I'd just like to know if there is
somewhere a complete binary package for Octave that is more or less
independent of the distribution.

I dind't find such a thing, so I just ask if it could be done or not.

My need is the following: in my company there are some Linux users that
could use Octave. Some are on Ubuntu, some on Redhat, some on OpenSuse, etc.
Most of them have distribution that only propose the 4.0.x version...

Right, so this is what technologies such as Docker and Flatpack are trying to solve. Some people think they are the future, but I am apprehensive: a well run distribution (RedHat, Debian, SuSE, Fedora) have practically solved the long-term management problem: once set up, they just automatically get updates. When you enter containers into it, you gain stability in the short term but the long-term maintenance takes a hit, unless you keep updating the container, which makes me wonder why you couldn't just update the native package in the first place.


_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Mike Miller-4
In reply to this post by roland65
On Thu, Apr 13, 2017 at 09:37:13 -0700, roland65 wrote:
> Sorry, I was probably not very clear. I'd just like to know if there is
> somewhere a complete binary package for Octave that is more or less
> independent of the distribution.

No, there is not currently such a thing.

> I dind't find such a thing, so I just ask if it could be done or not.

Yes, it could be done.

> My need is the following: in my company there are some Linux users that
> could use Octave. Some are on Ubuntu, some on Redhat, some on OpenSuse, etc.
> Most of them have distribution that only propose the 4.0.x version...
>
> As I said, I spent at lot of time to compile Octave 4.2.1 + 12 packages in
> Ubuntu 16.04 for my own use and if each Linux user has to do the same, this
> is a big waste of time...
>
> Of course, people could stick on the old version, but there are a couple of
> annoying bugs that have been fixed in the new version, so it could be nice
> if every user could install a common binary, like we do with LibreOffice or
> Mozilla, for example...

If I worked at a company with a large group of users running a variety
of different distros like this, and they all wanted access to the same
latest version of Octave *not* provided by their distro's package
manager, I would probably try to install it on a server and give either
NFS or SSH access to everyone.

If I were not comfortable building Octave myself or willing to take the
time, I would probably install Arch, Debian testing + experimental, or
Fedora to leverage the 4.2.1 packages available in those repositories.

--
mike

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Mike Miller-4
On Thu, Apr 13, 2017 at 10:12:06 -0700, Mike Miller wrote:
> If I worked at a company with a large group of users running a variety
> of different distros like this, and they all wanted access to the same
> latest version of Octave *not* provided by their distro's package
> manager, I would probably try to install it on a server and give either
> NFS or SSH access to everyone.

Or, if these users have local root access (or can be added to a
privileged group with schroot permissions) I would have them install a
chroot of Debian unstable + experimental or Fedora and run an up-to-date
chrooted Octave. The debootstrap + schroot packages in Debian make this
incredibly easy to set up, assuming you can su or sudo.

Installing a minimal OS chroot with Octave packages from a managed
package repository seems much easier than trying to build a relocatable
cross-distro binary.

--
mike

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

NJank
In reply to this post by Mike Miller-4
On Apr 13, 2017 1:12 PM, "Mike Miller" <[hidden email]> wrote:
On Thu, Apr 13, 2017 at 09:37:13 -0700, roland65 wrote:
...
If I worked at a company with a large group of users running a variety
of different distros like this, and they all wanted access to the same
latest version of Octave *not* provided by their distro's package
manager, I would probably try to install it on a server and give either
NFS or SSH access to everyone.

If I were not comfortable building Octave myself or willing to take the
time, I would probably..

Or, contract with someone capable of setting up and maintaining such a setup. Some of whom could probably be initially contacted through this help list or the Octave website.

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

roland65
From all your answers, I can conclude there is no easy solution to this problem...

As a long time Linux user (more than 20 years), I'm a bit disapointed to see that something easy in Windows is so difficult to do on Linux...

Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

lukshuntim
In reply to this post by roland65
On Friday, April 14, 2017 12:37 AM, roland65 wrote:

> Mike Miller-4 wrote
>> Are you asking for help finding the easy to way install the latest
>> stable release on GNU/Linux $distro?
>>
>> Are you suggesting that it's unfair that there is an all-in-one
>> installer for Windows but not for GNU/Linux $distro?
>
> Sorry, I was probably not very clear. I'd just like to know if there is
> somewhere a complete binary package for Octave that is more or less
> independent of the distribution.
>
> I dind't find such a thing, so I just ask if it could be done or not.
>
> My need is the following: in my company there are some Linux users that
> could use Octave. Some are on Ubuntu, some on Redhat, some on OpenSuse, etc.
> Most of them have distribution that only propose the 4.0.x version...
>
> As I said, I spent at lot of time to compile Octave 4.2.1 + 12 packages in
> Ubuntu 16.04 for my own use and if each Linux user has to do the same, this
> is a big waste of time...

Don't know if the SUSE open build service can help you a bit. They
support building on a number of the more popular distributions.

http://openbuildservice.org/

Regards,
-- ST


_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Mike Miller-4
In reply to this post by roland65
On Fri, Apr 14, 2017 at 00:02:12 -0700, roland65 wrote:
> As a long time Linux user (more than 20 years), I'm a bit disapointed to see
> that something easy in Windows is so difficult to do on Linux...

I'm disappointed that's the way you interpreted my answers.

Building the Octave installer for Windows has been an extremely
difficult project from what I have followed, and continues to be an
ongoing effort to maintain and improve it. The fact that it is easy for
someone to download and install it on their system depends on many
uncounted hours of effort by many volunteers.

If someone wanted to adapt this project to make an all-in-one installer
for GNU/Linux, it would probably be easier than it has been for Windows.

If you want to try adapting this project to make such a build of Octave,
please go ahead. You might start with http://wiki.octave.org/MXE and
http://hg.octave.org/mxe-octave.

The only reason one is easier than the other, for you, is because the
maintainers decided it is necessary for Windows but not for GNU/Linux,
because distributions are already doing their job.

--
mike

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

John W. Eaton
Administrator
In reply to this post by roland65
On 04/13/2017 03:03 AM, roland65 wrote:

> Hi,
>
> on Windows, Octave 4.2.x + all packages are available in one big zip archive
> or exe install. So, it's straightforward to install the whole thing.
>
> On Linux, I didn't find any place to download Octave 4.2.x + all packages.
> Distributions like Debian or Ubuntu still provide 4.0.x and individual
> packages.
>
> So, I believe we should have the same facility as in Windows to install the
> latest Octave + packages in one single binary archive, just like LibreOffice
> or Mozilla Firefox.
>
> Does it make sense to you? Is it feasible (I guess there should be library
> compatibility issues)?

As others have noted, we think this is the wrong approach for Linux
systems that have proper package management.  If you are unhappy that
your distribution doesn't provide updated packages for Octave, then it
seems the proper thing to do is create them.

As others have also said, for systems like Windows that don't have
proper package management systems, there is really no other alternative.
  But it's far from ideal, because then every application bundles
dependencies.

Even so, I extended mxe-octave to allow native builds of Octave and all
dependencies on Linux systems because a paying customer wanted what you
want: a more or less self-contained binary distribution on systems that
did not have the necessary dependencies.  But there are many problems in
trying to do this.  So far, I've only managed to build a package like
that for particular systems, not one that will run on any system.  The
client originally had RHEL 5 and SuSE 10 systems, now they have RHEL 6
and SuSE 11, so I build for those.  If you are interested, I could help
you do the same for the systems you use.  Or maybe we could work more
toward a "universal binary" that would work on any system.  Contact me
privately and we can discuss it further.

In any case, I'm not interested in doing that work as a volunteer, nor
am I interested in distributing such a package officially from the
Octave ftp site.

Currently, when building for Linux systems, mxe-octave builds nearly all
dependencies except for the C library, OpenGL libraries and most X11
libraries.  At one point I tried to build X11 and OpenGL libraries, but
gave up when I realized that building OpenGL libraries was pointless if
people were using the proprietary nvidia drivers and the nvidia OpenGL
library.

I think the better thing to do might be a docker instance, but then I
think you can just end up installing another OS inside the one you are
already running, which seems pretty silly.  And that doesn't solve all
problems for older systems anyway, because as I understand it, docker
requires a sufficiently new kernel.

jwe


_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Nir Krakauer-3
Linuxbrew offers another possible option for installing Octave 4.2 in different Linux environments: http://wiki.octave.org/Octave_for_Debian_systems#Linuxbrew

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

Sergei Steshenko
In reply to this post by Mike Miller-4





________________________________
From: Mike Miller <[hidden email]>
To: [hidden email]
Sent: Friday, April 14, 2017 6:12 PM
Subject: Re: Octave 4.2 binary + all packages in Linux ?


On Fri, Apr 14, 2017 at 00:02:12 -0700, roland65 wrote:
> As a long time Linux user (more than 20 years), I'm a bit disapointed to see
> that something easy in Windows is so difficult to do on Linux...

I'm disappointed that's the way you interpreted my answers.

Building the Octave installer for Windows has been an extremely
difficult project from what I have followed, and continues to be an
ongoing effort to maintain and improve it. The fact that it is easy for
someone to download and install it on their system depends on many
uncounted hours of effort by many volunteers.

If someone wanted to adapt this project to make an all-in-one installer
for GNU/Linux, it would probably be easier than it has been for Windows.

If you want to try adapting this project to make such a build of Octave,
please go ahead. You might start with http://wiki.octave.org/MXE and
http://hg.octave.org/mxe-octave.

The only reason one is easier than the other, for you, is because the
maintainers decided it is necessary for Windows but not for GNU/Linux,
because distributions are already doing their job.

--
mike


_______________________________________________




"If someone wanted to adapt this project to make an all-in-one installer

for GNU/Linux, it would probably be easier than it has been for Windows" - I did it for myself several years ago. But this also means building (almost) all the dependencies from scratch.


I also proposed to spec Octave packaging - IMO is (was ?) completely broken. I mean first of all conceptually. I also offered my half-fixed version of 'pkg.m', but it was rejected.

The half-fixed version, for example, took care of intermingled STDOUT and STDERR output during package compilation.


I do not how the things are today - I'm still running self-built 3.6.4.

--Sergei.

_______________________________________________
Help-octave mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/help-octave
Reply | Threaded
Open this post in threaded view
|

Re: Octave 4.2 binary + all packages in Linux ?

roland65
In reply to this post by Mike Miller-4
Mike Miller-4 wrote
The only reason one is easier than the other, for you, is because the
maintainers decided it is necessary for Windows but not for GNU/Linux,
because distributions are already doing their job.
Of course, I understand that developers have done a hard work to provide these binaries on Windows.

But I think that we should have the same thing on Linux, because I see that the packages offered by the distributions are often (by far) outdated.

Actually, to get Octave 4.2.1 on Ubuntu, I had to compile it myself and also to compile (and patch!) a number of packages. A long and tedious work, that can only benefit to Ubuntu users and not to Fedora or OpenSuse users...

I don't think the standard Linux user can do this and then he would have to wait monthes or years to get the new version with bug fixes.

So, *if it is feasible*, I ask to Octave developers to try (I understand it's difficult) to deliver a distro independent binary with all packages.

For example, the Scilab developers deliver such a binary package (for Windows, Linux and Mac) and I never had a problem to install and run it under various Linux distributions.

Perhaps, could it be done using the new snap or flatpack package systems, that are supported by many distribution now?

To clarify my position: I'm a developer myself (Xfe, TexMaths) and I know the difficulties of delivering binaries to end users in the Linux world.

Of course, for a little application like a file manager or an editor there is usually no problem distributing it as an rpm or deb package. This is not the same with a big complex application like Octave, that is used by end users but also by universities and companies...

This is not criticism of the developers work, just an idea to facilitate up to date Octave installation on Linux.

12