graysky2/clean-chroot-manager

Buildroot doesn't want to update

dvdesolve opened this issue · 10 comments

Today I've run sudo ccm u after updating ccm from AUR. However it told me that something wrong with buildroot:

----> Updating the buildroot...
==> ERROR: chroot '/opt/buildroot/root' is not at version v5. Please rebuild.

Should I nuke buildroot (and/or my local repo with all built packages) and then re-create it again?

Sure you can try that. Perhaps due to the devtools update, I do not know.

Ok, I've tried to recreate clean chroot, but it seems like more updates to the ccm itself are needed.

...
(3/3) Updating the info directory file...
Initializing machine ID from random generator.
cp: cannot stat '/usr/share/devtools/makepkg-x86_64.conf': No such file or directory
Generating locales...
  en_US.UTF-8... done
  de_DE.UTF-8... done
Generation complete.
...

Main ccm script still refers to old file names, e. g. on line 198:

insargs+=(-M /usr/share/devtools/makepkg-x86_64.conf)

According to this configs are moved to /usr/share/devtools/pacman.conf.d/ directory. Can you confirm and/or fix this?

Did you follow the post install message from pacman assuming you're running v2.225?

[2023-05-21T11:38:11-0400] [ALPM] upgraded clean-chroot-manager (2.222-1 -> 2.224-1)
[2023-05-21T11:38:11-0400] [ALPM-SCRIPTLET]
[2023-05-21T11:38:11-0400] [ALPM-SCRIPTLET] >>> New features/changes have been made with this release.
[2023-05-21T11:38:11-0400] [ALPM-SCRIPTLET]     Check $XDG_CONFIG_HOME/clean-chroot-manager.conf against
[2023-05-21T11:38:11-0400] [ALPM-SCRIPTLET]     /usr/share/clean-chroot-manager/ccm.skel to ensure it is updated!
[2023-05-21T11:38:11-0400] [ALPM-SCRIPTLET]

Of course!

[22:13 viktor@desolve-desktop ~]$ diff ~/.config/clean-chroot-manager.conf /usr/share/clean-chroot-manager/ccm.skel 
6c6
< CHROOTPATH64="/opt/buildroot"
---
> CHROOTPATH64="/scratch/.buildroot"
10c10
< THREADS=25
---
> THREADS=9
21,22c21,22
< REPO="/home/viktor/build/ccm_repo"
< REPO_NAME='chroot_local'
---
> #REPO="/home/foo/localrepo"
> #REPO_NAME='chroot_local'
33c33
< PACKAGER="Viktor Drobot <linux776@gmail.com>"
---
> PACKAGER=
36c36
< RUNNAMCAP=1
---
> RUNNAMCAP=

Ah, I didn't read that correctly from my phone. Please reopen if the latest commit did not fix this for you.

It worked, thank you.
Now it only complains about perl and locales:

(2/3) Warn about old perl modules
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = "",
        LC_ALL = (unset),
        LC_TIME = "ru_RU.UTF-8",
        LANG = "C"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

My locale settings are:

[22:34 viktor@desolve-desktop ~]$ cat /etc/locale.conf 
LANG=en_US.UTF-8
[22:36 viktor@desolve-desktop ~]$ cat ~/.config/locale.conf 
LANG=en_US.UTF-8
LC_TIME=ru_RU.UTF-8

Which package did you try to build?

these errors appeared right at the end of new buildroot creation

I do not have such warnings:

...
installing which...
installing base-devel...
:: Running post-transaction hooks...
(1/3) Rebuilding certificate stores...
(2/3) Warn about old perl modules
(3/3) Updating the info directory file...
Initializing machine ID from random generator.
Generating locales...
  en_US.UTF-8... done
  de_DE.UTF-8... done
Generation complete.

Tried with and without your ~/.config/locale.conf

Do you get the same if you create the chroot without ccm?

Very strange... I haven't tuned anything else in relation with locales. But ok, I think I can miss it for now
No, I haven't checked with manual chroot.

PS. According to the Google this should be fixed with exporting LC_ALL. Interesting enough, I haven't seen that message while doing perl updates under normal system. Seems like even under ccm perl somehow see host locales (ru_RU lines in my log) and complains about it because /opt/buildroot/root/etc/locale.gen doesn't contain ru_RU locale at all

PS2. May be related: FS75864 and FS74967