Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Saturday, April 2, 2016 8:01:39 PM CEST, William Hubbs wrote: On Sat, Apr 02, 2016 at 12:35:58PM -0500, William Hubbs wrote: On Fri, Apr 01, 2016 at 09:36:56PM +0200, Alexis Ballier wrote: On Friday, April 1, 2016 8:33:02 PM CEST, Mike Frysinger wrote: ... No, it wouldn't. We made a decision in 2013 (I'll have to find it) that separate /usr should only be supported via initramfs; there is also a news item warning that if you are not using initramfs and you have separate /usr your system will be unbootable in the future. Here are the latest council decision on the matter [1] and news item [2]. At this point, if anyone who has split /usr isn't using initramfs, they are operating on borrowed time. Good then, thanks. I didn't remember this one and failed to see it when looking at council decisions. I assume there's nothing preventing disabling gen_usr_ldscript by default then. Apologies to Mike for being annoying on this one :) I also assumed making eudev default was a step in having sep-usr work by default as the initial issue was brought up by udev, but that's flawed reversed logic. I would agree, since it has been so long, that we should do another news item, but once the news item is done and we give a firm date, I think we should just kill off gen_usr_ldscript. Killing it is too violent IMHO: It doesn't provide much gain and makes it very annoying to get sep-usr working afterwards. I think current proposal to make it optional is the best option. The /usr merge is a separate issue, which I agree with as well, but that was never brought to council, and it is controversial in the Gentoo camp because some folks claim fhs doesn't allow it. Getting a bit OT, but can you explain in what ways it violates fhs ? What worries me more about /usr merge is that I've never seen a plan for it. I think it'd be necessary to have portage gain some intra-package collision check (e.g. a package installing /bin/foo and /usr/bin/foo should be reported), which would then allow building /usr-merged stages, but the main issue for me is how to migrate installed systems properly. Alexis.
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Sat, Apr 02, 2016 at 12:35:58PM -0500, William Hubbs wrote: > On Fri, Apr 01, 2016 at 09:36:56PM +0200, Alexis Ballier wrote: > > On Friday, April 1, 2016 8:33:02 PM CEST, Mike Frysinger wrote: > > > On 01 Apr 2016 20:00, Alexis Ballier wrote: > > >> On Friday, April 1, 2016 3:58:18 AM CEST, Mike Frysinger wrote: > > ... > > >>> "being supported" != "enabled by default". so no, i still don't see any > > >>> requirement in anything you've cited that this be turned on > > >>> by default. ... > > >> > > >> you're right, but you know, before you claimed the contrary of what was > > >> voted and then decided to argue whether a 4 years old council decision > > >> applies or not here, my point was, and still is, that such council > > >> decisions make me think you're confusing what *you* want and > > >> what *we* (as > > >> a project) want for this case > > > > > > i see no significant number of people clamoring for this as the default. > > > the bug that started this has everyone on board for changing the default. > > > > yes; I also tend to think fedora's usr move is what makes most sense > > nowadays, but that'd go against council > > No, it wouldn't. We made a decision in 2013 (I'll have to find it) that > separate /usr should only be supported via initramfs; there is also a > news item warning that if you are not using initramfs and you have > separate /usr your system will be unbootable in the future. Here are the latest council decision on the matter [1] and news item [2]. At this point, if anyone who has split /usr isn't using initramfs, they are operating on borrowed time. I would agree, since it has been so long, that we should do another news item, but once the news item is done and we give a firm date, I think we should just kill off gen_usr_ldscript. The /usr merge is a separate issue, which I agree with as well, but that was never brought to council, and it is controversial in the Gentoo camp because some folks claim fhs doesn't allow it. William [1] https://projects.gentoo.org/council/meeting-logs/20130924-summary.txt [2] https://gitweb.gentoo.org/data/gentoo-news.git/plain/2013-09-27-initramfs-required/2013-09-27-initramfs-required.en.txt signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Fri, Apr 01, 2016 at 09:36:56PM +0200, Alexis Ballier wrote: > On Friday, April 1, 2016 8:33:02 PM CEST, Mike Frysinger wrote: > > On 01 Apr 2016 20:00, Alexis Ballier wrote: > >> On Friday, April 1, 2016 3:58:18 AM CEST, Mike Frysinger wrote: > ... > >>> "being supported" != "enabled by default". so no, i still don't see any > >>> requirement in anything you've cited that this be turned on > >>> by default. ... > >> > >> you're right, but you know, before you claimed the contrary of what was > >> voted and then decided to argue whether a 4 years old council decision > >> applies or not here, my point was, and still is, that such council > >> decisions make me think you're confusing what *you* want and > >> what *we* (as > >> a project) want for this case > > > > i see no significant number of people clamoring for this as the default. > > the bug that started this has everyone on board for changing the default. > > yes; I also tend to think fedora's usr move is what makes most sense > nowadays, but that'd go against council No, it wouldn't. We made a decision in 2013 (I'll have to find it) that separate /usr should only be supported via initramfs; there is also a news item warning that if you are not using initramfs and you have separate /usr your system will be unbootable in the future. > > > it's really no different either from the install process today: a stage3 > > cannot be unpacked & booted directly. a user must configure it before it > > can actually be used. if that means enabling USE=sep-usr, then so be it. > > except it adds yet another step > > > there's no reason to force this legacy behavior on the majority of people > > when a split-/usr is uncommon. > > what's the reason not to force it? saving 10kb from ldscripts out of a 1Gb > typical desktop install ? doesnt seem like a reason for disabling it either > signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Friday, April 1, 2016 8:33:02 PM CEST, Mike Frysinger wrote: On 01 Apr 2016 20:00, Alexis Ballier wrote: On Friday, April 1, 2016 3:58:18 AM CEST, Mike Frysinger wrote: ... "being supported" != "enabled by default". so no, i still don't see any requirement in anything you've cited that this be turned on by default. ... you're right, but you know, before you claimed the contrary of what was voted and then decided to argue whether a 4 years old council decision applies or not here, my point was, and still is, that such council decisions make me think you're confusing what *you* want and what *we* (as a project) want for this case i see no significant number of people clamoring for this as the default. the bug that started this has everyone on board for changing the default. yes; I also tend to think fedora's usr move is what makes most sense nowadays, but that'd go against council it's really no different either from the install process today: a stage3 cannot be unpacked & booted directly. a user must configure it before it can actually be used. if that means enabling USE=sep-usr, then so be it. except it adds yet another step there's no reason to force this legacy behavior on the majority of people when a split-/usr is uncommon. what's the reason not to force it? saving 10kb from ldscripts out of a 1Gb typical desktop install ? doesnt seem like a reason for disabling it either
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 01 Apr 2016 20:00, Alexis Ballier wrote: > On Friday, April 1, 2016 3:58:18 AM CEST, Mike Frysinger wrote: > >>> ... > >> lemme look it up for you then: > >> https://wiki.gentoo.org/wiki/Council_decisions > >> > >> systems with separate /usr should be supported. However, users > >> shouldn't be > >> constrained from using software which doesn't support that. -- 04/2012 > >> meeting ... > > > > "being supported" != "enabled by default". so no, i still don't see any > > requirement in anything you've cited that this be turned on by default. > > you're right, but you know, before you claimed the contrary of what was > voted and then decided to argue whether a 4 years old council decision > applies or not here, my point was, and still is, that such council > decisions make me think you're confusing what *you* want and what *we* (as > a project) want for this case i see no significant number of people clamoring for this as the default. the bug that started this has everyone on board for changing the default. it's really no different either from the install process today: a stage3 cannot be unpacked & booted directly. a user must configure it before it can actually be used. if that means enabling USE=sep-usr, then so be it. there's no reason to force this legacy behavior on the majority of people when a split-/usr is uncommon. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Friday, April 1, 2016 3:58:18 AM CEST, Mike Frysinger wrote: ... lemme look it up for you then: https://wiki.gentoo.org/wiki/Council_decisions systems with separate /usr should be supported. However, users shouldn't be constrained from using software which doesn't support that. -- 04/2012 meeting ... "being supported" != "enabled by default". so no, i still don't see any requirement in anything you've cited that this be turned on by default. you're right, but you know, before you claimed the contrary of what was voted and then decided to argue whether a 4 years old council decision applies or not here, my point was, and still is, that such council decisions make me think you're confusing what *you* want and what *we* (as a project) want for this case
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 21:09, Alexis Ballier wrote: > On Thursday, March 31, 2016 8:19:52 PM CEST, Mike Frysinger wrote: > > On 31 Mar 2016 19:00, Alexis Ballier wrote: > >> On Thursday, March 31, 2016 6:07:28 PM CEST, Mike Frysinger wrote: > >>> On 31 Mar 2016 16:05, Alexis Ballier wrote: ... > >> > >> i dont think anybody expects you to post tree-wide conversion patches to > >> -dev ml :) > >> > >> but i also dont think it is a good idea to leave the toolchain-funcs > >> version around, and if you want to drop it, you'll have to > >> fill bugs to let > >> ppl know, which is probably more work than adding 8 chars to an inherit > >> line that can be automated > > > > sure -- backwards compat won't be dropped until we're confident everyone > > has migrated over > > ... which introduces a mess to track what has been converted and what not > while it can be done once and for good not really. a simple grep in the tree for the single func being dropped is fairly trivial. > >>> ... > >> not sure if this was phrased as such, but I seem to recall a council > >> decision stating that separate /usr should be made easy to users unless > >> this causes serious issues; thus, no, I don't think that is > >> the behavior we > >> want :) ... > > > > pretty sure the decision was that it's not required to be supported. > > lemme look it up for you then: > https://wiki.gentoo.org/wiki/Council_decisions > > systems with separate /usr should be supported. However, users shouldn't be > constrained from using software which doesn't support that. -- 04/2012 > meeting > > The council has voted in favour of a separate /usr being supported > (5 yes, 1 no vote). > > > and > > regardless of that, i don't see the default behavior of being off as being > > contra "easy to use". > > but you're right there, it doesn't make it hard to use, just not working > out of the box, which is already debatable; however, with eudev being the > default I don't think there is anything preventing it atm with a default > setup, but i might certainly stand corrected there "being supported" != "enabled by default". so no, i still don't see any requirement in anything you've cited that this be turned on by default. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 21:13, Alexis Ballier wrote: > On Thursday, March 31, 2016 8:20:45 PM CEST, Mike Frysinger wrote: > > On 31 Mar 2016 19:03, Alexis Ballier wrote: > >> On Thursday, March 31, 2016 6:08:52 PM CEST, Mike Frysinger wrote: > >>> On 31 Mar 2016 10:12, Mike Gilbert wrote: ... > >> > >> unless you symlink /bin to /usr/bin, moving binaries around has wider > >> implications than sep-usr > > > > no valid package will be affected. if you're hardcoding `/bin/foo`, then > > you're doing it wrong already and that's your fault. > > since when '#! /bin/sh' is invalid at the top of a shell script ? or even > execv deprecated ? there are exceptions for a few very well known programs, but a few shebangs does not mean supporting `/bin/cut` or `/bin/kmod` is required. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Thursday, March 31, 2016 8:20:45 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 19:03, Alexis Ballier wrote: On Thursday, March 31, 2016 6:08:52 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 10:12, Mike Gilbert wrote: ... unless you symlink /bin to /usr/bin, moving binaries around has wider implications than sep-usr no valid package will be affected. if you're hardcoding `/bin/foo`, then you're doing it wrong already and that's your fault. since when '#! /bin/sh' is invalid at the top of a shell script ? or even execv deprecated ?
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Thursday, March 31, 2016 8:19:52 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 19:00, Alexis Ballier wrote: On Thursday, March 31, 2016 6:07:28 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 16:05, Alexis Ballier wrote: ... i dont think anybody expects you to post tree-wide conversion patches to -dev ml :) but i also dont think it is a good idea to leave the toolchain-funcs version around, and if you want to drop it, you'll have to fill bugs to let ppl know, which is probably more work than adding 8 chars to an inherit line that can be automated sure -- backwards compat won't be dropped until we're confident everyone has migrated over ... which introduces a mess to track what has been converted and what not while it can be done once and for good ... not sure if this was phrased as such, but I seem to recall a council decision stating that separate /usr should be made easy to users unless this causes serious issues; thus, no, I don't think that is the behavior we want :) ... pretty sure the decision was that it's not required to be supported. lemme look it up for you then: https://wiki.gentoo.org/wiki/Council_decisions systems with separate /usr should be supported. However, users shouldn't be constrained from using software which doesn't support that. -- 04/2012 meeting The council has voted in favour of a separate /usr being supported (5 yes, 1 no vote). and regardless of that, i don't see the default behavior of being off as being contra "easy to use". but you're right there, it doesn't make it hard to use, just not working out of the box, which is already debatable; however, with eudev being the default I don't think there is anything preventing it atm with a default setup, but i might certainly stand corrected there
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 19:03, Alexis Ballier wrote: > On Thursday, March 31, 2016 6:08:52 PM CEST, Mike Frysinger wrote: > > On 31 Mar 2016 10:12, Mike Gilbert wrote: > >> On Wed, Mar 30, 2016 at 7:58 PM, Mike Frysinger > >>wrote: ... > > > > i think we can scope it currently for libs (and any data files they need), > > but i don't see it being a bad thing to leverage it for /bin progs. > > unless you symlink /bin to /usr/bin, moving binaries around has wider > implications than sep-usr no valid package will be affected. if you're hardcoding `/bin/foo`, then you're doing it wrong already and that's your fault. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 19:00, Alexis Ballier wrote: > On Thursday, March 31, 2016 6:07:28 PM CEST, Mike Frysinger wrote: > > On 31 Mar 2016 16:05, Alexis Ballier wrote: > >> On Thursday, March 31, 2016 1:58:19 AM CEST, Mike Frysinger wrote: > >>> All ebuilds that call gen_usr_ldscript today will migrate to this and > >>> will allow people to move away from installing things into /. For the > >>> systems that want to have a split-/usr partition, they can turn on this > >>> USE flag across their system. > >> > >> Your patchset seems to be missing some ebuilds in that regard: expat and > >> sys-freebsd/* come to mind. > > > > i did not do a full migration as i got bored, but i did do enough to show > > it in action. the current method does not require all be converted at the > > same time though, so it can be left up to maintainers of relevant packages > > to do the change over themselves. > > i dont think anybody expects you to post tree-wide conversion patches to > -dev ml :) > > but i also dont think it is a good idea to leave the toolchain-funcs > version around, and if you want to drop it, you'll have to fill bugs to let > ppl know, which is probably more work than adding 8 chars to an inherit > line that can be automated sure -- backwards compat won't be dropped until we're confident everyone has migrated over > >>> This also allows us to mask the flag on many targets where it doesn't > >>> make sense (like most prefix setups) and where we don't want to support > >>> it at all. > >> > >> It should be noted that, unless I missed something, the default settings > >> will *not anymore* allow sep-usr after this patchset (sep-usr > >> useflag will > >> be disabled). This should be advertised more (a news item?) or simply > >> sep-usr added to make.defaults. The latter will also enable busybox's > >> sep-usr support. > > > > the patchset allows for some targets (notably Linux systems) to control > > whether the flag is enabled. it is turned off by default and i think > > that's the behavior we want. i have not forced enabled it for any target > > but maybe the prefix/darwin guys will want to do that. > > not sure if this was phrased as such, but I seem to recall a council > decision stating that separate /usr should be made easy to users unless > this causes serious issues; thus, no, I don't think that is the behavior we > want :) pretty sure the decision was that it's not required to be supported. and regardless of that, i don't see the default behavior of being off as being contra "easy to use". -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Thursday, March 31, 2016 6:08:52 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 10:12, Mike Gilbert wrote: On Wed, Mar 30, 2016 at 7:58 PM, Mike Frysingerwrote: ... i think we can scope it currently for libs (and any data files they need), but i don't see it being a bad thing to leverage it for /bin progs. unless you symlink /bin to /usr/bin, moving binaries around has wider implications than sep-usr
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Thursday, March 31, 2016 6:07:28 PM CEST, Mike Frysinger wrote: On 31 Mar 2016 16:05, Alexis Ballier wrote: On Thursday, March 31, 2016 1:58:19 AM CEST, Mike Frysinger wrote: All ebuilds that call gen_usr_ldscript today will migrate to this and will allow people to move away from installing things into /. For the systems that want to have a split-/usr partition, they can turn on this USE flag across their system. Your patchset seems to be missing some ebuilds in that regard: expat and sys-freebsd/* come to mind. i did not do a full migration as i got bored, but i did do enough to show it in action. the current method does not require all be converted at the same time though, so it can be left up to maintainers of relevant packages to do the change over themselves. i dont think anybody expects you to post tree-wide conversion patches to -dev ml :) but i also dont think it is a good idea to leave the toolchain-funcs version around, and if you want to drop it, you'll have to fill bugs to let ppl know, which is probably more work than adding 8 chars to an inherit line that can be automated This also allows us to mask the flag on many targets where it doesn't make sense (like most prefix setups) and where we don't want to support it at all. It should be noted that, unless I missed something, the default settings will *not anymore* allow sep-usr after this patchset (sep-usr useflag will be disabled). This should be advertised more (a news item?) or simply sep-usr added to make.defaults. The latter will also enable busybox's sep-usr support. the patchset allows for some targets (notably Linux systems) to control whether the flag is enabled. it is turned off by default and i think that's the behavior we want. i have not forced enabled it for any target but maybe the prefix/darwin guys will want to do that. not sure if this was phrased as such, but I seem to recall a council decision stating that separate /usr should be made easy to users unless this causes serious issues; thus, no, I don't think that is the behavior we want :) Alexis.
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 10:12, Mike Gilbert wrote: > On Wed, Mar 30, 2016 at 7:58 PM, Mike Frysingerwrote: > > To make forward progress on bug 417451, introduce a new sep-usr eclass > > that will hold all logic related to having a separate /usr. For now, > > this is just the gen_usr_ldscript function and a new USE=sep-usr flag. > > Seems like a decent idea. > > Before this flag gets added, should we define some bounds? I just > don't want to see this flag get abused by using it to move other files > around randomly, like moving things from /bin to /usr/bin, etc. i think we can scope it currently for libs (and any data files they need), but i don't see it being a bad thing to leverage it for /bin progs. > > All ebuilds that call gen_usr_ldscript today will migrate to this and > > will allow people to move away from installing things into /. For the > > systems that want to have a split-/usr partition, they can turn on this > > USE flag across their system. > > So the sep-usr flag will be disabled by default? That's going to > trigger a change from the current state, and will definitely need to > be announced. correct. i can put together a news item. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On 31 Mar 2016 16:05, Alexis Ballier wrote: > On Thursday, March 31, 2016 1:58:19 AM CEST, Mike Frysinger wrote: > > All ebuilds that call gen_usr_ldscript today will migrate to this and > > will allow people to move away from installing things into /. For the > > systems that want to have a split-/usr partition, they can turn on this > > USE flag across their system. > > Your patchset seems to be missing some ebuilds in that regard: expat and > sys-freebsd/* come to mind. i did not do a full migration as i got bored, but i did do enough to show it in action. the current method does not require all be converted at the same time though, so it can be left up to maintainers of relevant packages to do the change over themselves. > > This also allows us to mask the flag on many targets where it doesn't > > make sense (like most prefix setups) and where we don't want to support > > it at all. > > It should be noted that, unless I missed something, the default settings > will *not anymore* allow sep-usr after this patchset (sep-usr useflag will > be disabled). This should be advertised more (a news item?) or simply > sep-usr added to make.defaults. The latter will also enable busybox's > sep-usr support. the patchset allows for some targets (notably Linux systems) to control whether the flag is enabled. it is turned off by default and i think that's the behavior we want. i have not forced enabled it for any target but maybe the prefix/darwin guys will want to do that. -mike signature.asc Description: Digital signature
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Wed, Mar 30, 2016 at 7:58 PM, Mike Frysingerwrote: > To make forward progress on bug 417451, introduce a new sep-usr eclass > that will hold all logic related to having a separate /usr. For now, > this is just the gen_usr_ldscript function and a new USE=sep-usr flag. Seems like a decent idea. Before this flag gets added, should we define some bounds? I just don't want to see this flag get abused by using it to move other files around randomly, like moving things from /bin to /usr/bin, etc. > All ebuilds that call gen_usr_ldscript today will migrate to this and > will allow people to move away from installing things into /. For the > systems that want to have a split-/usr partition, they can turn on this > USE flag across their system. So the sep-usr flag will be disabled by default? That's going to trigger a change from the current state, and will definitely need to be announced.
Re: [gentoo-dev] [PATCH 00/21] gen_usr_ldscript: migrate away from a sep-/usr by default
On Thursday, March 31, 2016 1:58:19 AM CEST, Mike Frysinger wrote: To make forward progress on bug 417451, introduce a new sep-usr eclass that will hold all logic related to having a separate /usr. For now, this is just the gen_usr_ldscript function and a new USE=sep-usr flag. Good idea, thanks. I'm not 100% convinced it is worth a useflag (instead of e.g. a make.defaults variable that one can override in make.conf), but why not. All ebuilds that call gen_usr_ldscript today will migrate to this and will allow people to move away from installing things into /. For the systems that want to have a split-/usr partition, they can turn on this USE flag across their system. Your patchset seems to be missing some ebuilds in that regard: expat and sys-freebsd/* come to mind. This also allows us to mask the flag on many targets where it doesn't make sense (like most prefix setups) and where we don't want to support it at all. It should be noted that, unless I missed something, the default settings will *not anymore* allow sep-usr after this patchset (sep-usr useflag will be disabled). This should be advertised more (a news item?) or simply sep-usr added to make.defaults. The latter will also enable busybox's sep-usr support. Alexis.