It is currently August 10th, 2020, 3:26 pm

distribute skins via github and release via github actions

Report bugs with the Rainmeter application and suggest features.
User avatar
2bndy5
Posts: 20
Joined: February 25th, 2015, 2:38 am

Re: distribute skins via github and release via github actions

Post by 2bndy5 »

I've been putting together a cookiecutter repo to migrate Rainmeter skin development to github quickly & easily. Here's my idea of what the process should include:
  1. Ask for project/repository name. This will be applied to repo-name as a slug & (if creating a new skin) the skin's root config folder & file names
  2. Ask for user's full human name (gets applied to RMSKIN.ini, license, and metadata->Author field on a new skin)
  3. Ask for user's github account username (required for templating status badges on README)
  4. Ask for required Rainmeter Version (gets applied to RMSKIN.ini, defaults to currently installed version)
  5. Ask for project short description (applied to README & metadata->Information field on a new skin)
  6. Pick from a list of installed skins to import (only 1 allowed for initiatization) or create a blank skin (default option)
  7. Ask user to pick a license (initial offerings are those suggested on Rainmeter Docs, but can be modified after cookiecutter finishes)
To do this I've written a python script that wraps the python module, cookiecutter. This script is needed to read some data from the system to suggest for default inputs (value used if user just pressed "ENTER" without inputting anything) before offering the cookiecutter options to the user. These data include: currently installed Rainmeter Version, Rainmeter's Skins Path (& a list of currently installed skins), the current year (for licenses where applicable). Depending on the user's choice about importing an installed skin, a pre-generation script will do some extra work to import the skin and ignore the included template skin or vice versa.
  Thoughts going forward:  
Should we make considerations for the @Vault folder?
Should we let user specify version of windows required?
What about skin documentation (other than just a readme)?
User avatar
2bndy5
Posts: 20
Joined: February 25th, 2015, 2:38 am

Re: distribute skins via github and release via github actions

Post by 2bndy5 »

ok the Rainmeter-Cookiecutter repo is ready for use. Check it out

If you're new to cookiecutter repos, the process is simply as follows:
  1. Clone or download & extract the repo's zip file (repo lives at https://github.com/2bndy5/Rainmeter-Cookiecutter.git)
  2. Make sure python is installed. IMPORTANT: check the box that adds python to your PATH variable during installation.
  3. Open a cmd prompt (powershell prompt works fine) and cd into the root folder of the cloned repo (titled "Rainmeter-Cookiecutter")
  4. Run the command: pip install -r requirements
  5. Run the command: python cutcookie.py
  6. Answer the prompts. Notice that the default option is shown in [ square brackets ]. If no input is given, then the default option is used.
  7. When cutcookie.py completes, you should see a new folder next to" Rainmeter-Cookiecutter" folder named using the options you provided cutcookie.py
more info can be found in the README