Message ID | e3d6c6d670b46d4f0dc133e83c6feede4d55c412.1625844149.git.git@grubix.eu (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [filter-repo] filter-repo: help with local install | expand |
On Fri, Jul 9, 2021 at 8:25 AM Michael J Gruber <git@grubix.eu> wrote: > > The Makefile suggests a local install and works almost as is, except for > the python path. Make it work automatically for this typical use case, > and give a corresponding hint in INSTALL.md. Make sense. > > Signed-off-by: Michael J Gruber <git@grubix.eu> > --- > INSTALL.md | 5 +++-- > Makefile | 2 +- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/INSTALL.md b/INSTALL.md > index 00aabb7..d479681 100644 > --- a/INSTALL.md > +++ b/INSTALL.md > @@ -75,8 +75,9 @@ filter-repo only consists of a few files that need to be installed: > You can create this symlink to (or copy of) git-filter-repo named > git_filter-repo.py and place it in your python site packages; `python > -c "import site; print(site.getsitepackages())"` may help you find the > - appropriate location for your system. Alternatively, you can place > - this file anywhere within $PYTHONPATH. > + appropriate location for your system, `python -c "import site; > + print(site.getusersitepackages())"` for a local install. Alternatively, Why repeat the exact same python invocation twice in the same sentence? What's the difference between "may help you find the appropriate location for your system" and "for a local install"? > + you can place this file anywhere within $PYTHONPATH. > > * git-filter-repo.1 > > diff --git a/Makefile b/Makefile > index 31f5e3a..c97d1f6 100644 > --- a/Makefile > +++ b/Makefile > @@ -4,7 +4,7 @@ bindir = $(prefix)/libexec/git-core > localedir = $(prefix)/share/locale > mandir = $(prefix)/share/man > htmldir = $(prefix)/share/doc/git-doc > -pythondir = $(prefix)/lib64/python3.6/site-packages > +pythondir = $(shell python -c "import site; print(site.getusersitepackages())") Yeah, this seems like a good idea. Thanks for sending this in. If we can get INSTALL.md straightened out, I'll be happy to apply it.
Michael J Gruber <git@grubix.eu> writes: > The Makefile suggests a local install and works almost as is, except for > the python path. Make it work automatically for this typical use case, > and give a corresponding hint in INSTALL.md. > > Signed-off-by: Michael J Gruber <git@grubix.eu> > --- > INSTALL.md | 5 +++-- > Makefile | 2 +- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/INSTALL.md b/INSTALL.md > index 00aabb7..d479681 100644 > --- a/INSTALL.md > +++ b/INSTALL.md > @@ -75,8 +75,9 @@ filter-repo only consists of a few files that need to be installed: > You can create this symlink to (or copy of) git-filter-repo named > git_filter-repo.py and place it in your python site packages; `python > -c "import site; print(site.getsitepackages())"` may help you find the > - appropriate location for your system. Alternatively, you can place > - this file anywhere within $PYTHONPATH. > + appropriate location for your system, `python -c "import site; > + print(site.getusersitepackages())"` for a local install. Alternatively, > + you can place this file anywhere within $PYTHONPATH. > > * git-filter-repo.1 > > diff --git a/Makefile b/Makefile > index 31f5e3a..c97d1f6 100644 > --- a/Makefile > +++ b/Makefile > @@ -4,7 +4,7 @@ bindir = $(prefix)/libexec/git-core > localedir = $(prefix)/share/locale > mandir = $(prefix)/share/man > htmldir = $(prefix)/share/doc/git-doc > -pythondir = $(prefix)/lib64/python3.6/site-packages > +pythondir = $(shell python -c "import site; print(site.getusersitepackages())") There may be no "python" on $PATH, yet the user may have told the make via PYTHON_PATH that /usr/bin/python3 is to be used.
On Fri, Jul 9, 2021 at 10:24 AM Junio C Hamano <gitster@pobox.com> wrote: > > Michael J Gruber <git@grubix.eu> writes: > > > The Makefile suggests a local install and works almost as is, except for > > the python path. Make it work automatically for this typical use case, > > and give a corresponding hint in INSTALL.md. > > > > Signed-off-by: Michael J Gruber <git@grubix.eu> > > --- > > INSTALL.md | 5 +++-- > > Makefile | 2 +- > > 2 files changed, 4 insertions(+), 3 deletions(-) > > > > diff --git a/INSTALL.md b/INSTALL.md > > index 00aabb7..d479681 100644 > > --- a/INSTALL.md > > +++ b/INSTALL.md > > @@ -75,8 +75,9 @@ filter-repo only consists of a few files that need to be installed: > > You can create this symlink to (or copy of) git-filter-repo named > > git_filter-repo.py and place it in your python site packages; `python > > -c "import site; print(site.getsitepackages())"` may help you find the > > - appropriate location for your system. Alternatively, you can place > > - this file anywhere within $PYTHONPATH. > > + appropriate location for your system, `python -c "import site; > > + print(site.getusersitepackages())"` for a local install. Alternatively, > > + you can place this file anywhere within $PYTHONPATH. > > > > * git-filter-repo.1 > > > > diff --git a/Makefile b/Makefile > > index 31f5e3a..c97d1f6 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -4,7 +4,7 @@ bindir = $(prefix)/libexec/git-core > > localedir = $(prefix)/share/locale > > mandir = $(prefix)/share/man > > htmldir = $(prefix)/share/doc/git-doc > > -pythondir = $(prefix)/lib64/python3.6/site-packages > > +pythondir = $(shell python -c "import site; print(site.getusersitepackages())") > > There may be no "python" on $PATH, yet the user may have told the > make via PYTHON_PATH that /usr/bin/python3 is to be used. This was a patch for git-filter-repo.git rather than git.git; there is no PYTHON_PATH variable in the Makefile. That said, thanks for calling out python3. As the git-filter-repo script uses that, all these references to 'python' should be replaced with 'python3' (including the two in INSTALL.md from before this patch).
diff --git a/INSTALL.md b/INSTALL.md index 00aabb7..d479681 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -75,8 +75,9 @@ filter-repo only consists of a few files that need to be installed: You can create this symlink to (or copy of) git-filter-repo named git_filter-repo.py and place it in your python site packages; `python -c "import site; print(site.getsitepackages())"` may help you find the - appropriate location for your system. Alternatively, you can place - this file anywhere within $PYTHONPATH. + appropriate location for your system, `python -c "import site; + print(site.getusersitepackages())"` for a local install. Alternatively, + you can place this file anywhere within $PYTHONPATH. * git-filter-repo.1 diff --git a/Makefile b/Makefile index 31f5e3a..c97d1f6 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ bindir = $(prefix)/libexec/git-core localedir = $(prefix)/share/locale mandir = $(prefix)/share/man htmldir = $(prefix)/share/doc/git-doc -pythondir = $(prefix)/lib64/python3.6/site-packages +pythondir = $(shell python -c "import site; print(site.getusersitepackages())") default: build
The Makefile suggests a local install and works almost as is, except for the python path. Make it work automatically for this typical use case, and give a corresponding hint in INSTALL.md. Signed-off-by: Michael J Gruber <git@grubix.eu> --- INSTALL.md | 5 +++-- Makefile | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-)