38 Commits

Author SHA1 Message Date
ezkrg
a236c2eb8f Merge pull request #15 from ezkrg/multirun
multi RUN
2019-11-26 20:55:37 +01:00
ezkrg
e815a2439f spaces or tabs ?!?! 2019-11-26 20:30:40 +01:00
ezkrg
88a558de05 multiple run in Dockerfile 2019-11-26 20:24:58 +01:00
ezkrg
0023581ccb strip bitlbee and liboml 2019-11-25 23:59:01 +01:00
ezkrg
9f05eee5f3 Merge pull request #14 from ezkrg/matrix
add matrix
2019-11-25 18:19:03 +01:00
ezkrg
646575547f add matrix 2019-11-25 18:14:25 +01:00
ezkrg
a49641cdd4 add matrix 2019-11-25 18:11:04 +01:00
ezkrg
00593243c1 strip mastodon 2019-11-25 14:10:23 +01:00
ezkrg
2a9d8f86a1 contributor names as links 2019-11-25 14:03:20 +01:00
ezkrg
655e5731ac Merge pull request #13 from ezkrg/mastodon
add mastodon
2019-11-25 13:47:09 +01:00
ezkrg
c7b6fcce50 add mastodon to readme too 2019-11-25 13:44:40 +01:00
ezkrg
f36e7a705d add mastodon 2019-11-25 13:41:05 +01:00
ezkrg
de67477be5 enable or disable plugins with build args 2019-08-28 13:28:30 +02:00
ezkrg
f0e3afa97f add missing versions 2019-07-24 14:52:04 +02:00
ezkrg
c707306d27 alpine 3.10 and bitlbee 3.6 2019-07-22 14:41:04 +02:00
ezkrg
b58ea1f200 use rocketchat commit 2019-07-22 13:07:47 +02:00
ezkrg
8dcaa37c0e Merge pull request #11 from cutzenfriend/master
Added bash to packages
2019-07-22 13:02:59 +02:00
cutzenfriend
387f47c769 Update Dockerfile 2019-07-20 23:28:43 +02:00
ezkrg
d1b783b906 Merge pull request #7 from ezkrg/fix-issue-6
use sipe version instead of master
2018-09-14 17:08:27 +02:00
ezkrg
7daae39fae use sipe version instead of master 2018-09-14 17:06:17 +02:00
ezkrg
ca1c7aba1c link plugin repositories 2018-09-10 09:12:00 +02:00
ezkrg
00d13ec116 Merge pull request #5 from ezkrg/rocket.chat
add rocket.chat support
2018-09-10 09:07:17 +02:00
ezkrg
6c6d53ca92 add rocket.chat support 2018-09-10 09:02:45 +02:00
ezkrg
d65022e3ae add tzdata 2018-08-21 17:26:48 +02:00
ezkrg
16fd01640d list plugins 2018-08-21 17:05:40 +02:00
ezkrg
043bd98700 increase gid and uid 2018-08-21 11:14:43 +02:00
ezkrg
0bc1103787 use single run to decrease layers 2018-08-21 11:07:26 +02:00
ezkrg
9cde1af86e add needo37's work to changelog 2018-08-21 11:07:00 +02:00
ezkrg
bdf63fa9ec Merge pull request #3 from needo37/master
Add discord plugin
2018-08-21 10:57:45 +02:00
needo37
7841a2eb47 Running things as root is bad. 2018-08-21 00:31:42 -05:00
needo37
38af27f938 Update Dockerfile 2018-08-20 23:28:31 -05:00
ezkrg
410ad024fc add Waester's work to changelog 2018-08-17 18:11:38 +02:00
ezkrg
f5e593e5bb Merge pull request #2 from Waester/sipe
Add libsipe support
2018-08-17 17:48:58 +02:00
Waester
93a5e48800 Add libsipe support 2018-08-17 17:11:07 +02:00
ezkrg
2ca308d8cb Merge pull request #1 from friek/master
Added documentation
2018-04-20 10:58:54 +02:00
Johan Mulder
badb9c84d9 Fixed spelling error 2018-04-19 23:12:12 +02:00
Johan Mulder
f5e51e6f6b Deleted run away sentence. 2018-04-19 23:04:44 +02:00
Johan Mulder
68f17f04cc Added documentation in README.md. Moved changelog to CHANGELOG.md 2018-04-19 23:02:49 +02:00
3 changed files with 391 additions and 87 deletions

46
CHANGELOG.md Normal file
View File

@@ -0,0 +1,46 @@
# Changelog
## 2019-11-25 18:13:41 ([revmischa](https://github.com/revmischa))
- add matrix
## 2019-11-25 13:39:21 ([revmischa](https://github.com/revmischa))
- add mastodon
## 2018-09-10 08:52:53
- add rocket.chat plugin
- use alpine 3.8
## 2018-08-21 10:59:17 ([needo37](https://github.com/needo37))
- add discord plugin
- run as bitlbee user
## 2018-08-17 17:59:13 ([Waester](https://github.com/Waester))
- add libsipe support
## 2018-04-19 23:01:49 ([friek](https://github.com/friek))
- updated README
- moved changelog to CHANGELOG.md
## 2018-04-19 14:17:23
- use alpine 3.7
- add slack-libpurple
## 2017-09-18 12:30:45
- trigger rebuild related to https://github.com/bitlbee/bitlbee-facebook/issues/151
## 2017-07-30 20:52:55
- adding purple-hangouts
## 2017-07-29 18:14:51
- using alpine 3.6
- remove libpurple-ymsg
- adding telegram-purple
## 2017-04-21 12:57:42
- trigger rebuild
## 2017-04-04 12:59:58
- trigger rebuild cause of facebook fix
## 2017-03-30 11:43:46
- trigger rebuild cause of facebook fix

View File

@@ -1,87 +1,302 @@
FROM alpine:3.7
FROM alpine:3.10
ENV BITLBEE_VERSION 3.5.1
ARG BITLBEE_VERSION=3.6
RUN apk add --no-cache --update libpurple \
RUN addgroup -g 101 -S bitlbee \
&& adduser -u 101 -D -S -G bitlbee bitlbee \
&& apk add --no-cache --update \
tzdata \
bash \
glib \
libssl1.1 \
libpurple \
libpurple-xmpp \
libpurple-oscar \
libpurple-bonjour \
json-glib \
libgcrypt \
libssl1.0 \
libcrypto1.0 \
gettext \
libwebp \
glib \
protobuf-c \
&& apk add --no-cache --update --virtual .build-dependencies \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
glib-dev \
openssl-dev \
python2 \
pidgin-dev \
&& cd /tmp \
&& git clone -n https://github.com/bitlbee/bitlbee.git \
&& cd bitlbee \
&& git checkout ${BITLBEE_VERSION} \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl --purple=1 --ssl=openssl --prefix=/usr --etcdir=/etc/bitlbee \
&& make \
&& make install \
&& make install-dev \
&& make install-etc \
&& strip /usr/sbin/bitlbee \
&& rm -rf /tmp/* \
&& apk del .build-dependencies
ARG FACEBOOK=1
ARG FACEBOOK_VERSION=v1.2.0
RUN if [ ${FACEBOOK} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
json-glib \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
make \
autoconf \
automake \
libtool \
gcc \
g++ \
glib-dev \
json-glib-dev \
&& git clone -n https://github.com/bitlbee/bitlbee-facebook.git \
&& cd bitlbee-facebook \
&& git checkout ${FACEBOOK_VERSION} \
&& ./autogen.sh --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/facebook.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG STEAM=1
ARG STEAM_VERSION=a6444d2
RUN if [ ${STEAM} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
libgcrypt \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
autoconf \
automake \
libtool \
libgcrypt-dev \
openssl-dev \
glib-dev \
&& git clone -n https://github.com/bitlbee/bitlbee-steam.git \
&& cd bitlbee-steam \
&& git checkout ${STEAM_VERSION} \
&& ./autogen.sh --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/steam.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG SKYPEWEB=1
ARG SKYPEWEB_VERSION=5d29285
RUN if [ ${SKYPEWEB} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
json-glib \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
pidgin-dev \
json-glib-dev \
&& git clone -n https://github.com/EionRobb/skype4pidgin.git \
&& cd skype4pidgin \
&& git checkout ${SKYPEWEB_VERSION} \
&& cd skypeweb \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libskypeweb.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG TELEGRAM=1
ARG TELEGRAM_VERSION=b101bbb
RUN if [ ${TELEGRAM} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
libgcrypt \
zlib \
libwebp \
libpng \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
libgcrypt-dev \
zlib-dev \
pidgin-dev \
libwebp-dev \
glib-dev \
protobuf-c-dev \
libpng-dev \
&& git clone -n https://github.com/majn/telegram-purple \
&& cd telegram-purple \
&& git checkout ${TELEGRAM_VERSION} \
&& git submodule update --init --recursive \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/purple-2/telegram-purple.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG HANGOUTS=1
ARG HANGOUTS_VERSION=3f7d89b
RUN if [ ${HANGOUTS} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
protobuf-c \
json-glib \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
mercurial \
&& cd /tmp \
&& git clone https://github.com/bitlbee/bitlbee.git \
&& cd bitlbee \
&& git checkout ${BITLBEE_VERSION} \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl --purple=1 --ssl=openssl --prefix=/usr --etcdir=/etc/bitlbee \
&& make \
&& make install \
&& make install-dev \
&& cd /tmp \
&& git clone https://github.com/jgeboski/bitlbee-facebook.git \
&& cd bitlbee-facebook \
&& ./autogen.sh \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/facebook.so \
&& cd /tmp \
&& git clone https://github.com/jgeboski/bitlbee-steam.git \
&& cd bitlbee-steam \
&& ./autogen.sh --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/steam.so \
&& cd /tmp \
&& git clone git://github.com/EionRobb/skype4pidgin.git \
&& cd skype4pidgin/skypeweb \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libskypeweb.so \
&& cd /tmp \
&& git clone --recursive https://github.com/majn/telegram-purple \
&& cd telegram-purple \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/purple-2/telegram-purple.so \
&& cd /tmp \
&& hg clone https://bitbucket.org/EionRobb/purple-hangouts \
&& cd purple-hangouts \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libhangouts.so \
&& cd /tmp \
&& git clone https://github.com/dylex/slack-libpurple.git \
&& cd slack-libpurple \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libslack.so \
&& rm -rf /tmp/* \
&& rm -rf /usr/include/bitlbee \
&& rm -f /usr/lib/pkgconfig/bitlbee.pc \
&& apk del .build-dependencies
pidgin-dev \
protobuf-c-dev \
json-glib-dev \
&& hg clone https://bitbucket.org/EionRobb/purple-hangouts -r ${HANGOUTS_VERSION} \
&& cd purple-hangouts \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libhangouts.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG SLACK=1
ARG SLACK_VERSION=8acc4eb
RUN if [ ${SLACK} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
pidgin-dev \
glib-dev \
&& git clone -n https://github.com/dylex/slack-libpurple.git \
&& cd slack-libpurple \
&& git checkout ${SLACK_VERSION} \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libslack.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG SIPE=1
ARG SIPE_VERSION=upstream/1.23.3
RUN if [ ${SIPE} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
libtool \
glib-dev \
intltool \
automake \
autoconf \
openssl-dev \
libxml2-dev \
pidgin-dev \
&& git clone -n https://github.com/tieto/sipe.git \
&& cd sipe \
&& git checkout ${SIPE_VERSION} \
&& ./autogen.sh \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl --prefix=/usr \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libsipe.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG DISCORD=1
ARG DISCORD_VERSION=aa0bbf2
RUN if [ ${DISCORD} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
autoconf \
automake \
libtool \
glib-dev \
&& git clone -n https://github.com/sm00th/bitlbee-discord.git \
&& cd bitlbee-discord \
&& git checkout ${DISCORD_VERSION} \
&& ./autogen.sh \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl --prefix=/usr \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/discord.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG ROCKETCHAT=1
ARG ROCKETCHAT_VERSION=826990b
RUN if [ ${ROCKETCHAT} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
discount \
json-glib \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
mercurial \
pidgin-dev \
json-glib-dev \
discount-dev \
&& hg clone https://bitbucket.org/EionRobb/purple-rocketchat -r ${ROCKETCHAT_VERSION} \
&& cd purple-rocketchat \
&& make \
&& make install \
&& strip /usr/lib/purple-2/librocketchat.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG MASTODON=1
ARG MASTODON_VERSION=83dee0b
RUN if [ ${MASTODON} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
autoconf \
automake \
libtool \
glib-dev \
&& git clone -n https://github.com/kensanata/bitlbee-mastodon \
&& cd bitlbee-mastodon \
&& git checkout ${MASTODON_VERSION} \
&& ./autogen.sh \
&& ./configure --build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl \
&& make \
&& make install \
&& strip /usr/lib/bitlbee/mastodon.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
ARG MATRIX=1
ARG OLM_VERSION=3.1.4
ARG MATRIX_VERSION=4494ba2
RUN if [ ${MATRIX} -eq 1 ]; then cd /tmp \
&& apk add --no-cache --update \
sqlite \
http-parser \
libgcrypt \
json-glib \
&& apk add --no-cache --update --virtual .build-dependencies \
build-base \
git \
libgcrypt-dev \
pidgin-dev \
json-glib-dev \
glib-dev \
sqlite-dev \
http-parser-dev \
&& git clone -n https://gitlab.matrix.org/matrix-org/olm.git \
&& cd olm \
&& git checkout ${OLM_VERSION} \
&& make \
&& make install \
&& strip /usr/local/lib/libolm.so.${OLM_VERSION} \
&& cd /tmp \
&& git clone -n https://github.com/matrix-org/purple-matrix \
&& cd purple-matrix \
&& git checkout ${MATRIX_VERSION} \
&& make \
&& make install \
&& strip /usr/lib/purple-2/libmatrix.so \
&& rm -rf /tmp/* \
&& apk del .build-dependencies; fi
EXPOSE 6667
ENTRYPOINT [ "/usr/sbin/bitlbee", "-F", "-n" ]
USER bitlbee
CMD [ "/usr/sbin/bitlbee", "-F", "-n" ]

View File

@@ -1,26 +1,69 @@
# docker-bitlbee-libpurple
## 2018-04-19 14:17:23
- use alpine 3.7
- add slack-libpurple
This docker image includes bitlbee with a bunch of useful plugins:
- [facebook](https://github.com/jgeboski/bitlbee-facebook)
- [steam](https://github.com/jgeboski/bitlbee-steam)
- [skypeweb](https://github.com/EionRobb/skype4pidgin)
- [telegram](https://github.com/majn/telegram-purple)
- [hangouts](https://bitbucket.org/EionRobb/purple-hangouts)
- [slack](https://github.com/dylex/slack-libpurple)
- [sipe](https://github.com/tieto/sipe)
- [discord](https://github.com/sm00th/bitlbee-discord)
- [rocket.chat](https://bitbucket.org/EionRobb/purple-rocketchat)
- [mastodon](https://github.com/kensanata/bitlbee-mastodon)
- [matrix](https://github.com/matrix-org/purple-matrix)
## 2017-09-18 12:30:45
- trigger rebuild related to https://github.com/bitlbee/bitlbee-facebook/issues/151
The most significant being the [libpurple Slack plugin](https://github.com/dylex/slack-libpurple). As Slack is turning off its IRC gateway on May 15 2018, now is the time to spin up your own docker image and start using bitlbee instead.
## 2017-07-30 20:52:55
- adding purple-hangouts
## Building and running the image
Build the image and tag it:
```bash
docker build -t bitlbee:latest .
```
## 2017-07-29 18:14:51
- using alpine 3.6
- remove libpurple-ymsg
- adding telegram-purple
Then run it:
```bash
docker run -p 6667:6667 --name bitlbee -v /local/path/to/configurations:/var/lib/bitlbee \
--restart=always --detach bitlbee:latest
```
## 2017-04-21 12:57:42
- trigger rebuild
The local path to the configurations will contain the configuration as saved by
bitlbee. It is advisable to do so, as your configuration will be gone when
the docker image gets deleted.
## 2017-04-04 12:59:58
- trigger rebuild cause of facebook fix
## Setting up a Slack account
Connect with your IRC client to the host running the image. Then register with a password in the &bitlbee channel:
```
/join &bitlbee
register <your password>
```
## 2017-03-30 11:43:46
- trigger rebuild cause of facebook fix
Then, go to [the Slack legacy token site](https://api.slack.com/custom-integrations/legacy-tokens) to acquire
an API token, which is necessary in order to log in.
Copy the token, register your slack account in bitlbee and enable the account:
```
account add slack yourusername@whatever.slack.com thetoken
account on
```
This should log your account in right away:
```
<@root> Trying to get all accounts connected...
<@root> slack - Logging in: Requesting RTM
<@root> slack - Logging in: Connecting to RTM
<@root> slack - Logging in: RTM Connected
<@root> slack - Logging in: Loading Users
<@root> slack - Logging in: Loading conversations
<@root> slack - Logging in: Logged in
```
By default, none of the channels you normally reside in will be joined. To join them, you first need to add them:
```
<@you> chat add slack general
<@root> Chatroom successfully added.
```
Don't add the leading #. Adding private channels works the same way as public channels, both without the leading #.
Now, join the channel with /join #channnelname and you'll be good to go.