Closed FyrN22 closed 1 year ago
Yeah, it's a gcc-13
incompatibility:
/var/tmp/portage/dev-cpp/rapidcheck-0_pre20230113/work/rapidcheck-0_pre20230113/include/rapidcheck/detail/Utility.h:6:1: note: 'uint64_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
5 | #include <limits>
+++ |+#include <cstdint>
6 |
I pushed rapidcheck-0_pre20230416
yesterday as https://github.com/trofi/nix-guix-gentoo/commit/64edf8fe00c3fb3bcfc53aeb9287a4d3fb7cc882. If you sync the overlay updates does it work for you?
I synced the overlay, and now it fails to emerge dev-cpp/rapidcheck:
ebuild.sh, line 136: Called src_compile
Can you post full log output? Looks like it's missing the actual error message and only prints the backtrace of error printer itself.
It is still trying to install an old version for you:
/var/tmp/portage/dev-cpp/rapidcheck-0_pre20230113/work/rapidcheck-0_pre20230113/include/rapidcheck/detail/Utility.h:6:1: note: 'uint64_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
5 | #include <limits>
+++ |+#include <cstdint>
6 |
Double-check if your overlay checkout has up-to-date file versions that match https://github.com/trofi/nix-guix-gentoo/tree/master/dev-cpp/rapidcheck
i have rapidcheck-0_pre20230113.ebuild, but not rapidcheck-0_pre20230416.ebuild, should i just copy the rapidcheck-0_pre20230416.ebuild to /var/db/repos/nix-guix/dev-cpp/rapidcheck/ ?
No, normally you would sync the overlay with emerge --sync
to pull the updates (depending on how you installed it). That should copy all files automatically.
i did emerge --sync, and this repo returned with the code = 0
Did it update the files? If not try to add an entry in /etc/portage/repos.conf
like https://github.com/trofi/nix-guix-gentoo/#enabling-the-overlay specifies. That should be enough for emerge --sync
to work.
i added that already to the repos.conf, i also tired the eselect-repository, but still fails the build on rapidcheck
If you do # emaint sync -r nix-guix
what is the full output?
emaint sync -r nix-guix
Syncing repository 'nix-guix' into '/var/db/repos/nix-guix'... /usr/bin/git fetch origin --depth 1 remote: Total 0 (delta 0), reused 0 (delta 0), pack-reused 0 /usr/bin/git reset --merge refs/remotes/origin/master === Sync completed for nix-guix
IMPORTANT: 40 config files in '/etc' need updating.
See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
sections of the emerge man page to learn how to update config files.
IMPORTANT: 18 news items need reading for repository 'gentoo'.
Use eselect news read to view new items.
Action: sync for repo: nix-guix, returned code = 0
Looks good. How about $ cd /var/db/repos/nix-guix && git log
?
commit d00abbc44841e876d5db47e60ad408cb1d1c322b (grafted, HEAD -> master, origin/master, origin/HEAD) Author: Repository mirror & CI repomirrorci@gentoo.org Date: Mon Apr 24 22:19:03 2023 +0000
Aha, you are using the gentoo
's stale mirror. Double-check your repos.conf
for a git repository path to point at https://github.com/trofi/nix-guix-gentoo.git
i have the nix-guix.conf inside the repos.conf.
Can you post it's full content here?
This is all i have inside the repos.conf eselect-repo.txt gentoo.txt nix-guix.txt
Hm, that looks correct. Though your emerge --info
from the first comment contains the other repo link:
nix-guix
location: /var/db/repos/nix-guix
sync-type: git
sync-uri: https://github.com/gentoo-mirror/nix-guix.git
masters: gentoo
volatile: False
Does your emerge --info
still refer https://github.com/gentoo-mirror/nix-guix.git
?
i switched it to the right repo link after putting the emerge --info, so its refering to https://github.com/trofi/nix-guix-gentoo.git now
Aha. I did not quite get after which comment you have fixed the link: before or after you tried to sync.
Does emerge --sync
pull from the correct repository now?
No, its still the old one.
Aha. I wonder if emerge --sync
does not update git repository paths after it was checked out once. What path do you see in cat /var/db/repos/nix-guix/.git/config
?
If it's a stale on try to nuke it and refetch:
# rm -rfv /var/db/repos/nix-guix && emerge --sync
Meanwhile I filed https://bugs.gentoo.org/905869 to consider fixing emerge --sync
's behavior to update git repository link.
it was the stale, but now rapid build works but nix fails the build nixlog.txt
Yay, progress!
make: *** No rule to make target '/usr/bin/nix', needed by 'doc/manual/src/command-ref/new-cli'. Stop.
make: *** Waiting for unfinished jobs....
I think it's a deficiency in DESTDIR patch. I'll try to reproduce it by uninstalling nix
locally. I think it happens to work for me only because I had older version around.
Reproduced locally and pushed possible fix: https://github.com/trofi/nix-guix-gentoo/commit/35e42f68df621842c7cba5914dbfe1ed448bf2cd . Please try to sync the repo again and give it a try.
It works now, thanks for helping!
Thank you for the report!
info.txt log.txt