Juha, I'll make some more readable notes on
https://wiki.freepascal.org/Lazarus_Examples_Window but for now, this is how I see where we are.
As long as the directory stays there, it should be used by the new Examples Window.
OK, some issues. My version of the Examples Dir has a number of changes, if they are going to be used, we need to decide which of these changes need be pushed up to the fork -
1. The metadata files - thats a must.
2. Directory Structure, I have built a dir structure based on Category just to make it more manageable. Its not necessary, just tidier.
3. Changes made to examples. Strongly Recommended. See note A.
So, easiest approach for me and probably best outcome for Lazarus is for me to replace all the Examples in ~/examples with my set but leave out my new directory structure. So, implement 1 and 3 above. I'll reverse the directory restructure (because it will confuse the existing Examples Window).
This will be first merge request. It should not affect anything except removing misleading examples

Then I will need to make some changes to new Examples Window so that it looks to the examples in the local directory rather than on-line. Easy, I'll use some {$ifdef so we don't loose (yet) the online capability. This solves my MacOS problem too.
If, at some later stage, we do decide to go online, the underlying structure will still be there.
I'll then push my new Examples Window package up, it will appear directly under ~/components and, if installed, will only change the tools menu but will provide improved access to ~/examples and will solve the read only issue (because when a user chooses to first open an example, we'll make a working copy in user space).
This will be the second merge.Then, all the other examples (eg under ~/components) will need to be tested and have metadata added (they will remain where they are in the Laz src tree but will also be copied to user space when needed).
This will be quite long series of merge requests. They must be copied under the Components directory at some point...... options page registration ?
OK, right now, its a Package, its gets everything it needs from LazarusIDE variable, it does not need any options set at present (see note B). So, no, no "options page registration". I have no idea what that means by the way.
Which Project Wizard you mean? The Project -> New Project dialog?
Yep, thats what I mean. its caption is "Project Wizard" and it currently has a Button that triggers the current Examples Window. Maybe that can be done with the LazarusIDE variable, it seems to be amazingly flexible.
Note A - A number of Examples have been edited, updated or skipped because they are no longer useful. For example some Examples needed extra units "used" as things have been moved. Many Examples have been skipped because they pre-dated the Object Inspector. Some Examples are still marked as needing some more work. That was substantial amount of effort and was needed for any of the outcomes. While it does improve the overall quality, more needs to be done. So far, the Examples have only been tested on Linux, they will require testing on Windows and MacOS too.
Note B - The new Example Window reads things like LazConfigDir from the LazarusIDE variable. Will need to read LazSrcDir. At present it has no options of its own but at least one person has requested the ability to direct downloaded (or copied) Examples to a directory of their choice rather than automatically under LazConfigDir. I assumed this would a small config screen associated with the new Examples Window, to be done later. Is this what you are referring to as "options page registration" ?