21 Commits

Author SHA1 Message Date
unkinben a0cc2bfeb8 feat: update pgbouncer_exporter to 0.12.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:47:09 +10:00
unkinben 5a0b93c4b7 Merge pull request 'fix: support builds[].version metadata structure in update-gh' (#114) from worktree-fix+update-gh-builds-version into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #114
2026-05-02 01:34:41 +10:00
unkinben 17fec6b015 fix: support builds[].version metadata structure in update-gh
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
Packages use version/release fields nested inside builds[] entries
rather than at the top level of metadata.yaml.
2026-05-02 01:29:15 +10:00
unkinben eafcc7abc4 Merge pull request 'feat: add yq rpm' (#104) from benvin/yq into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #104
2026-04-26 22:03:28 +10:00
unkinben f80fde0524 Merge pull request 'feat: add kubectx rpm (includes kubens)' (#105) from benvin/kubectx into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #105
2026-04-26 22:01:15 +10:00
unkinben b4b7b39715 Merge pull request 'feat: add git-delta rpm' (#106) from benvin/git-delta into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #106
2026-04-26 21:38:17 +10:00
unkinben 3a286fc69c Merge pull request 'feat: add hadolint rpm' (#108) from benvin/hadolint into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #108
2026-04-26 21:36:21 +10:00
unkinben 029ca3ab17 Merge pull request 'feat: add lazydocker rpm' (#109) from benvin/lazydocker into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #109
2026-04-26 21:33:59 +10:00
unkinben 11ae33d80a Merge pull request 'feat: add code-server rpm' (#110) from benvin/code-server into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #110
2026-04-26 21:31:39 +10:00
unkinben dd2c72548f Merge pull request 'feat: add neovim and neovim-glibc-2.17 rpms' (#111) from benvin/neovim into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #111
2026-04-26 21:29:30 +10:00
unkinben 96ca30941a Merge pull request 'feat: add sops rpm' (#107) from benvin/sops into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #107
2026-04-26 21:27:11 +10:00
unkinben f001a9aa4b Merge pull request 'feat: add starship rpm' (#103) from benvin/starship into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #103
2026-04-26 21:24:50 +10:00
unkinben 82ae18e914 feat: add neovim and neovim-glibc-2.17 rpms
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:55:49 +10:00
unkinben 169959a3ac feat: add code-server rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-04-26 16:50:39 +10:00
unkinben ee98e4bcd3 feat: add lazydocker rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-04-26 16:45:58 +10:00
unkinben 2a56be453e feat: add hadolint rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:44:34 +10:00
unkinben 1128eb5d0f feat: add sops rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:43:48 +10:00
unkinben adaa9d8b19 feat: add git-delta rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:42:52 +10:00
unkinben 7f7f314121 feat: add kubectx rpm (includes kubens)
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:41:39 +10:00
unkinben 03e3d6c9ca feat: add yq rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:40:44 +10:00
unkinben 8a7e991c5f feat: add starship rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:39:48 +10:00
32 changed files with 636 additions and 13 deletions
+20
View File
@@ -0,0 +1,20 @@
---
name: code-server
github: coder/code-server
description: VS Code in the browser.
arch: amd64
platform: linux
maintainer: Coder
homepage: https://github.com/coder/code-server
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 4.117.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.117.0
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/bash
set -e
curl -L -o /app/dist/code-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.x86_64.rpm \
https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/coder/code-server/releases/download/v${PACKAGE_VERSION}/code-server-${PACKAGE_VERSION}-amd64.rpm
+14
View File
@@ -0,0 +1,14 @@
# nfpm.yaml - unused, RPM is downloaded directly in build.sh
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
+20
View File
@@ -0,0 +1,20 @@
---
name: git-delta
github: dandavison/delta
description: A syntax-highlighting pager for git, diff, grep, and blame output.
arch: amd64
platform: linux
maintainer: dandavison
homepage: https://github.com/dandavison/delta
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.19.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.19.2
+12
View File
@@ -0,0 +1,12 @@
#!/usr/bin/bash
set -e
# Note: delta releases use plain version tags (no v prefix)
wget -O /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/dandavison/delta/releases/download/${PACKAGE_VERSION}/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
tar xf /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
mv /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl/delta /app/delta
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- git-delta
provides:
- git-delta
contents:
- src: /app/delta
dst: /usr/bin/delta
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: hadolint
github: hadolint/hadolint
description: A smarter Dockerfile linter that helps you build best practice Docker images.
arch: amd64
platform: linux
maintainer: hadolint
homepage: https://github.com/hadolint/hadolint
license: GPL-3.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 2.14.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.14.0
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/hadolint https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/hadolint/hadolint/releases/download/v${PACKAGE_VERSION}/hadolint-linux-x86_64
chmod +x /app/hadolint
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- hadolint
provides:
- hadolint
contents:
- src: /app/hadolint
dst: /usr/bin/hadolint
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: kubectx
github: ahmetb/kubectx
description: Faster way to switch between clusters and namespaces in kubectl.
arch: amd64
platform: linux
maintainer: ahmetb
homepage: https://github.com/ahmetb/kubectx
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.11.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.11.0
+13
View File
@@ -0,0 +1,13 @@
#!/usr/bin/bash
set -e
wget -O /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
wget -O /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
tar xf /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubectx
tar xf /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubens
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+38
View File
@@ -0,0 +1,38 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- kubectx
- kubens
provides:
- kubectx
- kubens
contents:
- src: /app/kubectx
dst: /usr/bin/kubectx
file_info:
mode: 0755
owner: root
group: root
- src: /app/kubens
dst: /usr/bin/kubens
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: lazydocker
github: jesseduffield/lazydocker
description: The lazier way to manage everything docker.
arch: amd64
platform: linux
maintainer: jesseduffield
homepage: https://github.com/jesseduffield/lazydocker
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.25.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.25.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/jesseduffield/lazydocker/releases/download/v${PACKAGE_VERSION}/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz
tar xf /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz -C /app/ lazydocker
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- lazydocker
provides:
- lazydocker
contents:
- src: /app/lazydocker
dst: /usr/bin/lazydocker
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: neovim-glibc-2.17
github: neovim/neovim-releases
description: Vim-fork focused on extensibility and usability (glibc 2.17 compatible build).
arch: amd64
platform: linux
maintainer: neovim
homepage: https://neovim.io
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.12.2
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/bash
set -e
wget -O /app/nvim-linux-x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/neovim/neovim-releases/releases/download/v${PACKAGE_VERSION}/nvim-linux-x86_64.tar.gz
tar xf /app/nvim-linux-x86_64.tar.gz
mv /app/nvim-linux-x86_64/bin/nvim /app/nvim
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
@@ -0,0 +1,35 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- neovim-glibc-2.17
- neovim
provides:
- neovim-glibc-2.17
- nvim
conflicts:
- neovim
contents:
- src: /app/nvim
dst: /usr/bin/nvim
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: neovim
github: neovim/neovim
description: Vim-fork focused on extensibility and usability.
arch: amd64
platform: linux
maintainer: neovim
homepage: https://neovim.io
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.12.2
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/bash
set -e
wget -O /app/nvim-linux-x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/neovim/neovim/releases/download/v${PACKAGE_VERSION}/nvim-linux-x86_64.tar.gz
tar xf /app/nvim-linux-x86_64.tar.gz
mv /app/nvim-linux-x86_64/bin/nvim /app/nvim
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+35
View File
@@ -0,0 +1,35 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- neovim
- neovim-glibc-2.17
provides:
- neovim
- nvim
conflicts:
- neovim-glibc-2.17
contents:
- src: /app/nvim
dst: /usr/bin/nvim
file_info:
mode: 0755
owner: root
group: root
+8 -7
View File
@@ -1,14 +1,15 @@
---
arch: amd64 arch: amd64
builds: builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest - image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1' release: 1
repository: [almalinux/el8] repository:
version: 0.11.0 - almalinux/el8
version: 0.12.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest - image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1' release: 1
repository: [almalinux/el9] repository:
version: 0.11.0 - almalinux/el9
version: 0.12.0
description: Prometheus exporter for PgBouncer description: Prometheus exporter for PgBouncer
github: prometheus-community/pgbouncer_exporter github: prometheus-community/pgbouncer_exporter
homepage: https://github.com/prometheus-community/pgbouncer_exporter homepage: https://github.com/prometheus-community/pgbouncer_exporter
+20
View File
@@ -0,0 +1,20 @@
---
name: sops
github: getsops/sops
description: Simple and flexible tool for managing secrets.
arch: amd64
platform: linux
maintainer: getsops
homepage: https://github.com/getsops/sops
license: MPL-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 3.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 3.12.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/sops https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/getsops/sops/releases/download/v${PACKAGE_VERSION}/sops-v${PACKAGE_VERSION}.linux.amd64
chmod +x /app/sops
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- sops
provides:
- sops
contents:
- src: /app/sops
dst: /usr/bin/sops
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: starship
github: starship/starship
description: The minimal, blazing-fast, and infinitely customizable prompt for any shell.
arch: amd64
platform: linux
maintainer: starship
homepage: https://starship.rs
license: ISC
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.25.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.25.0
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/starship-x86_64-unknown-linux-musl.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/starship/starship/releases/download/v${PACKAGE_VERSION}/starship-x86_64-unknown-linux-musl.tar.gz
tar xf /app/starship-x86_64-unknown-linux-musl.tar.gz
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- starship
provides:
- starship
contents:
- src: /app/starship
dst: /usr/bin/starship
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: yq
github: mikefarah/yq
description: yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor.
arch: amd64
platform: linux
maintainer: mikefarah
homepage: https://github.com/mikefarah/yq
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 4.53.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.53.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/yq https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/mikefarah/yq/releases/download/v${PACKAGE_VERSION}/yq_linux_amd64
chmod +x /app/yq
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- yq
provides:
- yq
contents:
- src: /app/yq
dst: /usr/bin/yq
file_info:
mode: 0755
owner: root
group: root
+18 -1
View File
@@ -293,6 +293,10 @@ def update_package_metadata(package_dir: Path, new_version: str, dry_run: bool =
with open(metadata_file, 'r') as f: with open(metadata_file, 'r') as f:
metadata = yaml.safe_load(f) metadata = yaml.safe_load(f)
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version') is not None:
old_version = str(builds[0].get('version', 'unknown'))
else:
old_version = metadata.get('version', 'unknown') old_version = metadata.get('version', 'unknown')
logger.info(f"Updating {metadata.get('name', 'unknown')} from {old_version} to {new_version}") logger.info(f"Updating {metadata.get('name', 'unknown')} from {old_version} to {new_version}")
@@ -301,6 +305,13 @@ def update_package_metadata(package_dir: Path, new_version: str, dry_run: bool =
return True return True
# Update version in metadata and reset release to 1 # Update version in metadata and reset release to 1
# Support both top-level version and builds[].version
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version') is not None:
for build in builds:
build['version'] = new_version
build['release'] = 1
else:
metadata['version'] = new_version metadata['version'] = new_version
metadata['release'] = 1 metadata['release'] = 1
@@ -340,7 +351,6 @@ def check_package_updates(package_dir: Path, dry_run: bool = False) -> bool:
metadata = yaml.safe_load(f) metadata = yaml.safe_load(f)
package_name = metadata.get('name', package_dir.name) package_name = metadata.get('name', package_dir.name)
current_version = metadata.get('version')
github_repo = metadata.get('github') github_repo = metadata.get('github')
claude_ai = metadata.get('claude_ai', False) claude_ai = metadata.get('claude_ai', False)
@@ -348,6 +358,13 @@ def check_package_updates(package_dir: Path, dry_run: bool = False) -> bool:
logger.debug(f"Package {package_name} has no GitHub repo or claude_ai configured") logger.debug(f"Package {package_name} has no GitHub repo or claude_ai configured")
return True return True
# Support both top-level version and builds[].version
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version'):
current_version = str(builds[0].get('version'))
else:
current_version = metadata.get('version')
if not current_version: if not current_version:
logger.warning(f"Package {package_name} has no version in metadata") logger.warning(f"Package {package_name} has no version in metadata")
return False return False