Cork
A fast GUI for Homebrew written in SwiftUI
Special Thanks
I'd like to personally thank Seb Jachec for implementing a system for getting real-time outputs of Brew commands.
Without his contribution, many of the processes that depend on real-time outputs, such as installation, uninstallation and updating of packages, would be impossible.
Advantages of Cork
Cork is not just an interface for Homebrew. It has many features that are either very hard to accomplish using Homebrew alone, or straight-up not possible.
Things that Cork makes easier
- Listing of installed packages. Cork has its own way of loading packages, which is around 10 times faster than the Homebrew implementation.
- Knowing which packages you installed intentionally, and which packages wwere installed only as dependencies. While somewhat possible with the
brew leaves
command, it is often unreliable, often not listing packages that should be included. - Updating of only selected packages. Again, while possible with Homebrew alone, Cork makes it so easy you wouldn't believe it is not this simple in Homebrew itself.
- Showing you exactly which packages a package is a dependency of. Super annoying in Homebrew, effortless with Cork.
- And many other features! Just try Cork out and try finding them all 😉
Things that are not possible without Cork
- Clearing of cached downloads.
- Updating packages from the Menu Bar without having Cork open.
- Seeing this much info about a package in one convenient location.
- Tagging packages. This is a Cork-only feature that lets you mark any number of packages you'd like to keep track of.
Getting Cork
Pre-compiled, always up-to-date versions are available from my Homebrew tap, which you get access to by donating 5€/month. You can donate through Ko-Fi or GitHub Sponsors.
However, as Cork is open source, you can always compile it from source for free. See below for instructions.
Screenshots
Main Window
Package Info
Tap Info
Install Package
Add Taps
Brew Maintenance
Compiling Cork
Compiling Cork is simple, as it does not have many dependencies.
Prerequisites:
- macOS Ventura or newer
- Xcode 14.2 or newer
- Git
Instructions:
Before you begin
Skip if you already have an Apple Developer account
- Enroll your account in the developer program at https://developer.apple.com/
- Install Xcode
- Add your Developer account to Xcode. To do so, in the Menu bar, click
Xcode → Settings
, and in the window that opens, clickAccounts
. You can add your account there - After you add your account, it will appear in the list of Apple IDs on the left od the screen. Select your account there
- At the bottom of the screen, click
Manage Certificates...
- On the bottom left, click the + icon and select
Apple Development
- When a new item appears in the list called
Apple Development Certificates
, you can pressDone
to close the account manager
Compiling Cork
- Clone this repo using
git clone https://github.com/buresdv/Cork.git && cd Cork && open .
- Double-click
Cork.xcodeproj
. Xcode should open the project - Wait until all the dependencies are resolved. It should take a couple minutes at most
- In the Menu Bar, click
Product → Archive
and wait for the building to finish - A new window will open. From the list of Cork rows, select the topmost one, and click
Distribute App
- Click
Copy App
- Open the resulting folder. You'll see an app called Cork. Drag Cork to your
/Applications/
folder, and you're done!
License
Cork is licensed under Commons Clause.
This means that Cork open-source and you can do whatever you want with Cork's source, like modifying it, contributing to it etc., but you can't sell Cork or modified versions of it.