Ah, got it. Fix pushed. Thanks.
I also finally figured out the cause of "pyenv: pip: command not found" and 
pushed a fix for that too.

BTW, I don't see ~/.pythonversion. Are you sure that's from pyenv?

Regards,
John Ralls


> On Feb 15, 2022, at 2:08 PM, Spock <[email protected]> wrote:
> 
> Sorry - I did not explain myself well enough there John.
> 
> I guess the issue that I’m pointing out is that gtk-osx-setup.sh writes the 
> jhbuild script but writes an absolute path for $PATH to be set to rather than 
> escaping so that $PATH is read from the environment when running jhbuild.
> 
> In the code snip from gtk-osx-setup.sh below the second $PATH should be 
> escaped to be ‘\$PATH’ (as shown). Without this, it means that PATH only gets 
> set correctly if the environment $PATH when calling  gtk-osx-setup.sh 
> contains something like “~/.new_local/bin”.
> 
> — snip ---
> cat <<EOF > “$DEVPREFIX/bin/jhbuild"
> #!$DEVPREFIX/bin/bash
> ...
> export PATH="$PYENV_ROOT/shims:$PATH”  <<<<<<<- Should be …/shims:\$PATH
> ...
> exec $DEVPREFIX/bin/pipenv run jhbuild \$@
> EOF
> — snip ---
> 
> This explains why people with fresh machines or fresh usernames end up with 
> the build failing.
> 
> So the either the instructions need to say “Set your PATH to include 
> ~/.new_local/bin before invoking  gtk-osx-setup.sh” or the script needs to be 
> fixed to include the line:
> 
> —snip—
> export PATH="$PYENV_ROOT/shims:$PATH”
> —snip --
> 
> Once I make this change, I can build a lot more of the "jhbuild build 
> meta-gtk-osx-bootstrap meta-gtk-osx-gtk3“ stage.
> It still fails, btw, but I need to diagnose why and or ask some more 
> questions!
> 
> 
> Hope this makes sense and is helpful?
> 
> Regards
> Paul
> 
> 
> 
>> On 15 Feb 2022, at 18:52, john <[email protected]> wrote:
>> 
>> Well, it's been a requirement since forever that you put $DEVPREFIX/bin in 
>> your path before invoking jhbuild, but I suppose there's no harm in also 
>> adding it with jhbuild to prevent path pollution. I hadn't noticed 
>> ~/.pythonversion. That's rude of them, I'll look for a way to bury that 
>> somewhere so that it doesn't affect other stuff.
>> 
>> Regards,
>> John Ralls
>> 
>>> On Feb 15, 2022, at 5:26 AM, Spock <[email protected]> wrote:
>>> 
>>> Hi John,
>>> 
>>> I guess the issue with the $PYENV local 23.10.0 is that it causes 
>>> ~/.pythonversion to be created - which may or may not be a permanent change 
>>> a developer might want?
>>> 
>>> The more serious issue is with meson not finding ninja. I think this is 
>>> down to jhbuild not having ~/.new_local/bin in its path.
>>> 
>>> Here’s an example:
>>> 
>>> — snip —
>>> 
>>> j@pauls-mbp ~ [nobrew] % echo $PATH
>>> /Users/j/.new_local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/Users/j/.cargo/bin
>>> j@pauls-mbp ~ [nobrew] % jhbuild shell
>>> Loading .env environment variables...
>>> Found Command Line Tools 'version: 13.2.0.0.1.1638488800'
>>> Command Line Tools version 13.200000
>>> Prefix: /Users/j/gtk/inst
>>> Entered jhbuild shell, type 'exit' to return.
>>> j@pauls-mbp ~ % jhbuild
>>> zsh: command not found: jhbuild
>>> j@pauls-mbp ~ %
>>> 
>>> — snip —
>>> 
>>> I think this means that the jhbuild configuration installed by 
>>> gtk-osx-setup.sh does not set up jhbuild so that it uses the binaries that 
>>> have been installed?
>>> 
>>> I’m not sure if the issue is with jhbuild or gtk-osx-setup.sh - but I guess 
>>> it’s right to start in this list before looking at what might be wrong (if 
>>> anything) with jhbuild?
>>> 
>>> Regards
>>> Paul Rogers
>>> 
>>>> On 15 Feb 2022, at 01:55, John Ralls <[email protected]> wrote:
>>>> 
>>>> 
>>>> 
>>>>> On Feb 14, 2022, at 10:03 AM, Spock <[email protected]> wrote:
>>>>> 
>>>>> Hi, I’m running gtk-osx-setup.sh on an M1 Mac/MacOS 12.2 and am having a 
>>>>> couple of problems ...
>>>>> 
>>>>> First off, I’m running without any homebrew paths in any of the 
>>>>> environment variables.
>>>>> 
>>>>> Now, with this shell, when I run the script, I get the following:
>>>>> 
>>>>> — snip ----
>>>>> pyenv: pip: command not found
>>>>> 
>>>>> The `pip' command exists in these Python versions:
>>>>> 3.10.0
>>>>> 
>>>>> Note: See 'pyenv help global' for tips on allowing both
>>>>>   python2 and python3 to be found.
>>>>> pyenv: pip: command not found
>>>>> 
>>>>> The `pip' command exists in these Python versions:
>>>>> 3.10.0
>>>>> 
>>>>> Note: See 'pyenv help global' for tips on allowing both
>>>>>   python2 and python3 to be found.
>>>>> —- snip ---
>>>>> 
>>>>> So I add a line to the script to allow it to find python:
>>>>> 
>>>>> — snip —
>>>>> PIP=“$PYENV_ROOT/shims/pip”
>>>>> # Point pyenv at the 3.10.0 Python ...
>>>>> $PYENV local 3.10.0
>>>>> $PIP install --upgrade --user pip
>>>>> — snip ---
>>>>> 
>>>>> With this line, I remove the artefacts from the previous build and 
>>>>> re-run. This time the script completes, so I move on to 
>>>>> “./.new_local/bin/jhbuild bootstrap-gtk-osx which appears to complete 
>>>>> successfully.
>>>>> 
>>>>> *** Was this the right thing to do?
>>>>> 
>>>>> The final step “jhbuild meta-gtk-osx-bootstrap meta-gtk-osx-gtk3 fails 
>>>>> due to problems finding a version of ninja …
>>>>> 
>>>>> — snip ---
>>>>> gtk-doc 1.33.1
>>>>> 
>>>>> User defined options
>>>>> libdir     : lib
>>>>> prefix     : /Users/j/gtk/inst
>>>>> wrap_mode  : nofallback
>>>>> tests      : false
>>>>> yelp_manual: false
>>>>> 
>>>>> 
>>>>> ERROR: Could not detect Ninja v1.8.2 or newer
>>>>> — snip ---
>>>>> 
>>>>> I checked the version installed by the script …
>>>>> 
>>>>> — snip ---
>>>>> j@pauls-mbp ~ [nobrew] % ./.new_local/bin/ninja —version
>>>>> 1.10.2
>>>>> — snip ---
>>>>> 
>>>>> *** So what is happening with ninja? Is there a setup step I’m missing?
>>>>> 
>>>>> Any help much appreciated!
>>>> 
>>>> Your fix for pip seems reasonable. Did you remember to add 
>>>> ~/.new_local/bin to $PATH?
>>>> 
>>>> Regards,
>>>> John Ralls
>>>> 
>>>> 
>>> 
>> 
> 

_______________________________________________
gtk-osx-devel-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/gtk-osx-devel-list

Reply via email to