switch to arm64

• my main machine is Apple Silicon now
• filter architecture in objdump as it would normally output all archs
This commit is contained in:
Michael Roitzsch
2025-05-13 11:52:15 +02:00
parent 8b7b181499
commit b67aedf6a1
3 changed files with 11 additions and 10 deletions

View File

@@ -74,7 +74,7 @@ $(DB_TARGETS)::
exit 1 ; \
fi
dyld: /System/Cryptexes/OS/System/Library/dyld/dyld_shared_cache_x86_64h /System/Cryptexes/OS/System/DriverKit/System/Library/dyld/dyld_shared_cache_x86_64h
dyld: /System/Cryptexes/OS/System/Library/dyld/dyld_shared_cache_arm64e /System/Cryptexes/OS/System/DriverKit/System/Library/dyld/dyld_shared_cache_arm64e
for i in $+ ; do $(DSCEXTRACTOR) $$i $@ ; done > /dev/null
find $@ -type f -print0 | xargs -0 chmod a+x
@@ -132,12 +132,13 @@ db_binaries:: dyld
$(call find,-follow -type f -perm +111) | while read -r os path ; do \
echo "UPDATE files SET executable = true WHERE os = '$$os' AND path = '$$(echo "$$path" | sed "s/'/''/g")';" ; \
if test -r "$(call prefix,$$os)$$path" && file --no-dereference --brief --mime-type "$(call prefix,$$os)$$path" | grep -Fq application/x-mach-binary ; then \
objdump --macho --dylibs-used "$(call prefix,$$os)$$path" | \
case "$$(lipo -archs "$(call prefix,$$os)$$path")" in (*arm64e*) arch=arm64e ;; (*arm64_32*) arch=arm64_32 ;; (*arm64*) arch=arm64 ;; (*x86_64h*) arch=x86_64h ;; (*x86_64*) arch=x86_64 ;; (*) continue ;; esac ; \
objdump --arch=$$arch --macho --dylibs-used "$(call prefix,$$os)$$path" | \
sed "1d;s/^.//;s/ ([^)]*)$$//;s/'/''/g;s|.*|INSERT OR IGNORE INTO linkages $(call file,'&');|" ; \
codesign --display --xml --entitlements - "$(call prefix,$$os)$$path" 2> /dev/null | \
plutil -convert json - -o - | \
sed "/^<stdin>: Property List error/d;/^{}/d;s/'/''/g;s|.*|INSERT INTO entitlements $(call file,json('&'));\n|" ; \
strings -n 8 "$(call prefix,$$os)$$path" | \
strings -n 8 "$(call prefix,$$os)$$path" 2> /dev/null | \
LANG=C sed "s/'/''/g;s|.*|INSERT OR IGNORE INTO strings $(call file,'&');|" ; \
fi ; \
done

View File

@@ -19,12 +19,12 @@
};
};
outputs = { self, nixpkgs, acextract, command-line, dsc-extractor, snap-util }: {
packages.x86_64-darwin = let
xcode = nixpkgs.legacyPackages.x86_64-darwin.xcodeenv.composeXcodeWrapper {};
packages.aarch64-darwin = let
xcode = nixpkgs.legacyPackages.aarch64-darwin.xcodeenv.composeXcodeWrapper {};
in {
acextract =
with nixpkgs.legacyPackages.x86_64-darwin;
with nixpkgs.legacyPackages.aarch64-darwin;
let xcodeHook = makeSetupHook {
name = "xcode-hook";
propagatedBuildInputs = [ xcode ];
@@ -79,7 +79,7 @@
};
dsc-extractor =
with nixpkgs.legacyPackages.x86_64-darwin;
with nixpkgs.legacyPackages.aarch64-darwin;
stdenv.mkDerivation {
name = "dsc-extractor-${lib.substring 0 8 self.inputs.dsc-extractor.lastModifiedDate}";
src = dsc-extractor;
@@ -87,7 +87,7 @@
};
snap-util =
with nixpkgs.legacyPackages.x86_64-darwin;
with nixpkgs.legacyPackages.aarch64-darwin;
let snapshot-header = fetchFromGitHub {
owner = "apple";
repo = "darwin-xnu";

View File

@@ -231,7 +231,7 @@ Notarization app security scan by Apple; cryptographic proof stapled to code sig
Noticeboard User Notifications for Software Update and App Store, Noticeboard.framework; launchd services: com.apple.noticeboard.state (nbstated), com.apple.noticeboard.agent (nbagent)
Notifications system notification bus, unrelated to the local/remote push notifications; launchd service: com.apple.notifyd, com.apple.kuncd (invoked by kernel through host special port 10); command line tool: notifyutil; complemented by framework-level notification system (CFNotification, NSNotification); launchd services: com.apple.distnoted.xpc.daemon, com.apple.distnoted.xpc.agent
NSP Network Service Proxy; per-app VPN and proxy settings, implements Private Relay; launchd service: com.apple.networkserviceproxy
OAH Rosetta; ahead-of-time compiler for Intel code on Apple Silicon, usable from Linux VMs by way of a custom binformat; /usr/libexec/rosetta; launchd service: com.apple.oahd
OAH Rosetta; ahead-of-time compiler for Intel code on Apple Silicon, usable from Linux VMs by way of a custom binformat; /usr/libexec/rosetta, /var/db/oah (AOT cache); launchd service: com.apple.oahd
ODR On-Demand Resources; loaded from App Store; launchd service: com.apple.appstored
Omni Search fuzzy semantic search with results recognized in images; OmniSearch.framework
Onboarding data protection splash screen shown by service-connected apps; /System/Library/OnBoardingBundles; OnBoardingKit.framework
@@ -358,7 +358,7 @@ USD Universal Scene Description; storage format for 3D assets; /usr/lib/usd; com
User Activity abstraction for deep-linking into apps with structured context (people, places); used for Universal Links (schema.org on websites), Handoff, Parsec (app links in search), Quick Note (context awareness); now part of Intents; UserActivity.framework; launchd service: com.apple.coreservices.useractivityd
User Notifications user interface for notification center; launchd service: com.apple.usernoted
UTI Uniform Type Identifiers; system for document types; file extensions and MIME types are mapped to UTIs, UTIs form a conformance graph, apps register their UTIs with Launch Services; /System/Library/CoreServices/CoreTypes.bundle; also Apples hardware devices are represented as UTIs
VA Video Acceleration; AppleGVA.framework, AppleVA.framework, AppleVPA.framework
VA Video Acceleration; AppleVA.framework
VDAF Verifiable Distributed Aggregation Function; part of Differential Privacy; VDAF.framework
Viceroy video conferencing used by FaceTime and ReplayKit; ViceroyTrace.framework
Virtualisation running virtual machines on macOS; Hypervisor.framework (for basic VMs and vCPUs), Virtualization.framework (brings a robust set of device models)
1 Term Description
231 Noticeboard User Notifications for Software Update and App Store, Noticeboard.framework; launchd services: com.apple.noticeboard.state (nbstated), com.apple.noticeboard.agent (nbagent)
232 Notifications system notification bus, unrelated to the local/remote push notifications; launchd service: com.apple.notifyd, com.apple.kuncd (invoked by kernel through host special port 10); command line tool: notifyutil; complemented by framework-level notification system (CFNotification, NSNotification); launchd services: com.apple.distnoted.xpc.daemon, com.apple.distnoted.xpc.agent
233 NSP Network Service Proxy; per-app VPN and proxy settings, implements Private Relay; launchd service: com.apple.networkserviceproxy
234 OAH Rosetta; ahead-of-time compiler for Intel code on Apple Silicon, usable from Linux VMs by way of a custom binformat; /usr/libexec/rosetta; launchd service: com.apple.oahd Rosetta; ahead-of-time compiler for Intel code on Apple Silicon, usable from Linux VMs by way of a custom binformat; /usr/libexec/rosetta, /var/db/oah (AOT cache); launchd service: com.apple.oahd
235 ODR On-Demand Resources; loaded from App Store; launchd service: com.apple.appstored
236 Omni Search fuzzy semantic search with results recognized in images; OmniSearch.framework
237 Onboarding data protection splash screen shown by service-connected apps; /System/Library/OnBoardingBundles; OnBoardingKit.framework
358 User Activity abstraction for deep-linking into apps with structured context (people, places); used for Universal Links (schema.org on websites), Handoff, Parsec (app links in search), Quick Note (context awareness); now part of Intents; UserActivity.framework; launchd service: com.apple.coreservices.useractivityd
359 User Notifications user interface for notification center; launchd service: com.apple.usernoted
360 UTI Uniform Type Identifiers; system for document types; file extensions and MIME types are mapped to UTIs, UTIs form a conformance graph, apps register their UTIs with Launch Services; /System/Library/CoreServices/CoreTypes.bundle; also Apple’s hardware devices are represented as UTIs
361 VA Video Acceleration; AppleGVA.framework, AppleVA.framework, AppleVPA.framework Video Acceleration; AppleVA.framework
362 VDAF Verifiable Distributed Aggregation Function; part of Differential Privacy; VDAF.framework
363 Viceroy video conferencing used by FaceTime and ReplayKit; ViceroyTrace.framework
364 Virtualisation running virtual machines on macOS; Hypervisor.framework (for basic VMs and vCPUs), Virtualization.framework (brings a robust set of device models)