Compare commits
2 Commits
v3.23
...
61f810ee9b
| Author | SHA1 | Date | |
|---|---|---|---|
| 61f810ee9b | |||
| b3b584f4f8 |
190
.github/workflows/main.yaml
vendored
190
.github/workflows/main.yaml
vendored
@@ -5,12 +5,12 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- v3.23
|
- main
|
||||||
|
|
||||||
env:
|
env:
|
||||||
BASE_URL: https://git.mug.lv/api/packages/mug/alpine
|
BASE_URL: https://git.mug.lv/api/packages/mug/alpine
|
||||||
PACKAGER: Galen Abell <galen@galenabell.com>
|
PACKAGER: Galen Abell <galen@galenabell.com>
|
||||||
RELEASE: "v3.23"
|
RELEASE: '3.22'
|
||||||
REPOSITORY: main
|
REPOSITORY: main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
@@ -18,110 +18,122 @@ jobs:
|
|||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
container:
|
container:
|
||||||
image: alpine:3.23
|
image: alpine:${{ env.RELEASE }}
|
||||||
steps:
|
steps:
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: apk add abuild bash curl doas git jq lua-aports nodejs
|
run: apk add abuild bash curl doas git jq lua-aports nodejs
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v5
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Setup abuild
|
- name: Setup abuild
|
||||||
run: |
|
run: |
|
||||||
cat <<EOF | tee /etc/apk/repositories
|
cat <<EOF | tee /etc/apk/repositories
|
||||||
$BASE_URL/$RELEASE/$REPOSITORY
|
$BASE_URL/v$RELEASE/$REPOSITORY
|
||||||
https://dl-cdn.alpinelinux.org/alpine/$RELEASE/main
|
https://dl-cdn.alpinelinux.org/alpine/v$RELEASE/main
|
||||||
https://dl-cdn.alpinelinux.org/alpine/$RELEASE/community
|
https://dl-cdn.alpinelinux.org/alpine/v$RELEASE/community
|
||||||
EOF
|
EOF
|
||||||
curl -sJO --output-dir /etc/apk/keys "$BASE_URL/key"
|
curl -sJO --output-dir /etc/apk/keys "$BASE_URL/key"
|
||||||
apk update || true
|
apk update || true
|
||||||
|
|
||||||
printf 'PACKAGER="%s"' "$PACKAGER" | tee -a /etc/abuild.conf
|
printf 'PACKAGER="%s"' "$PACKAGER" | tee -a /etc/abuild.conf
|
||||||
echo "permit nopass :wheel" >/etc/doas.conf
|
echo "permit nopass :wheel" >/etc/doas.conf
|
||||||
mkdir -p /var/cache/distfiles
|
mkdir -p /var/cache/distfiles
|
||||||
chmod a+w /var/cache/distfiles
|
chmod a+w /var/cache/distfiles
|
||||||
abuild-keygen -ain
|
abuild-keygen -ain
|
||||||
|
|
||||||
- name: Get changed packages
|
- name: Get changed packages
|
||||||
id: changed
|
id: changed
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
if [ "$GITHUB_EVENT_NAME" = 'push' ]; then
|
||||||
|
packages="$(git show \
|
||||||
|
--pretty= \
|
||||||
|
--name-only \
|
||||||
|
--diff-filter=ACMR \
|
||||||
|
--relative="$REPOSITORY" \
|
||||||
|
HEAD -- '*/APKBUILD' |
|
||||||
|
xargs -rn1 dirname |
|
||||||
|
xargs -r ap builddirs -d "$(pwd)/$REPOSITORY" |
|
||||||
|
xargs -rn1 basename)"
|
||||||
|
else
|
||||||
packages="$(git diff \
|
packages="$(git diff \
|
||||||
--name-only \
|
--name-only \
|
||||||
--diff-filter=ACMR \
|
--diff-filter=ACMR \
|
||||||
--relative="$REPOSITORY" \
|
--relative="$REPOSITORY" \
|
||||||
"$BASE_REF"...HEAD -- '*/APKBUILD' |
|
origin/main...HEAD -- '*/APKBUILD' |
|
||||||
xargs -rn1 dirname |
|
xargs -rn1 dirname |
|
||||||
xargs -r ap builddirs -d "$(pwd)/$REPOSITORY" |
|
xargs -r ap builddirs -d "$(pwd)/$REPOSITORY" |
|
||||||
xargs -rn1 basename)"
|
xargs -rn1 basename)"
|
||||||
echo 'packages<<EOF' >>"$GITHUB_OUTPUT"
|
fi
|
||||||
echo "$packages" >>"$GITHUB_OUTPUT"
|
echo 'packages<<EOF' >>"$GITHUB_OUTPUT"
|
||||||
echo 'EOF' >>"$GITHUB_OUTPUT"
|
echo "$packages" >>"$GITHUB_OUTPUT"
|
||||||
echo "$packages"
|
echo 'EOF' >>"$GITHUB_OUTPUT"
|
||||||
env:
|
echo "$GITHUB_OUTPUT"
|
||||||
BASE_REF: ${{ github.event_name == 'push' && github.event.before || format('origin/{0}', github.base_ref) }}
|
|
||||||
|
|
||||||
- name: Build packages
|
- name: Build packages
|
||||||
if: ${{ steps.changed.outputs.packages != '' }}
|
if: ${{ steps.changed.outputs.packages != '' }}
|
||||||
run: |
|
run: |
|
||||||
echo "$CHANGED_PACKAGES" | while read -r package; do
|
echo "$CHANGED_PACKAGES" | while read -r package; do
|
||||||
(cd "$REPOSITORY/$package" && abuild -Frc)
|
(cd "$REPOSITORY/$package" && abuild -Frc)
|
||||||
done
|
done
|
||||||
env:
|
env:
|
||||||
CHANGED_PACKAGES: ${{ steps.changed.outputs.packages }}
|
CHANGED_PACKAGES: ${{ steps.changed.outputs.packages }}
|
||||||
|
|
||||||
- name: Upload packages
|
- name: Upload packages
|
||||||
if: ${{ github.event_name == 'push' && steps.changed.outputs.packages != '' }}
|
if: ${{ github.event_name == 'push' && steps.changed.outputs.packages != '' }}
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
find "$HOME/packages" -type f -name '*.apk' | while read -r pkg; do
|
find "$HOME/packages" -type f -name '*.apk' | while read -r pkg; do
|
||||||
name="$(tar Oxzvf "$pkg" .PKGINFO 2>/dev/null | grep ^pkgname | cut -d= -f2 | xargs)"
|
name="$(tar Oxzvf "$pkg" .PKGINFO 2>/dev/null | grep ^pkgname | cut -d= -f2 | xargs)"
|
||||||
arch="$(tar Oxzvf "$pkg" .PKGINFO 2>/dev/null | grep ^arch | cut -d= -f2 | xargs)"
|
arch="$(tar Oxzvf "$pkg" .PKGINFO 2>/dev/null | grep ^arch | cut -d= -f2 | xargs)"
|
||||||
echo "deleting $name"
|
echo "deleting $name"
|
||||||
curl --silent --user "$USER:$PASSWORD" \
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
--fail-with-body \
|
--fail-with-body \
|
||||||
-X DELETE \
|
-X DELETE \
|
||||||
"$BASE_URL/$RELEASE/$REPOSITORY/$arch/$(basename "$pkg")" || echo 'package does not already exist'
|
"$BASE_URL/v$RELEASE/$REPOSITORY/$arch/$(basename "$pkg")" || echo 'package does not already exist'
|
||||||
echo "uploading $name"
|
echo "uploading $name"
|
||||||
curl --silent --user "$USER:$PASSWORD" \
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
--fail-with-body \
|
--fail-with-body \
|
||||||
--upload-file "$pkg" \
|
--upload-file "$pkg" \
|
||||||
"$BASE_URL/$RELEASE/$REPOSITORY"
|
"$BASE_URL/v$RELEASE/$REPOSITORY"
|
||||||
echo "linking $name"
|
echo "linking $name"
|
||||||
curl --silent --user "$USER:$PASSWORD" \
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
--fail-with-body \
|
--fail-with-body \
|
||||||
-X POST \
|
-X POST \
|
||||||
"$GITHUB_API_URL/packages/$USER/alpine/$name/-/link/aports" || echo 'package is already linked'
|
"$GITHUB_API_URL/packages/$USER/alpine/$name/-/link/aports" || echo 'package is already linked'
|
||||||
done
|
done
|
||||||
env:
|
env:
|
||||||
PASSWORD: ${{ secrets.PACKAGES_TOKEN }}
|
PASSWORD: ${{ secrets.PACKAGES_TOKEN }}
|
||||||
USER: ${{ github.repository_owner }}
|
USER: ${{ github.repository_owner }}
|
||||||
|
|
||||||
- name: Cleanup deleted packages
|
- name: Cleanup deleted packages
|
||||||
if: ${{ github.event_name == 'push' }}
|
if: ${{ github.event_name == 'push' }}
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
apk list --from=none --repository="$BASE_URL/$RELEASE/$REPOSITORY" |
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
cut -d' ' -f3 |
|
--fail-with-body \
|
||||||
tr -d '{}' |
|
"$GITHUB_API_URL/packages/$USER?type=alpine" |
|
||||||
|
jq -r '.[].name' |
|
||||||
sort -u |
|
sort -u |
|
||||||
while read -r pkg; do
|
while read -r pkg; do
|
||||||
if [ -z "$(ap builddirs -d "$(pwd)/$REPOSITORY" "$pkg" 2>/dev/null)" ]; then
|
if [ -z "$(ap builddirs -d "$(pwd)/$REPOSITORY" "$pkg" 2>/dev/null)" ]; then
|
||||||
apk list --from=none --repository="$BASE_URL/$RELEASE/$REPOSITORY" "$pkg" |
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
cut -d' ' -f1-2 |
|
--fail-with-body \
|
||||||
while read -r pkg; do
|
"$GITHUB_API_URL/packages/$USER?type=alpine&q=$pkg" |
|
||||||
filename="$(echo "$pkg" | cut -d' ' -f1)"
|
jq -r ".[]|select(.name==\"$pkg\").version" |
|
||||||
arch="$(echo "$pkg" | cut -d' ' -f2)"
|
sort -u |
|
||||||
echo "deleting $filename ($arch)"
|
while read -r version; do
|
||||||
curl --silent --user "$USER:$PASSWORD" \
|
echo "deleting $pkg ($version)"
|
||||||
--fail-with-body \
|
curl --silent --user "$USER:$PASSWORD" \
|
||||||
-X DELETE \
|
--fail-with-body \
|
||||||
"$BASE_URL/$RELEASE/$REPOSITORY/$arch/$filename"
|
-X DELETE \
|
||||||
done
|
"$GITHUB_API_URL/packages/$USER/alpine/$pkg/$version"
|
||||||
|
done
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
env:
|
env:
|
||||||
PASSWORD: ${{ secrets.PACKAGES_TOKEN }}
|
PASSWORD: ${{ secrets.PACKAGES_TOKEN }}
|
||||||
USER: ${{ github.repository_owner }}
|
USER: ${{ github.repository_owner }}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=Canop/bacon
|
# renovate: datasource=github-tags packageName=Canop/bacon
|
||||||
pkgname=bacon
|
pkgname=bacon
|
||||||
pkgver=3.20.3
|
pkgver=3.18.0
|
||||||
pkgrel=0
|
pkgrel=0
|
||||||
pkgdesc="Background code checker"
|
pkgdesc="Background code checker"
|
||||||
url="https://github.com/Canop/bacon"
|
url="https://github.com/Canop/bacon"
|
||||||
@@ -29,5 +29,5 @@ package() {
|
|||||||
install -Dm755 target/release/bacon "$pkgdir/usr/bin/bacon"
|
install -Dm755 target/release/bacon "$pkgdir/usr/bin/bacon"
|
||||||
}
|
}
|
||||||
sha512sums="
|
sha512sums="
|
||||||
deb16a259d740abe6a9e5764c95ff4d91fb3f2ea7beaf88a6744ce37f125b74f780f3136bae8a8e843c07a260091795f684137cd609503c37e55c0796bc50033 bacon-3.20.3.tar.gz
|
56db64ebc447a7e9aeb3f11bf463782fbe0e4327c32d24c1c6ff816ff7046ea1b80b3e86502d3a2b73d0d4bfb48447805dafd068185d56fe2e37c36489723cb6 bacon-3.18.0.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=npm
|
# renovate: datasource=npm
|
||||||
pkgname=bash-language-server
|
pkgname=bash-language-server
|
||||||
pkgver=5.6.0
|
pkgver=5.6.0
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="A language server for Bash"
|
pkgdesc="A language server for Bash"
|
||||||
url="https://github.com/bash-lsp/bash-language-server"
|
url="https://github.com/bash-lsp/bash-language-server"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
pkgname=box-cli
|
pkgname=box-cli
|
||||||
pkgver=0_git20251123
|
pkgver=0_git20251014
|
||||||
_pkgsha=29d08f257968d12d53f4248575b2b2ac8c7b1e03
|
_pkgsha=7e80fa254074461bf5404d9b4af99adff8e370ed
|
||||||
pkgrel=2
|
pkgrel=0
|
||||||
pkgdesc="Transparent development environments."
|
pkgdesc="Transparent development environments."
|
||||||
url="https://codeberg.org/galen/box-cli"
|
url="https://codeberg.org/galen/box-cli"
|
||||||
arch="all"
|
arch="all"
|
||||||
@@ -31,5 +31,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
a336d9779cbe625c403eb106b41f5263ba1e32e533c32d9f03098f939a0df56ccec3ace528170a396a4ea790df3c0a8ba554dfdd1bf9275d88d707aab3ddcc32 box-cli-29d08f257968d12d53f4248575b2b2ac8c7b1e03.tar.gz
|
4934586c2b203b88688017c59de64f635d2d86011762e60d3a5f8f456f6ac3fcb951f7c4494a0733beabeb80a770ef492742d9e427ff725d6407c6a5e39f8ef8 box-cli-7e80fa254074461bf5404d9b4af99adff8e370ed.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=browserpass/browserpass-extension
|
# renovate: datasource=github-tags packageName=browserpass/browserpass-extension
|
||||||
pkgname=browserpass-extension-firefox
|
pkgname=browserpass-extension-firefox
|
||||||
pkgver=3.11.0
|
pkgver=3.11.0
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Browser extension for pass (Firefox extension)"
|
pkgdesc="Browser extension for pass (Firefox extension)"
|
||||||
url="https://github.com/browserpass/browserpass-extension"
|
url="https://github.com/browserpass/browserpass-extension"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=cargo-generate/cargo-generate
|
# renovate: datasource=github-tags packageName=cargo-generate/cargo-generate
|
||||||
pkgname=cargo-generate
|
pkgname=cargo-generate
|
||||||
pkgver=0.23.7
|
pkgver=0.23.5
|
||||||
pkgrel=0
|
pkgrel=0
|
||||||
pkgdesc="Use pre-existing git repositories as templates"
|
pkgdesc="Use pre-existing git repositories as templates"
|
||||||
url="https://github.com/cargo-generate/cargo-generate"
|
url="https://github.com/cargo-generate/cargo-generate"
|
||||||
@@ -32,5 +32,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
279ffa77a51eefe292cbb3a6bfb55724bc06e9e9e8e7f0cb5687137d57166f9a9c366bb69a05b8271f2d9a900ee8b94d348ab591e46c02904136b5cf04497aff cargo-generate-0.23.7.tar.gz
|
7524d847464f85a1da877188140bfee2a10f43613646fd42aed37735b70e2e841bf2d4d688d31a7745a9938a712e310a792f5f1385693706eaf508823301cd98 cargo-generate-0.23.5.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
pkgname=clevis-extra-pins
|
pkgname=clevis-extra-pins
|
||||||
pkgver=0_git20241007
|
pkgver=0_git20241007
|
||||||
_gitrev=6a2093f0988debcc6574f52561f39fd25c17635a
|
_gitrev=6a2093f0988debcc6574f52561f39fd25c17635a
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Additional pins for Clevis binding framework"
|
pkgdesc="Additional pins for Clevis binding framework"
|
||||||
url="https://github.com/anatol/clevis.go"
|
url="https://github.com/anatol/clevis.go"
|
||||||
license="GPL-3.0-or-later"
|
license="GPL-3.0-or-later"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=latchset/clevis
|
# renovate: datasource=github-tags packageName=latchset/clevis
|
||||||
pkgname=clevis
|
pkgname=clevis
|
||||||
pkgver=21
|
pkgver=21
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Pluggable framework for automated decryption"
|
pkgdesc="Pluggable framework for automated decryption"
|
||||||
url="https://github.com/latchset/clevis"
|
url="https://github.com/latchset/clevis"
|
||||||
license="GPL-3.0-or-later WITH OpenSSL-Exception"
|
license="GPL-3.0-or-later WITH OpenSSL-Exception"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=GoogleCloudPlatform/cloud-sql-proxy
|
# renovate: datasource=github-tags packageName=GoogleCloudPlatform/cloud-sql-proxy
|
||||||
pkgname=cloud-sql-proxy
|
pkgname=cloud-sql-proxy
|
||||||
pkgver=2.20.0
|
pkgver=2.18.2
|
||||||
pkgrel=0
|
pkgrel=1
|
||||||
pkgdesc="Authentication proxy for Google Cloud SQL"
|
pkgdesc="Authentication proxy for Google Cloud SQL"
|
||||||
url="https://github.com/GoogleCloudPlatform/cloud-sql-proxy"
|
url="https://github.com/GoogleCloudPlatform/cloud-sql-proxy"
|
||||||
arch="all"
|
arch="all"
|
||||||
@@ -28,5 +28,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
b33a281589ae1eb2ddc35f8c21e7165e593ce2addabaa6a2c8a2c463e1774496409c65cea080c097440d7f7a8b1c1caeedb565016f4344b9a1fe1b53459d4a9b cloud-sql-proxy-2.20.0.tar.gz
|
f79a173449b786e755beacba06215d9df351c052f7a20aed2db5599c070935b7b9d2445b4b518cce53c1c1e403c15a2cfb4a17be7e3c4de2efd5951f6f84a2bf cloud-sql-proxy-2.18.2.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
13
main/devpod/0001-devpod-code-oss-binary.patch
Normal file
13
main/devpod/0001-devpod-code-oss-binary.patch
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/pkg/ide/vscode/open.go b/pkg/ide/vscode/open.go
|
||||||
|
index 18aae60d..927c1cce 100644
|
||||||
|
--- a/pkg/ide/vscode/open.go
|
||||||
|
+++ b/pkg/ide/vscode/open.go
|
||||||
|
@@ -122,6 +122,8 @@ func findCLI(flavor Flavor) string {
|
||||||
|
if flavor == FlavorStable {
|
||||||
|
if command.Exists("code") {
|
||||||
|
return "code"
|
||||||
|
+ } else if command.Exists("code-oss") {
|
||||||
|
+ return "code-oss"
|
||||||
|
} else if runtime.GOOS == "darwin" && command.Exists("/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code") {
|
||||||
|
return "/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code"
|
||||||
|
}
|
||||||
11
main/devpod/0002-devpod-busybox-base64-decode.patch
Normal file
11
main/devpod/0002-devpod-busybox-base64-decode.patch
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
diff --git a/pkg/options/resolve_test.go b/pkg/options/resolve_test.go
|
||||||
|
index 5a38cccb..9bb0f197 100644
|
||||||
|
--- a/pkg/options/resolve_test.go
|
||||||
|
+++ b/pkg/options/resolve_test.go
|
||||||
|
@@ -700,5 +700,5 @@ func optionsToSubCommand(optionDefinitions config.OptionDefinitions) string {
|
||||||
|
out, _ := json.Marshal(&provider.SubOptions{
|
||||||
|
Options: optionDefinitions,
|
||||||
|
})
|
||||||
|
- return fmt.Sprintf("echo '%s' | base64 --decode", base64.StdEncoding.EncodeToString(out))
|
||||||
|
+ return fmt.Sprintf("echo '%s' | base64 -d", base64.StdEncoding.EncodeToString(out))
|
||||||
|
}
|
||||||
53
main/devpod/APKBUILD
Normal file
53
main/devpod/APKBUILD
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
# renovate: datasource=github-tags packageName=loft-sh/devpod
|
||||||
|
pkgname=devpod
|
||||||
|
pkgver=0.6.15
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Codespaces but open-source, client-only, and unopinionated"
|
||||||
|
url="https://github.com/loft-sh/devpod"
|
||||||
|
# ppc64le blocked by undefined references
|
||||||
|
# armhf, armv7, x86, loongarch64 and riscv64 blocked by -race not being supported
|
||||||
|
arch="x86_64 aarch64 s390x"
|
||||||
|
license="MPL-2.0"
|
||||||
|
makedepends="go linux-headers"
|
||||||
|
checkdepends="bash docker"
|
||||||
|
source="
|
||||||
|
$pkgname-$pkgver.tar.gz::https://github.com/loft-sh/devpod/archive/refs/tags/v$pkgver.tar.gz
|
||||||
|
0001-devpod-code-oss-binary.patch
|
||||||
|
0002-devpod-busybox-base64-decode.patch
|
||||||
|
"
|
||||||
|
subpackages="
|
||||||
|
$pkgname-bash-completion
|
||||||
|
$pkgname-zsh-completion
|
||||||
|
$pkgname-fish-completion
|
||||||
|
"
|
||||||
|
|
||||||
|
build() {
|
||||||
|
go build -trimpath -v -o devpod-cli \
|
||||||
|
-ldflags="-X github.com/loft-sh/devpod/pkg/version.version=v$pkgver -extldflags=-static"
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
./hack/unit-tests.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 devpod-cli "$pkgdir"/usr/bin/devpod-cli
|
||||||
|
ln -s /usr/bin/devpod-cli "$pkgdir"/usr/bin/devpod
|
||||||
|
|
||||||
|
mkdir -p \
|
||||||
|
"$pkgdir"/usr/share/bash-completion/completions \
|
||||||
|
"$pkgdir"/usr/share/zsh/site-functions \
|
||||||
|
"$pkgdir"/usr/share/fish/vendor_completions.d
|
||||||
|
|
||||||
|
./devpod-cli completion bash > "$pkgdir"/usr/share/bash-completion/completions/$pkgname
|
||||||
|
./devpod-cli completion zsh > "$pkgdir"/usr/share/zsh/site-functions/$pkgname
|
||||||
|
./devpod-cli completion fish > "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
5c304d267b9ef790acec6feb595c09abadf57faa894cf94eeae8a758e900aa333799daf2ef92767dc5cc921bbfe550e3cfb6f41c51cbe0a2e2feb7d22339e13f devpod-0.6.15.tar.gz
|
||||||
|
1cb7c5f4802ff2157de3183372f6bc09900bf9f2a7db49eb8cb470d74c26ee72f4c6f279cd3513aaaa2e97845c638c996f25a1a72f4f34d18b85157ec0b07dd6 0001-devpod-code-oss-binary.patch
|
||||||
|
ca3d9bc0fdc00eb2e60484803d502f00e280e291b134cd784ebf627f7d60938f405c89539d45e980c31db2752736f1fb8afe08380ea3fe1cbc20f40c81cdad3e 0002-devpod-busybox-base64-decode.patch
|
||||||
|
"
|
||||||
@@ -1,18 +1,19 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=celenityy/Dove
|
# renovate: datasource=github-tags packageName=celenityy/Dove
|
||||||
pkgname=dove
|
pkgname=dove
|
||||||
pkgver=2025.11.27.1
|
pkgver=2025.10.03.1
|
||||||
_phoenix_pkgver=2025.11.27.1
|
_phoenix_pkgver=2025.10.03.1
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Privacy & security configurations for Thunderbird"
|
pkgdesc="Privacy & security configurations for Thunderbird"
|
||||||
url="https://codeberg.org/celenity/Dove"
|
url="https://codeberg.org/celenity/Dove"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
license="GPL-3.0-or-later"
|
license="GPL-3.0-or-later"
|
||||||
makedepends="bash curl jq python3 py3-lxml wget zip"
|
makedepends="bash curl jq python3 wget zip"
|
||||||
options="!check net" # no tests
|
options="!check net" # no tests
|
||||||
source="
|
source="
|
||||||
$pkgname-$pkgver.tar.gz::https://codeberg.org/celenity/Dove/archive/$pkgver.tar.gz
|
$pkgname-$pkgver.tar.gz::https://codeberg.org/celenity/Dove/archive/$pkgver.tar.gz
|
||||||
phoenix-$_phoenix_pkgver.tar.gz::https://codeberg.org/celenity/Phoenix/archive/$_phoenix_pkgver.tar.gz
|
phoenix-$_phoenix_pkgver.tar.gz::https://codeberg.org/celenity/Phoenix/archive/$_phoenix_pkgver.tar.gz
|
||||||
|
fix-missing-autoconfig-dir.patch
|
||||||
"
|
"
|
||||||
builddir="$srcdir/dove"
|
builddir="$srcdir/dove"
|
||||||
|
|
||||||
@@ -38,6 +39,7 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
b58bee44527f5d3772fdf96eee63f899af8d8b138f5c1ca2b2647ae67011c00192b860cf9ede30b7ce185c3470f48569b4fae4a3ff4e0fef243d8399904402cf dove-2025.11.27.1.tar.gz
|
63c2f201abf63989e526b0cd14759caec80b39dfdb74effbdfe168c4e0aa3ce39ca548b55de6a03b60b7eebde3236896c04f17630b7ccecc4be18264db4b2633 dove-2025.10.03.1.tar.gz
|
||||||
cb3787298acf80efe5c5369a15106643f3c3f460bec35f8fb8f904a75f99cfa0df66f1aaccbf6e27347858359e556cd56d56740f5345553745555bd6ca6a5ad3 phoenix-2025.11.27.1.tar.gz
|
49d61bb4b50ee3e899142a4906a2f05f88e007a98d470a63572536318a23c701e21e237b4ad1603fa3faa57bc2229c03d56dd2e13342238d3964d88e8982a04f phoenix-2025.10.03.1.tar.gz
|
||||||
|
aea93ac02e0aa5a434f6a0b14c7329d25cfea62efc2839656810ce3842ddfcc05fb32d310c710b5864f8b01bb72c25d6d903a8bcad762df79489a429e017520b fix-missing-autoconfig-dir.patch
|
||||||
"
|
"
|
||||||
|
|||||||
12
main/dove/fix-missing-autoconfig-dir.patch
Normal file
12
main/dove/fix-missing-autoconfig-dir.patch
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
diff --git i/build/build.sh w/build/build.sh
|
||||||
|
index 60590fa..4e1e370 100755
|
||||||
|
--- i/build/build.sh
|
||||||
|
+++ w/build/build.sh
|
||||||
|
@@ -25,6 +25,7 @@ curl --doh-cert-status --no-insecure --no-proxy-insecure --no-sessionid --no-ssl
|
||||||
|
|
||||||
|
popd
|
||||||
|
|
||||||
|
+mkdir -vp external/autoconfig
|
||||||
|
pushd "external/autoconfig"
|
||||||
|
rm -vrf *
|
||||||
|
echo "Downloading Thunderbird's autoconfiguration database (ISPDB) LICENSE..."
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=nametake/golangci-lint-langserver
|
# renovate: datasource=github-tags packageName=nametake/golangci-lint-langserver
|
||||||
pkgname=golangci-lint-langserver
|
pkgname=golangci-lint-langserver
|
||||||
pkgver=0.0.11
|
pkgver=0.0.11
|
||||||
pkgrel=3
|
pkgrel=1
|
||||||
pkgdesc="golangci-lint language server"
|
pkgdesc="golangci-lint language server"
|
||||||
url="https://github.com/nametake/golangci-lint-langserver"
|
url="https://github.com/nametake/golangci-lint-langserver"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
pkgname=guess-indent.nvim
|
pkgname=guess-indent.nvim
|
||||||
pkgver=0_git20250325
|
pkgver=0_git20250325
|
||||||
_pkgsha=84a4987ff36798c2fc1169cbaff67960aed9776f
|
_pkgsha=84a4987ff36798c2fc1169cbaff67960aed9776f
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Automatic indentation style detection for Neovim"
|
pkgdesc="Automatic indentation style detection for Neovim"
|
||||||
url="https://github.com/NMAC427/guess-indent.nvim"
|
url="https://github.com/NMAC427/guess-indent.nvim"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=haskell/haskell-language-server
|
# renovate: datasource=github-tags packageName=haskell/haskell-language-server
|
||||||
pkgname=haskell-language-server
|
pkgname=haskell-language-server
|
||||||
pkgver=2.9.0.0
|
pkgver=2.9.0.0
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Official Haskell Language Server implementation"
|
pkgdesc="Official Haskell Language Server implementation"
|
||||||
url="https://github.com/haskell/haskell-language-server"
|
url="https://github.com/haskell/haskell-language-server"
|
||||||
arch="x86_64 aarch64" # limited by ghc
|
arch="x86_64 aarch64" # limited by ghc
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=MaxVerevkin/i3bar-river
|
# renovate: datasource=github-tags packageName=MaxVerevkin/i3bar-river
|
||||||
pkgname=i3bar-river
|
pkgname=i3bar-river
|
||||||
pkgver=1.1.0
|
pkgver=1.1.0
|
||||||
pkgrel=4
|
pkgrel=2
|
||||||
pkgdesc="Port of i3bar for wlroots-based compositors"
|
pkgdesc="Port of i3bar for wlroots-based compositors"
|
||||||
url="https://github.com/MaxVerevkin/i3bar-river"
|
url="https://github.com/MaxVerevkin/i3bar-river"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
pkgname=ingot
|
pkgname=ingot
|
||||||
pkgver=0_git20251003
|
pkgver=0_git20251003
|
||||||
_pkgsha=260f33828276ea213bf09c73fd5eaa8b5647f381
|
_pkgsha=260f33828276ea213bf09c73fd5eaa8b5647f381
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Reliable status bar generator for Sway"
|
pkgdesc="Reliable status bar generator for Sway"
|
||||||
url="https://codeberg.org/galen/ingot"
|
url="https://codeberg.org/galen/ingot"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=sh0rez/kubectl-neat-diff
|
# renovate: datasource=github-tags packageName=sh0rez/kubectl-neat-diff
|
||||||
pkgname=kubectl-neat-diff
|
pkgname=kubectl-neat-diff
|
||||||
pkgver=0.2.0
|
pkgver=0.2.0
|
||||||
pkgrel=3
|
pkgrel=1
|
||||||
pkgdesc="De-clutter your kubectl diff output using kubectl-neat"
|
pkgdesc="De-clutter your kubectl diff output using kubectl-neat"
|
||||||
url="https://github.com/sh0rez/kubectl-neat-diff"
|
url="https://github.com/sh0rez/kubectl-neat-diff"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=latchset/luksmeta
|
# renovate: datasource=github-tags packageName=latchset/luksmeta
|
||||||
pkgname=luksmeta
|
pkgname=luksmeta
|
||||||
pkgver=9
|
pkgver=9
|
||||||
pkgrel=2
|
pkgrel=0
|
||||||
pkgdesc="Library for storing metadata in the LUKSv1 header"
|
pkgdesc="Library for storing metadata in the LUKSv1 header"
|
||||||
url="https://github.com/latchset/luksmeta"
|
url="https://github.com/latchset/luksmeta"
|
||||||
license="LGPL-2.0-or-later"
|
license="LGPL-2.0-or-later"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=echasnovski/mini.nvim
|
# renovate: datasource=github-tags packageName=echasnovski/mini.nvim
|
||||||
pkgname=mini.nvim
|
pkgname=mini.nvim
|
||||||
pkgver=0.16.0
|
pkgver=0.16.0
|
||||||
pkgrel=2
|
pkgrel=1
|
||||||
pkgdesc="Library of 35+ independent Lua modules improving overall Neovim experience with minimal effort"
|
pkgdesc="Library of 35+ independent Lua modules improving overall Neovim experience with minimal effort"
|
||||||
url="https://github.com/echasnovski/mini.nvim"
|
url="https://github.com/echasnovski/mini.nvim"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
65
main/niri/APKBUILD
Normal file
65
main/niri/APKBUILD
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
pkgname=niri
|
||||||
|
pkgver=25.08
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="A scrollable-tiling Wayland compositor"
|
||||||
|
url="https://github.com/YaLTeR/niri"
|
||||||
|
arch="x86_64 ppc64le aarch64"
|
||||||
|
license="GPL-3.0-only"
|
||||||
|
makedepends="
|
||||||
|
cargo
|
||||||
|
cargo-auditable
|
||||||
|
clang-libclang
|
||||||
|
clang-libs
|
||||||
|
eudev-dev
|
||||||
|
glib-dev
|
||||||
|
libdisplay-info-dev
|
||||||
|
libinput-dev
|
||||||
|
libseat-dev
|
||||||
|
libxkbcommon-dev
|
||||||
|
mesa-dev
|
||||||
|
pango-dev
|
||||||
|
pipewire-dev
|
||||||
|
rust
|
||||||
|
"
|
||||||
|
subpackages="
|
||||||
|
$pkgname-portalsconf
|
||||||
|
"
|
||||||
|
source="$pkgname-$pkgver.tar.gz::https://github.com/YaLTeR/niri/archive/refs/tags/v$pkgver.tar.gz
|
||||||
|
niri-session.patch
|
||||||
|
"
|
||||||
|
options="net" # rust crates
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cargo auditable build \
|
||||||
|
--release \
|
||||||
|
--no-default-features \
|
||||||
|
--features dbus,xdp-gnome-screencast
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
ulimit -n 4096 # Fails otherwise due to lack of file descriptors
|
||||||
|
cargo test \
|
||||||
|
--release \
|
||||||
|
--no-default-features \
|
||||||
|
--features dbus,xdp-gnome-screencast
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 target/release/niri -t "$pkgdir"/usr/bin/
|
||||||
|
install -Dm644 resources/niri.desktop -t "$pkgdir"/usr/share/wayland-sessions/
|
||||||
|
install -Dm644 resources/niri-portals.conf -t "$pkgdir"/usr/share/xdg-desktop-portal/
|
||||||
|
}
|
||||||
|
|
||||||
|
portalsconf() {
|
||||||
|
pkgdesc="xdg-desktop-portal configuration of compatible portals for Niri"
|
||||||
|
install_if="$pkgname=$pkgver-r$pkgrel"
|
||||||
|
depends="xdg-desktop-portal xdg-desktop-portal-gnome"
|
||||||
|
amove usr/share/xdg-desktop-portal/niri-portals.conf
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
d8a10bb726d2e79f695544130cc9f55b1ac0f76dd9a9fb1cafb16cd7934b29a4fecf88656a3bc46ab6140aef7d2c58ed87f3ba43dfe8882df50de997283f2292 niri-25.08.tar.gz
|
||||||
|
f488ed2f316e96902c737a1104c425f2281349d519825c02a39205957ee65607730a69b4857d5a5803f43b74180ab4efef7fcb4eb8bfb75e042d09a3e22d1dff niri-session.patch
|
||||||
|
"
|
||||||
16
main/niri/niri-session.patch
Normal file
16
main/niri/niri-session.patch
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
niri-session is a wrapper over systemctl/dinitctl to start a user service;
|
||||||
|
it doesn't have a proper fallback ( instead, just prints a message to stdout ),
|
||||||
|
so instead we can just launch niri directly to guarantee display managers can launch it
|
||||||
|
|
||||||
|
diff --git a/resources/niri.desktop b/resources/niri.desktop
|
||||||
|
index 5470fe7..0164374 100644
|
||||||
|
--- a/resources/niri.desktop
|
||||||
|
+++ b/resources/niri.desktop
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Niri
|
||||||
|
Comment=A scrollable-tiling Wayland compositor
|
||||||
|
-Exec=niri-session
|
||||||
|
+Exec=niri --session
|
||||||
|
Type=Application
|
||||||
|
DesktopNames=niri
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=neovim/nvim-lspconfig
|
# renovate: datasource=github-tags packageName=neovim/nvim-lspconfig
|
||||||
pkgname=nvim-lspconfig
|
pkgname=nvim-lspconfig
|
||||||
pkgver=2.5.0
|
pkgver=2.5.0
|
||||||
pkgrel=3
|
pkgrel=1
|
||||||
pkgdesc="quickstart configurations for the neovim LSP client"
|
pkgdesc="quickstart configurations for the neovim LSP client"
|
||||||
url="https://github.com/neovim/nvim-lspconfig"
|
url="https://github.com/neovim/nvim-lspconfig"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
pkgname=nvim-treesitter-textobjects
|
pkgname=nvim-treesitter-textobjects
|
||||||
pkgver=0_git20240404
|
pkgver=0_git20240404
|
||||||
_pkgsha=f5183cea0fda26126e22e789382c208e7b1120f4
|
_pkgsha=f5183cea0fda26126e22e789382c208e7b1120f4
|
||||||
pkgrel=2
|
pkgrel=1
|
||||||
pkgdesc="Syntax aware text-objects, select, move, swap, and peek support"
|
pkgdesc="Syntax aware text-objects, select, move, swap, and peek support"
|
||||||
url="https://github.com/nvim-treesitter/nvim-treesitter-textobjects"
|
url="https://github.com/nvim-treesitter/nvim-treesitter-textobjects"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
36
main/nvim-treesitter/APKBUILD
Normal file
36
main/nvim-treesitter/APKBUILD
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
# Contributor: Galen Abell <galen@galenabell.com>
|
||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
pkgname=nvim-treesitter
|
||||||
|
pkgver=0_git20250524
|
||||||
|
_pkgsha=42fc28ba918343ebfd5565147a42a26580579482
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Nvim Treesitter configurations and abstraction layer"
|
||||||
|
url="https://github.com/nvim-treesitter/nvim-treesitter"
|
||||||
|
arch="noarch"
|
||||||
|
license="Apache-2.0"
|
||||||
|
subpackages="$pkgname-doc"
|
||||||
|
makedepends="neovim"
|
||||||
|
options="!check"
|
||||||
|
source="$pkgname-$_pkgsha.tar.gz::https://github.com/nvim-treesitter/nvim-treesitter/archive/$_pkgsha.tar.gz"
|
||||||
|
builddir="$srcdir/$pkgname-$_pkgsha"
|
||||||
|
|
||||||
|
build() {
|
||||||
|
nvim -u NONE -i NONE -e --headless -c "helptags doc" -c quit
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
local plgdir="$pkgdir"/usr/share/nvim/site/pack/dist/opt/$pkgname
|
||||||
|
install -d "$plgdir"
|
||||||
|
cp -ra lua autoload doc plugin queries lockfile.json \
|
||||||
|
"$plgdir"
|
||||||
|
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||||
|
}
|
||||||
|
|
||||||
|
doc() {
|
||||||
|
default_doc
|
||||||
|
amove usr/share/nvim/site/pack/dist/opt/$pkgname/doc
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
4933ba9d4fa5285cc5cd88f97a0a7729956e58dda8be69f4ba8986025585f834f7ec67315b627b36da06d99ec5dbebbf607308dd83e246bf29a650b99796b951 nvim-treesitter-42fc28ba918343ebfd5565147a42a26580579482.tar.gz
|
||||||
|
"
|
||||||
98
main/opensnitch/APKBUILD
Normal file
98
main/opensnitch/APKBUILD
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
# renovate: datasource=github-tags packageName=evilsocket/opensnitch
|
||||||
|
pkgname=opensnitch
|
||||||
|
pkgver=1.7.2
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Interactive application firewall"
|
||||||
|
url="https://github.com/evilsocket/opensnitch"
|
||||||
|
arch="all"
|
||||||
|
license="GPL-3.0-only"
|
||||||
|
depends="
|
||||||
|
py3-grpcio
|
||||||
|
py3-inotify
|
||||||
|
py3-notify2
|
||||||
|
py3-protobuf
|
||||||
|
py3-qt-material
|
||||||
|
py3-qt5
|
||||||
|
py3-slugify
|
||||||
|
"
|
||||||
|
makedepends="
|
||||||
|
clang
|
||||||
|
go
|
||||||
|
libnetfilter_queue-dev
|
||||||
|
linux-headers
|
||||||
|
linux-lts-dev
|
||||||
|
llvm
|
||||||
|
py3-gpep517
|
||||||
|
py3-setuptools
|
||||||
|
py3-wheel
|
||||||
|
qt5-qttools-dev
|
||||||
|
"
|
||||||
|
checkdepends="py3-pytest"
|
||||||
|
subpackages="$pkgname-openrc $pkgname-pyc"
|
||||||
|
install=""
|
||||||
|
options="net"
|
||||||
|
source="
|
||||||
|
https://github.com/evilsocket/opensnitch/archive/v$pkgver/opensnitch-$pkgver.tar.gz
|
||||||
|
$pkgname.initd
|
||||||
|
fix-tests.patch
|
||||||
|
no-pip.patch
|
||||||
|
proto.patch
|
||||||
|
"
|
||||||
|
|
||||||
|
export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
|
||||||
|
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
|
||||||
|
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd daemon
|
||||||
|
go build -v -o opensnitchd .
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
cd ui
|
||||||
|
make all
|
||||||
|
gpep517 build-wheel \
|
||||||
|
--wheel-dir .dist \
|
||||||
|
--output-fd 3 3>&1 >&2
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
cd ebpf_prog
|
||||||
|
KDIR="$(echo /usr/src/linux-*)"
|
||||||
|
KERNEL_DIR="$KDIR" KERNEL_HEADERS="$KDIR" make all
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cd daemon
|
||||||
|
go test ./...
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
# ui tests fail to run
|
||||||
|
# cd ui
|
||||||
|
# python3 -m venv --clear --without-pip --system-site-packages .testenv
|
||||||
|
# .testenv/bin/python3 -m installer .dist/*.whl
|
||||||
|
# .testenv/bin/python3 -m pytest
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 -t "$pkgdir/usr/bin" daemon/opensnitchd
|
||||||
|
install -Dm755 "$srcdir/$pkgname.initd" "$pkgdir/etc/init.d/$pkgname"
|
||||||
|
for f in default-config.json system-fw.json; do
|
||||||
|
install -Dm644 -t "$pkgdir/etc/opensnitchd" daemon/$f
|
||||||
|
done
|
||||||
|
|
||||||
|
python3 -m installer -d "$pkgdir" ui/.dist/*.whl
|
||||||
|
install -dm755 "$pkgdir"/usr/share
|
||||||
|
cp -r "$pkgdir"/usr/lib/python3.*/site-packages/usr/share/* "$pkgdir"/usr/share
|
||||||
|
rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/tests
|
||||||
|
rm -rf "$pkgdir"/usr/lib/python3.*/site-packages/usr
|
||||||
|
|
||||||
|
install -Dm644 -t "$pkgdir/usr/lib/opensnitchd/ebpf" ebpf_prog/opensnitch*.o
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
7a641b574af9569d8678f819cfc7116ee61362a656289c787bea88a74baf5614f4da6571e8e23dc8055a2c59e6a04245ffea5acdefe5b4abea2140e2e649b89c opensnitch-1.7.2.tar.gz
|
||||||
|
08a6a1904138fea4563718877eaaf65e39f04c4a7bcdf33daa4f375c80c93a42b0bf6d9d7a9bf3aeb1d82b270c8c353982b9035fe59d4e7e0d8dc91e357b6293 opensnitch.initd
|
||||||
|
a61c7ed1ab5606a771c77b6f7ad6411482b5f77d5ff71f963dfb38bec26d2eb29ee46e89fffadf964a007805992ba8167fb53f36995c8e42aa27b482410d6eff fix-tests.patch
|
||||||
|
0249ed3dae0ed2fddf456466cbfd2c008b822fb57e1b5cbea210fa4895afa8f94b2e078bc5ecc8fa04f3636681871094ba76261c0d2c447251c3842774324e22 no-pip.patch
|
||||||
|
ec2c44cbdc8fc0acd30a2b1099c2636370ea78016b49393b1c15a7e4c02523489f30bb064c654cfdb19d988d43c954173eccaa0dc7021501b368637b06541cdb proto.patch
|
||||||
|
"
|
||||||
13
main/opensnitch/fix-tests.patch
Normal file
13
main/opensnitch/fix-tests.patch
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
diff --git i/ui/tests/test_nodes.py w/ui/tests/test_nodes.py
|
||||||
|
index d4c4ae58..372f5910 100644
|
||||||
|
--- i/ui/tests/test_nodes.py
|
||||||
|
+++ w/ui/tests/test_nodes.py
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
|
||||||
|
import json
|
||||||
|
from PyQt5 import QtCore
|
||||||
|
-from opensnitch import ui_pb2
|
||||||
|
+from opensnitch.proto import ui_pb2
|
||||||
|
from opensnitch.config import Config
|
||||||
|
from opensnitch.nodes import Nodes
|
||||||
|
from tests.dialogs import ClientConfig
|
||||||
20
main/opensnitch/no-pip.patch
Normal file
20
main/opensnitch/no-pip.patch
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
diff --git i/ui/Makefile w/ui/Makefile
|
||||||
|
index 51ea1758..1f4bb9a8 100644
|
||||||
|
--- i/ui/Makefile
|
||||||
|
+++ w/ui/Makefile
|
||||||
|
@@ -3,13 +3,13 @@ all: opensnitch/resources_rc.py
|
||||||
|
install:
|
||||||
|
@pip3 install --upgrade .
|
||||||
|
|
||||||
|
-opensnitch/resources_rc.py: translations deps
|
||||||
|
+opensnitch/resources_rc.py: translations
|
||||||
|
@pyrcc5 -o opensnitch/resources_rc.py opensnitch/res/resources.qrc
|
||||||
|
@find opensnitch/proto/ -name 'ui_pb2_grpc.py' -exec sed -i 's/^import ui_pb2/from . import ui_pb2/' {} \;
|
||||||
|
|
||||||
|
translations:
|
||||||
|
@cd i18n ; make
|
||||||
|
-
|
||||||
|
+
|
||||||
|
deps:
|
||||||
|
@pip3 install -r requirements.txt
|
||||||
|
|
||||||
12
main/opensnitch/opensnitch.initd
Normal file
12
main/opensnitch/opensnitch.initd
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
#!/sbin/openrc-run
|
||||||
|
supervisor=supervise-daemon
|
||||||
|
|
||||||
|
name=$RC_SVCNAME
|
||||||
|
command=/usr/bin/opensnitchd
|
||||||
|
output_logger="logger -t '${RC_SVCNAME}' -p daemon.info"
|
||||||
|
error_logger="logger -t '${RC_SVCNAME}' -p daemon.error"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
use logger
|
||||||
|
after firewall
|
||||||
|
}
|
||||||
3785
main/opensnitch/proto.patch
Normal file
3785
main/opensnitch/proto.patch
Normal file
File diff suppressed because one or more lines are too long
@@ -1,8 +1,8 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=celenityy/Phoenix
|
# renovate: datasource=github-tags packageName=celenityy/Phoenix
|
||||||
pkgname=phoenix
|
pkgname=phoenix
|
||||||
pkgver=2025.11.27.1
|
pkgver=2025.10.03.1
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Privacy & security configurations for Firefox"
|
pkgdesc="Privacy & security configurations for Firefox"
|
||||||
url="https://codeberg.org/celenity/Phoenix"
|
url="https://codeberg.org/celenity/Phoenix"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
@@ -39,5 +39,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
cb3787298acf80efe5c5369a15106643f3c3f460bec35f8fb8f904a75f99cfa0df66f1aaccbf6e27347858359e556cd56d56740f5345553745555bd6ca6a5ad3 phoenix-2025.11.27.1.tar.gz
|
49d61bb4b50ee3e899142a4906a2f05f88e007a98d470a63572536318a23c701e21e237b4ad1603fa3faa57bc2229c03d56dd2e13342238d3964d88e8982a04f phoenix-2025.10.03.1.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=einaregilsson/Redirector
|
# renovate: datasource=github-tags packageName=einaregilsson/Redirector
|
||||||
pkgname=redirector-firefox
|
pkgname=redirector-firefox
|
||||||
pkgver=3.5.2
|
pkgver=3.5.2
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Browser extension to redirect URLs based on patterns (Firefox extension)"
|
pkgdesc="Browser extension to redirect URLs based on patterns (Firefox extension)"
|
||||||
url="https://github.com/einaregilsson/Redirector"
|
url="https://github.com/einaregilsson/Redirector"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
pkgname=rmview
|
pkgname=rmview
|
||||||
pkgver=0_git20240526
|
pkgver=0_git20240526
|
||||||
_pkgsha=d171b657e40a50bfe38dfd90cd0d861cf61de60e
|
_pkgsha=d171b657e40a50bfe38dfd90cd0d861cf61de60e
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="A live viewer for reMarkable written in PyQt5"
|
pkgdesc="A live viewer for reMarkable written in PyQt5"
|
||||||
url="https://github.com/bordaigorl/rmview"
|
url="https://github.com/bordaigorl/rmview"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=jtheoof/swappy
|
# renovate: datasource=github-tags packageName=jtheoof/swappy
|
||||||
pkgname=swappy
|
pkgname=swappy
|
||||||
pkgver=1.8.0
|
pkgver=1.8.0
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Snapshot editing tool for Wayland"
|
pkgdesc="Snapshot editing tool for Wayland"
|
||||||
url="https://github.com/jtheoof/swappy"
|
url="https://github.com/jtheoof/swappy"
|
||||||
license="MIT"
|
license="MIT"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=mitsuhiko/systemfd
|
# renovate: datasource=github-tags packageName=mitsuhiko/systemfd
|
||||||
pkgname=systemfd
|
pkgname=systemfd
|
||||||
pkgver=0.4.6
|
pkgver=0.4.6
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Auto-reloading dev tool with socket activation"
|
pkgdesc="Auto-reloading dev tool with socket activation"
|
||||||
url="https://github.com/mitsuhiko/systemfd"
|
url="https://github.com/mitsuhiko/systemfd"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=siderolabs/talos
|
# renovate: datasource=github-tags packageName=siderolabs/talos
|
||||||
pkgname=talosctl
|
pkgname=talosctl
|
||||||
pkgver=1.11.5
|
pkgver=1.11.2
|
||||||
pkgrel=2
|
pkgrel=0
|
||||||
|
pkgrel=0
|
||||||
pkgdesc="Kubernetes Linux distribution"
|
pkgdesc="Kubernetes Linux distribution"
|
||||||
url="https://talos.dev"
|
url="https://talos.dev"
|
||||||
arch="all"
|
arch="all"
|
||||||
@@ -45,5 +46,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
08bd179324851d585c81107476a2ad927376099f6b9b3b3787b248295e9b0c8b430fb14f56f60d00a2b03b46324150ca65be08dc7e06e597f77b5e600b0dd034 talos-1.11.5.tar.gz
|
99f1a98ccdd1906a62d1c79997a51e9d18378babb8ebfd6fc0c8f4bf41cbffe03fcd5cd99a6ef975218179ae6f02b51f037e98823aa2c10eb6795a4982126bed talos-1.11.2.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
pkgname=tangctl
|
pkgname=tangctl
|
||||||
pkgver=0_git20230725
|
pkgver=0_git20230725
|
||||||
_pkgsha=dcc6e9494f1429ca94cfce692b0ff41e48679fc0
|
_pkgsha=dcc6e9494f1429ca94cfce692b0ff41e48679fc0
|
||||||
pkgrel=3
|
pkgrel=1
|
||||||
pkgdesc="Tool implementing server-side ECMR exchange functionality (Tang server)"
|
pkgdesc="Tool implementing server-side ECMR exchange functionality (Tang server)"
|
||||||
url="https://github.com/anatol/tang.go"
|
url="https://github.com/anatol/tang.go"
|
||||||
license="BSD-3-Clause"
|
license="BSD-3-Clause"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# Maintainer: Galen Abell <galen@galenabell.com>
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
# renovate: datasource=github-tags packageName=hashicorp/terraform-ls
|
# renovate: datasource=github-tags packageName=hashicorp/terraform-ls
|
||||||
pkgname=terraform-ls
|
pkgname=terraform-ls
|
||||||
pkgver=0.38.3
|
pkgver=0.38.2
|
||||||
pkgrel=2
|
pkgrel=0
|
||||||
pkgdesc="Terraform Language Server"
|
pkgdesc="Terraform Language Server"
|
||||||
url="https://github.com/hashicorp/terraform-ls"
|
url="https://github.com/hashicorp/terraform-ls"
|
||||||
arch="all"
|
arch="all"
|
||||||
@@ -24,5 +24,5 @@ package() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
ccc4a56208c8c47204f43c8e405360adbe383dabde16dba49a2a81081ac05c71c2ffc2d0fa9d511764c17ab775515384d47fa63a16fcc74447c4bead93cd76df terraform-ls-0.38.3.tar.gz
|
7d50676d88a681ce578b72d5ab6576cccf27a8b7bc8938c4b536b305f40c9e918411d2ff3de4a6ba6f65699cbdc65240cc99c4b516153cec9b3fdf971ff43161 terraform-ls-0.38.2.tar.gz
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=transmission-remote-gtk/transmission-remote-gtk
|
# renovate: datasource=github-tags packageName=transmission-remote-gtk/transmission-remote-gtk
|
||||||
pkgname=transmission-remote-gtk
|
pkgname=transmission-remote-gtk
|
||||||
pkgver=1.6.0
|
pkgver=1.6.0
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="GTK client for remote management of the Transmission BitTorrent client"
|
pkgdesc="GTK client for remote management of the Transmission BitTorrent client"
|
||||||
url="https://github.com/transmission-remote-gtk/transmission-remote-gtk"
|
url="https://github.com/transmission-remote-gtk/transmission-remote-gtk"
|
||||||
arch="all"
|
arch="all"
|
||||||
|
|||||||
35
main/wild/APKBUILD
Normal file
35
main/wild/APKBUILD
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
# renovate: datasource=github-tags packageName=davidlattimore/wild
|
||||||
|
pkgname=wild
|
||||||
|
pkgver=0.5.0
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="A very fast linker for Linux"
|
||||||
|
url="https://github.com/davidlattimore/wild"
|
||||||
|
arch="all"
|
||||||
|
license="Apache-2.0 OR MIT"
|
||||||
|
makedepends="cargo cargo-auditable"
|
||||||
|
checkdepends="bash binutils clang lld20"
|
||||||
|
options="net"
|
||||||
|
source="$pkgname-$pkgver.tar.gz::https://github.com/davidlattimore/wild/archive/refs/tags/$pkgver.tar.gz"
|
||||||
|
builddir="$srcdir/$pkgname-$pkgver"
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
default_prepare
|
||||||
|
cargo fetch --target="$CTARGET" --locked
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cargo auditable build --frozen --release
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cargo test --frozen
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 "target/release/$pkgname" "$pkgdir/usr/bin/$pkgname"
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
fb336ff4e5e513c22f038512678a2e7869b0caaee816a2744c5949e203580f249f1bcb808a1b7516aabf6bc88c46d8b20baea5d97c126be61669d3ef50e0b29c wild-0.5.0.tar.gz
|
||||||
|
"
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
pkgname=gmenu
|
pkgname=gmenu
|
||||||
pkgver=0_git20250426
|
pkgver=0_git20250426
|
||||||
_pkgsha=b40e47a4e78ec501f9ca60526dd2b29f2221f0d1
|
_pkgsha=b40e47a4e78ec501f9ca60526dd2b29f2221f0d1
|
||||||
pkgrel=1
|
pkgrel=0
|
||||||
pkgdesc="Efficient dynamic menu for Wayland"
|
pkgdesc="Efficient dynamic menu for Wayland"
|
||||||
url="https://codeberg.org/galen/wmenu"
|
url="https://codeberg.org/galen/wmenu"
|
||||||
arch="all"
|
arch="all"
|
||||||
33
main/xwayland-satellite/APKBUILD
Normal file
33
main/xwayland-satellite/APKBUILD
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
# Maintainer: Galen Abell <galen@galenabell.com>
|
||||||
|
pkgname=xwayland-satellite
|
||||||
|
pkgver=0.7
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="Xwayland manager for Wayland"
|
||||||
|
url="https://github.com/Supreeeme/xwayland-satellite"
|
||||||
|
arch="all"
|
||||||
|
license="MPL-2.0"
|
||||||
|
makedepends="cargo cargo-auditable libxcb-dev xwayland-dev xcb-util-cursor-dev clang-libclang"
|
||||||
|
source="https://github.com/Supreeeme/xwayland-satellite/archive/v$pkgver/xwayland-satellite-$pkgver.tar.gz"
|
||||||
|
options="net"
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
default_prepare
|
||||||
|
|
||||||
|
cargo fetch --target="$CTARGET" --locked
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cargo auditable build --frozen --release
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cargo test --frozen --lib --bins
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 target/release/xwayland-satellite -t "$pkgdir"/usr/bin
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
7f090573faf9f6675981bbc5474e2761ef1c1b758aa9182cd46301cf88be689b631d21156ac6508a2f90edb866fc65022d4019b4cf6121f189cdadaf70a524ab xwayland-satellite-0.7.tar.gz
|
||||||
|
"
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
# renovate: datasource=github-tags packageName=redhat-developer/yaml-language-server
|
# renovate: datasource=github-tags packageName=redhat-developer/yaml-language-server
|
||||||
pkgname=yaml-language-server
|
pkgname=yaml-language-server
|
||||||
pkgver=1.19.2
|
pkgver=1.19.2
|
||||||
pkgrel=2
|
pkgrel=0
|
||||||
pkgdesc="Language Server for YAML files"
|
pkgdesc="Language Server for YAML files"
|
||||||
url="https://github.com/redhat-developer/yaml-language-server"
|
url="https://github.com/redhat-developer/yaml-language-server"
|
||||||
arch="noarch"
|
arch="noarch"
|
||||||
|
|||||||
Reference in New Issue
Block a user