From 00be18b1f1f7d325c88bc90c09cde0926c78bd28 Mon Sep 17 00:00:00 2001 From: Hermes Agent service account Date: Sat, 1 Aug 2026 21:58:42 -0500 Subject: [PATCH] jmri: move udev symlinks to /dev/jmri-* (flat, JMRI-enumerable) /dev/jmri/ subdirectory is invisible to JMRI's device scanner. Symlinks must live directly in /dev to appear in the port dropdown. --- ansible/roles/jmri/tasks/main.yml | 6 ------ ansible/roles/jmri/templates/99-jmri-devices.rules.j2 | 7 ++++--- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/ansible/roles/jmri/tasks/main.yml b/ansible/roles/jmri/tasks/main.yml index ef86261..dd2d200 100644 --- a/ansible/roles/jmri/tasks/main.yml +++ b/ansible/roles/jmri/tasks/main.yml @@ -47,12 +47,6 @@ # Phase 1 — Stable USB device symlinks # Creates /dev/jmri/loconet and /dev/jmri/nce via udev ID_SERIAL matching. # --------------------------------------------------------------------------- -- name: Create /dev/jmri directory (udev will populate it) - ansible.builtin.file: - path: /dev/jmri - state: directory - mode: '0755' - - name: Deploy udev rules for JMRI USB devices ansible.builtin.template: src: 99-jmri-devices.rules.j2 diff --git a/ansible/roles/jmri/templates/99-jmri-devices.rules.j2 b/ansible/roles/jmri/templates/99-jmri-devices.rules.j2 index 2e4eeba..7290ef8 100644 --- a/ansible/roles/jmri/templates/99-jmri-devices.rules.j2 +++ b/ansible/roles/jmri/templates/99-jmri-devices.rules.j2 @@ -1,10 +1,11 @@ # JMRI USB device symlinks — managed by Ansible, do not edit manually. -# Creates stable /dev/jmri/* symlinks regardless of USB enumeration order. +# Creates stable /dev/jmri-* symlinks at the top level of /dev so JMRI +# can enumerate them alongside real tty devices. # LocoNet interface — RR-CirKits LocoBuffer-NG (Microchip CDC) SUBSYSTEM=="tty", ENV{ID_SERIAL}=="RR-CirKits_LocoBuffer-NG_CDC_ACM_SERIAL_DEVICE_AA5700218A", \ - SYMLINK+="jmri/loconet", MODE="0666" + SYMLINK+="jmri-loconet", MODE="0666" # NCE Power Pro command station (FTDI FT232) SUBSYSTEM=="tty", ENV{ID_SERIAL}=="ftdi_usb_serial_converter_ftDYQHZX", \ - SYMLINK+="jmri/nce", MODE="0666" + SYMLINK+="jmri-nce", MODE="0666"