Bps/homebrew Packaging System For Mac
On my Mac OS X machine, how would you recommend I install command line software and other packages? I've been using MacPorts and it always seems quite slow, presumably because it has to compile the packages on-the-fly.
I'd much prefer a package management system that has binary packages, saving me the need to compile things every time I want to download something new. I think Fink has binaries for some of the packages, but I usually see MacPorts recommended as the system to use.
Which do you think works better and why? (Or is there another system that I haven't heard of?). I used to use Macports because:. It is generally more up to date. Macports seems to be more common / popular.
Everyone else I work with uses it When I did my own research on this topic when I got my MBP last fall, Macports seemed to be most commonly recommended for reason #1 above, hence reason #2 (and probably reason #3). Compiling every package doesn't bother me. It is usually fast enough that it doesn't interfere with work. But you might look into if you're going to use macports.
However, I quit using Macports. There is also a new tool in this space. I switched from Macports to Homebrew a few weeks ago and I'm pleased as punch. I like:. It doesn't install duplicate libraries - it uses the system's existing libs.
It installs in the user home directory - no sudo required and backs up to TimeMachine. Homebrew works on Leopard or Snow Leopard, though sometimes Formulas need to be modified on Leopard. I think all my coworkers have now switched to Homebrew. It is also gaining traction in the Ruby and Erlang (and possibly other OSS?) communities.
Click to expand.(1) I hadn't heard of it until now. I had heard of Homebrew and although I currently use MacPorts, I was planning to give brew a whirl next time I do a clean install or break in a new Mac. (2) Homebrew/Macports/Fink, solve a real problem: installing and managing cross-platform.nix software, that runs from the command line or via XQuartz. Such software is compiled from source that sometimes needs tweaking or patching to build on Mac, has lots of dependencies to manage and needs to be kept in /opt/local or suchlike to prevent interference from stuff pre-installed by MacOS. 'Cask', however, appears to be a solution looking for a problem.
For native MacOS apps, AppStore or.dmg/.pkg downloads do the job and are ubiquitous - you can grab the latest version direct from the author/publisher's website, so why add a dependency on third-party 'Casks'? Click to expand.Sure. After faffing about to find out precisely what names cask uses for the apps (especially time consuming if it turns out the app isn't there), further faffing to find out if there are any installation options to set, then going to the publishers' website anyway to check if cask has the latest version.
Probably along with a bit of due diligence to make sure you're not getting pirated software (there are things like Adobe CC in the list at - how does that work?) It's not as if downloading a.dmg and clicking a.pkg or dragging an icon to Applications is one of the labours of Hercules. As I said, when the alternative is building something from a tarball, Homebrew etc. Click to expand.This is just the Adobe Creative Cloud installer app, so you'd still need to sign into that app and let it download your Adobe CC apps. In that instance there's not much incentive to use Cask to install the CC installer. For me, I'd want to validate each script I'm running before using them to install anything on my computer.
It's no more work to just go to a software vendor's site or the Mac App Store and just download what I need without worrying what a third party may have added into my download in their Cask script. After faffing about to find out precisely what names cask uses for the apps (especially time consuming if it turns out the app isn't there), further faffing to find out if there are any installation options to set, then going to the publishers' website anyway to check if cask has the latest version. It's not as if downloading a.dmg and clicking a.pkg or dragging an icon to Applications is one of the labours of Hercules. As I said, when the alternative is building something from a tarball, Homebrew etc.
Click to expand.You type ‘brew cask search’ and ‘brew cask info’ and find the cask in no-time. It is not that much of a problem. Caskroom often downloads the latest version due to lacking versioning at the source (e.g. App.dmg instead of app-1.5.dmg) and is pretty well-maintained, in my experience. If you happen to download an older version, then in most cases you will be notified in the app anyway. Caskroom is just convenience. Once you do have your list of apps it can be a very convenient way to set up your system in one go, especially after a ‘clean installation’ that so many people are after nowadays.
I like that about Linux as well, you just chain the packages you need into one command and the package manager takes care of everything. Click to expand.I don’t understand the cynical attitude. They are doing this for themselves and they have attracted quite an active community of people who maintain it. If it were fruitless, then nobody would care to pour as much work into this in the first place. Cask is a separate project from Homebrew. Some of the Cask core code was moved into the Homebrew core a while ago, but that is all.
Bps/homebrew Packaging System For Machines
It is not like Apple has given the App Store any love in recent years. App discovery is still abysmal and navigation is clunky. Many developers have chosen not to use it at all. What remains are dubious websites such as Softtonic and MacUpdate that are now pushing adware to stay alive. Caskroom is a nice alternative IMO.
I prefer getting software directly from a developer's website, or very seldom directly from the Mac App Store. I barely use the App Store just to browse for new things and even less often to directly look for specific tools I'd need. Google is so much faster for that. Usually my use case is that I have a problem (either very task specific or more general, like let's say an alternative to Adobe Illustrator) and would look for information about a fitting solution to it. So there is a lot of information collection involved, looking at screenshots, comparing reviews. Most of that I do either on the developer's website or another page that usually has a direct download link for me. So not sure how a command line install procedure would help here or shorten things in any way.
In most cases I am already at the tool's download page when I decide I would install or buy it. But this may vary for people with other use case scenarios. Click to expand.That's unfair: package managers like Homebrew and MacPorts are very relevant & useful for installing and managing crossplatform, open-source, (mainly) command-line-driven Unix/Linux packages that have many dependencies on other open-source packages, are designed to be distributed in source form and feature build-time options that need to be chosen at compile time.
However, they're strictly power-user tools for people who chose Mac because it runs Unix. Want to install 'ffmpeg' with all its dependencies and the features you want? Brew/macports may be the tool for the job. Question bank for mac. Want to install 'Handbrake'?

- just grab the.dmg. Click to expand.No clear preference - I'd usually check out the publisher/developer's website first - sometimes they direct you to the App Store anyway. For paid software, I'd want to compare both the price and the licensing deal with the AppStore - although the AppStore has DRM, the AppStore license is sometimes a better deal because it covers multiple Macs. On the other hand, the AppStore has known limitations when it comes to things like trial versions and paid upgrades (seriously, Apple, get with the program - 30 day trials and discounts for existing owners should be tick-box options for developers). Graphical user interfaces are more intuitive and easier to use which is why they become so popular. There are niche situations where a command-line tool is preferable for a handful of people, but for the average computer user, a graphical tool is simpler to use. That point seems to be lost on the OP.
Would your mom like to turn on your microwave oven with a command-line interface or would she rather press the 'Plus 1 Min' or 'Popcorn' button? Yeah, I thought so. Personally, I'd rather have Mac App Store download since mass updating is taken care of by the App Store application using a single consistent interface. I don't have to figure out where in any given app where the update mechanism resides.
'Is 'Check For Updates' in the File menu? Or maybe it's in the Help Menu?
Or maybe it's in the Edit menu under Preferences? Or maybe the About screen?' Also, there are instances of DMG/developer download sites that have been compromised with malware, so the additional scrutiny provided by the Apple's App Store is probably a wiser choice for Joe Consumer. As far as I can tell from the meager documentation on Homebrew Cask's website, there is no notification and update mechanism like 'brew cask update all' to update all applications previously installed by Homebrew Cask.
That makes it vastly inferior to the Mac App Store for Joe Consumer who sees a badge, fires up the Mac App Store then clicks on the 'Update All' button. That's the other major takeaway that the OP doesn't understand. The Mac App Store is far superior to all other methods in terms of application updating and version control. The more I think about Homebrew Cask, the more evident its shortcomings become. The first is current version control. The casks themselves need to be maintained which is probably being done by third-party hobbyists, not the actual application developers.
That means there's a lag between any new software release and an up-to-date cask. For example, if Google releases a new version of Chrome, there will be some lag time between that release and the updated cask.
If I use Homebrew Cask to install the software, there's a certain amount of uncertainty about whether or not I'm installing the latest version. The second is security. There's always the chance of malicious Homebrew Cask maintainer pointing the installer mechanism to download a malware-infected version of the software from a different server. At least when you use the Mac App Store or a developer's own download server, you can be relatively assured that you are getting a clean copy. Homebrew Cask adds an additional layer of uncertainty because there is no assurance of the provenance of the software. The third is the requirement for Xcode Command Line Tools.
The average Mac user doesn't have these installed. Does it make sense to install about 200MB of command line tool software just for a command line installer based on all of the shortcomings I've listed above? For Joe Consumer, the answer is clearly no. Click to expand.Yet most applications distributed outside of the App Store are provided on disk images and the developer expects the user to copy the application to the /Applications directory.
I always thought that this is rather obvious and easy to understand, yet it turns out that this is a problem for some people and they instead open the application directly from the disk image and always attach the image, unaware of what they should do with it. The App Store is clearly the superior method of installing and updating apps, but due to Apple’s rather strict policies for many still not an option. Click to expand.Well, most.dmgs like that open up a custom window with an alias to Applications and a large, friendly message saying 'Drag this to here.' Or, you can ship a.pkg called 'Install AppUWant'. Does anybody seriously think that any user who can't cope with that is going to find it easier to locate and run Terminal.
and type: brew cask search ' App U Want' brew cask install Cask-Name-For-App-U-Want.with correct spacing and punctuation?and they're certainly not going to be able to cope if something goes wrong and 'it says error'. Anybody with such a low level of expertise is exactly the sort of person who would be well advised to have their Mac set to 'only allow Apps from App Store'. (.
remember, if one of the first things you do when you unwrap a new Mac is dive into Applications/Utilities and drag Terminal to the Dock, and maybe install GoToShell or something to boot, then you are not a typical user). Well, most.dmgs like that open up a custom window with an alias to Applications and a large, friendly message saying 'Drag this to here.' Or, you can ship a.pkg called 'Install AppUWant'. Does anybody seriously think that any user who can't cope with that is going to find it easier to locate and run Terminal. and type: brew cask search ' App U Want' brew cask install Cask-Name-For-App-U-Want.with correct spacing and punctuation?and they're certainly not going to be able to cope if something goes wrong and 'it says error'.
Anybody with such a low level of expertise is exactly the sort of person who would be well advised to have their Mac set to 'only allow Apps from App Store'. (. remember, if one of the first things you do when you unwrap a new Mac is dive into Applications/Utilities and drag Terminal to the Dock, and maybe install GoToShell or something to boot, then you are not a typical user). Click to expand.I am not arguing in favour of the command line here and I think that the question as to why it is not going to resonate with the ‘average user’ has been clearly answered by now.
I am saying that the current way of doing things outside of the App Store is still less than ideal. I think that a bit more open-mindedness about alternative ways of installing applications is a good thing, hence why I oppose the overall skepticism here. Think also of the possibilities.
Assuming that Caskroom manages to provide a solid and secure foundation in the future, which they currently do not, I cannot see why a GUI companion app could not be provided. I think there is something appealing about an automated solution next to what the App Store already offers.