From 07703a6cc557681da7d767766af9b07220ec5c6c Mon Sep 17 00:00:00 2001 From: Thomas Walker Lynch Date: Tue, 25 Nov 2025 09:29:35 +0000 Subject: [PATCH] tool_shared -> shared, bespoke -> {authored, made} --- README.md | 10 +++++----- developer/tool/makefile | 2 +- document/Harmony/00_Project_Structure.org | 12 ++++++------ .../Harmony/01_Workflow_and_Build_Contract.org | 2 +- env_developer | 6 +++--- env_tester | 6 +++--- env_toolsmith | 6 +++--- {tool_shared => shared}/authored/env | 14 +++++++------- .../authored/git-empty-dir/CLI.py | 0 .../authored/git-empty-dir/Harmony.py | 0 .../git-empty-dir/load_command_module.py | 0 .../authored/git-empty-dir/meta.py | 0 .../authored/git-empty-dir/source_sync | 0 {tool_shared => shared}/authored/sync/A_minus_B | 0 {tool_shared => shared}/authored/sync/CLI.py | 0 .../authored/sync/GitIgnore.py | 0 {tool_shared => shared}/authored/sync/Harmony.py | 0 .../authored/sync/Harmony_where | 0 {tool_shared => shared}/authored/sync/README.org | 0 {tool_shared => shared}/authored/sync/command.py | 0 {tool_shared => shared}/authored/sync/doc.py | 0 .../authored/sync/in_between_and_below | 0 .../authored/sync/load_command_module.py | 0 .../authored/sync/make_Harmony_tree_dict | 0 .../sync/manus_2025_11_20_215471873762383.txt | 0 {tool_shared => shared}/authored/sync/meta.py | 0 {tool_shared => shared}/authored/sync/newer | 0 {tool_shared => shared}/authored/sync/older | 0 .../authored/sync/skeleton.py | 0 {tool_shared => shared}/authored/version | 0 {tool_shared => shared}/document/.gitkeep | 0 .../document/install_Python.org | 16 ++++++++-------- .../document/install_generic.org | 10 +++++----- {tool_shared => shared}/third_party/.gitignore | 0 .../third_party/upstream/.gitignore | 0 tool/after_pull | 4 ++-- tool/git-tar | 6 +++--- 37 files changed, 47 insertions(+), 47 deletions(-) rename {tool_shared => shared}/authored/env (87%) rename {tool_shared => shared}/authored/git-empty-dir/CLI.py (100%) rename {tool_shared => shared}/authored/git-empty-dir/Harmony.py (100%) rename {tool_shared => shared}/authored/git-empty-dir/load_command_module.py (100%) rename {tool_shared => shared}/authored/git-empty-dir/meta.py (100%) rename {tool_shared => shared}/authored/git-empty-dir/source_sync (100%) rename {tool_shared => shared}/authored/sync/A_minus_B (100%) rename {tool_shared => shared}/authored/sync/CLI.py (100%) rename {tool_shared => shared}/authored/sync/GitIgnore.py (100%) rename {tool_shared => shared}/authored/sync/Harmony.py (100%) rename {tool_shared => shared}/authored/sync/Harmony_where (100%) rename {tool_shared => shared}/authored/sync/README.org (100%) rename {tool_shared => shared}/authored/sync/command.py (100%) rename {tool_shared => shared}/authored/sync/doc.py (100%) rename {tool_shared => shared}/authored/sync/in_between_and_below (100%) rename {tool_shared => shared}/authored/sync/load_command_module.py (100%) rename {tool_shared => shared}/authored/sync/make_Harmony_tree_dict (100%) rename {tool_shared => shared}/authored/sync/manus_2025_11_20_215471873762383.txt (100%) rename {tool_shared => shared}/authored/sync/meta.py (100%) rename {tool_shared => shared}/authored/sync/newer (100%) rename {tool_shared => shared}/authored/sync/older (100%) rename {tool_shared => shared}/authored/sync/skeleton.py (100%) rename {tool_shared => shared}/authored/version (100%) rename {tool_shared => shared}/document/.gitkeep (100%) rename {tool_shared => shared}/document/install_Python.org (83%) rename {tool_shared => shared}/document/install_generic.org (90%) rename {tool_shared => shared}/third_party/.gitignore (100%) rename {tool_shared => shared}/third_party/upstream/.gitignore (100%) diff --git a/README.md b/README.md index d340822..db8aabc 100644 --- a/README.md +++ b/README.md @@ -9,15 +9,15 @@ Pick a role, source the env, build your thing, then release. - `env_tester` — test + repro - `env_toolsmith` — shared tools + env wiring -Developers work under `developer/`, testers under `tester/`, toolsmiths wire `tool_shared/` and env scripts. +Developers work under `developer/`, testers under `tester/`, toolsmiths wire `shared/` and env scripts. ## Layout (why it exists) - `document/` — project docs (+ RT conventions in org) - `developer/` — dev code, experiments, dev-specific docs/tools - `tester/` — tests, fixtures, repro steps -- `tool_shared/` — shared tools/env for all roles -- `tool_shared/third_party/` — third-party tools -- `tool_shared/third_party/python/` — your venv lives here (not committed) +- `shared/` — shared tools/env for all roles +- `shared/third_party/` — third-party tools +- `shared/third_party/python/` — your venv lives here (not committed) - `release/` — publishable artifacts - `tmp/` — scratch (gitignored) @@ -28,7 +28,7 @@ Empty directories are tracked with `.githolder` (kept out of release archives). # choose a role (must be sourced) source ./env_developer # or env_tester / env_toolsmith -# create the Python venv under tool_shared/third_party/python/ (literally 'python' instead of 'venv' +# create the Python venv under shared/third_party/python/ (literally 'python' instead of 'venv' ./scripts/python_venv_bootstrap.sh # re-enter later diff --git a/developer/tool/makefile b/developer/tool/makefile index cb41bd4..65408ed 100644 --- a/developer/tool/makefile +++ b/developer/tool/makefile @@ -2,7 +2,7 @@ .SUFFIXES: .EXPORT_ALL_VARIABLES: -RT_INCOMMON := $(REPO_HOME)/tool_shared/third_party/RT-project-share/release +RT_INCOMMON := $(REPO_HOME)/shared/third_party/RT-project-share/release include $(RT_INCOMMON)/make/environment_RT_1.mk .PHONY: usage diff --git a/document/Harmony/00_Project_Structure.org b/document/Harmony/00_Project_Structure.org index 8c08098..dc3acaf 100644 --- a/document/Harmony/00_Project_Structure.org +++ b/document/Harmony/00_Project_Structure.org @@ -64,7 +64,7 @@ The layout below is stable across all Harmony skeleton based projects: | =developer/= | Primary workspace for developers | | =tester/= | Regression and validation workspace for testers | | =tool/= | Project-local tools | -| =tool_shared/= | Shared ecosystem tools | +| =shared/= | Shared ecosystem tools | | =document/= | Documentation (local to project) | | =release/= | Central Working Point for promoted artifacts | | =scratchpad/= | Global scratch (misc experiments) | @@ -116,7 +116,7 @@ This property is set, i.e. this director is entered, by first going to the top l By RT convention, architecture specific build artifacts are not tracked, but rather are built each time the project is cloned. Such build artifacts are placed in =developer/scratchpad/made= and if they are to be shared with the tester, the release script will release them to =release/made_untracted=. ** =tool/= - Developer specific tools. Additional tools will be found under =tool_shared=. If the project is not self contained, then yet additional tools might come from the system environment. + Developer specific tools. Additional tools will be found under =shared=. If the project is not self contained, then yet additional tools might come from the system environment. * Documents @@ -132,7 +132,7 @@ This property is set, i.e. this director is entered, by first going to the top l ** =tester/document/= Documentation for testers. -** =tool_shared/document/= +** =shared/document/= Documentation on installing the shared tools. Note if a tool has a document directory that remains with the tool. This will typically have a list of tools that need to be installed for the project, and notes to help make installs go more smoothly. @@ -142,11 +142,11 @@ This property is set, i.e. this director is entered, by first going to the top l We call the team members who administer the project and install tools the 'toolsmith'. The top level =tool/= directory holds the toolsmith's tools. -** =tool_shared/= +** =shared/= -Shared tools are available to all team members. Those that have been written specifically for the Harmony skeleton or for this project go into the =tool_shared/bespoke= directory. Note the tool =scratchpad=, try =scratchpat help=. +Shared tools are available to all team members. Those that have been written specifically for the Harmony skeleton or for this project go into the =shared/authored= directory. Note the tool =scratchpad=, try =scratchpat help=. -Tools installed from third parties go into the git ignored directory =tool_shared/third_party=. +Tools installed from third parties go into the git ignored directory =shared/third_party=. ** =developer/tool= diff --git a/document/Harmony/01_Workflow_and_Build_Contract.org b/document/Harmony/01_Workflow_and_Build_Contract.org index 6826ca6..e34bcf6 100644 --- a/document/Harmony/01_Workflow_and_Build_Contract.org +++ b/document/Harmony/01_Workflow_and_Build_Contract.org @@ -48,7 +48,7 @@ Responsibilities: 1. Setup the project directory, and keep the project in sync with the Harmony skeleton. 2. Maintain the role environments, apart from the =/tool/env= files which are owned by the respective ==. -3. Install and maintained shared tools, =tool/= and =tool_shared/=, and other tools upon request. +3. Install and maintained shared tools, =tool/= and =shared/=, and other tools upon request. 4. Address issues with project workflow. Propose updates to the Harmony skeleton. diff --git a/env_developer b/env_developer index 7067d75..adb98f6 100644 --- a/env_developer +++ b/env_developer @@ -10,16 +10,16 @@ fi # enter project environment # - source tool_shared/bespoke/env + source shared/authored/env # setup tools # - export PYTHON_HOME="$REPO_HOME/tool_shared/third_party/Python" + export PYTHON_HOME="$REPO_HOME/shared/third_party/Python" if [[ ":$PATH:" != *":$PYTHON_HOME/bin:"* ]]; then export PATH="$PYTHON_HOME/bin:$PATH" fi - RT_gcc="$REPO_HOME/tool_shared/third_party/RT_gcc/release" + RT_gcc="$REPO_HOME/shared/third_party/RT_gcc/release" if [[ ":$PATH:" != *":$RT_gcc:"* ]]; then export PATH="$RT_gcc:$PATH" fi diff --git a/env_tester b/env_tester index 5580c87..c0555c8 100644 --- a/env_tester +++ b/env_tester @@ -10,16 +10,16 @@ fi # enter project environment # - source tool_shared/bespoke/env + source shared/authored/env # setup tools # - export PYTHON_HOME="$REPO_HOME/tool_shared/third_party/Python" + export PYTHON_HOME="$REPO_HOME/shared/third_party/Python" if [[ ":$PATH:" != *":$PYTHON_HOME/bin:"* ]]; then export PATH="$PYTHON_HOME/bin:$PATH" fi - RT_gcc="$REPO_HOME/tool_shared/third_party/RT_gcc/release" + RT_gcc="$REPO_HOME/shared/third_party/RT_gcc/release" if [[ ":$PATH:" != *":$RT_gcc:"* ]]; then export PATH="$RT_gcc:$PATH" fi diff --git a/env_toolsmith b/env_toolsmith index ee09200..1d6b61f 100644 --- a/env_toolsmith +++ b/env_toolsmith @@ -10,17 +10,17 @@ fi # enter project environment # - source tool_shared/bespoke/env + source shared/authored/env # setup tools # initially these will not exist, as the toolsmith installs them # - export PYTHON_HOME="$REPO_HOME/tool_shared/third_party/Python" + export PYTHON_HOME="$REPO_HOME/shared/third_party/Python" if [[ ":$PATH:" != *":$PYTHON_HOME/bin:"* ]]; then export PATH="$PYTHON_HOME/bin:$PATH" fi - RT_gcc="$REPO_HOME/tool_shared/third_party/RT_gcc/release" + RT_gcc="$REPO_HOME/shared/third_party/RT_gcc/release" if [[ ":$PATH:" != *":$RT_gcc:"* ]]; then export PATH="$RT_gcc:$PATH" fi diff --git a/tool_shared/authored/env b/shared/authored/env similarity index 87% rename from tool_shared/authored/env rename to shared/authored/env index 0d47fca..35e91e4 100644 --- a/tool_shared/authored/env +++ b/shared/authored/env @@ -20,7 +20,7 @@ umask 0077 dirname "$script_afp" } -# assume this script is located $REPO_HOME/tools_shared/bespoke and work backwards +# assume this script is located $REPO_HOME/tools_shared/authored and work backwards # to get $REPO_HOME, etc. REPO_HOME=$(dirname "$(dirname "$(script_adp)")") @@ -38,7 +38,7 @@ umask 0077 # Project wide Tool setup # -export VIRTUAL_ENV="$REPO_HOME/tool_shared/third_party/Python" +export VIRTUAL_ENV="$REPO_HOME/shared/third_party/Python" export PYTHON_HOME="$VIRTUAL_ENV" unset PYTHONHOME @@ -47,11 +47,11 @@ unset PYTHONHOME # PATH # precedence: last defined, first discovered - PATH="$REPO_HOME/tool_shared/third_party/RT-project-share/release/bash:$PATH" - PATH="$REPO_HOME/tool_shared/third_party/RT-project-share/release/amd64:$PATH" - PATH="$REPO_HOME/tool_shared/third_party:$PATH" - PATH="$REPO_HOME/tool_shared/customized:$PATH" - PATH="$REPO_HOME"/tool_shared/bespoke:"$PATH" + PATH="$REPO_HOME/shared/third_party/RT-project-share/release/bash:$PATH" + PATH="$REPO_HOME/shared/third_party/RT-project-share/release/amd64:$PATH" + PATH="$REPO_HOME/shared/third_party:$PATH" + PATH="$REPO_HOME/shared/customized:$PATH" + PATH="$REPO_HOME/shared/made:$PATH" # Remove duplicates clean_path() { diff --git a/tool_shared/authored/git-empty-dir/CLI.py b/shared/authored/git-empty-dir/CLI.py similarity index 100% rename from tool_shared/authored/git-empty-dir/CLI.py rename to shared/authored/git-empty-dir/CLI.py diff --git a/tool_shared/authored/git-empty-dir/Harmony.py b/shared/authored/git-empty-dir/Harmony.py similarity index 100% rename from tool_shared/authored/git-empty-dir/Harmony.py rename to shared/authored/git-empty-dir/Harmony.py diff --git a/tool_shared/authored/git-empty-dir/load_command_module.py b/shared/authored/git-empty-dir/load_command_module.py similarity index 100% rename from tool_shared/authored/git-empty-dir/load_command_module.py rename to shared/authored/git-empty-dir/load_command_module.py diff --git a/tool_shared/authored/git-empty-dir/meta.py b/shared/authored/git-empty-dir/meta.py similarity index 100% rename from tool_shared/authored/git-empty-dir/meta.py rename to shared/authored/git-empty-dir/meta.py diff --git a/tool_shared/authored/git-empty-dir/source_sync b/shared/authored/git-empty-dir/source_sync similarity index 100% rename from tool_shared/authored/git-empty-dir/source_sync rename to shared/authored/git-empty-dir/source_sync diff --git a/tool_shared/authored/sync/A_minus_B b/shared/authored/sync/A_minus_B similarity index 100% rename from tool_shared/authored/sync/A_minus_B rename to shared/authored/sync/A_minus_B diff --git a/tool_shared/authored/sync/CLI.py b/shared/authored/sync/CLI.py similarity index 100% rename from tool_shared/authored/sync/CLI.py rename to shared/authored/sync/CLI.py diff --git a/tool_shared/authored/sync/GitIgnore.py b/shared/authored/sync/GitIgnore.py similarity index 100% rename from tool_shared/authored/sync/GitIgnore.py rename to shared/authored/sync/GitIgnore.py diff --git a/tool_shared/authored/sync/Harmony.py b/shared/authored/sync/Harmony.py similarity index 100% rename from tool_shared/authored/sync/Harmony.py rename to shared/authored/sync/Harmony.py diff --git a/tool_shared/authored/sync/Harmony_where b/shared/authored/sync/Harmony_where similarity index 100% rename from tool_shared/authored/sync/Harmony_where rename to shared/authored/sync/Harmony_where diff --git a/tool_shared/authored/sync/README.org b/shared/authored/sync/README.org similarity index 100% rename from tool_shared/authored/sync/README.org rename to shared/authored/sync/README.org diff --git a/tool_shared/authored/sync/command.py b/shared/authored/sync/command.py similarity index 100% rename from tool_shared/authored/sync/command.py rename to shared/authored/sync/command.py diff --git a/tool_shared/authored/sync/doc.py b/shared/authored/sync/doc.py similarity index 100% rename from tool_shared/authored/sync/doc.py rename to shared/authored/sync/doc.py diff --git a/tool_shared/authored/sync/in_between_and_below b/shared/authored/sync/in_between_and_below similarity index 100% rename from tool_shared/authored/sync/in_between_and_below rename to shared/authored/sync/in_between_and_below diff --git a/tool_shared/authored/sync/load_command_module.py b/shared/authored/sync/load_command_module.py similarity index 100% rename from tool_shared/authored/sync/load_command_module.py rename to shared/authored/sync/load_command_module.py diff --git a/tool_shared/authored/sync/make_Harmony_tree_dict b/shared/authored/sync/make_Harmony_tree_dict similarity index 100% rename from tool_shared/authored/sync/make_Harmony_tree_dict rename to shared/authored/sync/make_Harmony_tree_dict diff --git a/tool_shared/authored/sync/manus_2025_11_20_215471873762383.txt b/shared/authored/sync/manus_2025_11_20_215471873762383.txt similarity index 100% rename from tool_shared/authored/sync/manus_2025_11_20_215471873762383.txt rename to shared/authored/sync/manus_2025_11_20_215471873762383.txt diff --git a/tool_shared/authored/sync/meta.py b/shared/authored/sync/meta.py similarity index 100% rename from tool_shared/authored/sync/meta.py rename to shared/authored/sync/meta.py diff --git a/tool_shared/authored/sync/newer b/shared/authored/sync/newer similarity index 100% rename from tool_shared/authored/sync/newer rename to shared/authored/sync/newer diff --git a/tool_shared/authored/sync/older b/shared/authored/sync/older similarity index 100% rename from tool_shared/authored/sync/older rename to shared/authored/sync/older diff --git a/tool_shared/authored/sync/skeleton.py b/shared/authored/sync/skeleton.py similarity index 100% rename from tool_shared/authored/sync/skeleton.py rename to shared/authored/sync/skeleton.py diff --git a/tool_shared/authored/version b/shared/authored/version similarity index 100% rename from tool_shared/authored/version rename to shared/authored/version diff --git a/tool_shared/document/.gitkeep b/shared/document/.gitkeep similarity index 100% rename from tool_shared/document/.gitkeep rename to shared/document/.gitkeep diff --git a/tool_shared/document/install_Python.org b/shared/document/install_Python.org similarity index 83% rename from tool_shared/document/install_Python.org rename to shared/document/install_Python.org index 4725c04..14342f9 100644 --- a/tool_shared/document/install_Python.org +++ b/shared/document/install_Python.org @@ -7,7 +7,7 @@ This document describes how to install a project-local Python environment under: #+begin_src bash -tool_shared/third_party/Python +shared/third_party/Python #+end_src This environment is shared across the =developer= and =tester= roles and is automatically activated through their respective =env_= scripts. @@ -29,12 +29,12 @@ Ensure the following: 2. Create the virtual environment: #+begin_src bash - python3 -m venv "$REPO_HOME/tool_shared/third_party/Python" + python3 -m venv "$REPO_HOME/shared/third_party/Python" #+end_src 3. Activate it temporarily to install required packages: #+begin_src bash - source "$REPO_HOME/tool_shared/third_party/Python/bin/activate" + source "$REPO_HOME/shared/third_party/Python/bin/activate" pip install --upgrade pip pip install pytest # Add any shared packages here deactivate @@ -45,15 +45,15 @@ Ensure the following: Disable the default scripts by renaming them: #+begin_src bash - mv "$REPO_HOME/tool_shared/third_party/Python/bin/activate" \ - "$REPO_HOME/tool_shared/third_party/Python/bin/activate_deprecated" + mv "$REPO_HOME/shared/third_party/Python/bin/activate" \ + "$REPO_HOME/shared/third_party/Python/bin/activate_deprecated" #+end_src This ensures that accidental sourcing of Python’s =activate= script won't override Harmony's environment setup. 5. Verify installation: #+begin_src bash - ls "$REPO_HOME/tool_shared/third_party/Python/bin/python3" + ls "$REPO_HOME/shared/third_party/Python/bin/python3" #+end_src The binary should exist and report a working Python interpreter when run. @@ -66,8 +66,8 @@ Ensure the following: * Related Files -- =tool_shared/bespoke/env= -- =tool_shared/bespoke/env_source= +- =shared/authored/env= +- =shared/authored/env_source= - =env_developer=, =env_tester=, =env_toolsmith= * Last Verified diff --git a/tool_shared/document/install_generic.org b/shared/document/install_generic.org similarity index 90% rename from tool_shared/document/install_generic.org rename to shared/document/install_generic.org index add47df..90af13e 100644 --- a/tool_shared/document/install_generic.org +++ b/shared/document/install_generic.org @@ -1,7 +1,7 @@ This is the generic install.org doc that comes with the skeleton. -1. $REPO_HOME/tool_shared/third_party/.gitignore: +1. $REPO_HOME/shared/third_party/.gitignore: * !/.gitignore @@ -12,13 +12,13 @@ This is the generic install.org doc that comes with the skeleton. 2. downloaded tar files etc. go into the directory `upstream` - $REPO_HOME/tool_shared/upstream + $REPO_HOME/shared/upstream Typically the contents of upstream are deleted after the install. 3. for the base install - cd $REPO_HOME/tool_shared/third_party + cd $REPO_HOME/shared/third_party do whatever it takes to install tool, as examples: git clone tar -xzf ../upstream/tar @@ -43,8 +43,8 @@ This is the generic install.org doc that comes with the skeleton. # example tool names: 'RT_gcc' 'RT-project share` etc. tool= - tool_dpath="$REPO_HOME/tool_shared/third_party/$tool" - patch_dpath="$REPO_HOME/tool_shared/patch/" + tool_dpath="$REPO_HOME/shared/third_party/$tool" + patch_dpath="$REPO_HOME/shared/patch/" 5. create a patch series (from current vendor state → your local edits) diff --git a/tool_shared/third_party/.gitignore b/shared/third_party/.gitignore similarity index 100% rename from tool_shared/third_party/.gitignore rename to shared/third_party/.gitignore diff --git a/tool_shared/third_party/upstream/.gitignore b/shared/third_party/upstream/.gitignore similarity index 100% rename from tool_shared/third_party/upstream/.gitignore rename to shared/third_party/upstream/.gitignore diff --git a/tool/after_pull b/tool/after_pull index 3511c89..946d9ad 100755 --- a/tool/after_pull +++ b/tool/after_pull @@ -21,7 +21,7 @@ notes: import os, sys, stat -# Must match tool_shared/bespoke/env policy: +# Must match shared/authored/env policy: DEFAULT_UMASK = 0o077 # reminder only; effective modes below implement 077 congruence. DIR_MODE_077 = 0o700 @@ -43,7 +43,7 @@ def require_toolsmith_env(): def repo_home(): rh = os.environ.get("REPO_HOME") if not rh: - die("REPO_HOME is not set (did you source tool_shared/bespoke/env?)") + die("REPO_HOME is not set (did you source shared/authored/env?)") return os.path.realpath(rh) def show_path(p, rh): diff --git a/tool/git-tar b/tool/git-tar index 79d5a8c..d6ba1f7 100755 --- a/tool/git-tar +++ b/tool/git-tar @@ -96,9 +96,9 @@ def _import_Z_module(repo_top: pathlib.Path) -> Optional[object]: here = pathlib.Path(__file__).resolve().parent candidates += [here / "Z", here / "Z.py"] candidates += [ - repo_top / "tool_shared" / "third_party" / "RT-project-share" / "release" / "python" / "Z", - repo_top / "tool_shared" / "third_party" / "RT-project-share" / "release" / "python" / "Z.py", - repo_top / "tool_shared" / "third_party" / "RT-project-share" / "release" / "bash" / "Z", + repo_top / "shared" / "third_party" / "RT-project-share" / "release" / "python" / "Z", + repo_top / "shared" / "third_party" / "RT-project-share" / "release" / "python" / "Z.py", + repo_top / "shared" / "third_party" / "RT-project-share" / "release" / "bash" / "Z", ] for d in (pathlib.Path(p) for p in (os.getenv("PATH") or "").split(os.pathsep) if p): p = d / "Z" -- 2.20.1