How does a user prevent install of glibc-locales

To prevent the install of glibc-locales, do I just need to add the package name to pacman.conf like:

HoldPkg = glibc-locales
IgnorePkg = glibc-locales
NOTE: Changed option to IgnorePkg to prevent install.

I have no problem with locales and locale-gen is working perfectly.

Can a user review packages-root before an install and remove it?

If the package does get on the system, to remove:
===> ls -l  /usr/lib/glibc-locale/; read -rep 'pause' ; ls -l  /usr/lib/locale/ 
===> locale -a

===> pacman -Rsn glibc-locales
===> rm -r /usr/lib/locale/

===> pacman -S glibc

===> ls -l  /usr/lib/glibc-locale/; read -rep 'pause' ; ls -l  /usr/lib/locale/ 
===> locale -a

you need to find out what requires it. it’s not required by glibc, so what IS pulling it in?

This is the relevant excerpt from pacman documentation:

HoldPkg = package …

If a user tries to –remove a package that’s listed in HoldPkg, pacman will ask for confirmation before proceeding. Shell-style glob patterns are allowed.

So, no, that option is not to prevent the install of glibc-locales, but rather to prevent the removal.

There’s no way to know Required By value of a package before it gets installed, so let it install, then issue:

$ pacman -Qi glibc-locales | egrep 'Required By|Optional For'

to find out which package(s) depend(s) on it.

I think there is:

$ LANG=C pacman -Sii glibc-locales | grep 'Required By'
Required By     : None

Apparently @philm added that package:

I don’t know if it was ever needed (I never had in on my system according to my pacman.log).


edit: libpamac also provides dependency-checker binary, which also doesn’t list anything:

$ dependency-checker glib-locales
$

That’s interesting…ly weird, as a package normally only lists what it depends on, but not what depends on it, as the latter is potentially externally modified packages from another repository. But I guess it just lists packages on the same repository, no?

It lists everything that is installed, that depends on that package. No matter where it comes from, could be repo, AUR, self-packaged.

Well that kinda contradicts with what I said that there’s no way to know before it gets installed…

There is no packages - at time of writing - which requires glibc-locales - at least not as a dependency.

:man_shrugging:

It is a package local to Manjaro

pacman -Sii glibc-locales
pacman -Qii glibc-locales

Perhaps it has been some intermediary thing - likely @Yochanan know what is up and down in this.

@stargazer Just remove it if you don’t need it. It is only installed on a fresh install, nothing requires it.

glibc-locales creates all locales. You don’t need to use it if you don’t need all locales

– @philm

No, that does not prevent a package from being installed. It only prevents a package from updating.

IgnorePkg = package …

Instructs pacman to ignore any upgrades for this package when performing a –sysupgrade. Shell-style glob patterns are allowed.

– pacman.conf(5) — Arch manual pages

I updated my OP to show the correct option.

On my host machine it was never installed. But on new VM’s and new installs, I’ll have to uninstall because it is in the packages-root and I don’t think I can prevent it ---- unless I use architect??

Removing requires cleanup of the files that were copied to /usr/lib/locale and reinstalling glibc to restore locale-gen (or just modify/copy the script).

I hope it doesn’t get required :slight_smile:

Didn’t know about dependency-checker. Cool! I almost always turn to pacman -Sii as my default viewing of a package. It seems to give the most information.

No, you didn’t. Am I invisible? Read my last two posts, please.

Yes, I just said that.

No, you can’t.

glibc-locales is normally used in our ARM branch. It simply provides all locales of glibc. Since ARM slightly lack to be in-sync with x86_64 we currently have a slight miss-match in the versions. However that normally doesn’t matter as the locales mostly won’t change and are binaries anyway.

So you can remove that package if you want. On the pinephone it is needed to have the gnome-initial-setup find all languages and locales to begin with and you won’t want to compile all the locales on the phone when glibc gets updated. Hence the package.

2 Likes

Doesn’t the below show up in the OP. … :confused:
I’m a little bit mad at myself because I know the difference between the two options, but I typed the wrong one. Dang.

In summary: I removed the package and put it in the IgnorePkg list in pacman.conf. I know you said that nothing requires it, as evident from the pacman display, and this is not necessary. I’ll remove it at a future date when I figure out how to incorporate this into our automation.

I don’t understand why you put it in the IgnorePkg list, as mentioned already, it doesn’t prevent you from installing the package, just prevents updating it.

There is no immediate technical reason to do so at this time.

I left it for documentation, educational purposes, and a placeholder for something I need to review. It doesn’t hurt anything and it will catch it if dependencies change.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.