Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Feb 2026 18:41:09 +0300
From:      Anthony Pankov <anthony.pankov@yahoo.com>
To:        hackee <h4ckee@proton.me>
Cc:        "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>
Subject:   Re: FreBSD pkgbase vs distsets.
Message-ID:  <5998818.20260209184109@yahoo.com>
In-Reply-To: <RGjih_vAIp-uvrtrphaK_DBKCLoDQBDIJBjg5FAJm_elUPJmkIGcpzjo84eA1Rf73FEqFxXoqsj4xASxB1d4e_lCy5mRxJEXia25_soPQlo=@proton.me>
References:  <0iqhe92aheNJohSnhh8-hXkXhQsaRG4D64nLTlTSIPgd6Iit07IwlMwmn-mIS-Qtp9KuZElphybTlYDIVTUDcVGpHWaUbQVGPKt53NSL5Jg=@proton.me>  <1678741437.20260206163514@yahoo.com> <RGjih_vAIp-uvrtrphaK_DBKCLoDQBDIJBjg5FAJm_elUPJmkIGcpzjo84eA1Rf73FEqFxXoqsj4xASxB1d4e_lCy5mRxJEXia25_soPQlo=@proton.me>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Hello, 


On 7 февраля 2026 г., 13:54:14 you wrote:

> At the moment I'm using the code present in Makefiles which allows dissets to be assembled and packaged and placed into a filesystem which is then wrapped into an ISO image. If this code is removed, I will have to spend a lot of time redoing much of my project's code.

Your buildway now is something like:

1. patch source (variant A)
2. make build...
3. make installworld/kernel to xxx/prepared-system 
4. make iso from prepared-system

if I understand correctly.

First of all I don't think that 'installworld' will gone in FreeBSD-16.

With basepkg it will transform to something:

1. patch source (variant B)
2. make build...
3. make update-packages REPODIR=/var/some/bpkg
4. pkg add -r xxx/prepared-system /var/some/bpkg/Y
5. make iso from prepared-system

You will populate prepared-system directory by executing pkg, not by installworld/kernel.
For now pkg really(!) work from local dir repositories. You do not need to setup any sftp/http servers over it.

As for me I construct xxx/prepared-system by:
a) install basepackages;
b) install normal packages;
c) shaping it by placing new files and modifying existing for special needs (really, just 'cp -rf myfiles/* xxx/prepared-systems')

Base packages installed from what you get on step 3. Normal packages are from poudriere created repository.

As for your source patches (variant B) its will be changed because of new concept.
You do not need to exclude from building things that you do not want. Just do not install its on step 4.

I use plists (package lists) for specifying what to install.

In attachement you will see 
full14pblist.txt - base packages maked by buildworld/update-packages.
baseP1.plist.txt - base packages for system on VPS with special kernel VPS.
hostP1.plist.txt - normal packages to be installed

I have a small script that install each line of this list in specified dir.
So I do something like:

./instpkgs -r prepared-system -b 14 -f basepkgs/nehalem/FreeBSD:14:amd64/latest baseP1.plist.txt
./instpkgs -r prepared-system -f /usr/local/poudriere/data/packages/nehalem/host14 hostP1.plist.txt

Then prepared-system directory contain ready to use system.

I think you catch the idea.



> пятница, 6 февраля 2026 г., 1:35 ПП, Anthony Pankov <anthony.pankov@yahoo.com> написал:

>> Hello hackee,
>> 
>> Friday, February 6, 2026, 4:06:36 PM, you wrote:
>> 
>> > Hello guys!
>> 
>> > As far as I understand, FreeBSD 16 is planned to drop distsets support and move entirely to pkgbase. I am writing to ask you to reconsider this decision.
>> > I maintain a small FreeBSD-based project for my own hardware ( for amd64 platform, code can be seen here: https://github.com/h4ckee/CoreBSD ), that depends heavily on distsets, and migrating it to a pkgbase-only model would be highly inconvenient. I build custom compact ISO image based on that code. My equipment is for personal use, laptops and a server, but I'm hoping to create a small storage solution based on the compact FreeBSD distribution and may use it on my employer's equipment. There are also other companies and projects that use FreeBSD to build their own distributions—such as appliances and embedded systems—that similarly rely on distsets. I would like to propose keeping distsets intact while continuing to offer pkgbase as an alternative for those who wish to use it, in the same way it is done in the FreeBSD 15 release. I hope you will consider this request favorably.
>> 
>> 
>> Can you describe more precisely what you are worry about? As of https://github.com/h4ckee/CoreBSD you build your system from sources and I don't fully understand what can prevent you to do the same later.
>> 
>> 
>> --
>> Best regards,
>> Anthony Pankov



-- 
Best regards,
 Anthony Pankov                          mailto:anthony.pankov@yahoo.com
[-- Attachment #2 --]
FreeBSD-acct
FreeBSD-acct-dbg
FreeBSD-acct-man
FreeBSD-acpi
FreeBSD-acpi-dbg
FreeBSD-acpi-man
FreeBSD-apm
FreeBSD-apm-dbg
FreeBSD-apm-man
FreeBSD-at
FreeBSD-at-dbg
FreeBSD-at-man
FreeBSD-autofs
FreeBSD-autofs-dbg
FreeBSD-autofs-man
FreeBSD-bhyve
FreeBSD-bhyve-dbg
FreeBSD-bhyve-man
FreeBSD-blocklist
FreeBSD-blocklist-dbg
FreeBSD-blocklist-dev
FreeBSD-blocklist-man
FreeBSD-bluetooth
FreeBSD-bluetooth-dbg
FreeBSD-bluetooth-dev
FreeBSD-bluetooth-man
FreeBSD-bootloader
FreeBSD-bootloader-dev
FreeBSD-bsnmp
FreeBSD-bsnmp-dbg
FreeBSD-bsnmp-dev
FreeBSD-bsnmp-man
FreeBSD-caroot
FreeBSD-ccdconfig
FreeBSD-ccdconfig-dbg
FreeBSD-ccdconfig-man
FreeBSD-certctl
FreeBSD-certctl-man
FreeBSD-clang
FreeBSD-clang-dbg
FreeBSD-clang-dev
FreeBSD-clang-man
FreeBSD-clibs
FreeBSD-clibs-dbg
FreeBSD-clibs-dev
FreeBSD-clibs-man
FreeBSD-console-tools
FreeBSD-csh
FreeBSD-csh-dbg
FreeBSD-csh-man
FreeBSD-ctf-tools
FreeBSD-ctf-tools-dbg
FreeBSD-ctf-tools-man
FreeBSD-cxgbe-tools
FreeBSD-cxgbe-tools-dbg
FreeBSD-cxgbe-tools-man
FreeBSD-devd
FreeBSD-devd-dbg
FreeBSD-devd-man
FreeBSD-devmatch
FreeBSD-devmatch-dbg
FreeBSD-devmatch-dev
FreeBSD-devmatch-man
FreeBSD-dhclient
FreeBSD-dhclient-dbg
FreeBSD-dhclient-man
FreeBSD-dma
FreeBSD-dma-dbg
FreeBSD-dma-man
FreeBSD-dpv
FreeBSD-dpv-dbg
FreeBSD-dpv-dev
FreeBSD-dpv-man
FreeBSD-dtrace
FreeBSD-dtrace-dbg
FreeBSD-dtrace-dev
FreeBSD-dtrace-man
FreeBSD-dwatch
FreeBSD-dwatch-man
FreeBSD-ee
FreeBSD-ee-dbg
FreeBSD-ee-man
FreeBSD-efi-tools
FreeBSD-efi-tools-dbg
FreeBSD-efi-tools-dev
FreeBSD-efi-tools-man
FreeBSD-elftoolchain
FreeBSD-elftoolchain-dbg
FreeBSD-elftoolchain-man
FreeBSD-fetch
FreeBSD-fetch-dbg
FreeBSD-fetch-dev
FreeBSD-fetch-man
FreeBSD-ftp
FreeBSD-ftp-dbg
FreeBSD-ftp-man
FreeBSD-ftpd
FreeBSD-ftpd-dbg
FreeBSD-ftpd-man
FreeBSD-fwget
FreeBSD-fwget-man
FreeBSD-geom
FreeBSD-geom-dbg
FreeBSD-geom-man
FreeBSD-ggate
FreeBSD-ggate-dbg
FreeBSD-ggate-man
FreeBSD-hostapd
FreeBSD-hostapd-dbg
FreeBSD-hostapd-man
FreeBSD-hyperv-tools
FreeBSD-inetd
FreeBSD-inetd-dbg
FreeBSD-inetd-man
FreeBSD-ipf
FreeBSD-ipf-dbg
FreeBSD-ipf-man
FreeBSD-ipfw
FreeBSD-ipfw-dbg
FreeBSD-ipfw-man
FreeBSD-iscsi
FreeBSD-iscsi-dbg
FreeBSD-iscsi-man
FreeBSD-jail
FreeBSD-jail-dbg
FreeBSD-jail-man
FreeBSD-kerberos
FreeBSD-kerberos-dbg
FreeBSD-kerberos-lib
FreeBSD-kerberos-lib-dbg
FreeBSD-kerberos-lib-dev
FreeBSD-kerberos-lib-man
FreeBSD-kerberos-man
FreeBSD-kernel-generic
FreeBSD-kernel-generic-dbg
FreeBSD-lib9p
FreeBSD-lib9p-dbg
FreeBSD-lib9p-dev
FreeBSD-libarchive
FreeBSD-libarchive-dbg
FreeBSD-libarchive-dev
FreeBSD-libarchive-man
FreeBSD-libbegemot
FreeBSD-libbegemot-dbg
FreeBSD-libbegemot-dev
FreeBSD-libbegemot-man
FreeBSD-libblocksruntime
FreeBSD-libblocksruntime-dbg
FreeBSD-libblocksruntime-dev
FreeBSD-libbsdstat
FreeBSD-libbsdstat-dbg
FreeBSD-libbsdstat-dev
FreeBSD-libbsm
FreeBSD-libbsm-dbg
FreeBSD-libbsm-dev
FreeBSD-libbsm-man
FreeBSD-libbz2
FreeBSD-libbz2-dbg
FreeBSD-libbz2-dev
FreeBSD-libcasper
FreeBSD-libcasper-dbg
FreeBSD-libcasper-dev
FreeBSD-libcasper-man
FreeBSD-libcompat-dev
FreeBSD-libcompat-man
FreeBSD-libcompiler_rt-dev
FreeBSD-libcuse
FreeBSD-libcuse-dbg
FreeBSD-libcuse-dev
FreeBSD-libcuse-man
FreeBSD-libdwarf
FreeBSD-libdwarf-dbg
FreeBSD-libdwarf-dev
FreeBSD-libdwarf-man
FreeBSD-libevent1
FreeBSD-libevent1-dbg
FreeBSD-libevent1-dev
FreeBSD-libexecinfo
FreeBSD-libexecinfo-dbg
FreeBSD-libexecinfo-dev
FreeBSD-libexecinfo-man
FreeBSD-libipt
FreeBSD-libipt-dbg
FreeBSD-libipt-dev
FreeBSD-libldns
FreeBSD-libldns-dbg
FreeBSD-libldns-dev
FreeBSD-liblzma
FreeBSD-liblzma-dbg
FreeBSD-liblzma-dev
FreeBSD-libmagic
FreeBSD-libmagic-dbg
FreeBSD-libmagic-dev
FreeBSD-libmagic-man
FreeBSD-libpathconv
FreeBSD-libpathconv-dbg
FreeBSD-libpathconv-dev
FreeBSD-libpathconv-man
FreeBSD-librpcsec_gss
FreeBSD-librpcsec_gss-dbg
FreeBSD-librpcsec_gss-dev
FreeBSD-librpcsec_gss-man
FreeBSD-librss
FreeBSD-librss-dbg
FreeBSD-librss-dev
FreeBSD-libsdp
FreeBSD-libsdp-dbg
FreeBSD-libsdp-dev
FreeBSD-libsdp-man
FreeBSD-libsqlite3
FreeBSD-libsqlite3-dbg
FreeBSD-libsqlite3-dev
FreeBSD-libstdbuf
FreeBSD-libstdbuf-dbg
FreeBSD-libstdbuf-dev
FreeBSD-libstdbuf-man
FreeBSD-libstdthreads
FreeBSD-libstdthreads-dbg
FreeBSD-libstdthreads-dev
FreeBSD-libstdthreads-man
FreeBSD-libthread_db
FreeBSD-libthread_db-dbg
FreeBSD-libthread_db-dev
FreeBSD-libucl
FreeBSD-libucl-dbg
FreeBSD-libucl-dev
FreeBSD-libucl-man
FreeBSD-libvgl
FreeBSD-libvgl-dbg
FreeBSD-libvgl-dev
FreeBSD-libvgl-man
FreeBSD-libvmmapi
FreeBSD-libvmmapi-dbg
FreeBSD-libvmmapi-dev
FreeBSD-liby-dev
FreeBSD-libyaml
FreeBSD-libyaml-dbg
FreeBSD-libyaml-dev
FreeBSD-lld
FreeBSD-lld-dbg
FreeBSD-lld-man
FreeBSD-lldb
FreeBSD-lldb-dbg
FreeBSD-lldb-dev
FreeBSD-lldb-man
FreeBSD-locales
FreeBSD-mlx-tools
FreeBSD-mlx-tools-dbg
FreeBSD-mlx-tools-man
FreeBSD-mtree
FreeBSD-mtree-dbg
FreeBSD-mtree-man
FreeBSD-natd
FreeBSD-natd-dbg
FreeBSD-natd-dev
FreeBSD-natd-man
FreeBSD-netmap
FreeBSD-netmap-dbg
FreeBSD-netmap-dev
FreeBSD-netmap-man
FreeBSD-newsyslog
FreeBSD-newsyslog-dbg
FreeBSD-newsyslog-man
FreeBSD-nfs
FreeBSD-nfs-dbg
FreeBSD-nfs-man
FreeBSD-nuageinit
FreeBSD-nuageinit-man
FreeBSD-nvme-tools
FreeBSD-nvme-tools-dbg
FreeBSD-nvme-tools-man
FreeBSD-openssl
FreeBSD-openssl-dbg
FreeBSD-openssl-lib
FreeBSD-openssl-lib-dbg
FreeBSD-openssl-lib-dev
FreeBSD-openssl-lib-man
FreeBSD-openssl-man
FreeBSD-periodic
FreeBSD-periodic-man
FreeBSD-pf
FreeBSD-pf-dbg
FreeBSD-pf-dev
FreeBSD-pf-man
FreeBSD-pkg-bootstrap
FreeBSD-pkg-bootstrap-dbg
FreeBSD-pkg-bootstrap-man
FreeBSD-ppp
FreeBSD-ppp-dbg
FreeBSD-ppp-man
FreeBSD-quotacheck
FreeBSD-quotacheck-dbg
FreeBSD-quotacheck-man
FreeBSD-rc
FreeBSD-rc-dbg
FreeBSD-rc-man
FreeBSD-rcmds
FreeBSD-rcmds-dbg
FreeBSD-rcmds-man
FreeBSD-rdma
FreeBSD-rdma-dbg
FreeBSD-rdma-man
FreeBSD-rescue
FreeBSD-resolvconf
FreeBSD-resolvconf-man
FreeBSD-runtime
FreeBSD-runtime-dbg
FreeBSD-runtime-dev
FreeBSD-runtime-man
FreeBSD-sendmail
FreeBSD-sendmail-dbg
FreeBSD-sendmail-dev
FreeBSD-sendmail-man
FreeBSD-smbutils
FreeBSD-smbutils-dbg
FreeBSD-smbutils-dev
FreeBSD-smbutils-man
FreeBSD-src
FreeBSD-src-sys
FreeBSD-ssh
FreeBSD-ssh-dbg
FreeBSD-ssh-dev
FreeBSD-ssh-man
FreeBSD-syscons-data
FreeBSD-syslogd
FreeBSD-syslogd-dbg
FreeBSD-syslogd-man
FreeBSD-tcpd
FreeBSD-tcpd-dbg
FreeBSD-tcpd-dev
FreeBSD-tcpd-man
FreeBSD-telnet
FreeBSD-telnet-dbg
FreeBSD-telnet-man
FreeBSD-tests
FreeBSD-ufs
FreeBSD-ufs-dbg
FreeBSD-ufs-dev
FreeBSD-ufs-man
FreeBSD-unbound
FreeBSD-unbound-dbg
FreeBSD-unbound-dev
FreeBSD-unbound-man
FreeBSD-utilities
FreeBSD-utilities-dbg
FreeBSD-utilities-dev
FreeBSD-utilities-man
FreeBSD-vi
FreeBSD-vi-dbg
FreeBSD-vi-man
FreeBSD-vt-data
FreeBSD-wpa
FreeBSD-wpa-dbg
FreeBSD-wpa-man
FreeBSD-yp
FreeBSD-yp-dbg
FreeBSD-yp-man
FreeBSD-zfs
FreeBSD-zfs-dbg
FreeBSD-zfs-dev
FreeBSD-zfs-man
FreeBSD-zoneinfo

[-- Attachment #3 --]
# for base VPS system
# using VPS kernel
#- without (as usual):
# bhyve-*
# *-dbg
# *-dev 
# sendmail
# yp
# src
# unbound (will use unbound from ports)
# tests
#---
#- without :
# bhyve
# acpi
# clang
# caroot
# certctl
# bluetooth
# wpa
# apm
# smbutils
# kerberos
#- device related:
# mlx

FreeBSD-kernel-vps

# required for sshd
FreeBSD-kerberos-lib

FreeBSD-acct
FreeBSD-acct-man
FreeBSD-acpi
FreeBSD-acpi-man
FreeBSD-at
FreeBSD-at-man
FreeBSD-autofs
FreeBSD-autofs-man
FreeBSD-blocklist
FreeBSD-blocklist-man
FreeBSD-bootloader
FreeBSD-bsnmp
FreeBSD-bsnmp-man
FreeBSD-ccdconfig
FreeBSD-ccdconfig-man
FreeBSD-clibs
FreeBSD-clibs-man
FreeBSD-console-tools
FreeBSD-csh
FreeBSD-csh-man
FreeBSD-ctf-tools
FreeBSD-ctf-tools-man
FreeBSD-cxgbe-tools
FreeBSD-cxgbe-tools-man
FreeBSD-devd
FreeBSD-devd-man
FreeBSD-devmatch
FreeBSD-devmatch-man
FreeBSD-dhclient
FreeBSD-dhclient-man
FreeBSD-dma
FreeBSD-dpv
FreeBSD-dpv-man
FreeBSD-dtrace
FreeBSD-dtrace-man
FreeBSD-dwatch
FreeBSD-dwatch-man
FreeBSD-ee
FreeBSD-ee-man
FreeBSD-efi-tools
FreeBSD-efi-tools-man
FreeBSD-elftoolchain
FreeBSD-elftoolchain-man
FreeBSD-fetch
FreeBSD-fetch-man
FreeBSD-ftp
FreeBSD-ftp-man
FreeBSD-ftpd
FreeBSD-ftpd-man
FreeBSD-fwget
FreeBSD-fwget-man
FreeBSD-geom
FreeBSD-geom-man
FreeBSD-ggate
FreeBSD-ggate-man
FreeBSD-hyperv-tools
FreeBSD-inetd
FreeBSD-inetd-man
FreeBSD-ipf
FreeBSD-ipf-man
FreeBSD-ipfw
FreeBSD-ipfw-man
FreeBSD-iscsi
FreeBSD-iscsi-man
FreeBSD-jail
FreeBSD-jail-man
FreeBSD-lib9p
FreeBSD-libarchive
FreeBSD-libarchive-man
FreeBSD-libbegemot
FreeBSD-libbegemot-man
FreeBSD-libblocksruntime
FreeBSD-libbsdstat
FreeBSD-libbsm
FreeBSD-libbsm-man
FreeBSD-libbz2
FreeBSD-libcasper
FreeBSD-libcasper-man
FreeBSD-libcompat-man
FreeBSD-libcuse
FreeBSD-libcuse-man
FreeBSD-libdwarf
FreeBSD-libdwarf-man
FreeBSD-libevent1
FreeBSD-libexecinfo
FreeBSD-libexecinfo-man
FreeBSD-libipt
FreeBSD-libldns
FreeBSD-liblzma
FreeBSD-libmagic
FreeBSD-libmagic-man
FreeBSD-libpathconv
FreeBSD-libpathconv-man
FreeBSD-librpcsec_gss
FreeBSD-librpcsec_gss-man
FreeBSD-librss
FreeBSD-libsqlite3
FreeBSD-libstdbuf
FreeBSD-libstdbuf-man
FreeBSD-libstdthreads
FreeBSD-libstdthreads-man
FreeBSD-libthread_db
FreeBSD-libucl
FreeBSD-libucl-man
FreeBSD-libvgl
FreeBSD-libvgl-man
FreeBSD-libvmmapi
FreeBSD-libyaml
FreeBSD-lld
FreeBSD-lld-man
FreeBSD-lldb
FreeBSD-lldb-man
FreeBSD-locales
FreeBSD-mtree
FreeBSD-mtree-man
FreeBSD-natd
FreeBSD-natd-man
FreeBSD-netmap
FreeBSD-netmap-man
FreeBSD-newsyslog
FreeBSD-newsyslog-man
FreeBSD-nfs
FreeBSD-nfs-man
FreeBSD-nuageinit
FreeBSD-nuageinit-man
FreeBSD-nvme-tools
FreeBSD-nvme-tools-man
FreeBSD-openssl
FreeBSD-openssl-lib
FreeBSD-openssl-lib-man
FreeBSD-openssl-man
FreeBSD-periodic
FreeBSD-periodic-man
FreeBSD-pf
FreeBSD-pf-man
FreeBSD-pkg-bootstrap
FreeBSD-pkg-bootstrap-man
FreeBSD-ppp
FreeBSD-ppp-man
FreeBSD-quotacheck
FreeBSD-quotacheck-man
FreeBSD-rc
FreeBSD-rc-man
FreeBSD-rcmds
FreeBSD-rcmds-man
FreeBSD-rescue
FreeBSD-resolvconf
FreeBSD-resolvconf-man
FreeBSD-runtime
FreeBSD-runtime-man
FreeBSD-ssh
FreeBSD-ssh-man
FreeBSD-syslogd
FreeBSD-syslogd-man
FreeBSD-tcpd
FreeBSD-tcpd-man
FreeBSD-telnet
FreeBSD-telnet-man
FreeBSD-ufs
FreeBSD-ufs-man
FreeBSD-utilities
FreeBSD-utilities-man
FreeBSD-vi
FreeBSD-vi-man
FreeBSD-vt-data
FreeBSD-zfs
FreeBSD-zfs-man
FreeBSD-zoneinfo

[-- Attachment #4 --]
# virt support on VPS
# HyperV, KVM - inside kernel
# vmware here
emulators/open-vm-kmod
# below pacakge has a huge dependencies. Do not use it.
#emulators/open-vm-tools-nox11
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5998818.20260209184109>