Compare commits
7 Commits
b72b468ad4
...
knoxmakers
| Author | SHA1 | Date | |
|---|---|---|---|
| 337b00601a | |||
| ee650f2b71 | |||
| a5ddc33a27 | |||
| a9c87f2adf | |||
| 5692f4bb08 | |||
| 9af24d49ee | |||
| 7211fd44ef |
@@ -45,8 +45,8 @@ jobs:
|
||||
git push origin HEAD:main
|
||||
|
||||
# Create a unique tag for this bundle run
|
||||
DATETIME="$(date -u +%Y%m%d-%H%M%S)"
|
||||
TAG="knox-makers-inkscape-${DATETIME}"
|
||||
DATETIME="$(date -u +%Y%m%d)"
|
||||
TAG="knoxmakers-inkscape-${DATETIME}"
|
||||
SHA="$(git rev-parse HEAD)"
|
||||
|
||||
git tag -a "$TAG" -m "Automated bundle: $TAG ($SHA)"
|
||||
@@ -67,7 +67,7 @@ jobs:
|
||||
CREATE_JSON="$(jq -n \
|
||||
--arg tag "$TAG" \
|
||||
--arg name "$TAG" \
|
||||
--arg body "Automated bundle release.\n\nExcludes: scripts/, .gitea/\nCommit: $SHA\nUTC: $(date -u +'%Y-%m-%d %H:%M:%S')" \
|
||||
--arg body "Automated bundle release." \
|
||||
'{tag_name:$tag, name:$name, body:$body, draft:false, prerelease:false}')"
|
||||
|
||||
RELEASE_RESP="$(curl -fsS -X POST "$API_CREATE" \
|
||||
|
||||
45
.gitea/workflows/version.yml
Normal file
45
.gitea/workflows/version.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
name: version
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
jobs:
|
||||
update-version:
|
||||
runs-on: [ubuntu-24.04]
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
run: |
|
||||
set -euo pipefail
|
||||
rm -rf .git || true
|
||||
rm -rf ./* ./.??* || true
|
||||
git clone --depth 1 https://git.knoxmakers.org/KnoxMakers/knoxmakers-inkscape.git .
|
||||
git checkout main
|
||||
|
||||
- name: Configure git identity
|
||||
run: |
|
||||
git config user.name "haxbot"
|
||||
git config user.email "haxbot@knoxmakers.sh"
|
||||
|
||||
- name: Write version file
|
||||
run: |
|
||||
echo "${{ gitea.event.release.name }}" > version
|
||||
|
||||
- name: Commit and push version file
|
||||
env:
|
||||
HAXBOT_TOKEN: ${{ secrets.HAXBOT_TOKEN }}
|
||||
run: |
|
||||
set -euo pipefail
|
||||
|
||||
git add version
|
||||
|
||||
if git diff --cached --quiet; then
|
||||
echo "No changes to version file"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
git commit -m "version: ${{ gitea.event.release.name }}"
|
||||
|
||||
REPO_URL="https://x-access-token:${HAXBOT_TOKEN}@git.knoxmakers.org/KnoxMakers/knoxmakers-inkscape.git"
|
||||
git remote set-url origin "$REPO_URL"
|
||||
git push origin HEAD:main
|
||||
@@ -82,6 +82,16 @@ def point_at_length(path, target_length):
|
||||
return (last_point[0], last_point[1]), (1.0, 0.0)
|
||||
|
||||
|
||||
def _apply_placement(item, x, y, angle):
|
||||
# Bake placement into the path data; leaving it as a transform attr lets
|
||||
# Inkscape shift the shape on ungroup (near-identity matrices lose the X translate).
|
||||
transform = Transform()
|
||||
transform.add_translate(x, y)
|
||||
transform.add_rotate(angle)
|
||||
item.path = item.path.transform(transform)
|
||||
return item
|
||||
|
||||
|
||||
def pattern_along_path(path, num_items, item_width, start_offset, spacing, create_shape_fn):
|
||||
|
||||
if isinstance(path, str):
|
||||
@@ -104,12 +114,7 @@ def pattern_along_path(path, num_items, item_width, start_offset, spacing, creat
|
||||
angle = math.degrees(math.atan2(tangent[1], tangent[0]))
|
||||
|
||||
item = create_shape_fn(i)
|
||||
|
||||
transform = Transform()
|
||||
transform.add_translate(point[0], point[1])
|
||||
transform.add_rotate(angle)
|
||||
|
||||
item.transform = transform
|
||||
_apply_placement(item, point[0], point[1], angle)
|
||||
items.append(item)
|
||||
|
||||
elif spacing == "endpoints":
|
||||
@@ -120,12 +125,7 @@ def pattern_along_path(path, num_items, item_width, start_offset, spacing, creat
|
||||
angle = math.degrees(math.atan2(tangent[1], tangent[0]))
|
||||
|
||||
item = create_shape_fn(i)
|
||||
|
||||
transform = Transform()
|
||||
transform.add_translate(point[0], point[1])
|
||||
transform.add_rotate(angle)
|
||||
|
||||
item.transform = transform
|
||||
_apply_placement(item, point[0], point[1], angle)
|
||||
items.append(item)
|
||||
|
||||
elif spacing == "simple":
|
||||
@@ -138,12 +138,7 @@ def pattern_along_path(path, num_items, item_width, start_offset, spacing, creat
|
||||
angle = math.degrees(math.atan2(tangent[1], tangent[0]))
|
||||
|
||||
item = create_shape_fn(i)
|
||||
|
||||
transform = Transform()
|
||||
transform.add_translate(point[0], point[1])
|
||||
transform.add_rotate(angle)
|
||||
|
||||
item.transform = transform
|
||||
_apply_placement(item, point[0], point[1], angle)
|
||||
items.append(item)
|
||||
|
||||
return items
|
||||
|
||||
Reference in New Issue
Block a user