archlinux-downgrade / downgrade

Downgrade packages in Arch Linux

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Makefile patches

pbrisbin opened this issue · comments

Following up from #130 (comment), I'd like to see @atreyasha handle the next release.

I added you as co-maintainer in the AUR. For release, I typically do the following:

  1. Ensure translation files are all set
  2. Ensure CHANGELOG.md is correct
  3. Run make release.patch (in this case)

The release task relies on two other pieces of tooling:

  • vbump: a very simple package that just bumps a selected component of version numbers
  • aur-release: a shell script for pushing to the AUR repository, handling SRCINFO, sha sums, and all the rest

I apologize it's not quite as polished and there are a few desperate parts to this. Please do feel free to use (or create) your own process, I just wanted to make you aware of the tooling I had in case it's useful.

Any questions, let me know!

Awesome, thank you. I got the notification for the AUR as well. Your tools are very helpful and I sourced/adapted them before for another AUR project.

Quick question: Do I have permissions to commit directly to master for the release? Last I checked, it was a protected branch and I was not allowed to commit directly.

Ah good point! You're right, you can't currently push directly to mater.

Let me know if you have any others, but I think our options are:

  1. Make you an Admin on the repository, so you can commit around branch protection
  2. Remove branch protection
  3. Make all changes (including version bump and CHANGELOG) via PRs

I don't want to do (2) if we can avoid it. After a few releases, I think we could do (1), but maybe not yet. So how about (3) for now?

This means I'd have to Approve your PR that finalizes the release (not necessarily a bad thing for now), then you would merge the PR, create the tag, and proceed with the AUR repository update. I think you'll be able to create tags, even with the branch protection in place and your current non-admin status.

Makes sense to do (3) for the next few releases so I can get the hang of things, then we could do (1) in the future. Will open the (release) PR soon.

So it all worked. For future releases, we can follow the same procedure:

  1. Open a PR for the changelog/locales
  2. Merge to master
  3. Run make release.*, which will push tags directly to master and push a new commit to the AUR.

Just some comments based on my fiddling around with Makefile in the last 30 mins:

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L62

Can I change this to .PHONY: release.patch?

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L73

As per the syntax aur-release VERSION [NAME] [FILE, ...] here, should this be aur-release $(AUR_RELEASE_OPTIONS) "$(VERSION)" downgrade? I had to do that during this release as the current syntax resulted in an error.

  1. When executing aur-release, I encountered a no-command-found error for mksrcinfo here. I tried aliasing it but it did not help. Is there something I am missing? I circumvented it by modifying the source code of a localized aur-release installation; specifically changing mksrcinfo to makepkg --printsrcinfo > .SRCINFO.

Update:

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L6-L10

Should we add aur-release-git as a dependency here? Maybe we could modify the target name here to something that indicates that these are dependencies for developing this repository; maybe something like devdeps?

Nice!

So, I completely forgot that aur-release used to be its own repository with an AUR package. I've actually been using a script just in my dotfiles: https://github.com/pbrisbin/dotfiles/blob/master/local/bin/aur-release. It has a lot of the fixes you're talking about here.

To your comments:

  1. 🤦‍♂️ yeah, please fix :)
  2. See above
  3. See above
  4. See above. We would need to move my newer script back to that repository that backs the AUR package -- which I think makes a lot of sense! Alternatively, we could just check which aur-release and error -- rather than auto-installing.

Very sorry about the confusion on that, I don't even know how I ended up in this state.

FYI, I pushed a new version of https://github.com/pbrisbin/aur-release and will soon remove my dotfiles script. Sorry about that!

Hey man! Sorry for the late response, was travelling the last few days. No worries at all, I thought that was the case as well :) Perfect, will install the latest version. Also, will include a fix for line 62 of our local Makefile (and other comments) with a separate PR.

As far as I can tell, everything mentioned here has been addressed. Closing! 👏