Summary: | net-misc/freeswitch (FreeSWITCH) (New package) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Kevin <gentoo> |
Component: | New packages | Assignee: | Default Assignee for New Packages <maintainer-wanted> |
Status: | CONFIRMED --- | ||
Severity: | enhancement | CC: | axiator, cbrannon, chewi, jazz_johnson, joe9mail, luke-jr+gentoobugs, m.debruijne, m.seifert, navid.zamani, tcpip4000, timmy, voip+disabled |
Priority: | High | Keywords: | EBUILD |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://www.freeswitch.org/ | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
Freeswitch 1.6.0 ebuild compiles with minimal configuration
Freeswitch live ebuild compiles with minimal configuration |
Description
Kevin
2006-10-08 17:53:54 UTC
seems this request hasn't turned into an ebuild yet. If you want to help with it, it's not that hard to write one: http://devmanual.gentoo.org/quickstart/index.html If you need further help, feel free to ask on forums or #gentoo-dev-help or #gentoo-sunrise on irc (latter is also useful if you want to maintain the app yourself) note: we're not turning you down for this request in any way, it's just that we don't have ressources to fix all of them. though if you're willing to help, it would be more than nice to do so, as that is what we definately need :) *** Bug 233174 has been marked as a duplicate of this bug. *** Some ebuilds from bug 233174, http://oss.axsentis.de/gitweb/?p=axsentis-overlay.git;a=tree;f=net-misc;hb=HEAD Reopen For what it's worth, my overlay (layman -a luke-jr) contains a functional FreeSWITCH, including proper support for system libraries instead of their internal forks. However, I only maintained this up to version 1.0.1, in part due to the FreeSWITCH developers being hostile to using sharing libraries as they're supposed to be used. If someone can convince them to accept my patches, I would be willing to update them to the latest codebase. (Note it's not inherently either/or-- someone could still install FreeSWITCH's forked libs if they want) Thanks, Luke. Could you be more specific? What is it exactly that the freeswitch people are doing differently? Can you point me to a mailing list discussion of the problem or a bug report? FreeSWITCH has forked and bundles complete copies of these libraries: apr, apr-util, curl, iksemel, libdingaling, libedit, libresample, libsndfile, libteletone, openmrcp, openzap, pcre, portaudio, sofia-sip, speex, sqlite, srtp, stfu, udns, xmprpc-c, yaml, ilbc, spidermonkey, and "voipcodecs" This causes bitrot, security issues, etc, as FreeSWITCH ignores the updated (fixed) system libraries. My branch ( http://svn.freeswitch.org/svn/freeswitch/branches/lukedashjr/syslibs ) splits these modules back out and allows my ebuild to use DEPENDS to properly use the user's system libs. I too am looking forward to freeswitch being included in gentoo. I currently have my pbx stabilized on asterisk-1.4.21 + zaptel-1.4.11 + oslec + linux-2.6.24-r8 + miscellaneous asterisk modules + freepbx-2.5. Since the asterisk-1.4 is being masked out in favor of the 1.6 version, I've been dreading the upgrade since in the past asterisk/zaptel has been quite fragile, with components breaking on kernel upgrades or asterisk modules upgrades. I had looked into alternatives such as callweaver (an asterisk-1.2 fork) but thought freeswitch looked the most promising. Now that freepbx-3.0 (testing) is out <http://www.freepbx.org/forum/freepbx/users/i-wonder-if-freepbx-will-ever-work-with-freeswitch>, I'd like to begin the migration to freeswitch. So I recompiled git with curl support, and added axsentis's overlay to my list of overlays: cat /usr/local/portage/layman/my-list.xml <?xml version="1.0"?> <layman> <overlay status = "unofficial" type = "git" src = "http://oss.axsentis.de/git/axsentis-overlay.git" contact = "s.knoblich@axsentis.de" name = "axsentis"> <link>http://oss.axsentis.de/gitweb/?p=axsentis-overlay.git;a=summary</link> <description> axsentis GmbH main overlay, contains several custom ebuilds: tomcat-bin, freeswitch etc.</description> </overlay> </layman> #cat /etc/layman/layman.cfg overlays : http://www.gentoo.org/proj/en/overlays/layman-global.txt file:///usr/local/portage/layman/my-list.xml I just finished compiling and installing freeswitch. Some observations: There are some 88 freeswitch modules in freeswitch-1.0.4/modules.conf and nearly as many corresponding USE flags in axsentis's ebuild. Many (most?) of those modules don't compile for me. The ebuild seems to skip past the compile errors but aborts at the install stage: emake MONO_SHARED_DIR="${T}" || die "building freeswitch failed" I wish there were a simpler way to compile say just the base freeswitch, then add just the extra modules. Currently I must enable USE flags one-by-one in /etc/portage/package.use and recompile the whole freeswitch to find out whethor a module compiles or not. So far these are the USE flags that compile/install for me: freeswitch_modules_cdr_csv freeswitch_modules_console freeswitch_modules_g723_1 freeswitch_modules_ilbc freeswitch_modules_limit freeswitch_modules_local_stream freeswitch_modules_logfile freeswitch_modules_lua freeswitch_modules_say_en freeswitch_modules_sndfile freeswitch_modules_sofia freeswitch_modules_speex freeswitch_modules_syslog freeswitch_modules_tone_stream freeswitch_modules_voipcodecs libedit resampler sctp esl esl-lua esl-perl esl-python freeswitch_modules_amr freeswitch_modules_cidlookup freeswitch_modules_dialplan_asterisk freeswitch_modules_file_string freeswitch_modules_g729 freeswitch_modules_h26x freeswitch_modules_iax freeswitch_modules_managed freeswitch_modules_perl freeswitch_modules_python freeswitch_modules_xml_cdr freeswitch_modules_xml_rpc I am testing these other flags -esl-php -esl-ruby -freeswitch_modules_alsa -freeswitch_modules_amrwb -freeswitch_modules_celt -freeswitch_modules_cepstral -freeswitch_modules_cluechoo -freeswitch_modules_curl -freeswitch_modules_dialplan_directory -freeswitch_modules_dingaling -freeswitch_modules_easyroute -freeswitch_modules_erlang_event -freeswitch_modules_fax -freeswitch_modules_flite -freeswitch_modules_java -freeswitch_modules_lcr -freeswitch_modules_memcache -freeswitch_modules_nibblebill -freeswitch_modules_opal -freeswitch_modules_openzap -freeswitch_modules_pocketsphinx -freeswitch_modules_portaudio -freeswitch_modules_portaudio_stream -freeswitch_modules_radius_cdr -freeswitch_modules_say_de -freeswitch_modules_say_es -freeswitch_modules_say_fr -freeswitch_modules_say_it -freeswitch_modules_say_nl -freeswitch_modules_say_ru -freeswitch_modules_say_zh -freeswitch_modules_shell_stream -freeswitch_modules_shout -freeswitch_modules_siren -freeswitch_modules_skypiax -freeswitch_modules_spidermonkey -freeswitch_modules_spidermonkey_core_db -freeswitch_modules_spidermonkey_curl -freeswitch_modules_spidermonkey_odbc -freeswitch_modules_spidermonkey_socket -freeswitch_modules_spidermonkey_teletone -freeswitch_modules_spy -freeswitch_modules_unimrcp -freeswitch_modules_vmd -freeswitch_modules_xml_curl -freeswitch_modules_xml_ldap -freeswitch_modules_yaml -freeswitch_modules_zeroconf -nosamples -odbc I believe the celt, curl, java, dingaling, zeroconf, esl-php, portaudio, spidermonkey stuff, flite and fax didn't compile/install for me. Hmm… this seems dead (?). @luke-jr: The version in your overlay now also stopped working, as the download gets a 404, and it wants sqlite-3.3*, while other packages want >=3.4 or more. I agree that they should stop using libraries in that abusive way. (And Mozilla: You too!) Sad, <rant>since Asterisk is a giant messy overengineered inner-platform-anti-pattern example of a p.o.s.… and still can’t do something as simple as allowing scripting for call management.</rant> FreeSWITCH is the only alternative to CAPISuite (which is now incompatible to modern kernels). <rant>I just want an interface to plug my highly personalized Python "answering machine" (more like a AI secretary by now ;) into. Please? No pointless dialing plan languages and bazillion modules with even more config files, requiring one to read a whole book, just to get it to work. But still not allowing what I need.</rant> Unfortunately, due to FreeSWITCH (ab)using SQLite 3.3 internals, at least that particular version of FreeSWTICH requires that exact version of SQLite. Then I guess there’s no choice but to leave that one in as if it were a part of FreeSWITCH itself. With its sqlite completely separate and unavailable for everything else. I wonder what they were thinking though. I’d love to have a *cough* word with them. ;) (In reply to Navid Zamani from comment #10) > Then I guess there’s no choice but to leave that one in as if it were a part > of FreeSWITCH itself. With its sqlite completely separate and unavailable > for everything else. > I wonder what they were thinking though. I’d love to have a *cough* word > with them. ;) For the record, I did have a word with them over a year ago and after some wrangling, including me proving that the latest upstream really did work once the necessary alterations had been made, they finally removed it. They also removed several other libraries including libedit and libpcre and their new policy is to try and unbundle as much as they can so that they can finally get it packaged in Debian. I do use FreeSWITCH at work but only on CentOS and Fedora, I'm afraid. I would take this package on but it's no small commitment and I'm drowning in Java matters so it'll have to wait. Created attachment 413218 [details]
Freeswitch 1.6.0 ebuild compiles with minimal configuration
Created attachment 413220 [details]
Freeswitch live ebuild compiles with minimal configuration
The ebuilds directory is at: https://github.com/joe9/portage/tree/master/net-voip/freeswitch |