You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems like the provider's functionality is tied to the check on ['os']['name'] instead of ['os']['family'], as mentioned in the issue. Have you tried checking the output of facter os to confirm the values returned for both ['os']['name'] and ['os']['family'] on your CachyOS system? This might provide insight into whether the provider logic needs adjustment to accommodate distributions that are Arch-based but not recognized as Archlinux specifically.
Have you tried checking the facter output specifically for the ['os']['family'] value? If it’s not returning 'Archlinux', that may be the root of the issue. Additionally, look into the pacman provider code to see how it validates the provider on initialization—there might be a conditional check that’s not accounting for CachyOS correctly. It could also help to add some debug logging in the provider to see what values it's working with at runtime.
It seems that the pacman provider might not be recognizing CachyOS correctly due to how it checks the OS in its initialization. Have you looked at the initialize method in the pacman provider code? You might want to add some debug logging there to see what values are being processed for ['os']['name'] and ['os']['family'] when the provider loads. This could help identify if the verification logic needs adjustment to support CachyOS as it relates to the expected behavior.
Looking at the pacman provider implementation, it likely checks Facter.value(:operatingsystem) instead of os.family during its self.instances or confine block validation. Since CachyOS reports its name as CachyOS rather than Archlinux, the confine fails before reaching the installation step that throws Error: /Package[packagenamehere]: Provider pacman is not functional on this host. We should update the confinement in lib/puppet/provider/package/pacman.rb to use osfamily => :archlinux or explicitly add CachyOS to the osatthishost list. Could you paste the output of facter os.name and facter os.family from your CachyOS host so we can verify the exact fact values?
The Provider pacman is not functional on this host error in 8.1.0 comes from the pacman provider's confine block matching against the operatingsystem fact instead of osfamily which CachyOS reports as Archlinux.
The confine block for the pacman provider likely restricts execution to operatingsystem => Archlinux, so changing the constraint to osfamily => Archlinux within the provider definition should resolve the registration failure on CachyOS.
The current confine block in the pacman provider uses Facter.value(:operatingsystem) == 'Archlinux', which is too restrictive for downstream distributions. To fix this, we should modify the confine statement to check Facter.value(:osfamily) == 'Arch' instead, as this will correctly encompass both base Arch and CachyOS. Can you confirm if your local Facter output for osfamily returns Arch when running facter osfamily on your CachyOS environment?
The current confine block explicitly restricts the provider to operatingsystem => Archlinux, which causes the Provider pacman is not functional on this host error on CachyOS despite the underlying package management being identical. Can you confirm if updating the confine block to osfamily => Archlinux resolves the provider initialization without breaking compatibility for other Arch-based distributions?
The confine block in the provider needs to be updated to evaluate Facter.value(:os)['family'] == 'Archlinux' instead of relying on operatingsystem, as the latter is currently failing to match the CachyOS string.
The confine block in the provider is clearly using operatingsystem => :archlinux, which causes the provider to fail silently on CachyOS because the facter value for os.name does not match. Can you confirm if changing the confine constraint to osfamily => :archlinux resolves the registration error without side effects for other Arch-based derivatives?
Activity
adding cachyos support - puppetlabs#9580
NuWhE3wn0D commentedon Jul 19, 2026
It seems like the provider's functionality is tied to the check on ['os']['name'] instead of ['os']['family'], as mentioned in the issue. Have you tried checking the output of
facter osto confirm the values returned for both ['os']['name'] and ['os']['family'] on your CachyOS system? This might provide insight into whether the provider logic needs adjustment to accommodate distributions that are Arch-based but not recognized as Archlinux specifically.erlenekalafo commentedon Aug 7, 2026
Have you tried checking the
facteroutput specifically for the['os']['family']value? If it’s not returning 'Archlinux', that may be the root of the issue. Additionally, look into thepacmanprovider code to see how it validates the provider on initialization—there might be a conditional check that’s not accounting for CachyOS correctly. It could also help to add some debug logging in the provider to see what values it's working with at runtime.rorieaniston26 commentedon Aug 18, 2026
It seems that the
pacmanprovider might not be recognizing CachyOS correctly due to how it checks the OS in its initialization. Have you looked at theinitializemethod in thepacmanprovider code? You might want to add some debug logging there to see what values are being processed for['os']['name']and['os']['family']when the provider loads. This could help identify if the verification logic needs adjustment to support CachyOS as it relates to the expected behavior.eliottramanda26 commentedon Aug 26, 2026
Looking at the
pacmanprovider implementation, it likely checksFacter.value(:operatingsystem)instead ofos.familyduring itsself.instancesorconfineblock validation. Since CachyOS reports its name asCachyOSrather thanArchlinux, the confine fails before reaching the installation step that throwsError: /Package[packagenamehere]: Provider pacman is not functional on this host. We should update the confinement inlib/puppet/provider/package/pacman.rbto useosfamily => :archlinuxor explicitly addCachyOSto theosatthishostlist. Could you paste the output offacter os.nameandfacter os.familyfrom your CachyOS host so we can verify the exact fact values?jadayaanaliah26 commentedon Aug 29, 2026
The
Provider pacman is not functional on this hosterror in 8.1.0 comes from the pacman provider's confine block matching against the operatingsystem fact instead of osfamily which CachyOS reports as Archlinux.gustavocastillo5 commentedon Sep 4, 2026
OS as part of the
Archlinuxfamily, the fix actually needs to happen in Facter's OSnaeemgwendlyn26 commentedon Sep 4, 2026
The
confineblock for thepacmanprovider likely restricts execution tooperatingsystem => Archlinux, so changing the constraint toosfamily => Archlinuxwithin the provider definition should resolve the registration failure on CachyOS.roberalani26 commentedon Sep 11, 2026
The current confine block in the pacman provider uses
Facter.value(:operatingsystem) == 'Archlinux', which is too restrictive for downstream distributions. To fix this, we should modify theconfinestatement to checkFacter.value(:osfamily) == 'Arch'instead, as this will correctly encompass both base Arch and CachyOS. Can you confirm if your local Facter output forosfamilyreturnsArchwhen runningfacter osfamilyon your CachyOS environment?tearsaalainah26 commentedon Sep 14, 2026
Archlinux
or addingcachyos(or better yet, switching to:osfamily => :darnellaakaisha26 commentedon Sep 17, 2026
The current confine block explicitly restricts the provider to
operatingsystem => Archlinux, which causes theProvider pacman is not functional on this hosterror on CachyOS despite the underlying package management being identical. Can you confirm if updating theconfineblock toosfamily => Archlinuxresolves the provider initialization without breaking compatibility for other Arch-based distributions?wideeyedmessa commentedon Oct 8, 2026
=> [:archlinux, :manjaro]
). * If we change the confine inRunogrin commentedon Oct 11, 2026
The
confineblock in the provider needs to be updated to evaluateFacter.value(:os)['family'] == 'Archlinux'instead of relying onoperatingsystem, as the latter is currently failing to match theCachyOSstring.melina-karleen commentedon Oct 23, 2026
The
confineblock in the provider is clearly usingoperatingsystem => :archlinux, which causes the provider to fail silently on CachyOS because the facter value foros.namedoes not match. Can you confirm if changing theconfineconstraint toosfamily => :archlinuxresolves the registration error without side effects for other Arch-based derivatives?beefyi6 commentedon Oct 25, 2026
workaround/PR change in
lib/puppet/provider/package/pacman.rb.*