Compare commits

...

9 Commits

Author SHA1 Message Date
1f6774612b Delete rigctld/Dockerfile
go away
2025-12-15 13:56:11 +00:00
Evan H // KC2IHX
6432092210 doot doot dooo - fixing my bad rebase 2025-12-15 05:54:12 -08:00
Evan H // KC2IHX
7ec96c0718 something something fixing branches 2025-11-30 09:43:24 -08:00
Evan H // KC2IHX
062518b922 remove wrong dockerfile 2025-11-30 09:41:47 -08:00
Evan H // KC2IHX
c1c00a2267 moved dockerfile for rigctld, added config stubs 2025-11-30 09:39:48 -08:00
Evan H // KC2IHX
635a199ed5 moved dockerfile for rigctld container build 2025-11-30 08:36:37 -08:00
Evan H // KC2IHX
c297fae2fb .env file missed 2025-11-30 06:39:03 -08:00
Evan H // KC2IHX
92f192cc1a setting up rigctld 2025-11-30 06:38:37 -08:00
Evan H // KC2IHX
67dfcf3db9 added more stuff 2025-11-29 18:00:19 -08:00
6 changed files with 93 additions and 47 deletions

7
.env
View File

@@ -1,3 +1,7 @@
#general settings
STATION_CALL="N0CALL"
NODENAME="NOWHR"
#rigctld settings #rigctld settings
RIG_MODEL="" RIG_MODEL=""
RIG_DEVICE="" RIG_DEVICE=""
@@ -8,4 +12,5 @@ PTT_METHOD=""
DIREWOLF_PORT= DIREWOLF_PORT=
ALSA_DEVICE= ALSA_DEVICE=
#linbpq settings
# these get messy...

View File

@@ -24,4 +24,4 @@ Assumptions:
Purpose: Purpose:
- Learn something about these new fangled containers - Learn something about these new fangled containers
- implement a method to get a FARPN node easily stood up, but not necessarily targeted at new users. - implement a method to get a FARPN node easily stood up, but not necessarily targeted at new users.
- - have a easy to spin up FARPN stack to run tests and configurations with

View File

@@ -2,50 +2,53 @@ version: '0.1'
services: services:
rigctld: rigctld:
build: build:
context: . context: ./rigctld
dockerfile_inline: # args:
FROM debian # - GIT_RELEASE: abcdef
RUN ... platforms:
- "linux/arm64"
# network: host
container_name: rigctld container_name: rigctld
# group_add: dialout
devices: devices:
- "/dev/snd:/dev/snd"
- "/dev/ttyUSB:/dev/ttyUSB0" - "/dev/ttyUSB:/dev/ttyUSB0"
ports: 4534:4534 ports: 4534:4534
direwolf: command: rigctld $RIGCTLD_ARGS
container_name: direwolf # direwolf:
depends_on: # container_name: direwolf
- rigctld # depends_on:
ports: # - rigctld
8000:8000 # devices:
linbpq: # - "/dev/snd:/dev/snd"
build: # group-add:
context: . # - dialout
dockerfile_inline: # - audio
FROM debian # ports:
RUN ... # 8000:8000
container_name: bpq # linbpq:
depends_on: # container_name: bpq
- direwolf # depends_on:
secrets: # - direwolf
bbs-password: # secrets:
environment: BBSPASS # bbs-password:
admin-password: # environment: BBSPASS
environment: ADMINPASS # admin-password:
volumes: # environment: ADMINPASS
- /var/linbpq # volumes:
ports: # - /var/linbpq
- "8000:8000" # ports:
- "8001:8001" # - "8000:8000"
expose: # - "8001:8001"
- "8001" # expose:
restart: unless-stopped # - "8001"
configs: # restart: unless-stopped
initial_config: #configs:
file: ./initial_settings.json # initial_config:
runtime_config: # file: ./initial_settings.json
file: ./runtime_settings.json # runtime_config:
volumes: # file: ./runtime_settings.json
bpq-data: #volumes:
networks: # bpq-data:
farpn-local: {} #networks:
farpn-ygg: {} # farpn-local: {}
# farpn-ygg: {}

0
config/udev-serial.rules Normal file
View File

0
config/udev-sound.rules Normal file
View File

38
rigctld/Containerfile Normal file
View File

@@ -0,0 +1,38 @@
# build rigctld
FROM debian:latest
RUN mkdir src
# this might be too much, but let's try it
RUN apt update
RUN apt install -y libconfig-dev autoconf libtool git gcc g++ make cmake libudev-dev libreadline-dev libusb-1.0-0-dev libavahi-common-dev libavahi-client-dev
# build hamlib/rigctld
FROM debian:latest AS farpn-base
# ENV DEBIAN_FRONTEND="noninteractive" TZ="Etc/UTC"
# this might be too much, but let's try it
RUN apt update
RUN apt update \
&& apt install -y build-essential libconfig-dev autoconf \
libtool git gcc g++ make cmake libudev-dev libusb-1.0-0-dev \
libavahi-common-dev libavahi-client-dev
# build hamlib/rigctld
FROM farpn-base AS rigctld-builder
RUN <<EOF
mkdir src
cd src
git clone --branch 4.6.5 --single-branch https://github.com/Hamlib/Hamlib.git
cd Hamlib
./bootstrap
./configure
make
EOF
FROM farpn-base AS rigctld
COPY --from=rigctld-builder /usr/local /usr/local
ENV LD_LIBRARY_PATH="/usr/local/lib"
CMD /bin/rigctld --model=$RIG_MODEL --rig-file=$RIG_DEVICE -serial-speed=$RIG_SPEED --port=$RIGCTLD_PORT $RIGCTLD_ARGS