Mailing List Archive

Need some help with location of git clone when bisecting with 9999-ebuilds
I'm trying to track down a regression in app-emulation/wine-vanilla.

I've read https://wiki.gentoo.org/wiki/Bisecting_with_live_ebuilds and think I
understand how git bisect works and what it does, but three things are unclear
to me.

1) Where should I store the git clone of the repository and how do I tell
emerge to read the source files from there, when emerging the 9999 ebuild,
instead of downloading them from the Internet as usual?

2) Can I tell emerge not to clean the build directory between bisects so it
only recompiles the source files that actually changes between commits?

3) In the wiki's test-zfs.sh script, the EGIT_OVERRIDE_COMMIT variables are
poorly documented. What would the name of those be for app-emulation/wine-vanilla?

Regards
Morgan Wesström
Re: Need some help with location of git clone when bisecting with 9999-ebuilds [ In reply to ]
Hi Morgan:

On 20:41 Thu 10 Aug , Morgan Wesstr?m wrote:
> I'm trying to track down a regression in app-emulation/wine-vanilla.
>
> I've read https://wiki.gentoo.org/wiki/Bisecting_with_live_ebuilds and think I
> understand how git bisect works and what it does, but three things are unclear
> to me.
understanding git bisect should be enough to keep you going..

>
> 1) Where should I store the git clone of the repository and how do I tell
> emerge to read the source files from there, when emerging the 9999 ebuild,
> instead of downloading them from the Internet as usual?

how about have a local clone of wine repository? and feed it to live ebuild
and you can do the bisect of this local repo..

$ git clone https://gitlab.winehq.org/wine/wine.git
$ pwd
/my/path/to/wine
# EGIT_OVERRIDE_REPO_WINE_WINE="file:///my/path/to/wine" \
emerge =app-emulation/wine-vanilla-9999
>
> 2) Can I tell emerge not to clean the build directory between bisects so it
> only recompiles the source files that actually changes between commits?
it would be great to have this feature, but I don't know..
or I'd not personally bother to go this way
>
> 3) In the wiki's test-zfs.sh script, the EGIT_OVERRIDE_COMMIT variables are
> poorly documented. What would the name of those be for app-emulation/wine-vanilla?
EGIT_OVERRIDE_COMMIT_WINE_WINE? have you checked the emerge log? it's obvious
>
> Regards
> Morgan Wesstr?m

--
Yixun Lan (dlan)
Gentoo Linux Developer
GPG Key ID AABEFD55
Re: Need some help with location of git clone when bisecting with 9999-ebuilds [ In reply to ]
Thank you, Yixun.

On 2023-08-11 02:23, Yixun Lan wrote:
> understanding git bisect should be enough to keep you going..
Yes, I actually just ended up doing what git bisect does but manually for now.

>> 2) Can I tell emerge not to clean the build directory between bisects so it
>> only recompiles the source files that actually changes between commits?
> it would be great to have this feature, but I don't know..
> or I'd not personally bother to go this way
My old machine takes 50 minutes to compile wine so it would've been great.
Guess it's time for me to upgrade. ;)

> EGIT_OVERRIDE_COMMIT_WINE_WINE? have you checked the emerge log? it's obvious
I noticed that by chance when I was looking in the log to check whether it
accepted the commit hash I fed it or not. But I ended up just using the
deprecated EGIT_COMMIT for this bisect and running it manually. Since most of
the time is spent compiling it wasn't that much work but I'll be sure to try a
more automated method next time now that I got the last pieces of the puzzle. :)
Just out of curiosity, what decides what the suffix to those EGIT_OVERRIDE_
variables will become? I was unable to find any info of those in the Gentoo
Development Guide, although I only looked at the description of the
git-r3.eclass and that might have been the wrong place.

Regards
Morgan
Re: Need some help with location of git clone when bisecting with 9999-ebuilds [ In reply to ]
On 11/8/23 09:06, Morgan Wesström wrote:
> Thank you, Yixun.
>
> On 2023-08-11 02:23, Yixun Lan wrote:
>> understanding git bisect should be enough to keep you going..
> Yes, I actually just ended up doing what git bisect does but manually
> for now.
>
>>> 2) Can I tell emerge not to clean the build directory between
>>> bisects so it
>>> only recompiles the source files that actually changes between commits?
>> it would be great to have this feature, but I don't know..
>> or I'd not personally bother to go this way
> My old machine takes 50 minutes to compile wine so it would've been
> great. Guess it's time for me to upgrade. ;)
>
>> EGIT_OVERRIDE_COMMIT_WINE_WINE? have you checked the emerge log? it's
>> obvious
> I noticed that by chance when I was looking in the log to check
> whether it accepted the commit hash I fed it or not. But I ended up
> just using the deprecated EGIT_COMMIT for this bisect and running it
> manually. Since most of the time is spent compiling it wasn't that
> much work but I'll be sure to try a more automated method next time
> now that I got the last pieces of the puzzle. :)
> Just out of curiosity, what decides what the suffix to those
> EGIT_OVERRIDE_ variables will become? I was unable to find any info of
> those in the Gentoo Development Guide, although I only looked at the
> description of the git-r3.eclass and that might have been the wrong
> place.
>
> Regards
> Morgan
>
>
>
Will "ebuild /path/to/whatever.ebuild compile" work for what you are
doing ? Also, it works on some simpler builds to cd to the top of the
src tree and just issue a make.

BillK
Re: Need some help with location of git clone when bisecting with 9999-ebuilds [ In reply to ]
On 2023-08-11 03:33, William Kenworthy wrote:
> Will "ebuild /path/to/whatever.ebuild compile" work for what you are doing ?
> Also, it works on some simpler builds to cd to the top of the src tree and just
> issue a make.
In this particular case I'd like to also merge the compiled wine to my system
so I can do the test of the failing application in the same environment as I
normally run it in. But all is fine now and I got my questions answered so I
feel confident I'm better prepared now for any future bisects.
I'm doing my (hopefully) final bisect compile of wine as I write this and will
check the result tomorrow since it's way past bedtime for me now. :)

Regards
Morgan
Re: Need some help with location of git clone when bisecting with 9999-ebuilds [ In reply to ]
On 11/08/2023 01:23, Yixun Lan wrote:
>> 1) Where should I store the git clone of the repository and how do I tell
>> emerge to read the source files from there, when emerging the 9999 ebuild,
>> instead of downloading them from the Internet as usual?

> how about have a local clone of wine repository? and feed it to live ebuild
> and you can do the bisect of this local repo..

I have a dedicated ~/gitstuff for most of my stuff, but the obvious
other place is /usr/src (/wine).

Cheers,
Wol