Date: Mon, 9 Feb 2015 18:02:32 +0100 From: Baptiste Daroussin <bapt@freebsd.org> To: John Baldwin <jhb@FreeBSD.org> Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r278447 - projects/release-pkg/release/packages/kernel Message-ID: <20150209170232.GI29891@ivaldir.etoilebsd.net> In-Reply-To: <54D8E5CD.8050304@FreeBSD.org> References: <201502091025.t19APxwK057568@svn.freebsd.org> <2379227.vPTf1TCfaA@ralph.baldwin.cx> <20150209161830.GH29891@ivaldir.etoilebsd.net> <54D8E5CD.8050304@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--AptwxgnoZDC4KQWS Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Feb 09, 2015 at 11:52:29AM -0500, John Baldwin wrote: > On 2/9/15 11:18 AM, Baptiste Daroussin wrote: > > On Mon, Feb 09, 2015 at 11:07:19AM -0500, John Baldwin wrote: > >> On Monday, February 09, 2015 10:25:59 AM Baptiste Daroussin wrote: > >>> Author: bapt > >>> Date: Mon Feb 9 10:25:58 2015 > >>> New Revision: 278447 > >>> URL: https://svnweb.freebsd.org/changeset/base/278447 > >>> > >>> Log: > >>> Rerunning kldxref after installing the kernel is still needed as > >>> rc.d/kldxref will happen too late > >>> > >>> Added: > >>> projects/release-pkg/release/packages/kernel/post-install > >>> - copied unchanged from r278395, > >>> projects/release-pkg/release/packages/kernel/post-install > >>> > >>> Copied: projects/release-pkg/release/packages/kernel/post-install (fr= om > >>> r278395, projects/release-pkg/release/packages/kernel/post-install) > >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D > >>> =3D=3D=3D --- /dev/null 00:00:00 1970 (empty, because file is newly a= dded) > >>> +++ projects/release-pkg/release/packages/kernel/post-install Mon Feb= 9 > >>> 10:25:58 2015 (r278447, copy of r278395, > >>> projects/release-pkg/release/packages/kernel/post-install) @@ -0,0 +1= @@ > >>> +/usr/sbin/kldxref /boot/kernel > >> > >> Hmm, are you hardcoding /boot/kernel as the location for kernels? I l= ike to=20 > >> keep an up-to-date GENERIC on all my boxes at /boot/kernel.GENERIC alo= ng with=20 > >> /boot/kernel which runs the machine's "custom" config. I do think I l= ike that=20 > >> the packages default to /boot/kernel in general (so I can 'pkg install= kernel- > >> <CONF>' to pick a specific conf), but it might be nice to be able to i= nstall a=20 > >> fallback kernel under an alternate name. > >=20 > > We are at very early state of packaging but yes before it becomes offic= ial it > > will allow to have custom location for the kernel (chosen at build time) >=20 > Hmm, it might be nice to choose it at runtime. Maybe I want to use > GENERIC as the main kernel so I want it at /boot/kernel, maybe I wnat to > install the "official" FreeBSD GENERIC kernel as /boot/kernel.GENERIC so > I'd like to be able to override the "prefix" as it were. Similarly, I > might want to install a test kernel package to /boot/test so I can use > it with nextboot without changing the machine's default kernel. In the > case of the kernel all the bits live in one directory, so if you allow > the directory to be fungible during install that should be doable. I > can't think of other things besides the kernel that have this sort of > behavior. In theory that is doable but I hate exceptions :). that would had some complicated code in pkg(8) just for the sake of the kernel, still I'll try = to think about it. >=20 > >> Also, do you have a graceful way of switching configs? That is, if ke= rnel-FOO=20 > >> is installed at /boot/kernel and I want to switch to kernel-BAR, do yo= u just=20 > >> have to delete FOO and install BAR? That's fine if so, though there i= s a=20 > >> window where you don't have a kernel if you crash / power-failure. :-P= Not=20 > >> sure how easy it would be to be able to move the FOO kernel to kernel.= old in=20 > >> that case and install BAR as /boot/kernel? > > Nothing planned for that so far, I'm open for suggestions, nothing is d= one in > > pkg yet to allow to move a directory with its content before actually u= pgrading. > >=20 > > IMHO that would be a bad idea to have kernel specific hacks, but it sou= nds a > > good idea to first anyway create the kernel.old directory. Still don't = know how > > to do that. >=20 > Could you use a pre-install script to move the current /boot/kernel (or > other path if specified) to /boot/kernel.old? That would be all that is > needed. The kernel Makefiles are a bit trickier in that they only save > the previous kernel this way if it is the running kernel (by checking > the kern.bootfile sysctl). If you have a pre-install script you could > incorporate the same logic. It does mean you can't "remove" the > previous version of the kernel using pkg, but typically you just have 1 > kernel.old that will keep getting updated on each upgrade. If I do that in pre-install then during the upgrade pkg will complain becau= se the old files are not there. a cp would work but it will also be more expen= sive. Best regards, Bapt --AptwxgnoZDC4KQWS Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlTY6CgACgkQ8kTtMUmk6EyuWgCePjlI1CFU2iV343sGT1buULOV PMgAnitW65t0tn8ss69TcUpUhlrSGZsK =nFHi -----END PGP SIGNATURE----- --AptwxgnoZDC4KQWS--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150209170232.GI29891>