PnP - This is a WiP. Set shell to /bin/bash for new users; Added radio model to Conky display; Added initial rigctld wrapper script; Added active-radio command to et-system-info; Fixed missing ET_HOME env variable in rigctld wrapper; Added et user; Added CAT controller installer

This commit is contained in:
Gaston Gonzalez
2024-10-10 04:37:22 -07:00
parent 7ed2c3a79b
commit 48ebdf1d9e
9 changed files with 61 additions and 18 deletions
+1 -1
View File
@@ -7,7 +7,7 @@
# The DSHELL variable specifies the default login shell on your
# system.
#DSHELL=/bin/bash
DSHELL=/bin/bash
# The DHOME variable specifies the directory containing users' home
# directories.
+6 -4
View File
@@ -17,15 +17,17 @@ conky.config = {
};
conky.text = [[
${font DejaVu Sans Mono:size=14}${alignc}${time %A, %B %d %Y}
${font DejaVu Sans Mono:size=12}${alignc}${time %A, %B %d %Y}
Local: ${alignr}${time %H:%M:%S}
UTC: ${alignr}${tztime UTC %H:%M:%S}
Uptime: ${uptime}
IP: ${execpi 60 /opt/emcomm-tools/bin/et-system-info ip}
${execp /opt/emcomm-tools/bin/et-system-info release}
CAT: ${execpi 15 /opt/emcomm-tools/bin/et-system-info et-cat}
GPS: ${execpi 15 /opt/emcomm-tools/bin/et-system-info et-gps}
Radio: ${execpi 10 et-system-info active-radio}
CAT : ${execpi 10 et-system-info et-cat}
GPS : ${execpi 10 et-system-info et-gps}
${font DejaVu Sans Mono:size=10}${alignc}${execp /opt/emcomm-tools/bin/et-system-info release}
]];
+5 -3
View File
@@ -1,6 +1,6 @@
# Author : Gaston Gonzalez
# Date : 28 September 2024
# Updated : 5 October 2024
# Updated : 9 October 2024
# Purpose : udev rules for the Icom IC-705
#
# Preconditions:
@@ -9,6 +9,7 @@
# Postconditions:
# 1. /dev/et-cat created
# 2. /dev/et-gps created
# 3. rigctld is started
#
# Resources
# - https://www.florian-wolters.de/posts/ic705-serial-device-symlinks/
@@ -21,12 +22,13 @@ KERNEL=="ttyACM[0-9]*", SUBSYSTEM=="tty", ATTRS{product}=="IC-705", \
# Create consistent device name/path for the CAT serial device
ENV{ET_DEVICE}=="IC-705", SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="00", \
ACTION=="add", \
ENV{ET_SUBDEVICE}="CAT", GROUP="dialout", MODE="0660", SYMLINK+="et-cat"
ENV{ET_SUBDEVICE}="CAT", GROUP="dialout", MODE="0660", SYMLINK+="et-cat", \
RUN+="/opt/emcomm-tools/sbin/wrapper-rigtctld.sh start"
# Create consistent device name/path for the GPS serial device
ENV{ET_DEVICE}=="IC-705", SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="02", \
ACTION=="add", \
ENV{ET_SUBDEVICE}="GPS", GROUP="dialout", MODE="0660", SYMLINK+="et-gps", \
RUN+="/opt/emcomm-tools/sbin/wrapper-gpsd.sh start"
RUN+="/usr/bin/systemctl start rigctld"
# TODO: Add rules for sound card
@@ -0,0 +1,12 @@
[Unit]
Description=rigctld service
ConditionPathExists=/dev/et-cat
After=multi-user.target
[Service]
User=et
ExecStart=/opt/emcomm-tools/sbin/wrapper-rigtctld.sh start
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
+13 -4
View File
@@ -2,14 +2,16 @@
#
# Author : Gaston Gonzalez
# Date : 6 October 2024
# Updated : 10 October 2024
# Purpose : Utility script for dumping system information
function usage() {
echo "Usage: $(basename $0) <command>"
echo " et-cat - Is CAT control connected"
echo " et-gps - Is the GPS connected"
echo " ip - System IP address"
echo " release - EmComm Tools Release"
echo " active-radio - Display model of active radio"
echo " et-cat - Is CAT control connected"
echo " et-gps - Is the GPS connected"
echo " ip - System IP address"
echo " release - EmComm Tools Release"
}
if [ $# -ne 1 ]; then
@@ -18,6 +20,13 @@ if [ $# -ne 1 ]; then
fi
case $1 in
active-radio)
if [ -L "${ET_HOME}/conf/radios.d/active-radio.json" ]; then
cat /opt/emcomm-tools/conf/radios.d/active-radio.json | jq -r .model
else
echo "None"
fi
;;
et-cat)
if [ -e /dev/et-cat ]; then echo "Yes"; else echo "No"; fi
;;
@@ -4,20 +4,21 @@
# Date : 9 October 2024
# Purpose : Wrapper startup/shutdown script around systemd/rigctld
ET_HOME=/opt/emcomm-tools
ACTIVE_RADIO="${ET_HOME}/conf/radios.d/active-radio.json"
CAT_DEVICE=/dev/et-cat
do_full_auto() {
et-log "Found ET_DEVICE=$ET_DEVICE"
et-log "Found ET_DEVICE='${ET_DEVICE}'"
case "$1" in
IC-705)
echo "Automatically configuring $1.."
echo "Automatically configuring $1..."
if [ -L ${ACTIVE_RADIO} ]; then
rm -v ${ACTIVE_RADIO}
fi
ln -v -s /opt/emcomm-tools/conf/radios.d/icom-ic705.json ${ACTIVE_RADIO}
ln -v -s ${ET_HOME}/conf/radios.d/icom-ic705.json ${ACTIVE_RADIO}
;;
*)
et-log "Full auto configuration not available for ET_DEVICE=$1"
@@ -40,7 +41,7 @@ start() {
fi
if [ ! -L ${ACTIVE_RADIO} ]; then
et-log "No active defined. ${ACTIVE_RADIO} symlink is missing."
et-log "No active radio defined. ${ACTIVE_RADIO} symlink is missing."
exit 1
fi