Commit Graph

692128 Commits

Author SHA1 Message Date
Randy Eckenrode
97d75cb619
{bintools,cc}-wrapper: set up Darwin SDK paths
Some compilers may know to check these paths when `SDKROOT` is set, but
it’s not assumed they do. `SDKROOT` is instead derived from the
`DEVELOPER_DIR`, and `NIX_CFLAGS_COMPILE` is set up with the sysroot and
necessary framework and include search paths.
2024-10-10 16:22:59 -04:00
Randy Eckenrode
c218ce1e4d
darwin: replace framework chooser with stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
9ecb69c827
darwin.apple_sdk: drop gen-frameworks.py (replaced by new SDK pattern) 2024-10-10 16:22:59 -04:00
Randy Eckenrode
0a3c487571
darwin.apple_sdk: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
480227777b
darwin.apple_sdk_12_3: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
fcd9dc8ac6
darwin.apple_sdk_11_0: convert frameworks and libs to stubs 2024-10-10 16:22:59 -04:00
Randy Eckenrode
17aeace4d9
darwin: prepare for adding stub packages 2024-10-10 16:22:59 -04:00
Randy Eckenrode
d1c2539523
darwin: add mkStub for deprecating frameworks 2024-10-10 16:22:59 -04:00
Randy Eckenrode
8fae28553a
apple-sdk_14: init at 14.4 2024-10-10 16:22:58 -04:00
Randy Eckenrode
4283b8f00a
apple-sdk_13: init at 13.3 2024-10-10 16:22:58 -04:00
Randy Eckenrode
689e8980bc
apple-sdk_12: init at 12.3 2024-10-10 16:22:58 -04:00
Randy Eckenrode
d10c85b19b
apple-sdk_10_15: init at 10.15.6 2024-10-10 16:22:58 -04:00
Randy Eckenrode
a447cba849
apple-sdk_10_14: init at 10.14.6 2024-10-10 16:22:58 -04:00
Randy Eckenrode
3fb982d0e2
apple-sdk_10_13: init at 10.13.2 2024-10-10 16:22:58 -04:00
Randy Eckenrode
556790248f
apple-sdk: init at 10.12.2 and 11.3
This is a new packaging of the Darwin SDK. Instead of splitting
libraries and frameworks into separate packages, it provides a single
package for the whole SDK.

# Features

- Vendored files are removed from the SDK. There are 50+ different
  packages that are vendored by upstream (depending on the version);
- Components that are built in nixpkgs (either from upstream or from the
  source releases) are also removed. If they need to be included by
  default, they are propagated;
- A single SDK pattern is used to package all SDKs, and scripts are
  provided to aid updating the SDK version and its source release
  versions. This makes adding new SDKs much easier;
- SDK overrides are handled by adding the SDK version you require. If
  multiple SDKs are present, only the newest is used. It is possible to
  have different SDKs for each of build, host, and target platforms;
- Private headers are no longer provided by default unless you use the
  SDK’s `privateFrameworksHook` to add them. It does the right thing
  when multiple SDKs are in your inputs;
- Source releases for the SDK version are available via a passthru
  `sourceRelease` function. This is mostly useful for getting private
  headers for building source releases in the darwin attrset; and
- The same versions of propagated components are used on both platforms
  (e.g., the same libresult, libiconv, etc).

See `pkgs/by-name/ap/apple-sdk/README.md` for details on how the SDK
derivation is structured and how to update it.
2024-10-10 16:22:58 -04:00
Randy Eckenrode
639108ea70
darwin.libsbuf: init at 14.1
libsbuf is required by some of the source release updates that will
be done. Unfortunately, it is only available on macOS 14 and newer, and
there is no source release available currently.

This is a port of libsbuf from FreeBSD, which appears to be the origin
of the header provided in the 14.x SDK. It provides the same ABI as the
system dylib and same API as the the SDK header while being available on
all supported deployment targets in nixpkgs.

Note: This package is not based on libsbuf from the FreeBSD package set
in nixpkgs because: it doesn’t build on Darwin, and using it would pull
many FreeBSD packages into the Darwin bootstrap, which is undesirable.
2024-10-10 16:18:59 -04:00
Randy Eckenrode
6a54c7f6c9
darwin.apple-source-releases: add update-source-releases.sh
Add a new update script that locks the source releases to the indicated
macOS version per the version pins in following repo:

https://github.com/apple-oss-distributions/distribution-macOS
2024-10-10 16:18:59 -04:00
Randy Eckenrode
8f8e240965
darwin.apple-source-releases: add mkAppleDerivation
This is a replacement for the family of `appleDerivation` functions
currently used. It is patterned after the `mkDerivation` used in the BSD
package sets. It also provides additional support for using Meson to
build source releases.
2024-10-10 16:18:59 -04:00
Randy Eckenrode
121149836e
darwin: add xcodeProjectCheckHook
This hook is used by source releases that build with Meson to assert
that the Xcode project has not changed since the previous release. This
is meant to be a check to force those updating source release packages
to make sure they have incorporated any changes that were made to the
Xcode project into the Meson build.
2024-10-10 01:07:39 -04:00
Randy Eckenrode
5721c4fa47
darwin: add libSystem
The new Darwin SDK pattern relies on an effectively empty, stub libc
implementation. The actual libSystem to be linked is located dynamically
based on the active SDK for the target. Independent build, host, and
target SDKs are all supported by Darwin.

The stub libSystem contains empty `include` and `lib` folders to avoid
warnings from wrappers that add those paths unconditionally, which can
turn into errors when a package is building with warnings-as-errors.

While it would be nice if a fallback libc could be provided, SDK headers
are not compatible between framework versions. Providing a fallback
risks mixing headers from different frameworks, which can result in hard
to diagnose errors involving semicolons or other punctuation.
2024-10-10 01:07:39 -04:00
Randy Eckenrode
40d415f4df
darwin: add darwinMinVersionHook
Adding the hook allows the deployment target to be changed without
having to mess with the stdenv. The can also be propagated, which is
useful for libraries that have a minimum deployment target higher than
the default in nixpkgs. In that case, they can propagate the hook to
ensure library users are not targeting an unsupported version.
2024-10-10 01:07:38 -04:00
Randy Eckenrode
08ad88285d
darwin: add bootstrapStdenv
Packages propagated by the SDK need to use a stdenv that does not
propagate anything. Otherwise, an infinite recursion will result when
building those packages.

For consistency, all source releases should use the bootstrapStdenv.
2024-10-10 01:07:38 -04:00
Randy Eckenrode
22369efb1c
maintainers/team-list.nix: add reckenrode to darwin 2024-10-10 01:07:38 -04:00
Emily
e694240f77 Merge staging-next into staging 2024-10-10 01:23:52 +01:00
github-actions[bot]
1404154595
Merge master into staging-next 2024-10-10 00:14:06 +00:00
adisbladis
9ee9cac888
waydroid: 1.4.2 -> 1.4.3; add update script, move to by-name, format, and other cleanup (#346270) 2024-10-10 00:09:42 +00:00
Emily
27272c21af
Mass pings be gone, code owners for all (#347610) 2024-10-10 00:52:01 +01:00
Silvan Mosberger
ddeb2dfd91 .gitattributes: Mark ci/OWNERS as CODEOWNERS 2024-10-10 01:40:43 +02:00
Silvan Mosberger
c721e917ce ci/request-reviews: Make wrong base branch message hashes more transparent
Also, fix the description of the text
2024-10-10 01:40:11 +02:00
Silvan Mosberger
c2464034c0 CONTRIBUTING: Remove now-unneeded mass ping section
This is not a problem anymore with the parent commit
2024-10-10 01:40:11 +02:00
Silvan Mosberger
b01ca00aed CODEOWNERS: Switch to alternate mechanism
This effectively disables the native GitHub codeowners feature
and enables the new alternate codeowners mechanism introduced in
https://github.com/NixOS/nixpkgs/pull/336261

This means that:
- We can now declare users without write access as code owners!
- Targeting the wrong branch won't trigger mass pings anymore!
2024-10-10 01:40:05 +02:00
Emily
6422c786dd
treewide: add CVE-2024-9680 as a known vulnerability to Firefox forks (#347601) 2024-10-10 00:08:07 +01:00
Emily
6a57be8716
librewolf-unwrapped: 130.0-3 -> 131.0.2-1 (#347598) 2024-10-10 00:01:44 +01:00
Aaron Andersen
50a0ea2eb6
nixos/redmine: Apply initial hardening using the systemd unit (#346554) 2024-10-09 18:47:58 -04:00
Weijia Wang
2792ebe30b
nitrokey-storage-firmware: init at 0.57 (#337959) 2024-10-10 00:17:31 +02:00
Silvan Mosberger
cf952d3937
Avoid rerequesting reviews with the new codeowners mechanism (#347592) 2024-10-10 00:15:33 +02:00
Sergei Trofimovich
8b67a903d9
argyllcms: 3.2.0 -> 3.3.0 (#345138)
Changes: https://www.argyllcms.com/doc/ChangesSummary.html
2024-10-10 00:14:01 +02:00
Franz Pletz
cbdcccc96b
openapi-changes: 0.0.67 -> 0.0.68 (#347507) 2024-10-10 00:05:49 +02:00
Franz Pletz
d308db351f
home-assistant-custom-components.moonraker: 1.3.5 -> 1.3.7 (#346123) 2024-10-10 00:02:33 +02:00
Someone
ed42e8fec1
faiss: 1.8.0->1.9.0 (#341418) 2024-10-09 21:52:20 +00:00
Silvan Mosberger
1ff83b2c96 ci/request-reviews: Request reviews for individual team members
This makes this codeowner mechanism behave differently than the native
one, but there's no other way to avoid rerequesting reviews from teams
when a member already reviewed the PR.
2024-10-09 23:49:14 +02:00
Silvan Mosberger
9a054bb9dd ci/request-reviews: Don't rerequest users that already reviewed
The automation should never rerequest reviews from users that already
reviewed the changes, which is what was happening before this change:

https://github.com/NixOS/nixpkgs/pull/347354#event-14570645380

Also reorder the arguments to make more sense
2024-10-09 23:49:01 +02:00
Sefa Eyeoglu
73223431f7
librewolf-bin: add CVE-2024-9680 as a known vulnerability
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-10-09 23:05:02 +02:00
Sefa Eyeoglu
b119e084e6
floorp: add CVE-2024-9680 as a known vulnerability
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-10-09 23:04:52 +02:00
Emily
a96de16176
mullvad-browser: 13.5.6 -> 13.5.7 (#347594) 2024-10-09 22:02:19 +01:00
Sefa Eyeoglu
558f659dc0
librewolf-unwrapped: 130.0-3 -> 131.0.2-1
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-10-09 22:57:22 +02:00
Emily
48c8d415be
chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100 (#347574) 2024-10-09 22:50:19 +02:00
Pol Dellaiera
7b66dd39f8
nvrh: init at 0.1.8 (#347486) 2024-10-09 22:48:30 +02:00
Emily
35865a4d34
tor-browser: 13.5.6 -> 13.5.7 (#347593) 2024-10-09 21:44:20 +01:00
Sefa Eyeoglu
633885fba6
mullvad-browser: 13.5.6 -> 13.5.7
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-10-09 22:44:19 +02:00