Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to use .nvchecker.toml in AUR repository #43

Open
Freso opened this issue Mar 9, 2024 · 7 comments
Open

Option to use .nvchecker.toml in AUR repository #43

Freso opened this issue Mar 9, 2024 · 7 comments
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@Freso
Copy link
Contributor

Freso commented Mar 9, 2024

It’s becoming a de facto standard to include .nvchecker.toml files at the root of Arch package repositories, and at least some AUR packages are adopting this as well. It would be handy if it would be possible to tell aur-auto-update to use this one so we wouldn’t have to essentially duplicate the nvchecker configuration.

I get that in the current form this would create a lot of overhead since the AUR git repositories are not cloned unless an update is available, so not sure how this would be implemented. I still wanted to leave a feature request in case there’s someone who can think up a clever solution. :)

@carlosal1015
Copy link
Member

carlosal1015 commented Mar 9, 2024

Hi @Freso maybe is an off-topic question, I've seen this pattern for package repositories in [core] and [extra], for example for python-textual, could you list some aur packages from different maintainers that has now this adoption.

In official repositories are unusual see .gitignore present , in other hand in AUR repositories I try to have .gitignore file as possible. In the below links, they claim that only PKGBUILD and .SRCINFO should be there, until now I didn't ever seen in an aur repository with nvchecker.

Another pattern in official repositories are folders for example for gpg keys with several .asc files, but in AUR there are not present.

@carlosal1015 carlosal1015 added the good first issue Good for newcomers label Mar 9, 2024
@Freso
Copy link
Contributor Author

Freso commented Mar 9, 2024

Examples of .nvchecker.toml:
obs-pipewire-audio-capture: AUR, git(, gitlab)
python-progress: AUR, git
electron25: AUR, git
ttf-sil-doulos: AUR, git

The keys/ directory structure only makes sense for packages that are using PGP/GPG signatures to verify packages and is specified in Arch Linux RFC 11. It is (slowly) getting adopted by AUR packages where it is relevant; e.g., pacman-static, firefox-extension-localcdn, and youtube-dl are a few that already have this structure.

About .gitignore: not everyone thinks they belong in AUR packages either, but they are still being recommended/highlighted in the AUR submission guidelines. I don’t usually add them to my packages, but I also don’t remove them if they already exist.

Also of note is the discussion/desire to be able to more smoothly move packages to and from AUR and official repositories – and keeping files such as .nvchecker.toml in AUR also helps towards this. :)

@carlosal1015
Copy link
Member

Many thanks for the details. I appreciate a lot.

@petronny petronny added the enhancement New feature or request label Apr 8, 2024
@Freso
Copy link
Contributor Author

Freso commented Apr 20, 2024

The script in #51 may be helpful towards this. Maybe an approach could be to check whether .nvchecker.toml has been updated when running a regular update and if so, convert-nvchecker-toml-yaml could be run on the new .nvchecker.toml to replace the <project>.yaml file?

@carlosal1015
Copy link
Member

After 9 March I include in many packages .nvchecker.toml, will be nice only take this input file and in the future deprecate package-name.yaml. bin/convert-nvchecker-toml-yaml is nice 😄

@petronny
Copy link
Member

petronny commented Apr 24, 2024

After 9 March I include in many packages .nvchecker.toml, will be nice only take this input file and in the future deprecate package-name.yaml. bin/convert-nvchecker-toml-yaml is nice 😄

Removing the nvchecker field in pkgbase.yaml is possible. But we still need to save the other configurations like whether to run the build test and push to AUR (or just flag the package as out of date).

Maybe an approach could be to check whether .nvchecker.toml has been updated when running a regular update and if so, convert-nvchecker-toml-yaml could be run on the new .nvchecker.toml to replace the <project>.yaml file?

It will require some efforts and tricks. But I think it worths doing.

@petronny
Copy link
Member

But we still need to save the other configurations like whether to run the build test and push to AUR (or just flag the package as out of date).

Second thought. We can create another account called AutoFlagBot. So adding AutoUpdateBot means to build and push, adding AutoFlagBot means to flag and adding them both means to build, push and flag when build failed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

3 participants