Compare commits
2 Commits
d88bec13ab
...
2de3daed2c
Author | SHA1 | Date |
---|---|---|
Brieuc Dubois | 2de3daed2c | |
Brieuc Dubois | dc08dc03a4 |
|
@ -107,6 +107,81 @@ jobs:
|
||||||
name: Focus ${{ steps.tagName.outputs.tag }}
|
name: Focus ${{ steps.tagName.outputs.tag }}
|
||||||
prerelease: true
|
prerelease: true
|
||||||
files: |-
|
files: |-
|
||||||
frontend/src-tauri/target/release/focus
|
frontend/src-tauri/target/release/focus-desktop
|
||||||
frontend/src-tauri/target/release/bundle/deb/*.deb
|
frontend/src-tauri/target/release/bundle/deb/*.deb
|
||||||
frontend/src-tauri/target/release/bundle/appimage/*.AppImage
|
frontend/src-tauri/target/release/bundle/appimage/*.AppImage
|
||||||
|
|
||||||
|
- name: Generate sha256sum
|
||||||
|
run: |
|
||||||
|
mkdir -p ./ci/pkgbuild/desktop-bin
|
||||||
|
sha256 frontend/src-tauri/target/release/bundle/deb/*.deb > ./ci/pkgbuild/desktop-bin/sha256sum
|
||||||
|
|
||||||
|
- name: Generate PKGBUILD
|
||||||
|
env:
|
||||||
|
RELEASE_TAG: ${{ steps.tagName.outputs.tag }}
|
||||||
|
run: ./ci/generate-pkgbuild-desktop.py
|
||||||
|
|
||||||
|
- name: Publish AUR package
|
||||||
|
uses: KSXGitHub/github-actions-deploy-aur@v2.7.0
|
||||||
|
with:
|
||||||
|
pkgname: focus-desktop-bin
|
||||||
|
pkgbuild: ./ci/pkgbuild/desktop-bin/PKGBUILD
|
||||||
|
commit_username: ${{ secrets.AUR_USERNAME }}
|
||||||
|
commit_email: ${{ secrets.AUR_EMAIL }}
|
||||||
|
ssh_private_key: ${{ secrets.AUR_SSH_KEY }}
|
||||||
|
commit_message: Update focus-desktop-bin to ${{ steps.tagName.outputs.tag }}
|
||||||
|
|
||||||
|
build-server:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: catthehacker/ubuntu:act-latest
|
||||||
|
env:
|
||||||
|
RUNNER_TOOL_CACHE: /toolcache
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Extract tag
|
||||||
|
uses: olegtarasov/get-tag@v2.1.2
|
||||||
|
id: tagName
|
||||||
|
with:
|
||||||
|
tagRegex: "v(.*)"
|
||||||
|
|
||||||
|
- name: Set up go
|
||||||
|
uses: actions/setup-go@v3
|
||||||
|
with:
|
||||||
|
go-version: 1.21.5
|
||||||
|
|
||||||
|
- name: Build server
|
||||||
|
run: |
|
||||||
|
cd backend
|
||||||
|
go build -o focus-server .
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: Publish server
|
||||||
|
uses: akkuman/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
name: Focus ${{ steps.tagName.outputs.tag }}
|
||||||
|
prerelease: true
|
||||||
|
files: |-
|
||||||
|
backend/focus-server
|
||||||
|
|
||||||
|
- name: Generate sha256sum
|
||||||
|
run: |
|
||||||
|
mkdir -p ./ci/pkgbuild/server-bin
|
||||||
|
sha256 backend/focus-server > ./ci/pkgbuild/server-bin/sha256sum
|
||||||
|
|
||||||
|
- name: Generate PKGBUILD
|
||||||
|
env:
|
||||||
|
RELEASE_TAG: ${{ steps.tagName.outputs.tag }}
|
||||||
|
run: ./ci/generate-pkgbuild-server.py
|
||||||
|
|
||||||
|
- name: Publish AUR package
|
||||||
|
uses: KSXGitHub/github-actions-deploy-aur@v2.7.0
|
||||||
|
with:
|
||||||
|
pkgname: focus-server-bin
|
||||||
|
pkgbuild: ./ci/pkgbuild/server-bin/PKGBUILD
|
||||||
|
commit_username: ${{ secrets.AUR_USERNAME }}
|
||||||
|
commit_email: ${{ secrets.AUR_EMAIL }}
|
||||||
|
ssh_private_key: ${{ secrets.AUR_SSH_KEY }}
|
||||||
|
commit_message: Update focus-server-bin to ${{ steps.tagName.outputs.tag }}
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
# Maintainer: Brieuc Dubois <focus dot aur at bhasher dot com>
|
|
||||||
pkgname=focus-server-git
|
|
||||||
pkgver=r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)
|
|
||||||
pkgrel=1
|
|
||||||
pkgdesc="Focus is an open-source, Kanban-style project management tool, emphasizing simplicity and efficiency."
|
|
||||||
arch=('x86_64')
|
|
||||||
license=('MIT')
|
|
||||||
provides=("${pkgname%-git}=${pkgver}")
|
|
||||||
conflicts=("${pkgname%-git}")
|
|
||||||
url="https://git.bhasher.com/bhasher/focus"
|
|
||||||
|
|
||||||
source=(
|
|
||||||
"$pkgname::git+https://git.bhasher.com/bhasher/focus.git"
|
|
||||||
"LICENSE::https://git.bhasher.com/Bhasher/focus/raw/branch/master/LICENSE.md"
|
|
||||||
)
|
|
||||||
md5sums=(
|
|
||||||
'SKIP'
|
|
||||||
'SKIP'
|
|
||||||
)
|
|
||||||
|
|
||||||
depends=(
|
|
||||||
'glibc'
|
|
||||||
)
|
|
||||||
makedepends=(
|
|
||||||
'go'
|
|
||||||
'git'
|
|
||||||
)
|
|
||||||
|
|
||||||
build() {
|
|
||||||
cd "$srcdir/$pkgname/backend"
|
|
||||||
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -o focus-server .
|
|
||||||
}
|
|
||||||
|
|
||||||
package() {
|
|
||||||
install -Dm755 "${srcdir}/${pkgname}/backend/focus-server" "${pkgdir}/usr/bin/focus-server"
|
|
||||||
install -Dm644 "${srcdir}/${pkgname}/backend/focus-server.service" "${pkgdir}/usr/lib/systemd/system/focus-server.service"
|
|
||||||
install -Dm644 "${srcdir}/${pkgname}/LICENSE.md" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
|
|
||||||
}
|
|
||||||
|
|
|
@ -0,0 +1,68 @@
|
||||||
|
#! /usr/bin/env python3
|
||||||
|
from os import environ
|
||||||
|
|
||||||
|
release_tag = environ.get('RELEASE_TAG')
|
||||||
|
if not release_tag:
|
||||||
|
print('::error ::RELEASE_TAG not set')
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
with open('./ci/pkgbuild/desktop-bin/sha256sum', 'r') as f:
|
||||||
|
sha256sum = f.read().strip()
|
||||||
|
if not sha256sum:
|
||||||
|
print('::error ::sha256sum not set')
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
pkgbuild = f'''\
|
||||||
|
# Maintainer: Brieuc Dubois <focus dot aur at bhasher dot com>
|
||||||
|
pkgname=focus-desktop-bin
|
||||||
|
pkgver={release_tag}
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Focus is an open-source, Kanban-style project management tool, emphasizing simplicity and efficiency."
|
||||||
|
arch=('x86_64')
|
||||||
|
url="https://git.bhasher.com/bhasher/focus"
|
||||||
|
license=('MIT')
|
||||||
|
|
||||||
|
provides=("${{pkgname%-bin}}=${{pkgver}}")
|
||||||
|
conflicts=("${{pkgname%-bin}}")
|
||||||
|
|
||||||
|
depends=(
|
||||||
|
'webkit2gtk'
|
||||||
|
'gtk3'
|
||||||
|
'cairo'
|
||||||
|
'glib2'
|
||||||
|
'hicolor-icon-theme'
|
||||||
|
'gdk-pixbuf2'
|
||||||
|
'libsoup'
|
||||||
|
'gcc-libs'
|
||||||
|
'glibc'
|
||||||
|
'pango'
|
||||||
|
)
|
||||||
|
|
||||||
|
source=(
|
||||||
|
"focus-desktop_${{pkgver}}_amd64.deb::https://git.bhasher.com/Bhasher/focus/releases/download/v${{pkgver}}/focus-desktop_${{pkgver}}_amd64.deb"
|
||||||
|
"LICENSE::https://git.bhasher.com/Bhasher/focus/raw/branch/master/LICENSE.md"
|
||||||
|
)
|
||||||
|
|
||||||
|
sha256sums=(
|
||||||
|
'{sha256sum}'
|
||||||
|
'SKIP'
|
||||||
|
)
|
||||||
|
|
||||||
|
build() {{
|
||||||
|
bsdtar -xf "${{srcdir}}/data.tar.gz"
|
||||||
|
}}
|
||||||
|
|
||||||
|
package() {{
|
||||||
|
install -Dm755 "${{srcdir}}/usr/bin/focus-desktop" "${{pkgdir}}/usr/bin/focus-desktop"
|
||||||
|
install -Dm644 "${{srcdir}}/usr/share/applications/focus-desktop.desktop" "${{pkgdir}}/usr/share/applications/focus-desktop.desktop"
|
||||||
|
for _icons in 32x32 128x128 256x256@2;do
|
||||||
|
install -Dm644 "${{srcdir}}/usr/share/icons/hicolor/${{_icons}}/apps/focus-desktop.png" \
|
||||||
|
-t "${{pkgdir}}/usr/share/icons/hicolor/${{_icons//@2/}}/apps/focus-desktop.png"
|
||||||
|
done
|
||||||
|
install -Dm644 "${{srcdir}}/LICENSE" "${{pkgdir}}/usr/share/licenses/${{pkgname}}/LICENSE"
|
||||||
|
}}
|
||||||
|
'''
|
||||||
|
|
||||||
|
with open('./ci/pkgbuild/desktop-bin/PKGBUILD', 'w') as f:
|
||||||
|
f.write(pkgbuild)
|
|
@ -0,0 +1,50 @@
|
||||||
|
#! /usr/bin/env python3
|
||||||
|
from os import environ
|
||||||
|
|
||||||
|
release_tag = environ.get('RELEASE_TAG')
|
||||||
|
if not release_tag:
|
||||||
|
print('::error ::RELEASE_TAG not set')
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
with open('./ci/pkgbuild/server-bin/sha256sum', 'r') as f:
|
||||||
|
sha256sum = f.read().strip()
|
||||||
|
if not sha256sum:
|
||||||
|
print('::error ::sha256sum not set')
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
pkgbuild = f'''\
|
||||||
|
# Maintainer: Brieuc Dubois <focus dot aur at bhasher dot com>
|
||||||
|
pkgname=focus-server-bin
|
||||||
|
pkgver={release_tag}
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Focus is an open-source, Kanban-style project management tool, emphasizing simplicity and efficiency."
|
||||||
|
arch=('x86_64')
|
||||||
|
url="https://git.bhasher.com/bhasher/focus"
|
||||||
|
license=('MIT')
|
||||||
|
|
||||||
|
provides=("${{pkgname%-bin}}=${{pkgver}}")
|
||||||
|
conflicts=("${{pkgname%-bin}}")
|
||||||
|
|
||||||
|
depends=(
|
||||||
|
'glibc'
|
||||||
|
)
|
||||||
|
|
||||||
|
source=(
|
||||||
|
"focus-server::https://git.bhasher.com/Bhasher/focus/releases/download/v${{pkgver}}/focus-server"
|
||||||
|
"LICENSE::https://git.bhasher.com/Bhasher/focus/raw/branch/master/LICENSE.md"
|
||||||
|
)
|
||||||
|
|
||||||
|
sha256sums=(
|
||||||
|
'{sha256sum}'
|
||||||
|
'SKIP'
|
||||||
|
)
|
||||||
|
|
||||||
|
package() {{
|
||||||
|
install -Dm755 "${{srcdir}}/focus-server" "${{pkgdir}}/usr/bin/focus-server"
|
||||||
|
install -Dm644 "${{srcdir}}/LICENSE" "${{pkgdir}}/usr/share/licenses/${{pkgname}}/LICENSE"
|
||||||
|
}}
|
||||||
|
'''
|
||||||
|
|
||||||
|
with open('./ci/pkgbuild/server-bin/PKGBUILD', 'w') as f:
|
||||||
|
f.write(pkgbuild)
|
|
@ -1,48 +0,0 @@
|
||||||
# Maintainer: Brieuc Dubois <focus dot aur at bhasher dot com>
|
|
||||||
pkgname=focus-desktop-bin
|
|
||||||
pkgver=0.3.2
|
|
||||||
pkgrel=1
|
|
||||||
pkgdesc="Focus is an open-source, Kanban-style project management tool, emphasizing simplicity and efficiency."
|
|
||||||
arch=('x86_64')
|
|
||||||
license=('MIT')
|
|
||||||
provides=("${pkgname%-bin}=${pkgver}")
|
|
||||||
conflicts=("${pkgname%-bin}")
|
|
||||||
url="https://git.bhasher.com/bhasher/focus"
|
|
||||||
|
|
||||||
depends=(
|
|
||||||
'webkit2gtk'
|
|
||||||
'gtk3'
|
|
||||||
'cairo'
|
|
||||||
'glib2'
|
|
||||||
'hicolor-icon-theme'
|
|
||||||
'gdk-pixbuf2'
|
|
||||||
'libsoup'
|
|
||||||
'gcc-libs'
|
|
||||||
'glibc'
|
|
||||||
'pango'
|
|
||||||
)
|
|
||||||
|
|
||||||
source=(
|
|
||||||
"https://git.bhasher.com/Bhasher/focus/releases/download/v${pkgver}/focus_${pkgver}_amd64.deb"
|
|
||||||
"LICENSE-${pkgver}::https://git.bhasher.com/Bhasher/focus/raw/branch/master/LICENSE.md"
|
|
||||||
)
|
|
||||||
|
|
||||||
sha256sums=(
|
|
||||||
'64dc3fbd2476ef5ff9b0705c6ec287657ef7ce96c4b72d063088eb05c519f227'
|
|
||||||
'00f70f9c4cb1c351877b690002c21564dc022f7b5d7fd1273ff52c5911356384'
|
|
||||||
)
|
|
||||||
|
|
||||||
build() {
|
|
||||||
bsdtar -xf "${srcdir}/data.tar.gz"
|
|
||||||
}
|
|
||||||
|
|
||||||
package() {
|
|
||||||
install -Dm755 "${srcdir}/usr/bin/focus" "${pkgdir}/usr/bin/focus"
|
|
||||||
install -Dm644 "${srcdir}/usr/share/applications/focus.desktop" "${pkgdir}/usr/share/applications"
|
|
||||||
for _icons in 32x32 128x128 256x256@2;do
|
|
||||||
install -Dm644 "${srcdir}/usr/share/icons/hicolor/${_icons}/apps/focus.png" \
|
|
||||||
-t "${pkgdir}/usr/share/icons/hicolor/${_icons//@2/}/apps"
|
|
||||||
done
|
|
||||||
install -Dm644 "${srcdir}/LICENSE-${pkgver}" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
|
|
||||||
}
|
|
||||||
|
|
|
@ -8,8 +8,8 @@
|
||||||
"withGlobalTauri": true
|
"withGlobalTauri": true
|
||||||
},
|
},
|
||||||
"package": {
|
"package": {
|
||||||
"productName": "Focus",
|
"productName": "Focus-Desktop",
|
||||||
"version": "0.3.2"
|
"version": "0.3.3"
|
||||||
},
|
},
|
||||||
"tauri": {
|
"tauri": {
|
||||||
"allowlist": {
|
"allowlist": {
|
||||||
|
|
Loading…
Reference in New Issue