zqqw / pakku

Pacman wrapper with AUR support
GNU General Public License v3.0
39 stars 3 forks source link

Stable releases? #21

Closed omentic closed 1 year ago

omentic commented 2 years ago

I adopted the pakku package for the time being. Looking at the wiki page on plans, I think there could probably be a 0.15 release now, and fixing AUR comments and removing build dependencies could come in a later version.

@zqqw: would you like maintence of the AUR package? If not, I'm happy to keep it updated.

zqqw commented 2 years ago

That's great! Recently I've been working on the failed build situation, for example pakku -Sn less, opt to edit the PKGBUILD, add cd nodir to the top of the build() function to make it fail, then N at retry. This leaves the /tmp/pakku-$USER/less dir in place, so then if you run it again you get $ pakku -Sn less fatal: destination path 'less' already exists and is not an empty directory. This is one of those things that I seem close to fixing, it could easily be done very imminently, but I haven't quite tracked it down yet, so it might not be, possibly it's a permission issue, exactly the same section of code to remove the directory is run as with a successful build but it doesn't work in this case. I already adopted pakku-git a while ago, and saw pakku had been orphaned, so was thinking I should adopt that too. But anyway I can't do everything at once so if you have adopted pakku it's marvelous! I think you can have more than one maintainer for a package, so if you are interested, and I know you have already a good track record of helping out with Pakku in general, if you wanted you could be added as a maintainer for pakku-git and also have commit access to this GitHub repo in case any sudden issues appear (like the Yay rpc / php thing yesterday) and I was unavailable for some reason, it would be a good idea to have some backup in place especially if Pakku becomes more popular again as it returns to being fully functional. I see you added your name to the co-maintenance of Pakku issue on kitsunyan's repo, the same offer would be open to others on there if they wished. Usually I'm online several times a day, but it's always possible I could lose internet or my laptops all go wrong at once etc.! This would not require any real extra involvement on your part unless you wanted, but say I wasn't about and there was a PR to fix something or you had a fix then you could merge it after testing carefully of course. Yesterday I built nim-git and Pakku builds with this, also with:

    --gc:orc
    --threads:on
    --experimental:strictEffects
    -d:nimPreviewFloatRoundtrip
    -d:nimPreviewDotLikeOps

which are new defaults for Nim 2.0, so it's looking good for that, there are no Nim related issues ahead at present. Have you noticed the Arch community repo "nim" package is outdated too? It should be 1.6, yesterday I test built all the Nim packages I could find in the AUR with pakku, they all built fine with nim-git except nimsynth-git which hasn't built for ages anyway. Edit - there is now a release, feel free to update the Pakku PKGBUILD!

zqqw commented 2 years ago

If you do want to go ahead as pakku aur maintainer then I just spotted some improvements: firstly key words, you can edit these if signed in - I added some to pakku-git: "aur aur-helper helper nim pacman pakku wrapper" which should make it more searchable. Also the default search is name / description, the description is taken from the PKGBUILD pkgdesc= field, and it ought to have the words "AUR helper" in there somewhere, because currently if you search on the AUR for aur helper pakku and pakku-git don't appear. My reason for not making a release sooner was to avoid making a poor first impression on casual users with obvious bugs still present, more experienced users can still use pakku-git, and to avoid frequent version bumps while things were getting fixed, but the situation is quite borderline now anyway. As for failed builds, the latest is it looks like something about "proc installGroupFromSources" giving (or not) elevated permissions for file deletion, this is only required when the d/l'd repo contains root owned items (ie like less, pakku-git) which is why it doesn't happen for every package.

omentic commented 2 years ago

Cool! I've gone and updated the pakku package, so it should pull from here and should also now have tags and a better description. I can also add you as a maintainer there - what's your username on the AUR?

I'd be down to be a backup maintainer to decrease the bus factor, haha. There's not really any ideas I have for pakku feature-wise but I was going to look into fixing the AUR comments bug after midterms. I think I've only ran into the /tmp/ building issue once though.

It's weird that the Nim package is so outdated, I wonder if it just slipped under the radar or if the maintainer had trouble building it.

zqqw commented 2 years ago

That's brilliant, I built and installed pakku using pakku-git earlier today and it's been working perfectly - great job there, thank you! My username is on the pakku-git AUR page, I already added you as co-maintainer there and sent an invite for you as a "collaborator" on this repo which should hopefully give you access if you accept. The Nim package maintainer also maintains 758 other packages, and it doesn't seem to have any other repo packages that depend on it, so it's probably just been given a low priority. I've seen where the aur comment code is located, while looking at other things:

src/feature/syncinstall line 793
          if not skipEdit and aur and not noconfirm and config.aurComments:
            echo(tr"downloading comments from AUR...")
            let (comments, error) = downloadAurComments(base)

That calls the proc downloadAurComments at the end of src/aur.nim. I haven't tried to determine exactly how it worked or why it doesn't now. You are welcome to investigate that bug when you get a chance, don't neglect your other studies though! There's recently been some discussion of web scraping here, don't know if it could be helpful: https://forum.nim-lang.org/t/8882 I also think I know why the failed build file removal problem happens now, although haven't got any patch yet, it's not what I thought initially, rather an interaction between Nim removeDir, makepkg and permissions: https://bbs.archlinux.org/viewtopic.php?pid=1648019

hochata commented 2 years ago

Thanks for the new release!

As a minor (rather inconsequential) thing, the version on the Makefile still says 0.14, while the AUR package states the version is 0.15.

zqqw commented 2 years ago

Thank you for finding that detail! I will update it on the next commit, hopefully soon, as I have the failed build cleanup working but then found another related problem with newly created parent dirs not getting deleted when a long path is specified in pakku.conf, but am close to fixing that too.

zqqw commented 2 years ago

@j-james

omentic commented 2 years ago

Oh no, they beat me to it... Just kidding, that's great! Is it alright if I bump the makefile and make a new version release for the build fix and the comments bug?

zqqw commented 2 years ago

Yes, go ahead if you would like to - happy you are not inconvenienced by that, I'm sure there are plenty more things that can be improved about still!

hochata commented 2 years ago

The current Asciidoc package in the Arch repos is broken... but that is unrelated to Pakku. The latest Asciidoc version should work fine (hopefully). We just have to wait for the Arch repo to be updated.