{"id":13465308,"url":"https://github.com/swiftbrew/Swiftbrew","last_synced_at":"2025-03-25T16:31:36.924Z","repository":{"id":48061801,"uuid":"192699837","full_name":"swiftbrew/Swiftbrew","owner":"swiftbrew","description":"Homebrew for Swift packages","archived":false,"fork":false,"pushed_at":"2023-02-09T10:23:58.000Z","size":24,"stargazers_count":145,"open_issues_count":6,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-09-29T23:47:23.942Z","etag":null,"topics":["bottle","package-manager","prebuilt","swift"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/swiftbrew.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}},"created_at":"2019-06-19T09:18:29.000Z","updated_at":"2024-08-03T15:11:21.000Z","dependencies_parsed_at":"2024-01-02T23:54:44.245Z","dependency_job_id":null,"html_url":"https://github.com/swiftbrew/Swiftbrew","commit_stats":{"total_commits":18,"total_committers":2,"mean_commits":9.0,"dds":0.2222222222222222,"last_synced_commit":"a111c21840644f32aa3cdada67c5bd499184e9d3"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swiftbrew%2FSwiftbrew","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swiftbrew%2FSwiftbrew/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swiftbrew%2FSwiftbrew/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swiftbrew%2FSwiftbrew/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/swiftbrew","download_url":"https://codeload.github.com/swiftbrew/Swiftbrew/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222088536,"owners_count":16928976,"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":["bottle","package-manager","prebuilt","swift"],"created_at":"2024-07-31T15:00:26.652Z","updated_at":"2024-10-29T17:30:41.835Z","avatar_url":"https://github.com/swiftbrew.png","language":"Swift","funding_links":[],"categories":["Misc","Misc [🔝](#readme)"],"sub_categories":["Vim"],"readme":"# Swiftbrew ![](https://github.com/swiftbrew/Swiftbrew/workflows/Build/badge.svg)\n\nA package manager that installs prebuilt Swift command line tool packages, or _Homebrew for Swift packages_.\n\n## Installation\n### Homebrew\n\n```\nbrew install swiftbrew/tap/swiftbrew\n```\n\n### Mint\n\n```\nmint install swiftbrew/Swiftbrew\n```\n\n### Swiftbrew\n\n```\nswift brew install swiftbrew/Swiftbrew\n```\n\n## Usage\n\n```\nswift brew install \u003cpackage-reference\u003e\n```\n\nPackage reference can be a shorthand for a GitHub repository\n(`Carthage/Carthage`) or a full git URL\n(`https://github.com/Carthage/Carthage.git`), optionally followed by a tagged\nversion (`@x.y.z`). Swiftbrew currently only supports public repositories.\n\n### Examples\n\nInstall the latest version of `Carthage`:\n\n```\nswift brew install Carthage/Carthage\n```\nor\n\n```\nswift brew install https://github.com/Carthage/Carthage\n```\n\nInstall `Carthage` version 0.33.0:\n\n```\nswift brew install Carthage/Carthage@0.33.0\n```\n\n## Why create another package manager?\n\n[Homebrew](https://brew.sh) is a popular method of distributing command line\ntools on macOS. Some popular Swift command line tools are already distributed\nvia Homebrew. But there are some limitations:\n\n- Distributing via Homebrew requires you to create a formula and then maintain\n  that formula.\n- If your package is not popular enough to be accepted into Homebrew's core\n  formulae, you would have to create and maintain your own tap.\n- As a package maintainer, a usual release process would be: build the\n  executable, archive it into a tarball/zipball, upload it to GitHub releases,\n  bump formula version. This is a cumbersome process.\n- It can be tricky to install a specific version of a tool with Homebrew.\n\n[Mint](https://github.com/yonaskolb/Mint) is a package manager that builds and\ninstalls Swift command line tool packages. Mint is more flexible than Homebrew\nas it allows installing a specific version of a package. The downside of Mint\nis that it requires you to build all packages from source. This can be very\ntime-consuming as you start replacing most of your Ruby tools in your iOS\nproject with Swift packages, since bumping a tool version would require\nrebuilding it from all your developers' machines.\n\n### Introducing Swiftbrew\n\n**Swiftbrew** saves Swift packages maintainers and users' time by caching\nprebuilt Swift command line tool packages, while flexible enough to let users\ninstall multiple versions of a package. Swiftbrew builds and caches Swift\npackages on CDN servers so that they are fast to download from anywhere.\nSwiftbrew bottles (prebuilt packages) are hosted on\n[Bintray](http://bintray.com), the same service that hosts Homebrew bottles. If\nany package is not available as a bottle, it will be built by Swiftbrew build\nworkers and cached after the first installation request, so that it will\navailable for everyone later on. Here is what an installation output looks\nlike:\n\n```\n$ swift brew install Carthage/Carthage\n\n==\u003e Finding latest version of Carthage\nResolved latest version of Carthage to 0.33.0\n==\u003e Installing Carthage 0.33.0\n==\u003e Downloading https://dl.bintray.com/swiftbrew/bottles/github.com_Carthage_Carthage-0.33.0.mojave.tar.xz\nBottle not yet available. Sent a build request to build workers.\n==\u003e Waiting for bottle to be available...\n==\u003e Pouring github.com_Carthage_Carthage-0.33.0.mojave.tar.xz\n🍺  /usr/local/lib/swiftbrew/cellar/github.com_Carthage_Carthage/build/0.33.0\n```\n\n## FAQ\n\n*What kind of packages can Swiftbrew install?*\n\n\u003e Swiftbrew can install any public Swift command line tool package. If your\n\u003e package can be built with `swift build` command, then it can be installed via\n\u003e Swiftbrew.\n\n*Can I add my own package?*\n\n\u003e Yes, if your package's Git URL is public. Just install your package with\n\u003e Swiftbrew, a built request will be sent to Swiftbrew's build workers, then\n\u003e the bottle will be available after a few minutes.\n\n*What platforms does Swiftbrew support?*\n\n\u003e We only have build workers that run macOS Mojave in the meantime. Other macOS\n\u003e versions and Linux may be added in the future upon community requests.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswiftbrew%2FSwiftbrew","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswiftbrew%2FSwiftbrew","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswiftbrew%2FSwiftbrew/lists"}