aboutsummaryrefslogtreecommitdiff
path: root/release/packages
Commit message (Collapse)AuthorAgeFilesLines
* Retire GNU diff3Ed Maste18 hours1-15/+0
| | | | | | | | | | | | We added the option to build BSD diff3 in commit 2201f7c49f11 ("Build BSD diff3 if GNU diff3 is disabled.") and made it the default in 4d5c434ed16e ("diff3: use bsd diff3 by default") after resolving deficiencies relative to GNU diff3. Thus, we can now remove the GNU diff3 build infrastructure and source. Reviewed by: bapt, ziaee Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D46878
* zstd: Move to a new zstd packageLexi Winter2026-01-061-0/+30
| | | | | | | | | | | | | | | | | | Zstd is a discrete, self-contained system component. To match how we package zlib, bzip2 and xz, move it to its own package, with a separate lib package. Add the new package to the minimal set, since this is a core component that users expect to be installed. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53603
* libpam: Move to a new "pam" packageLexi Winter2025-11-101-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | OpenPAM is a discrete, largely self-contained system component. Users may not need PAM for many use-cases (e.g. jails, containers), so move it to its own package. Use LIB_PACKAGE to create a separate pam-lib package for libpam, so that applications that support PAM don't need to bring in all the PAM modules if PAM isn't actually in use. Add pam to the minimal sets, since this is a core system component that people expect to be installed. This means all supported installation methods will install the PAM modules by default, so don't add explicit dependencies on the PAM modules from things that use PAM (e.g. runtime), allowing custom/embedded systems to omit these easily. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: des, bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53602
* lib/googletest: Move to a new googletest packageLexi Winter2025-11-063-19/+53
| | | | | | | | | | | | | | | | | | | gtest/gmock are not normally used by users unless running the tests, so they shouldn't be in the utilities package. Move them to a new googletest package, to match what we did with ATF/Kyua. While here, move tests dependencies from tests-all.ucl to tests.ucl, which is the canonical place for that. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reported by: emaste Reviewed by: manu Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53607
* packages: Make set-base-dbg depend on set-optional-dbgLexi Winter2025-11-051-0/+3
| | | | | | | | | | | As set-base depends on set-optional, so should set-base-dbg depend on set-optional-dbg. Otherwise, people who install set-base-dbg will be missing a bunch of debug packages. MFC after: 1 day Reviewed by: emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53575
* zlib: Move to a new zlib packageLexi Winter2025-10-281-0/+32
| | | | | | | | | | | | | zlib is a standalone third-party component, and deserves its own package rather than living in runtime. For example, this will make future security updates less invasive. This also means there's no dependency on runtime for ports that just require zlib, which is useful for service jails. MFC after: 3 days Reviewed by: bapt, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53058
* packages: dhclient, local-unbound require resolvconfLexi Winter2025-10-262-0/+34
| | | | | | | | | | Both of these packages use resolvconf for various things. Add a dependency to make this work. MFC after: 3 days Reviewed by: des Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53115
* packages: Put dhclient in the minimal-jail setLexi Winter2025-10-261-1/+1
| | | | | | | | | | | This is somewhat widely used in VNET jails, it's fairly small (150kB on amd64) and it's enough of a core system component that it's reasonable to include, even if many jails don't require it. MFC after: 3 days Reviewed by: dch Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53154
* flua: Move to a new flua packageLexi Winter2025-10-264-0/+71
| | | | | | | | | | | | | | | flua is a standalone third-party component that deserves its own package. In particular, this means things can use flua without having to depend on FreeBSD-utilities, which will be useful as more base utilities use flua. This saves ~500kB in FreeBSD-utilities for systems which don't need flua. MFC after: 3 days Reviewed by: kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53161
* packages: Update the METALOG when (un)installing the caroot packageMark Johnston2025-10-221-2/+2
| | | | | | | | | There may be other issues here but this change certainly seems to be necessary. PR: 290394 Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D53263
* packages: Rename unbound to local-unboundLexi Winter2025-10-152-0/+27
| | | | | | | | | | | | | This more accurately reflects its purpose, and its contents, since everything in the package is prefixed with "local-". While here, add a message on upgrade about regenerating the config. MFC after: 3 seconds Requested by: des Reviewed by: des Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53056
* blocklist: Rename blacklist to blocklistJose Luis Duran2025-10-121-3/+5
| | | | | | | | | | | | | | | | | | Follow up upstream rename from blacklist to blocklist. - Old names and rc scripts are still valid, but emitting an ugly warning - Old firewall rules and anchor names should work, but emitting an ugly warning - Old MK_BLACKLIST* knobs are wired to the new ones Although care has been taken not to break current configurations, this is a large patch containing mostly duplicated code. If issues arise, it will be swiftly reverted. Reviewed by: ivy (pkgbase) Approved by: emaste (mentor) MFC after: 2 days Relnotes: yes
* release/packages/ucl: Fix typosLexi Winter2025-10-126-7/+7
| | | | | MFC after: 3 days Sponsored by: https://www.patreon.com/bsdivy
* generate-set-ucl.lua: Add missing copyright headerLexi Winter2025-10-081-0/+6
| | | | | | | This file was derived from generate-ucl.lua, so copy the existing header. MFC after: 3 days
* generate-ucl.lua: Add missing copyright headerLexi Winter2025-10-081-0/+6
| | | | | | | | | | Add a standard BSD license with a copyright claim for everyone who has modified this file since it was added, excluding users who explicitly declined attribution. MFC after: 3 days Reviewed by: ifreund_freebsdfoundation.org, imp, bapt, markj, emaste Differential Revision: https://reviews.freebsd.org/D52881
* packages: Set dependency origin in generate-ucl.luaLexi Winter2025-10-0826-40/+9
| | | | | | | | | | | | | | | | | | | | | | Commit 822fd5606748 changed the origin of packages from "base" to "base/<package name>", but the old origin was still used for dependencies. Aside from being wrong, this confuses pkg <= 2.3.1 and causes "pkg info -d" to show the dependencies as "<pkgname>-(null)" instead of the correct version string. Remove the explicit origin from dependencies in the UCL files, and instead populate this during the build in generate-ucl.lua. In the (very unlikely) case that an explicit origin is still needed, don't overwrite one if it's already present. MFC after: 1 day Fixes: 822fd5606748 ("pkgbase: set origin for each packages as base/FreeBSD-*") Reported by: bapt Reviewed by: cperciva, bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52892
* ncurses: Move to the minimal setLexi Winter2025-10-081-0/+4
| | | | | | | MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52950
* release: packages: Fix grammar in pkg descriptionJose Luis Duran2025-10-061-1/+1
| | | | | | | Reported by: ivy Approved by: emaste (mentor) MFC after: 1 hour Differential Revision: https://reviews.freebsd.org/D52917
* release: packages: Fix typosJose Luis Duran2025-10-058-9/+9
| | | | | | | Reviewed by: cperciva Approved by: emaste (mentor) MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D52917
* create-sets.sh: Add missing copyright headerLexi Winter2025-10-031-0/+16
| | | | | | | I wrote this file and am the only person who has modified it since it was added. MFC after: 3 days
* packages: Add a sound packageLexi Winter2025-10-021-0/+42
| | | | | | | | | | | | | | | Put virtual_oss, /etc/devd/snd.conf and the other audio-related tools into a new "sound" package. Don't create a separate -lib package, since it's unlikely someone will want mixer(3) without mixer(8). Put the sound package in the optional set rather than minimal, since it's not actually required for audio hardware support, and many systems (including nearly all servers) won't want it installed. MFC after: 3 seconds Reviewed by: christos Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52823
* diff3: Move to own packageEd Maste2025-10-011-0/+15
| | | | | | | | | diff3 is the last remaining GPL-licensed userland component. Move it to its own package, so that it may be excluded if desired. Reviewed by: ivy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52810
* packages: remove ncurses-all license textKyle Evans2025-09-301-22/+2
| | | | | | | | | The "Software" line in the license text seems to trip some kind of UCL parsing bug. Replace it with an SPDX tag and a pointer to the file for the time being. Reported by: fluffy, madpilot Fixes: 06afa0a55e0ac ("pkgbase: move ncurses into its own package")
* pkgbase: move ncurses into its own packageKyle Evans2025-09-301-0/+39
| | | | | | | | | | | | | | | | | | Pushing ncurses into clibs adds extra upgrade risk to a package that otherwise consists of integral libs with non-trivial interdependencies. Adding it to -runtime was considered, but the move was historically motivated to some extent by allowing a much smaller set of base libs to be installed for smaller VM images that don't really need all of the runtime package. This also fixes the ncurses build to ensure that libmenuw is grouped with the rest of the ncurses libraries, which doesn't seem to have been an intentional omission. Reviewed by: ivy MFC after: 2 days (pkgbase movement) Differential Revision: https://reviews.freebsd.org/D52786
* package: Use correct license for clangLexi Winter2025-09-301-1/+1
| | | | | | | | | LLVM was relicensed under Apache 2.0 with LLVM exception a while ago. MFC after: 1 day Reviewed by: bapt, imp (previous version) Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D51769
* packages: Move ctf-tools to ctfLexi Winter2025-09-301-2/+3
| | | | | | | | | | | | | | Remove the ctf-tools package. Add a new package which contains the previous contents of ctf-tools along with libctf. This removes CDDL-licensed code from the utilities package. Set LIB_PACKAGE for libctf so that DTrace runtime doesn't need to install the tools. MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52776
* libstdbuf: Move to the utilities packageLexi Winter2025-09-301-39/+0
| | | | | | | | | | | | This is a niche tool which is only useful in a small number of specific situations. It's very small (8kB), and the executable component /usr/bin/stdbuf is already in -utilities, so move the shlib to -utilities as well. MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52788
* libbsm: Rename package to audit-libLexi Winter2025-09-301-40/+0
| | | | | | | | | | This is part of audit, so use the new LIB_PACKAGE feature to name the package audit-lib, rather than libbsm. MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52789
* packages: Rename liblzma package to xzLexi Winter2025-09-301-3/+4
| | | | | | | | | | Rename liblzma to xz, and use LIB_PACKAGE to create an xz-lib package for runtime libraries. MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52791
* libstdthreads: Move to the runtime packageLexi Winter2025-09-301-28/+0
| | | | | | | | | | | | | | This library is required for C11 conformance, and is tiny (11kB), so instead of creating a bunch of packages for it, put it in runtime. Although this is a core C library and might be expected to live in clibs, kib objected to this on the basis that almost nothing actually uses libstdthreads and putting it in clibs would be wasteful. MFC after: 1 day Reviewed by: kib Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52792
* liby: Move to toolchain packageLexi Winter2025-09-301-28/+0
| | | | | | | | | | | We don't need an entire package for this trivial library. Move it to toolchain, which in practice means it's installed in toolchain-dev as it only contains a static library. MFC after: 1 day Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52793
* create-sets.sh: Always build the base setsLexi Winter2025-09-301-0/+4
| | | | | | | | | | Since all packages were moved to the optional set, no packages are directly in the base sets, which means nothing caused the base sets to be built. Add the base sets to create-sets.sh so they're always built. Fixes: eaecc9551ae4 ("packages: Add an "optional" set") MFC after: 1 day
* packages: Add an "optional" setLexi Winter2025-09-2996-74/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | This is everything in "base" but without compilers. This means we have sets to support four basic workloads: - "minimal" for a small installation where the user intends to add other packages by hand. - "optional" for a complete installation on a production system which does not need to compile software. - "devel", which can be added to either minimal or optional when compilers are required. - "base" for a complete installation, including compilers, for users who don't want to interact with pkgbase and just want the complete system installed like it was before. This is probably the last set want to add; any further metapackages would be better treated as "task" packages intended to target one specific workload. MFC after: 3 days Reviewed by: cperciva, bapt Differential Revision: https://reviews.freebsd.org/D52777
* packages: Add kernel-man to minimal-jailLexi Winter2025-09-281-1/+1
| | | | | | | | | These manpages are broadly applicable to all systems, even jails, since they describe kernel facilities which are available in jails. MFC after: 3 days Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52743
* packages: Add efi-tools to set-minimalLexi Winter2025-09-281-0/+4
| | | | | | | | | This is required to manage the firmware on amd64 and aarch64 systems. MFC after: 3 days Reviewed by: imp, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52742
* packages: Add a base-jail setLexi Winter2025-09-2588-14/+611
| | | | | | | | | | | | | | | | | | | | | | | | | | This is base, but without packages which are not generally useful in jails. The following packages are excluded: * Support for hardware not present in a jail: acpi, apm, bluetooth, ccdconfig, console-tools, cxgbe-tools, efi-tools, fd, hostapd, mlx-tools, nvme-tools, wpa * Kernel facilities that don't work in a jail: dtrace, dwatch, ggate, hast, iscsi, libcuse, smbutils All library packages are included in base-jail, even if they might not work, because the user may have executables linked with them. While here, remove the set-minimal dependency from set-devel, since this will cause unnecessary packages to be installed in jails. This means users will need to install set-devel in addition to their base set (minimal or base), which bsdinstall already handles correctly. Add a license to all the set UCL files, so people can redistribute them. MFC after: 6 hours Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D52719
* packages: Remove inetd from the minimal setLexi Winter2025-09-251-4/+0
| | | | | | | | | | Although inetd is widely used, none of the base daemons which require or support inetd (e.g. fingerd, tftpd, sshd) are in the minimal set, and it's fairly uncommon to enable inetd's built-in servers nowadays. MFC after: 6 hours Reviewed by: manu, bapt, emaste Differential Revision: https://reviews.freebsd.org/D52715
* packages: Add descriptions for all packagesLexi Winter2025-09-24138-182/+3403
| | | | | | | | | | | | | | | | | | | | | | Provide at least a basic description of every package we build. Where possible, the description is taken from a relevant manpage; when there was no suitable text in the manpage, I wrote a new description. Since the UCL files now contain a significant amount of English prose which is almost certainly subject to copyright in at least some jurisdictions, add a copyright header to every file. Where the text was taken from a manpage, the copyright and license are also taken from the manpage. A few files don't have copyright headers added because the origin of the text is unclear, or because the files were written by someone else. While here, remove some orphaned UCL files for packages we no longer ship. MFC after: 1 day Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52690
* packages: Add some missing dependenciesLexi Winter2025-09-246-0/+165
| | | | | | | | | | | | | | | | | | | | * at requires cron, since atrun is started by cron and won't work without it, and also requires runtime because at runs jobs under /bin/sh. * bluetooth requires ppp for rfcomm_pppd (a very common use case). * bsdconfig and bsdinstall are written in shell script and therefore require /bin/sh. * devd requires /bin/sh to invoke its hooks. While here, document the policy for adding dependencies in the README. This will hopefully ensure we end up with consistent dependencies. MFC after: 1 day Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52699
* packages: Add a dependency from -rc to -runtimeLexi Winter2025-09-231-0/+25
| | | | | | | | | | | rc(8), as well as rc scripts themselves, require /bin/sh and basic shell utilities to work. Currently -rc has an implicit dependency on -runtime because of libutil, but this might change in the future if libutil were moved to a different package. Add an explicit dep to ensure -runtime is installed. MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D52654
* packages: Add devd to the minimal-jail setLexi Winter2025-09-231-3/+34
| | | | | | | | | | | | | I didn't add this originally since many jails don't require devd, but it's very small (~90kB) and has no dependencies other than clibs and runtime, so we may as well include it for parity between minimal and minimal-jail. While here, improve the package description. Requested by: imp MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D52679
* packages: Replace libbz2 package with a bzip2 packageLexi Winter2025-09-233-5/+19
| | | | | | | | | | | | | | Currently libbz2 is in the libbz2 package, while bzip2 itself is in -utilities, which is inconsistent. Move both the library and the utility to a new -bzip2 package, and use LIB_PACKAGE to create a separate -bzip2-lib package for runtime dependencies. Add the bzip2 package to the minimal set, and since newsyslogd uses bzip2 for logfile compression, add a dependency from there. MFC after: 1 day Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D52663
* libpmc: Move libpmc and utils to a new pmc packageLexi Winter2025-09-231-0/+12
| | | | | | | | | Due to the size of libpmc.so.5, this reduces the size of the -utilities package by 10%. MFC after: 1 day Reviewed by: manu, adrian, emaste Differential Revision: https://reviews.freebsd.org/D52662
* packages: Move powerd to its own packageLexi Winter2025-09-231-0/+11
| | | | | | | | | | | | Nearly everyone wants powerd to manage CPU frequency scaling on real hardware, even if -utilities isn't installed. Conversely, very small jails might want -utilities but don't need powerd. Move it to its own package and add it to the minimal set. MFC after: 1 day Reviewed by: manu, imp Differential Revision: https://reviews.freebsd.org/D52645
* pkgbase: set origin for each packages as base/FreeBSD-*Baptiste Daroussin2025-09-231-2/+1
| | | | | | MFC After: 3 day Reviewed by: ivy Differential Revision: https://reviews.freebsd.org/D52689
* packages: Add a mandoc packageLexi Winter2025-09-181-0/+11
| | | | | | | | | | | | | | | | Move mandoc to its own package so users can install it independently of -utilities. Put the package in the minimal set, since we also ship manpages in minimal and "man" is a basic Unix utility. Add a pkg-triggers(5) hook to run makewhatis when new manpages are installed, so that apropos(1) works. This depends on a new pkg(8) feature expected to be in in the upcoming 2.3.2 release; in the mean time, this is a no-op (i.e., having an older pkg doesn't break anything, it just won't run the trigger). MFC after: 3 seconds Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52564
* packages: Remove the tests-dev packageLexi Winter2025-09-183-2/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't want a tests-dev package, because this means set-devel depends on tests-dev, which transitively depends on tests, which means you can't install set-devel without also getting tests. The only real "dev" files in tests-dev are from ATF (libprivateatf), so move that to its own package and add a dependency from tests. Also move Kyua to its own package, since this might be useful for running tests even when the user doesn't want the whole set of base tests installed. Add a dependency from -tests to both -atf and -kyua, and a dependency on -set-base, since the tests won't work without the full base system installed. The remaining "dev" files in tests are actually test artifacts, not real development libraries. Add a new NO_DEV_PACKAGE option to bsd.lib.mk, which causes dev files to be installed in the base package instead of creating a -dev package, and set this option for everything that installs test libraries. While here, add a slightly more informative description for the tests package. MFC after: 3 seconds Reviewed by: bapt, emaste Differential Revision: https://reviews.freebsd.org/D52597
* packages: Move kernel-man to the minimal setLexi Winter2025-09-171-0/+5
| | | | | | | | | | | | | | Currently this is in the "kernels" set, which doesn't make sense because it's not a kernel. Move it to the "minimal" set, on the basis that minimal already includes a bunch of manpages, and a user who installs with minimal expects that e.g. "man ix" will work. MFC after: 3 seconds Reported by: des Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52560
* packages: Mark all sets as vitalLexi Winter2025-09-178-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | At least "minimal" must be vital, because it's required for a functional system. For example, we might create new packages in the future which are required for the multi-user system and are part of the minimal set, so it's important that users don't remove set-minimal to ensure they get those new packages. For the other sets, it's debatable whether they should be vital or not, but let's start out with the assumption that if the user installed a set, they should have to have to explicit request it be removed. This means if, for example, they install set-devel, then remove lldb, pkg won't remove set-devel and cause the next "pkg autoremove" to remove everything else that was in set-devel. We might want to adjust this later (or possibly adjust the behaviour of pkg(8) itself) based on user feedback. While here, fix a typo in the description of the devel set. Suggested by: bapt MFC after: 3 seconds Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D52562
* packages: Add minimal-jail setLexi Winter2025-09-1721-33/+54
| | | | | | | | | | | | This is minimal, but without bootloader, hardware and networking support that's typically not required in jails. This requires extending the 'set' annotation to be a comma-separated list, so that packages can be in multiple sets. MFC after: 3 seconds Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D52591