Compare commits
No commits in common. "master" and "add-license-1" have entirely different histories.
master
...
add-licens
@ -1,47 +0,0 @@
|
|||||||
# This file is a template, and might need editing before it works on your project.
|
|
||||||
# To contribute improvements to CI/CD templates, please follow the Development guide at:
|
|
||||||
# https://docs.gitlab.com/ee/development/cicd/templates.html
|
|
||||||
# This specific template is located at:
|
|
||||||
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
|
|
||||||
|
|
||||||
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
|
|
||||||
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
|
|
||||||
# it uses echo commands to simulate the pipeline execution.
|
|
||||||
#
|
|
||||||
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
|
|
||||||
# Stages run in sequential order, but jobs within stages run in parallel.
|
|
||||||
#
|
|
||||||
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
|
|
||||||
|
|
||||||
stages: # List of stages for jobs, and their order of execution
|
|
||||||
- build
|
|
||||||
|
|
||||||
build-dev: # This job runs in the build stage, which runs first.
|
|
||||||
stage: build
|
|
||||||
tags:
|
|
||||||
- buildx
|
|
||||||
script:
|
|
||||||
- echo "Compiling the code..."
|
|
||||||
- docker buildx build --no-cache -t hacknix/freedmr-ipsc:development-latest -t gitlab.hacknix.net:5050/hacknix/docker-freedmr-ipsc:development-latest --platform linux/arm/v7,linux/amd64,linux/i386,linux/arm64 --push .
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- echo "Compile complete."
|
|
||||||
only:
|
|
||||||
- master
|
|
||||||
|
|
||||||
build-release: # This job runs in the build stage, which runs first.
|
|
||||||
stage: build
|
|
||||||
tags:
|
|
||||||
- buildx
|
|
||||||
script:
|
|
||||||
- echo "Compiling the code..."
|
|
||||||
- cd docker-configs
|
|
||||||
- docker buildx build --no-cache -f Dockerfile-proxy -t hacknix/freedmr-ipsc:latest -t gitlab.hacknix.net:5050/hacknix/docker-freedmr-ipsc:latest -t hacknix/freedmr-ipsc:$CI_COMMIT_TAG -t gitlab.hacknix.net:5050/hacknix/docker-freedmr-ipsc:$CI_COMMIT_TAG -t hacknix/freedmr-ipsc:development-latest -t gitlab.hacknix.net:5050/hacknix/docker-freedmr-ipsc:development-latest --platform linux/arm/v7,linux/amd64,linux/i386,linux/arm64 --push .
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- echo "Compile complete."
|
|
||||||
only:
|
|
||||||
- tags
|
|
||||||
|
|
10
Dockerfile
10
Dockerfile
@ -5,26 +5,26 @@ COPY config /opt/
|
|||||||
|
|
||||||
RUN useradd -u 54000 radio && \
|
RUN useradd -u 54000 radio && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get install -y git gcc g++ python2 python2-dev wget make && \
|
apt-get install -y git gcc g++ musl-dev python2 wget make && \
|
||||||
cd /opt && \
|
cd /opt && \
|
||||||
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py && \
|
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py && \
|
||||||
python2 ./get-pip.py && \
|
python2 ./get-pip.py && \
|
||||||
pip install twisted && \
|
pip install twisted && \
|
||||||
git clone https://gitlab.hacknix.net/hacknix/DMRlink.git && \
|
git clone https://github.com/hacknix/DMRlink.git && \
|
||||||
cd /opt/DMRlink && \
|
cd /opt/DMRlink && \
|
||||||
git checkout IPSC_Bridge && \
|
git checkout IPSC_Bridge && \
|
||||||
sh ./mk-dmrlink && \
|
sh ./mk-dmrlink && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
git clone https://gitlab.hacknix.net/hacknix/HBLink.git && \
|
git clone https://github.com/hacknix/HBLink.git && \
|
||||||
cd HBLink && \
|
cd HBLink && \
|
||||||
git checkout HB_Bridge && \
|
git checkout HB_Bridge && \
|
||||||
sh ./mk-required && \
|
sh ./mk-required && \
|
||||||
cd .. && \
|
cd .. && \
|
||||||
git clone https://github.com/g4klx/DMRGateway.git && \
|
git clone https://github.com/hacknix/DMRGateway.git && \
|
||||||
cd DMRGateway && \
|
cd DMRGateway && \
|
||||||
git reset --hard 6e89e4922f8c5eb7ec3797729a82137d70bc8940 && \
|
git reset --hard 6e89e4922f8c5eb7ec3797729a82137d70bc8940 && \
|
||||||
make && \
|
make && \
|
||||||
apt-get remove -y gcc g++ make git wget && \
|
apt-get remove -y musl-dev gcc g++ make git wget && \
|
||||||
apt-get -y autoremove && \
|
apt-get -y autoremove && \
|
||||||
apt-get -y purge && \
|
apt-get -y purge && \
|
||||||
rm -rvf /var/cache/apt/archives/* && \
|
rm -rvf /var/cache/apt/archives/* && \
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
# IPSCConnect #
|
|
||||||
IPSC repeater stack for RYSEN Master+
|
|
||||||
|
|
||||||
This is a fork from the HackNix repo.
|
|
||||||
|
|
||||||
If you just want to use this, all you need is the docker-compose.yml file. Edit it, run docker-compose up and docker-compose will do the rest.
|
|
@ -21,7 +21,7 @@ Debug=0
|
|||||||
[Log]
|
[Log]
|
||||||
# Logging levels, 0=No logging
|
# Logging levels, 0=No logging
|
||||||
DisplayLevel=1
|
DisplayLevel=1
|
||||||
FileLevel=0
|
FileLevel=1
|
||||||
FilePath=.
|
FilePath=.
|
||||||
FileRoot=DMRGateway
|
FileRoot=DMRGateway
|
||||||
FileRotate=1
|
FileRotate=1
|
||||||
@ -80,10 +80,11 @@ TypeRewrite=2,4000,2,4000
|
|||||||
PassAllTG=1
|
PassAllTG=1
|
||||||
PassAllTG=2
|
PassAllTG=2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Password=passw0rd
|
Password=passw0rd
|
||||||
Location=1
|
Location=1
|
||||||
Debug=0
|
Debug=0
|
||||||
Options={{DMRG_OPTIONS}}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -165,12 +165,12 @@ MASTER_PORT: 50000
|
|||||||
GROUP_HANGTIME: 5
|
GROUP_HANGTIME: 5
|
||||||
|
|
||||||
|
|
||||||
[IPSC_Bridge]
|
[DEFAULTS]
|
||||||
ENABLED: True
|
ENABLED: True
|
||||||
RADIO_ID: {{IPSC_RADIO_ID}}
|
RADIO_ID: {{IPSC_RADIO_ID}}
|
||||||
IP:
|
IP:
|
||||||
PORT: 55000
|
PORT: 55000
|
||||||
ALIVE_TIMER: 6
|
ALIVE_TIMER: 10
|
||||||
MAX_MISSED: 20
|
MAX_MISSED: 20
|
||||||
PEER_OPER: True
|
PEER_OPER: True
|
||||||
IPSC_MODE: DIGITAL
|
IPSC_MODE: DIGITAL
|
||||||
@ -185,7 +185,7 @@ DATA_CALL: True
|
|||||||
VOICE_CALL: True
|
VOICE_CALL: True
|
||||||
MASTER_PEER: {{IPSC_MASTER_PEER}}
|
MASTER_PEER: {{IPSC_MASTER_PEER}}
|
||||||
AUTH_ENABLED: False
|
AUTH_ENABLED: False
|
||||||
AUTH_KEY: {{IPSC_AUTH_KEY}}
|
AUTH_KEY:
|
||||||
# Below not used for a Master
|
# Below not used for a Master
|
||||||
MASTER_IP: {{IPSC_MASTER_IP}}
|
MASTER_IP: {{IPSC_MASTER_IP}}
|
||||||
MASTER_PORT: {{IPSC_MASTER_PORT}}
|
MASTER_PORT: {{IPSC_MASTER_PORT}}
|
||||||
|
@ -28,7 +28,7 @@ MAX_MISSED: 3
|
|||||||
[LOGGER]
|
[LOGGER]
|
||||||
LOG_FILE: /tmp/hblink.log
|
LOG_FILE: /tmp/hblink.log
|
||||||
LOG_HANDLERS: console-timed
|
LOG_HANDLERS: console-timed
|
||||||
LOG_LEVEL: INFO
|
LOG_LEVEL: DEBUG
|
||||||
LOG_NAME: HBlink
|
LOG_NAME: HBlink
|
||||||
|
|
||||||
# DOWNLOAD AND IMPORT SUBSCRIBER, PEER and TGID ALIASES
|
# DOWNLOAD AND IMPORT SUBSCRIBER, PEER and TGID ALIASES
|
||||||
@ -80,7 +80,7 @@ GROUP_HANGTIME: 5
|
|||||||
# Setting Loose to True relaxes the validation on packets received from the master.
|
# Setting Loose to True relaxes the validation on packets received from the master.
|
||||||
# This will allow HBlink to connect to a non-compliant system such as XLXD, DMR+ etc.
|
# This will allow HBlink to connect to a non-compliant system such as XLXD, DMR+ etc.
|
||||||
|
|
||||||
[HB_Bridge]
|
[DMRGATEWAY]
|
||||||
MODE: CLIENT
|
MODE: CLIENT
|
||||||
ENABLED: True
|
ENABLED: True
|
||||||
LOOSE: True
|
LOOSE: True
|
||||||
@ -96,7 +96,7 @@ RX_FREQ: {{HB_RX_FREQ}}
|
|||||||
TX_FREQ: {{HB_TX_FREQ}}
|
TX_FREQ: {{HB_TX_FREQ}}
|
||||||
TX_POWER: {{HB_TX_POWER}}
|
TX_POWER: {{HB_TX_POWER}}
|
||||||
COLORCODE: {{HB_COLORCODE}}
|
COLORCODE: {{HB_COLORCODE}}
|
||||||
SLOTS: {{HB_SLOTS}}
|
SLOTS: 3
|
||||||
LATITUDE: {{HB_LAT}}
|
LATITUDE: {{HB_LAT}}
|
||||||
LONGITUDE: {{HB_LON}}
|
LONGITUDE: {{HB_LON}}
|
||||||
HEIGHT: {{HB_HEIGHT}}
|
HEIGHT: {{HB_HEIGHT}}
|
||||||
|
@ -1,60 +1,12 @@
|
|||||||
#Dockerised IPSC <--> HomeBrew Protocol stack.
|
|
||||||
#
|
|
||||||
#For connecting Motorola repeaters to FreeDMR
|
|
||||||
#NB: If you get strange audio problems, try only
|
|
||||||
#enabling one timelot. This is a known issue
|
|
||||||
#with the current tools.
|
|
||||||
|
|
||||||
version: '3.3'
|
version: '3.3'
|
||||||
services:
|
services:
|
||||||
#Duplicate this section for each repeater
|
FreeDMR-Mytera:
|
||||||
#do docker-compose down and then docker-compose up -d in this
|
|
||||||
#directory afterwards to stop and start the containers
|
|
||||||
#you may need to do conntrack -F after the restart
|
|
||||||
FreeDMR-IPSC:
|
|
||||||
container_name: FreeDMR-IPSC
|
container_name: FreeDMR-IPSC
|
||||||
|
# volumes:
|
||||||
|
# - './DMRGateway.ini:/opt/hytera-stack/DMRGateway.ini'
|
||||||
ports:
|
ports:
|
||||||
#IPSC port - right side always stays the same (inside container), left side is
|
- '62005:62005/udp'
|
||||||
#the port you want to present on the outside.
|
- '62006:62006/udp'
|
||||||
#This is automatically mapped - docker uses iptables to do this
|
- '62007:62007/udp'
|
||||||
- '55000:55000/udp'
|
image: 'hacknix/freedmr:FreeDMR-IPSC'
|
||||||
environment:
|
|
||||||
#Configure IPSC side (IPSC_Bridge)
|
|
||||||
#True if we are the master
|
|
||||||
#False if we are connecting to an existing IPSC network
|
|
||||||
- IPSC_MASTER_PEER=True
|
|
||||||
#IP and Port only needed if the above is False
|
|
||||||
- IPSC_MASTER_IP=
|
|
||||||
- IPSC_MASTER_PORT=
|
|
||||||
#Which timeslots to forward
|
|
||||||
- IPSC_TS1=True
|
|
||||||
- IPSC_TS2=True
|
|
||||||
#DMR ID we use to talk to the IPSC network
|
|
||||||
#This should probably be the repeater server's SERVER_ID
|
|
||||||
- IPSC_RADIO_ID=2341
|
|
||||||
- IPSC_AUTH_KEY=
|
|
||||||
#Configure HBP (repeater) details (HB_Bridge)
|
|
||||||
- HB_CALLSIGN=
|
|
||||||
- HB_RADIO_ID=
|
|
||||||
- HB_RX_FREQ=
|
|
||||||
- HB_TX_FREQ=
|
|
||||||
- HB_TX_POWER=
|
|
||||||
- HB_COLORCODE=
|
|
||||||
- 'HB_LAT='
|
|
||||||
- 'HB_LON=-'
|
|
||||||
- HB_HEIGHT=
|
|
||||||
- HB_LOCATION=
|
|
||||||
#Which slots to enable:
|
|
||||||
# 1 = 1, 2 = 2, 3 = both
|
|
||||||
# Note there are some issues with both slots
|
|
||||||
# at this time.
|
|
||||||
# Slot 2 is setup to work with dial-a-tg **only**
|
|
||||||
- HB_SLOTS=1
|
|
||||||
#Configure Repeater server side (DMRGateway)
|
|
||||||
#Put an Options line here to configure static TGs etc
|
|
||||||
- 'DMRG_OPTIONS='
|
|
||||||
#Target server
|
|
||||||
- DMRG_TARGET=
|
|
||||||
image: 'hacknix/freedmr-ipsc:latest'
|
|
||||||
#Container will persist over reboots
|
|
||||||
restart: "unless-stopped"
|
restart: "unless-stopped"
|
||||||
|
@ -9,8 +9,6 @@ sed -i "s/{{IPSC_MASTER_PEER}}/$IPSC_MASTER_PEER/" /opt/dmrlink.cfg
|
|||||||
sed -i "s/{{IPSC_TS1}}/$IPSC_TS1/" /opt/dmrlink.cfg
|
sed -i "s/{{IPSC_TS1}}/$IPSC_TS1/" /opt/dmrlink.cfg
|
||||||
sed -i "s/{{IPSC_TS2}}/$IPSC_TS2/" /opt/dmrlink.cfg
|
sed -i "s/{{IPSC_TS2}}/$IPSC_TS2/" /opt/dmrlink.cfg
|
||||||
sed -i "s/{{IPSC_RADIO_ID}}/$IPSC_RADIO_ID/" /opt/dmrlink.cfg
|
sed -i "s/{{IPSC_RADIO_ID}}/$IPSC_RADIO_ID/" /opt/dmrlink.cfg
|
||||||
sed -i "s/{{IPSC_AUTH_KEY}}/$IPSC_AUTH_KEY/" /opt/dmrlink.cfg
|
|
||||||
|
|
||||||
|
|
||||||
sed -i "s/{{HB_CALLSIGN}}/$HB_CALLSIGN/" /opt/hblink.cfg
|
sed -i "s/{{HB_CALLSIGN}}/$HB_CALLSIGN/" /opt/hblink.cfg
|
||||||
sed -i "s/{{HB_RADIO_ID}}/$HB_RADIO_ID/" /opt/hblink.cfg
|
sed -i "s/{{HB_RADIO_ID}}/$HB_RADIO_ID/" /opt/hblink.cfg
|
||||||
@ -22,9 +20,8 @@ sed -i "s/{{HB_LAT}}/$HB_LAT/" /opt/hblink.cfg
|
|||||||
sed -i "s/{{HB_LON}}/$HB_LON/" /opt/hblink.cfg
|
sed -i "s/{{HB_LON}}/$HB_LON/" /opt/hblink.cfg
|
||||||
sed -i "s/{{HB_HEIGHT}}/$HB_HEIGHT/" /opt/hblink.cfg
|
sed -i "s/{{HB_HEIGHT}}/$HB_HEIGHT/" /opt/hblink.cfg
|
||||||
sed -i "s/{{HB_LOCATION}}/$HB_LOCATION/" /opt/hblink.cfg
|
sed -i "s/{{HB_LOCATION}}/$HB_LOCATION/" /opt/hblink.cfg
|
||||||
sed -i "s/{{HB_SLOTS}}/$HB_SLOTS/" /opt/hblink.cfg
|
sed -i "s/{{HB_OPTIONS}}/$HB_OPTIONS/" /opt/hblink.cfg
|
||||||
|
|
||||||
sed -i "s/{{DMRG_OPTIONS}}/$DMRG_OPTIONS/" /opt/DMRGateway.ini
|
|
||||||
sed -i "s/{{DMRG_TARGET}}/$DMRG_TARGET/" /opt/DMRGateway.ini
|
sed -i "s/{{DMRG_TARGET}}/$DMRG_TARGET/" /opt/DMRGateway.ini
|
||||||
|
|
||||||
#Run processes
|
#Run processes
|
||||||
|
Loading…
x
Reference in New Issue
Block a user