[Freeswitch-users] Alternative Debian package builder

Michael Whapples mwhapples at aim.com
Sun Mar 17 01:07:25 MSK 2013


Possibly a bit unfair to say, it can be a matter of discoverability.

To explain what I do when searching for software to meet my needs.

I will first look for software in distribution specific resources, 
including the package manager and distribution's wiki. If there is 
something mentioned there then it most likely is going to be the 
simplest and quickest option to get it running (the package manager 
should do all the dependency checks, get the require dependencies and 
configure the system), distribution documentation is most likely to 
discuss software which works well under that distribution or comment on 
specific things which need doing on that distribution.

If at this point I have found something which meets my needs then I need 
not look further. However should I not be satisfied with the options at 
this point I will of course look further.

Also I will read documentation, search the internet for solutions to 
problems, etc.

My point being though, I might not find software which is not in a 
official distribution if something which can do the job is in the 
official distribution. This is not because I am being lazy but rather I 
want to use my time efficiently, I prefer to use software than search 
for it.

Michael Whapples
On 16/03/2013 20:12, Avi Marcus wrote:
> If that's what's stopping them from trying FS, especially if there is 
> a .deb ready and waiting, then I expect the community will have to 
> answer a LOT of very basic questions from them that are already 
> answered on ML / wiki / book...
>
> -Avi
>
>
> On Sat, Mar 16, 2013 at 10:37 PM, Ken Rice <krice at freeswitch.org 
> <mailto:krice at freeswitch.org>> wrote:
>
>     Getting it into official repos only helps gain wider adaption,
>     many people wont even try something if they cant just type
>     ${package_manager} install ${application}
>
>
>
>
>     On 3/16/13 12:55 PM, "Avi Marcus" <avi at avimarcus.net
>     <http://avi@avimarcus.net>> wrote:
>
>         At the speed that FS updates, I don't particularly see the
>         point of getting it into the official repos...
>
>         -Avi
>
>
>         On Sat, Mar 16, 2013 at 8:47 PM, Cal Leeming [Simplicity Media
>         Ltd] <cal.leeming at simplicitymedialtd.co.uk
>         <http://cal.leeming@simplicitymedialtd.co.uk>> wrote:
>
>
>
>             On Sat, Mar 16, 2013 at 7:16 PM, Ken Rice
>             <krice at freeswitch.org <http://krice@freeswitch.org>> wrote:
>
>                 So that's 1 for 10AM Eastern (CDT) or 2PM GMT Wed.
>
>                 The problem with installing all the modules is that
>                 you don't always need or want them installed on the
>                 system. And there are a huge number of people doing
>                 embedded work with FreeSWITCH. Take Apache as another
>                 example a quit apt-cache search apache2 shows dozens
>                 of apache2 packagesthat you must install to get that
>                 functionality after the fact.
>
>
>             Actually you do have a good point here.
>
>             $ apt-cache search apache2 | grep apache | wc -l
>             97
>
>
>                 The whole point of meta packages or config packages
>                 for FreeSWITCH is to try and keep this consistant
>                 across all platforms be it RHEL/Centos or Debian or
>                 even Ubuntu. This reduces the amount of bandwidth
>                 required to supporting the various things after FS has
>                 been installed.
>
>                 Personally if it were up to me I would say screw all
>                 the different variations between how FHS and other
>                 file layouts work and say pick one of the following,
>                 /opt/freeswitch or /usr/local/freeswitch we are going
>                 to install everything in those locations. This would
>                 drastically reduce support issues and greatly improve
>                 the ability of users to backup and change things in FS
>                 w/out having to search the entire filesystem to figure
>                 out where something as simple as
>                 freeswitch/db/zrtp.dat is located.
>
>
>             In Debian packaging etiquette (afaik), /opt/ is used
>             usually for non-free packages, or packages where the
>             source code is not given out and moving files around would
>             break the pre-compiled binary. If the end goal was to get
>             FS included in the Debian mirrors, then you'd need to go
>             beyond just /usr/local/freeswitch.. it'd have to be split
>             into /etc/freeswitch, /var/log/freeswitch etc.
>
>
>                 Yes I know that last statement will cause a ton of
>                 arguments with people as getting started on where
>                 things should go on a file system layout is as toxic
>                 as starting a debat on religion or politics, but
>                 that's not the point, we are not a distribution, we
>                 are a project developing a specific software package.
>                 That being said I honestly believe the single install
>                 location is the proper thing to do, but we can have
>                 support for FHS install locations etc in the
>                 build/packaging scripts to ease distro packagers lives
>                  for getting packages into the main distro repo's. But
>                 even then we will still have to maintain packages for
>                 FreeSWITCH proper repos as you already know how hard
>                 it is to get the latest release of software for many
>                 thing (for crying out loud, centos still ships
>                 Postgresql 8, and they are up to 9.2.3)
>
>
>             It really depends what the agreed end goal is.
>
>             If we want to one day have it in the various OS mirrors,
>             then it'll have to be done properly. This will
>             increase complexity, and end up with more time needing to
>             be spent. Packaging is a skill/art in its own rights, and
>             you'd need dedicated people to work on packaging for the
>             various OS's. Personally, I think the only benefit for
>             splitting up the layout would be if you want to get it
>             included in the official OS mirrors. However if this is
>             not the case, then having it all inside a single directory
>             is going to be quicker and easier, leaving people with
>             more time to focus on other things.
>
>             If having it under a single dir is agreed, according to
>             [3], /etc/opt is expected to store configuration files
>             related to packages inside /opt, the use of /usr/local [1]
>             and /opt [2] appears to be OS specific [4]. I don't have
>             any strong opinions of whether it should be /opt or
>             /usr/local.
>
>             [1] /usr/local -
>             http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard#cite_note-29
>             [2] /opt -
>             http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard#cite_note-.2Fopt-27
>             [3] http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
>             [4]
>             http://stackoverflow.com/questions/12649355/what-does-opt-mean-as-in-the-opt-directory-is-it-an-abbreviation
>
>
>                 K
>
>
>
>
>                 On 3/16/13 11:14 AM, "Cal Leeming [Simplicity Media
>                 Ltd]" <cal.leeming at simplicitymedialtd.co.uk
>                 <http://cal.leeming@simplicitymedialtd.co.uk>
>                 <http://cal.leeming@simplicitymedialtd.co.uk> > wrote:
>
>                     Sure I'm up for that, though I think discussing a
>                     bit more on email before hand would be a good idea
>                     too.
>
>                     I can do 10am Eastern on Wednesday, which would be
>                     2pm GMT/UK time for us.
>
>                     To clarify my own position on packaging.. Having
>                     the packages split into their individual modules
>                     is a nice idea in theory, but it doesn't feel like
>                     the 'Debian way'. Most Debian users are used to
>                     only installing just a few packages, and the
>                     package maintainer decides what should be compiled
>                     in by default (take nginx for example). The
>                     application then decides which modules should be
>                     loaded in using the .so files (for example
>                     Apache). The exception to this is Python, where
>                     you have external Python modules (such as
>                     python-curl), however these not part of the Python
>                     core, thus why they are kept separate. Standard
>                     python modules (such as zlib) are all included by
>                     default.
>
>                     I don't know enough about how FreeSWITCH module
>                     linking works, but I would have thought that if a
>                     module is compiled dynamically, then it won't be
>                     linked in unless it's specified in
>                     modules.conf.xml. In which case, you could just
>                     have a single package with all the dynamic modules
>                     compiled in, and you would change which modules
>                     are loaded in by editing your modules.conf.xml. On
>                     that basis, I think that the modules should be
>                     compiled as a single package.
>
>                     Any thoughts?
>
>                     Cal
>
>                     On Sat, Mar 16, 2013 at 5:18 PM, Ken Rice
>                     <krice at freeswitch.org
>                     <http://krice@freeswitch.org>
>                     <http://krice@freeswitch.org> > wrote:
>
>                         Debian Packages... Why don't you guys all get
>                         together on the FS conf bridge, and lets get
>                         everyone working together to get these done in
>                         a common way... Hows Say Noon Eastern on
>                         Tuesday for 10 Eastern on Wed (an hour before
>                         the regular weekly call) to get all you guys
>                         in 1 bridge to nail this down.
>
>
>
>                         On 3/15/13 6:21 PM, "Anthony Minessale"
>                         <anthony.minessale at gmail.com
>                         <http://anthony.minessale@gmail.com>
>                         <http://anthony.minessale@gmail.com>
>                          <http://anthony.minessale@gmail.com> > wrote:
>
>                             Work with ken and we can combine forces
>                             and release packages too.
>
>                             On Mar 15, 2013 6:29 PM, "Andrew Cassidy"
>                             <andrew at cassidywebservices.co.uk
>                             <http://andrew@cassidywebservices.co.uk>
>                             <http://andrew@cassidywebservices.co.uk>
>                              <http://andrew@cassidywebservices.co.uk>
>                             > wrote:
>
>                                 I just wrote a script that chroots and
>                                 builds for each env I have installed
>                                 using the provided build scripts.
>
>                                 On 15 March 2013 20:27, Cal Leeming
>                                 [Simplicity Media Ltd]
>                                 <cal.leeming at simplicitymedialtd.co.uk
>                                 <http://cal.leeming@simplicitymedialtd.co.uk>
>                                 <http://cal.leeming@simplicitymedialtd.co.uk>
>                                  <http://cal.leeming@simplicitymedialtd.co.uk>
>                                 > wrote:
>
>     Hello,
>
>     I've recently released an alternative Debian package builder for
>     FreeSWITCH.
>
>     https://github.com/foxx/freeswitch-debian
>
>     Although FreeSWITCH does already have suitable Debian packages
>     (and a builder), it might not be suitable for your needs (and in
>     our specific use case, we required an alternative approach).
>
>     Some of the reasons for this might be;
>
>     * Build your own packages with custom patches applied
>     * Your build system requires an easy to use, 1 command buider
>     * Building your own source packages from GIT for security reasons
>     * Have a single Debian package to install rather than 100+
>
>     It supports the following features;
>
>     * Uses 'get-packaged-orig-source' to fetch original source from
>     FreeSWITCH git
>     * Builds as non-native, all arch package using quilt 3.0 patching
>     (in accordance with Debian guidelines)
>     * Uses start-stop-daemon
>     * Uses pbuilder to ensure a clean build
>     * Creates 'freeswitch' system user and enforces permissions on
>     FreeSWITCH files
>     * Installs into /opt/freeswitch, rather than system dirs
>     * Removing/purging package will NOT remove data/logs dir or delete
>     'freeswitch' system user (in accordance with Debian guidelines)
>     * Enforces all necessary dependancies
>
>     Usage:
>
>     # Replace GIT_REF with the ref from GIT you wish to compile against
>     # Replace FS_VERSION with the version of FreeSWITCH we are compiling
>
>     $ apt-get install git
>     $ git clone https://github.com/foxx/freeswitch-debian.git
>     $ cd freeswitch-debian
>     $ GIT_REF=master FS_VERSION=1.3.16 make
>
>     Hope this helps someone else!
>
>     Cal
>
>     _________________________________________________________________________
>     Professional FreeSWITCH Consulting Services:
>     consulting at freeswitch.org <http://consulting@freeswitch.org>
>     <http://consulting@freeswitch.org>
>      <http://consulting@freeswitch.org>
>     http://www.freeswitchsolutions.com
>
>     
>     
>
>     Official FreeSWITCH Sites
>     http://www.freeswitch.org
>     http://wiki.freeswitch.org
>     http://www.cluecon.com
>
>     FreeSWITCH-users mailing list
>     FreeSWITCH-users at lists.freeswitch.org
>     <http://FreeSWITCH-users@lists.freeswitch.org>
>     <http://FreeSWITCH-users@lists.freeswitch.org>
>      <http://FreeSWITCH-users@lists.freeswitch.org>
>     http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>     UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>     http://www.freeswitch.org
>
>
>
>
>     -- 
>     Ken
>     _http://www.FreeSWITCH.org
>     http://www.ClueCon.com
>     http://www.OSTAG.org
>     _irc.freenode.net <http://irc.freenode.net> #freeswitch
>
>     _________________________________________________________________________
>     Professional FreeSWITCH Consulting Services:
>     consulting at freeswitch.org <mailto:consulting at freeswitch.org>
>     http://www.freeswitchsolutions.com
>
>     
>     
>
>     Official FreeSWITCH Sites
>     http://www.freeswitch.org
>     http://wiki.freeswitch.org
>     http://www.cluecon.com
>
>     FreeSWITCH-users mailing list
>     FreeSWITCH-users at lists.freeswitch.org
>     <mailto:FreeSWITCH-users at lists.freeswitch.org>
>     http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>     UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>     http://www.freeswitch.org
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130316/2be08c3f/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list