https://github.com/bugsplat-git/macho-uuid
💻💪👀 Peek into macOS/iOS symbol files to read their unique identifiers
https://github.com/bugsplat-git/macho-uuid
dsym dsymutil dwarf dwarfdump dylib macho uuid
Last synced: 3 months ago
JSON representation
💻💪👀 Peek into macOS/iOS symbol files to read their unique identifiers
- Host: GitHub
- URL: https://github.com/bugsplat-git/macho-uuid
- Owner: BugSplat-Git
- Created: 2023-10-09T23:25:17.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-11-26T01:57:53.000Z (6 months ago)
- Last Synced: 2025-11-28T11:37:16.478Z (6 months ago)
- Topics: dsym, dsymutil, dwarf, dwarfdump, dylib, macho, uuid
- Language: TypeScript
- Homepage: https://bugsplat.com
- Size: 10.8 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://bugsplat.com)
#
BugSplat
### **Crash and error reporting built for busy developers.**
# macho-uuid
A nifty little library for reading unique identifiers from .app, .dSYM, .bundle, .xcarchive, .framework, .dylib, or macOS binary files.
## Command Line
1. Install this package globally `npm i -g macho-uuid`
2. Run macho-uuid with `-h` to see the latest usage information:
```bash
bobby@BugSplat % ~ % macho-uuid -h
macho-uuid
A command line utility and library for reading the UUID of a .app, .dSYM,
.bundle, .xcarchive, .framework, .dylib, or macOS binary file.
Usage
--path string Path to a .app, .dSYM, .bundle, .xcarchive, .framework, .dylib or
macOS binary file.
-h, --help Print this usage guide.
Example
macho-uuid path-to-macho-bundle-or-fat-file
Links
🐛 https://bugsplat.com
💻 https://github.com/BugSplat-Git/macho-uuid
💌 support@bugsplat.com
```
3. Run macho-uuid specifying a path to a `.app`, `.dSYM`, `.bundle`, `.xcarchive`, `.framework`, `.dylib`, or macOS binary file:
```bash
bobby@BugSplat % ~ % macho-uuid ./path/to/bugsplat-ios.app
UUID: 59686D50-E0A4-3FB9-AD27-BAADAD47E0BC (arm64) spec/support/bugsplat-ios.app/bugsplat-ios
UUID: C3E6032C-B73E-39D5-9D87-2ACC2A515240 (arm64) spec/support/bugsplat-ios.app/Frameworks/bugsplat.framework/bugsplat
UUID: 39D9CB72-DE66-3CA6-B85B-BFA04B60782E (x86_64) spec/support/bugsplat-ios.app/Frameworks/bugsplat.framework/HockeySDKResources.bundle/Contents/MacOS/HockeySDKResources
UUID: 7F2B35C3-9745-33D1-B991-EC0DA93CC085 (arm64) spec/support/bugsplat-ios.app/Frameworks/bugsplat.framework/HockeySDKResources.bundle/Contents/MacOS/HockeySDKResources
```
## API
1. Install this package locally `npm i macho-uuid`.
2. Use the `createMachoFiles` factory to recursively create an array of `MachoFile` instances for a given path.
```ts
import { createMachoFiles } from 'macho-uuid';
const machoFiles = await createMachoFiles('./path/to/bugsplat.app');
```
3. Await a call to `getUUID()` to get the unique identifier for the file.
```ts
const uuid = await machoFile.getUUID();
```
## 🐛 About
[BugSplat](https://bugsplat.com) is a software crash and error reporting service with support for [macOS](https://docs.bugsplat.com/introduction/getting-started/integrations/desktop/macos), [iOS](https://docs.bugsplat.com/introduction/getting-started/integrations/mobile/ios), [Qt](https://docs.bugsplat.com/introduction/getting-started/integrations/cross-platform/qt), [Unreal Engine](https://docs.bugsplat.com/introduction/getting-started/integrations/game-development/unreal-engine) and [many more](https://docs.bugsplat.com/introduction/getting-started/integrations). BugSplat automatically captures critical diagnostic data such as stack traces, log files, and other runtime information. BugSplat also provides automated incident notifications, a convenient dashboard for monitoring trends and prioritizing engineering efforts, and integrations with popular development tools to maximize productivity and ship more profitable software.