Octave on Android

classic Classic list List threaded Threaded
61 messages Options
1234
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

Thomas Treichl
 > Thomas,

>
> Was your issue that you could not find the source code and didn't
> realize, as a user, you could make a request for it?  Or did you think
> that charging for GPL licensed programs is not allowed (but actually
> is)?  Trust me, I have struggled over this.  With the various projects I
> have, I actually have a lot of users and get contacted a lot and am
> continuously improving my apps (the number of hours I have for this is
> small, so this may not be obvious).  I expected that others would want
> to contribute time/skill, but I don't get emails about that.  I get
> emails about bugs, feature requests and how to do a particular thing.  I
> also get effectively love letter and hate mail.  I didn't charge for a
> long time, but I now believe (knowing myself) that I will provide a
> better product with some small incentive.  I have made that payment
> requirement have very minimal impact on the users and I have made the
> source code available so it can be modified.  If you know a little
> something about Android and my source code, the payment can be bypassed
> in a couple of ways that doesn't even require source code modification
> (nothing illegal, just the right file in the right place).  Can we tone
> this down a bit?  Can you drop your complaint to Google until you are
> sure there is a valid complaint to be made?
>
> Thanks everyone,
> Corbin

Dear Corbin,

   you must know that I'm the very last person who won't come to an
happy end here. Once again, I'm not talking about GNU Octave Core, the
Core Developers can speak for themselves, I'm talking about OdePkg 0.8.2.

   I'm not very fast in answering emails and meanwhile a lot of people
already have replied, but let's turn time back a few hours to explain my
point of view this morning:

- Doing a quick
     find . -iname ode23.m
   on my tab gave as a result: surprisingly nothing.

- Doing a quick
     grep -re "ode23" *
   on my tab gave as a result: <whereever>/lib__file5.so

I thought: *hm* binary. Next I got the answer from you:

- You wrote:" require donation" and I thought: definitely not and
"especially not" if distributed in binary form.

- You wrote:" at least $1" and I thought: not even 1c.

Next I've taken a look at your repo: no OdePkg modifications found *hm*
after that my answer followed.

Now, what I want you to do is:

- Please make all the necessary modifications and scripts available that
are needed to build OdePkg 0.8.2 as pushed as a package to Google's Play
Store. I want to have a look at all the codes.

- make a binary package of OdePkg or of GNU Octave that doesn't "require
donation" to run OdePkg, modify the website at Google Play Store that
clearly does not say "Currently, only functions if you have made a
donation." but tells people about "Free as in Freedom".

- make a donation to the Core Octave Development team here
     http://www.gnu.org/software/octave/donate.html
   about any amount that you think honours OdePkg 0.8.2 from the amount
that you've gotten AND really do it!

Best Regards

   Thomas

PS. About that Google ticket: I can't stop that tank at the moment but
once I get contacted I'll tell them that we're in a friendly solving way
right here on the list - maybe you should do the same.
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

c.-2
In reply to this post by John Swensen-3

On 22 Oct 2013, at 19:31, John Swensen <[hidden email]> wrote:

> c.,
> This is actually the easier part (assuming you have installed the Android SDK with the cross compilation tools). I have built a lot of GPL libraries/programs that use autotool for iOS and it is as simple as running the configure script pointing to the cross-compiler toolchain.
> And example of a script that does this can be found at https://gist.github.com/nddrylliog/4688209

John, thanks for the example!
Yet, I think when all dependencies are considered the script for Octave
will become much more involved, so I'd really appreciate if Corbin could share this ...
c.
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
In reply to this post by Thomas Treichl
On Tue, Oct 22, 2013 at 11:37 AM, Thomas Treichl <[hidden email]> wrote:
> Thomas,

Was your issue that you could not find the source code and didn't
realize, as a user, you could make a request for it?  Or did you think
that charging for GPL licensed programs is not allowed (but actually
is)?  Trust me, I have struggled over this.  With the various projects I
have, I actually have a lot of users and get contacted a lot and am
continuously improving my apps (the number of hours I have for this is
small, so this may not be obvious).  I expected that others would want
to contribute time/skill, but I don't get emails about that.  I get
emails about bugs, feature requests and how to do a particular thing.  I
also get effectively love letter and hate mail.  I didn't charge for a
long time, but I now believe (knowing myself) that I will provide a
better product with some small incentive.  I have made that payment
requirement have very minimal impact on the users and I have made the
source code available so it can be modified.  If you know a little
something about Android and my source code, the payment can be bypassed
in a couple of ways that doesn't even require source code modification
(nothing illegal, just the right file in the right place).  Can we tone
this down a bit?  Can you drop your complaint to Google until you are
sure there is a valid complaint to be made?

Thanks everyone,
Corbin

Dear Corbin,

  you must know that I'm the very last person who won't come to an
happy end here. Once again, I'm not talking about GNU Octave Core, the
Core Developers can speak for themselves, I'm talking about OdePkg 0.8.2.

  I'm not very fast in answering emails and meanwhile a lot of people
already have replied, but let's turn time back a few hours to explain my point of view this morning:

- Doing a quick
    find . -iname ode23.m
  on my tab gave as a result: surprisingly nothing.

- Doing a quick
    grep -re "ode23" *
  on my tab gave as a result: <whereever>/lib__file5.so

I thought: *hm* binary. Next I got the answer from you:

- You wrote:" require donation" and I thought: definitely not and "especially not" if distributed in binary form.

- You wrote:" at least $1" and I thought: not even 1c.


Next I've taken a look at your repo: no OdePkg modifications found *hm*
after that my answer followed.

Now, what I want you to do is:

- Please make all the necessary modifications and scripts available that are needed to build OdePkg 0.8.2 as pushed as a package to Google's Play Store. I want to have a look at all the codes.

- make a binary package of OdePkg or of GNU Octave that doesn't "require donation" to run OdePkg, modify the website at Google Play Store that clearly does not say "Currently, only functions if you have made a donation." but tells people about "Free as in Freedom".


- make a donation to the Core Octave Development team here
    http://www.gnu.org/software/octave/donate.html
  about any amount that you think honours OdePkg 0.8.2 from the amount
that you've gotten AND really do it!

Best Regards

  Thomas

PS. About that Google ticket: I can't stop that tank at the moment but
once I get contacted I'll tell them that we're in a friendly solving way right here on the list - maybe you should do the same.

Thomas,

1) Despite the file being named lib_* it is not a lib file.  This is a simple renaming.  Android requires that anything I put in the lib directory is named lib*.so .  Putting the files in the lib directory was a choice that I made.  There are a few alternatives.  This will actually be changing soon and this will be easier for others to understand as a result. 

2) Whether we are talking about the ODEPkg or Octave, they are both under the GPL license.  They both allow me to charge for them.  Maybe this is not what you wanted, but it is written in the terms of the license. 

3) The ODE package is in my github repository as mentioned.  You can look at the commit history or just look here:
https://github.com/corbinlc/octave4android/tree/master/octave/octaveODE

I will try make sure that everything necessary to build this is available.  I think I am REALLY close.  About your other demands, I don't think you get to make any other demands of me, or I don't have to listen to demands of me, beyond satisfying the license.  I have explained my reasoning.  I have also have not had anyone give me an example of how I have violated the GPL.  I am providing the code upon request.   

Thanks,
Corbin


Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
In reply to this post by John Swensen-3
On Tue, Oct 22, 2013 at 10:31 AM, John Swensen <[hidden email]> wrote:



On Tue, Oct 22, 2013 at 1:17 PM, c. <[hidden email]> wrote:

On 22 Oct 2013, at 18:51, Corbin Champion <[hidden email]> wrote:

> Carlo Defalco,
>
> Please see my latest email.  Please also understand Thomas made no request for the source code.  I thought he was complaining about that there is a fee.  I am in no way hiding my code, though I agree it wasn't all up there, something I can easily fix.  I have and will freely provided it to anyone who has asked (so no GPL violation, it is only a violation if I don't provide it to users who make a request for it).  I am also in no way obscuring anything.
> I did what was necessary to fit a standard GNU/Linux program into an Android app.

I appreciate your open and collaborative attitude, I think there has just been a slight misunderstanding

The misunderstanding, I believe, is about what is intended by source code.

The GPLv3 license says:

  The “Corresponding Source” for a work in object code form means all the source code needed to generate,
  install, and (for an executable work) run the object code and to modify the work, including scripts to
  control those activities.

What I am interested in are the scripts required to generate and install binaries of Octave and odepkg for Android.
As far as I can understand the code in github only covers the installation part not building, am I correct?

If so, I'd like to ask you to share those scripts, if I am mistaken and you have already made those scripts available
I'd appreciate that you point me to those scripts.

>  It took some doing.  Please do try to build it and tell me what is missing.

Thank you very much.

> Corbin
c.

c.,
This is actually the easier part (assuming you have installed the Android SDK with the cross compilation tools). I have built a lot of GPL libraries/programs that use autotool for iOS and it is as simple as running the configure script pointing to the cross-compiler toolchain.
And example of a script that does this can be found at https://gist.github.com/nddrylliog/4688209

Corbin,
Thanks for your replies, it clarified a lot. The one thing I am still confused about after looking through the Eclipse project files is how you go from the cross-compiled toolchain and packages to the .so files in the libs directory. I see the various project and manifest files, but none of them seem to point to an octave build tree or the octave-forge package directories. A little more clarification along these lines would be awesome. Thanks.

John Swensen

This is the last interesting piece that I can think of right now.  It does the renaming.  I will put it on github later.  I will document my flow next time I build and communicate that on the github repository.
Thanks,
Corbin
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

c.-2
In reply to this post by c.-2

On 22 Oct 2013, at 21:21, Corbin Champion <[hidden email]> wrote:

> On Tue, Oct 22, 2013 at 11:50 AM, c. <[hidden email]> wrote:
>
> On 22 Oct 2013, at 19:31, John Swensen <[hidden email]> wrote:
>
> > c.,
> > This is actually the easier part (assuming you have installed the Android SDK with the cross compilation tools). I have built a lot of GPL libraries/programs that use autotool for iOS and it is as simple as running the configure script pointing to the cross-compiler toolchain.
> > And example of a script that does this can be found at https://gist.github.com/nddrylliog/4688209
>
> John, thanks for the example!
> Yet, I think when all dependencies are considered the script for Octave
> will become much more involved, so I'd really appreciate if Corbin could share this ...
> c.
>
> Carlo,
>
> Octave is built in a normal (cross compiled fashion).  It uses the normal configure; make; make install flow.  The dependencies are the same as a normal build of Octave and can be obtained from the normal places.  I am not re-documenting how to build octave or the octave-forge packages.  It is already well documented.  Similarly, I am also not documenting how to download eclipse, the Android SDK and build an Android application.  I am not doing any special in these regards and did not develop any scripts to perform these pieces.  As far as the java front end, it is on github.  There is one more piece which is the converting of the files to lib_*.so names.  I will provide that very soon.  Once that is provided, I think it will be all out there (also need to push other packages).  In the future, I will try to wrap everything possible in a script so it is easier.  I will at least explain the flow next time I go through it.  I really have never had anyone interested in building it from scratch before, so I am not well setup for others, but will fix that.
>
> Thanks,
> Corbin

Corbin,

Thanks for this explanation. I'm sure your setup procedure
is no more then a set configure, make, make install instructions
which perform cross-compilation. Still I'd really like you to share
those scripts.

Thanks,
Carlo
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

John Swensen-3
In reply to this post by corbinlc



On Tue, Oct 22, 2013 at 3:29 PM, Corbin Champion <[hidden email]> wrote:
On Tue, Oct 22, 2013 at 10:31 AM, John Swensen <[hidden email]> wrote:



On Tue, Oct 22, 2013 at 1:17 PM, c. <[hidden email]> wrote:

On 22 Oct 2013, at 18:51, Corbin Champion <[hidden email]> wrote:

> Carlo Defalco,
>
> Please see my latest email.  Please also understand Thomas made no request for the source code.  I thought he was complaining about that there is a fee.  I am in no way hiding my code, though I agree it wasn't all up there, something I can easily fix.  I have and will freely provided it to anyone who has asked (so no GPL violation, it is only a violation if I don't provide it to users who make a request for it).  I am also in no way obscuring anything.
> I did what was necessary to fit a standard GNU/Linux program into an Android app.

I appreciate your open and collaborative attitude, I think there has just been a slight misunderstanding

The misunderstanding, I believe, is about what is intended by source code.

The GPLv3 license says:

  The “Corresponding Source” for a work in object code form means all the source code needed to generate,
  install, and (for an executable work) run the object code and to modify the work, including scripts to
  control those activities.

What I am interested in are the scripts required to generate and install binaries of Octave and odepkg for Android.
As far as I can understand the code in github only covers the installation part not building, am I correct?

If so, I'd like to ask you to share those scripts, if I am mistaken and you have already made those scripts available
I'd appreciate that you point me to those scripts.

>  It took some doing.  Please do try to build it and tell me what is missing.

Thank you very much.

> Corbin
c.

c.,
This is actually the easier part (assuming you have installed the Android SDK with the cross compilation tools). I have built a lot of GPL libraries/programs that use autotool for iOS and it is as simple as running the configure script pointing to the cross-compiler toolchain.
And example of a script that does this can be found at https://gist.github.com/nddrylliog/4688209

Corbin,
Thanks for your replies, it clarified a lot. The one thing I am still confused about after looking through the Eclipse project files is how you go from the cross-compiled toolchain and packages to the .so files in the libs directory. I see the various project and manifest files, but none of them seem to point to an octave build tree or the octave-forge package directories. A little more clarification along these lines would be awesome. Thanks.

John Swensen

This is the last interesting piece that I can think of right now.  It does the renaming.  I will put it on github later.  I will document my flow next time I build and communicate that on the github repository.
Thanks,
Corbin


Corbin,
This was the last piece that I wasn't able to reproduce. I believe that with the information on Github and the information from this thread that with enough time I could muddle my way through building everything (the hardest remaining piece being the process of getting all the build dependencies cross compiled, though maybe the MXE build system that others have been working on could make that much easier also). I was able to build from the Android Eclipse dev environment, but was still wondering how you actually generated all the .so files from the cross-compiled octave build.

Thanks.

John Swensen

Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
On Tue, Oct 22, 2013 at 12:52 PM, John Swensen <[hidden email]> wrote:



On Tue, Oct 22, 2013 at 3:29 PM, Corbin Champion <[hidden email]> wrote:
On Tue, Oct 22, 2013 at 10:31 AM, John Swensen <[hidden email]> wrote:



On Tue, Oct 22, 2013 at 1:17 PM, c. <[hidden email]> wrote:

On 22 Oct 2013, at 18:51, Corbin Champion <[hidden email]> wrote:

> Carlo Defalco,
>
> Please see my latest email.  Please also understand Thomas made no request for the source code.  I thought he was complaining about that there is a fee.  I am in no way hiding my code, though I agree it wasn't all up there, something I can easily fix.  I have and will freely provided it to anyone who has asked (so no GPL violation, it is only a violation if I don't provide it to users who make a request for it).  I am also in no way obscuring anything.
> I did what was necessary to fit a standard GNU/Linux program into an Android app.

I appreciate your open and collaborative attitude, I think there has just been a slight misunderstanding

The misunderstanding, I believe, is about what is intended by source code.

The GPLv3 license says:

  The “Corresponding Source” for a work in object code form means all the source code needed to generate,
  install, and (for an executable work) run the object code and to modify the work, including scripts to
  control those activities.

What I am interested in are the scripts required to generate and install binaries of Octave and odepkg for Android.
As far as I can understand the code in github only covers the installation part not building, am I correct?

If so, I'd like to ask you to share those scripts, if I am mistaken and you have already made those scripts available
I'd appreciate that you point me to those scripts.

>  It took some doing.  Please do try to build it and tell me what is missing.

Thank you very much.

> Corbin
c.

c.,
This is actually the easier part (assuming you have installed the Android SDK with the cross compilation tools). I have built a lot of GPL libraries/programs that use autotool for iOS and it is as simple as running the configure script pointing to the cross-compiler toolchain.
And example of a script that does this can be found at https://gist.github.com/nddrylliog/4688209

Corbin,
Thanks for your replies, it clarified a lot. The one thing I am still confused about after looking through the Eclipse project files is how you go from the cross-compiled toolchain and packages to the .so files in the libs directory. I see the various project and manifest files, but none of them seem to point to an octave build tree or the octave-forge package directories. A little more clarification along these lines would be awesome. Thanks.

John Swensen

This is the last interesting piece that I can think of right now.  It does the renaming.  I will put it on github later.  I will document my flow next time I build and communicate that on the github repository.
Thanks,
Corbin


Corbin,
This was the last piece that I wasn't able to reproduce. I believe that with the information on Github and the information from this thread that with enough time I could muddle my way through building everything (the hardest remaining piece being the process of getting all the build dependencies cross compiled, though maybe the MXE build system that others have been working on could make that much easier also). I was able to build from the Android Eclipse dev environment, but was still wondering how you actually generated all the .so files from the cross-compiled octave build.

Thanks.

John Swensen


My new favorite way to do the remaining piece is to cross debootstrap an armel rootfs and then launch into it using qemu-arm-static.  It will run slower, but if you need anything, you can just apt-get it.  Also, creating your on cross compiler can be problematic.  So, you really won't be cross compiling in this method.  You will be emulating that you are on an armel machine and compiling within that environment.  I think it is a better way than building up from scratch.

Corbin
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

c.-2
In reply to this post by c.-2

On 22 Oct 2013, at 21:40, c. <[hidden email]> wrote:

> Corbin,
>
> Thanks for this explanation. I'm sure your setup procedure
> is no more then a set configure, make, make install instructions
> which perform cross-compilation. Still I'd really like you to share
> those scripts.
>
> Thanks,
> Carlo

As an example, here is the script that Thomas used to produce Mac OSX binaries at the time of his very sucessful Octave-3.2.app distribution:

http://sourceforge.net/p/octave/code/HEAD/tree/trunk/octave-forge/admin/MacOSX/Octave.app/create-3.2.3.sh

That is indeed no more than just a long series of download/configure/build/install instructions, yet we did appreciate him sharing it ...

c.

Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

John W. Eaton
Administrator
In reply to this post by corbinlc
Could we all please take a deep breath and not escalate things here?

As far as I can tell, Corbin is attempting to comply with the GPL and
is actually doing more than is required.  Before accusing him of
intentionally breaking the license, let's assume that he will fix any
problems if he is made aware of them.

The GPL definitely allows binaries to be distributed only to customers
who pay.  I don't see any significant difference between that and
allowing the binaries to work only if they have been paid for, though
whether this is allowed or not depends on the mechanism used to
prevent the binaries from working.  In any case, I would just
recommend to Corbin that he simply limit distribution to those who
have paid, if that is what he wants to do.  He is under no obligation
to distribute binaries free of charge.

In the context of this discussion, his obligations are:

   * Provide *to the people who have paid for the binaries* the exact
     sources and build system that he used for the binary version that
     he is distributing.  He is not required to provide sources to
     everyone who asks.

   * Allow anyone who receives a copy to redistribute it under the same
     terms (the GPL).  So it is perfectly acceptable for someone to
     take Corbin's binaries and redistribute them, provided that they
     also comply with the terms of the GPL.  If the disabled binaries
     can't be redistributed without the restriction on paying, then
     that is possibly in conflict with the GPL.

Finally, Corbin has clearly done a lot of work on building Octave for
Android.  I don't think there is anything wrong with him getting some
money for that effort.  Similarly, the people who wrote Octave and
various packages have also done a lot of work and some would also like
to receive compensation.  It would be great if Corbin shared something
with the other people who have made Octave on Android possible, but he
is under no legal obligation to do so.

FWIW, this kind of issue has come up for me in the past with the
Octave manual.  One person who has sold it did contribute a (very
small) portion of each sale but others have not.

jwe
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

John Swensen-3
In reply to this post by c.-2
On Tue, Oct 22, 2013 at 3:58 PM, c. <[hidden email]> wrote:

On 22 Oct 2013, at 21:40, c. <[hidden email]> wrote:

> Corbin,
>
> Thanks for this explanation. I'm sure your setup procedure
> is no more then a set configure, make, make install instructions
> which perform cross-compilation. Still I'd really like you to share
> those scripts.
>
> Thanks,
> Carlo

As an example, here is the script that Thomas used to produce Mac OSX binaries at the time of his very sucessful Octave-3.2.app distribution:

http://sourceforge.net/p/octave/code/HEAD/tree/trunk/octave-forge/admin/MacOSX/Octave.app/create-3.2.3.sh

That is indeed no more than just a long series of download/configure/build/install instructions, yet we did appreciate him sharing it ...

c.


c.,
From his most recent email, it looks like he just set up a debian-arm-android installation in a virtual machine and compiled using the debian source packages (Corbin is this about right)? That way he didn't have to do any extra work like the script from Thomas because debian had already done it for him.

John
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

John W. Eaton
Administrator
In reply to this post by c.-2
On 10/22/2013 03:58 PM, c. wrote:

> As an example, here is the script that Thomas used to produce Mac OSX binaries at the time of his very sucessful Octave-3.2.app distribution:
>
> http://sourceforge.net/p/octave/code/HEAD/tree/trunk/octave-forge/admin/MacOSX/Octave.app/create-3.2.3.sh
>
> That is indeed no more than just a long series of download/configure/build/install instructions, yet we did appreciate him sharing it ...

Even though a shell script like that includes URLs for the source
packages and a set of instructions for building, it does not
necessarily satisfy the source distribution requirement of the GPL if
the targets of those links are not under the control of the person
distributing the binary.  It is very likely that they will eventually
quit working and it is also possible that the target file could change
from what was used to build the binary even if the name of the file
does not change.  The person distributing the binaries must be able to
ensure that those files remain available and that they are the
corresponding source for the binary that is distributed.

AFAIK, this requirement of the GPL has not been met for the Windows
binaries that have been distributed from the Octave Forge site.

jwe
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

Michael Goffioul
On Tue, Oct 22, 2013 at 4:21 PM, John W. Eaton <[hidden email]> wrote:
On 10/22/2013 03:58 PM, c. wrote:

As an example, here is the script that Thomas used to produce Mac OSX binaries at the time of his very sucessful Octave-3.2.app distribution:

http://sourceforge.net/p/octave/code/HEAD/tree/trunk/octave-forge/admin/MacOSX/Octave.app/create-3.2.3.sh

That is indeed no more than just a long series of download/configure/build/install instructions, yet we did appreciate him sharing it ...

Even though a shell script like that includes URLs for the source
packages and a set of instructions for building, it does not
necessarily satisfy the source distribution requirement of the GPL if
the targets of those links are not under the control of the person
distributing the binary.  It is very likely that they will eventually
quit working and it is also possible that the target file could change
from what was used to build the binary even if the name of the file
does not change.  The person distributing the binaries must be able to
ensure that those files remain available and that they are the corresponding source for the binary that is distributed.

AFAIK, this requirement of the GPL has not been met for the Windows
binaries that have been distributed from the Octave Forge site.

It's probably safer to remove all those binaries from Octave Forge site.

Michael.

Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
In reply to this post by John W. Eaton
On Tue, Oct 22, 2013 at 1:01 PM, John W. Eaton <[hidden email]> wrote:
Could we all please take a deep breath and not escalate things here?

As far as I can tell, Corbin is attempting to comply with the GPL and
is actually doing more than is required.  Before accusing him of
intentionally breaking the license, let's assume that he will fix any
problems if he is made aware of them.

The GPL definitely allows binaries to be distributed only to customers
who pay.  I don't see any significant difference between that and
allowing the binaries to work only if they have been paid for, though
whether this is allowed or not depends on the mechanism used to
prevent the binaries from working.  In any case, I would just
recommend to Corbin that he simply limit distribution to those who
have paid, if that is what he wants to do.  He is under no obligation
to distribute binaries free of charge.

In the context of this discussion, his obligations are:

  * Provide *to the people who have paid for the binaries* the exact
    sources and build system that he used for the binary version that
    he is distributing.  He is not required to provide sources to
    everyone who asks.

  * Allow anyone who receives a copy to redistribute it under the same
    terms (the GPL).  So it is perfectly acceptable for someone to
    take Corbin's binaries and redistribute them, provided that they
    also comply with the terms of the GPL.  If the disabled binaries
    can't be redistributed without the restriction on paying, then
    that is possibly in conflict with the GPL.

Finally, Corbin has clearly done a lot of work on building Octave for
Android.  I don't think there is anything wrong with him getting some
money for that effort.  Similarly, the people who wrote Octave and
various packages have also done a lot of work and some would also like
to receive compensation.  It would be great if Corbin shared something
with the other people who have made Octave on Android possible, but he
is under no legal obligation to do so.

FWIW, this kind of issue has come up for me in the past with the
Octave manual.  One person who has sold it did contribute a (very
small) portion of each sale but others have not.

jwe

JWE,

Thanks for some perspective.  I really am trying.  Tonight, I pushed all the packages related to Octave to the github repository (asked for or not).  I also pushed that one build script there.  There is more that I can do.  If no one is in a huge rush, I would like to document it all as I go through it again.  I can also post a snapshot of all the unmodified code, the next time through, so people can get exactly what I used. 

Thanks,
Corbin  
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

John Swensen-3
On Wed, Oct 23, 2013 at 1:13 AM, Corbin Champion <[hidden email]> wrote:
On Tue, Oct 22, 2013 at 1:01 PM, John W. Eaton <[hidden email]> wrote:
Could we all please take a deep breath and not escalate things here?

As far as I can tell, Corbin is attempting to comply with the GPL and
is actually doing more than is required.  Before accusing him of
intentionally breaking the license, let's assume that he will fix any
problems if he is made aware of them.

The GPL definitely allows binaries to be distributed only to customers
who pay.  I don't see any significant difference between that and
allowing the binaries to work only if they have been paid for, though
whether this is allowed or not depends on the mechanism used to
prevent the binaries from working.  In any case, I would just
recommend to Corbin that he simply limit distribution to those who
have paid, if that is what he wants to do.  He is under no obligation
to distribute binaries free of charge.

In the context of this discussion, his obligations are:

  * Provide *to the people who have paid for the binaries* the exact
    sources and build system that he used for the binary version that
    he is distributing.  He is not required to provide sources to
    everyone who asks.

  * Allow anyone who receives a copy to redistribute it under the same
    terms (the GPL).  So it is perfectly acceptable for someone to
    take Corbin's binaries and redistribute them, provided that they
    also comply with the terms of the GPL.  If the disabled binaries
    can't be redistributed without the restriction on paying, then
    that is possibly in conflict with the GPL.

Finally, Corbin has clearly done a lot of work on building Octave for
Android.  I don't think there is anything wrong with him getting some
money for that effort.  Similarly, the people who wrote Octave and
various packages have also done a lot of work and some would also like
to receive compensation.  It would be great if Corbin shared something
with the other people who have made Octave on Android possible, but he
is under no legal obligation to do so.

FWIW, this kind of issue has come up for me in the past with the
Octave manual.  One person who has sold it did contribute a (very
small) portion of each sale but others have not.

jwe

JWE,

Thanks for some perspective.  I really am trying.  Tonight, I pushed all the packages related to Octave to the github repository (asked for or not).  I also pushed that one build script there.  There is more that I can do.  If no one is in a huge rush, I would like to document it all as I go through it again.  I can also post a snapshot of all the unmodified code, the next time through, so people can get exactly what I used. 

Thanks,
Corbin  

FWIW, despite now being able to build everything from scratch, I have zero intentions of undercutting you and publishing a donation-free version. I really appreciate you taking the time yesterday to fill in the gaps in our information about how to complete the whole build process, and have no problems with someone asking for a donation to help support an awesome project. It just makes it easier to hack on it later if I want to. For example, I think it would be great to add DropBox of GoogleDrive support to allow running scripts from off of Google Drive (maybe the Android Octave app can already access the Google Drive filesystem?)

I hope you don't think there was too much animosity (though there appeared to be a little bit of it). I think most of us just wanted more details and are grateful for you help.

John 


Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

c.-2

On 23 Oct 2013, at 14:12, John Swensen <[hidden email]> wrote:

> FWIW, despite now being able to build everything from scratch, I have zero intentions of undercutting you and publishing a donation-free version.

Agreed, if all required information is provided and it is indeed possible to build everything from sources
I don't see a problem in asking for donations.

I don't plan to distribute a donation free version any time soon either but I definitely want to try build
the app myself when I have time, so whatever documentation you'll provide will be very welcome.

c.
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
On Wed, Oct 23, 2013 at 5:52 AM, c. <[hidden email]> wrote:

On 23 Oct 2013, at 14:12, John Swensen <[hidden email]> wrote:

> FWIW, despite now being able to build everything from scratch, I have zero intentions of undercutting you and publishing a donation-free version.

Agreed, if all required information is provided and it is indeed possible to build everything from sources
I don't see a problem in asking for donations.

I don't plan to distribute a donation free version any time soon either but I definitely want to try build
the app myself when I have time, so whatever documentation you'll provide will be very welcome.

c.

Thomas,

I am happy to inform you that the package you created under the GPLv2, will no longer be provided to Android users (at least for now).  Your misguided embrace of our increasingly legalistic world has made it so the very work you created will be used by fewer people.

> Text copy of DMCA complaint: 

> subject_lr_dmca: Ihre Anfrage an Google 

> full_name: Thomas Treichl 

> companyname: - 

> represented_copyright_holder: Thomas Treichl 

> contact_email_noprefill: [hidden email] 

> country_residence: DE 

> location_of_copyrighted_work: http://octave.sourceforge.net/odepkg/ 

> description_of_copyrighted_work: OdePkg ist ein Paket für GNU Octave zum 

> Lösen von Differentialgleichungen. Ich habe die Quellen unter der GNU GPL 

> lizensiert. OdePkg wird jetzt auf dem Play Store vertrieben mit dem 

> Hinweis: "Currently, only functions if you have made a donation." Das 

> bedeutet für mich: Ich "muss" dafür bezahlen, dass es funktioniert. Aus 

> diesem Grund habe ich OdePkg nicht geschrieben, dass ich jetzt auf dem Play 

> Store kaufen muss. Eine Absprache des Veröffentlichers auf Play Store mit 

> mir hat nicht statt gefunden. 

> hidden_category: 

> android_app_url: 

> https://play.google.com/store/apps/details?id=com.octave.ode&hl=de 

> dmca_affirmations_authorized: agree 

> dmca_affirmations_penalty: agree1 

> signature_date: 22.10.2013 

> signature: Thomas Treichl 

> hidden_product: googleplay 

> hidden_ctx: 

> geolocation: DE


I think it is agreed that the GPL was not violated and that you should have just requested the source code in question.  If you have any further requests for source code, anything missing, please send them to me.  I wish you would have done this in the first place.  Filing inaccurate DCMA complaints does not help anyone.  I used to think of the body of people working on Free Software as a brotherhood working for the greater good of the user and the world, but after various encounters with zealots who miss the point, I am not sure.  I have people from the GNU foundation telling me how to read word this or that and I have Landley and others encouraging me to not use the GPL license in the future, except where obsoletely necessary.  Both groups seem to have a lot of time to critique/advise.  I, instead, prefer to spend my very finite time creating, supporting etc. 

Regardless, a new version of Octave is coming for Android in the near future and I have another Android app that will be useful to many
https://play.google.com/store/apps/details?id=champion.gnuroot
Btw... you can
apt-get install octave
using this or whatever you want.  Still working through bugs, but most things work.  You can see the list of goals at the bottom of the description. 

Thanks,
Corbin
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

Jordi Gutiérrez Hermoso-2
On Thu, 2013-10-31 at 11:18 -0700, Corbin Champion wrote:

> I used to think of the body of people working on Free Software as a
> brotherhood working for the greater good of the user and the world,
> but after various encounters with zealots who miss the point, I am
> not sure.

I am sorry that this happened, but it's really just a
misunderstanding. I don't know if Thomas can withdraw his DMCA
takedown, but recall that he first sent the DMCA takedown, then while
that was going through, talked with you and us on the mailing list and then
decided that there was no violation at all. While this was happening,
his original DMCA claim was being processed and ultimately your work
was removed.

It should not have happened this way. Is it still possible to make
amends? I for one am very grateful for your work and still encourage
you to charge money for it.

> I have people from the GNU foundation telling me how to read word
> this or that and I have Landley and others encouraging me to not use
> the GPL license in the future, except where obsoletely necessary.

Please don't blame the GPL for this misunderstanding. It is a very
important and useful license in other situations, such as, for
example, if you had genuinely been doing this without distributing
source code and if you had been antagonistic to Octave. Please don't
feel burned by this experience. Your work was mistakenly identified as
infringing on the GPL, when it was not. This is all that happened.

On behalf of zealots everywhere, I apologise.

- Jordi G. H.


Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

Michael Godfrey
On 10/31/2013 05:26 PM, Jordi Gutiérrez Hermoso wrote:
On Thu, 2013-10-31 at 11:18 -0700, Corbin Champion wrote:

> I used to think of the body of people working on Free Software as a
> brotherhood working for the greater good of the user and the world,
> but after various encounters with zealots who miss the point, I am
> not sure.
I am sorry that this happened, but it's really just a
misunderstanding. I don't know if Thomas can withdraw his DMCA
takedown, but recall that he first sent the DMCA takedown, then while
that was going through, talked with you and us on the mailing list and then
decided that there was no violation at all. While this was happening,
his original DMCA claim was being processed and ultimately your work
was removed.

It should not have happened this way. Is it still possible to make
amends? I for one am very grateful for your work and still encourage
you to charge money for it.

> I have people from the GNU foundation telling me how to read word
> this or that and I have Landley and others encouraging me to not use
> the GPL license in the future, except where obsoletely necessary.
Please don't blame the GPL for this misunderstanding. It is a very
important and useful license in other situations, such as, for
example, if you had genuinely been doing this without distributing
source code and if you had been antagonistic to Octave. Please don't
feel burned by this experience. Your work was mistakenly identified as
infringing on the GPL, when it was not. This is all that happened.

On behalf of zealots everywhere, I apologise.

- Jordi G. H.


Corbin, Jordi, and all,

Mistakes like this happen.  People get upset and do things that are
not appropriate.  Sometimes, as in this case, they realize they made a
mistake, but the problem that they created is still a problem.

Corbin got it right in saying that he just preferred to do the work.
Let's go with that and put the rest aside.

And, I am impressed that Jordi will apologize for all the zealots...
Even though they are not all zealots, some are just a bit confused.

Anyhow, having Octave on Android is simply GREAT!

Michael

Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

corbinlc
On Thu, Oct 31, 2013 at 3:22 PM, Michael D. Godfrey <[hidden email]> wrote:
On 10/31/2013 05:26 PM, Jordi Gutiérrez Hermoso wrote:
On Thu, 2013-10-31 at 11:18 -0700, Corbin Champion wrote:

> I used to think of the body of people working on Free Software as a
> brotherhood working for the greater good of the user and the world,
> but after various encounters with zealots who miss the point, I am
> not sure.
I am sorry that this happened, but it's really just a
misunderstanding. I don't know if Thomas can withdraw his DMCA
takedown, but recall that he first sent the DMCA takedown, then while
that was going through, talked with you and us on the mailing list and then
decided that there was no violation at all. While this was happening,
his original DMCA claim was being processed and ultimately your work
was removed.

It should not have happened this way. Is it still possible to make
amends? I for one am very grateful for your work and still encourage
you to charge money for it.

> I have people from the GNU foundation telling me how to read word
> this or that and I have Landley and others encouraging me to not use
> the GPL license in the future, except where obsoletely necessary.
Please don't blame the GPL for this misunderstanding. It is a very
important and useful license in other situations, such as, for
example, if you had genuinely been doing this without distributing
source code and if you had been antagonistic to Octave. Please don't
feel burned by this experience. Your work was mistakenly identified as
infringing on the GPL, when it was not. This is all that happened.

On behalf of zealots everywhere, I apologise.

- Jordi G. H.


Corbin, Jordi, and all,

Mistakes like this happen.  People get upset and do things that are
not appropriate.  Sometimes, as in this case, they realize they made a
mistake, but the problem that they created is still a problem.

Corbin got it right in saying that he just preferred to do the work.
Let's go with that and put the rest aside.

And, I am impressed that Jordi will apologize for all the zealots...
Even though they are not all zealots, some are just a bit confused.

Anyhow, having Octave on Android is simply GREAT!

Michael


I agree with the fact that the DMCA complaint was filed before the facts were known, but I really don't know why that was the choice made.  I mainly posted, because I want people to understand (anyone who reads this now or in the future) that there is a better way to go about this.  Just talk to the developer.  Just ask for what you want. 

About amends, I have filed a rebuttal to the app being delisted.  I am not sure what the timeline is for processing it, or whether they will or will not contact Thomas again in that process, or whether they will or will not find things in my favor.  Never been in this rodeo.  I have provided a link to this thread and my source code and other information. 

Appreciate the support.  I am not feeling burned by this specifically, but by a generic behavior.  I forgive Thomas and I hope he forgives me.

Anyway, that is enough drama for this list.

Corbin 
Reply | Threaded
Open this post in threaded view
|

Re: Octave on Android

Jay Belanger
In reply to this post by corbinlc

Corbin Champion <[hidden email]> writes:

> Regardless, a new version of Octave is coming for Android in the near
> future

Fantastic; although the current version is already great.
BTW, when I made a donation to Android Octave, I realized that I should
also make one to core Octave, so I made one (larger than the one I made
to Android) that it might not have occurred to me to make otherwise.

> and I have another Android app that will be useful to many
> https://play.google.com/store/apps/details?id=champion.gnuroot

Well, that look amazing...
1234