Package Details: prjapicula-git 0.21.r0.gfffb2a3-1

Git Clone URL: https://aur.archlinux.org/prjapicula-git.git (read-only, click to copy)
Package Base: prjapicula-git
Description: Project Apicula bitstream documentation for Gowin FPGAs
Upstream URL: https://github.com/YosysHQ/apicula
Licenses: MIT
Conflicts: prjapicula
Provides: prjapicula
Submitter: thotypous
Maintainer: thotypous
Last Packager: thotypous
Votes: 0
Popularity: 0.000000
First Submitted: 2025-02-04 12:39 (UTC)
Last Updated: 2025-07-15 22:47 (UTC)

Latest Comments

thotypous commented on 2025-07-17 02:25 (UTC)

@Marichan I emailed pepijndevos for suggestions before creating this package and he made the same suggestion of getting the fuzzer results generated by their CI from GitHub Releases.

The main problem I see with that approach is that we would not guarantee the pkgver of this package would match the version of the shipped files. Suppose they just pushed something to the git repo, and unluckily you run makepkg before GitHub CI finishes to run. You would generate a package with updated pkgver, but older chipdb files. Then, you would think you are using the latest chipdb, but you would be using a stale version.

I see no way to fix this unless they tag their downloads with the git commit hash, instead of shipping everything as 0.0.0.dev.

Even if this is fixed, I'm not sure if we would be following the correct package naming convention if we used prebuilt chipdb. Prebuilt packages theoretically should be suffixed with -bin, but I've never seen something -git-bin. I have seen -nightly-bin stuff, but this package does not use a nightly snapshot. It would be nice to research if there is some similar situation in AUR and borrow their naming conventions (but IMHO this is a less important issue).

Marichan commented on 2025-07-16 14:33 (UTC)

@thotypous thanks! One of the maintainer meanwhile also suggested that we could pull all the built pickles chipDB from their github. I am not sure if it is better than building them locally, but it would drop the apptainer dependency. I will let you decide the best course anyway

thotypous commented on 2025-07-15 22:48 (UTC)

@Marichan I didn't notice they added that GWVERSION file. Thanks a lot for the patch, I just applied it!

Marichan commented on 2025-07-15 22:36 (UTC) (edited on 2025-07-15 22:44 (UTC) by Marichan)

Hi, the fuzzer version has been bumped from 1.9.8 to 1.9.10.03. While just bumping the version would be fine I think that this being a git package and all it should use the GWVERSION file rpesent in the repo to grab the correct version. This patch to the PKGBUILD should do it:

--- PKGBUILD-og 2025-07-16 00:32:34.738284092 +0200
+++ PKGBUILD    2025-07-16 00:24:41.147422126 +0200
@@ -3,14 +3,11 @@

 _pkgname="prjapicula"
 pkgname="$_pkgname-git"
-pkgver=0.15.r33.g15614ef
-_fuzzerver=1.9.8
+pkgver=0.21.r0.gfffb2a3
 pkgrel=1
 pkgdesc="Project Apicula bitstream documentation for Gowin FPGAs"
 url="https://github.com/YosysHQ/apicula"
 _pkgsrc="apicula"
-_fuzzer="fuzzer-$_fuzzerver"
-_fuzzerimg="docker.io/pepijndevos/apicula:$_fuzzerver"
 source=(
   "$_pkgsrc"::"git+$url.git"
 )
@@ -49,6 +46,9 @@
 }

 prepare() {
+  _fuzzerver=$(cat "$_pkgsrc/GWVERSION")
+  _fuzzer="fuzzer-$_fuzzerver"
+  _fuzzerimg="docker.io/pepijndevos/apicula:$_fuzzerver"
   apptainer pull -F $_fuzzer.sif docker://$_fuzzerimg
   apptainer sif dump 4 $_fuzzer.sif >$_fuzzer.squashfs
   mkdir -p $_fuzzer