GNU Telephony and cross platform development

Cross platform development is always an interesting challenge. Often it can be useful to identify or expose bugs that might be less visible on some platforms, or even on some compilers.

With cross platform development comes some important questions of software freedom. There would be no true software freedom if we said we would permit our software to compile and run only on specific platforms, that is after all what proprietary software vendors often do. However in GNU Telephony we do principally develop and test our software on GNU systems specifically and do not have expertise in or interest in supporting proprietary ones.

If people wish to work on or support other platforms also, they are certainly free to do so. As one of our goals in GNU Telephony is ubiquity, this is essential. However, unlike some groups who choose such goals, or distributions who choose “popularity” as their essential goal, we will never do so if it means also compromising the freedom of our contributors and users. Given this, if people want to submit patches for building and running on other platforms, we are happy to take such patches in, so long as they do not break features or functionality on free software platforms, and do not impose any additional restrictions on how we convey software to others.

For those who do choose to develop on or for Microsoft Windows, and wish to contribute to our packages, we do suggest using the mingw toolchain hosted on Debian GNU/Linux. We have done some preliminary tests with this, and have built things which then do run in wine. This does make it possible to do a complete build and qa test cycle for applications that will run on Microsoft Windows systems using entirely free software tools and platforms, as well as making it easier to avoid traps in undocumented proprietary api’s. We will accept patches and bug fixes from those who do build on proprietary compilers as well, assuming there is no restrictions or breakage to do so, since, as I note different compilers sometimes do expose useful bugs, however our desire is to support development tools and platforms that do support and encourage software freedom.

Software freedom and complete free software platforms is our projects essential goal, for without it, there is no possibility for communication privacy or security. This makes fully free software platforms, which are hostile to hosting malicious features or hidden backdoors, equally essential. While we do the best we can to facilitate secure communications in our packages, we do not recommend using or running our software on proprietary platforms, as we consider these untrustworthy and potentially insecure by design.

6 Responses to “GNU Telephony and cross platform development”

  1. Gyll Says:

    Please take a look at this and contact me if you think it makes sense for you.
    http://p2pos.blogspot.com

  2. Links 1/4/2012: Munich Enjoys GNU/Linux, Gentoo 12.1 LiveDVD is Out | Techrights Says:

    [...] GNU Telephony and cross platform development With cross platform development comes some important questions of software freedom. There would be no true software freedom if we said we would permit our software to compile and run only on specific platforms, that is after all what proprietary software vendors often do. However in GNU Telephony we do principally develop and test our software on GNU systems specifically and do not have expertise in or interest in supporting proprietary ones. [...]

  3. Ted Morin Says:

    I really do hope that cross-platform development continues. I understand your concerns against proprietary systems.

    However, the main reason that I’ve been following GNU Telephony for the past year is because I’ve been waiting for something cross-platform that works. I really like your visions, and I really am looking forward to the project’s success.

    Originally, I came across the project when my friends and I were looking for a good Skype replacement. We run Windows, Mac, and Ubuntu, one each, and so talking over some service where all three version numbers are different always had some glitches.

    I hope that development for Windows and OSX _is_ pursued. I think it adds to the freedom and important. Where a software is meant for communication, communicating to everyone no matter their hardware is important.

    Thanks for your time,

    Ted.

  4. Haakon Meland Eriksen Says:

    @Ted Hi! Using an open and vendor-independent standard like SIP means you can use the apps that works best for you. I recently posted a personal blog post about using Linphone through GNU SIP Witch on Debian GNU/Linux, which you can read and see screen-shots at

    http://friendika.gnutelephony.org/display/haakon/121221

    In your situation, with users on multiple platforms, I think a look at Linphone 3.5.2 might be a good idea – http://www.linphone.org/eng/download/packages/linphone.html . Using the same client can have advantages too, as you can support each other if you need help.

    In addition to Linphone, I have some experience using CSipSimple, which you can read and see screen-shots of at http://www.gnutelephony.org/index.php/CSipSimple_for_Android .

    Please join us on the distributed and federated social network Friendica through one of the open Friendica services at http://dir.friendica.com/siteinfo . You can then connect to me at http://friendika.gnutelephony.org/profile/haakon and let us know which SIP clients worked best for you in your network.

    Haakon

  5. Addison Says:

    Unlike much open source software — such as operating systems or applications — telephony benefits by having as many compatible participants as possible. To Ted Morin’s point, it is in everyone’s interest to deploy gnuTelephony as to the widest possible audience.

  6. Addison Says:

    Unlike much open source software — such as operating systems or applications — telephony benefits by having as many compatible participants as possible. To Ted Morin’s point, it is in everyone’s interest to deploy gnuTelephony to the widest possible audience — including especially proprietary client platforms — which happen to comprise the bulk of the population. I expect we all have friends, family and associates using proprietary platforms. Not supporting them limits gnuTelphony’s utility for everyone. This seems to argue in favor of encouraging implementation even on unsecure systems. One hopes the design of gnuTelphony will be robust and not allow a damaged or corrupted client on one platform to infect others in the system. After all, with open source, it is easy for bad actors to deliberately fashion their own misbehaving deviant clients.

Leave a Reply