public inbox for elfutils@sourceware.org
 help / color / mirror / Atom feed
* PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
@ 2021-04-29 16:13 Frank Ch. Eigler
  2021-05-03 12:59 ` Mark Wielaard
  0 siblings, 1 reply; 4+ messages in thread
From: Frank Ch. Eigler @ 2021-04-29 16:13 UTC (permalink / raw)
  To: elfutils-devel

Hi -

This change was suggested by fedora fesco folks, to make it easier for
for auxiliary system daemons to use debuginfod by default.


commit 4db2eba32aaed7d567f5ebea6b2eb7a6dc4b4b36
Author: Frank Ch. Eigler <fche@redhat.com>
Date:   Thu Apr 29 11:49:14 2021 -0400

    PR27783 debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
    
    Introduce use of a systemwide config file /etc/debuginfod_urls for a
    fallback default for an unset $DEBUGINFOD_URLS.  $DEBUGINFOD_URLS_FILE
    overrides the default location of that file, which is probably mainly
    useful for testing.  Deprecate the similar /etc/profile.d/debuginfod*
    mechanism that affected only login shells.
    
    OTOH, setting ANY of the following to be an empty string will disable
    debuginfod-client capability:
    - env var $DEBUGINFOD_URLS
    - env var $DEBUGINFOD_URLS_FILE
    - the file named by $DEBUGINFOD_URLS_FILE
    
    Signed-off-by: Frank Ch. Eigler <fche@redhat.com>

diff --git a/ChangeLog b/ChangeLog
index e18746fb9771..4057e19a87ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2021-04-29  Frank Ch. Eigler <fche@redhat.com>
+
+	PR27783
+	* configure.ac (enable-debuginfod-urls): Tweak AC_CONFIG_FILE.
+
 2021-03-30  Frank Ch. Eigler  <fche@redhat.com>
 
 	* configure.ac: Look for pthread_setname_np.
diff --git a/NEWS b/NEWS
index 038c6019f572..5f4b0992b629 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
 Version 0.184
 
+debuginfod-client: DEBUGINFOD_URLS_FILE (default /etc/debuginfod_urls)
+                   is consulted for DEBUGINFOD_URLS if that is unset.
+
 debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker.
 
 Version 0.183
diff --git a/config/ChangeLog b/config/ChangeLog
index 0e179cbc673b..ab13c4a80586 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,12 @@
+2021-04-29  Frank Ch. Eigler <fche@redhat.com>
+
+	PR27783
+	* profile.*: Drop these.
+	* debuginfod_urls.in: New file.
+	* elfutils.spec.in: Adjust accordingly.
+	* debuginfod.sysconfig: Add blurb to unset upstream links by default.
+	* Makefile.am: dist it.
+
 2021-02-17  Timm Bäder  <tbaeder@redhat.com>
 
 	* eu.am (NO_PACKED_NOT_ALIGNED_WARNING): New variable.
diff --git a/config/Makefile.am b/config/Makefile.am
index a66f54904991..1b6cdcc8fa8b 100644
--- a/config/Makefile.am
+++ b/config/Makefile.am
@@ -30,7 +30,7 @@
 ##
 EXTRA_DIST = elfutils.spec.in known-dwarf.awk 10-default-yama-scope.conf \
 	     libelf.pc.in libdw.pc.in libdebuginfod.pc.in \
-	     debuginfod.service debuginfod.sysconfig profile.sh.in profile.csh.in
+	     debuginfod.service debuginfod.sysconfig debuginfod_urls.in
 
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libelf.pc libdw.pc
@@ -38,11 +38,10 @@ if LIBDEBUGINFOD
 pkgconfig_DATA += libdebuginfod.pc
 
 install-data-local:
-	$(INSTALL_DATA) profile.sh -D $(DESTDIR)$(sysconfdir)/profile.d/debuginfod.sh
-	$(INSTALL_DATA) profile.csh -D $(DESTDIR)$(sysconfdir)/profile.d/debuginfod.csh
+	$(INSTALL_DATA) debuginfod_urls -D $(DESTDIR)$(sysconfdir)/debuginfod_urls
 
 uninstall-local:
-	rm -f $(DESTDIR)$(sysconfdir)/profile.d/debuginfod.sh $(DESTDIR)$(sysconfdir)/profile.d/debuginfod.csh
+	rm -f $(DESTDIR)$(sysconfdir)/debuginfod_urls
 endif
 
 if MAINTAINER_MODE
diff --git a/config/debuginfod.sysconfig b/config/debuginfod.sysconfig
index 446038742bae..bb0c84f3d4d5 100644
--- a/config/debuginfod.sysconfig
+++ b/config/debuginfod.sysconfig
@@ -8,7 +8,10 @@ DEBUGINFOD_PATHS="-t43200 -F -R /usr/lib/debug /usr/bin /usr/libexec /usr/sbin /
 # prefer reliability/durability over performance
 #DEBUGINFOD_PRAGMAS="-D 'pragma synchronous=full;'"
 
-# upstream debuginfods
+# set it to empty to avoid accidental recursive reference
+DEBUGINFOD_URLS=""
+DEBUGINFOD_URLS_FILE=""
+# or specify upstream debuginfods
 #DEBUGINFOD_URLS="http://secondhost:8002 http://thirdhost:8002"
 #DEBUGINFOD_TIMEOUT="5"
 #DEBUGINFOD_CACHE_DIR=""
diff --git a/config/debuginfod_urls.in b/config/debuginfod_urls.in
new file mode 100644
index 000000000000..5a5fa815d2e9
--- /dev/null
+++ b/config/debuginfod_urls.in
@@ -0,0 +1 @@
+@DEBUGINFOD_URLS@
diff --git a/config/elfutils.spec.in b/config/elfutils.spec.in
index 9df92b3815e7..ba06480c71c1 100644
--- a/config/elfutils.spec.in
+++ b/config/elfutils.spec.in
@@ -298,7 +298,7 @@ fi
 %{_libdir}/libdebuginfod.so.*
 %{_bindir}/debuginfod-find
 %{_mandir}/man1/debuginfod-find.1*
-%config(noreplace) %{_sysconfdir}/profile.d/*
+%config(noreplace) %{_sysconfdir}/debuginfod_urls
   
 %files debuginfod-client-devel
 %defattr(-,root,root)
diff --git a/config/profile.csh.in b/config/profile.csh.in
deleted file mode 100644
index 0a2d6d162019..000000000000
--- a/config/profile.csh.in
+++ /dev/null
@@ -1,11 +0,0 @@
-if ("@DEBUGINFOD_URLS@" != "") then
-	if ($?DEBUGINFOD_URLS) then
-		if ($%DEBUGINFOD_URLS) then
-			setenv DEBUGINFOD_URLS "$DEBUGINFOD_URLS @DEBUGINFOD_URLS@"
-		else
-			setenv DEBUGINFOD_URLS "@DEBUGINFOD_URLS@"
-		endif
-	else
-		setenv DEBUGINFOD_URLS "@DEBUGINFOD_URLS@"
-	endif
-endif
diff --git a/config/profile.sh.in b/config/profile.sh.in
deleted file mode 100644
index aa228a0dcd16..000000000000
--- a/config/profile.sh.in
+++ /dev/null
@@ -1,4 +0,0 @@
-if [ -n "@DEBUGINFOD_URLS@" ]; then
-	DEBUGINFOD_URLS="${DEBUGINFOD_URLS-}${DEBUGINFOD_URLS:+ }@DEBUGINFOD_URLS@"
-	export DEBUGINFOD_URLS
-fi
diff --git a/configure.ac b/configure.ac
index ad046bc27ac1..1ce280513e73 100644
--- a/configure.ac
+++ b/configure.ac
@@ -781,10 +781,10 @@ AS_IF([test "x$enable_debuginfod" != "xno"], [
 AS_IF([test "x$enable_debuginfod" != "xno"],AC_DEFINE([ENABLE_DEBUGINFOD],[1],[Build debuginfod]))
 AM_CONDITIONAL([DEBUGINFOD],[test "x$enable_debuginfod" = "xyes"])
 
-dnl for /etc/profile.d/elfutils.{csh,sh}
+dnl for /etc/debuginfod_urls
 default_debuginfod_urls=""
 AC_ARG_ENABLE(debuginfod-urls,
-            [AS_HELP_STRING([--enable-debuginfod-urls@<:@=URLS@:>@],[add URLS to profile.d DEBUGINFOD_URLS])],
+            [AS_HELP_STRING([--enable-debuginfod-urls@<:@=URLS@:>@],[set systemwide default DEBUGINFOD_URLS])],
             [if test "x${enableval}" = "xyes";
              then default_debuginfod_urls="https://debuginfod.elfutils.org/";
              elif test "x${enableval}" != "xno"; then
@@ -792,7 +792,7 @@ AC_ARG_ENABLE(debuginfod-urls,
              fi],
             [default_debuginfod_urls=""])
 AC_SUBST(DEBUGINFOD_URLS, $default_debuginfod_urls)                
-AC_CONFIG_FILES([config/profile.sh config/profile.csh])
+AC_CONFIG_FILES([config/debuginfod_urls])
 
 AC_OUTPUT
 
diff --git a/debuginfod/ChangeLog b/debuginfod/ChangeLog
index 3909100903cb..20744497e383 100644
--- a/debuginfod/ChangeLog
+++ b/debuginfod/ChangeLog
@@ -1,3 +1,12 @@
+2021-04-29  Frank Ch. Eigler <fche@redhat.com>
+
+	PR27783
+	* debuginfod-client.c (xstr_readfile, xstr_readline): New helpers.
+	(debuginfod_begin): In absence of $DEBUGINFOD_URLS, read
+	$DEBUGINFOD_URLS_FILE for default urls.
+	* Makefile.am (CFLAGS): Pass $SYSCONFDIR.
+	* debuginfod.h (DEBUGINFOD_URLS_FILE_ENV_VAR): New variable.
+
 2021-04-26  Frank Ch. Eigler <fche@redhat.com>
 
 	PR27571
diff --git a/debuginfod/Makefile.am b/debuginfod/Makefile.am
index 3adb27559c9c..0b61f4b1cb69 100644
--- a/debuginfod/Makefile.am
+++ b/debuginfod/Makefile.am
@@ -80,6 +80,9 @@ noinst_LIBRARIES = libdebuginfod.a
 noinst_LIBRARIES += libdebuginfod_pic.a
 endif
 
+# expand $sysconfdir with embedded $prefix if any
+SYSCONFDIR=$(shell prefix="$(prefix)"; sysconfdir="$(sysconfdir)"; echo $$sysconfdir)
+AM_CFLAGS += -DSYSCONFDIR='"$(SYSCONFDIR)"'
 libdebuginfod_a_SOURCES = debuginfod-client.c
 libdebuginfod_pic_a_SOURCES = debuginfod-client.c
 am_libdebuginfod_pic_a_OBJECTS = $(libdebuginfod_a_SOURCES:.c=.os)
diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
index 374989e26d43..e65aac8b4c1c 100644
--- a/debuginfod/debuginfod-client.c
+++ b/debuginfod/debuginfod-client.c
@@ -1122,6 +1122,53 @@ debuginfod_query_server (debuginfod_client *c,
 
 
 
+/* Read given file into malloc()d buffer, if possible.  Caller to free. */
+static char*
+xstr_readfile (const char *file)
+{
+  char* buf = NULL;
+  struct stat st;
+  int fd = open (file, O_RDONLY);
+  if (fd < 0) goto out;
+  int rc = fstat(fd, &st);
+  if (rc < 0) goto out1;
+  off_t sz = st.st_size;
+  buf = malloc (sz+1);
+  if (buf == NULL) goto out1;
+  off_t i = 0;
+  while (i < sz) /* loop to read the whole thing */
+    {
+      ssize_t s = read(fd, & buf[i], sz-i);
+      if (s <= 0) break;
+      i += s;
+    }
+
+  /* NUL-terminate */
+  buf[i] = '\0';
+  
+ out1:
+  close (fd);
+
+ out:
+  return buf;
+}
+
+
+/* Return the first line of given file, with no \n but a \0.
+   Caller to free(). */
+static char*
+xstr_readline (const char *file)
+{
+  char *f = xstr_readfile (file);
+  if (f == NULL)
+    return f;
+  char *ret = index (f, '\n');
+  if (ret)
+    *ret = '\0';
+  return f;
+}
+
+
 /* See debuginfod.h  */
 debuginfod_client  *
 debuginfod_begin (void)
@@ -1130,7 +1177,8 @@ debuginfod_begin (void)
   size_t size = sizeof (struct debuginfod_client);
   const char* server_urls = NULL;
   client = (debuginfod_client *) calloc (1, size);
-
+  char* default_urls = NULL;
+    
   if (client != NULL)
     {
       if (getenv(DEBUGINFOD_PROGRESS_ENV_VAR))
@@ -1144,6 +1192,21 @@ debuginfod_begin (void)
   /* Count the DEBUGINFOD_URLS and create the long-lived curl handles. */
   client->num_urls = 0;
   server_urls = getenv (DEBUGINFOD_URLS_ENV_VAR);
+  /* Fall back to fetching default from a system file. */
+  if (server_urls == NULL)
+    {
+      const char* server_urls_file = getenv (DEBUGINFOD_URLS_FILE_ENV_VAR);
+      if (server_urls_file == NULL) server_urls_file = SYSCONFDIR "/debuginfod_urls";
+      default_urls = xstr_readline (server_urls_file);
+      if (default_urls != NULL)
+        {
+          server_urls = default_urls;
+          /* Save it to the environment so this file opening dance is
+             not repeated for this process. */
+          setenv ("DEBUGINFOD_URLS", default_urls, 1 /* overwrite */);
+        }
+    }
+  
   if (server_urls != NULL)
     for (int i = 0; server_urls[i] != '\0'; i++)
       if (server_urls[i] != url_delim_char
@@ -1184,7 +1247,8 @@ debuginfod_begin (void)
   free (client);
   client = NULL;
 
- out:  
+ out:
+  free (default_urls); /* ok even if NULL */
   return client;
 }
 
diff --git a/debuginfod/debuginfod.h.in b/debuginfod/debuginfod.h.in
index 559ea9479349..891cdf0da0cc 100644
--- a/debuginfod/debuginfod.h.in
+++ b/debuginfod/debuginfod.h.in
@@ -31,6 +31,7 @@
 
 /* Names of environment variables that control the client logic. */
 #define DEBUGINFOD_URLS_ENV_VAR "DEBUGINFOD_URLS"
+#define DEBUGINFOD_URLS_FILE_ENV_VAR "DEBUGINFOD_URLS_FILE"
 #define DEBUGINFOD_CACHE_PATH_ENV_VAR "DEBUGINFOD_CACHE_PATH"
 #define DEBUGINFOD_TIMEOUT_ENV_VAR "DEBUGINFOD_TIMEOUT"
 #define DEBUGINFOD_PROGRESS_ENV_VAR "DEBUGINFOD_PROGRESS"
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 05fcd23d5465..2703bd7d2d0f 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2021-04-29  Frank Ch. Eigler <fche@redhat.com>
+
+	PR27783
+	* debuginfod*: Document new $DEBUGINFOD_URLS_FILE variable.
+
 2021-04-23  Frank Ch. Eigler <fche@redhat.com>
 
 	PR27701
diff --git a/doc/debuginfod-find.1 b/doc/debuginfod-find.1
index 12d4ec2d32fe..1e14b992ddc6 100644
--- a/doc/debuginfod-find.1
+++ b/doc/debuginfod-find.1
@@ -132,6 +132,12 @@ proxy server could.)
 This environment variable contains a list of URL prefixes for trusted
 debuginfod instances.  Alternate URL prefixes are separated by space.
 
+.TP 21
+.B DEBUGINFOD_URLS_FILE
+If $DEBUGINFOD_URLS is unset, the file named by this environment variable
+is read, and its first line is used as $DEBUGINFOD_URLS.  The default file 
+is under the system configuration directory (usually \fB/etc/debuginfod_urls\fP).
+
 .TP 21
 .B DEBUGINFOD_TIMEOUT
 This environment variable governs the timeout for each debuginfod HTTP
diff --git a/doc/debuginfod.8 b/doc/debuginfod.8
index 1ba42cf65ffa..9408aff0193d 100644
--- a/doc/debuginfod.8
+++ b/doc/debuginfod.8
@@ -416,6 +416,12 @@ debuginfod instances.  Alternate URL prefixes are separated by space.
 Avoid referential loops that cause a server to contact itself, directly
 or indirectly - the results would be hilarious.
 
+.TP 21
+.B DEBUGINFOD_URLS_FILE
+If $DEBUGINFOD_URLS is unset, the file named by this environment variable
+is read, and its first line is used as $DEBUGINFOD_URLS.  The default file 
+is under the system configuration directory (usually \fB/etc/debuginfod_urls\fP).
+
 .TP
 .B DEBUGINFOD_TIMEOUT
 This environment variable governs the timeout for each debuginfod HTTP
diff --git a/doc/debuginfod_find_debuginfo.3 b/doc/debuginfod_find_debuginfo.3
index 5ae44a9834be..2cee2ef1c9d9 100644
--- a/doc/debuginfod_find_debuginfo.3
+++ b/doc/debuginfod_find_debuginfo.3
@@ -248,6 +248,12 @@ proxy server could.)
 This environment variable contains a list of URL prefixes for trusted
 debuginfod instances.  Alternate URL prefixes are separated by space.
 
+.TP 21
+.B DEBUGINFOD_URLS_FILE
+If $DEBUGINFOD_URLS is unset, the file named by this environment variable
+is read, and its first line is used as $DEBUGINFOD_URLS.  The default file 
+is under the system configuration directory (usually \fB/etc/debuginfod_urls\fP).
+
 .TP 21
 .B DEBUGINFOD_TIMEOUT
 This environment variable governs the timeout for each debuginfod HTTP
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 0712417fa6cd..bc2016f40203 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,8 @@
+2021-04-29  Frank Ch. Eigler <fche@redhat.com>
+
+	PR27783
+	* run-debuginfod-find.sh: Add a $DEBUGINFOD_URLS_FILE test.
+
 2021-04-26  Frank Ch. Eigler <fche@redhat.com>
 
 	PR27571
diff --git a/tests/run-debuginfod-find.sh b/tests/run-debuginfod-find.sh
index 7ad2a45d3aac..9a217121b7e2 100755
--- a/tests/run-debuginfod-find.sh
+++ b/tests/run-debuginfod-find.sh
@@ -497,9 +497,17 @@ testrun ${abs_top_builddir}/debuginfod/debuginfod-find debuginfo $BUILDID
 # test parallel queries in client
 export DEBUGINFOD_CACHE_PATH=${PWD}/.client_cache3
 mkdir -p $DEBUGINFOD_CACHE_PATH
-export DEBUGINFOD_URLS="BAD http://127.0.0.1:$PORT1 127.0.0.1:$PORT1 http://127.0.0.1:$PORT2 DNE"
 
-testrun ${abs_builddir}/debuginfod_build_id_find -e F/prog2 1
+# test URLs in file
+urlfile=${PWD}/debuginfod_urls
+tempfiles $urlfile
+echo "BAD http://127.0.0.1:$PORT1 127.0.0.1:$PORT1 http://127.0.0.1:$PORT2 DNE" > $urlfile
+
+# NB: instead of this, use a nested env/stuff goo, avoid affecting valgrind itself
+# hiding under testrun() from being affected by these settings.
+#unset DEBUGINFOD_URLS
+#export DEBUGINFOD_URLS_FILE=$urlfile
+testrun env -u DEBUGINFOD_URLS env DEBUGINFOD_URLS_FILE=$urlfile ${abs_builddir}/debuginfod_build_id_find -e F/prog2 1
 
 ########################################################################
 
@@ -615,7 +623,7 @@ local_dir=${PWD}/mocktree/buildid/aaaaaaaaaabbbbbbbbbbccccccccccdddddddddd/sourc
 mkdir -p ${local_dir}
 echo "int main() { return 0; }" > ${local_dir}/main.c
 
-# first test that is doesn't work, when no DEBUGINFOD_URLS is set
+# first test that is doesn't work, when DEBUGINFOD_URLS is empty
 DEBUGINFOD_URLS=""
 testrun ${abs_top_builddir}/debuginfod/debuginfod-find source aaaaaaaaaabbbbbbbbbbccccccccccdddddddddd /my/path/main.c && false || true
 


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

* Re: PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
  2021-04-29 16:13 PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file Frank Ch. Eigler
@ 2021-05-03 12:59 ` Mark Wielaard
  2021-05-03 13:05   ` Frank Ch. Eigler
  0 siblings, 1 reply; 4+ messages in thread
From: Mark Wielaard @ 2021-05-03 12:59 UTC (permalink / raw)
  To: Frank Ch. Eigler, elfutils-devel

Hi Frank,

On Thu, 2021-04-29 at 12:13 -0400, Frank Ch. Eigler via Elfutils-devel
wrote:
> This change was suggested by fedora fesco folks, to make it easier
> for for auxiliary system daemons to use debuginfod by default.
> 
> commit 4db2eba32aaed7d567f5ebea6b2eb7a6dc4b4b36
> Author: Frank Ch. Eigler <fche@redhat.com>
> Date:   Thu Apr 29 11:49:14 2021 -0400
> 
>     PR27783 debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
>     
>     Introduce use of a systemwide config file /etc/debuginfod_urls for a
>     fallback default for an unset $DEBUGINFOD_URLS.  $DEBUGINFOD_URLS_FILE
>     overrides the default location of that file, which is probably mainly
>     useful for testing.  Deprecate the similar /etc/profile.d/debuginfod*
>     mechanism that affected only login shells.
>     
>     OTOH, setting ANY of the following to be an empty string will disable
>     debuginfod-client capability:
>     - env var $DEBUGINFOD_URLS
>     - env var $DEBUGINFOD_URLS_FILE
>     - the file named by $DEBUGINFOD_URLS_FILE

So this replaces the profile environment settings with a system-wide
config file. Which isn't really the same thing. Like you said it would
also enable debuginfod in settings that don't have the DEBUGINFOD_URLS
environment variable set, like system daemons. But I think that is the
nice things about using the environment variable to indicate
debuginfod-client should be used in a specific environment. If a daemon
does want to use debuginfod-client it must set the environment variable
explicitly.  systemd provides a simple way to set environment
variables, either through Environment or EnvironmentFile:
http://0pointer.de/public/systemd-man/systemd.exec.html#Environment=

Personally I think it would be better to make enablement of debuginfod-
client specific for different environment (using it by default in a
system daemon is different from running it standard in a login shell).

Also some distros already seem to rely on the profile files, so
removing them now seems like a bad idea.

Cheers,

Mark

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

* Re: PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
  2021-05-03 12:59 ` Mark Wielaard
@ 2021-05-03 13:05   ` Frank Ch. Eigler
  2021-05-05 14:41     ` Mark Wielaard
  0 siblings, 1 reply; 4+ messages in thread
From: Frank Ch. Eigler @ 2021-05-03 13:05 UTC (permalink / raw)
  To: Mark Wielaard; +Cc: elfutils-devel

Hi -

> [...] But I think that is the nice things about using the
> environment variable to indicate debuginfod-client should be used in
> a specific environment. [...]

This is only a way of making the default more of an opt-out than an
opt-in, and put it into a -single- systemwide spot (instead of two
profile.* files plus all the opt-in systemd unit files).  A daemon
-disinterested- in participating could set the same env var to be an
empty string.

> Also some distros already seem to rely on the profile files, so
> removing them now seems like a bad idea.

Well, nothing stops them from continuing to ship the same files, they
don't need to come from elfutils upstream.

Anyway all that said, I'm neutral on this change.  Any other opinions?

- FChE


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

* Re: PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file
  2021-05-03 13:05   ` Frank Ch. Eigler
@ 2021-05-05 14:41     ` Mark Wielaard
  0 siblings, 0 replies; 4+ messages in thread
From: Mark Wielaard @ 2021-05-05 14:41 UTC (permalink / raw)
  To: Frank Ch. Eigler; +Cc: elfutils-devel

Hi Frank,

On Mon, May 03, 2021 at 09:05:42AM -0400, Frank Ch. Eigler via Elfutils-devel wrote:
> > [...] But I think that is the nice things about using the
> > environment variable to indicate debuginfod-client should be used in
> > a specific environment. [...]
> 
> This is only a way of making the default more of an opt-out than an
> opt-in, and put it into a -single- systemwide spot (instead of two
> profile.* files plus all the opt-in systemd unit files).  A daemon
> -disinterested- in participating could set the same env var to be an
> empty string.

But I think an interactive user environment is different from a
standalone running daemon environment. So I think it makes sense they
might use diffent opt-in/out strategies.

> > Also some distros already seem to rely on the profile files, so
> > removing them now seems like a bad idea.
> 
> Well, nothing stops them from continuing to ship the same files, they
> don't need to come from elfutils upstream.
> 
> Anyway all that said, I'm neutral on this change.  Any other opinions?

It is really a distro decission I guess. How do different distros
handle this?

Cheers,

Mark

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

end of thread, other threads:[~2021-05-05 14:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-29 16:13 PATCH: PR27783: debuginfod: fetch default DEBUGINFOD_URLS from systemwide file Frank Ch. Eigler
2021-05-03 12:59 ` Mark Wielaard
2021-05-03 13:05   ` Frank Ch. Eigler
2021-05-05 14:41     ` Mark Wielaard

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).