{"id":19657816,"url":"https://github.com/gdatasoftwareag/macdeployqt","last_synced_at":"2025-02-27T02:26:10.417Z","repository":{"id":46167293,"uuid":"513877322","full_name":"GDATASoftwareAG/macdeployqt","owner":"GDATASoftwareAG","description":"Fork of the official Qt tool, as a standalone binary. Includes a fix for broken code signing of nested frameworks in app bundles.","archived":false,"fork":false,"pushed_at":"2024-01-17T09:36:05.000Z","size":49,"stargazers_count":2,"open_issues_count":0,"forks_count":3,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-01-10T00:54:41.510Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GDATASoftwareAG.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2022-07-14T11:39:20.000Z","updated_at":"2025-01-07T12:56:07.000Z","dependencies_parsed_at":"2024-11-11T15:37:22.761Z","dependency_job_id":"91955929-9cc3-4c6b-a74a-9408af8b7ce7","html_url":"https://github.com/GDATASoftwareAG/macdeployqt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2Fmacdeployqt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2Fmacdeployqt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2Fmacdeployqt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GDATASoftwareAG%2Fmacdeployqt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GDATASoftwareAG","download_url":"https://codeload.github.com/GDATASoftwareAG/macdeployqt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240965501,"owners_count":19885944,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-11T15:33:48.567Z","updated_at":"2025-02-27T02:26:10.392Z","avatar_url":"https://github.com/GDATASoftwareAG.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"Fixed macdeployqt tool for Qt 6.2\n=================================\n\nThs repository contains a fork of the macdeployqt utility, which can be used to copy required Qt libraries and plug-ins\ninto applications bundles and then codesign the whole bundle for notarization.\n\nThe codesign feature is a recent addition to the tool, and doesn't work properly since it only signs binaries like\nshared libraries, framework libraries and executables, but not the enclosing bundles (e.g. the `.app` or `.framework`\ndirectories). This will lead to codesign complaining about the Qt frameworks being \"not signed at all\" and refusing to\nsign the app bundle executable(s).\n\nThis repository contains a brute-force fix for this issue. For every binary signed, the tool now traverses the path of\nthat binary and looks for any directory names ending with `.framework`. If one is found, it is also signed. For\nframeworks containing multiple binaries, this can result in some codesign invocations to fail, but the last try should\nsucceed (since all binaries inside are signed then).\n\nIn addition to signing frameworks, the enclosing application bundle is now also signed. Note this is done with the same\nsettings as all files inside the bundle, so if you need additional parameters, e.g. for specific entitlements, the\nbundle needs to be properly signed again after running macdeployqt.\n\n## Building macdeployqt\n\nThe repository is organized to build a standalone executable, which, after installation, is set tup with an RPATH in a\nway that it can replace the original tool in a Qt build.\n\n### Requirements\n\nThe code was taken from the Qt 6.2 LTS version, so it is recommended to build it against this version. It should run\nwith future versions as well though. Other than that, the build requirements are basically the same as for building Qt\n6.2 on macOS.\n\nIt is recommended to use the Ninja build generator, as this is Qt's preferred build tool. It should build with the Unix\nMakefiles or Xcode generators as well.\n\n### Running the build\n\nConfigure the build using cmake, then build and install the executable:\n\n```shell\ncmake -GNinja \\\n    -S /path/to/macdeployqt-sources \\\n    -B /path/to/build-dir\n    -DCMAKE_INSTALL_PREFIX=/path/to/install-dir\n    -DCMAKE_BUILD_TYPE=Release\ncmake --build /path/to/build-dir --target install\n```\n\nAfter running the above commands, you should have a `macdeployqt` executable in the install dir. Copy it to your Qt\ninstallation's `bin` dir and replace the original executable located there.\n\n### Providing a different RPATH\n\nIf you don't want to replace the original executable or use the program from a different location, set\nthe `MACDEPLOQT_RPATH` variable to the required value, e.g. via ` -DMACDEPLOQT_RPATH=/some/other/path` in the initial\ncmake configure command.\n\nBy default, it is set to `@executable_path/../lib`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdatasoftwareag%2Fmacdeployqt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgdatasoftwareag%2Fmacdeployqt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgdatasoftwareag%2Fmacdeployqt/lists"}