Fix inconsistent use between jinja-templating and nsis code
- Dominant language
- Python
- Stars
- 497
- Forks
- 181
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 17
Description
### Checklist
- [x] I added a descriptive title
- [x] I searched open requests and couldn't find a duplicate
### What is the idea?
In another issue it was [discussed](https://github.com/conda/constructor/pull/1105#discussion_r2525088958) that the NSIS templates contains a lot of inconsistencies between jinja-templating and NSIS code. Since NSIS and Jinja are used together, it would improve the code in terms of quality and readability if it was clearly defined in the codebase when we prefer to use Jinja vs NSIS logic. For example Jinja is preferred over NSIS when we work with for-loops, but there is also a lot of overlap between their functionality (if-statements for example).
We should clearly define how and when we want one or the other and update the code as necessary.
### Why is this needed?
Developers would mainly benefit from this feature because it would make it easier to work with the NSIS templates.
### What should happen?
1. Document when/where/how we want to use Jinja in the NSIS templates.
2. Update the code-base based on the documentation, or, if out of scope, create follow-up tickets.
### Additional Context
_No response_
Contributor guide
Research direction
Start by reviewing the NSIS templates and the linked discussion in pull request 1105 to identify the current overlap between Jinja and NSIS logic. Document when each should be used, then update the affected templates or create follow-up tickets for work that is out of scope.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100