{"id":26498760,"url":"https://github.com/jo-tools/macos-app-directories","last_synced_at":"2026-02-13T18:33:49.887Z","repository":{"id":42707719,"uuid":"450259251","full_name":"jo-tools/macos-app-directories","owner":"jo-tools","description":"Xojo example project: macOS App Directories","archived":false,"fork":false,"pushed_at":"2025-03-11T20:40:17.000Z","size":2920,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-04T08:45:38.019Z","etag":null,"topics":["declares","framework","macos","xojo"],"latest_commit_sha":null,"homepage":"https://www.jo-tools.ch","language":"Xojo","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jo-tools.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":["https://paypal.me/jotools"]}},"created_at":"2022-01-20T21:11:51.000Z","updated_at":"2025-03-11T20:39:21.000Z","dependencies_parsed_at":"2025-03-11T21:23:15.457Z","dependency_job_id":"7ba01f99-8fe0-421c-96fb-962a178c7355","html_url":"https://github.com/jo-tools/macos-app-directories","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/jo-tools/macos-app-directories","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jo-tools%2Fmacos-app-directories","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jo-tools%2Fmacos-app-directories/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jo-tools%2Fmacos-app-directories/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jo-tools%2Fmacos-app-directories/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jo-tools","download_url":"https://codeload.github.com/jo-tools/macos-app-directories/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jo-tools%2Fmacos-app-directories/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29414279,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["declares","framework","macos","xojo"],"created_at":"2025-03-20T14:39:58.042Z","updated_at":"2026-02-13T18:33:49.872Z","avatar_url":"https://github.com/jo-tools.png","language":"Xojo","funding_links":["https://paypal.me/jotools"],"categories":[],"sub_categories":[],"readme":"# macOS App Directories\nXojo example project\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n\n## Description\nAn example Xojo project to show how to deal with application directories on macOS. Why that?\n\nmacOS Catalina *(and newer)* consists of two Volumes:\n1. a read-only System volume\n2. a read-write Data volume\n\nSo the classic ```/Applications``` directory is now the one where users can store their system-wide available applications. Apple's own **System Applications** will be in another location.\nFinder transparently shows them just as ```Applications```. However, Developers might need to get the correct native path. But Xojo only provides a single folder using ```SpecialFolder.Applications```...\n\nThe included examples show how to:\n- Find Applications\n  - by BundleID *(the preferred way)*\n  - by AppName *(this will try to find it in all possible system defined application directories)*\n- Get an Array of standard/default Folders defined by Apple *(see the Enumeration:* [```NSSearchPathDirectory```](https://developer.apple.com/documentation/foundation/nssearchpathdirectory?language=objc)*)*.\n  - This way you will get all ones *(also the per-user Application Folder, if it exists)* from the OS.\n- Get an answer to the following questions:\n  - Which available application(s) can open a Document?  \n    An example is included which will ask you to select a Document. It then locates all suitable Applications, depending on the [```LSRolesMask```](https://developer.apple.com/documentation/coreservices/lsrolesmask?language=objc)(s) you specify.\n- Which available application(s) can deal with a given URL?\n  - Another example locates Applications that can deal with any given URL *(e.g. list all WebBrowsers)*.\n\n### ScreenShots\nExample application: macOS App Directories  \n![ScreenShot: macOS App Directories](screenshots/app-directories-1.png?raw=true)\n\n## Xojo\n### Requirements\n[Xojo](https://www.xojo.com/) is a rapid application development for Desktop, Web, Mobile \u0026 Raspberry Pi.  \n\nThe Desktop application Xojo example project ```macOS-App-Directories.xojo_project``` is using:\n- Xojo 2024r4.2\n- API 2\n\n### How to use in your own Xojo project?\n1. Copy the Module ```modMacOSAppDirectories``` from the example project, and paste it into your project.\n2. Study the example project to learn how to use the provided methods in the Module.\n\n## About\nJuerg Otter is a long term user of Xojo and working for [CM Informatik AG](https://cmiag.ch/). Their Application [CMI LehrerOffice](https://cmi-bildung.ch/) is a Xojo Design Award Winner 2018. In his leisure time Juerg provides some [bits and pieces for Xojo Developers](https://www.jo-tools.ch/).\n\n### Contact\n[![E-Mail](https://img.shields.io/static/v1?style=social\u0026label=E-Mail\u0026message=xojo@jo-tools.ch)](mailto:xojo@jo-tools.ch)\n\u0026emsp;\u0026emsp;\n[![Follow on Facebook](https://img.shields.io/static/v1?style=social\u0026logo=facebook\u0026label=Facebook\u0026message=juerg.otter)](https://www.facebook.com/juerg.otter)\n\u0026emsp;\u0026emsp;\n[![Follow on Twitter](https://img.shields.io/twitter/follow/juergotter?style=social)](https://twitter.com/juergotter)\n\n### Donation\nDo you like this project? Does it help you? Has it saved you time and money?  \nYou're welcome - it's free... If you want to say thanks I'd appreciate a [message](mailto:xojo@jo-tools.ch) or a small [donation via PayPal](https://paypal.me/jotools).  \n\n[![PayPal Dontation to jotools](https://img.shields.io/static/v1?style=social\u0026logo=paypal\u0026label=PayPal\u0026message=jotools)](https://paypal.me/jotools)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjo-tools%2Fmacos-app-directories","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjo-tools%2Fmacos-app-directories","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjo-tools%2Fmacos-app-directories/lists"}