mathoudebine / mathoudebine/turing-smart-screen-python

Use gitignore so common end user modifications don't prevent git pull

Open
#369 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rich Text Format
Stars
2.3k
Forks
412
Avg merge
21h 10m
Merged PRs (30d)
7

Description

Describe the feature / solution to your problem you'd like
Please have a folder for themes that are included by default, and another folder for themes that we might create ourselves or get from other sources. Please add this folder to the gitignore file so that we can pull down newer versions of the repository without needing to copy our themes out of the folder and add them back in after pulling down changes.

A related challenge would be to, upon first run, generate a config.yaml copy (userconfig.yaml?) that is actually used for storing settings, and having that config file be in the gitignore. That way, the user might run the script for the first time and have a config file generated for them, but since that would be in the gitignore, they would still be able to get changes. The config.yaml right now might be renamed to config.yaml.template to show that it is used for the generation of a config file.

Ideally, files that are commonly modified by end users would be in the gitignore, but there should be an option for an initial config to be generated in the absence of a user config.

Describe alternatives you've considered / and or tested
Currently, I use a PowerShell script to move my theme and config out of the directory, and move them back into the repo after pulling down the changes.

Screenshots / photos & mockups of the Turing screen
Here is an example of files I need to move out before I can pull the latest code down:

image

Environment:

  • Revision of this project [main branch]
  • OS with version [Windows 11]
  • Python version [python 3.11]
  • Hardware [AMD Ryzen 7950x3D, GeForce RTX 4090, 128GB RAM]

Additional context
These changes should encourage tinkering, and encourage updates to the latest version.
Those that have issues after downloading the latest updates should consider clearing their personal settings file in case the format changes and they need to pull the latest version.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the repository's .gitignore and locating where themes and config.yaml are loaded or generated. Define the scope with the maintainer before changing anything: done should allow user themes and settings to survive git pull while preserving a clear default configuration path.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, python
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.