Conversation
Publish a new package that contains all the themes in the repo for easy installing. This way we can quicky swap them around as needed without having to struggle to download them manually.
1a8772e to
a2b614c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
lcd4linux-ax206-themesas a separate optional Debian package containing 39 pre-built themes, 5 TrueType font families, and the newlcd4linux-themeCLIWorkingDirectory=/usr/share/lcd4linuxto the systemd service so relative paths in theme configs resolve correctly out of the boxlcd4linux-themeCLI for listing, applying, and tracking themes without manual config editingDetails
Previously, installing the package gave users a bare text-only config with no themes available. Using a theme required manually locating the config, background image, and fonts, copying everything into place, and hand-editing all paths to be absolute. because lcd4linux resolves resource paths relative to its working directory.
This PR fixes that end-to-end:
New package:
lcd4linux-ax206-themesKeeps themes and fonts (~17MB) out of the core package for users who don't need them. Depends on
lcd4linux-ax206.lcd4linux-themeCLI (/usr/bin/lcd4linux-theme):applycreates a timestamped backup of the existing config before overwriting, and restarts the service if it is running.Systemd service fix
WorkingDirectory=/usr/share/lcd4linuxis the key change that makes all theme configs work as-is — no path editing required. The defaultdpf_320x240.confis unaffected (it uses only the built-in bitmap font).Bugfix
Fixed a pre-existing typo in
themes/SimpleOrangeFall/dpf_simpleorangefall.confwhere the background image path referencedSimpleOarngeFallinstead ofSimpleOrangeFall, causing a silent render failure.Files changed
lcd4linux-themedebian/controllcd4linux-ax206-themespackage stanzadebian/lcd4linux-ax206-themes.installdebian/lcd4linux-ax206.dirs/usr/share/lcd4linuxexists in main packagedebian/lcd4linux-ax206.serviceWorkingDirectory, update error messagedebian/ruleschmod 0755for the scriptthemes/SimpleOrangeFall/dpf_simpleorangefall.confthemes/README.mdlcd4linux-themeusageREADME.mdwiki/theme_management.mdwiki/ax206_features.mdwiki/Home.md,wiki/_Sidebar.mdTest plan
lcd4linux-theme listprints all 39 themes with descriptionssudo lcd4linux-theme apply SimpleBluecopies config, creates backup, restarts servicelcd4linux-theme currentshowsSimpleBlueafter applydpkg-buildpackageproduces bothlcd4linux-ax206andlcd4linux-ax206-themesdebslcd4linux-ax206contains/usr/share/lcd4linux/(empty dir) but not themes/fontslcd4linux-ax206-themescontains themes, fonts, andlcd4linux-themebinaryWorkingDirectoryset; theme background and fonts render correctlydpf_320x240.confstill works on a system with onlylcd4linux-ax206installed (no themes package)