panel-management(1)
| PANEL-MANAGEMENT(1) | User Commands | PANEL-MANAGEMENT(1) |
NAME
panel-management - manage Promethean and NexTouch interactive panels
SYNOPSIS
panel-management [command] [-p type] [-n number] [-c cmd] [-v value] [-f] [--autostart] [--no-autostart] [--autostart-all] [--no-autostart-all] [--nextouch-ip address]
DESCRIPTION
panel-management controls Promethean and NexTouch interactive panels. It can send commands over the network, print a numbered list of available commands, set up a network interface for use with a panel, manage the utility's autostart, and open a graphical user interface.
When launched without arguments, the program opens a graphical user interface with a table of available commands and places an icon in the system tray. Minimising the window hides it to the tray; closing the window exits the program. Right-clicking the tray icon opens a menu with "Show window", "Select source", "Change panel type", "Add to autostart" / "Remove from autostart" and "Quit".
When launched with at least one argument, it runs in console mode and parses its arguments with the argparse(3) module. The console mode is independent of the graphical subsystem and works fully over ssh, including setup and setup with autostart flags.
ARGUMENTS
- help, list, setup, run
- The command to execute. Required when the program is launched with arguments. One of:
- help
- Print a short usage summary to standard output and exit. Does not require a panel type.
- list
- Print a numbered list of available commands for the selected panel type. If -p is not given, prints `Укажите тип панели.' and exits with status 0.
- setup
- Configure a network interface for use with a Promethean panel, or manage the utility's autostart.
- Autostart management (the --autostart, --no-autostart, --autostart-all, --no-autostart-all flags) is available for both panel types. Network configuration without autostart flags is only available for Promethean panels (-p 0).
- Without autostart flags the command configures the network. It runs without interactive input: finds two Ethernet interfaces (a regular one and a USB Ethernet one, whose name contains u), and if the USB interface has no connection, creates one named Android with address 192.168.254.253/24. If both interfaces already have connections, nothing is changed. The result is printed to standard output. When -f is given, the existing Android connection is deleted and recreated.
- With --autostart the command enables autostart for the current user with an active X session: creates ~/.config/autostart/panel-management.desktop owned by the user with mode 0644. When launched from root, the target user is resolved via get_current_user_on_x(3); if there is no active X session, the command does nothing and reports this.
- With --no-autostart the command disables autostart for the current user by writing the string Hidden=true into ~/.config/autostart/panel-management.desktop. This overrides the system autostart per the XDG specification and guarantees that autostart will not run, even if a system file appears later. The user's file is not removed.
- With --autostart-all the command enables autostart for all users of the device: creates /etc/xdg/autostart/panel-management.desktop owned by root with mode 0644. Requires root.
- With --no-autostart-all the command disables autostart for all users: deletes /etc/xdg/autostart/panel-management.desktop. Requires root.
- All four autostart flags are mutually exclusive and do not trigger network configuration. See the NOTES section for network configuration requirements.
- run
- Send a command to the panel. Requires either -c or -n. For commands that require a numeric parameter (brightness, volume, etc.), -v must also be given.
OPTIONS
- -p, --panel-type type
- Panel type. Must be one of:
- 0 — Promethean
- 1 — NexTouch
- Required for every command except help.
- -n, --number number
- Number of the command to execute on the panel (the position of the command in the list produced by list). Used with the run command.
- -c, --cmd cmd
- Command string to execute on the panel. Used with the run command.
- -v, --value value
- Numeric parameter for commands that require one (brightness, volume, etc.). Required for the fixed set of such commands; for all other commands, passing -v results in an error. Used with the run command.
- -f, --force
- For the setup command: forcibly reconfigure the Android interface (id Android, address 192.168.254.253/24) even if a connection already exists. Passing -f with any other command results in an error.
- --autostart
- For the setup command: enable autostart for the current user with an active X session. Creates ~/.config/autostart/panel-management.desktop containing Exec=panel-management --tray. The file is owned by the user, mode 0644. No Hidden line is written; its absence means the autostart is active. When launched from root, the target user is resolved via get_current_user_on_x(3); if there is no active X session, the command does nothing and prints a message. Passing --autostart with any other command than setup results in an error.
- --no-autostart
- For the setup command: disable autostart for the current user by writing the string Hidden=true into ~/.config/autostart/panel-management.desktop. This overrides the system autostart for this user per the XDG specification and guarantees that autostart will not run, even if a system file appears later. The user's file is not removed. Passing --no-autostart with any other command than setup results in an error.
- --autostart-all
- For the setup command: enable autostart for all users of the device. Creates /etc/xdg/autostart/panel-management.desktop owned by root with mode 0644. Requires root: when launched from a non-root user, the command fails with a message and changes nothing. Passing --autostart-all with any other command than setup results in an error.
- --no-autostart-all
- For the setup command: disable autostart for all users. Deletes /etc/xdg/autostart/panel-management.desktop. Requires root. If the file is absent, the command succeeds and prints a corresponding message. Passing --no-autostart-all with any other command than setup results in an error.
- --tray
- Service flag. Starts the utility in graphical mode immediately minimised to the tray, without showing the main window. If a panel type is stored in the config, the panel type dialog is not shown; otherwise the regular dialog appears, and after selection the window remains visible. Used by the autostart file; normally not invoked manually.
- --nextouch-ip address
- IP address of the NexTouch panel (not the OPS module). Required for all NexTouch commands except list and help. The address is validated as a strict dotted IPv4 (four octets 0–255, no leading zeros) and additionally via IPy(3) before any command is sent; an invalid address causes the program to abort with an error.
- -h, --help
- Show a short usage summary produced by argparse(3) and exit. This is the built-in argparse help, not the help command.
EXAMPLES
- List commands for a Promethean panel:
- panel-management list -p 0
- Send command number 5 with value 75 to a Promethean panel:
- panel-management run -p 0 -n 5 -v 75
- Send an explicit command to a NexTouch panel:
- panel-management run -p 1 --nextouch-ip 192.168.1.10 -c 6B303173503230300D
- Configure a network interface over ssh, without prompts:
- panel-management setup -p 0
- Forcibly reconfigure the Android connection:
- panel-management setup -p 0 -f
- Enable autostart for the current user with an X session (over ssh from root):
- panel-management setup -p 0 --autostart
- Disable autostart for the current user:
- panel-management setup -p 0 --no-autostart
- Enable autostart for all users of the device (root only):
- sudo panel-management setup -p 0 --autostart-all
- Disable autostart for all users of the device:
- sudo panel-management setup -p 0 --no-autostart-all
EXIT STATUS
- 0
- Success. Also returned by list without -p and by help.
- 2
- Invalid command-line arguments, reported either by argparse(3) or by the internal argument validation.
- other
- setup propagates the exit status of nmcli(1) when configuring the network; a non-zero value indicates that the network could not be configured. When managing autostart, a non-zero value indicates a failure (no permissions, no user with an X session, file write error).
FILES
- promethean_commands
- Command list for Promethean panels. Each non-empty line has the form code;translation[;codes]. The optional third field is a Python dictionary literal that maps raw panel responses to human-readable messages.
- nexttouch_commands
- Command list for NexTouch panels. Same format, but without English commands description for NexTouch.
- ~/.config/panel-management/config.ini
- User configuration. Stores the selected panel type (panel_type) and the NexTouch IP address (nextouch_ip). Created automatically on first panel selection in the graphical interface or when adding the utility to autostart. Used with --tray to avoid showing the panel type dialog.
- /etc/xdg/autostart/panel-management.desktop
- System autostart file for all users of the device. Created by panel-management setup -p 0 --autostart-all as root. Contains Exec=panel-management --tray. Mode 0644, owner root:root.
- ~/.config/autostart/panel-management.desktop
- User autostart file. Created by panel-management setup -p 0 --autostart or from the tray menu. Overrides the system file per the XDG specification. The command panel-management setup -p 0 --no-autostart writes Hidden=true into this file, disabling autostart for the user regardless of whether a system file exists.
NOTES
The utility sends Promethean commands over UDP to 192.168.254.254:8903 and listens for replies on 192.168.254.253:8904. NexTouch commands are sent over TCP to port 4660 of the panel specified by --nextouch-ip, using nc(1) under the hood.
- setup
- requires, when configuring the network:
- at least two Ethernet interfaces visible to nmcli(1);
- nmcli and a working NetworkManager;
- sudo to apply the changes (console mode);
- pkexec to apply the changes (graphical mode).
- If fewer than two interfaces are found, the command prints an error and exits without changing anything. Autostart flags need neither nmcli nor interfaces.
- Autostart applies to the user who has a running X session. When the
- command is launched from root, the target user is resolved via get_current_user_on_x(3). If there is no active X session, the user flags (--autostart, --no-autostart) do nothing and print a message.
- NexTouch panels cannot be configured with
- setup; use list and run instead. This is enforced by the program before any command is executed.
- The Android interface is recognised by the letter
- u in the device name (USB Ethernet, for example enp0s20f0u3). This is a heuristic, but it works reliably on typical MosTech configurations.
- Only one instance of the utility may run in graphical mode. A second
- launch (for example, manually while autostart is already running) prints a message and exits.
SEE ALSO
AUTHOR
MosTech Team
| 2026 | panel-management 2.2 |
