public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Alexey Sokolov <alexey+gentoo@asokolov.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Deprecating AMD64 17.0 profiles?
Date: Tue, 10 Nov 2020 09:21:53 +0000	[thread overview]
Message-ID: <e7f34840-06cf-ce58-7bf3-c29da4802bbd@asokolov.org> (raw)
In-Reply-To: <X6pHRPCSMXnBKoZd@gentoo.org>

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

10.11.2020 08:55, Fabian Groffen пишет:
> On 09-11-2020 19:38:28 +0000, Alexey Sokolov wrote:
>> Hi Fabian
>> I tried to migrate my prefix to 17.1, and there are issues.
>>
>> 1) unsymlink-lib requires "--root ~/gentoo" and otherwise produces an
>> error "/usr/lib is a real directory! was the migration done already?"
> 
> I think unsymlink-lib doesn't have Prefix support, but in addition,
> what unsymlink-lib is trying to achieve, is not a thing perhaps on
> Prefix.
> 
> A prefix system (at least all of mine) doesn't have libXX or lib/XX
> (a.k.a.  multilib) directories.  The /usr-split was long ago removed,
> and thus what we have is:
> 
>   lib -> usr/lib
> 
> Now, SYMLINK_LIB=no seems to split into lib and lib64, but lib64 does
> not exist on Prefix systems.
> 
> Since Prefix is non-multilib by design*, I wonder if unsymlink-lib is
> necessary in the best case, but going to break the Prefix system in the
> worst case.
> 
> What instructed you to perform the migration?  Was it the news-item?  I
> don't think it should apply for Prefix profiles, and perhaps we should
> be happy the tool won't work.

It was the big scary warning about the deprecation whenever I run
emerge. It contains list of steps.

> * non-multilib is a decision dating back a decade or so, which means
>   effectively any Prefix install you encounter should be non-multilib
> 
> 
>> 2) $ unsymlink-lib --root ~/gentoo --migrate --pretend
>> usage: unsymlink-lib [-h] [-p] [--root ROOT] [--analyze] [--migrate]
>>                      [--rollback] [--finish] [--force-rollback]
>>                      [--resume-finish] [-P PREFIX] [--hardlink]
>> unsymlink-lib: error: Requested action requires root privileges
>>
>> Well, I worked it around by adding "is_root = True" to unsymlink-lib
> 
> Did it do anything to your system like creating a lib64 directory?  Does
> anything work (because I have doubts on whether your system can still
> find the libs in there now).

Yes. Attaching logs.

> 
>>
>> 3) Step 9 (Rebuild gcc) fails:
>> configure:4372: checking whether the C compiler works
>>
>>
>>
>> configure:4394: x86_64-pc-linux-gnu-gcc    conftest.c  >&5
>>
>>
>>
>> /home/user/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/as:
>> error while loading shared libraries:
>> libopcodes-2.34.0.gentoo-sys-devel-binutils-st.so: cannot open shared
> 
> Something like this I was suspecting.  Can you still rollback?  If you
> can, I'd try that and hope it restores your system in working order.

Yeah, don't worry, this is my ebuild-testing chroot. I just did "lxc
restore".


-- 
Best regards,
Alexey "DarthGandalf" Sokolov

[-- Attachment #2: analyze.log --]
[-- Type: text/x-log, Size: 6533 bytes --]

Analyzing files installed into lib & lib64...

directories that will be moved to /home/user/gentoo/lib/:
	(+ 0 files)

directories whose contents will be split between /home/user/gentoo/lib/ and /home/user/gentoo/lib64/:

orphan dirs/files (not owned by any package) that will be moved to /home/user/gentoo/lib/:
	gentoo
	modprobe.d
	systemd

orphan dirs/files (not owned by any package) that will be kept in /home/user/gentoo/lib64/:
	ld-2.31.so
	ld-linux-x86-64.so.2
	libBrokenLocale-2.31.so
	libBrokenLocale.so.1
	libSegFault.so
	libanl-2.31.so
	libanl.so.1
	libc-2.31.so
	libc.so.6
	libcrypt-2.31.so
	libcrypt.so.1
	libdl-2.31.so
	libdl.so.2
	libkmod.so.2
	libkmod.so.2.3.5
	libm-2.31.so
	libm.so.6
	libmemusage.so
	libmvec-2.31.so
	libmvec.so.1
	libnsl-2.31.so
	libnsl.so.1
	libnss_compat-2.31.so
	libnss_compat.so.2
	libnss_db-2.31.so
	libnss_db.so.2
	libnss_dns-2.31.so
	libnss_dns.so.2
	libnss_files-2.31.so
	libnss_files.so.2
	libnss_hesiod-2.31.so
	libnss_hesiod.so.2
	libpcprofile.so
	libpthread-2.31.so
	libpthread.so.0
	libresolv-2.31.so
	libresolv.so.2
	librt-2.31.so
	librt.so.1
	libthread_db-1.0.so
	libthread_db.so.1
	libutil-2.31.so
	libutil.so.1

directories that will be moved to /home/user/gentoo/usr/lib/:
	(+ 0 files)

directories whose contents will be split between /home/user/gentoo/usr/lib/ and /home/user/gentoo/usr/lib64/:

orphan dirs/files (not owned by any package) that will be moved to /home/user/gentoo/usr/lib/:
	Mcrt1.o
	Scrt1.o
	audit
	binutils
	cmake
	crt1.o
	crti.o
	crtn.o
	debug
	engines-1.1
	gawk
	gcc
	gconv
	gcrt1.o
	gettext
	glibc-2.31
	help2man
	libffi
	misc
	perl5
	pkgconfig
	portage
	python-exec
	python3.7
	systemd
	terminfo
	tmpfiles.d
	xml2Conf.sh

orphan dirs/files (not owned by any package) that will be kept in /home/user/gentoo/usr/lib64/:
	libBrokenLocale.a
	libBrokenLocale.so
	libacl.so
	libacl.so.1
	libacl.so.1.1.2253
	libanl.a
	libanl.so
	libasprintf.so
	libasprintf.so.0
	libasprintf.so.0.0.0
	libassuan.so
	libassuan.so.0
	libassuan.so.0.8.3
	libattr.so
	libattr.so.1
	libattr.so.1.1.2448
	libb2.so
	libb2.so.1
	libb2.so.1.0.4
	libblkid.so
	libblkid.so.1
	libblkid.so.1.1.0
	libbz2.so
	libbz2.so.1
	libbz2.so.1.0
	libbz2.so.1.0.6
	libc.a
	libc.so
	libc_nonshared.a
	libcrypt.a
	libcrypt.so
	libcrypto.so
	libcrypto.so.1.1
	libcurl.so
	libcurl.so.4
	libcurl.so.4.6.0
	libcurses.so
	libdb-5.3.a
	libdb-5.3.la
	libdb-5.3.so
	libdb.a
	libdb.so
	libdl.a
	libdl.so
	libexpat.so
	libexpat.so.1
	libexpat.so.1.6.10
	libexpatw.so
	libexpatw.so.1
	libexpatw.so.1.6.10
	libfdisk.so
	libfdisk.so.1
	libfdisk.so.1.1.0
	libffi.so
	libffi.so.7
	libffi.so.7.1.0
	libfl.a
	libform.so
	libform.so.6
	libform.so.6.2
	libformw.so
	libformw.so.6
	libformw.so.6.2
	libg.a
	libgcrypt.so
	libgcrypt.so.20
	libgcrypt.so.20.2.6
	libgdbm.so
	libgdbm.so.6
	libgdbm.so.6.0.0
	libgdbm_compat.so
	libgdbm_compat.so.4
	libgdbm_compat.so.4.0.0
	libgettextlib-0.21.so
	libgettextlib.so
	libgettextpo.so
	libgettextpo.so.0
	libgettextpo.so.0.5.7
	libgettextsrc-0.21.so
	libgettextsrc.so
	libgmp.so
	libgmp.so.10
	libgmp.so.10.4.0
	libgmpxx.so
	libgmpxx.so.4
	libgmpxx.so.4.6.0
	libgnutls-openssl.so
	libgnutls-openssl.so.27
	libgnutls-openssl.so.27.0.2
	libgnutls.so
	libgnutls.so.30
	libgnutls.so.30.28.1
	libgnutlsxx.so
	libgnutlsxx.so.28
	libgnutlsxx.so.28.1.0
	libgpg-error.so
	libgpg-error.so.0
	libgpg-error.so.0.29.0
	libgpgme.so
	libgpgme.so.11
	libgpgme.so.11.22.0
	libgpgmepp.so
	libgpgmepp.so.6
	libgpgmepp.so.6.9.0
	libhistory.so
	libhistory.so.8
	libhistory.so.8.0
	libhogweed.so
	libhogweed.so.6
	libhogweed.so.6.0
	libidn2.so
	libidn2.so.0
	libidn2.so.0.3.7
	libkmod.so
	libksba.so
	libksba.so.8
	libksba.so.8.11.6
	libltdl.la
	libltdl.so
	libltdl.so.7
	libltdl.so.7.3.1
	liblzma.so
	liblzma.so.5
	liblzma.so.5.2.5
	libm.a
	libm.so
	libmagic.so
	libmagic.so.1
	libmagic.so.1.0.0
	libmcheck.a
	libmenu.so
	libmenu.so.6
	libmenu.so.6.2
	libmenuw.so
	libmenuw.so.6
	libmenuw.so.6.2
	libmount.so
	libmount.so.1
	libmount.so.1.1.0
	libmpc.so
	libmpc.so.3
	libmpc.so.3.2.0
	libmpfr.so
	libmpfr.so.6
	libmpfr.so.6.1.0
	libmvec.a
	libmvec.so
	libncurses++.so
	libncurses++.so.6
	libncurses++.so.6.2
	libncurses++w.so
	libncurses++w.so.6
	libncurses++w.so.6.2
	libncurses.so
	libncurses.so.6
	libncurses.so.6.2
	libncursesw.so
	libncursesw.so.6
	libncursesw.so.6.2
	libnettle.so
	libnettle.so.8
	libnettle.so.8.0
	libnghttp2.so
	libnghttp2.so.14
	libnghttp2.so.14.20.0
	libnpth.so
	libnpth.so.0
	libnpth.so.0.1.2
	libnss_compat.so
	libnss_db.so
	libnss_dns.so
	libnss_files.so
	libnss_hesiod.so
	libpanel.so
	libpanel.so.6
	libpanel.so.6.2
	libpanelw.so
	libpanelw.so.6
	libpanelw.so.6.2
	libpcre.so
	libpcre.so.1
	libpcre.so.1.2.12
	libpcre2-8.so
	libpcre2-8.so.0
	libpcre2-8.so.0.10.0
	libpcre2-posix.so
	libpcre2-posix.so.2
	libpcre2-posix.so.2.0.3
	libpcrecpp.so
	libpcrecpp.so.0
	libpcrecpp.so.0.0.2
	libpcreposix.so
	libpcreposix.so.0
	libpcreposix.so.0.0.7
	libperl.so
	libperl.so.5.30
	libperl.so.5.30.3
	libpkgconf.a
	libpkgconf.so
	libpkgconf.so.3
	libpkgconf.so.3.0.0
	libpopt.so
	libpopt.so.0
	libpopt.so.0.0.0
	libprocps.so
	libprocps.so.8
	libprocps.so.8.0.2
	libpthread.a
	libpthread.so
	libpython3.7m.so
	libpython3.7m.so.1.0
	libreadline.so
	libreadline.so.8
	libreadline.so.8.0
	libresolv.a
	libresolv.so
	librt.a
	librt.so
	libsandbox.so
	libseccomp.so
	libseccomp.so.2
	libseccomp.so.2.4.3
	libsmartcols.so
	libsmartcols.so.1
	libsmartcols.so.1.1.0
	libssl.so
	libssl.so.1.1
	libtasn1.so
	libtasn1.so.6
	libtasn1.so.6.6.0
	libtextstyle.so
	libtextstyle.so.0
	libtextstyle.so.0.1.1
	libthread_db.so
	libtinfo.so
	libtinfo.so.6
	libtinfo.so.6.2
	libtinfow.so
	libtinfow.so.6
	libtinfow.so.6.2
	libunistring.so
	libunistring.so.2
	libunistring.so.2.1.0
	libutil.a
	libutil.so
	libuuid.so
	libuuid.so.1
	libuuid.so.1.3.0
	libxml2.so
	libxml2.so.2
	libxml2.so.2.9.10
	libz.so
	libz.so.1
	libz.so.1.2.11
	libzstd.so
	libzstd.so.1
	libzstd.so.1.4.4
	locale
	preloadable_libintl.so

directories that will be moved to /home/user/gentoo/usr/local/lib/:
	(+ 0 files)

directories whose contents will be split between /home/user/gentoo/usr/local/lib/ and /home/user/gentoo/usr/local/lib64/:


Warning: no lib32 paths found. This is fine if you are running no-multilib,
otherwise this is suspicious.


The state has been saved and the migration is ready to proceed.
To initiate it, please run:

	/home/user/gentoo/usr/lib/python-exec/python3.7/unsymlink-lib --migrate

Please do not perform any changes to the system at this point.
If you performed any changes, please rerun the analysis.

[-- Attachment #3: ls-l.log --]
[-- Type: text/x-log, Size: 1036 bytes --]

total 55928
-rw-r--r-- 1 user user     6533 Nov 10 09:18 analyze.log
drwxr-xr-x 1 user user      790 Oct  6 20:11 bin
drwxr-xr-x 1 user user     1052 Nov 10 09:17 etc
lrwxrwxrwx 1 user user        7 Nov 10 09:19 lib -> lib.new
drwxr-xr-x 1 user user       46 Nov 10 09:19 lib.new
drwxr-xr-x 1 user user     1334 Oct  9 19:44 lib64
-rw-r--r-- 1 user user        0 Nov 10 09:19 ls-l.log
-rw-r--r-- 1 user user     1448 Nov 10 09:19 migrate-pretend.log
-rw-r--r-- 1 user user      838 Nov 10 09:19 migrate.log
drwxr-xr-x 1 user user        0 Jul 20 00:04 run
drwxr-xr-x 1 user user      212 Oct  6 20:11 sbin
-rw-r--r-- 1 user user  1467019 Jul 19 23:48 stage1.log
-rw-r--r-- 1 user user 11120838 Jul 20 00:04 stage2.log
-rw-r--r-- 1 user user 44644530 Jul 20 00:49 stage3.log
-rwxr-xr-x 1 user user     3327 Jul 20 08:18 startprefix
-rwxr-xr-x 1 user user     3332 Sep  1 23:12 startprefix2
drwxr-xr-x 1 user user        0 Jul 20 08:12 tmp
drwxr-xr-x 1 user user      130 Nov 10 09:19 usr
drwxr-xr-x 1 user user       42 Jul 20 00:43 var

[-- Attachment #4: migrate.log --]
[-- Type: text/x-log, Size: 838 bytes --]

[/home/user/gentoo/lib32] & /home/user/gentoo/lib -> /home/user/gentoo/lib.new ...
[/home/user/gentoo/usr/lib32] & /home/user/gentoo/usr/lib -> /home/user/gentoo/usr/lib.new ...
[/home/user/gentoo/usr/local/lib32] & /home/user/gentoo/usr/local/lib -> /home/user/gentoo/usr/local/lib.new ...
Updating: /home/user/gentoo/lib -> lib.new ...
Updating: /home/user/gentoo/usr/lib -> lib.new ...
Updating: /home/user/gentoo/usr/local/lib -> lib.new ...


Initial migration complete. Please now test whether your system works
correctly. It might be a good idea to try rebooting it. Once tested,
complete the migration and clean up backup files via calling:

	/home/user/gentoo/usr/lib/python-exec/python3.7/unsymlink-lib --finish

If you wish to revert the changes, run:

	/home/user/gentoo/usr/lib/python-exec/python3.7/unsymlink-lib --rollback

[-- Attachment #5: migrate-pretend.log --]
[-- Type: text/x-log, Size: 1457 bytes --]

Those are the actions that would be performed:
mkdir /home/user/gentoo/lib.new
cp -a --reflink=auto -- /home/user/gentoo/lib/systemd /home/user/gentoo/lib/gentoo /home/user/gentoo/lib/modprobe.d /home/user/gentoo/lib.new/
mkdir /home/user/gentoo/usr/lib.new
cp -a --reflink=auto -- /home/user/gentoo/usr/lib/xml2Conf.sh /home/user/gentoo/usr/lib/Scrt1.o /home/user/gentoo/usr/lib/libffi /home/user/gentoo/usr/lib/python-exec /home/user/gentoo/usr/lib/gettext /home/user/gentoo/usr/lib/terminfo /home/user/gentoo/usr/lib/python3.7 /home/user/gentoo/usr/lib/systemd /home/user/gentoo/usr/lib/portage /home/user/gentoo/usr/lib/cmake /home/user/gentoo/usr/lib/Mcrt1.o /home/user/gentoo/usr/lib/gconv /home/user/gentoo/usr/lib/binutils /home/user/gentoo/usr/lib/debug /home/user/gentoo/usr/lib/perl5 /home/user/gentoo/usr/lib/gcc /home/user/gentoo/usr/lib/help2man /home/user/gentoo/usr/lib/gcrt1.o /home/user/gentoo/usr/lib/crtn.o /home/user/gentoo/usr/lib/crt1.o /home/user/gentoo/usr/lib/glibc-2.31 /home/user/gentoo/usr/lib/misc /home/user/gentoo/usr/lib/gawk /home/user/gentoo/usr/lib/tmpfiles.d /home/user/gentoo/usr/lib/pkgconfig /home/user/gentoo/usr/lib/audit /home/user/gentoo/usr/lib/crti.o /home/user/gentoo/usr/lib/engines-1.1 /home/user/gentoo/usr/lib.new/
mkdir /home/user/gentoo/usr/local/lib.new
ln -s -f -T lib.new /home/user/gentoo/lib
ln -s -f -T lib.new /home/user/gentoo/usr/lib
ln -s -f -T lib.new /home/user/gentoo/usr/local/lib

  parent reply	other threads:[~2020-11-10  9:21 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-22 15:17 [gentoo-dev] [PATCH] profiles: Reorder AMD64 profile list to place 17.1 on top Brian Evans
2020-10-22 15:44 ` Michał Górny
2020-10-22 19:16   ` [gentoo-dev] Deprecating AMD64 17.0 profiles? Andreas K. Hüttel
2020-11-07 11:42     ` Alexey Sokolov
2020-11-07 11:56       ` Fabian Groffen
2020-11-09 19:38         ` Alexey Sokolov
2020-11-10  7:55           ` Fabian Groffen
2020-11-10  8:34             ` Michał Górny
2020-11-10  8:41               ` Fabian Groffen
2020-11-10  8:49                 ` Michał Górny
2020-11-10  8:53                   ` Fabian Groffen
2020-11-10  9:13                     ` Michał Górny
2020-11-10  9:21             ` Alexey Sokolov [this message]
2020-11-10  9:27               ` Fabian Groffen
2020-11-07 13:39       ` Andreas K. Huettel
2020-11-07 14:01         ` Alexey Sokolov
2020-11-09 10:30     ` Jaco Kroon
2020-11-09 10:59       ` Ulrich Mueller
2020-11-09 11:09         ` Jaco Kroon
2020-11-09 11:45           ` Marek Szuba
2020-11-09 11:54     ` Peter Stuge
2020-11-09 12:48       ` Aaron Bauman
2020-11-09 12:57       ` Andreas K. Huettel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e7f34840-06cf-ce58-7bf3-c29da4802bbd@asokolov.org \
    --to=alexey+gentoo@asokolov.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox