Bug Description
The macro overlay hardcodes its source to 9999 (synthesizeMacroLoadOverlays()), which can collide (see texlive.spec](https://raw.githubusercontent.com/microsoft/azurelinux/refs/heads/4.0/specs/t/texlive/texlive.spec)
Reproduction Steps
- Move textlive to its own
*.comp.toml file
- Add
[components.texlive]
[components.texlive.build]
defines = { azl_poc_macro = "1" }
- Run
azldev comp render -p texlive
Expected behavior
Should add the macro file in a smart way that doesn't cause errors.
Actual behavior
17:09:41 INF Finishing rendered output count=1
17:09:41 ERR Failed to finish rendering component component=texlive error="mock processing failed for `texlive`:\nspectool failed: error: source 9999 defined multiple times"
17:09:41 ERR Some components failed to render errorCount=1 cancelledCount=0
Logs / Output
azldev comp render -p texlive 2>&1 | tee base/build/work/scratch/texlive-render.log | tail -40
17:08:02 INF Mock processor available mockConfig=/home/damcilva/repos/temp/azurelinux/distro/mock/azl4/stage2/azurelinux-4.0-x86_64.cfg
17:08:02 INF Preparing component sources count=1
17:08:02 INF Preparing component sources component=texlive
17:08:02 INF Getting component from git repo component=texlive upstreamComponent=texlive branch=f43 upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe snapshot=2026-02-24T00:00:00-08:00
17:08:02 INF Cloning git repo repoURL=https://src.fedoraproject.org/rpms/texlive.git
17:09:23 INF Using explicit upstream commit hash commitHash=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe
17:09:23 INF Checking out git commit commitHash=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe
17:09:23 INF Applying overlays component=texlive
17:09:24 INF Current fingerprint differs from HEAD lock file; adding dirty entry lockFile=locks/texlive.lock
17:09:25 INF Bumping static release component=texlive oldRelease=80%{?dist} newRelease=82%{?dist} commitCount=2
17:09:25 INF Creating synthetic commit commit=1 total=2 projectHash=5d461a2449294d42c9b47ed04ad3d5935d8ce244 upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe isLast=false
17:09:25 INF Creating synthetic commit commit=2 total=2 projectHash=dirty upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe isLast=true
17:09:25 INF Interleaved synthetic history complete syntheticCommits=2 totalCommits=3
17:09:25 INF Initializing mock chroot for rendering
17:09:37 INF Mock chroot ready for rendering
17:09:37 INF Batch processing components in mock chroot count=1
17:09:37 INF Processing specs in mock chroot count=1
17:09:41 INF Finishing rendered output count=1
17:09:41 ERR Failed to finish rendering component component=texlive error="mock processing failed for `texlive`:\nspectool failed: error: source 9999 defined multiple times"
17:09:41 ERR Some components failed to render errorCount=1 cancelledCount=0
╭───────────┬──────────────────────────────────────────────────────┬────────┬────────────────────────────────────────────────────────────┬─────────╮
│ COMPONENT │ OUTPUT │ STATUS │ ERROR │ CHANGED │
├───────────┼──────────────────────────────────────────────────────┼────────┼────────────────────────────────────────────────────────────┼─────────┤
│ texlive │ /home/damcilva/repos/temp/azurelinux/specs/t/texlive │ error │ mock processing failed for `texlive`: │ false │
│ │ │ │ spectool failed: error: source 9999 defined multiple times │ │
╰───────────┴──────────────────────────────────────────────────────┴────────┴────────────────────────────────────────────────────────────┴─────────╯
azldev version
╭────────────┬──────────────────────────────────────╮
│ version │ v0.1.1-0.20260520162735-44f81cce609a │
│ gitCommit │ N/A │
│ goVersion │ go1.26.3 │
│ platform │ linux/amd64 │
│ compiler │ gc │
│ buildDate │ N/A │
│ commitDate │ N/A │
│ dirtyBuild │ false │
╰────────────┴──────────────────────────────────────╯
Environment
Bug Description
The macro overlay hardcodes its source to
9999(synthesizeMacroLoadOverlays()), which can collide (see texlive.spec](https://raw.githubusercontent.com/microsoft/azurelinux/refs/heads/4.0/specs/t/texlive/texlive.spec)Reproduction Steps
*.comp.tomlfileazldev comp render -p texliveExpected behavior
Should add the macro file in a smart way that doesn't cause errors.
Actual behavior
Logs / Output
azldev version
Environment