public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] colon separated variables in /etc/env.d/
@ 2006-09-11  1:44 Zac Medico
  2006-09-11  3:36 ` Drake Wyrm
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Zac Medico @ 2006-09-11  1:44 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi everyone,

Portage currently has two hard-coded lists of variables that control
the behavior of env-update.  I'd like to make these variables
configurable so that package maintainers have direct control over
them.  The variables break down into two basic types: colon
separated and space separated.

What is the best way to propagate information about these two
variable types?  For example, we can have a list of variable names
stored in a new variable called "COLON_SEPARATED" that will reside
in either the profiles or /etc/env.d/ itself.  Variable names not
listed in COLON_SEPARATED can be assumed to be space separated.
Does anyone have any ideas to share about how this information
should be propagated?

Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFBL92/ejvha5XGaMRAiHfAKDyJF1z4cHw6ErlVpgsBH+wrxJK7QCgneJN
nADDSpdtyyi0FjhvIK0eXk8=
=AKoP
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
@ 2006-09-11  3:36 ` Drake Wyrm
  2006-09-11  7:17 ` Simon Stelling
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Drake Wyrm @ 2006-09-11  3:36 UTC (permalink / raw
  To: gentoo-dev

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

Zac Medico <zmedico@gentoo.org> wrote:
> Portage currently has two hard-coded lists of variables that control
> the behavior of env-update.  I'd like to make these variables
> configurable so that package maintainers have direct control over
> them.  The variables break down into two basic types: colon
> separated and space separated.
> 
> What is the best way to propagate information about these two
> variable types?  For example, we can have a list of variable names
> stored in a new variable called "COLON_SEPARATED" that will reside
> in either the profiles or /etc/env.d/ itself.  Variable names not
> listed in COLON_SEPARATED can be assumed to be space separated.
> Does anyone have any ideas to share about how this information
> should be propagated?

Don't forget that the two lists actually break everything into three
categories: the "colon separated" lists, the "space separated" lists,
and the ones that aren't special (i.e. the ones that just replace the
previous value). So, you would still need two lists.

-- 
This message has been brought to you by the letter three.

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

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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
  2006-09-11  3:36 ` Drake Wyrm
@ 2006-09-11  7:17 ` Simon Stelling
  2006-09-11 10:56 ` Danny van Dyk
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 13+ messages in thread
From: Simon Stelling @ 2006-09-11  7:17 UTC (permalink / raw
  To: gentoo-dev

Zac Medico wrote:
> What is the best way to propagate information about these two
> variable types?  For example, we can have a list of variable names
> stored in a new variable called "COLON_SEPARATED" that will reside
> in either the profiles or /etc/env.d/ itself.  Variable names not
> listed in COLON_SEPARATED can be assumed to be space separated.
> Does anyone have any ideas to share about how this information
> should be propagated?

Considering that some pretty critical variables (like PATH) are amongst
these I would prefer them to be in /etc/env.d. I wouldn't like it when
my box is totally screwed just because PORTDIR doesn't point at my
portage tree for the moment.

-- 
Kind Regards,

Simon Stelling
Gentoo/AMD64 developer
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
  2006-09-11  3:36 ` Drake Wyrm
  2006-09-11  7:17 ` Simon Stelling
@ 2006-09-11 10:56 ` Danny van Dyk
  2006-09-11 15:48   ` Zac Medico
  2006-09-11 16:51 ` Ciaran McCreesh
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: Danny van Dyk @ 2006-09-11 10:56 UTC (permalink / raw
  To: gentoo-dev

Am Montag, 11. September 2006 03:44 schrieb Zac Medico:
> Hi everyone,
>
> Portage currently has two hard-coded lists of variables that control
> the behavior of env-update.
The same applies to eselect env.

> I'd like to make these variables 
> configurable so that package maintainers have direct control over
> them.  The variables break down into two basic types: colon
> separated and space separated.
Wrong, there is another type of var, namely those which are not 
cummultative(sp?).

> What is the best way to propagate information about these two
> variable types?  For example, we can have a list of variable names
> stored in a new variable called "COLON_SEPARATED" that will reside
> in either the profiles or /etc/env.d/ itself.  Variable names not
> listed in COLON_SEPARATED can be assumed to be space separated.
> Does anyone have any ideas to share about how this information
> should be propagated?
a) You'd need two variables to store that info, as we have 3 classes
   of envvars.
b) This is in no way related to the package tree. Those vars don't
   magically change their class from colon separated to non
   cummultative. I'd like to keep it hardcoded, as loading of such
   variables can go wrong and you'd end up without a working env tool.

Danny
-- 
Danny van Dyk <kugelfang@gentoo.org>
Gentoo/AMD64 Project, Gentoo Scientific Project
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11 10:56 ` Danny van Dyk
@ 2006-09-11 15:48   ` Zac Medico
  2006-09-11 16:30     ` Donnie Berkholz
  0 siblings, 1 reply; 13+ messages in thread
From: Zac Medico @ 2006-09-11 15:48 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Danny van Dyk wrote:
> Am Montag, 11. September 2006 03:44 schrieb Zac Medico:
>> Hi everyone,
>>
>> Portage currently has two hard-coded lists of variables that control
>> the behavior of env-update.
> The same applies to eselect env.
> 
>> I'd like to make these variables 
>> configurable so that package maintainers have direct control over
>> them.  The variables break down into two basic types: colon
>> separated and space separated.
> Wrong, there is another type of var, namely those which are not 
> cummultative(sp?).

Okay, then how about if COLON_SEPARATED and SPACE_SEPARATED are
represent cumulative variables, while all other variables are
considered non-cumulative?

>> What is the best way to propagate information about these two
>> variable types?  For example, we can have a list of variable names
>> stored in a new variable called "COLON_SEPARATED" that will reside
>> in either the profiles or /etc/env.d/ itself.  Variable names not
>> listed in COLON_SEPARATED can be assumed to be space separated.
>> Does anyone have any ideas to share about how this information
>> should be propagated?
> a) You'd need two variables to store that info, as we have 3 classes
>    of envvars.
> b) This is in no way related to the package tree. Those vars don't
>    magically change their class from colon separated to non
>    cummultative. I'd like to keep it hardcoded, as loading of such
>    variables can go wrong and you'd end up without a working env tool.

We can store them in /etc/env.d/ itself.  The env-update tool could
be hare coded to consider COLON_SEPARATED and SPACE_SEPARATED as
being implicitly within the SPACE_SEPARATED class.  The tool would
make one pass to accumulate those two variables, and then another
pass to process the rest of the variables.

Zac

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFBYVD/ejvha5XGaMRAojeAKDxFNYaAk668XhmXVjELQVl5PppsACfX0/n
Wmlxhwj+taaQ0H/aXoIswXI=
=mLCw
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11 15:48   ` Zac Medico
@ 2006-09-11 16:30     ` Donnie Berkholz
  2006-09-11 17:42       ` Zac Medico
  0 siblings, 1 reply; 13+ messages in thread
From: Donnie Berkholz @ 2006-09-11 16:30 UTC (permalink / raw
  To: gentoo-dev

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

Zac Medico wrote:
> We can store them in /etc/env.d/ itself.  The env-update tool could
> be hare coded to consider COLON_SEPARATED and SPACE_SEPARATED as
> being implicitly within the SPACE_SEPARATED class.  The tool would
> make one pass to accumulate those two variables, and then another
> pass to process the rest of the variables.

How badly will this break someone's system when they accidentally rm -rf
/etc/env.d and try to reinstall all the apps that put something there?

Thanks,
Donnie


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

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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
                   ` (2 preceding siblings ...)
  2006-09-11 10:56 ` Danny van Dyk
@ 2006-09-11 16:51 ` Ciaran McCreesh
  2006-09-11 17:57   ` Zac Medico
  2006-09-11 20:02 ` Paul de Vrieze
  2006-09-14  2:45 ` Mike Frysinger
  5 siblings, 1 reply; 13+ messages in thread
From: Ciaran McCreesh @ 2006-09-11 16:51 UTC (permalink / raw
  To: gentoo-dev

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

On Sun, 10 Sep 2006 18:44:23 -0700 Zac Medico <zmedico@gentoo.org>
wrote:
| Portage currently has two hard-coded lists of variables that control
| the behavior of env-update.

I realise GLEP 24 is considered not going very far, but in the
interests of what *has* been done on it... Is it worth continuing
development on env-update?

-- 
Ciaran McCreesh
Mail            : ciaranm at ciaranm.org


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

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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11 16:30     ` Donnie Berkholz
@ 2006-09-11 17:42       ` Zac Medico
  0 siblings, 0 replies; 13+ messages in thread
From: Zac Medico @ 2006-09-11 17:42 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Donnie Berkholz wrote:
> Zac Medico wrote:
>> We can store them in /etc/env.d/ itself.  The env-update tool could
>> be hare coded to consider COLON_SEPARATED and SPACE_SEPARATED as
>> being implicitly within the SPACE_SEPARATED class.  The tool would
>> make one pass to accumulate those two variables, and then another
>> pass to process the rest of the variables.
> 
> How badly will this break someone's system when they accidentally rm -rf
> /etc/env.d and try to reinstall all the apps that put something there?

It shouldn't behave any differently than it already does.  The old
values will have to remain hard-coded, at least for a while.  Moving
forward, packages that install files in /etc/env.d/ should include
COLON_SEPARATED and SPACE_SEPARATED definitions as necessary for the
other variables that they define.

Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFBaAE/ejvha5XGaMRAnt3AJ4p/EvxIMAhJnuFqeyBljRc6BcJRACfbahC
zg0M3OBw6orQVoOrSkd7uJA=
=oZdG
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11 16:51 ` Ciaran McCreesh
@ 2006-09-11 17:57   ` Zac Medico
  0 siblings, 0 replies; 13+ messages in thread
From: Zac Medico @ 2006-09-11 17:57 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ciaran McCreesh wrote:
> On Sun, 10 Sep 2006 18:44:23 -0700 Zac Medico <zmedico@gentoo.org>
> wrote:
> | Portage currently has two hard-coded lists of variables that control
> | the behavior of env-update.
> 
> I realise GLEP 24 is considered not going very far, but in the
> interests of what *has* been done on it... Is it worth continuing
> development on env-update?

Regardless of whether or not we keep the actual env-update tool
around, I think that making these variables configurable would be a
good idea.  It removes any lag between the time that a package
maintainer needs to add a new special variable and the time that it
is supported.

Zac

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFBaOP/ejvha5XGaMRAqR9AKC0F+Ra3Qxh8pAfdYP8h0BFv2IvtgCdHbbn
I6Z1YX6yXX8SdfIreN8rbJM=
=DPbS
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
                   ` (3 preceding siblings ...)
  2006-09-11 16:51 ` Ciaran McCreesh
@ 2006-09-11 20:02 ` Paul de Vrieze
  2006-09-11 21:41   ` Zac Medico
  2006-09-14  2:45 ` Mike Frysinger
  5 siblings, 1 reply; 13+ messages in thread
From: Paul de Vrieze @ 2006-09-11 20:02 UTC (permalink / raw
  To: gentoo-dev

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

On Monday 11 September 2006 03:44, Zac Medico wrote:
> Hi everyone,
>
> Portage currently has two hard-coded lists of variables that control
> the behavior of env-update.  I'd like to make these variables
> configurable so that package maintainers have direct control over
> them.  The variables break down into two basic types: colon
> separated and space separated.
>
> What is the best way to propagate information about these two
> variable types?  For example, we can have a list of variable names
> stored in a new variable called "COLON_SEPARATED" that will reside
> in either the profiles or /etc/env.d/ itself.  Variable names not
> listed in COLON_SEPARATED can be assumed to be space separated.
> Does anyone have any ideas to share about how this information
> should be propagated?

There should also be a third list (or the absense of inclusion in the above). 
That is those variables that can only have one value and are overridden 
instead of appended.

Paul

-- 
Paul de Vrieze
Gentoo Developer
Mail: pauldv@gentoo.org
Homepage: http://www.devrieze.net

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

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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11 20:02 ` Paul de Vrieze
@ 2006-09-11 21:41   ` Zac Medico
  0 siblings, 0 replies; 13+ messages in thread
From: Zac Medico @ 2006-09-11 21:41 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Paul de Vrieze wrote:
> On Monday 11 September 2006 03:44, Zac Medico wrote:
>> What is the best way to propagate information about these two
>> variable types?  For example, we can have a list of variable names
>> stored in a new variable called "COLON_SEPARATED" that will reside
>> in either the profiles or /etc/env.d/ itself.  Variable names not
>> listed in COLON_SEPARATED can be assumed to be space separated.
>> Does anyone have any ideas to share about how this information
>> should be propagated?
> 
> There should also be a third list (or the absense of inclusion in the above). 
> That is those variables that can only have one value and are overridden 
> instead of appended.

I think it will be sufficient to have COLON_SEPARATED and
SPACE_SEPARATED lists, with all other variables assumed to be
overridden instead of appended.

To sumarize what I've said in my other replies, COLON_SEPARATED and
SPACE_SEPARATED will be stored in /etc/env.d/ itself.  The
env-update tool (or whatever tool will process /etc/env.d/) will be
hard coded to consider COLON_SEPARATED and SPACE_SEPARATED as being
implicitly within the SPACE_SEPARATED class.  The tool will make one
pass to accumulate those two variables, and then another pass to
process the rest of the variables.  The COLON_SEPARATED and
SPACE_SEPARATED variables will automatically be initialized with the
old hard coded values.  Moving forward, packages that install files
in /etc/env.d/ should include COLON_SEPARATED and SPACE_SEPARATED
definitions as necessary for the other variables that they define.

Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFBdf1/ejvha5XGaMRAtzkAKDupzkoiuD5LxyklTr5odvBMoiHxwCfYKYx
h3jGTEn6YQhqau17fFhNkKQ=
=OUrp
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
                   ` (4 preceding siblings ...)
  2006-09-11 20:02 ` Paul de Vrieze
@ 2006-09-14  2:45 ` Mike Frysinger
  2006-09-14  3:19   ` Zac Medico
  5 siblings, 1 reply; 13+ messages in thread
From: Mike Frysinger @ 2006-09-14  2:45 UTC (permalink / raw
  To: gentoo-dev

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

On Sunday 10 September 2006 21:44, Zac Medico wrote:
> For example, we can have a list of variable names
> stored in a new variable called "COLON_SEPARATED" that will reside
> in either the profiles or /etc/env.d/ itself.

/etc/env.d makes most sense ... we just have to worry about how to handle the 
chicken & egg problem ...

so if you have FOO="..." in '10file' but COLON_SEPARATED="foo" doesn't appear 
until '20file', what then ?
-mike

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

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

* Re: [gentoo-dev] colon separated variables in /etc/env.d/
  2006-09-14  2:45 ` Mike Frysinger
@ 2006-09-14  3:19   ` Zac Medico
  0 siblings, 0 replies; 13+ messages in thread
From: Zac Medico @ 2006-09-14  3:19 UTC (permalink / raw
  To: gentoo-dev

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Mike Frysinger wrote:
> On Sunday 10 September 2006 21:44, Zac Medico wrote:
>> For example, we can have a list of variable names
>> stored in a new variable called "COLON_SEPARATED" that will reside
>> in either the profiles or /etc/env.d/ itself.
> 
> /etc/env.d makes most sense ... we just have to worry about how to handle the 
> chicken & egg problem ...
> 
> so if you have FOO="..." in '10file' but COLON_SEPARATED="foo" doesn't appear 
> until '20file', what then ?
> -mike

It's alright, because the tool will make one pass over all the files
in order to accumulate COLON_SEPARATED and SPACE_SEPARATED.  After
it has those values, it will make another pass to process the other
variables (FOO, etc...).

Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFCMo8/ejvha5XGaMRAuvkAJ0YGD1kozu4hFXxdTbauI1koRM8TQCfdWNF
nhueyuoinBXgVvw60FmOrso=
=ZC/4
-----END PGP SIGNATURE-----
-- 
gentoo-dev@gentoo.org mailing list



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

end of thread, other threads:[~2006-09-14  3:23 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-09-11  1:44 [gentoo-dev] colon separated variables in /etc/env.d/ Zac Medico
2006-09-11  3:36 ` Drake Wyrm
2006-09-11  7:17 ` Simon Stelling
2006-09-11 10:56 ` Danny van Dyk
2006-09-11 15:48   ` Zac Medico
2006-09-11 16:30     ` Donnie Berkholz
2006-09-11 17:42       ` Zac Medico
2006-09-11 16:51 ` Ciaran McCreesh
2006-09-11 17:57   ` Zac Medico
2006-09-11 20:02 ` Paul de Vrieze
2006-09-11 21:41   ` Zac Medico
2006-09-14  2:45 ` Mike Frysinger
2006-09-14  3:19   ` Zac Medico

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox