-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dynamic branding color for different build types #5166
base: master
Are you sure you want to change the base?
Conversation
Co-Authored-By: Rebecca DeField <contactme@rebeccadefield.com>
Some tasks I'd like to add to this PR (feel free to move them to the original description if you wish). Edited, moved to original postBefore this is merged
After this is merged
|
Edit: Shellcheck is passing so I guess we're OK there. 👍 |
Probably not much. You don't need to deal with the Qt SVG module directly to load and render SVG files. The new spectrum analyzer plugin already uses SVG via |
@PhysSong would your recommend tackling it in this PR? I can switch the splash and icons to use the SVG resources, but I also wonder if it would be better for another PR? |
Switched to tabs via 6a49f11 to match other CMake files. |
# Handle custom branding | ||
INSTALL(FILES "${CMAKE_BINARY_DIR}/cmake/branding/png/splash.png" DESTINATION "${LMMS_DATA_DIR}/themes/default" OPTIONAL) | ||
INSTALL(FILES "${CMAKE_BINARY_DIR}/cmake/branding/png/icon_32x32.png" DESTINATION "${LMMS_DATA_DIR}/themes/default" RENAME icon_small.png OPTIONAL) | ||
INSTALL(FILES "${CMAKE_BINARY_DIR}/cmake/branding/png/icon_128x128.png" DESTINATION "${LMMS_DATA_DIR}/themes/default" RENAME icon.png OPTIONAL) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Upon re-review, these should probably be moved back to cmake/branding/CMakeLists.txt
. I had thought it was needed due to an order of operations problem, but after re-reviewing, it was more likely a CMake caching issue.
Done via 94f742c. TODO . Still need to write Linux files, test various installers. |
For what we need to use SVG resources: #5160 (comment) |
What else is needed to be done on this PR? |
I need to finalize the Linux stuff. |
Any thoughts on writing a fallback for Gimp? Turns out it's completely possible and I figure most MSVC devs would have Gimp installed locally (and perhaps |
Sounds good. |
Initial support written in c2a9b42. It still requires some conditional handling, maybe even a wrapper to handle the various tools. I'm not sure if it will be capable of generating a multi-res |
@tresf Is this abandoned? |
Not abandoned, just on hold due to personal resource constraints. |
@tresf What are the remaining tasks for this PR? Are there anything that I may help? |
The TODO is pretty up-to-date. I was hoping to use Gimp as a rendering engine on machines without the standard build tools (e.g. MSVC). This is a pretty esoteric task though... https://superuser.com/a/1545028/443147 (Gimp was chosen because it's a very common Desktop app for Windows developers, but one which can technically pull this off through a batch process) The other tasks are simply testing and fixing any logical fall throughs (mostly the handling of changing build types between compiles, something that's probably a buggy process anyway). Edit: Probably worth noting, Microsoft has since dropped the Windows 8-style "tile" icons, so these can probably be pulled from the PR (e.g. |
Coming back to this after a few years with the hope of actually finishing what I started. I don't know much about cmake, and I think once that got introduced (which was correct) I let responsibility fall on Tres. That wasn't very considerate of me since he has much more important things to worry about than gui colors lmao. I'd like to give this another shot, this time with the intention of actually learning cmake myself. It looks like in the time since this was last touched, the way Apple builds are handled have been fundamentally changed, Windows 8 tiles have already been dropped, and some headway has been made on using SVG resources directly in LMMS. I'll post another update once I've read some docs and have any idea what I'm looking at. |
We have this now since #7667. I'm not sure how much this will help this effort.
Yes! Our packaging is completely different now and we actually are using Windows for builds now (they'll likely become our default windows installers in the not-so-distant future), so the concerns about tooling on Windows are more valid than ever. So I think the next step is to cherry-pick the parts of this PR that work, but try to make it more organized so that files like |
Adds scripts that, if run, change the color of the branding to indicate unstable builds.
cmake
bash
and other command-line tools aren't available (Windows compatibility, see issues below)❓ Optional
svg
resources directly in LMMS (would require significant effort, documentation)cmake
to increase cross-platform compatibility (big task)❌ Issues
msvc
build environment not handled at all. Windows does not have the tools required to render.svg
files without some significant setup..ico
files can be produced withgimp
from a set of.png
images, though.msvc
builds will default to the existing default green raster resources.Previews (as of 2019-09-15)