5 Commits

Author SHA1 Message Date
337b00601a bundle: update (2026-06-21)
All checks were successful
version / update-version (release) Successful in 12s
2026-06-21 09:22:22 +00:00
ee650f2b71 version: knoxmakers-inkscape-20260122
All checks were successful
bundle / bundle (push) Successful in 27s
2026-01-22 15:00:59 +00:00
a5ddc33a27 bundle: update (2026-01-22)
All checks were successful
version / update-version (release) Successful in 13s
2026-01-22 15:00:45 +00:00
a9c87f2adf create version file for future use 2026-01-22 09:58:10 -05:00
5692f4bb08 force new release 2026-01-22 09:55:57 -05:00
3 changed files with 59 additions and 18 deletions

View 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

View File

@@ -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

1
version Normal file
View File

@@ -0,0 +1 @@
knoxmakers-inkscape-20260122