View previous topic :: View next topic |
Author |
Message |
4761 n00b
Joined: 08 Mar 2023 Posts: 54
|
Posted: Tue Apr 02, 2024 9:06 am Post subject: How do I update an existing ebuild to a new version? |
|
|
Hey folks,
I've really wanted to contribute to Gentoo for a while now.
I have ocassionally fixed some errors in the handbook when I noticed them, but I now wanted to start with helping maintain some packages.
So far, I'd like to just keep some outdated packages that I'd like to use up-to-date, as that's likely the best way to get into it.
I read through the Gentoo ebuild for beginners wiki, but know still very little about how ebuilds work.
So I wanted to do some hands-on maintaining by updating the mail-client/aerc package, that currently sits at version 0.16, while 0.17 is available upstream.
I figured that it wouldn't be too hard, since I'd only need to update 1 or two dependencies and bump the version number. However, the ebuild contains this line:
Code: | SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz" |
which is pointing to Gentoo's servers.
I wanted to ask you guys how I would go about replacing this line properly to update the ebuild.
Thanks in advance! _________________ ~4761 |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2366
|
Posted: Tue Apr 02, 2024 9:51 am Post subject: Re: How do I update an existing ebuild to a new version? |
|
|
4761 wrote: | Hey folks,
However, the ebuild contains this line:
Code: | SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz" |
which is pointing to Gentoo's servers.
I wanted to ask you guys how I would go about replacing this line properly to update the ebuild.
Thanks in advance! 8) |
Those are some 150Mb of go stuff, are you familiar with it? If not, I suggest you chose another ebuild.
This is how you go about adding the ebuild in a custom overlay: https://wiki.gentoo.org/wiki/Creating_an_ebuild_repository
p.s. I think those go files are stored on the gentoo server because there's network sandbox and go packaging tools cannot download go packages during emerge. If they try to, the ebuild will be terminated.
I had similar issue with freeplane because gradle was trying to download stuff during build and ended up creating just a binary based ebuild. The rule is only portage is allowed to download files and they must match the check sums in the manifest.
Best Regards,
Georgi
Last edited by logrusx on Tue Apr 02, 2024 10:30 am; edited 1 time in total |
|
Back to top |
|
|
bstaletic Guru
Joined: 05 Apr 2014 Posts: 354
|
Posted: Tue Apr 02, 2024 10:03 am Post subject: |
|
|
I don't know how much you actually know, so won't assume anything.
${P} is the name and version of the package. In case of sys-libs/glibc-2.39-r1, that would be glibc-2.39.
If you look at the repo structure, you will see root/${CATEGORY}/${PN}-${PV}-${PR}.ebuild
You can check all of these fancy variables in man 5 ebuild
Keeping a package up-to-date can just be renaming the ebuild file. There's also man 1 ebump from gentoolkit.
In your case, the source tarball is hosted by gentoo and you can not upload it in the name of williamh. As far as I know, your only option is to open a bug report asking for an update.
Well... alternatively, rewrite the ebuild in your local overlay, so that it uses upstream tarballs (if any), so that you can test the new version before submitting the above bug report. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54572 Location: 56N 3W
|
Posted: Tue Apr 02, 2024 11:43 am Post subject: |
|
|
4761,
/var/db/repos/gentoo/mail-client/aerc/metadata.xml says
Code: | ...
<pkgmetadata>
<maintainer type="person">
<email>williamh@g*.org</email>
<name>William Hubbs</name>
</maintainer>
... |
so the package has a gentoo maintainer. That does not mean you cannot help but you need to work with the maintainer.
I've mangled the email address deliberately above.
File a bug asking for the versions bump and asking how you can help. You don't both want to do the same work.
If you look in metadata.hml and find maintainer needed, you can follow the proxy maintainer workflow.
That's probably a good place to start anyway as it will teach you good habits. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
4761 n00b
Joined: 08 Mar 2023 Posts: 54
|
Posted: Tue Apr 02, 2024 11:48 am Post subject: |
|
|
Thank you guys for your response!
I wasn't aware that the tarball contained the Go dependencies - new thing learned.
Neddy, is emailing the maintainer the standard approach in a situation like this, or should I file a bug report?
Thanks again. _________________ ~4761 |
|
Back to top |
|
|
Genone Retired Dev
Joined: 14 Mar 2003 Posts: 9604 Location: beyond the rim
|
Posted: Tue Apr 02, 2024 2:14 pm Post subject: |
|
|
Filing bugs is the better approach as then there is a track record, and if the maintainer for some reason can't handle it or goes missing someone else can pick things up. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 22578
|
Posted: Tue Apr 02, 2024 2:22 pm Post subject: |
|
|
4761 wrote: | I wasn't aware that the tarball contained the Go dependencies - new thing learned. | The filename hints at this, as deps could be read as shorthand for dependencies. However, the only way to know for sure would be to inspect the tarball contents and/or the ebuild functions that use this file. It could have been some other set of supporting files. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54572 Location: 56N 3W
|
Posted: Tue Apr 02, 2024 2:33 pm Post subject: |
|
|
4761,
File a bug. Then its public and others will see your request and offer to help.
That will be useful even if the package you would like to start with is beyond your current skill level.
Others will see it too.
An email to the maintainer will only be seen by that one person.
I understand that go packages are jumping in at the deep end, not that there is anything wrong with that. I don't do code, so that's not a personal opinion.
You may find it easier to get started by bumping maintainer needed packages (search bugs) for other things that interest you, then filing pull requests on gitub. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
4761 n00b
Joined: 08 Mar 2023 Posts: 54
|
Posted: Tue Apr 02, 2024 7:06 pm Post subject: |
|
|
NeddySeagoon wrote: | 4761,
File a bug. Then its public and others will see your request and offer to help.
You may find it easier to get started by bumping maintainer needed packages (search bugs) for other things that interest you, then filing pull requests on gitub. |
Alright thank you!
Is GitHub also a place where I can request a package that isn't yet in the repos? _________________ ~4761 |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54572 Location: 56N 3W
|
Posted: Tue Apr 02, 2024 7:25 pm Post subject: |
|
|
4761,
A request to add a new package should be a bug.
If you want to contribute the ebuild and maintain it, even better.
The guru ovorlay may be a better place to start for that.
Its developer/trusted user curated and has a lower bar to entry than ::gentoo itself. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
|