-
-
Notifications
You must be signed in to change notification settings - Fork 58
Create an online WinPaletter Store source (server\GitHub repository) for hosting WinPaletter themes
-
WinPaletter allows adding sources to the Store, it can be online or offline. In this documentation, you will learn the mechanism of an online store source.
-
You are responsible for the copyrights of the themes\resources pack in the server\repository you build. WinPaletter developer is not responsible for copyrights violation by other users.**
-
Themes that are included online in a server\repository must be made by WinPaletter
1.0.7.7
and higher, otherwise the themes won't be loaded. If you insist on uploading a theme made by an old version of WinPaletter, use WinPaletter1.0.7.7
or higher to convert this theme into the new format version (You can find convert button in main form in the upper part that has buttons) -
Offline source mode can load themes made by any WinPaletter version
-
You should have your own files server or a files uploading service, and the links you provide in the source must be direct links (that doesn't prompt users to wait before download or click to download or anything else that interrupts direct download process).
-
If you don't have a server, you can create a GitHub repository.
-
A store source is a text file contains lines, each line is responsible for a theme. And the composition of this line is:
MD5_ThemeFile|MD5_ResourcesPackFile|DirectLink_To_ThemeFile|DirectLink_To_PackFile
-
MD5
is used to make WinPaletter check if the downloaded theme has been updated\changed or not, ifMD5
inside source doesn't equalMD5
of downloaded theme, WinPaletter will redownload the theme and override the old one. If they equal each other, no change will be made. -
If the theme doesn't have a resources pack, its
MD5
will be0
and ignore the last part of line:|DirectLink_To_PackFile
-
"|" (without the quotes) is a separator between arguments in the line
-
Example for a source file (that has 3 themes):
3D503317FA22B4999A980E8B6C23E916|4FBC9EE7157F580D036129EA26AD307A|https://link_to_theme_1|https://link_to_theme_resources_pack1 AC28715B458F8B3EA3CCF4E933C60D36|0|https://link_to_theme_2 2FED07C211A0E58AD88D6F06FC513A66|D697F2F674658814D0CA074125067BB1|https://link_to_theme_3|https://link_to_theme_resources_pack3
-
-
If you are using GitHub Repository as your own server, read the following:
-
don't forget to add
?raw=true
to the end of any link (source link or links inside the source file), to make it a direct link -
You can fork\clone and edit WinPaletter-Theme repository to understand the rules
-
store.wpdb is the source file
-
main.py is a Python script that updates store.wpdb (Will be discussed later)
-
Add your exported themes inside Themes directory
-
enum_themes.yml is a GitHub Actions yaml file that starts automatically when new files are added to Themes directory inside the repository, and it depends on main.py to update the source file. (Will be discussed later)
Edit these two lines to make it fetch the themes and their packs from the right GitHub Repository (Without modifying
+ targetfile + '?raw=true'
and+ targetpack + '?raw=true'
):url_file = 'https://github.com/Abdelrhman-AK/WinPaletter-Store/blob/main/' + targetfile + '?raw=true' url_pack = 'https://github.com/Abdelrhman-AK/WinPaletter-Store/blob/main/' + targetpack + '?raw=true'
- Please respect the indentations inside this Python script file or the Action will fail after running
-
Make your GitHub repository can have Actions (Search for it)
-
Make a new Action, with its yaml file is the same as enum_themes.yml
-
Please respect the indentations inside this yaml Action file or it will fail after running
-
Edit the following three lines to make it suitable with your repository:
branches: [ main ] paths: Themes/**
- Make the branch name consistent with current GitHub repository branch. It may be [ main ] or [ master ] or something else.
- Make paths have the name of themes directory, for example:
paths: Themes/**
orpaths: MyWinPaletterThemes/**
or something else. - The benefit of line
paths: Themes/**
is that when any change is made to this folder, this action will run automatically and update the source list
run: python main.py Themes store.wpdb
-
main.py
is the path of Python script that builds the source list -
Themes
is the path of themes directory -
store.wpdb
is the target source file that will be updated
-
This wiki is consistent with WinPaletter 1.0.8.0 and later
- Main form parts
- Color picker
- Palette generator
- Skeleton of a feature modification
- How to design and apply a theme
- Theme info
- Windows colors and theme
- LogonUI screen
- Classic colors
- Cursors
- Consoles (Command Prompt and PowerShell)
- Windows Terminal
- Metrics and fonts
- Wallpaper
- Windows Effects
- Windows switcher (Alt+Tab appearance)
- Screen Saver
- Sounds
- WinPaletter application theme
- Basics
- Design themes to be uploaded to servers\GitHub repositories
- Upload themes to WinPaletter Store repository to be public to everyone
Optional
Create your own server\GitHub repository for hosting themesOptional
Add new themes sources to your current WinPaletter setup
- Disable Explorer restart
- Advanced options to patch PE files
- Theme log verbose level
- Synchronize ExplorerPatcher settings with WinPaletter preview
- Delay applying of Metrics and Fonts
- Apply preferences to all users and LogonUI screen
- Disable cursors rendering or reset them
- Use offline folders as sources for themes in WinPaletter Store