[gentoo-dev] rfc: locations of binaries and separate /usr

2011-12-31 Thread William Hubbs
All,

a significant change is taking place with several upstreams that will affect
us in gentoo, so I wanted to bring it to the list for discussion.

Udev, kmod (which is a replacement for module-init-tools which will be needed
by >=udev-176), systemd, and soon others, are advocating a major change
to the locations where binaries and libraries are stored on linux
systems.

The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
understanding is that they want to move software that is installed in
/bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
everything from /lib to /usr/lib.

I have been working with robbat2 on solutions to the separate /usr issue
(That is why I have specifically cc'd him on this email)
which will allow people to not use an initramfs. If we migrate
everything off of the root fs to /usr, all of those solutions become
moot. On the other hand, if we don't migrate, we run the risk of
eventually having our default configuration not supported by upstream.

I see three options:

1) Start migrating packages along with upstream and have everyone who
has a separate /usr (including me by the way) start using an initramfs
of some kind, either dracut or one that we generate specifically for
gentoo. The reason I suggest the initramfs, is, unfortunately if we
migrate everything, nothing else would work.

2) Combine the sbin and bin directories both  on the root
filesystem and in /usr by moving things from /sbin to /bin and /usr/sbin
to /usr/bin.

3) Try to maintain  things the way they are as long as possible.

Whether or not I like what is happening personally, I think we should
consider the first option, because I think it will get more and more
difficult for us to do anything else over time. And we will eventually
find ourselves not supported by upstreams.

Please discuss; I want to hear what you think.

William



pgpZfYv962yoV.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2011-12-31 Thread Olivier Crête
Hi,

On Sat, 2011-12-31 at 19:59 -0600, William Hubbs wrote:
> I have been working with robbat2 on solutions to the separate /usr issue
> (That is why I have specifically cc'd him on this email)
> which will allow people to not use an initramfs. If we migrate
> everything off of the root fs to /usr, all of those solutions become
> moot. On the other hand, if we don't migrate, we run the risk of
> eventually having our default configuration not supported by upstream.

I think the general consensus among other distros is that initramfs is
the new /. Many core elements of the Linux system will start installing
themselves in /usr, starting with udev, so we won't have a choice
anyway. Also, I doubt it's currently possible to boot a Gentoo system
without /usr mounted anyway.

> 1) Start migrating packages along with upstream and have everyone who
> has a separate /usr (including me by the way) start using an initramfs
> of some kind, either dracut or one that we generate specifically for
> gentoo. The reason I suggest the initramfs, is, unfortunately if we
> migrate everything, nothing else would work.

I also don't see a good reason to not adopt dracut, re-implementing
something that already works and is maintained by a competent upstream
seems wasteful to me. I really don't see why people resist using an
initramfs so much.

The udev/kmod/systemd/dracut effort to standardise the base userspace of
Linux is probably scary for quite a few Gentoo-ers as it means that the
end result of an installed Gentoo system will be less differentiated
than it was before. But it still is a step in the right direction as
most of these standardized pieces are much better than what we currently
have. The OpenRC/baselayout-2 fiasco, not much better than baselayout-1
and unmaintained upstream shows that even a relatively large
distribution like us can't maintain a competitive base system solution,
adopting the udev/kmod/systemd way will allow us to use all the work
that they are doing and instead concentrate on making a better system.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2011-12-31 Thread Patrick Lauer
On 01/01/12 15:12, Olivier Crête wrote:
> Hi,
>
> On Sat, 2011-12-31 at 19:59 -0600, William Hubbs wrote:
>> I have been working with robbat2 on solutions to the separate /usr issue
>> (That is why I have specifically cc'd him on this email)
>> which will allow people to not use an initramfs. If we migrate
>> everything off of the root fs to /usr, all of those solutions become
>> moot. On the other hand, if we don't migrate, we run the risk of
>> eventually having our default configuration not supported by upstream.
> I think the general consensus among other distros is that initramfs is
> the new /. Many core elements of the Linux system will start installing
> themselves in /usr, starting with udev, so we won't have a choice
> anyway. Also, I doubt it's currently possible to boot a Gentoo system
> without /usr mounted anyway.
"initramfs is the new /" ... and no one asked if maybe that doesn't
really make sense?

That people are now actively working on forcing one big system partition
is annoying, but I really don't see the need to add a layer or two of
complexification just because, well, why not.

>
>> 1) Start migrating packages along with upstream and have everyone who
>> has a separate /usr (including me by the way) start using an initramfs
>> of some kind, either dracut or one that we generate specifically for
>> gentoo. The reason I suggest the initramfs, is, unfortunately if we
>> migrate everything, nothing else would work.
> I also don't see a good reason to not adopt dracut,
Make it work and I'll reconsider it, until then genkernel wins by default.
>  re-implementing
> something that already works and is maintained by a competent upstream
> seems wasteful to me. I really don't see why people resist using an
> initramfs so much.
What does it add, apart from time to the boot process? For some setups
(like my notebook with luks+lvm) there's no reasonable way around it,
but on my desktop it's worse than useless.
>
> The udev/kmod/systemd/dracut effort to standardise the base userspace of
> Linux is probably scary for quite a few Gentoo-ers as it means that the
> end result of an installed Gentoo system will be less differentiated
> than it was before. But it still is a step in the right direction as
> most of these standardized pieces are much better than what we currently
> have. The OpenRC/baselayout-2 fiasco, not much better than baselayout-1
> and unmaintained upstream shows that even a relatively large
> distribution like us can't maintain a competitive base system solution,
Eh what?

As part of the OpenRC upstream I find it weird that you call it a fiasco
when it works better than the other "solutions" and had about 10 commits
in the last 48 hours alone.

I don't see an advantage in replacing a known-good solution with some
random stuff that mostly doesn't work yet just because it's the future.


> adopting the udev/kmod/systemd way will allow us to use all the work
> that they are doing and instead concentrate on making a better system.
>
"Better" means no lennartware to me. I want to be able to fully debug
init script failures, which systemd makes very hard to impossible. On
some machines I have changes in the startup that would mean having to
hack up something in C and hope that it doesn't crash init for systemd
(what the blp?)

Please don't try to bring the GnomeOS vision of having MacOS without
paying for it to my computing experience ...



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2011-12-31 Thread prometheanfire
On Sun, 01 Jan 2012 02:12:22 -0500
Olivier Crête  wrote:

> Hi,
> 
> On Sat, 2011-12-31 at 19:59 -0600, William Hubbs wrote:
> > I have been working with robbat2 on solutions to the separate /usr
> > issue (That is why I have specifically cc'd him on this email)
> > which will allow people to not use an initramfs. If we migrate
> > everything off of the root fs to /usr, all of those solutions become
> > moot. On the other hand, if we don't migrate, we run the risk of
> > eventually having our default configuration not supported by
> > upstream.
> 
> I think the general consensus among other distros is that initramfs is
> the new /. Many core elements of the Linux system will start
> installing themselves in /usr, starting with udev, so we won't have a
> choice anyway. Also, I doubt it's currently possible to boot a Gentoo
> system without /usr mounted anyway.
> 
> > 1) Start migrating packages along with upstream and have everyone
> > who has a separate /usr (including me by the way) start using an
> > initramfs of some kind, either dracut or one that we generate
> > specifically for gentoo. The reason I suggest the initramfs, is,
> > unfortunately if we migrate everything, nothing else would work.
> 
> I also don't see a good reason to not adopt dracut, re-implementing
> something that already works and is maintained by a competent upstream
> seems wasteful to me. I really don't see why people resist using an
> initramfs so much.
> 
> The udev/kmod/systemd/dracut effort to standardise the base userspace
> of Linux is probably scary for quite a few Gentoo-ers as it means
> that the end result of an installed Gentoo system will be less
> differentiated than it was before. But it still is a step in the
> right direction as most of these standardized pieces are much better
> than what we currently have. The OpenRC/baselayout-2 fiasco, not much
> better than baselayout-1 and unmaintained upstream shows that even a
> relatively large distribution like us can't maintain a competitive
> base system solution, adopting the udev/kmod/systemd way will allow
> us to use all the work that they are doing and instead concentrate on
> making a better system.
> 


All of my systems currently have a seperate /usr that is mounted at
boot.  Unfortunately I do agree that this is not something that we can
fight.  This was brought up earlier and the only thing we can do
for people like myself (who mount /usr at boot) is to create a simple
initramfs that only has the purpose of mounting /usr at boot.  The main
thing I don't like about initramfs is that we have to regenerate it any
time we update the packages that get included in it.

--
Matthew Thode (prometheanfire)


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Sven Vermeulen
On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
> The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
> understanding is that they want to move software that is installed in
> /bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
> everything from /lib to /usr/lib.

I don't like this one bit. Things used to be simple with the "split" between
/bin and /usr/bin (and its related directories), this isn't going to make it
more simple.

> 1) Start migrating packages along with upstream and have everyone who
> has a separate /usr (including me by the way) start using an initramfs
> of some kind, either dracut or one that we generate specifically for
> gentoo. The reason I suggest the initramfs, is, unfortunately if we
> migrate everything, nothing else would work.

I use a separate /usr with LVM on all my systems. My root partition uses
RAID1. And I never had the need for an initramfs of any kind. Also, there
are some major hurdles to take when it comes to getting an initramfs working
with SELinux. Most initramfs implementations I saw are not SELinux aware, so
all changes they make to the system either result in failures when they try,
or failures when the root-switch occurs.

> 3) Try to maintain  things the way they are as long as possible.

I'm all for this one. 

But if people really want to focus on initramfs, I'd appreciate some
documentation help on it. Not only on how to create one, but also why it is
necessary, how to manage initramfs'es, the concepts underlying, etc.

Wkr,
Sven Vermeulen




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Nirbheek Chauhan
On Sun, Jan 1, 2012 at 2:23 PM, Sven Vermeulen  wrote:
> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
>> The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
>> understanding is that they want to move software that is installed in
>> /bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
>> everything from /lib to /usr/lib.
>
> I don't like this one bit. Things used to be simple with the "split" between
> /bin and /usr/bin (and its related directories), this isn't going to make it
> more simple.

Actually, I've always thought that the split between /usr/bin and /bin
was quite arbitrary. However, I would like to note that merging /bin
and /usr/bin would break some app combinations like bzip2+pbzip2, so
that problem also needs to be solved (via eselect perhaps).

Overall, this change "feels" wrong to me, but there's nothing
intrinsically wrong with what they're suggesting. OTOH, it's probably
just going to cause chaos and further divergence between distros for
little gain.

-- 
~Nirbheek Chauhan

Gentoo GNOME+Mozilla Team



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Dale

Sven Vermeulen wrote:
But if people really want to focus on initramfs, I'd appreciate some 
documentation help on it. Not only on how to create one, but also why 
it is necessary, how to manage initramfs'es, the concepts underlying, 
etc. Wkr, Sven Vermeulen 


This is my issue as well.  I tried to make a init* to deal with this and 
have yet to get one to work, not one single working boot up.  I have 
tried different howtos and not one of them produced anything that 
works.  I have not found a dracut howto that makes any sense either.  
Sorry but genkernel left a bad taste in my mouth ages ago.


As bad as I hate to even use a init*, I hate even worse being told I 
have to have one and not being able to get one to work following the 
docs.  There needs to be some really well tested docs for people to use 
before this kicks in.


Now to go brush my teeth.  :/   This init* thingy tastes really bad.

Dale

:-)  :-)

--
I am only responsible for what I said ... Not for what you understood or how 
you interpreted my words!

Miss the compile output?  Hint:
EMERGE_DEFAULT_OPTS="--quiet-build=n"




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Rich Freeman
On Sun, Jan 1, 2012 at 4:45 AM, Dale  wrote:
> This is my issue as well.  I tried to make a init* to deal with this and
> have yet to get one to work, not one single working boot up.  I have tried
> different howtos and not one of them produced anything that works.  I have
> not found a dracut howto that makes any sense either.  Sorry but genkernel
> left a bad taste in my mouth ages ago.

While I think that the direction we're moving in (/usr on root or use
an initramfs) is inevitable, I do agree that it needs some
improvement.

I've gotten Dracut to work fine in VMs (even with fairly complex
setups), but every time I try it on my server it doesn't set up the
raid for some reason, and drops me to a dash shell.  If I just run
mdadm_auto at that point it takes about 15 seconds to find and setup
my raid, and just typing exit boots the system just fine.  I keep it
as an option in grub so that whenever my raid device numbers get mixed
up (seems to happen every other month for no apparent reason) I can
boot the system, since dracut does use the mdadm.conf and UUIDs to put
everything in the right place and find the right root (something you
can't do without an initramfs).  One of these days I'll figure out how
to hack an mdadm_auto into the script as a last-ditch measure and then
I'll just have to deal with a one-minute delay.

For being the wave of the future it seems like the only documentation
Dracut has is a single page website with a few paragraphs of info.

I think the bottom line is that the future may look inevitable, but it
isn't actually here yet.  I advocate being ready for the future, but
let's try not to force its arrival before everything is mature (though
having it in portage as an option is completely in the spirit of
Gentoo).

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Dale

Rich Freeman wrote:

On Sun, Jan 1, 2012 at 4:45 AM, Dale  wrote:

This is my issue as well.  I tried to make a init* to deal with this and
have yet to get one to work, not one single working boot up.  I have tried
different howtos and not one of them produced anything that works.  I have
not found a dracut howto that makes any sense either.  Sorry but genkernel
left a bad taste in my mouth ages ago.

While I think that the direction we're moving in (/usr on root or use
an initramfs) is inevitable, I do agree that it needs some
improvement.

I've gotten Dracut to work fine in VMs (even with fairly complex
setups), but every time I try it on my server it doesn't set up the
raid for some reason, and drops me to a dash shell.  If I just run
mdadm_auto at that point it takes about 15 seconds to find and setup
my raid, and just typing exit boots the system just fine.  I keep it
as an option in grub so that whenever my raid device numbers get mixed
up (seems to happen every other month for no apparent reason) I can
boot the system, since dracut does use the mdadm.conf and UUIDs to put
everything in the right place and find the right root (something you
can't do without an initramfs).  One of these days I'll figure out how
to hack an mdadm_auto into the script as a last-ditch measure and then
I'll just have to deal with a one-minute delay.

For being the wave of the future it seems like the only documentation
Dracut has is a single page website with a few paragraphs of info.

I think the bottom line is that the future may look inevitable, but it
isn't actually here yet.  I advocate being ready for the future, but
let's try not to force its arrival before everything is mature (though
having it in portage as an option is completely in the spirit of
Gentoo).

Rich





I installed dracut and it did something, although I'm not sure what 
yet.  I googled until I think google should be tired of me to find docs 
to help.  Getting it to run was on one page, then figuring out some 
options was on yet another page, then grub was on yet another.  I don't 
know yet if some of these are outdated or anything so I don't know if it 
is going to work or just blow up something. Please, don't ask me what it 
did.  I said I did it, I didn't say I understand it.  If it is broken or 
breaks in the future, I'm screwed.  (Sort of starting to wonder why I 
left Mandriva now.  I could have swore I wanted to be rid of init* stuff 
and make my on freakin kernels. )


I might also add for those considering dracut being the official way, it 
is keyworded at this point.  I would think someone needs to get this 
stable or whatever needs doing before telling folks to use this.  It may 
work fine but if that is the case, then it needs to be unkeyworded.  
Spell check doesn't like our terms here.


I think the future is actually taking several steps backward.  That 
point has been discussed to death tho.


I hope Sven has his thinking hat on.  Maybe I can help some with the 
docs.  If it works for me, it should work for most.  lol


Dale

:-)  :-)

--
I am only responsible for what I said ... Not for what you understood or how 
you interpreted my words!

Miss the compile output?  Hint:
EMERGE_DEFAULT_OPTS="--quiet-build=n"




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread William Hubbs
On Sun, Jan 01, 2012 at 02:12:22AM -0500, Olivier Crête wrote:
> > 1) Start migrating packages along with upstream and have everyone who
> > has a separate /usr (including me by the way) start using an initramfs
> > of some kind, either dracut or one that we generate specifically for
> > gentoo. The reason I suggest the initramfs, is, unfortunately if we
> > migrate everything, nothing else would work.
> 
> I also don't see a good reason to not adopt dracut, re-implementing
> something that already works and is maintained by a competent upstream
> seems wasteful to me. I really don't see why people resist using an
> initramfs so much.
> 
> The udev/kmod/systemd/dracut effort to standardise the base userspace of
> Linux is probably scary for quite a few Gentoo-ers as it means that the
> end result of an installed Gentoo system will be less differentiated
> than it was before. But it still is a step in the right direction as
> most of these standardized pieces are much better than what we currently
> have. The OpenRC/baselayout-2 fiasco, not much better than baselayout-1
> and unmaintained upstream shows that even a relatively large
> distribution like us can't maintain a competitive base system solution,
> adopting the udev/kmod/systemd way will allow us to use all the work
> that they are doing and instead concentrate on making a better system.

The problem you are missing here is that gentoo isn't just for linux. We
are cross-platform, so we have to have a cross-platform init system as
the default. Unless they port systemd to *bsd, we may have to keep
openrc as the default init system for some time afaik.
 
 Also, your statement about openrc not being maintained upstream is not
 correct. It is correct that Roy doesn't work on it any more, but there
 is a team that does maintain it.

 William



pgp6gXRfCFU9h.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Michał Górny
On Sat, 31 Dec 2011 19:59:47 -0600
William Hubbs  wrote:

> I see three options:
> 
> 1) Start migrating packages along with upstream and have everyone who
> has a separate /usr (including me by the way) start using an initramfs
> of some kind, either dracut or one that we generate specifically for
> gentoo. The reason I suggest the initramfs, is, unfortunately if we
> migrate everything, nothing else would work.
> 
> 2) Combine the sbin and bin directories both  on the root
> filesystem and in /usr by moving things from /sbin to /bin
> and /usr/sbin to /usr/bin.
> 
> 3) Try to maintain  things the way they are as long as possible.

We should *at least* start doing some preparations, like ensuring that
random things don't unnecessarily hardcode /sbin or /bin paths. Most
importantly, if a particular tool runs in a complete environment (which
is true for most of the cases), there is no need to hardcode paths to
tools.

As I see it, 2) seems achievable within a reasonable time now. It
shouldn't require any specific changes from users (except for fixing
their own broken scripts) yet some tree-wide action of fixing hardcoded
paths.

We could create /sbin and /usr/sbin symlinks as well but that shouldn't
be really necessary, especially if we prepare packages well beforehand.
Introducing such symlinks would be hard to perform and getting rid of
them later would be even harder; mostly due to PMS-enforced limitations.

For a long-term view, 1) is the only way to go. Splitting packages
randomly between rootfs and /usr was never really correct, and we
especially shouldn't force users to junk their systems with shattered
packages and cheap glue to keep it all working.

I'd suggest going the other way than I did with kmod. Temporary IUSE
like 'install-to-usr', disabled by default for now. Packages having
that IUSE should have correct USE-dependencies, and users who need not
to use that could just enable 'install-to-usr' globally (we'd probably
want to mask it first).

Of course, that way will require removing hardcoded paths as well, or
supporting switching them on IUSE. For the latter, it may be simpler to
use '[install-to-usr=]' kind of dependencies.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Ciaran McCreesh
On Sun, 01 Jan 2012 02:12:22 -0500
Olivier Crête  wrote:
> The udev/kmod/systemd/dracut effort to standardise the base userspace
> of Linux is probably scary for quite a few Gentoo-ers as it means
> that the end result of an installed Gentoo system will be less
> differentiated than it was before. But it still is a step in the
> right direction as most of these standardized pieces are much better
> than what we currently have. The OpenRC/baselayout-2 fiasco, not much
> better than baselayout-1 and unmaintained upstream shows that even a
> relatively large distribution like us can't maintain a competitive
> base system solution, adopting the udev/kmod/systemd way will allow
> us to use all the work that they are doing and instead concentrate on
> making a better system.

Doesn't all this mess just show that no-one else can maintain a
"competitive" base system solution either?

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Olivier Crête
On Sun, 2012-01-01 at 01:33 -0600, Matthew Thode wrote:
> On Sun, 01 Jan 2012 02:12:22 -0500
> Olivier Crête  wrote:
> All of my systems currently have a seperate /usr that is mounted at
> boot.  Unfortunately I do agree that this is not something that we can
> fight.  This was brought up earlier and the only thing we can do
> for people like myself (who mount /usr at boot) is to create a simple
> initramfs that only has the purpose of mounting /usr at boot.  The main
> thing I don't like about initramfs is that we have to regenerate it any
> time we update the packages that get included in it.

That's why you have dracut to do it for you.


-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Michał Górny
On Sun, 1 Jan 2012 01:33:05 -0600
Matthew Thode (prometheanfire)  wrote:

> All of my systems currently have a seperate /usr that is mounted at
> boot.  Unfortunately I do agree that this is not something that we can
> fight.  This was brought up earlier and the only thing we can do
> for people like myself (who mount /usr at boot) is to create a simple
> initramfs that only has the purpose of mounting /usr at boot.  The
> main thing I don't like about initramfs is that we have to regenerate
> it any time we update the packages that get included in it.

Eh, I think I'll end up writing myself that four lines of shell code
for you which mounts /usr and runs init.

Or maybe I'll leave that task to you. Attaching my /init for
micro-initramfs on klibc. It looks like that:

├── bin
│   ├── ls
│   ├── mount
│   ├── run-init
│   └── sh
├── dev
│   ├── null
│   └── sda2
├── init
├── lib64
│   ├── klibc-MZ_9MGQEe6NFqmrPjRpy5i6WlV8.so
│   └── libc.so -> klibc-MZ_9MGQEe6NFqmrPjRpy5i6WlV8.so
├── newroot
└── proc

$ du -sh
176K.

-- 
Best regards,
Michał Górny


init
Description: Binary data


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Olivier Crête
On Sun, 2012-01-01 at 15:33 +0800, Patrick Lauer wrote:
> On 01/01/12 15:12, Olivier Crête wrote:
> > Hi,
> >
> > On Sat, 2011-12-31 at 19:59 -0600, William Hubbs wrote:
> >> I have been working with robbat2 on solutions to the separate /usr issue
> >> (That is why I have specifically cc'd him on this email)
> >> which will allow people to not use an initramfs. If we migrate
> >> everything off of the root fs to /usr, all of those solutions become
> >> moot. On the other hand, if we don't migrate, we run the risk of
> >> eventually having our default configuration not supported by upstream.
> > I think the general consensus among other distros is that initramfs is
> > the new /. Many core elements of the Linux system will start installing
> > themselves in /usr, starting with udev, so we won't have a choice
> > anyway. Also, I doubt it's currently possible to boot a Gentoo system
> > without /usr mounted anyway.
> "initramfs is the new /" ... and no one asked if maybe that doesn't
> really make sense?
> 
> That people are now actively working on forcing one big system partition
> is annoying, but I really don't see the need to add a layer or two of
> complexification just because, well, why not.

We're absolutely not forcing a single system partition. We're just
saying that the bits required to mount all the partitions you want
should be in an initramfs.

> >> 1) Start migrating packages along with upstream and have everyone who
> >> has a separate /usr (including me by the way) start using an initramfs
> >> of some kind, either dracut or one that we generate specifically for
> >> gentoo. The reason I suggest the initramfs, is, unfortunately if we
> >> migrate everything, nothing else would work.
> > I also don't see a good reason to not adopt dracut,
> Make it work and I'll reconsider it, until then genkernel wins by default.
> >  re-implementing
> > something that already works and is maintained by a competent upstream
> > seems wasteful to me. I really don't see why people resist using an
> > initramfs so much.
> What does it add, apart from time to the boot process? For some setups
> (like my notebook with luks+lvm) there's no reasonable way around it,
> but on my desktop it's worse than useless.

I don't see how it adds time to the boot process. Either you have a
single big partition (and then you don't even need an initramfs), or you
have multiple partitions and then most of the time is mounting them
anyway.

> > The udev/kmod/systemd/dracut effort to standardise the base userspace of
> > Linux is probably scary for quite a few Gentoo-ers as it means that the
> > end result of an installed Gentoo system will be less differentiated
> > than it was before. But it still is a step in the right direction as
> > most of these standardized pieces are much better than what we currently
> > have. The OpenRC/baselayout-2 fiasco, not much better than baselayout-1
> > and unmaintained upstream shows that even a relatively large
> > distribution like us can't maintain a competitive base system solution,
> Eh what?
>
> I don't see an advantage in replacing a known-good solution with some
> random stuff that mostly doesn't work yet just because it's the future.

Random stuff that was well though to work together and works well enough
that all other major distros are adopting it.

> > adopting the udev/kmod/systemd way will allow us to use all the work
> > that they are doing and instead concentrate on making a better system.
> >
> "Better" means no lennartware to me. I want to be able to fully debug
> init script failures, which systemd makes very hard to impossible. On
> some machines I have changes in the startup that would mean having to
> hack up something in C and hope that it doesn't crash init for systemd
> (what the blp?)

You can start services with a shell scripts in systemd, you just have to
aim the .service unit file to you shellscript.. 

> Please don't try to bring the GnomeOS vision of having MacOS without
> paying for it to my computing experience ...

Honestly, so many things just work on MacOS and just need hours of
tweaking for us..

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Olivier Crête
On Sun, 2012-01-01 at 08:53 +, Sven Vermeulen wrote:
> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
> > 1) Start migrating packages along with upstream and have everyone who
> > has a separate /usr (including me by the way) start using an initramfs
> > of some kind, either dracut or one that we generate specifically for
> > gentoo. The reason I suggest the initramfs, is, unfortunately if we
> > migrate everything, nothing else would work.
> 
> I use a separate /usr with LVM on all my systems. My root partition uses
> RAID1. And I never had the need for an initramfs of any kind. Also, there
> are some major hurdles to take when it comes to getting an initramfs working
> with SELinux. Most initramfs implementations I saw are not SELinux aware, so
> all changes they make to the system either result in failures when they try,
> or failures when the root-switch occurs.

dracut fully supports SELinux (it's used in Fedora which has this
SELinux horror on by default).

> > 3) Try to maintain  things the way they are as long as possible.
> 
> I'm all for this one. 
> 
> But if people really want to focus on initramfs, I'd appreciate some
> documentation help on it. Not only on how to create one, but also why it is
> necessary, how to manage initramfs'es, the concepts underlying, etc.

Short version: use dracut.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Ciaran McCreesh
On Sun, 01 Jan 2012 15:21:24 -0500
Olivier Crête  wrote:
> Honestly, so many things just work on MacOS and just need hours of
> tweaking for us..

The problem with "just works" is that when it breaks, it can't be
fixed. Not being able to handle /usr on its own filesystem is a perfect
example of this.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Dale

Olivier Crête wrote:

On Sun, 2012-01-01 at 01:33 -0600, Matthew Thode wrote:

On Sun, 01 Jan 2012 02:12:22 -0500
Olivier Crête  wrote:
All of my systems currently have a seperate /usr that is mounted at
boot.  Unfortunately I do agree that this is not something that we can
fight.  This was brought up earlier and the only thing we can do
for people like myself (who mount /usr at boot) is to create a simple
initramfs that only has the purpose of mounting /usr at boot.  The main
thing I don't like about initramfs is that we have to regenerate it any
time we update the packages that get included in it.

That's why you have dracut to do it for you.




Which is keyworded at this point.  Stable users do what?

Dale

:-)  :-)

--
I am only responsible for what I said ... Not for what you understood or how 
you interpreted my words!

Miss the compile output?  Hint:
EMERGE_DEFAULT_OPTS="--quiet-build=n"




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Olivier Crête
On Sun, 2012-01-01 at 14:51 -0600, Dale wrote:
> Olivier Crête wrote:
> > On Sun, 2012-01-01 at 01:33 -0600, Matthew Thode wrote:
> >> On Sun, 01 Jan 2012 02:12:22 -0500
> >> Olivier Crête  wrote:
> >> All of my systems currently have a seperate /usr that is mounted at
> >> boot.  Unfortunately I do agree that this is not something that we can
> >> fight.  This was brought up earlier and the only thing we can do
> >> for people like myself (who mount /usr at boot) is to create a simple
> >> initramfs that only has the purpose of mounting /usr at boot.  The main
> >> thing I don't like about initramfs is that we have to regenerate it any
> >> time we update the packages that get included in it.
> > That's why you have dracut to do it for you.
> >
> >
> 
> Which is keyworded at this point.  Stable users do what?

This is a discussion about the future... Changing keywords is trivial if
we care.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Olivier Crête
On Sun, 2012-01-01 at 20:23 +, Ciaran McCreesh wrote:
> On Sun, 01 Jan 2012 15:21:24 -0500
> Olivier Crête  wrote:
> > Honestly, so many things just work on MacOS and just need hours of
> > tweaking for us..
> 
> The problem with "just works" is that when it breaks, it can't be
> fixed. Not being able to handle /usr on its own filesystem is a perfect
> example of this.

systemd/dracut/etc handles /usr on its own filesystem just fine. What is
required is that /usr must be mounted before the pivot_root away from
the initramfs.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Robin H. Johnson
On Sun, Jan 01, 2012 at 02:12:22AM -0500, Olivier Crête wrote:
> The OpenRC/baselayout-2 fiasco, not much better than baselayout-1 and
> unmaintained upstream shows that even a relatively large
Why do you say that OpenRC is unmaintained upstream? OpenRC is actively
maintained in Gentoo, with the largest contributors being WilliamH,
vapier, idl0r and myself.

-- 
Robin Hugh Johnson
Gentoo Linux: Developer, Trustee & Infrastructure Lead
E-Mail : robb...@gentoo.org
GnuPG FP   : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-01 Thread Nguyen Thai Ngoc Duy
On Sun, Jan 1, 2012 at 8:59 AM, William Hubbs  wrote:
> Udev, kmod (which is a replacement for module-init-tools which will be needed
> by >=udev-176), systemd, and soon others, are advocating a major change
> to the locations where binaries and libraries are stored on linux
> systems.

Could you please point me to the discussions where udev, kmod and soon
others are advocating /usr/bin and /bin unification?
-- 
Duy



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Eray Aslan
On 2012-01-01 11:50 PM, Olivier Crête wrote:
> systemd/dracut/etc handles /usr on its own filesystem just fine. What is
> required is that /usr must be mounted before the pivot_root away from
> the initramfs.

Nitpick:  I don't think pivot_root is used anymore.  It is basically
unlink, mount, chroot and exec now (i.e. switch_root).

RedHat made some bad design decisions on RPM (.rpmnew files anyone?) and
udev.  Udev was probably salvagable before systemd but noone has the
motivation or the man-power to manage the huge delta that would result
now.  It would probably amount to forking udev.  So people are following
along even if they are unhappy.

Plus Redhat did not support in-place upgrades last time I checked.  So
they don't really care for a lot of problems that are important for us.

Regarding the original question, I belive there are 2 issues here:
1. Requiring initramfs (or dracut or whatever) for separate /usr
2. Migrating /bin to /usr/bin, /sbin to /usr/sbin etc.

For the first point, we should start requiring initramfs of some sort
for separate /usr now.  That train has passed.

For the second point, we should hold on as long as we deem appropriate.
Then reconsider and -most probably- move ahead with the migration.  Main
point is not to break existing installations by making the move too
quickly.  Give sysadmins time to to adjust, resize partitions if
necessary etc.  Do not go for half way solutions (i.e. number 2 in the
original email).

As a side note, thank you and keep up your good work on OpenRC.  I find
it is easier, cleaner and in general superior to systemd especially in
server settings.  And for my laptop, I don't really care which init
system is used anyway.

-- 
Eray Aslan 



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Michał Górny
On Mon, 2 Jan 2012 13:24:00 +0700
Nguyen Thai Ngoc Duy  wrote:

> On Sun, Jan 1, 2012 at 8:59 AM, William Hubbs 
> wrote:
> > Udev, kmod (which is a replacement for module-init-tools which will
> > be needed by >=udev-176), systemd, and soon others, are advocating
> > a major change to the locations where binaries and libraries are
> > stored on linux systems.
> 
> Could you please point me to the discussions where udev, kmod and soon
> others are advocating /usr/bin and /bin unification?

I think he meant 'kmod doesn't provide hacks necessary to installs to
two roots at once'.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Sven Vermeulen
On Sun, Jan 01, 2012 at 03:21:47PM -0500, Olivier Crête wrote:
> > But if people really want to focus on initramfs, I'd appreciate some
> > documentation help on it. Not only on how to create one, but also why it is
> > necessary, how to manage initramfs'es, the concepts underlying, etc.
> 
> Short version: use dracut.

And how does dracut know which files it needs to mount my /usr? 

Wkr,
Sven Vermeulen



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Rich Freeman
On Mon, Jan 2, 2012 at 6:47 AM, Sven Vermeulen  wrote:
> And how does dracut know which files it needs to mount my /usr?

I assume based on the selection of modules that you enabled when
building/running it.

I believe dracut builds static binaries, so it mainly needs updating
when you build a new kernel.

Of course, right now dracut won't mount your /usr in any case, so it
needs to be improved.

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Kent Fredric
On 3 January 2012 01:58, Rich Freeman  wrote:

> On Mon, Jan 2, 2012 at 6:47 AM, Sven Vermeulen  wrote:
> > And how does dracut know which files it needs to mount my /usr?
>
> I assume based on the selection of modules that you enabled when
> building/running it.
>
> I believe dracut builds static binaries, so it mainly needs updating
> when you build a new kernel.
>
>
It also takes a list of filesystem types to add support for mounting , and
copies the mount.* binaries across to the tmpfs root image, along with any
dependencies.

May help to understand if you see the listing of the cpio'd archive:
https://gist.github.com/1550652

Its sort of magical really.

You'll note its only got a smattering of console fonts, particularly
"usr/share/consolefonts/ter-112n.psf", which I'm not even sure how it works
out.

The only place I have that configured is /etc/conf.d/consolefont and it
somehow works it out.

You may also notice a non-standard 'v86d' in sbin/  , for uvesafb support.

Its added by a simple dracut module I whipped up in 10 minutes, and its far
simpler to do with dracut  than it ever was with genkernel.

/usr/share/dracut/modules.d/95v86d/module-setup.sh

#!/bin/bash
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh

check() {
return 0
}

depends() {
return 0
}

install() {
local _d

dracut_install "/sbin/v86d"
}


Been using dracut for 2+ months now and love it.

Sure, I've had to re-implement the bits of genkernel I actually used , and
I still lack an "add it to grub.conf for me" option, but its still overall
a net improvement in my eyes. ( I only ever really used genkernel to
automate compile and initrd creation, all the things that would touch the
.config file I disabled )

Here is basically what I run after I have my .config ready:

https://gist.github.com/1550685


-- 
Kent

perl -e  "print substr( \"edrgmaM  SPA NOcomil.ic\\@tfrken\", \$_ * 3, 3 )
for ( 9,8,0,7,1,6,5,4,3,2 );"


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Michał Górny
On Mon, 2 Jan 2012 07:58:00 -0500
Rich Freeman  wrote:

> On Mon, Jan 2, 2012 at 6:47 AM, Sven Vermeulen 
> wrote:
> > And how does dracut know which files it needs to mount my /usr?
> 
> I assume based on the selection of modules that you enabled when
> building/running it.
> 
> I believe dracut builds static binaries, so it mainly needs updating
> when you build a new kernel.

AFAIK dracut doesn't build anything. It just copies files from
the running system.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread William Hubbs
On Mon, Jan 02, 2012 at 01:24:00PM +0700, Nguyen Thai Ngoc Duy wrote:
> On Sun, Jan 1, 2012 at 8:59 AM, William Hubbs  wrote:
> > Udev, kmod (which is a replacement for module-init-tools which will be 
> > needed
> > by >=udev-176), systemd, and soon others, are advocating a major change
> > to the locations where binaries and libraries are stored on linux
> > systems.
> 
> Could you please point me to the discussions where udev, kmod and soon
> others are advocating /usr/bin and /bin unification?

http://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
http://fedoraproject.org/wiki/Features/UsrMove

Also udev git now installs by default in /usr/bin and kmod installs
by default in /usr/bin.

Udev has now also been changed so that it doesn't care if rules fail to
run if/usr is not mounted. It doesn't keep track of this type of failure
and doesn't give us a way to re-run these rules.

That is just the beginning; I'm sure more packages will be changed to
follow this setup.

William



pgpW7E1CcbTeg.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread William Hubbs
On Sun, Jan 01, 2012 at 06:54:34PM +0100, Michał Górny wrote:
> On Sat, 31 Dec 2011 19:59:47 -0600
> We should *at least* start doing some preparations, like ensuring that
> random things don't unnecessarily hardcode /sbin or /bin paths. Most
> importantly, if a particular tool runs in a complete environment (which
> is true for most of the cases), there is no need to hardcode paths to
> tools.
> 
> As I see it, 2) seems achievable within a reasonable time now. It
> shouldn't require any specific changes from users (except for fixing
> their own broken scripts) yet some tree-wide action of fixing hardcoded
> paths.
> 
> We could create /sbin and /usr/sbin symlinks as well but that shouldn't
> be really necessary, especially if we prepare packages well beforehand.
> Introducing such symlinks would be hard to perform and getting rid of
> them later would be even harder; mostly due to PMS-enforced limitations.

I'm not really a fan of the compatibility symlinks either the more I
think about it. I think that basically packages can revbump to make this
migration happen, or in the case of udev and kmod and other upstreams
that support it, not hard code the configuration.

> 
> For a long-term view, 1) is the only way to go. Splitting packages
> randomly between rootfs and /usr was never really correct, and we
> especially shouldn't force users to junk their systems with shattered
> packages and cheap glue to keep it all working.
> 
> I'd suggest going the other way than I did with kmod. Temporary IUSE
> like 'install-to-usr', disabled by default for now. Packages having
> that IUSE should have correct USE-dependencies, and users who need not
> to use that could just enable 'install-to-usr' globally (we'd probably
> want to mask it first).

I'm not sure that a use flag is a good idea for this, because there will
definitely be people who would turn it off, and with upstreams assuming
that this is how things are installed, those who turn it off will have
broken systems.

Here is My thought about how we can make this transition happen:

* Right now, I can re-work our kmod ebuild to install to its default
  locations in /usr.

* When udev 176 is released, I'll put it in the tree, masked, installing
  to its default locations. I can actually rework the live ebuild right
  now to do this.

* I will then open a tracker for issues that will need to be fixed
  before we can unmask it.

* Next, we will need people to unmask udev-176 and test to find issues.
  I will definitely be one of these since I have separate
  /usr on my desktop, however, I can't test all possible
  configurations/packages here, so the more the merrier.

* We also need to get a better understanding of dracut at this point. I
  believe that making an initramfs is as simple as running:
  dracut "" -H
  as root. Then you have to add it to your boot loader. The one thing I
  haven't figured  out yet is whether it is possible to create an
  initramfs that doesn't have to be updated with every kernel upgrade.

* Once the issues are ironed out we unmask udev-176 and go from there.

What does everyone think? What am I leaving out?

William



pgpzSQ6FeBDNh.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Michał Górny
On Mon, 2 Jan 2012 11:54:57 -0600
William Hubbs  wrote:

> > For a long-term view, 1) is the only way to go. Splitting packages
> > randomly between rootfs and /usr was never really correct, and we
> > especially shouldn't force users to junk their systems with
> > shattered packages and cheap glue to keep it all working.
> > 
> > I'd suggest going the other way than I did with kmod. Temporary IUSE
> > like 'install-to-usr', disabled by default for now. Packages having
> > that IUSE should have correct USE-dependencies, and users who need
> > not to use that could just enable 'install-to-usr' globally (we'd
> > probably want to mask it first).
> 
> I'm not sure that a use flag is a good idea for this, because there
> will definitely be people who would turn it off, and with upstreams
> assuming that this is how things are installed, those who turn it off
> will have broken systems.

But it will give some of us a chance to carefully test changes without
enforcing them on all users or leaving them to lag behind with
packages.

Another, maybe even better solution is keeping modded packages in an
overlay.

> What does everyone think? What am I leaving out?

I think you are missing the long, necessary transition period.

Also, I don't think we should move udev (or anything else to /usr)
before we move all of its deps there. Well, at least library-level deps
which would be systemd. But I think I'll need to move it there anyway
because we don't have libdbus in rootfs.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Michał Górny
On Sun, 1 Jan 2012 14:39:57 +0530
Nirbheek Chauhan  wrote:

> On Sun, Jan 1, 2012 at 2:23 PM, Sven Vermeulen 
> wrote:
> > On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
> >> The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
> >> understanding is that they want to move software that is installed
> >> in /bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
> >> everything from /lib to /usr/lib.
> >
> > I don't like this one bit. Things used to be simple with the
> > "split" between /bin and /usr/bin (and its related directories),
> > this isn't going to make it more simple.
> 
> Actually, I've always thought that the split between /usr/bin and /bin
> was quite arbitrary. However, I would like to note that merging /bin
> and /usr/bin would break some app combinations like bzip2+pbzip2, so
> that problem also needs to be solved (via eselect perhaps).

Well, that /usr/bin idea of mine was quite hacky anyway. I don't think
we should even consider it here.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread Michał Górny
On Sun, 1 Jan 2012 08:53:26 +
Sven Vermeulen  wrote:

> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
> > The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
> > understanding is that they want to move software that is installed
> > in /bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
> > everything from /lib to /usr/lib.
> 
> I don't like this one bit. Things used to be simple with the "split"
> between /bin and /usr/bin (and its related directories), this isn't
> going to make it more simple.

Simple? Should I start requesting additional packages moved into rootfs
because I feel like needing them? Things can and will go more ugly,
and I wouldn't be surprised if anytime soon people will start
complaining because they ran out of space on their rootfs.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-02 Thread William Hubbs
On Mon, Jan 02, 2012 at 07:37:41PM +0100, Michał Górny wrote:
> On Mon, 2 Jan 2012 11:54:57 -0600
> William Hubbs  wrote:
> 
> > > For a long-term view, 1) is the only way to go. Splitting packages
> > > randomly between rootfs and /usr was never really correct, and we
> > > especially shouldn't force users to junk their systems with
> > > shattered packages and cheap glue to keep it all working.
> > > 
> > > I'd suggest going the other way than I did with kmod. Temporary IUSE
> > > like 'install-to-usr', disabled by default for now. Packages having
> > > that IUSE should have correct USE-dependencies, and users who need
> > > not to use that could just enable 'install-to-usr' globally (we'd
> > > probably want to mask it first).
> > 
> > I'm not sure that a use flag is a good idea for this, because there
> > will definitely be people who would turn it off, and with upstreams
> > assuming that this is how things are installed, those who turn it off
> > will have broken systems.
> 
> But it will give some of us a chance to carefully test changes without
> enforcing them on all users or leaving them to lag behind with
> packages.

Stable or ~arch users wouldn't be affected, just those unmasking things
in p.mask.

> Another, maybe even better solution is keeping modded packages in an
> overlay.

Absolutely not. I don't see a reason to use an overlay for this; that's
what p.mask is for.

> > What does everyone think? What am I leaving out?
> 
> I think you are missing the long, necessary transition period.

I'm not sure I agree. I don't see why there has to be a long transition
period if we coordinate everything correctly.

William



pgpv3gxwSKmIz.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Walter Dnes
On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote

> I see three options:
> 
> 1) Start migrating packages along with upstream and have everyone who
> has a separate /usr (including me by the way) start using an initramfs
> of some kind, either dracut or one that we generate specifically for
> gentoo. The reason I suggest the initramfs, is, unfortunately if we
> migrate everything, nothing else would work.
> 
> 2) Combine the sbin and bin directories both  on the root
> filesystem and in /usr by moving things from /sbin to /bin and /usr/sbin
> to /usr/bin.
> 
> 3) Try to maintain  things the way they are as long as possible.

  4) Following pointers from Zac Medico and others, I've managed to get
Gentoo running with busybox's mdev, instead of udev.  See
http://archives.gentoo.org/gentoo-user/msg_bc91b392ee0f76376104591cdf7dc5f0.xml
Executive summary... look Ma; no udev!

  In the instructions there, I've set up a revised dev-manager ebuild in
an overlay.  I've requested the changes to be incorporated into the
official ebuild and it appears to have been accepted.  See...

https://bugs.gentoo.org/show_bug.cgi?id=395319

It should be rolled out eventually, and the overlay won't be necessary.

  I think I've found one item so far that requires udev.  My laptop's
graphics chip needs a binary blob from radeon-ucode.  That binary blob,
in turn, requires the presence of /usr/lib/libudev.so.0 which is a
symlink to /usr/lib/libudev.so.0.9.3 (which is also required).  I can
emerge udev
move or copy the 2 files over to /root
unmerge udev
move or copy the 2 files from /root to /usr/lib/
Note that /usr/lib/ is a symlink to /usr/lib64 on my 64-bit gentoo

> Please discuss; I want to hear what you think.

-- 
Walter Dnes 



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
Hi Walter,

On Tue, Jan 03, 2012 at 04:51:57AM -0500, Walter Dnes wrote:
>   4) Following pointers from Zac Medico and others, I've managed to get
> Gentoo running with busybox's mdev, instead of udev.  See
> http://archives.gentoo.org/gentoo-user/msg_bc91b392ee0f76376104591cdf7dc5f0.xml
> Executive summary... look Ma; no udev!

Unfortunately, it isn't going to be as simple as switching away from
udev. This move is going to move all software from /bin, /sbin and /lib
to /usr/bin and /usr/lib. The end result is going to be that regardless
of whether you are using mdev or udev you will have to use an initramfs
if /usr is on a separate partition.

William



pgpKPA7t5mMhB.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Ian Stakenvicius

On 01/01/12 03:53 AM, Sven Vermeulen wrote:

On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:

The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
understanding is that they want to move software that is installed in
/bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
everything from /lib to /usr/lib.


I don't like this one bit. Things used to be simple with the "split" between
/bin and /usr/bin (and its related directories), this isn't going to make it
more simple.


I concurr.  I will admit that I've been rather out of touch with what 
other distros are doing (and have been for ~3-4 years), but combining 
everything into /usr/bin just seems plain backwards and I am rather 
shocked that all the distros are moving that way.


Has the LFH been updated??  Googling seems to say no, as the last mod 
seems to have been in 2004...  I know that, technically, these are 
'userspace' programs in that they aren't kernel-space, but they're still 
'system' programs so to me it still makes sense for them to be on the 
'system' side of the filesystem hierarchy, doesn't it?






3) Try to maintain  things the way they are as long as possible.


I'm all for this one.


I second this too.  IMO, unless the FSSTND matches the new proposal from 
udev/systemd/etc upstreams, then I think we should stick with what the 
LFH describes.  It may be possible, too, on this basis, to file bugs 
against the upstreams to enforce compatible behaviour??


Of course, 'as long as possible' may depend a bit on what the timelines 
are..  I would hope that we can support existing behaviour for at least 
the next 6+ months?  (at least then, if the Mayan calendar's right, the 
end of the world will keep us from having to implement the change)..





Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread G.Wolfe Woodbury
On 01/03/2012 10:53 AM, Ian Stakenvicius wrote:
> On 01/01/12 03:53 AM, Sven Vermeulen wrote:
>> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
>>> The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
>>> understanding is that they want to move software that is installed in
>>> /bin, /sbin and /usr/sbin to /usr/bin. Also, they want to move
>>> everything from /lib to /usr/lib.
>>
>> I don't like this one bit. Things used to be simple with the "split"
>> between
>> /bin and /usr/bin (and its related directories), this isn't going to
>> make it
>> more simple.
>
> I concurr.  I will admit that I've been rather out of touch with what
> other distros are doing (and have been for ~3-4 years), but combining
> everything into /usr/bin just seems plain backwards and I am rather
> shocked that all the distros are moving that way.
>
> Has the LFH been updated??  Googling seems to say no, as the last mod
> seems to have been in 2004...  I know that, technically, these are
> 'userspace' programs in that they aren't kernel-space, but they're
> still 'system' programs so to me it still makes sense for them to be
> on the 'system' side of the filesystem hierarchy, doesn't it?
The problem is that one group of developers is ignoring years of history
and purpose in the separation of /bin and /usr/bin and the ability of
having a separate /usr.  This is in the udev development team and they
/deliberately/ placed or used some programs in /usr/bin instead /bin and
requiring that /usr bee in the root partition.

I will note that the historical separation of the /usr stems from the
days of user home directories being in /usr/home instead of /home.  It
is getting to the point that the security aspects of having a read-only
mount for userspace executables is being overridden by developer fiat.

Lay this one at the RedHat/Fedora developers of udev.

-- 
G.Wolfe Woodbury
aka redwo...@gmail.com




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Ian Stakenvicius

On 02/01/12 12:54 PM, William Hubbs wrote:


   The one thing I
   haven't figured  out yet is whether it is possible to create an
   initramfs that doesn't have to be updated with every kernel upgrade.


I'm not sure if there is dracut-specific issues that would relate to 
this, but the genkernel initramfs (as long as it didn't include any 
kernel modules) used to work fine when used against a newer-built 
kernel--note though that this was probably not 'supported' behaviour. 
So I expect this to be the case with dracut as well.





Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Michał Górny
On Tue, 03 Jan 2012 11:08:09 -0500
"G.Wolfe Woodbury"  wrote:

> On 01/03/2012 10:53 AM, Ian Stakenvicius wrote:
> > On 01/01/12 03:53 AM, Sven Vermeulen wrote:
> >> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote:
> >>> The goal is to deprecate /bin, /lib, /sbin and /usr/sbin. My
> >>> understanding is that they want to move software that is
> >>> installed in /bin, /sbin and /usr/sbin to /usr/bin. Also, they
> >>> want to move everything from /lib to /usr/lib.
> >>
> >> I don't like this one bit. Things used to be simple with the
> >> "split" between
> >> /bin and /usr/bin (and its related directories), this isn't going
> >> to make it
> >> more simple.
> >
> > I concurr.  I will admit that I've been rather out of touch with
> > what other distros are doing (and have been for ~3-4 years), but
> > combining everything into /usr/bin just seems plain backwards and I
> > am rather shocked that all the distros are moving that way.
> >
> > Has the LFH been updated??  Googling seems to say no, as the last
> > mod seems to have been in 2004...  I know that, technically, these
> > are 'userspace' programs in that they aren't kernel-space, but
> > they're still 'system' programs so to me it still makes sense for
> > them to be on the 'system' side of the filesystem hierarchy,
> > doesn't it?
> The problem is that one group of developers is ignoring years of
> history and purpose in the separation of /bin and /usr/bin and the
> ability of having a separate /usr.  This is in the udev development
> team and they /deliberately/ placed or used some programs in /usr/bin
> instead /bin and requiring that /usr bee in the root partition.

Please, explain to me, how did they do it? As far as I am aware,
autotools installs files where it is told to.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Ian Stakenvicius

On 03/01/12 10:10 AM, William Hubbs wrote:


Unfortunately, it isn't going to be as simple as switching away from
udev. This move is going to move all software from /bin, /sbin and /lib
to /usr/bin and /usr/lib. The end result is going to be that regardless
of whether you are using mdev or udev you will have to use an initramfs
if /usr is on a separate partition.



I don't think anyone's asked this yet:

Do we NEED to deprecate /bin,/sbin,/usr/sbin,/lib ?  I realize that 
udev/kmod/systemd are moving, but there isn't anything in particular 
that would require everything else to move, is there?


I know that there was a compatibility-symlink discussion and in general 
it was thought that symlinks would be a bad idea..  but we could, for 
anything that would be required in /bin,/sbin for mdev AND /usr/bin for 
the new udev,etc (assuming there would actually be overlap, which I 
expect there wouldn't be) make the /usr/bin version be a symlink and 
keep /bin,/sbin,etc. around..  It would work at least as a temporary 
measure, until the new udev/kmod/systemd becomes the de-facto default?




Side note - if /lib is getting moved, does that mean /lib/modules is 
moving to /usr/lib/modules too?  So kernel modules are no longer on root?




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Rich Freeman
On Tue, Jan 3, 2012 at 11:08 AM, G.Wolfe Woodbury  wrote:
>  It
> is getting to the point that the security aspects of having a read-only
> mount for userspace executables is being overridden by developer fiat.
>

Can you clarify what you mean by this?  I think the whole reason that
RedHat is doing this is so that they can make /usr read-only, so that
it only changes when you perform upgrades.  I imagine the next step
would be to use a trusted boot path and verify that partition when it
is mounted.

FHS has been brought up - I suspect the upstream projects that are
sparking this move are quite aware that they're breaking compliance,
so I doubt they're going to care if you file bugs pointing this out.
No doubt after the change is made they'll lobby to revise FHS, and at
that point since everybody will have gone along with it already there
won't be much point in voicing objection.

As with anything in FOSS - whoever has the developers gets to decide
how things work.  Anybody can file bugs or post on mailing lists, but
the people writing the code will do what they do...

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
On Tue, Jan 03, 2012 at 11:40:02AM -0500, Ian Stakenvicius wrote:
> I don't think anyone's asked this yet:
> 
> Do we NEED to deprecate /bin,/sbin,/usr/sbin,/lib ?  I realize that 
> udev/kmod/systemd are moving, but there isn't anything in particular 
> that would require everything else to move, is there?
 
Well, I don't think everything is going to move immediately. The way I
see this happening is, udev/systemd/kmod are moving first, then other
upstreams will move their software.

If we don't move with them, I'm afraid that we will have more and more
customizations to maintain, either in the form of ebuilds using custom
build options, or maybe even software patches if programs operate with
the assumption that they are installed in /usr.

> I know that there was a compatibility-symlink discussion and in general 
> it was thought that symlinks would be a bad idea..  but we could, for 
> anything that would be required in /bin,/sbin for mdev AND /usr/bin for 
> the new udev,etc (assuming there would actually be overlap, which I 
> expect there wouldn't be) make the /usr/bin version be a symlink and 
> keep /bin,/sbin,etc. around..  It would work at least as a temporary 
> measure, until the new udev/kmod/systemd becomes the de-facto default?

Hmm, I'm not really interested in putting symbolic links in /usr/bin
linking to things in /bin or /sbin. I'm not following what that does for
us.

> Side note - if /lib is getting moved, does that mean /lib/modules is 
> moving to /usr/lib/modules too?  So kernel modules are no longer on root?
 
This is an interesting question. I haven't heard one way or the other
what is happening with /lib/modules.

William



pgpK7Kkk2WEqx.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Olivier Crête
Hi,

On Mon, 2012-01-02 at 10:41 +0200, Eray Aslan wrote:
> On 2012-01-01 11:50 PM, Olivier Crête wrote:
> > systemd/dracut/etc handles /usr on its own filesystem just fine. What is
> > required is that /usr must be mounted before the pivot_root away from
> > the initramfs.
>
> RedHat made some bad design decisions on RPM (.rpmnew files anyone?) and
> udev.  Udev was probably salvagable before systemd but noone has the
> motivation or the man-power to manage the huge delta that would result
> now.  It would probably amount to forking udev.  So people are following
> along even if they are unhappy.

This is completely unrelated to RPMs. And udev was not developed by
RedHat, but by a Gentoo developer who works for Suse, then it was
maintained by a Suse dev who just very recently joined RedHat.

> Plus Redhat did not support in-place upgrades last time I checked.  So
> they don't really care for a lot of problems that are important for us.

There is a good reason for that, because in-place upgrades are
impossible to do safely (and RedHat customers don't accept weird
breakages like Gentoo users do). For example, if you replace a library
or even a resource file (like a .ui file for GtkBuilder), the only way
to make it work is to make sure that no currently running application is
using it. And that just can't happen with system libraries like glibc or
system packages like udev or dbus. So the only safe way to upgrade those
is to reboot.

> Regarding the original question, I belive there are 2 issues here:
> 2. Migrating /bin to /usr/bin, /sbin to /usr/sbin etc.
> 
> For the second point, we should hold on as long as we deem appropriate.
> Then reconsider and -most probably- move ahead with the migration.  Main
> point is not to break existing installations by making the move too
> quickly.  Give sysadmins time to to adjust, resize partitions if
> necessary etc.  Do not go for half way solutions (i.e. number 2 in the
> original email).

I don't see what breakage would be caused by a big-bang update (move
everything in /sbin,/bin/,usr/sbin to usr/bin and add symlinks. I really
doubt any system has a /usr so tight that adding the couple things that
are in / to /usr/bin would break it.. Btw, this also includes /lib*
to /usr/lib*.


-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Ciaran McCreesh
On Tue, 03 Jan 2012 13:50:25 -0500
Olivier Crête  wrote:
> There is a good reason for that, because in-place upgrades are
> impossible to do safely (and RedHat customers don't accept weird
> breakages like Gentoo users do). For example, if you replace a library
> or even a resource file (like a .ui file for GtkBuilder), the only way
> to make it work is to make sure that no currently running application
> is using it. And that just can't happen with system libraries like
> glibc or system packages like udev or dbus. So the only safe way to
> upgrade those is to reboot.

Uhm... Unix filesystems don't work that way; you can unlink an open file
and anything that has that file still opened will continue to work.
You're thinking of Windows; Unix supports in-place upgrades just fine.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Michał Górny
On Tue, 3 Jan 2012 18:54:27 +
Ciaran McCreesh  wrote:

> On Tue, 03 Jan 2012 13:50:25 -0500
> Olivier Crête  wrote:
> > There is a good reason for that, because in-place upgrades are
> > impossible to do safely (and RedHat customers don't accept weird
> > breakages like Gentoo users do). For example, if you replace a
> > library or even a resource file (like a .ui file for GtkBuilder),
> > the only way to make it work is to make sure that no currently
> > running application is using it. And that just can't happen with
> > system libraries like glibc or system packages like udev or dbus.
> > So the only safe way to upgrade those is to reboot.
> 
> Uhm... Unix filesystems don't work that way; you can unlink an open
> file and anything that has that file still opened will continue to
> work. You're thinking of Windows; Unix supports in-place upgrades
> just fine.

Considering that all applications keep all files open just for the fun
of it.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
On Tue, Jan 03, 2012 at 01:50:25PM -0500, Olivier Crête wrote:
> I don't see what breakage would be caused by a big-bang update (move
> everything in /sbin,/bin/,usr/sbin to usr/bin and add symlinks. I really
> doubt any system has a /usr so tight that adding the couple things that
> are in / to /usr/bin would break it.. Btw, this also includes /lib*
> to /usr/lib*.

I think the best way to do this part of it is going to be to just follow
the upstream packages. When they release a new version that installs in
/usr, just allow that to happen. Eventually there will be very little in
/{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
/bin/sh.

I am not for what fedora is doing with the
/bin->/usr/bin, /sbin->/usr/sbin and /lib->/usr/lib symlinks.

William



pgp93Czvlb52o.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Fabian Groffen
On 03-01-2012 13:02:55 -0600, William Hubbs wrote:
> On Tue, Jan 03, 2012 at 01:50:25PM -0500, Olivier Crête wrote:
> > I don't see what breakage would be caused by a big-bang update (move
> > everything in /sbin,/bin/,usr/sbin to usr/bin and add symlinks. I really
> > doubt any system has a /usr so tight that adding the couple things that
> > are in / to /usr/bin would break it.. Btw, this also includes /lib*
> > to /usr/lib*.
> 
> I think the best way to do this part of it is going to be to just follow
> the upstream packages. When they release a new version that installs in
> /usr, just allow that to happen. Eventually there will be very little in
> /{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
> /bin/sh.

What packages would that be?  If you're thinking about coreutils, just
trim down the ebuild by not moving some of the tools to /bin.  Our
ebuild makes it conform to FHS, not the coreutils buildsystem itself.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Olivier Crête
On Tue, 2012-01-03 at 12:36 -0600, William Hubbs wrote:
> On Tue, Jan 03, 2012 at 11:40:02AM -0500, Ian Stakenvicius wrote:
> > Side note - if /lib is getting moved, does that mean /lib/modules is 
> > moving to /usr/lib/modules too?  So kernel modules are no longer on root?
>  
> This is an interesting question. I haven't heard one way or the other
> what is happening with /lib/modules.

I doubt the kernel will move its install location, they're a very
conservative bunch. But I heard that kmod will start looking for modules
in /usr/lib/modules ...

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Olivier Crête
On Tue, 2012-01-03 at 13:02 -0600, William Hubbs wrote:
> On Tue, Jan 03, 2012 at 01:50:25PM -0500, Olivier Crête wrote:
> > I don't see what breakage would be caused by a big-bang update (move
> > everything in /sbin,/bin/,usr/sbin to usr/bin and add symlinks. I really
> > doubt any system has a /usr so tight that adding the couple things that
> > are in / to /usr/bin would break it.. Btw, this also includes /lib*
> > to /usr/lib*.
> 
> I think the best way to do this part of it is going to be to just follow
> the upstream packages. When they release a new version that installs in
> /usr, just allow that to happen. Eventually there will be very little in
> /{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
> /bin/sh.
> 
> I am not for what fedora is doing with the
> /bin->/usr/bin, /sbin->/usr/sbin and /lib->/usr/lib symlinks.

At least the upstreams that work for RedHat and Suse (and that's almost
all system packages) will come to expect that these symlinks exist. For
example, I just heard that kmod will expect kernel modules
in /usr/lib/modules even though the kernel installs them
in /lib/modules.. So yes, upstream will force these symlinks on us too.

A couple years ago, Gentoo was the forward looking distribution, ready
to try radical changes that break existing assumption, like our init
scripts with dependencies or our early use of udev. These days, I see so
much resistance to progress, it makes me sad.


-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Rich Freeman
On Tue, Jan 3, 2012 at 1:36 PM, William Hubbs  wrote:
> Well, I don't think everything is going to move immediately. The way I
> see this happening is, udev/systemd/kmod are moving first, then other
> upstreams will move their software.

Agreed.  If only a few packages have issues we don't have to subject
our users to a huge overnight change.  We can just move gradually with
upstream.

> Hmm, I'm not really interested in putting symbolic links in /usr/bin
> linking to things in /bin or /sbin. I'm not following what that does for
> us.

Perhaps we could consider compatibility packages, like a bash-links
that just installs a symlink to /usr/bin/bash in /bin.  Ideally we'd
never create them, but if a package can't be fixed in a
straightforward way we could add a link package and then have that
package depend on it.  Then we can get rid of those links over time as
nothing depends on them when upstream catches up.

Before anything changes at all we need to have a solution in
dracut/etc for mounting /usr.  Once that is in place packages can move
at any pace we wish, so there is no reason to short-cut QA.

Rch



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Fabian Groffen
On 03-01-2012 14:19:22 -0500, Olivier Crête wrote:
> On Tue, 2012-01-03 at 12:36 -0600, William Hubbs wrote:
> > On Tue, Jan 03, 2012 at 11:40:02AM -0500, Ian Stakenvicius wrote:
> > > Side note - if /lib is getting moved, does that mean /lib/modules is 
> > > moving to /usr/lib/modules too?  So kernel modules are no longer on root?
> >  
> > This is an interesting question. I haven't heard one way or the other
> > what is happening with /lib/modules.
> 
> I doubt the kernel will move its install location, they're a very
> conservative bunch. But I heard that kmod will start looking for modules
> in /usr/lib/modules ...

Seems they just made it a configure argument though [1].


[1] 
http://git.profusion.mobi/cgit.cgi/kmod.git/commit/?id=a308abec371364eec8344681cfe1fb50d624e43e

-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Rich Freeman
2012/1/3 Olivier Crête :
> A couple years ago, Gentoo was the forward looking distribution, ready
> to try radical changes that break existing assumption, like our init
> scripts with dependencies or our early use of udev. These days, I see so
> much resistance to progress, it makes me sad.

I think the key is to keep huge changes optional to start with.  This
one feels like it is being pushed upon us.

I don't really have a big problem with moving to /usr and all that.
However, I do have some concerns with the larger direction that
everybody is taking with vertical integration (which this is just a
part of).  For example, if eventually you can't run gnome without
systemd where does that leave bsd gentoo users?  Gentoo is about
choice, and various upstream efforts are moving in the direction of
giving users only one choice - take it or leave it.  How do you
install KDE and Gnome on the same system when they eventually want
different sysvinit implementations.  Will the RedHat and Ubuntu of the
future have no more in common than Tivo and Android do today?

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Nirbheek Chauhan
On Wed, Jan 4, 2012 at 12:06 AM, William Hubbs  wrote:
> On Tue, Jan 03, 2012 at 11:40:02AM -0500, Ian Stakenvicius wrote:
>> I don't think anyone's asked this yet:
>>
>> Do we NEED to deprecate /bin,/sbin,/usr/sbin,/lib ?  I realize that
>> udev/kmod/systemd are moving, but there isn't anything in particular
>> that would require everything else to move, is there?
>
> Well, I don't think everything is going to move immediately. The way I
> see this happening is, udev/systemd/kmod are moving first, then other
> upstreams will move their software.
>

>From what I can make out, *only* udev and systemd are making this a
hard-and-fast thing so far. kmod has added a configure argument, and
no one else has moved yet. In reality, fedora is patching a lot of
packages to make them install in /usr.

*If* GNU packages decide to move to /usr, *then* we can contemplate
moving. Till then, I say let's just do whatever Debian is doing.

-- 
~Nirbheek Chauhan

Gentoo GNOME+Mozilla Team



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
On Tue, Jan 03, 2012 at 02:19:39PM -0500, Olivier Crête wrote:
> On Tue, 2012-01-03 at 13:02 -0600, William Hubbs wrote:
> > On Tue, Jan 03, 2012 at 01:50:25PM -0500, Olivier Crête wrote:
> > > I don't see what breakage would be caused by a big-bang update (move
> > > everything in /sbin,/bin/,usr/sbin to usr/bin and add symlinks. I really
> > > doubt any system has a /usr so tight that adding the couple things that
> > > are in / to /usr/bin would break it.. Btw, this also includes /lib*
> > > to /usr/lib*.
> > 
> > I think the best way to do this part of it is going to be to just follow
> > the upstream packages. When they release a new version that installs in
> > /usr, just allow that to happen. Eventually there will be very little in
> > /{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
> > /bin/sh.
> > 
> > I am not for what fedora is doing with the
> > /bin->/usr/bin, /sbin->/usr/sbin and /lib->/usr/lib symlinks.
> 
> At least the upstreams that work for RedHat and Suse (and that's almost
> all system packages) will come to expect that these symlinks exist. For
> example, I just heard that kmod will expect kernel modules
> in /usr/lib/modules even though the kernel installs them
> in /lib/modules.. So yes, upstream will force these symlinks on us too.

I just looked at the commit in kmod for this. It can be worked around
with a ./configure switch until the kernel switches their install
location, so they aren't forcing this one.

William


pgpTwJq1xDj6J.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Fabian Groffen
On 03-01-2012 13:39:14 -0600, William Hubbs wrote:
> > in /usr/lib/modules even though the kernel installs them
> > in /lib/modules.. So yes, upstream will force these symlinks on us too.
> 
> I just looked at the commit in kmod for this. It can be worked around
> with a ./configure switch until the kernel switches their install
> location, so they aren't forcing this one.

Current git even sets the default to "", so in fact they went back to
just /lib/modules.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Nirbheek Chauhan
On Wed, Jan 4, 2012 at 1:05 AM, Rich Freeman  wrote:
> part of).  For example, if eventually you can't run gnome without
> systemd where does that leave bsd gentoo users?

Is Mesa support on BSD really all that up-to-date these days? I don't
expect that they keep up with bugfixes that well. For instance, Radeon
works best with KMS + Gallium and afaik that has no driver for BSD at
all. I don't think GNOME Shell is stable on BSD at all.

> Gentoo is about
> choice, and various upstream efforts are moving in the direction of
> giving users only one choice - take it or leave it.

If you're arguing purely on the basis of BSD, I think it's a lost
cause. They're so far behind Linux that it's not even funny anymore.

> How do you
> install KDE and Gnome on the same system when they eventually want
> different sysvinit implementations.

I doubt that's going to happen, though. No DE other than GNOME is
interested in vertical integration. Even if someone is, it's a
technical problem to be solved with a technical solution. "Every
problem in computer science can be solved by adding another layer of
indirection".

> Will the RedHat and Ubuntu of the
> future have no more in common than Tivo and Android do today?
>

Setting aside the silly parts of comparison you've made, the rest is
already true from the user's PoV. The two have drastically different
UIs, and their packages are incompatible (rpm vs deb, yum vs apt). If
some applications are indeed common between the two, it's no surprise
since most of those run on Windows too.

-- 
~Nirbheek Chauhan

Gentoo GNOME+Mozilla Team



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
On Tue, Jan 03, 2012 at 08:12:06PM +0100, Fabian Groffen wrote:
> > I think the best way to do this part of it is going to be to just follow
> > the upstream packages. When they release a new version that installs in
> > /usr, just allow that to happen. Eventually there will be very little in
> > /{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
> > /bin/sh.
> 
> What packages would that be?  If you're thinking about coreutils, just
> trim down the ebuild by not moving some of the tools to /bin.  Our
> ebuild makes it conform to FHS, not the coreutils buildsystem itself.

Yes, coreutils will have to be reworked in that case. I don't know what
the upstream build system does, but we will have to take a look at it.

I'll have to go through on my system at
least and find all of the ebuilds that install things in
/{bin,sbin,lib}. I'll open a tracker bug as soon as udev-176  is
released; this will list all of the things we need to do to complete the
migration.

Basically I have these in my head:

* mask udev-176 in the tree.
* figure out and document how to make a simple initramfs with dracut.
* unmask udev 176 making sure to point users with a separate /usr
  partition to how to make an initramfs (I could probably do this with
  ewarns in the ebuild and maybe a news item before we go stable).
  * stabilize a version of dracut.
* stabilize >=udev-176 and kmod.
* Now start stabilizing packages with things installed in /usr instead
  of /.

  If you do not have separate /usr, you could just enjoy the ride. All
  of this would be transparent to you. If you do have separate /usr, the
  critical step will be bringing up an initramfs once you upgrade to
  udev-176. Once that is done, you could also just enjoy the ride.

  Thoughts?

  William



pgpwrpWUR5VAh.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Olivier Crête
On Tue, 2012-01-03 at 14:35 -0500, Rich Freeman wrote:
> 2012/1/3 Olivier Crête :
> > A couple years ago, Gentoo was the forward looking distribution, ready
> > to try radical changes that break existing assumption, like our init
> > scripts with dependencies or our early use of udev. These days, I see so
> > much resistance to progress, it makes me sad.
> 
> I think the key is to keep huge changes optional to start with.  This
> one feels like it is being pushed upon us.
> 
> I don't really have a big problem with moving to /usr and all that.
> However, I do have some concerns with the larger direction that
> everybody is taking with vertical integration (which this is just a
> part of).  For example, if eventually you can't run gnome without
> systemd where does that leave bsd gentoo users?  Gentoo is about
> choice, and various upstream efforts are moving in the direction of
> giving users only one choice - take it or leave it.  How do you
> install KDE and Gnome on the same system when they eventually want
> different sysvinit implementations.  Will the RedHat and Ubuntu of the
> future have no more in common than Tivo and Android do today?

Well, don't worry, the KDE people don't have the will or the means to
make their own init system.. And rumor is that Ubuntu may be switching
to systemd in the near future too.

With a Linux kernel, you already need some Linux specific things like
udev, ifconfig/ip, etc. In the new world, you also have a Linux specific
init system. The BSD people are free to do whatever they want, they can
try to keep up with the Linux kernel, but good luck to them. Or they can
stay in the 80s. My advice to them is to admit that Linux is so far
ahead that they can't catch up and just join us.

Honestly, we should not promote choice at the expense of quality,
maintainability and reliability and these are the decisions that have
been made by the udev/systemd/etc upstreams. All of the init systems of
each Linux distribution has been doing the same thing in slightly
incompatible ways, so everyone has to maintain separate init scripts, on
each distro you have to remember where to set things like the hostname
(/etc/conf.d/hostname, /etc/hostname, /etc/rc.d/hostname, /etc/system/hostname, 
etc/wtf), etc. One of the key goals of systemd is to reduce this confusion by 
standardising the boot process across all distributions.

Vertical integration is the only way we can make things "Just Work" for
the users, we tried to do abstraction layers (HAL for example), but it
has been a failure. In the GNOME project, we're trying to make the Linux
desktop awesome, and we plan to fix any part of the puzzle that would
prevent us from achieving that goal.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Eray Aslan
On Tue, Jan 03, 2012 at 01:50:25PM -0500, Olivier Crête wrote:
> On Mon, 2012-01-02 at 10:41 +0200, Eray Aslan wrote:
> > RedHat made some bad design decisions on RPM (.rpmnew files anyone?) and
> > udev.  Udev was probably salvagable before systemd but noone has the
> > motivation or the man-power to manage the huge delta that would result
> > now.  It would probably amount to forking udev.  So people are following
> > along even if they are unhappy.
> 
> This is completely unrelated to RPMs.

The same packages are moving towards a system where config files reside
under /usr/lib with users overriding the defaults in /etc
(/usr/lib/udev/rules.d/ and /etc/udev/rules.d).  I doubt this would have
come about if RPM had a sensible way of dealing with config files -if
they had etc-update/dispatch-conf for example.

-- 
Eray Aslan 


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Fabian Groffen
On 03-01-2012 14:01:20 -0600, William Hubbs wrote:
> On Tue, Jan 03, 2012 at 08:12:06PM +0100, Fabian Groffen wrote:
> > > I think the best way to do this part of it is going to be to just follow
> > > the upstream packages. When they release a new version that installs in
> > > /usr, just allow that to happen. Eventually there will be very little in
> > > /{bin,sbin,lib}, maybe nothing  besides a couple of symbolic links like
> > > /bin/sh.
> > 
> > What packages would that be?  If you're thinking about coreutils, just
> > trim down the ebuild by not moving some of the tools to /bin.  Our
> > ebuild makes it conform to FHS, not the coreutils buildsystem itself.
> 
> Yes, coreutils will have to be reworked in that case. I don't know what
> the upstream build system does, but we will have to take a look at it.

Upstream build system has all binaries just installed in $(PREFIX)/bin,
like normal autoconf-based projects.

> I'll have to go through on my system at
> least and find all of the ebuilds that install things in
> /{bin,sbin,lib}. I'll open a tracker bug as soon as udev-176  is
> released; this will list all of the things we need to do to complete the
> migration.

I would suggest not to do this.  It's more interesting to know what udev
really requires to be in /usr/bin.

> Basically I have these in my head:
> 
> * mask udev-176 in the tree.
> * figure out and document how to make a simple initramfs with dracut.
> * unmask udev 176 making sure to point users with a separate /usr
>   partition to how to make an initramfs (I could probably do this with
>   ewarns in the ebuild and maybe a news item before we go stable).
>   * stabilize a version of dracut.
> * stabilize >=udev-176 and kmod.
> * Now start stabilizing packages with things installed in /usr instead
>   of /.

If the system can work with things being in /, why would we have to move
away from that?  I don't like my systems breaking, and this is a likely
candidate to do so.  E.g. also gcc-config needs changing for this.  And
baselayout/openrc.  How many locations for functions.sh are there
already in scripts now?

>   If you do not have separate /usr, you could just enjoy the ride. All
>   of this would be transparent to you. If you do have separate /usr, the
>   critical step will be bringing up an initramfs once you upgrade to
>   udev-176. Once that is done, you could also just enjoy the ride.
> 
>   Thoughts?

Let's just first see how the rest of the world reacts to all of this.
We've waited serveral years with baselayout-1 -> openrc/baselayout-2, so
I wouldn't mind doing some waiting here too.  It doesn't look like
there's much going to change.  I can't imagine bash devs dropping /bin
from bare default PATH (we control the default PATH), neither that glibc
folks drop /lib from the search path (although more likely since it's
more limited to Linux).

Perhaps, even start to experiment with this in an overlay (it's
relatively easy to start, just disable gen_usr_ldscript, fix bash to
pass --prefix=/usr and coreutils not to move bins) and try to see how
hard migration is with zlib moving around (shouldn't be too hard with
ELF, is a downright drama with Mach-O && without portage's
preserve-libs).

But also, starting to experiment to see how easy it is to let things as
they are.  udev might consider a world without /bin and /lib, but maybe
what's in there isn't much interesting to it anyway.  Most stuff is
installed in /usr for a reason.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Sven Vermeulen
On Sun, Jan 01, 2012 at 03:21:47PM -0500, Olivier Crête wrote:
> > I use a separate /usr with LVM on all my systems. My root partition uses
> > RAID1. And I never had the need for an initramfs of any kind. Also, there
> > are some major hurdles to take when it comes to getting an initramfs working
> > with SELinux. Most initramfs implementations I saw are not SELinux aware, so
> > all changes they make to the system either result in failures when they try,
> > or failures when the root-switch occurs.
> 
> dracut fully supports SELinux (it's used in Fedora which has this
> SELinux horror on by default).

Yes... but no.

Fedora uses SELinux but using a policy where most domains run unconfined
(meaning they're allowed to do almost anything) and mostly the
network-facing services are confined. 

I just got dracut working on a SELinux system here (took me a few hours to
compile a SELinux domain for dracut, because the application doesn't work
with the standard privileges of an administrator) and it boots up (up to
and including "dracut: Switching root") until SELinux is activated. 

>From that point onwards, it's dead since its using wrong labels and wrong
context.

It is SELinux-aware (it mounts the selinuxfs and such) but I think I'll need
to edit the /usr/lib/dracut/* stuff to get it to boot up properly on a
SELinux system that doesn't use unconfined domains...

I'll try to get it working the next few days. Once (or when) it does, I'll
submit the necessary patches to wherever is necessary.

Wkr,
Sven Vermeulen




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread William Hubbs
On Tue, Jan 03, 2012 at 10:22:15PM +0100, Fabian Groffen wrote:
> > I'll have to go through on my system at
> > least and find all of the ebuilds that install things in
> > /{bin,sbin,lib}. I'll open a tracker bug as soon as udev-176  is
> > released; this will list all of the things we need to do to complete the
> > migration.
> 
> I would suggest not to do this.  It's more interesting to know what udev
> really requires to be in /usr/bin.

The issues involve binaries in /{bin,sbin} that link to libraries in
/usr/lib as well as packages that install udev rules that run binaries.

> 
> > Basically I have these in my head:
> > 
> > * mask udev-176 in the tree.
> > * figure out and document how to make a simple initramfs with dracut.
> > * unmask udev 176 making sure to point users with a separate /usr
> >   partition to how to make an initramfs (I could probably do this with
> >   ewarns in the ebuild and maybe a news item before we go stable).
> >   * stabilize a version of dracut.
> > * stabilize >=udev-176 and kmod.

The part of the process above is the part I am the most concerned about.
I think we need to get everyone who is using separate /usr switched over
to an initramfs with udev 176, and this needs to happen sooner than
later, without using things like wrapper scripts or ways to avoid the
initramfs. Those are just stop-gap options that will only work until
some package they are depending on migrates to /usr.

Once we get to this point in the process, I think we could take each
package that installs things in / individually and migrate it. But, I
think the part of the process listed above needs to happen sooner than
later.

What are your thoughts?

William



pgp7MYtFmonyV.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Michał Górny
On Tue, 3 Jan 2012 17:09:18 -0600
William Hubbs  wrote:

> On Tue, Jan 03, 2012 at 10:22:15PM +0100, Fabian Groffen wrote:
> > > I'll have to go through on my system at
> > > least and find all of the ebuilds that install things in
> > > /{bin,sbin,lib}. I'll open a tracker bug as soon as udev-176  is
> > > released; this will list all of the things we need to do to
> > > complete the migration.
> > 
> > I would suggest not to do this.  It's more interesting to know what
> > udev really requires to be in /usr/bin.
> 
> The issues involve binaries in /{bin,sbin} that link to libraries in
> /usr/lib as well as packages that install udev rules that run
> binaries.
> 
> > 
> > > Basically I have these in my head:
> > > 
> > > * mask udev-176 in the tree.
> > > * figure out and document how to make a simple initramfs with
> > > dracut.
> > > * unmask udev 176 making sure to point users with a separate /usr
> > >   partition to how to make an initramfs (I could probably do this
> > > with ewarns in the ebuild and maybe a news item before we go
> > > stable).
> > >   * stabilize a version of dracut.
> > > * stabilize >=udev-176 and kmod.
> 
> The part of the process above is the part I am the most concerned
> about. I think we need to get everyone who is using separate /usr
> switched over to an initramfs with udev 176, and this needs to happen
> sooner than later, without using things like wrapper scripts or ways
> to avoid the initramfs. Those are just stop-gap options that will
> only work until some package they are depending on migrates to /usr.
> 
> Once we get to this point in the process, I think we could take each
> package that installs things in / individually and migrate it. But, I
> think the part of the process listed above needs to happen sooner than
> later.
> 
> What are your thoughts?

I agree. Especially with the last part.

Thus, we need to:

1) fix and stabilize packages necessary to create an initramfs,
2) prepare really good instructions for creating one,
3) prepare a news item for users.

For the case of really simple initramfs mounting / and /usr only, I can
even create a small tool on klibc if anyone's interested.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Olivier Crête
On Tue, 2012-01-03 at 22:47 +, Sven Vermeulen wrote:
> On Sun, Jan 01, 2012 at 03:21:47PM -0500, Olivier Crête wrote:
> > > I use a separate /usr with LVM on all my systems. My root partition uses
> > > RAID1. And I never had the need for an initramfs of any kind. Also, there
> > > are some major hurdles to take when it comes to getting an initramfs 
> > > working
> > > with SELinux. Most initramfs implementations I saw are not SELinux aware, 
> > > so
> > > all changes they make to the system either result in failures when they 
> > > try,
> > > or failures when the root-switch occurs.
> > 
> > dracut fully supports SELinux (it's used in Fedora which has this
> > SELinux horror on by default).
> 
> Yes... but no.
> 
> Fedora uses SELinux but using a policy where most domains run unconfined
> (meaning they're allowed to do almost anything) and mostly the
> network-facing services are confined. 
>
> I just got dracut working on a SELinux system here (took me a few hours to
> compile a SELinux domain for dracut, because the application doesn't work
> with the standard privileges of an administrator) and it boots up (up to
> and including "dracut: Switching root") until SELinux is activated. 
> 
> From that point onwards, it's dead since its using wrong labels and wrong
> context.
> 
> It is SELinux-aware (it mounts the selinuxfs and such) but I think I'll need
> to edit the /usr/lib/dracut/* stuff to get it to boot up properly on a
> SELinux system that doesn't use unconfined domains...
> 
> I'll try to get it working the next few days. Once (or when) it does, I'll
> submit the necessary patches to wherever is necessary.

My understanding is that the dracut maintainer recently removed SELinux
support and moved it into systemd. So patches that go in the other
directions aren't likely to go very far. My understanding is also that
it is now systemd doing all the SELinux magic (relabelling, etc), if you
don't want to use systemd, you should at least look at the relevant code
[1] [2] in systemd and do that in your own init system. And if you have
any questions, just ask Lennart, he's actually surprisingly helpful.

[1] http://cgit.freedesktop.org/systemd/tree/src/selinux-setup.c
[2] http://cgit.freedesktop.org/systemd/tree/src/mount-setup.c#n386

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-03 Thread Thomas Sachau
William Hubbs schrieb:
> On Tue, Jan 03, 2012 at 10:22:15PM +0100, Fabian Groffen wrote:
>>> I'll have to go through on my system at
>>> least and find all of the ebuilds that install things in
>>> /{bin,sbin,lib}. I'll open a tracker bug as soon as udev-176  is
>>> released; this will list all of the things we need to do to complete the
>>> migration.
>>
>> I would suggest not to do this.  It's more interesting to know what udev
>> really requires to be in /usr/bin.
> 
> The issues involve binaries in /{bin,sbin} that link to libraries in
> /usr/lib as well as packages that install udev rules that run binaries.
> 
>>
>>> Basically I have these in my head:
>>>
>>> * mask udev-176 in the tree.
>>> * figure out and document how to make a simple initramfs with dracut.
>>> * unmask udev 176 making sure to point users with a separate /usr
>>>   partition to how to make an initramfs (I could probably do this with
>>>   ewarns in the ebuild and maybe a news item before we go stable).
>>>   * stabilize a version of dracut.
>>> * stabilize >=udev-176 and kmod.
> 
> The part of the process above is the part I am the most concerned about.
> I think we need to get everyone who is using separate /usr switched over
> to an initramfs with udev 176, and this needs to happen sooner than
> later, without using things like wrapper scripts or ways to avoid the
> initramfs. Those are just stop-gap options that will only work until
> some package they are depending on migrates to /usr.
> 
> Once we get to this point in the process, I think we could take each
> package that installs things in / individually and migrate it. But, I
> think the part of the process listed above needs to happen sooner than
> later.
> 
> What are your thoughts?
> 
> William
> 

If i did not miss something in this long thread, we are currently mostly
talking about udev needing /usr to be mounted when it starts. Systemd is
not our default init system and other packages are currently not
changing their default. Since udev is our default and that requires a
mounted /usr, we should show our users their options with a suggested
default:

1. minimal initramfs (default suggestion)
2. switching from udev to mdev (avoids required /usr of udev)
3. some wrapper script to mount /usr before udev starts

for 1: I use myself a self-created initramfs, which has worked fine for
many kernel releases, the only adjustment needed was back with kernel
2.6.27. With this in mind, some default minimal initramfs should be
doable without much maintaincence work.

for 2: from what i did read up to now, this option looks interesting for
those people, who dont want to use an initramfs or other mounting script
and dont use advanced features of udev, so especially server setups or
minimal desktop systems



For the idea of complete migration to /usr, i see no reason to go this
route in advance. Just keep with our default install locations and
follow upstream, if and where needed.
If a package switches to /usr and depending packages follow, fine, let
them do that and we can follow without much additional work.
There is no need to do such migration beforehand or changing our install
location in advance.


So in short:

1. Tell our users about the change in udev and show them their options
with a suggested default one.
2. for the rest, just calm down, follow upstreams and only change the
install location where needed. No need for mental pressure without an
actual pressure. ;-)

-- 

Thomas Sachau
Gentoo Linux Developer



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 04 Jan 2012 01:47:38 +0100
Thomas Sachau  wrote:

> 2. switching from udev to mdev (avoids required /usr of udev)
> 3. some wrapper script to mount /usr before udev starts

These two should be really discouraged as a cheap, temporary solution.
We should not support hate-admining. I personally think that busybox is
ready to go into /usr even earlier than udev.

> For the idea of complete migration to /usr, i see no reason to go this
> route in advance. Just keep with our default install locations and
> follow upstream, if and where needed.

What about upstreams who do not care? In other words, all those
packages which we hack to install into rootfs?

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Thomas Sachau
Michał Górny schrieb:
> On Wed, 04 Jan 2012 01:47:38 +0100
> Thomas Sachau  wrote:
> 
>> 2. switching from udev to mdev (avoids required /usr of udev)
>> 3. some wrapper script to mount /usr before udev starts
> 
> These two should be really discouraged as a cheap, temporary solution.
> We should not support hate-admining. I personally think that busybox is
> ready to go into /usr even earlier than udev.

Please give us a bit more than just your opinion.

Why do you see mdev as a temporary solution?

And this part was not about the movement to /usr at all, so why do you
suggest another movement here? And while you answer that, please also
tell us, why you want to migrate packages to a different install
location without a need.

> 
>> For the idea of complete migration to /usr, i see no reason to go this
>> route in advance. Just keep with our default install locations and
>> follow upstream, if and where needed.
> 
> What about upstreams who do not care? In other words, all those
> packages which we hack to install into rootfs?

They install and work fine, so just keep it this way. I did not see any
argument to move packages around, that work well and have no issue with
their current install location.


-- 

Thomas Sachau
Gentoo Linux Developer



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Arun Raghavan
On 3 January 2012 15:21, Walter Dnes  wrote:
> On Sat, Dec 31, 2011 at 07:59:47PM -0600, William Hubbs wrote
>
>> I see three options:
>>
>> 1) Start migrating packages along with upstream and have everyone who
>> has a separate /usr (including me by the way) start using an initramfs
>> of some kind, either dracut or one that we generate specifically for
>> gentoo. The reason I suggest the initramfs, is, unfortunately if we
>> migrate everything, nothing else would work.
>>
>> 2) Combine the sbin and bin directories both  on the root
>> filesystem and in /usr by moving things from /sbin to /bin and /usr/sbin
>> to /usr/bin.
>>
>> 3) Try to maintain  things the way they are as long as possible.
>
>  4) Following pointers from Zac Medico and others, I've managed to get
> Gentoo running with busybox's mdev, instead of udev.  See
> http://archives.gentoo.org/gentoo-user/msg_bc91b392ee0f76376104591cdf7dc5f0.xml
> Executive summary... look Ma; no udev!

Does mdev support all the rules we have in /lib/udev/rules.d/? The
Internet is surprisingly mute on this subject, but a quick grep
through the busybox source doesn't turn up anything that suggests that
it might.

-- 
Arun Raghavan
http://arunraghavan.net/
(Ford_Prefect | Gentoo) & (arunsr | GNOME)



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Rich Freeman
On Wed, Jan 4, 2012 at 7:58 AM, Arun Raghavan  wrote:
> Does mdev support all the rules we have in /lib/udev/rules.d/? The
> Internet is surprisingly mute on this subject, but a quick grep
> through the busybox source doesn't turn up anything that suggests that
> it might.

I think the main use case for mdev is to do a one-time creation of
typical device nodes with minimal use of resources.  Perhaps you might
say mdev is to udev as dash is to bash (though dash is
syntax-compatible with bash, or at least it aims to be, and I'm not
sure the same is true of mdev vs udev).

If you're running a server or embedded device and you just need it to
detect your hard drives and maybe a few devices you're willing to
write scripts for, then it is a perfect choice.  I have no idea how
well it supports hotplugging of usb devices and such.

For a desktop - it seems like a poor choice.  By the time you enhanced
it to do everything udev does you'll ruin it for embedded use and
probably be stuck with all the same issues we have with udev.  Fork
udev if you must (good luck with that), but I don't really see mdev as
being a real competitor.

By all means write up an mdev howto and link it in the embedded guide
or if enough users are passionate about it perhaps even link it in the
handbook (as an alternative for adventurous users with special needs).
 However, I just can't see it ever becoming the default on a
general-purpose distro like Gentoo (which aims to be all things to all
people as much as is supportable).  Certainly it is in the spirit of
Gentoo to support it as an option for those willing to deal with the
downsides (don't expect your bluetooth keyboard to work automagically,
etc).

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Nirbheek Chauhan
On Wed, Jan 4, 2012 at 6:43 PM, Rich Freeman  wrote:
> On Wed, Jan 4, 2012 at 7:58 AM, Arun Raghavan  wrote:
>> Does mdev support all the rules we have in /lib/udev/rules.d/? The
>> Internet is surprisingly mute on this subject, but a quick grep
>> through the busybox source doesn't turn up anything that suggests that
>> it might.
>
> I think the main use case for mdev is to do a one-time creation of
> typical device nodes with minimal use of resources.

In that case, you don't need a userspace daemon at all. Just use
devtmpfs. That'll use even lower resources.

-- 
~Nirbheek Chauhan

Gentoo GNOME+Mozilla Team



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 04 Jan 2012 13:06:11 +0100
Thomas Sachau  wrote:

> Michał Górny schrieb:
> > On Wed, 04 Jan 2012 01:47:38 +0100
> > Thomas Sachau  wrote:
> > 
> >> 2. switching from udev to mdev (avoids required /usr of udev)
> >> 3. some wrapper script to mount /usr before udev starts
> > 
> > These two should be really discouraged as a cheap, temporary
> > solution. We should not support hate-admining. I personally think
> > that busybox is ready to go into /usr even earlier than udev.
> 
> Please give us a bit more than just your opinion.
> 
> Why do you see mdev as a temporary solution?

Because we will then return to this discussion at some later point
and people will start throwing excrements at us again. So let's be done
with this at once.

> And this part was not about the movement to /usr at all, so why do you
> suggest another movement here? And while you answer that, please also
> tell us, why you want to migrate packages to a different install
> location without a need.

Because we need to finally be able to fix mistakes made in the past
by other people.

> >> For the idea of complete migration to /usr, i see no reason to go
> >> this route in advance. Just keep with our default install
> >> locations and follow upstream, if and where needed.
> > 
> > What about upstreams who do not care? In other words, all those
> > packages which we hack to install into rootfs?
> 
> They install and work fine, so just keep it this way. I did not see
> any argument to move packages around, that work well and have no
> issue with their current install location.

What if, say, upstream introduces pkg-config file where our hacks will
cause it to be installed into /lib/pkgconfig? Should we then expand
the hack to cover that, and something else, and then another thing...

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Fabian Groffen
On 04-01-2012 16:37:34 +0100, Michał Górny wrote:
> > And this part was not about the movement to /usr at all, so why do you
> > suggest another movement here? And while you answer that, please also
> > tell us, why you want to migrate packages to a different install
> > location without a need.
> 
> Because we need to finally be able to fix mistakes made in the past
> by other people.

What mistakes?

> > They install and work fine, so just keep it this way. I did not see
> > any argument to move packages around, that work well and have no
> > issue with their current install location.
> 
> What if, say, upstream introduces pkg-config file where our hacks will
> cause it to be installed into /lib/pkgconfig? Should we then expand
> the hack to cover that, and something else, and then another thing...

Highly unlikely, but if it happens, easy to fix, so not really a
convincing issue.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 4 Jan 2012 17:33:15 +0100
Fabian Groffen  wrote:

> On 04-01-2012 16:37:34 +0100, Michał Górny wrote:
> > > And this part was not about the movement to /usr at all, so why
> > > do you suggest another movement here? And while you answer that,
> > > please also tell us, why you want to migrate packages to a
> > > different install location without a need.
> > 
> > Because we need to finally be able to fix mistakes made in the past
> > by other people.
> 
> What mistakes?

The mistake of introducing a pointless separation based on a rule
of thumb which becomes more and more blurry over time, and hacking
packages just to make it work.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Ulrich Mueller
> On Wed, 4 Jan 2012, Michał Górny wrote:

>> What mistakes?

> The mistake of introducing a pointless separation based on a rule of
> thumb which becomes more and more blurry over time, and hacking
> packages just to make it work.

There's really nothing pointless or blurry about this separation.
The FHS has a nice definition: "The contents of the root filesystem
must be adequate to boot, restore, recover, and/or repair the system."

Ulrich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Olivier Crête
On Wed, 2012-01-04 at 18:12 +0100, Ulrich Mueller wrote:
> > On Wed, 4 Jan 2012, Michał Górny wrote:
> 
> >> What mistakes?
> 
> > The mistake of introducing a pointless separation based on a rule of
> > thumb which becomes more and more blurry over time, and hacking
> > packages just to make it work.
> 
> There's really nothing pointless or blurry about this separation.
> The FHS has a nice definition: "The contents of the root filesystem
> must be adequate to boot, restore, recover, and/or repair the system."

The problem is that to boot a modern system, you need a shitload of
stuff. For example, modern network filesystems often have secure
authentication and probably LDAP too, so that means we need to move ldap
and openssl into / and all the dependencies. Also, anything that
installs a udev rule needs to be in /, and the list goes on an on. Very
soon, you have almost everything in /...

This rule made sense in the 80s, but it doesn't match the modern world
anymore.

Some longer explanations:
http://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
https://fedoraproject.org/wiki/Features/UsrMove

Here is a list of packages on your system that will break if you start
udev without /usr mounted:

egrep 'usb-db|pci-db|FROM_DATABASE|/usr' /*/udev/rules.d/*  |cut -f 1
-d : | sort -u | xargs qfile -e


-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Marc Schiffbauer
* Olivier Crête schrieb am 04.01.12 um 18:32 Uhr:
> On Wed, 2012-01-04 at 18:12 +0100, Ulrich Mueller wrote:
> > > On Wed, 4 Jan 2012, Michał Górny wrote:
> > 
> > >> What mistakes?
> > 
> > > The mistake of introducing a pointless separation based on a rule of
> > > thumb which becomes more and more blurry over time, and hacking
> > > packages just to make it work.
> > 
> > There's really nothing pointless or blurry about this separation.
> > The FHS has a nice definition: "The contents of the root filesystem
> > must be adequate to boot, restore, recover, and/or repair the system."
> 
> The problem is that to boot a modern system, you need a shitload of
> stuff. 

To boot the system on its highest level: yes. But Linux/UNIX systems
have a concept called runlevels that can perfectly cover cases where
this "shitload of stuff" is not required.

For example, to make that FHS definition be reality there are (can
be) runlevels that will only boot a system with all basic stuff
required to mount the rootfs and make root being able to login to
the local text console. These are the things that make a unixoid
system valuable over other kind of systems.

> For example, modern network filesystems often have secure
> authentication and probably LDAP too, so that means we need to move ldap
> and openssl into / and all the dependencies. Also, anything that
> installs a udev rule needs to be in /, and the list goes on an on. Very
> soon, you have almost everything in /...

You do not need everything to make a system boot some sort of
recovery-console for example.

> 
> This rule made sense in the 80s, but it doesn't match the modern world
> anymore.

Why? The benefits to keep a system bootable and repairable is one of
the reasons why unix systems are more robust or can better be
repeaired than, lets say windows systems for example.

I do not like the idea to throw away all those benefits just because
so many (younger/newer) people do not know about the possibilities
an "old fashioned" unix system tends to have.

-Marc
-- 
8AAC 5F46 83B4 DB70 8317  3723 296C 6CCA 35A6 4134


pgpkTWMsEkKlm.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Kent Fredric
2012/1/5 Ulrich Mueller 
>
> > On Wed, 4 Jan 2012, Michał Górny wrote:
>>
> There's really nothing pointless or blurry about this separation.
> The FHS has a nice definition: "The contents of the root filesystem
> must be adequate to boot, restore, recover, and/or repair the system."
>

Given that these tools are being moved to /usr and/or duplicated to in
initrd , what is the point of a root filesystem anyway now? Just to
mount other things on? Just to store /etc ?

Or will /etc move to /usr too?

/usr/etc somewhat horrifies me.

And if you no longer have a suite of recovery tools on root, you
*have* to really have a copy in initrd, otherwise when /usr gets
damaged and needs repaired/recovered, you'll need a boot disk just to
solve that problem. And that I don't fancy.

And another errant thought: why not just repurpose the initrd as  "the
root filesystem" if the root filesystem is just to exist for the
purpose of bolting other stuff on.

Because in  my mind, the primary benefit of initrd over an actual
filesystem is the initrd is theoretically a lot harder to mess up, and
you can easily have a plethora of alternative known-good initrd's to
fall back on.

--
Kent

perl -e  "print substr( \"edrgmaM  SPA NOcomil.ic\\@tfrken\", \$_ * 3,
3 ) for ( 9,8,0,7,1,6,5,4,3,2 );"



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Thu, 5 Jan 2012 07:27:49 +1300
Kent Fredric  wrote:

> 2012/1/5 Ulrich Mueller 
> >
> > > On Wed, 4 Jan 2012, Michał Górny wrote:
> >>
> > There's really nothing pointless or blurry about this separation.
> > The FHS has a nice definition: "The contents of the root filesystem
> > must be adequate to boot, restore, recover, and/or repair the
> > system."
> >
> 
> Given that these tools are being moved to /usr and/or duplicated to in
> initrd , what is the point of a root filesystem anyway now? Just to
> mount other things on? Just to store /etc ?

Well, you can either keep both /etc and /usr on a single filesystem, or
move /etc out of rootfs and just make it a tmpfs.

> And if you no longer have a suite of recovery tools on root, you
> *have* to really have a copy in initrd, otherwise when /usr gets
> damaged and needs repaired/recovered, you'll need a boot disk just to
> solve that problem. And that I don't fancy.

And if / gets damaged, keeping those tools on / doesn't help either.
If you have them on initramfs, they can fix it as well. Of course we
could go onto 'what if initramfs gets damaged?' but then you're HDD got
damaged as well...

> And another errant thought: why not just repurpose the initrd as  "the
> root filesystem" if the root filesystem is just to exist for the
> purpose of bolting other stuff on.

Noone forbids you to. But then you won't get your memory back when real
system boots.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Thomas Sachau
Michał Górny schrieb:
> On Wed, 04 Jan 2012 13:06:11 +0100
> Thomas Sachau  wrote:
> 
>> Michał Górny schrieb:
>>> On Wed, 04 Jan 2012 01:47:38 +0100
>>> Thomas Sachau  wrote:
>>>
 2. switching from udev to mdev (avoids required /usr of udev)
 3. some wrapper script to mount /usr before udev starts
>>>
>>> These two should be really discouraged as a cheap, temporary
>>> solution. We should not support hate-admining. I personally think
>>> that busybox is ready to go into /usr even earlier than udev.
>>
>> Please give us a bit more than just your opinion.
>>
>> Why do you see mdev as a temporary solution?
> 
> Because we will then return to this discussion at some later point
> and people will start throwing excrements at us again. So let's be done
> with this at once.

Please tell me, how a replacement for udev, which in the end removes the
requirement for mounted /usr at boot time, should later require a
mounted /usr again.
And please dont tell me, that this will happen because you moved
everything to /usr. This is something you would like to do and wish to
see, but i dont see it happen.

> 
>> And this part was not about the movement to /usr at all, so why do you
>> suggest another movement here? And while you answer that, please also
>> tell us, why you want to migrate packages to a different install
>> location without a need.
> 
> Because we need to finally be able to fix mistakes made in the past
> by other people.

This has already been commented on by grobian and ulm, so i see no need
to dublicate their lines.

 For the idea of complete migration to /usr, i see no reason to go
 this route in advance. Just keep with our default install
 locations and follow upstream, if and where needed.
>>>
>>> What about upstreams who do not care? In other words, all those
>>> packages which we hack to install into rootfs?
>>
>> They install and work fine, so just keep it this way. I did not see
>> any argument to move packages around, that work well and have no
>> issue with their current install location.
> 
> What if, say, upstream introduces pkg-config file where our hacks will
> cause it to be installed into /lib/pkgconfig? Should we then expand
> the hack to cover that, and something else, and then another thing...

Defining a prefix is no "hack", it is an option you can use.

Anyway, we both have probably enough packages with such a "hack"
installed, but i cannot find a single file in /lib/pkgconfig, not even
that dir does exist. Is it different on your system?
If not, then please tell me, why you create some theory about possible
issues, which dont even exist. Dont you have better arguments for your
suggested move to /usr?


-- 

Thomas Sachau
Gentoo Linux Developer



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 4 Jan 2012 18:12:18 +0100
Ulrich Mueller  wrote:

> > On Wed, 4 Jan 2012, Michał Górny wrote:
> 
> >> What mistakes?
> 
> > The mistake of introducing a pointless separation based on a rule of
> > thumb which becomes more and more blurry over time, and hacking
> > packages just to make it work.
> 
> There's really nothing pointless or blurry about this separation.
> The FHS has a nice definition: "The contents of the root filesystem
> must be adequate to boot, restore, recover, and/or repair the system."

Why don't we have sshd there then? I don't really feel like repairing
remote system without fallback sshd.

And a compiler. If I mess up some important system component, I'd really
use one. And package manager. And backup system libraries...

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Olivier Crête
On Thu, 2012-01-05 at 07:27 +1300, Kent Fredric wrote:
> 2012/1/5 Ulrich Mueller 
> >
> > > On Wed, 4 Jan 2012, Michał Górny wrote:
> >>
> > There's really nothing pointless or blurry about this separation.
> > The FHS has a nice definition: "The contents of the root filesystem
> > must be adequate to boot, restore, recover, and/or repair the system."
> >
> 
> Given that these tools are being moved to /usr and/or duplicated to in
> initrd , what is the point of a root filesystem anyway now? Just to
> mount other things on? Just to store /etc ?
> 
> Or will /etc move to /usr too?
> 
> /usr/etc somewhat horrifies me.

No no no, the idea is that once all binaries are in /usr, you can easily
share /usr between different systems and do updates in a sane way.. You
can also mount /usr read-only, but still have / be read-write.

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Rich Freeman
On Wed, Jan 4, 2012 at 1:27 PM, Kent Fredric  wrote:
> Given that these tools are being moved to /usr and/or duplicated to in
> initrd , what is the point of a root filesystem anyway now? Just to
> mount other things on? Just to store /etc ?
>
> Or will /etc move to /usr too?

I'd recommend reading the fedora docs.  Their plan is to make /usr
read-only so that it contains all elements of the system managed by
the distro.  In the future rpm world config files exist half on /usr,
with overriding content in /etc (they don't have etc-update, and
etc-update isn't always perfect either).

But yes, the trend is towards making rootfs a bit more "virtual."

I can see some of the benefits of this arrangement, but by the time we
get that all worked out btrfs might be practical, and its subvolumes
actually solve many of the problems that lvm and many partitions are
used to solve today.  With btrfs you can make /usr a subvolume and
snapshot it at will, or set up a quota just for it.  That doesn't
cover all the use cases, but it does cover most of the desktop-y ones.

As far as repairing the system from rootfs goes - I think that greatly
depends on your circumstances.  If everything is on root anyway then
it is a moot point.  If everything isn't on root then your ability to
recover is inversely proportional to the complexity of your systems.
As others have pointed out, there is always something that you won't
have, and to be honest it isn't all that hard to just boot a liveDVD
that has everything and the kitchen sink available anyway.

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Fabian Groffen
On 04-01-2012 19:50:24 +0100, Michał Górny wrote:
> On Wed, 4 Jan 2012 18:12:18 +0100
> Ulrich Mueller  wrote:
> 
> > > On Wed, 4 Jan 2012, Michał Górny wrote:
> > 
> > >> What mistakes?
> > 
> > > The mistake of introducing a pointless separation based on a rule of
> > > thumb which becomes more and more blurry over time, and hacking
> > > packages just to make it work.
> > 
> > There's really nothing pointless or blurry about this separation.
> > The FHS has a nice definition: "The contents of the root filesystem
> > must be adequate to boot, restore, recover, and/or repair the system."
> 
> Why don't we have sshd there then? I don't really feel like repairing
> remote system without fallback sshd.

Network isn't typically in that bootlevel.  You'd just attach through
the console (netmgt, ipmi, keyboard/vga) instead.

> And a compiler. If I mess up some important system component, I'd really
> use one. And package manager. And backup system libraries...

Time for your PXE boot from net to just bring back a sane image or so.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Fabian Groffen
On 04-01-2012 13:51:26 -0500, Olivier Crête wrote:
> No no no, the idea is that once all binaries are in /usr, you can easily
> share /usr between different systems and do updates in a sane way.. You
> can also mount /usr read-only, but still have / be read-write.

http://article.gmane.org/gmane.linux.debian.devel.general/165891


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 04 Jan 2012 19:48:03 +0100
Thomas Sachau  wrote:

> Defining a prefix is no "hack", it is an option you can use.
> 
> Anyway, we both have probably enough packages with such a "hack"
> installed, but i cannot find a single file in /lib/pkgconfig, not even
> that dir does exist. Is it different on your system?

Defining a prefix is no hack. Defining a prefix would result in
existence of such a file, and installation of static libraries in /lib.

We use hacks to move shared libraries to rootfs, and then create one
more hack to not confuse the linker with different locations of static
and shared libraries.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Michał Górny
On Wed, 4 Jan 2012 20:00:51 +0100
Fabian Groffen  wrote:

> On 04-01-2012 19:50:24 +0100, Michał Górny wrote:
> > On Wed, 4 Jan 2012 18:12:18 +0100
> > Ulrich Mueller  wrote:
> > 
> > > > On Wed, 4 Jan 2012, Michał Górny wrote:
> > > 
> > > >> What mistakes?
> > > 
> > > > The mistake of introducing a pointless separation based on a
> > > > rule of thumb which becomes more and more blurry over time, and
> > > > hacking packages just to make it work.
> > > 
> > > There's really nothing pointless or blurry about this separation.
> > > The FHS has a nice definition: "The contents of the root
> > > filesystem must be adequate to boot, restore, recover, and/or
> > > repair the system."
> > 
> > Why don't we have sshd there then? I don't really feel like
> > repairing remote system without fallback sshd.
> 
> Network isn't typically in that bootlevel.  You'd just attach through
> the console (netmgt, ipmi, keyboard/vga) instead.
> 
> > And a compiler. If I mess up some important system component, I'd
> > really use one. And package manager. And backup system libraries...
> 
> Time for your PXE boot from net to just bring back a sane image or so.

My PXE boot from net won't happen because possible /usr-over-NFS relies
on random files from other rootfs, and they just failed to be in sync
between two of my systems.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Fabian Groffen
On 04-01-2012 20:28:01 +0100, Michał Górny wrote:
> > > And a compiler. If I mess up some important system component, I'd
> > > really use one. And package manager. And backup system libraries...
> > 
> > Time for your PXE boot from net to just bring back a sane image or so.
> 
> My PXE boot from net won't happen because possible /usr-over-NFS relies
> on random files from other rootfs, and they just failed to be in sync
> between two of my systems.

Seems like you've got a situation where you'd just shove in a livecd
then.


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Fabian Groffen
On 04-01-2012 20:26:27 +0100, Michał Górny wrote:
> We use hacks to move shared libraries to rootfs, and then create one
> more hack to not confuse the linker with different locations of static
> and shared libraries.

So your point is that the reasons why this was originally done are now
no longer valid, because...?


-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Eray Aslan
On Wed, Jan 04, 2012 at 07:26:05PM +0100, Marc Schiffbauer wrote:
> For example, to make that FHS definition be reality there are (can
> be) runlevels that will only boot a system with all basic stuff
> required to mount the rootfs and make root being able to login to
> the local text console. These are the things that make a unixoid
> system valuable over other kind of systems.

There are benefits to the proposed changes, especially for rpm based
distros and especially for non-server settings.  Are they good enough?
No, I don't think they are.  But since forking all those packages is
not a realistic proposition, we will have to follow along.  We should
try and not break existing installations when we do though.

> I do not like the idea to throw away all those benefits just because
> so many (younger/newer) people do not know about the possibilities
> an "old fashioned" unix system tends to have.

Hey, this is web 2.0 era.  Being mostly right most of the time is good
enough.

-- 
Eray Aslan 


signature.asc
Description: Digital signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Zac Medico
On 01/04/2012 09:32 AM, Olivier Crête wrote:
> On Wed, 2012-01-04 at 18:12 +0100, Ulrich Mueller wrote:
>>> On Wed, 4 Jan 2012, Michał Górny wrote:
>>
 What mistakes?
>>
>>> The mistake of introducing a pointless separation based on a rule of
>>> thumb which becomes more and more blurry over time, and hacking
>>> packages just to make it work.
>>
>> There's really nothing pointless or blurry about this separation.
>> The FHS has a nice definition: "The contents of the root filesystem
>> must be adequate to boot, restore, recover, and/or repair the system."
> 
> The problem is that to boot a modern system, you need a shitload of
> stuff. For example, modern network filesystems often have secure
> authentication and probably LDAP too, so that means we need to move ldap
> and openssl into / and all the dependencies. Also, anything that
> installs a udev rule needs to be in /, and the list goes on an on. Very
> soon, you have almost everything in /...
> 
> This rule made sense in the 80s, but it doesn't match the modern world
> anymore.
> 
> Some longer explanations:
> http://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
> https://fedoraproject.org/wiki/Features/UsrMove

The FHS notion of "root filesystem as a recovery partition" existed long
before the relatively modern development of things like busybox and
initramfs made it more practical to use an initramfs as a recovery
partition. Anyone who wouldn't prefer to use an initramfs for their
"recover partition" probably just doesn't realize how well suited an
initramfs is for the job. It's so well suited for the job that it makes
the old FHS notion of "root filesystem as a recovery partition" seem quaint.
-- 
Thanks,
Zac



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Jeroen Roovers
On Sun, 01 Jan 2012 16:49:42 -0500
Olivier Crête  wrote:

> > > That's why you have dracut to do it for you.

> > Which is keyworded at this point.  Stable users do what?

It's keyworded for only two arches.

> This is a discussion about the future... Changing keywords is trivial
> if we care.

Oh, let's quickly drop the notion of arch testing/stabilisation. :)


   jer



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-04 Thread Dale

Jeroen Roovers wrote:

On Sun, 01 Jan 2012 16:49:42 -0500
Olivier Crête  wrote:


That's why you have dracut to do it for you.

Which is keyworded at this point.  Stable users do what?

It's keyworded for only two arches.




And amd64 is one of them.  I'd say it is a fairly popular arch too.  ;-)

Dale

:-)  :-)

--
I am only responsible for what I said ... Not for what you understood or how 
you interpreted my words!

Miss the compile output?  Hint:
EMERGE_DEFAULT_OPTS="--quiet-build=n"




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread William Hubbs
On Thu, Jan 05, 2012 at 07:27:49AM +1300, Kent Fredric wrote:
> 2012/1/5 Ulrich Mueller 
> >
> > > On Wed, 4 Jan 2012, Michał Górny wrote:
> >>
> > There's really nothing pointless or blurry about this separation.
> > The FHS has a nice definition: "The contents of the root filesystem
> > must be adequate to boot, restore, recover, and/or repair the system."
> >
> 
> Given that these tools are being moved to /usr and/or duplicated to in
> initrd , what is the point of a root filesystem anyway now? Just to
> mount other things on? Just to store /etc ?
> 
> Or will /etc move to /usr too?

No, /etc isn't going anywhere.

William



pgpI7nEAbZXVR.pgp
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Ciaran McCreesh
On Thu, 5 Jan 2012 13:30:24 -0600
William Hubbs  wrote:
> > Or will /etc move to /usr too?
> 
> No, /etc isn't going anywhere.

Are you sure? I heard a rumour that systemd will soon require you to
put /etc inside your initrd (since / can't be mounted without it).
Obviously, you'd have to reboot if you made any changes to your config
files, but that's OK since you can't safely restart daemons anyway.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Rich Freeman
On Thu, Jan 5, 2012 at 3:08 PM, Ciaran McCreesh
 wrote:
> Are you sure? I heard a rumour that systemd will soon require you to
> put /etc inside your initrd (since / can't be mounted without it).

While I can't speak to your comments about being unable to restart
daemons with systemd (hope this isn't the case, obviously), dracut
does in fact include a copy of some files in /etc like mdadm.conf.
So, if you reconfigure your raid it might be beneficial to rebuild
your initramfs.

As you might expect that is optional - mdadm can more-or-less work
without mdadm.conf, but in some cases you could have your raids change
name and such.  If you mount root by UUID that won't prevent you from
booting, but it might mess up your own scripts if you refer to md
devices by number.

Rich



Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Sven Vermeulen
On Thu, Jan 05, 2012 at 08:08:44PM +, Ciaran McCreesh wrote:
> > > Or will /etc move to /usr too?
> > 
> > No, /etc isn't going anywhere.
> 
> Are you sure? I heard a rumour that systemd will soon require you to
> put /etc inside your initrd (since / can't be mounted without it).
> Obviously, you'd have to reboot if you made any changes to your config
> files, but that's OK since you can't safely restart daemons anyway.

They've thought of that, and will make 
- kexec mandatory so that reboots are not needed for those times you
  need to switch kernels
- make hibernation mandatory for the other times




Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Olivier Crête
On Thu, 2012-01-05 at 20:08 +, Ciaran McCreesh wrote:
> On Thu, 5 Jan 2012 13:30:24 -0600
> William Hubbs  wrote:
> > > Or will /etc move to /usr too?
> > 
> > No, /etc isn't going anywhere.
> 
> Are you sure? I heard a rumour that systemd will soon require you to
> put /etc inside your initrd (since / can't be mounted without it).
> Obviously, you'd have to reboot if you made any changes to your config
> files, but that's OK since you can't safely restart daemons anyway.

Dude, the systemd people are not crazy. You should try to understand
what they do before criticizing. 

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Ciaran McCreesh
On Thu, 05 Jan 2012 16:02:09 -0500
Olivier Crête  wrote:
> On Thu, 2012-01-05 at 20:08 +, Ciaran McCreesh wrote:
> > On Thu, 5 Jan 2012 13:30:24 -0600
> > William Hubbs  wrote:
> > > > Or will /etc move to /usr too?
> > > 
> > > No, /etc isn't going anywhere.
> > 
> > Are you sure? I heard a rumour that systemd will soon require you to
> > put /etc inside your initrd (since / can't be mounted without it).
> > Obviously, you'd have to reboot if you made any changes to your
> > config files, but that's OK since you can't safely restart daemons
> > anyway.
> 
> Dude, the systemd people are not crazy. You should try to understand
> what they do before criticizing. 

I don't claim they're crazy. I claim they're sacrificing functionality,
correctness, loose coupling, simplicity, well defined behaviour,
understandability and stability in order to implement questionable new
shiny things.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] rfc: locations of binaries and separate /usr

2012-01-05 Thread Olivier Crête
On Thu, 2012-01-05 at 21:09 +, Ciaran McCreesh wrote:
> On Thu, 05 Jan 2012 16:02:09 -0500
> Olivier Crête  wrote:
> > On Thu, 2012-01-05 at 20:08 +, Ciaran McCreesh wrote:
> > > On Thu, 5 Jan 2012 13:30:24 -0600
> > > William Hubbs  wrote:
> > > > > Or will /etc move to /usr too?
> > > > 
> > > > No, /etc isn't going anywhere.
> > > 
> > > Are you sure? I heard a rumour that systemd will soon require you to
> > > put /etc inside your initrd (since / can't be mounted without it).
> > > Obviously, you'd have to reboot if you made any changes to your
> > > config files, but that's OK since you can't safely restart daemons
> > > anyway.
> > 
> > Dude, the systemd people are not crazy. You should try to understand
> > what they do before criticizing. 
> 
> I don't claim they're crazy. I claim they're sacrificing functionality,
> correctness, loose coupling, simplicity, well defined behaviour,
> understandability and stability in order to implement questionable new
> shiny things.

The only thing I see them sacrificing is loose coupling, they provide
more functionality than any other init system, more correctness
(seriously, did you ever read most init scripts out there?), more well
defined behavior (all systemd systems boot exactly the same), more
stability (I'll claim that Lennart's C is better than any of the
boot-time shell scripts I've seen) and well understandability depends
who much you can understand C. Probably a bit less understandable for
sysadmins, but since they can just play with config files, it's probably
easier to understand in the end (and much less prone to breaking than
mucking around shell scripts).

-- 
Olivier Crête
tes...@gentoo.org
Gentoo Developer


signature.asc
Description: This is a digitally signed message part


  1   2   >