A cross-platform Ruby library for retrieving facts from operating systems.
Supports multiple resolution mechanisms, any of which can be restricted to
working only on certain operating systems or environments. Facter is
especially useful for retrieving things like operating system names, IP
addresses, MAC addresses, and SSH keys.
*/*: Deprecate discontinued OSS Puppet components
As announced in the [2025Q4] status report, the legacy ports for Open
Source Puppet (which were abandonned by Perforce following the
aquisition of Puppetlabs), are now deprecated and scheduled for removal
in a few months.
Switching from Puppet to OpenVox is relatively straightforward: when
installing the replacement for a deprecated component, pkg(8) will
detect a conflict between the legacy component and the new one and will
prompt you to remove the deprecated package, which is the right course
of action.
For more details, refer to the [2025Q4] status report.
[2025Q4]: https://www.freebsd.org/status/report-2025-10-2025-12/#_openvox_puppet
With hat: puppet
sysutils/rubygem-facter: Fix with Ruby 3.4
base64 used to be a default gem, but starting with Ruby 3.4 it is not
anymore. Add this dependency explicitly to fix packages built with a
non-default version of Ruby.
Not bumping PORTREVISION as packages built against the default version
of Ruby have no issue and can wait for another reason to be rebuilt.
PR: 290261
Reported by: dvl
With hat: puppet
Mk/**ruby.mk: Switch from USE_RUBY=yes to USES=ruby
Switch from Mk/bsd.ruby.mk to Mk/Uses/ruby.mk
Notable changes are.
- Mk/bsd.ruby.mk is moved to Mk/Uses/ruby.mk.
- USE_RUBY=yes is replaced with USES=ruby.
- USE_RUBY_EXTCONF is replaced with USES=ruby:extconf.
- USE_RUBY_RDOC is replaced with USES=ruby:rdoc.
- USE_RUBY_SETUP is replaces with USES=ruby:setup.
- RUBY_NO_BUILD_DEPENDS and RUBY_NO_RUN_DEPENDS are replaced with
USES=ruby:{build,none,run}.
- RUBY_REQUIRE isn't used anywhere, so removed.
- USES=gem now implies USES=ruby.
This is mainly the work of yasu@ at https://reviews.freebsd.org/D27863
I have just made some cosmetic changes and ran exp-run to test that the
tree is not in a BROKEN state.
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D37925
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
sysutils/rubygem-facter: Add soft-dependencies
Some facts are only resolved when some extra gems are installed. Add
them as dependecy so that we have all basic facts by default regardless
of what is already installed on the system.
While here, reorder the Makefile to make portlint happy.
PR: 264277
Reported by: albert.shih@obspm.fr
With hat: puppet
sysutils: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <jsmith@resonatingmedia.com>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Landwehr <aaron@snaphat.com>
* Adam Weinberger <adamw@FreeBSD.org>
* Adrian Chadd
* Adrian Chadd <adrian@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alan Eldridge <alane@FreeBSD.org>
* Alan Eldridge <alane@geeksrus.net>
* Aldis Berjoza <aldis@bsdroot.lv>
* Alex Deiter <alex.deiter@gmail.com>
(Only the first 15 lines of the commit message are shown above )
Fix CONFLICTS entries of multiple ports
There have been lots of missing CONFLICTS_INSTALL entries, either
because conflicting ports were added without updating existing ports,
due to name changes of generated packages, due to mis-understanding
the format and semantics of the conflicts entries, or just due to
typoes in package names.
This patch is the result of a comparison of all files contained in
the official packages with each other. This comparison was based on
packages built with default options and may therefore have missed
further conflicts with optionally installed files.
Where possible, version numbers in conflicts entries have been
generalized, some times taking advantage of the fact that a port
(Only the first 15 lines of the commit message are shown above )
Add an explicit dependency on rubygem-ffi
Facter is able to operate without FFI support, but some FreeBSD facts depend on
FFI to be fetched, so add an explicit dependency in order to make sure the
following facts are resolvable:
* disks
* dmi
* load_averages
* memory.system
* partitions
* processors.count
* processors.models
* processors.speed
Bump PORTREVISION.
With hat: puppet
Add staticly named symlink to port-versioned directory
To be utilized by sysutils/puppetserver, here we add a symlink to point at the
gem directory. This allows puppetserver to use facter as a library without
knowing the version installed.
Approved by: swills(mentor), robak
Differential Revision: D13803
sysutils/rubygem-facter: add AWS EC2 facts option
On machines that are not running in AWS EC2 cloud running facter was
taking very long time trying to gather information that wasn't there.
This change adds an option allowing to disable such facts in similar manner
to ZFS related facts.
PR: 221552
Submitted by: pirzyk
Begin deorbit burn of ia64. We have not attempted to build packages for
it for many years.
While here, alphabetize ARCHs, pet portlint, and modernize usages.
Approved by: portmgr (tier-2 blanket)
create USES=gem and update rubygem- ports to use it
Note that for now ports still have to have USE_RUBY=yes to use USES=gem
PR: 209041
Differential Revision: https://reviews.freebsd.org/D6070
sysutils/rubygem-facter: fix ZFS_FACTS option
Adjust sed calls as r382631 changed the format of the generated file.
PR: 199477
Differential Revision: https://reviews.freebsd.org/D2497
Approved by: mat (mentor), robak (maintainer, timeout)
sysutils/rubygem-facter: fix build with ZFS_FACTS disabled
- Upstream changed the name of the gemspec to not include version number, this
change
is to accomodate to that change
PR: 199017
- Rename sysutils/facter to sysutils/rubygem-facter
- Update sysutils/rubygem-facter to 1.6.18
- Convert sysutils/rubygem-facter to utilize rubygem framework
- Update to new 'created by' header
- Add RG as additional MASTER_SITES for sysutils/rubygem-facter
- Update sysutils/puppet* RUN_DEPENDS due to rename of facter
- Bump PORTREVISION on sysutils/puppet* due to rename of facter
Approved by: Rouslan Iskhakov <rouslan@rshell.net> (maintainer)