From 10398290704e99a969aec921bb392af6552b383a Mon Sep 17 00:00:00 2001 From: Denis Chevalier Date: Tue, 11 Aug 2026 01:48:41 +0200 Subject: typo in README.md, add git hook for new typ files SPDX header --- .githooks/pre-commit | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100755 .githooks/pre-commit (limited to '.githooks/pre-commit') diff --git a/.githooks/pre-commit b/.githooks/pre-commit new file mode 100755 index 0000000..7f9d85e --- /dev/null +++ b/.githooks/pre-commit @@ -0,0 +1,35 @@ +#!/usr/bin/env bash + +HEADER='// SAME Analog Modular Ecosystem +// +// / SPDX-FileCopyrightText: 2026 Denis Chevalier +// / SPDX-License-Identifier: CC-BY-SA-4.0 +// / SPDX-License-Identifier: CERN-OHL-S-2.0+ +// / SPDX-License-Identifier: GPL-3.0-or-later +// +// The prose, explanatory text, rendered figures, tables, and mathematical +// content of this specification are licensed under CC BY-SA 4.0. If a later +// version of CC BY-SA is published, the author grants permission to distribute +// this work under that later version as well. +// +// Hardware designs contained herein (schematics, PCB layouts, mechanical +// drawings, and CAD models) are licensed under CERN-OHL-S-2.0+. +// +// All executable code, helper libraries (`lib/*`), metrology assertions, and +// embedded verification scripts throughout the source documents are licensed +// under the GNU General Public License v3.0 or later (GPL-3.0-or-later).' + +# Find newly added staged .typ files +new_files=$(git diff --cached --name-only --diff-filter=A | grep '\.typ$') + +for file in $new_files; do + if [ -f "$file" ] && ! grep -q "SPDX-FileCopyrightText" "$file"; then + echo "Injecting SPDX header into $file..." + tmpfile=$(mktemp) + echo "$HEADER" > "$tmpfile" + echo "" >> "$tmpfile" + cat "$file" >> "$tmpfile" + mv "$tmpfile" "$file" + git add "$file" + fi +done -- cgit