Skip to content

Commit b45b2d4

Browse files
authored
Merge pull request #728 from damongolding/task/release
0.36.1
2 parents b2dbc77 + 3779668 commit b45b2d4

11 files changed

Lines changed: 103 additions & 47 deletions

File tree

.github/workflows/ghcr-dev.yaml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: GHCR Dev
2+
3+
on:
4+
pull_request:
5+
types:
6+
- closed
7+
branches:
8+
- "task/**"
9+
- "release/**"
10+
11+
jobs:
12+
build:
13+
if: github.event.pull_request.merged == true
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
20+
- name: Set up Docker Buildx
21+
uses: docker/setup-buildx-action@v3
22+
23+
- name: Login to GitHub Container Registry
24+
uses: docker/login-action@v3
25+
with:
26+
registry: ghcr.io
27+
username: ${{ github.actor }}
28+
password: ${{ secrets.GHCR_TOKEN }}
29+
30+
- name: Sanitize branch name for Docker tag
31+
id: branch
32+
run: |
33+
# Lowercases and replaces any non-alphanumeric chars (e.g. slashes) with '-'
34+
BRANCH="${{ github.head_ref }}"
35+
SANITIZED=$(echo "$BRANCH" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9._-]/-/g')
36+
echo "tag=$SANITIZED" >> $GITHUB_OUTPUT
37+
38+
- name: Build and push Docker image
39+
run: |
40+
IMAGE_NAME=ghcr.io/damongolding/immich-kiosk-development
41+
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ)
42+
VERSION="${{ steps.branch.outputs.tag }}"
43+
44+
docker buildx build --build-arg VERSION=$VERSION \
45+
--platform linux/amd64,linux/arm64 \
46+
--push \
47+
--label "org.opencontainers.image.created=$TIMESTAMP" \
48+
--label "org.opencontainers.image.revision=${{ github.sha }}" \
49+
--label "org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }}" \
50+
--label "org.opencontainers.image.version=$VERSION" \
51+
--label "org.opencontainers.image.authors=${{ github.repository_owner }}" \
52+
-t $IMAGE_NAME:$VERSION \
53+
-t $IMAGE_NAME:latest \
54+
.

internal/templates/partials/error.templ

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ templ Error(data ErrorData) {
1818
>
1919
<div class="error-container">
2020
<div class="error">
21-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
21+
<svg width="512" height="512" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
2222
<path
2323
d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z"
2424
></path>

internal/templates/partials/icon.templ

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ templ cameraIcon(data string) {
1414
}}
1515
<div class="asset--metadata--has-icon asset--metadata--exif">
1616
<div class="asset--metadata--icon">
17-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
17+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
1818
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
1919
<path d="M149.1 64.8L138.7 96 64 96C28.7 96 0 124.7 0 160L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64l-74.7 0L362.9 64.8C356.4 45.2 338.1 32 317.4 32L194.6 32c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"></path>
2020
</svg>
@@ -33,7 +33,7 @@ templ exifIcon(data string) {
3333
}}
3434
<div class="asset--metadata--has-icon asset--metadata--exif">
3535
<div class="asset--metadata--icon">
36-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
36+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
3737
<!--! Font Awesome Pro 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc. -->
3838
<path fill="currentColor" d="M256 0c.8 0 1.5 0 2.3 0 11.6 .1 18.1 12.7 12.3 22.7L177.5 184c-6.2 10.7-21.6 10.7-27.7 0L89 78.8C85.3 72.3 86.5 64 92.2 59.2 136.6 22.2 193.7 0 256 0zM0 256c0-47.5 12.9-91.9 35.4-130.1 5.9-10 20-9.3 25.8 .8L154.4 288c6.2 10.7-1.5 24-13.9 24L19 312c-7.5 0-14-5.2-15.3-12.6-2.4-14.1-3.7-28.6-3.7-43.4zM186 489.3c-3.7 6.5-11.5 9.6-18.5 7-57.1-21.1-104.7-61.9-134.3-114.3-5.7-10.1 2-22 13.5-22l186.3 0c12.3 0 20 13.3 13.9 24L186 489.3zM256 512c-.8 0-1.5 0-2.3 0-11.6-.1-18.1-12.7-12.3-22.7L334.5 328c6.2-10.7 21.6-10.7 27.7 0L423 433.2c3.7 6.5 2.5 14.7-3.2 19.5-44.4 37-101.5 59.2-163.8 59.2zM512 256c0 47.5-12.9 91.9-35.4 130.1-5.9 10-20 9.3-25.8-.8L357.6 224c-6.2-10.7 1.5-24 13.9-24L493 200c7.5 0 14 5.2 15.3 12.6 2.4 14.1 3.7 28.6 3.7 43.4zM326 22.7c3.7-6.5 11.5-9.6 18.5-7 57.1 21.1 104.7 61.9 134.3 114.3 5.7 10.1-2 22-13.5 22l-186.3 0c-12.3 0-20-13.3-13.9-24L326 22.7z"></path>
3939
</svg>
@@ -52,7 +52,7 @@ templ locationIcon(data string) {
5252
}}
5353
<div class="asset--metadata--has-icon asset--metadata--location">
5454
<div class="asset--metadata--icon">
55-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512">
55+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" width="384" height="512">
5656
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
5757
<path d="M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z"></path>
5858
</svg>
@@ -71,7 +71,7 @@ templ imageIcon(data string) {
7171
}}
7272
<div class="asset--metadata--has-icon">
7373
<div class="asset--metadata--icon">
74-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
74+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
7575
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
7676
<path d="M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l96 0 32 0 208 0c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z"></path>
7777
</svg>
@@ -90,7 +90,7 @@ templ descriptionIcon(data string) {
9090
}}
9191
<div class="asset--metadata--has-icon asset--metadata--description">
9292
<div class="asset--metadata--icon">
93-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
93+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
9494
<!--! Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc. -->
9595
<path d="M64 96l0 32c0 17.7-14.3 32-32 32s-32-14.3-32-32L0 80C0 53.5 21.5 32 48 32l176 0 176 0c26.5 0 48 21.5 48 48l0 48c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-32L256 96l0 320 48 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l48 0 0-320L64 96z"></path>
9696
</svg>
@@ -111,7 +111,7 @@ templ idIcon(data string) {
111111
}}
112112
<div class="asset--metadata--has-icon asset--metadata--id">
113113
<div class="asset--metadata--icon">
114-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
114+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
115115
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
116116
<path d="M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128l95.1 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0L325.8 320l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7-95.1 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384 32 384c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 21.3-128L64 192c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320l95.1 0 21.3-128-95.1 0z"></path>
117117
</svg>
@@ -130,7 +130,7 @@ templ calendarIcon(data string) {
130130
}}
131131
<div class="asset--metadata--has-icon">
132132
<div class="asset--metadata--icon">
133-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
133+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
134134
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
135135
<path d="M96 32l0 32L48 64C21.5 64 0 85.5 0 112l0 48 448 0 0-48c0-26.5-21.5-48-48-48l-48 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32L160 64l0-32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192L0 192 0 464c0 26.5 21.5 48 48 48l352 0c26.5 0 48-21.5 48-48l0-272z"></path>
136136
</svg>
@@ -149,7 +149,7 @@ templ albumIcon(data string) {
149149
}}
150150
<div class="asset--metadata--has-icon">
151151
<div class="asset--metadata--icon">
152-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512">
152+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" width="576" height="512">
153153
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
154154
<path d="M160 32c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64l352 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L160 32zM396 138.7l96 144c4.9 7.4 5.4 16.8 1.2 24.6S480.9 320 472 320l-144 0-48 0-80 0c-9.2 0-17.6-5.3-21.6-13.6s-2.9-18.2 2.9-25.4l64-80c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l17.3 21.6 56-84C360.5 132 368 128 376 128s15.5 4 20 10.7zM192 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120L0 344c0 75.1 60.9 136 136 136l320 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-320 0c-48.6 0-88-39.4-88-88l0-224z"></path>
155155
</svg>
@@ -170,7 +170,7 @@ templ memoryIcon(data string) {
170170
}}
171171
<div class="asset--metadata--has-icon">
172172
<div class="asset--metadata--icon">
173-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
173+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
174174
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
175175
<path d="M75 75L41 41C25.9 25.9 0 36.6 0 57.9L0 168c0 13.3 10.7 24 24 24l110.1 0c21.4 0 32.1-25.9 17-41l-30.8-30.8C155 85.5 203 64 256 64c106 0 192 86 192 192s-86 192-192 192c-40.8 0-78.6-12.7-109.7-34.4c-14.5-10.1-34.4-6.6-44.6 7.9s-6.6 34.4 7.9 44.6C151.2 495 201.7 512 256 512c141.4 0 256-114.6 256-256S397.4 0 256 0C185.3 0 121.3 28.7 75 75zm181 53c-13.3 0-24 10.7-24 24l0 104c0 6.4 2.5 12.5 7 17l72 72c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-65-65 0-94.1c0-13.3-10.7-24-24-24z"></path>
176176
</svg>
@@ -191,13 +191,13 @@ templ ratingStars(rating float32) {
191191
<div class="asset--metadata--has-icon">
192192
<div class={ "asset--metadata--icon", "asset--metadata--rating-stars", fmt.Sprintf("rating-stars-%v", stars) }>
193193
for range stars {
194-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512">
194+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" width="576" height="512">
195195
<!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->
196196
<path d="M309.5-18.9c-4.1-8-12.4-13.1-21.4-13.1s-17.3 5.1-21.4 13.1L193.1 125.3 33.2 150.7c-8.9 1.4-16.3 7.7-19.1 16.3s-.5 18 5.8 24.4l114.4 114.5-25.2 159.9c-1.4 8.9 2.3 17.9 9.6 23.2s16.9 6.1 25 2L288.1 417.6 432.4 491c8 4.1 17.7 3.3 25-2s11-14.2 9.6-23.2L441.7 305.9 556.1 191.4c6.4-6.4 8.6-15.8 5.8-24.4s-10.1-14.9-19.1-16.3L383 125.3 309.5-18.9z"></path>
197197
</svg>
198198
}
199199
for range empty {
200-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512">
200+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" width="576" height="512">
201201
<!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->
202202
<path d="M288.1-32c9 0 17.3 5.1 21.4 13.1L383 125.3 542.9 150.7c8.9 1.4 16.3 7.7 19.1 16.3s.5 18-5.8 24.4L441.7 305.9 467 465.8c1.4 8.9-2.3 17.9-9.6 23.2s-17 6.1-25 2L288.1 417.6 143.8 491c-8 4.1-17.7 3.3-25-2s-11-14.2-9.6-23.2L134.4 305.9 20 191.4c-6.4-6.4-8.6-15.8-5.8-24.4s10.1-14.9 19.1-16.3l159.9-25.4 73.6-144.2c4.1-8 12.4-13.1 21.4-13.1zm0 76.8L230.3 158c-3.5 6.8-10 11.6-17.6 12.8l-125.5 20 89.8 89.9c5.4 5.4 7.9 13.1 6.7 20.7l-19.8 125.5 113.3-57.6c6.8-3.5 14.9-3.5 21.8 0l113.3 57.6-19.8-125.5c-1.2-7.6 1.3-15.3 6.7-20.7l89.8-89.9-125.5-20c-7.6-1.2-14.1-6-17.6-12.8L288.1 44.8z"></path>
203203
</svg>
@@ -215,7 +215,7 @@ templ userIcon(data string) {
215215
}}
216216
<div class="asset--metadata--has-icon">
217217
<div class="asset--metadata--icon">
218-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
218+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
219219
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
220220
<path d="M336 352c97.2 0 176-78.8 176-176S433.2 0 336 0S160 78.8 160 176c0 18.7 2.9 36.8 8.3 53.7L7 391c-4.5 4.5-7 10.6-7 17l0 80c0 13.3 10.7 24 24 24l80 0c13.3 0 24-10.7 24-24l0-40 40 0c13.3 0 24-10.7 24-24l0-40 40 0c6.4 0 12.5-2.5 17-7l33.3-33.3c16.9 5.4 35 8.3 53.7 8.3zM376 96a40 40 0 1 1 0 80 40 40 0 1 1 0-80z"></path>
221221
</svg>
@@ -236,7 +236,7 @@ templ uploadIcon(data string) {
236236
}}
237237
<div class="asset--metadata--has-icon">
238238
<div class="asset--metadata--icon">
239-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
239+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
240240
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
241241
<path d="M246.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 109.3 192 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM64 352c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-64z"></path>
242242
</svg>
@@ -257,7 +257,7 @@ templ tagIcon(data string) {
257257
}}
258258
<div class="asset--metadata--has-icon">
259259
<div class="asset--metadata--icon">
260-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
260+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
261261
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
262262
<path d="M0 80L0 229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 25 90.5 0L418.7 317.3c25-25 25-65.5 0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7L48 32C21.5 32 0 53.5 0 80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"></path>
263263
</svg>
@@ -276,7 +276,7 @@ templ personIcon(data string) {
276276
}}
277277
<div class="asset--metadata--has-icon">
278278
<div class="asset--metadata--icon">
279-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
279+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="448" height="512">
280280
<!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
281281
<path d="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z"></path>
282282
</svg>

0 commit comments

Comments
 (0)