github bassidus/lgpowercontrol v4.0.2

one hour ago

A small bugfix release, and the fix matters most when updating: on most distributions the background TV monitor kept running the previous version's code until the computer was rebooted. If you updated to 4.0.1 without rebooting afterwards, you were still getting 4.0's behaviour.

Updating from 4.0 or 4.0.1 keeps your settings and TV pairing:

cd lgpowercontrol
git pull
sudo ./install.py

Fixed

  • Updating did not restart the background service. After updating, the TV monitor carried on running the code it started with, until the next reboot. Nothing indicated this had happened.
  • Uninstalling left parts of the installation behind. The TV monitor kept running, and the services' startup entries stayed in place, pointing at files that had just been removed.

Both affected the ordinary distributions — Arch, Fedora, Mint, Ubuntu and the like. Immutable ones such as Bazzite and Silverblue were not affected by either.


Repeated from 4.0.1

The last three releases came within hours of each other, so here are 4.0.1 and 4.0 again in full.

A bugfix release. Four of these were introduced in 4.0 itself: three of them made 4.0 unusable on immutable, SELinux-enforcing distributions such as Bazzite, and the fourth affected every distribution. If 4.0 is working for you today, the last one is still worth updating for.

Updating from 4.0 keeps your settings and TV pairing:

cd lgpowercontrol
git pull
sudo ./install.py

Fixed

  • The installer could not run at all on immutable distributions — Bazzite, Silverblue and other ostree-based systems. It stopped with a read-only filesystem error before installing anything, and uninstalling failed the same way.
  • Turning the TV off when the computer suspends silently never happened on distributions with SELinux enforcing. There was no error and nothing in the system log to indicate it; the TV simply stayed on until its own no-signal timeout. This affected Fedora Workstation and Silverblue as well as Bazzite. Machines with Wake-on-LAN enabled on their network card were unaffected, because a different part of the program handles suspend for them.
  • The TV control could not start from the network hook on distributions with SELinux enforcing, because the installed files were given the wrong security labels.
  • Every command reported success regardless of what happened. lgpowercontrol STATUS exited 0 even when the TV could not be reached, TV authorization reported "TV authorization OK!" against a TV that was never there, and a pairing key the TV had rejected was never cleared, so re-pairing could not fix itself. This one affected every distribution, and any script checking the exit code.

Repeated from 4.0

The two releases came close together, so here is 4.0's changelog again in full.

Updating works differently from now on. The built-in lgpowercontrol update command has been removed, so 4.0 was the last release your installation can fetch for you. Settings and TV pairing carry over automatically when you update to it. After that, updating means pulling the repository and running the installer:

git clone https://github.com/bassidus/lgpowercontrol.git
cd lgpowercontrol
nano lgpowercontrol.conf
sudo ./install.py

Removed

  • lgpowercontrol update, along with the daily update check and its notification.
  • The standalone lgpowercontrol-wol, lgpowercontrol-authorize and lgpowercontrol-update commands. The first two are subcommands now: lgpowercontrol wol, lgpowercontrol authorize. Scripts calling the old names need updating.

Changed

  • The installation no longer runs from a Python virtual environment. It is an ordinary package directory under the system Python, so an operating system upgrade to a new Python version can no longer leave the installation unable to start. This affects rolling-release distributions as much as immutable ones.
  • /opt/lgpowercontrol/lgpowercontrol.conf is now replaced by the repository's copy on every install, which makes reinstalling a way to repair a damaged configuration file. Edit the copy in your clone and reinstall, rather than editing the installed one.
  • The installer now checks the machine before installing: leftovers from older versions are removed automatically, and it stops if LG_Buddy is present, since the two cannot share a machine.
  • Uninstalling no longer asks about Wake-on-LAN on your network card. Change it with sudo lgpowercontrol wol --enable or --disable.

Fixed

  • A 404 no such service or method reply from the TV crashed the command instead of being reported as an error.
  • lgpowercontrol ON and OFF printed a traceback when run without sudo. They now degrade quietly, so the commands stay usable by hand.

Note for installations older than 3.0

Updating straight to this release is supported: your settings and pairing key are carried across. Once it is installed you will no longer have the old update command, so keep the clone instructions above.

Don't miss a new lgpowercontrol release

NewReleases is sending notifications on new releases.