2 makeScopeWithSplicing',
3 generateSplicesForMkScope,
5 attributePathToSplice ? [ "freebsd" ],
6 branch ? "release/14.1.0",
10 versions = builtins.fromJSON (builtins.readFile ./versions.json);
15 Unknown FreeBSD branch ${branch}!
16 FreeBSD branches normally look like one of:
17 * `release/<major>.<minor>.0` for tagged releases without security updates
18 * `releng/<major>.<minor>` for release update branches with security updates
19 * `stable/<major>` for stable versions working towards the next minor release
20 * `main` for the latest development version
22 Branches can be selected by overriding the `branch` attribute on the freebsd package set.
25 # we do not include the branch in the splice here because the branch
26 # parameter to this file will only ever take on one value - more values
27 # are provided through overrides.
28 otherSplices = generateSplicesForMkScope attributePathToSplice;
30 # `./package-set.nix` should never know the name of the package set we
31 # are constructing; just this function is allowed to know that. This
34 # - do the splicing for cross compilation here
36 # - construct the *anonymized* `buildFreebsd` attribute to be passed
37 # to `./package-set.nix`.
38 makeScopeWithSplicing' {
45 // callPackage ./package-set.nix ({
46 sourceData = versions.${self.branch} or (throw (badBranchError self.branch));
47 versionData = self.sourceData.version;
48 buildFreebsd = otherSplices.selfBuildHost;
49 patchesRoot = ./patches + "/${self.versionData.revision}";