1# xcodegen project definition — run `xcodegen generate` to (re)create
2# UsageMenubar.xcodeproj. The .xcodeproj is not committed; this file is
3# the source of truth for project structure and build settings.
7 # Reverse-DNS prefix xcodegen uses when it needs to synthesize a bundle id.
8 # The app target pins its own id explicitly below, so this is just a default.
9 bundleIdPrefix: com.ilyakooo0
10 # Oldest macOS we support. SMAppService (launch at login) requires 13.0+;
11 # we target 14.0 (Sonoma). Keep in sync with MACOSX_DEPLOYMENT_TARGET below.
14 createIntermediateGroups: true
15 generateEmptyDirectories: true
20 # Local/CI builds are unsigned at compile time. Release builds get an
21 # ad-hoc signature applied after archiving (see .github/workflows/release.yml).
23 CODE_SIGN_IDENTITY: ""
24 CODE_SIGNING_REQUIRED: "NO"
25 CODE_SIGNING_ALLOWED: "NO"
26 # Version defaults for local builds only. The release workflow overwrites
27 # these (and the CFBundle* keys below) with a version derived from the
28 # commit timestamp, formatted YYYY.MM.DD.HHHH — so editing them by hand
29 # has no effect on what ships.
30 MARKETING_VERSION: "1.0.0"
31 CURRENT_PROJECT_VERSION: "1"
34 # ── The menu bar app ───────────────────────────────────────────────────
41 # Referenced explicitly via INFOPLIST_FILE / CODE_SIGN_ENTITLEMENTS,
42 # so they must not also be compiled in as resources.
46 path: UsageMenubar/Info.plist
48 CFBundleName: UsageMenubar
49 CFBundleDisplayName: Usage Menubar
50 CFBundleIdentifier: com.ilyakooo0.usage-menubar
51 # Overwritten by CI — see the note on MARKETING_VERSION above.
53 CFBundleShortVersionString: "1.0.0"
54 # Agent app: no dock icon and no main window; it lives in the menu bar.
56 LSApplicationCategoryType: public.app-category.utilities
57 NSHighResolutionCapable: true
60 PRODUCT_BUNDLE_IDENTIFIER: com.ilyakooo0.usage-menubar
61 PRODUCT_NAME: UsageMenubar
62 INFOPLIST_FILE: UsageMenubar/Info.plist
63 # Grants the outgoing-network-connection entitlement needed to reach
64 # the Hyper and Claude APIs, and deliberately does not sandbox the app —
65 # see the comment in the entitlements file. Stripped in CI's archive step
66 # (unsigned builds can't carry entitlements).
67 CODE_SIGN_ENTITLEMENTS: UsageMenubar/UsageMenubar.entitlements
68 ENABLE_HARDENED_RUNTIME: YES
69 ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
70 MACOSX_DEPLOYMENT_TARGET: "14.0"
71 LD_RUNPATH_SEARCH_PATHS:
73 - "@executable_path/../Frameworks"
75 # ── Unit tests ─────────────────────────────────────────────────────────
76 # Hosted by the app target (BUNDLE_LOADER/TEST_HOST) so tests can reach the
77 # app's internal types without re-declaring them.
79 type: bundle.unit-test
82 - path: UsageMenubarTests
84 - target: UsageMenubar
87 PRODUCT_BUNDLE_IDENTIFIER: com.ilyakooo0.usage-menubar.tests
88 PRODUCT_NAME: UsageMenubarTests
89 BUNDLE_LOADER: "$(TEST_HOST)"
90 TEST_HOST: "$(BUILT_PRODUCTS_DIR)/UsageMenubar.app/Contents/MacOS/UsageMenubar"
91 MACOSX_DEPLOYMENT_TARGET: "14.0"
98 UsageMenubarTests: [test]
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list