Skip to content

fix(timelapse): exclude linked component from Moonraker repo - #15

Merged
C0DEbrained merged 1 commit into
C0DEbrained:mainfrom
arlophoenix:fix/timelapse-exclude-untracked-source-anomaly-2025
Jul 27, 2026
Merged

fix(timelapse): exclude linked component from Moonraker repo#15
C0DEbrained merged 1 commit into
C0DEbrained:mainfrom
arlophoenix:fix/timelapse-exclude-untracked-source-anomaly-2025

Conversation

@arlophoenix

Copy link
Copy Markdown

Installing Moonraker Timelapse symlinks its component into Moonraker's own git
repo at moonraker/components/timelapse.py. Since Moonraker doesn't track that
file, update_manager then permanently reports the repo as dirty —
Repo has untracked source files: ['moonraker/components/timelapse.py'] — which
clutters update status and can interfere with Moonraker updates, even though the
component is installed on purpose.

This adds the linked path to the Moonraker repo's .git/info/exclude at install
time so update_manager stops flagging it. The write is idempotent and guarded
on .git/info existing; the uninstall path removes the entry for symmetry. The
repo root and excluded path are derived from the existing $TIMELAPSE_FILE
variable rather than hardcoded.

Same change as Guilouz#34, still open upstream — porting
it here so the 2025 fork doesn't wait on it. The added lines are identical; only
the surrounding context differs, since this fork carries the K1_2025 branches in
the same function.

Test plan

  • sh -n scripts/moonraker_timelapse.sh passes
  • On-device: install Moonraker Timelapse, confirm update_manager no longer reports the untracked-source anomaly
  • On-device: re-run install, confirm the exclude entry is not duplicated (idempotent)
  • On-device: uninstall, confirm the exclude entry is removed

The Moonraker Timelapse installer symlinks its component into Moonraker's
git repo at moonraker/components/timelapse.py. Because that file is not
tracked by Moonraker's repository, update_manager permanently reports the
repo as dirty:

  Repo has untracked source files: ['moonraker/components/timelapse.py']

This blocks clean update_manager status and can interfere with Moonraker
updates, even though the component is intentional.

Add the linked path to the repo's .git/info/exclude at install time
(idempotent, guarded on .git/info existing) so update_manager stops
flagging it. The uninstall path removes the exclude entry for symmetry.
@C0DEbrained
C0DEbrained merged commit 7d6c1c4 into C0DEbrained:main Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants