Skip to content

Commit ec9a73e

Browse files
committed
🚀 FreeSWITCH v1.10.10
1 parent 89dd3b1 commit ec9a73e

5 files changed

Lines changed: 19 additions & 18 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
slim.report.json

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,20 @@ cd slimswitch
2222
-s local/awesome-switch
2323
docker run --rm -it \
2424
-v "$(pwd)/freeswitch.xml":/etc/freeswitch/freeswitch.xml \
25-
local/awesome-switch:v1.10.8
25+
local/awesome-switch:v1.10.10
2626
```
2727

2828
![Quickstart](https://raw.github.com/rtckit/media/master/slimswitch/demo.gif)
2929

3030
## Requirements
3131

32-
[Docker](https://docs.docker.com/get-docker/) and [docker-slim](https://dockersl.im/install.html) must be installed in the building environment.
32+
[Docker](https://docs.docker.com/get-docker/) and [slimtoolkit](https://slimtoolkit.org/) must be installed in the building environment.
3333

3434
## How it works
3535

3636
A generic reusable [builder image](etc/Dockerfile) is created first; the goal is to build the FreeSWITCH core and most of its modules, so then they can be mixed-and-matched as needed. The resulting image can also serve as a base for compiling third party modules. This phase is handled by the [./bin/mkbuilder.sh](./bin/mkbuilder.sh) script. Images corresponding to official FreeSWITCH releases are also [publicly available](https://hub.docker.com/r/rtckit/slimswitch-builder).
3737

38-
The trimming is achieved via the [./bin/mkslim.sh](./bin/mkslim.sh) script, which is essentially a wrapper for docker-slim; specifically, it leverages its static analysis features so dynamic dependencies are accounted for when the final image is created.
38+
The trimming is achieved via the [./bin/mkslim.sh](./bin/mkslim.sh) script, which is essentially a wrapper for slimtoolkit; specifically, it leverages its static analysis features so dynamic dependencies are accounted for when the final image is created.
3939

4040
## License
4141

@@ -45,7 +45,7 @@ MIT, see [LICENSE file](LICENSE).
4545

4646
* [FreeSWITCH](https://github.com/signalwire/freeswitch), FreeSWITCH is a registered trademark of Anthony Minessale II
4747
* [Docker](https://docker.com), Docker is a registered trademark of Docker, Inc
48-
* [docker-slim](https://github.com/docker-slim/docker-slim)
48+
* [slimtoolkit](https://github.com/slimtoolkit/slim)
4949

5050
### Contributing
5151

bin/mkslim.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ if [ ! -x "$(command -v docker)" ]; then
99
exit 1
1010
fi
1111

12-
if [ ! -x "$(command -v docker-slim)" ]; then
13-
printf "Cannot find docker-slim\n"
12+
if [ ! -x "$(command -v slim)" ]; then
13+
printf "Cannot find slim (slimtoolkit)\n"
1414
exit 1
1515
fi
1616

@@ -112,7 +112,7 @@ if [ -z "$SLIM_REPOSITORY" ]; then
112112
SLIM_REPOSITORY=$(printf '%s' "$BUILDER_REPOSITORY" | sed -e 's/-builder/-slim/g')
113113
fi
114114

115-
docker-slim build \
115+
slim build \
116116
--http-probe-off \
117117
--continue-after 1 \
118118
--include-cert-all \

etc/Dockerfile

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
ARG DEBIAN_RELEASE=bullseye
1+
ARG DEBIAN_RELEASE=bookworm
22

33
# Userland environment of choice
44
FROM debian:${DEBIAN_RELEASE}
55

66
# Git references for dependencies built from source
7-
ARG LIB_BROADVOICE_TAG=ec59030
7+
ARG LIB_BROADVOICE_TAG=85752d8
88
ARG LIB_ILBC_TAG=e186393
9-
ARG LIB_KS_TAG=v1.8.0
9+
ARG LIB_KS_TAG=v2.0.3
1010
ARG LIB_SILK_TAG=627102d
11-
ARG LIB_SPANDSP_TAG=e59ca8f
12-
ARG LIB_SOFIA_TAG=v1.13.9
13-
ARG LIB_SW_C_CLIENT=1.3.0
11+
ARG LIB_SPANDSP_TAG=d540fdf
12+
ARG LIB_SOFIA_TAG=v1.13.17
13+
ARG LIB_SW_C_CLIENT=v2.0.0
1414

1515
# FreeSWITCH git reference
16-
ARG FREESWITCH_TAG=v1.10.8
16+
ARG FREESWITCH_TAG=v1.10.10
1717

1818
# Prerequisites
1919
RUN apt-get update && \
20-
apt-get install -y autoconf automake build-essential bison cmake debhelper default-jdk devscripts doxygen dpkg-dev erlang-dev flite1-dev g++ gcc git ladspa-sdk libasound2-dev libavformat-dev libavresample-dev libc6-dev libcodec2-dev libcurl4-openssl-dev libdb-dev libedit-dev libexpat1-dev libflac-dev libgdbm-compat-dev libgdbm-dev libglib2.0-dev libhiredis-dev libjpeg62-turbo-dev libldap2-dev libldns-dev liblua5.1-0-dev liblua5.2-dev libmagickcore-dev libmariadb-dev libmemcached-dev libmono-2.0-dev libmp3lame-dev libmpg123-dev libncurses5-dev libogg-dev libopencore-amrnb-dev libopencv-dev libopus-dev libopusfile-dev libpcre3-dev libperl-dev libpq-dev librabbitmq-dev libshout3-dev libsndfile1-dev libsnmp-dev libsoundtouch-dev libspeex-dev libspeexdsp-dev libsqlite3-dev libssl-dev libssl-dev libswscale-dev libtiff5-dev libtool libtool-bin libtpl-dev libnode-dev libvlc-dev libvorbis-dev libyaml-dev make mono-mcs pkg-config portaudio19-dev python-all-dev python-dev-is-python2 python3-dev texlive unixodbc-dev uuid-dev wget yasm zlib1g-dev
20+
apt-get install -y autoconf automake build-essential bison cmake debhelper default-jdk devscripts doxygen dpkg-dev erlang-dev flite1-dev g++ gcc git ladspa-sdk libasound2-dev libavformat-dev libc6-dev libcodec2-dev libcurl4-openssl-dev libdb-dev libedit-dev libexpat1-dev libflac-dev libgdbm-compat-dev libgdbm-dev libglib2.0-dev libhiredis-dev libjpeg62-turbo-dev libldap2-dev libldns-dev liblua5.1-0-dev liblua5.2-dev libmagickcore-dev libmariadb-dev libmemcached-dev libmono-2.0-dev libmp3lame-dev libmpg123-dev libncurses5-dev libogg-dev libopencore-amrnb-dev libopencv-dev libopus-dev libopusfile-dev libpcre3-dev libperl-dev libpq-dev librabbitmq-dev libshout3-dev libsndfile1-dev libsnmp-dev libsoundtouch-dev libspeex-dev libspeexdsp-dev libsqlite3-dev libssl-dev libssl-dev libswscale-dev libtiff5-dev libtool libtool-bin libtpl-dev libnode-dev libvlc-dev libvorbis-dev libyaml-dev make mono-mcs pkg-config portaudio19-dev python3-dev python3-distutils-extra texlive unixodbc-dev uuid-dev wget yasm zlib1g-dev
2121

2222
RUN mkdir -p /usr/src
2323
WORKDIR /usr/src
@@ -70,7 +70,7 @@ RUN wget https://codeload.github.com/signalwire/freeswitch/tar.gz/${FREESWITCH_T
7070
# Configure
7171
RUN cd /usr/src/freeswitch* && \
7272
./bootstrap.sh -j && \
73-
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --disable-debug
73+
./configure --with-python3 --prefix=/usr --sysconfdir=/etc --localstatedir=/var --disable-debug
7474

7575
# Enable most modules
7676
RUN cd /usr/src/freeswitch* && \

etc/config.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/sh
22

33
# Default configuration
4-
export DEBIAN_RELEASE=bullseye
5-
export FREESWITCH_TAG=v1.10.8
4+
export DEBIAN_RELEASE=bookworm
5+
export FREESWITCH_TAG=v1.10.10
66
export BUILDER_REPOSITORY=rtckit/slimswitch-builder

0 commit comments

Comments
 (0)