feat(aur): add AUR packaging support with CI automation
- commit
- 15e7c837db3077bf6bd532c13874140c3b6811b2
- author
- bnema · · 2025-12-30 21:23 UTC
- parent
- 6c872d5
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
8 files · +262 -0
A .github/workflows/aur.yml +106 -0
| @@ -0,0 +1,106 @@ | |||
| 1 | + | name: AUR Publish | |
| 2 | + | ||
| 3 | + | on: | |
| 4 | + | workflow_run: | |
| 5 | + | workflows: ["Flatpak"] | |
| 6 | + | types: | |
| 7 | + | - completed | |
| 8 | + | ||
| 9 | + | jobs: | |
| 10 | + | publish-aur: | |
| 11 | + | name: Publish to AUR | |
| 12 | + | runs-on: ubuntu-latest | |
| 13 | + | if: ${{ github.event.workflow_run.conclusion == 'success' }} | |
| 14 | + | ||
| 15 | + | steps: | |
| 16 | + | - uses: actions/checkout@v4 | |
| 17 | + | with: | |
| 18 | + | fetch-depth: 0 | |
| 19 | + | ||
| 20 | + | - name: Get release info | |
| 21 | + | id: release | |
| 22 | + | run: | | |
| 23 | + | TAG=$(git describe --tags --abbrev=0) | |
| 24 | + | VERSION=${TAG#v} | |
| 25 | + | echo "tag=${TAG}" >> $GITHUB_OUTPUT | |
| 26 | + | echo "version=${VERSION}" >> $GITHUB_OUTPUT | |
| 27 | + | ||
| 28 | + | - name: Wait 1 hour before publishing | |
| 29 | + | run: | | |
| 30 | + | echo "Waiting 1 hour before publishing to AUR..." | |
| 31 | + | echo "This gives time to cancel if there are issues with the release." | |
| 32 | + | echo "Started at: $(date -u)" | |
| 33 | + | sleep 3600 | |
| 34 | + | echo "Wait complete at: $(date -u)" | |
| 35 | + | ||
| 36 | + | - name: Verify release still exists | |
| 37 | + | run: | | |
| 38 | + | TAG="${{ steps.release.outputs.tag }}" | |
| 39 | + | if ! gh release view "$TAG" &>/dev/null; then | |
| 40 | + | echo "::error::Release $TAG no longer exists. Aborting AUR publish." | |
| 41 | + | exit 1 | |
| 42 | + | fi | |
| 43 | + | echo "Release $TAG verified, proceeding with AUR publish." | |
| 44 | + | env: | |
| 45 | + | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| 46 | + | ||
| 47 | + | - name: Download checksums | |
| 48 | + | id: checksum | |
| 49 | + | run: | | |
| 50 | + | curl -sL "https://github.com/bnema/dumber/releases/download/${{ steps.release.outputs.tag }}/checksums.txt" -o checksums.txt | |
| 51 | + | SHA256=$(grep 'dumber_linux_x86_64.tar.gz' checksums.txt | cut -d' ' -f1) | |
| 52 | + | echo "sha256=${SHA256}" >> $GITHUB_OUTPUT | |
| 53 | + | ||
| 54 | + | - name: Generate PKGBUILD for dumber-browser-bin | |
| 55 | + | env: | |
| 56 | + | VERSION: ${{ steps.release.outputs.version }} | |
| 57 | + | SHA256: ${{ steps.checksum.outputs.sha256 }} | |
| 58 | + | run: | | |
| 59 | + | mkdir -p pkgbuild/dumber-browser-bin | |
| 60 | + | cat > pkgbuild/dumber-browser-bin/PKGBUILD << EOF | |
| 61 | + | # Maintainer: bnema <b at bnema dot dev> | |
| 62 | + | pkgname=dumber-browser-bin | |
| 63 | + | pkgver=${VERSION} | |
| 64 | + | pkgrel=1 | |
| 65 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs" | |
| 66 | + | arch=('x86_64') | |
| 67 | + | url="https://github.com/bnema/dumber" | |
| 68 | + | license=('MIT') | |
| 69 | + | depends=('gtk4' 'webkitgtk-6.0') | |
| 70 | + | optdepends=( | |
| 71 | + | 'gstreamer: Media playback support' | |
| 72 | + | 'gst-plugins-base: Base media codecs' | |
| 73 | + | 'gst-plugins-good: Additional media codecs' | |
| 74 | + | 'gst-plugins-bad: Extended media codecs' | |
| 75 | + | 'gst-libav: FFmpeg-based codecs' | |
| 76 | + | ) | |
| 77 | + | provides=('dumber-browser' 'dumber') | |
| 78 | + | conflicts=('dumber-browser' 'dumber-browser-git') | |
| 79 | + | source=("\${pkgname}-\${pkgver}.tar.gz::https://github.com/bnema/dumber/releases/download/v\${pkgver}/dumber_linux_x86_64.tar.gz" | |
| 80 | + | "dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/dev.bnema.Dumber.desktop" | |
| 81 | + | "logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/assets/logo-512.png" | |
| 82 | + | "LICENSE::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/LICENSE") | |
| 83 | + | sha256sums=('${SHA256}' | |
| 84 | + | 'SKIP' | |
| 85 | + | 'SKIP' | |
| 86 | + | 'SKIP') | |
| 87 | + | ||
| 88 | + | package() { | |
| 89 | + | cd "dumber_\${pkgver}" | |
| 90 | + | install -Dm755 dumber "\${pkgdir}/usr/bin/dumber" | |
| 91 | + | install -Dm644 "\${srcdir}/dev.bnema.Dumber.desktop" "\${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |
| 92 | + | install -Dm644 "\${srcdir}/logo-512.png" "\${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |
| 93 | + | install -Dm644 LICENSE "\${pkgdir}/usr/share/licenses/\${pkgname}/LICENSE" | |
| 94 | + | } | |
| 95 | + | EOF | |
| 96 | + | ||
| 97 | + | - name: Publish dumber-browser-bin to AUR | |
| 98 | + | uses: KSXGitHub/github-actions-deploy-aur@v4.1.1 | |
| 99 | + | with: | |
| 100 | + | pkgname: dumber-browser-bin | |
| 101 | + | pkgbuild: ./pkgbuild/dumber-browser-bin/PKGBUILD | |
| 102 | + | commit_username: ${{ secrets.AUR_USERNAME }} | |
| 103 | + | commit_email: ${{ secrets.AUR_EMAIL }} | |
| 104 | + | ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} | |
| 105 | + | commit_message: "Update to ${{ steps.release.outputs.version }}" | |
| 106 | + | ssh_keyscan_types: rsa,ecdsa,ed25519 | |
| @@ -0,0 +1,106 @@ | |||||
| 1 | + | name: AUR Publish | |||
| 2 | + | ||||
| 3 | + | on: | |||
| 4 | + | workflow_run: | |||
| 5 | + | workflows: ["Flatpak"] | |||
| 6 | + | types: | |||
| 7 | + | - completed | |||
| 8 | + | ||||
| 9 | + | jobs: | |||
| 10 | + | publish-aur: | |||
| 11 | + | name: Publish to AUR | |||
| 12 | + | runs-on: ubuntu-latest | |||
| 13 | + | if: ${{ github.event.workflow_run.conclusion == 'success' }} | |||
| 14 | + | ||||
| 15 | + | steps: | |||
| 16 | + | - uses: actions/checkout@v4 | |||
| 17 | + | with: | |||
| 18 | + | fetch-depth: 0 | |||
| 19 | + | ||||
| 20 | + | - name: Get release info | |||
| 21 | + | id: release | |||
| 22 | + | run: | | |||
| 23 | + | TAG=$(git describe --tags --abbrev=0) | |||
| 24 | + | VERSION=${TAG#v} | |||
| 25 | + | echo "tag=${TAG}" >> $GITHUB_OUTPUT | |||
| 26 | + | echo "version=${VERSION}" >> $GITHUB_OUTPUT | |||
| 27 | + | ||||
| 28 | + | - name: Wait 1 hour before publishing | |||
| 29 | + | run: | | |||
| 30 | + | echo "Waiting 1 hour before publishing to AUR..." | |||
| 31 | + | echo "This gives time to cancel if there are issues with the release." | |||
| 32 | + | echo "Started at: $(date -u)" | |||
| 33 | + | sleep 3600 | |||
| 34 | + | echo "Wait complete at: $(date -u)" | |||
| 35 | + | ||||
| 36 | + | - name: Verify release still exists | |||
| 37 | + | run: | | |||
| 38 | + | TAG="${{ steps.release.outputs.tag }}" | |||
| 39 | + | if ! gh release view "$TAG" &>/dev/null; then | |||
| 40 | + | echo "::error::Release $TAG no longer exists. Aborting AUR publish." | |||
| 41 | + | exit 1 | |||
| 42 | + | fi | |||
| 43 | + | echo "Release $TAG verified, proceeding with AUR publish." | |||
| 44 | + | env: | |||
| 45 | + | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |||
| 46 | + | ||||
| 47 | + | - name: Download checksums | |||
| 48 | + | id: checksum | |||
| 49 | + | run: | | |||
| 50 | + | curl -sL "https://github.com/bnema/dumber/releases/download/${{ steps.release.outputs.tag }}/checksums.txt" -o checksums.txt | |||
| 51 | + | SHA256=$(grep 'dumber_linux_x86_64.tar.gz' checksums.txt | cut -d' ' -f1) | |||
| 52 | + | echo "sha256=${SHA256}" >> $GITHUB_OUTPUT | |||
| 53 | + | ||||
| 54 | + | - name: Generate PKGBUILD for dumber-browser-bin | |||
| 55 | + | env: | |||
| 56 | + | VERSION: ${{ steps.release.outputs.version }} | |||
| 57 | + | SHA256: ${{ steps.checksum.outputs.sha256 }} | |||
| 58 | + | run: | | |||
| 59 | + | mkdir -p pkgbuild/dumber-browser-bin | |||
| 60 | + | cat > pkgbuild/dumber-browser-bin/PKGBUILD << EOF | |||
| 61 | + | # Maintainer: bnema <b at bnema dot dev> | |||
| 62 | + | pkgname=dumber-browser-bin | |||
| 63 | + | pkgver=${VERSION} | |||
| 64 | + | pkgrel=1 | |||
| 65 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs" | |||
| 66 | + | arch=('x86_64') | |||
| 67 | + | url="https://github.com/bnema/dumber" | |||
| 68 | + | license=('MIT') | |||
| 69 | + | depends=('gtk4' 'webkitgtk-6.0') | |||
| 70 | + | optdepends=( | |||
| 71 | + | 'gstreamer: Media playback support' | |||
| 72 | + | 'gst-plugins-base: Base media codecs' | |||
| 73 | + | 'gst-plugins-good: Additional media codecs' | |||
| 74 | + | 'gst-plugins-bad: Extended media codecs' | |||
| 75 | + | 'gst-libav: FFmpeg-based codecs' | |||
| 76 | + | ) | |||
| 77 | + | provides=('dumber-browser' 'dumber') | |||
| 78 | + | conflicts=('dumber-browser' 'dumber-browser-git') | |||
| 79 | + | source=("\${pkgname}-\${pkgver}.tar.gz::https://github.com/bnema/dumber/releases/download/v\${pkgver}/dumber_linux_x86_64.tar.gz" | |||
| 80 | + | "dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/dev.bnema.Dumber.desktop" | |||
| 81 | + | "logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/assets/logo-512.png" | |||
| 82 | + | "LICENSE::https://raw.githubusercontent.com/bnema/dumber/v\${pkgver}/LICENSE") | |||
| 83 | + | sha256sums=('${SHA256}' | |||
| 84 | + | 'SKIP' | |||
| 85 | + | 'SKIP' | |||
| 86 | + | 'SKIP') | |||
| 87 | + | ||||
| 88 | + | package() { | |||
| 89 | + | cd "dumber_\${pkgver}" | |||
| 90 | + | install -Dm755 dumber "\${pkgdir}/usr/bin/dumber" | |||
| 91 | + | install -Dm644 "\${srcdir}/dev.bnema.Dumber.desktop" "\${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |||
| 92 | + | install -Dm644 "\${srcdir}/logo-512.png" "\${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |||
| 93 | + | install -Dm644 LICENSE "\${pkgdir}/usr/share/licenses/\${pkgname}/LICENSE" | |||
| 94 | + | } | |||
| 95 | + | EOF | |||
| 96 | + | ||||
| 97 | + | - name: Publish dumber-browser-bin to AUR | |||
| 98 | + | uses: KSXGitHub/github-actions-deploy-aur@v4.1.1 | |||
| 99 | + | with: | |||
| 100 | + | pkgname: dumber-browser-bin | |||
| 101 | + | pkgbuild: ./pkgbuild/dumber-browser-bin/PKGBUILD | |||
| 102 | + | commit_username: ${{ secrets.AUR_USERNAME }} | |||
| 103 | + | commit_email: ${{ secrets.AUR_EMAIL }} | |||
| 104 | + | ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} | |||
| 105 | + | commit_message: "Update to ${{ steps.release.outputs.version }}" | |||
| 106 | + | ssh_keyscan_types: rsa,ecdsa,ed25519 | |||
M .gitignore +11 -0
| @@ -96,3 +96,14 @@ flatpak-repo/ | |||
| 96 | 96 | .flatpak-builder/ | |
| 97 | 97 | *.flatpak | |
| 98 | 98 | builddir/ | |
| 99 | + | ||
| 100 | + | # AUR build artifacts | |
| 101 | + | aur/aur-*/ | |
| 102 | + | aur/*/src/ | |
| 103 | + | aur/*/pkg/ | |
| 104 | + | aur/*/*.tar.gz | |
| 105 | + | aur/*/*.tar.zst | |
| 106 | + | aur/*/*.pkg.tar.zst | |
| 107 | + | aur/*/LICENSE | |
| 108 | + | aur/*/dev.bnema.Dumber.desktop | |
| 109 | + | aur/*/logo-512.png | |
| @@ -96,3 +96,14 @@ flatpak-repo/ | |||||
| 96 | .flatpak-builder/ | 96 | .flatpak-builder/ | ||
| 97 | *.flatpak | 97 | *.flatpak | ||
| 98 | builddir/ | 98 | builddir/ | ||
| 99 | + | ||||
| 100 | + | # AUR build artifacts | |||
| 101 | + | aur/aur-*/ | |||
| 102 | + | aur/*/src/ | |||
| 103 | + | aur/*/pkg/ | |||
| 104 | + | aur/*/*.tar.gz | |||
| 105 | + | aur/*/*.tar.zst | |||
| 106 | + | aur/*/*.pkg.tar.zst | |||
| 107 | + | aur/*/LICENSE | |||
| 108 | + | aur/*/dev.bnema.Dumber.desktop | |||
| 109 | + | aur/*/logo-512.png | |||
M CHANGELOG.md +5 -0
| @@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file. | |||
| 5 | 5 | ## [Unreleased] | |
| 6 | 6 | ||
| 7 | 7 | ### Added | |
| 8 | + | - **AUR packaging support**: Dumber is now available on the Arch User Repository (AUR). | |
| 9 | + | - `dumber-browser-bin`: Pre-built binary package from GitHub releases (recommended). | |
| 10 | + | - `dumber-browser-git`: Build from source, tracks latest git. | |
| 11 | + | - Install with `yay -S dumber-browser-bin` or `paru -S dumber-browser-bin`. | |
| 12 | + | - Automatic AUR updates via GitHub Actions (1 hour delay after Flatpak build for safety). | |
| 8 | 13 | ||
| 9 | 14 | ### Changed | |
| 10 | 15 | ||
| @@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file. | |||||
| 5 | ## [Unreleased] | 5 | ## [Unreleased] | ||
| 6 | 6 | ||||
| 7 | ### Added | 7 | ### Added | ||
| 8 | + | - **AUR packaging support**: Dumber is now available on the Arch User Repository (AUR). | |||
| 9 | + | - `dumber-browser-bin`: Pre-built binary package from GitHub releases (recommended). | |||
| 10 | + | - `dumber-browser-git`: Build from source, tracks latest git. | |||
| 11 | + | - Install with `yay -S dumber-browser-bin` or `paru -S dumber-browser-bin`. | |||
| 12 | + | - Automatic AUR updates via GitHub Actions (1 hour delay after Flatpak build for safety). | |||
| 8 | 13 | ||||
| 9 | ### Changed | 14 | ### Changed | ||
| 10 | 15 | ||||
M README.md +12 -0
| @@ -178,6 +178,18 @@ Development: | |||
| 178 | 178 | ||
| 179 | 179 | Pre-built binaries are available for Linux (x86_64/amd64) in the [releases page](https://github.com/bnema/dumber/releases). See [Quick Start](#quick-start) for installation instructions. | |
| 180 | 180 | ||
| 181 | + | ### Arch Linux (AUR) | |
| 182 | + | ||
| 183 | + | Dumber is available on the AUR: | |
| 184 | + | ||
| 185 | + | ```bash | |
| 186 | + | # Binary package (pre-built, recommended) | |
| 187 | + | yay -S dumber-browser-bin | |
| 188 | + | ||
| 189 | + | # Or build from source (latest git) | |
| 190 | + | yay -S dumber-browser-git | |
| 191 | + | ``` | |
| 192 | + | ||
| 181 | 193 | ### Flatpak | |
| 182 | 194 | ||
| 183 | 195 | A Flatpak bundle is available in each release. This is the easiest way to install Dumber with all dependencies included: | |
| @@ -178,6 +178,18 @@ Development: | |||||
| 178 | 178 | ||||
| 179 | Pre-built binaries are available for Linux (x86_64/amd64) in the [releases page](https://github.com/bnema/dumber/releases). See [Quick Start](#quick-start) for installation instructions. | 179 | Pre-built binaries are available for Linux (x86_64/amd64) in the [releases page](https://github.com/bnema/dumber/releases). See [Quick Start](#quick-start) for installation instructions. | ||
| 180 | 180 | ||||
| 181 | + | ### Arch Linux (AUR) | |||
| 182 | + | ||||
| 183 | + | Dumber is available on the AUR: | |||
| 184 | + | ||||
| 185 | + | ```bash | |||
| 186 | + | # Binary package (pre-built, recommended) | |||
| 187 | + | yay -S dumber-browser-bin | |||
| 188 | + | ||||
| 189 | + | # Or build from source (latest git) | |||
| 190 | + | yay -S dumber-browser-git | |||
| 191 | + | ``` | |||
| 192 | + | ||||
| 181 | ### Flatpak | 193 | ### Flatpak | ||
| 182 | 194 | ||||
| 183 | A Flatpak bundle is available in each release. This is the easiest way to install Dumber with all dependencies included: | 195 | A Flatpak bundle is available in each release. This is the easiest way to install Dumber with all dependencies included: | ||
A aur/dumber-browser-bin/.SRCINFO +28 -0
| @@ -0,0 +1,28 @@ | |||
| 1 | + | pkgbase = dumber-browser-bin | |
| 2 | + | pkgdesc = A minimal keyboard-driven browser for tiling WMs | |
| 3 | + | pkgver = 0.23.1 | |
| 4 | + | pkgrel = 1 | |
| 5 | + | url = https://github.com/bnema/dumber | |
| 6 | + | arch = x86_64 | |
| 7 | + | license = MIT | |
| 8 | + | depends = gtk4 | |
| 9 | + | depends = webkitgtk-6.0 | |
| 10 | + | optdepends = gstreamer: Media playback support | |
| 11 | + | optdepends = gst-plugins-base: Base media codecs | |
| 12 | + | optdepends = gst-plugins-good: Additional media codecs | |
| 13 | + | optdepends = gst-plugins-bad: Extended media codecs | |
| 14 | + | optdepends = gst-libav: FFmpeg-based codecs | |
| 15 | + | provides = dumber-browser | |
| 16 | + | provides = dumber | |
| 17 | + | conflicts = dumber-browser | |
| 18 | + | conflicts = dumber-browser-git | |
| 19 | + | source = dumber-browser-bin-0.23.1.tar.gz::https://github.com/bnema/dumber/releases/download/v0.23.1/dumber_linux_x86_64.tar.gz | |
| 20 | + | source = dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/dev.bnema.Dumber.desktop | |
| 21 | + | source = logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/assets/logo-512.png | |
| 22 | + | source = LICENSE::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/LICENSE | |
| 23 | + | sha256sums = c8230e3a5258333fed401439b08c6ef7b0681dd14f4e97a7e837dfc2c4cc83a0 | |
| 24 | + | sha256sums = SKIP | |
| 25 | + | sha256sums = SKIP | |
| 26 | + | sha256sums = SKIP | |
| 27 | + | ||
| 28 | + | pkgname = dumber-browser-bin | |
| @@ -0,0 +1,28 @@ | |||||
| 1 | + | pkgbase = dumber-browser-bin | |||
| 2 | + | pkgdesc = A minimal keyboard-driven browser for tiling WMs | |||
| 3 | + | pkgver = 0.23.1 | |||
| 4 | + | pkgrel = 1 | |||
| 5 | + | url = https://github.com/bnema/dumber | |||
| 6 | + | arch = x86_64 | |||
| 7 | + | license = MIT | |||
| 8 | + | depends = gtk4 | |||
| 9 | + | depends = webkitgtk-6.0 | |||
| 10 | + | optdepends = gstreamer: Media playback support | |||
| 11 | + | optdepends = gst-plugins-base: Base media codecs | |||
| 12 | + | optdepends = gst-plugins-good: Additional media codecs | |||
| 13 | + | optdepends = gst-plugins-bad: Extended media codecs | |||
| 14 | + | optdepends = gst-libav: FFmpeg-based codecs | |||
| 15 | + | provides = dumber-browser | |||
| 16 | + | provides = dumber | |||
| 17 | + | conflicts = dumber-browser | |||
| 18 | + | conflicts = dumber-browser-git | |||
| 19 | + | source = dumber-browser-bin-0.23.1.tar.gz::https://github.com/bnema/dumber/releases/download/v0.23.1/dumber_linux_x86_64.tar.gz | |||
| 20 | + | source = dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/dev.bnema.Dumber.desktop | |||
| 21 | + | source = logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/assets/logo-512.png | |||
| 22 | + | source = LICENSE::https://raw.githubusercontent.com/bnema/dumber/v0.23.1/LICENSE | |||
| 23 | + | sha256sums = c8230e3a5258333fed401439b08c6ef7b0681dd14f4e97a7e837dfc2c4cc83a0 | |||
| 24 | + | sha256sums = SKIP | |||
| 25 | + | sha256sums = SKIP | |||
| 26 | + | sha256sums = SKIP | |||
| 27 | + | ||||
| 28 | + | pkgname = dumber-browser-bin | |||
A aur/dumber-browser-bin/PKGBUILD +34 -0
| @@ -0,0 +1,34 @@ | |||
| 1 | + | # Maintainer: bnema <b at bnema dot dev> | |
| 2 | + | pkgname=dumber-browser-bin | |
| 3 | + | pkgver=0.23.1 | |
| 4 | + | pkgrel=1 | |
| 5 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs" | |
| 6 | + | arch=('x86_64') | |
| 7 | + | url="https://github.com/bnema/dumber" | |
| 8 | + | license=('MIT') | |
| 9 | + | depends=('gtk4' 'webkitgtk-6.0') | |
| 10 | + | optdepends=( | |
| 11 | + | 'gstreamer: Media playback support' | |
| 12 | + | 'gst-plugins-base: Base media codecs' | |
| 13 | + | 'gst-plugins-good: Additional media codecs' | |
| 14 | + | 'gst-plugins-bad: Extended media codecs' | |
| 15 | + | 'gst-libav: FFmpeg-based codecs' | |
| 16 | + | ) | |
| 17 | + | provides=('dumber-browser' 'dumber') | |
| 18 | + | conflicts=('dumber-browser' 'dumber-browser-git') | |
| 19 | + | source=("${pkgname}-${pkgver}.tar.gz::https://github.com/bnema/dumber/releases/download/v${pkgver}/dumber_linux_x86_64.tar.gz" | |
| 20 | + | "dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/dev.bnema.Dumber.desktop" | |
| 21 | + | "logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/assets/logo-512.png" | |
| 22 | + | "LICENSE::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/LICENSE") | |
| 23 | + | sha256sums=('c8230e3a5258333fed401439b08c6ef7b0681dd14f4e97a7e837dfc2c4cc83a0' | |
| 24 | + | 'SKIP' | |
| 25 | + | 'SKIP' | |
| 26 | + | 'SKIP') | |
| 27 | + | ||
| 28 | + | package() { | |
| 29 | + | cd "dumber_${pkgver}" | |
| 30 | + | install -Dm755 dumber "${pkgdir}/usr/bin/dumber" | |
| 31 | + | install -Dm644 "${srcdir}/dev.bnema.Dumber.desktop" "${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |
| 32 | + | install -Dm644 "${srcdir}/logo-512.png" "${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |
| 33 | + | install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |
| 34 | + | } | |
| @@ -0,0 +1,34 @@ | |||||
| 1 | + | # Maintainer: bnema <b at bnema dot dev> | |||
| 2 | + | pkgname=dumber-browser-bin | |||
| 3 | + | pkgver=0.23.1 | |||
| 4 | + | pkgrel=1 | |||
| 5 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs" | |||
| 6 | + | arch=('x86_64') | |||
| 7 | + | url="https://github.com/bnema/dumber" | |||
| 8 | + | license=('MIT') | |||
| 9 | + | depends=('gtk4' 'webkitgtk-6.0') | |||
| 10 | + | optdepends=( | |||
| 11 | + | 'gstreamer: Media playback support' | |||
| 12 | + | 'gst-plugins-base: Base media codecs' | |||
| 13 | + | 'gst-plugins-good: Additional media codecs' | |||
| 14 | + | 'gst-plugins-bad: Extended media codecs' | |||
| 15 | + | 'gst-libav: FFmpeg-based codecs' | |||
| 16 | + | ) | |||
| 17 | + | provides=('dumber-browser' 'dumber') | |||
| 18 | + | conflicts=('dumber-browser' 'dumber-browser-git') | |||
| 19 | + | source=("${pkgname}-${pkgver}.tar.gz::https://github.com/bnema/dumber/releases/download/v${pkgver}/dumber_linux_x86_64.tar.gz" | |||
| 20 | + | "dev.bnema.Dumber.desktop::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/dev.bnema.Dumber.desktop" | |||
| 21 | + | "logo-512.png::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/assets/logo-512.png" | |||
| 22 | + | "LICENSE::https://raw.githubusercontent.com/bnema/dumber/v${pkgver}/LICENSE") | |||
| 23 | + | sha256sums=('c8230e3a5258333fed401439b08c6ef7b0681dd14f4e97a7e837dfc2c4cc83a0' | |||
| 24 | + | 'SKIP' | |||
| 25 | + | 'SKIP' | |||
| 26 | + | 'SKIP') | |||
| 27 | + | ||||
| 28 | + | package() { | |||
| 29 | + | cd "dumber_${pkgver}" | |||
| 30 | + | install -Dm755 dumber "${pkgdir}/usr/bin/dumber" | |||
| 31 | + | install -Dm644 "${srcdir}/dev.bnema.Dumber.desktop" "${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |||
| 32 | + | install -Dm644 "${srcdir}/logo-512.png" "${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |||
| 33 | + | install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |||
| 34 | + | } | |||
A aur/dumber-browser-git/.SRCINFO +25 -0
| @@ -0,0 +1,25 @@ | |||
| 1 | + | pkgbase = dumber-browser-git | |
| 2 | + | pkgdesc = A minimal keyboard-driven browser for tiling WMs (git version) | |
| 3 | + | pkgver = 0.23.1.r0.g6c872d5 | |
| 4 | + | pkgrel = 1 | |
| 5 | + | url = https://github.com/bnema/dumber | |
| 6 | + | arch = x86_64 | |
| 7 | + | license = MIT | |
| 8 | + | makedepends = go>=1.25 | |
| 9 | + | makedepends = npm | |
| 10 | + | makedepends = git | |
| 11 | + | depends = gtk4 | |
| 12 | + | depends = webkitgtk-6.0 | |
| 13 | + | optdepends = gstreamer: Media playback support | |
| 14 | + | optdepends = gst-plugins-base: Base media codecs | |
| 15 | + | optdepends = gst-plugins-good: Additional media codecs | |
| 16 | + | optdepends = gst-plugins-bad: Extended media codecs | |
| 17 | + | optdepends = gst-libav: FFmpeg-based codecs | |
| 18 | + | provides = dumber-browser | |
| 19 | + | provides = dumber | |
| 20 | + | conflicts = dumber-browser | |
| 21 | + | conflicts = dumber-browser-bin | |
| 22 | + | source = git+https://github.com/bnema/dumber.git | |
| 23 | + | sha256sums = SKIP | |
| 24 | + | ||
| 25 | + | pkgname = dumber-browser-git | |
| @@ -0,0 +1,25 @@ | |||||
| 1 | + | pkgbase = dumber-browser-git | |||
| 2 | + | pkgdesc = A minimal keyboard-driven browser for tiling WMs (git version) | |||
| 3 | + | pkgver = 0.23.1.r0.g6c872d5 | |||
| 4 | + | pkgrel = 1 | |||
| 5 | + | url = https://github.com/bnema/dumber | |||
| 6 | + | arch = x86_64 | |||
| 7 | + | license = MIT | |||
| 8 | + | makedepends = go>=1.25 | |||
| 9 | + | makedepends = npm | |||
| 10 | + | makedepends = git | |||
| 11 | + | depends = gtk4 | |||
| 12 | + | depends = webkitgtk-6.0 | |||
| 13 | + | optdepends = gstreamer: Media playback support | |||
| 14 | + | optdepends = gst-plugins-base: Base media codecs | |||
| 15 | + | optdepends = gst-plugins-good: Additional media codecs | |||
| 16 | + | optdepends = gst-plugins-bad: Extended media codecs | |||
| 17 | + | optdepends = gst-libav: FFmpeg-based codecs | |||
| 18 | + | provides = dumber-browser | |||
| 19 | + | provides = dumber | |||
| 20 | + | conflicts = dumber-browser | |||
| 21 | + | conflicts = dumber-browser-bin | |||
| 22 | + | source = git+https://github.com/bnema/dumber.git | |||
| 23 | + | sha256sums = SKIP | |||
| 24 | + | ||||
| 25 | + | pkgname = dumber-browser-git | |||
A aur/dumber-browser-git/PKGBUILD +41 -0
| @@ -0,0 +1,41 @@ | |||
| 1 | + | # Maintainer: bnema <b at bnema dot dev> | |
| 2 | + | pkgname=dumber-browser-git | |
| 3 | + | pkgver=0.23.1.r0.g6c872d5 | |
| 4 | + | pkgrel=1 | |
| 5 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs (git version)" | |
| 6 | + | arch=('x86_64') | |
| 7 | + | url="https://github.com/bnema/dumber" | |
| 8 | + | license=('MIT') | |
| 9 | + | makedepends=('go>=1.25' 'npm' 'git') | |
| 10 | + | depends=('gtk4' 'webkitgtk-6.0') | |
| 11 | + | optdepends=( | |
| 12 | + | 'gstreamer: Media playback support' | |
| 13 | + | 'gst-plugins-base: Base media codecs' | |
| 14 | + | 'gst-plugins-good: Additional media codecs' | |
| 15 | + | 'gst-plugins-bad: Extended media codecs' | |
| 16 | + | 'gst-libav: FFmpeg-based codecs' | |
| 17 | + | ) | |
| 18 | + | provides=('dumber-browser' 'dumber') | |
| 19 | + | conflicts=('dumber-browser' 'dumber-browser-bin') | |
| 20 | + | source=("git+https://github.com/bnema/dumber.git") | |
| 21 | + | sha256sums=('SKIP') | |
| 22 | + | ||
| 23 | + | pkgver() { | |
| 24 | + | cd dumber | |
| 25 | + | git describe --long --tags 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' || echo "0.0.0.r$(git rev-list --count HEAD).g$(git rev-parse --short HEAD)" | |
| 26 | + | } | |
| 27 | + | ||
| 28 | + | build() { | |
| 29 | + | cd dumber | |
| 30 | + | export CGO_ENABLED=0 | |
| 31 | + | export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" | |
| 32 | + | make build | |
| 33 | + | } | |
| 34 | + | ||
| 35 | + | package() { | |
| 36 | + | cd dumber | |
| 37 | + | install -Dm755 dist/dumber "${pkgdir}/usr/bin/dumber" | |
| 38 | + | install -Dm644 dev.bnema.Dumber.desktop "${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |
| 39 | + | install -Dm644 assets/logo-512.png "${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |
| 40 | + | install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |
| 41 | + | } | |
| @@ -0,0 +1,41 @@ | |||||
| 1 | + | # Maintainer: bnema <b at bnema dot dev> | |||
| 2 | + | pkgname=dumber-browser-git | |||
| 3 | + | pkgver=0.23.1.r0.g6c872d5 | |||
| 4 | + | pkgrel=1 | |||
| 5 | + | pkgdesc="A minimal keyboard-driven browser for tiling WMs (git version)" | |||
| 6 | + | arch=('x86_64') | |||
| 7 | + | url="https://github.com/bnema/dumber" | |||
| 8 | + | license=('MIT') | |||
| 9 | + | makedepends=('go>=1.25' 'npm' 'git') | |||
| 10 | + | depends=('gtk4' 'webkitgtk-6.0') | |||
| 11 | + | optdepends=( | |||
| 12 | + | 'gstreamer: Media playback support' | |||
| 13 | + | 'gst-plugins-base: Base media codecs' | |||
| 14 | + | 'gst-plugins-good: Additional media codecs' | |||
| 15 | + | 'gst-plugins-bad: Extended media codecs' | |||
| 16 | + | 'gst-libav: FFmpeg-based codecs' | |||
| 17 | + | ) | |||
| 18 | + | provides=('dumber-browser' 'dumber') | |||
| 19 | + | conflicts=('dumber-browser' 'dumber-browser-bin') | |||
| 20 | + | source=("git+https://github.com/bnema/dumber.git") | |||
| 21 | + | sha256sums=('SKIP') | |||
| 22 | + | ||||
| 23 | + | pkgver() { | |||
| 24 | + | cd dumber | |||
| 25 | + | git describe --long --tags 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' || echo "0.0.0.r$(git rev-list --count HEAD).g$(git rev-parse --short HEAD)" | |||
| 26 | + | } | |||
| 27 | + | ||||
| 28 | + | build() { | |||
| 29 | + | cd dumber | |||
| 30 | + | export CGO_ENABLED=0 | |||
| 31 | + | export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" | |||
| 32 | + | make build | |||
| 33 | + | } | |||
| 34 | + | ||||
| 35 | + | package() { | |||
| 36 | + | cd dumber | |||
| 37 | + | install -Dm755 dist/dumber "${pkgdir}/usr/bin/dumber" | |||
| 38 | + | install -Dm644 dev.bnema.Dumber.desktop "${pkgdir}/usr/share/applications/dev.bnema.Dumber.desktop" | |||
| 39 | + | install -Dm644 assets/logo-512.png "${pkgdir}/usr/share/icons/hicolor/512x512/apps/dev.bnema.Dumber.png" | |||
| 40 | + | install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |||
| 41 | + | } | |||