unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [patch] Trivial fix for non-root install
@ 2009-11-23 15:31 Brett Viren
  2009-11-23 15:41 ` Ingmar Vanhassel
  2009-11-23 18:21 ` Alec Berryman
  0 siblings, 2 replies; 5+ messages in thread
From: Brett Viren @ 2009-11-23 15:31 UTC (permalink / raw)
  To: notmuch

Installing as a normal user fails because the bash completion config
files try to install into /etc.  This trivial patch fixes this.

diff --git a/Makefile.config b/Makefile.config
index ddc7436..c04d57a 100644
--- a/Makefile.config
+++ b/Makefile.config
@@ -1,3 +1,2 @@
-prefix = /usr/local
-bash_completion_dir = /etc/bash_completion.d
+bash_completion_dir = $(prefix)/etc/bash_completion.d
 CFLAGS += -DHAVE_VALGRIND


-Brett.

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [patch] Trivial fix for non-root install
  2009-11-23 15:31 [patch] Trivial fix for non-root install Brett Viren
@ 2009-11-23 15:41 ` Ingmar Vanhassel
  2009-11-23 15:45   ` Jameson Rollins
  2009-12-01 18:18   ` Carl Worth
  2009-11-23 18:21 ` Alec Berryman
  1 sibling, 2 replies; 5+ messages in thread
From: Ingmar Vanhassel @ 2009-11-23 15:41 UTC (permalink / raw)
  To: notmuch

Excerpts from Brett Viren's message of Mon Nov 23 16:31:47 +0100 2009:
> Installing as a normal user fails because the bash completion config
> files try to install into /etc.  This trivial patch fixes this.

NAK

Your patch breaks the more common case of installing as root user. It
now installs into /usr/etc where bash completions most likely won't be
found.

> diff --git a/Makefile.config b/Makefile.config
> index ddc7436..c04d57a 100644
> --- a/Makefile.config
> +++ b/Makefile.config
> @@ -1,3 +1,2 @@
> -prefix = /usr/local
> -bash_completion_dir = /etc/bash_completion.d
> +bash_completion_dir = $(prefix)/etc/bash_completion.d
>  CFLAGS += -DHAVE_VALGRIND
> 
> 
> -Brett.
-- 
Exherbo KDE, X.org maintainer

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [patch] Trivial fix for non-root install
  2009-11-23 15:41 ` Ingmar Vanhassel
@ 2009-11-23 15:45   ` Jameson Rollins
  2009-12-01 18:18   ` Carl Worth
  1 sibling, 0 replies; 5+ messages in thread
From: Jameson Rollins @ 2009-11-23 15:45 UTC (permalink / raw)
  To: Ingmar Vanhassel; +Cc: notmuch

[-- Attachment #1: Type: text/plain, Size: 1187 bytes --]

On Mon, Nov 23, 2009 at 04:41:23PM +0100, Ingmar Vanhassel wrote:
> Excerpts from Brett Viren's message of Mon Nov 23 16:31:47 +0100 2009:
> > Installing as a normal user fails because the bash completion config
> > files try to install into /etc.  This trivial patch fixes this.
>
> Your patch breaks the more common case of installing as root user. It
> now installs into /usr/etc where bash completions most likely won't be
> found.

I submitted a patch similar to Ingmar's the other day.  I actually
feel like the more common case is to install it locally as a local
user, especially during early development.

jamie.

> > diff --git a/Makefile.config b/Makefile.config
> > index ddc7436..c04d57a 100644
> > --- a/Makefile.config
> > +++ b/Makefile.config
> > @@ -1,3 +1,2 @@
> > -prefix = /usr/local
> > -bash_completion_dir = /etc/bash_completion.d
> > +bash_completion_dir = $(prefix)/etc/bash_completion.d
> >  CFLAGS += -DHAVE_VALGRIND
> > 
> > 
> > -Brett.
> -- 
> Exherbo KDE, X.org maintainer
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [patch] Trivial fix for non-root install
  2009-11-23 15:31 [patch] Trivial fix for non-root install Brett Viren
  2009-11-23 15:41 ` Ingmar Vanhassel
@ 2009-11-23 18:21 ` Alec Berryman
  1 sibling, 0 replies; 5+ messages in thread
From: Alec Berryman @ 2009-11-23 18:21 UTC (permalink / raw)
  To: Brett Viren; +Cc: notmuch

Brett Viren on 2009-11-23 10:31:47 -0500:

> Installing as a normal user fails because the bash completion config
> files try to install into /etc.  This trivial patch fixes this.

I worked around this by using $DESTDIR as the prefix and unsetting
prefix during the install.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [patch] Trivial fix for non-root install
  2009-11-23 15:41 ` Ingmar Vanhassel
  2009-11-23 15:45   ` Jameson Rollins
@ 2009-12-01 18:18   ` Carl Worth
  1 sibling, 0 replies; 5+ messages in thread
From: Carl Worth @ 2009-12-01 18:18 UTC (permalink / raw)
  To: Ingmar Vanhassel, notmuch

[-- Attachment #1: Type: text/plain, Size: 3487 bytes --]

On Mon, 23 Nov 2009 16:41:23 +0100, Ingmar Vanhassel <ingmar@exherbo.org> wrote:
> Excerpts from Brett Viren's message of Mon Nov 23 16:31:47 +0100 2009:
> > Installing as a normal user fails because the bash completion config
> > files try to install into /etc.  This trivial patch fixes this.
> 
> Your patch breaks the more common case of installing as root user. It
> now installs into /usr/etc where bash completions most likely won't be
> found.

Here's a compromise, which is to move the installation of the bash
completion support from "make install" to a new "make install-bash".

So I think we'll end up with a bunch of install-<foo> targets
corresponding to each of the things in contrib. And it then shouldn't be
surprising that things in contrib aren't installed by "make install".

The only thing I think I'd really like beyond this is a better way to
advertise the existence of the various install-<foo> targets, (maybe a
message at the end of "make install" that greps and seds these out of
Makefile.local?).

-Carl

commit 7c2c26bc4ec5fdab5c6fa72ea325d846b46929e3
Author: Carl Worth <cworth@cworth.org>
Date:   Tue Dec 1 10:14:00 2009 -0800

    Makefile: Add new "install-bash" target for bash completion support
    
    It was problematic to have this in "make install" since it would
    unconditionally try to install to /etc, (even if a non-privileged user
    was attempting an install to a prefix in the user's home directory,
    for example).

diff --git a/Makefile b/Makefile
index ae0f991..e42584b 100644
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,8 @@ ifeq ($(emacs_lispdir),)
        emacs_lispdir = $(prefix)/share/emacs/site-lisp
 endif
 
+bash_completion_dir = /etc/bash_completion.d
+
 all_deps = Makefile Makefile.local Makefile.config \
                   lib/Makefile lib/Makefile.local
 
diff --git a/Makefile.local b/Makefile.local
index 1744747..aff7d2c 100644
--- a/Makefile.local
+++ b/Makefile.local
@@ -29,15 +29,12 @@ notmuch.1.gz: notmuch.1
        $(call quiet,gzip) --stdout $^ > $@
 
 install: all notmuch.1.gz
-       for d in $(DESTDIR)$(prefix)/bin/ $(DESTDIR)$(prefix)/share/man/man1 \
-               $(DESTDIR)$(bash_completion_dir) ; \
+       for d in $(DESTDIR)$(prefix)/bin/ $(DESTDIR)$(prefix)/share/man/man1 ; \
        do \
                install -d $$d ; \
        done ;
        install notmuch $(DESTDIR)$(prefix)/bin/
        install -m0644 notmuch.1.gz $(DESTDIR)$(prefix)/share/man/man1/
-       install contrib/notmuch-completion.bash \
-               $(DESTDIR)$(bash_completion_dir)/notmuch
 
 install-emacs: install emacs
        for d in $(DESTDIR)/$(emacs_lispdir) ; \
@@ -47,5 +44,10 @@ install-emacs: install emacs
        install -m0644 notmuch.el $(DESTDIR)$(emacs_lispdir)
        install -m0644 notmuch.elc $(DESTDIR)$(emacs_lispdir)
 
+install-bash:
+       install -d $(DESTDIR)$(bash_completion_dir)
+       install contrib/notmuch-completion.bash \
+               $(DESTDIR)$(bash_completion_dir)/notmuch
+
 SRCS  := $(SRCS) $(notmuch_client_srcs)
 CLEAN := $(CLEAN) notmuch $(notmuch_client_modules) notmuch.elc notmuch.1.gz
diff --git a/configure b/configure
index 64816e0..140711f 100755
--- a/configure
+++ b/configure
@@ -133,6 +133,5 @@ EOF
 # construct the Makefile.config
 cat > Makefile.config <<EOF
 prefix = /usr/local
-bash_completion_dir = /etc/bash_completion.d
 CFLAGS += ${have_valgrind}
 EOF

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-12-01 18:19 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-23 15:31 [patch] Trivial fix for non-root install Brett Viren
2009-11-23 15:41 ` Ingmar Vanhassel
2009-11-23 15:45   ` Jameson Rollins
2009-12-01 18:18   ` Carl Worth
2009-11-23 18:21 ` Alec Berryman

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).