I applaud this, for people who prefer a GUI interface.
I started to write something to better organize synchronizing my Homebrew installation across multiple machines, then thought someone must have done this well already. Sure enough,
A fantastic, clean way to reinstall or synchronize Homebrew setups, using the command line. I'm surprised that Applite doesn't accept a brewfile to ease migration.
In my case I depend on Bash, Tailscale, and Ruby as installed by Homebrew, so a clean reinstallation is delicate. I have scripts to make sure I don't screw this up:
One more neat trick for Brewfiles: They're evaluated as Ruby code, so you can use if-else etc. to conditionally install things on different machines with a single Brewfile. I use that together with yadm to manage both work and private laptops with minimum duplication.
Agree, it's good for those that prefer a GUI. I'm not sure the intended audience since if you are using Brew, you are generally doing a lot of commandline stuff.
Your mention of the cross multiple machine synchronizing, however, is interesting! Good to find.
It's been about a decade since I ran desktop Linux in any meaningful capacity but I feel like that was the way a significant portion of the gui apps worked.
This becomes painfully obvious once the backend inevitably crashes at some point and the functionality of the editor is reduced to that of Notepad until you do a full restart
I wonder if you’d have a monetization path here via enterprise support contracts and/or additional device fleet management features. The tech companies I’ve worked at have all had some amount of “use brew to install …” in our dev spinup docs. And IT doesn’t love it because when they get asked to support it, there’s no quick way to see what’s installed or what version without logging into the specific machine. And for whatever reason, it’s also challenging to roll out dev laptops with specific packages already installed. I presume it’s because maintaining them is difficult.
Assuming everyone's on a Mac, I'm actually surprised there isn't that much use of something like homebrew-bundle[1]. It's definitely nicer to have your tooling run natively rather than, say, trying to wrap everything in Docker, or trying to get everybody on board with nix or guix.
I think the only real issue here is that you can't really pin to specific versions unless a formula exists, and there is no guarantee that a formula with a pinned version will stick around because homebrew likes to stay lean. So to that extent it can still be unclear what version of software someone is running on after enough time.
That's my first thought as well, there's a lot of IT companies supporting Macs that would LOVE a tool like this, especially if it's commercially supported.
I got to use it at work at Meta (as end user), and it seemed to work quite well. They delivered Android SDKs/IDEs and a bunch of other things that I'd personally install through Brew with Munki.
One feature I would love is an ability to export a list of downloaded apps so I can import and re-install from a new machine. Even better if you can sync with Mackup.
I’ve been keeping a shell script of all the install commands I run so I can get up and running quickly
You can already accomplish this with Homebrew. If you type 'brew bundle dump' it creates a Brewfile (basically just bunch of install commands) containing all the apps you've installed via Homebrew. Simply copy this file over your new machine and type 'brew bundle install'.
Bit of a tangent: I noticed in the screenshots a Jetbrains-like logo for an IDE called AppCode. Been considering tinkering with Swift/Obj-C development for a bit. I know XCode's reputation as being awful though, so it sounded great that Jetbrains had a product for this. To my dismay they discontinued it[0] last December. There is at least a freemium/community plugin for Swift support on other IDEs[1].
In a similar vein, I created a web tool that can take your cask selection, save it to a temporary link and let you install all apps without creating an account https://coldbrew.vercel.app
I am on macOS Monterey and seems this app requires Ventura or higher. Does it use any APIs from the newer OS version? If not, could you please consider relaxing this and allow older version installations too?
I wanted to at least target Big Sur, but the problem is that Apple doesn't understand the term "backwards compatibility" when it comes to SwiftUI. Every new feature they add to SwiftUI is only for the latest version of macOS. And since SwiftUI is a relatively new UI framework, they add things that are missing or greatly improved from the previous solution.
In conclusion, if I wanted to add extended support, I would have to put a ton of work into workarounds for features that are Ventura only.
I'm not the target audience (I prefer CLI), but as an iOS dev just wanted to say kudos. Great idea and looks to be very well executed. I'm curious to know how your experience with SwiftUI was on MacOS?
Very mixed. I hadn't done any app development before this project, only games with Gamemaker and the Godot engine. Coming from that background, SwiftUI was very easy to pick up. In general, if SwiftUI has the feature or UI element you want, it's super nice and concise. If it doesn't, you're pretty much screwed. Also, Apple doesn't really understand the term "backwards compatibility" when it comes to SwiftUI. Without doing a ton of work on workarounds, I was only able to target Ventura or newer.
Installed via brew cask command and get the following error:
App load error
Couldn't load app catalog. Check internet your connection, or try restarting the app.
I am running LuLu which I allowed the process to go through, tried to Retry and Quit but doesn't work for me.
My 2c, I like the logo on the website better than the app icon. The heavy drop shadows make it a bit dated. The website logo is minimal and clean in comparison and would look nice in the dock.
I was browsering through the app list, which is like a store, that's cool.
Does anyone know an good open source apps for limiting the amount of time you spend on distracting sites (like HN)? I've found some firefox extensions but nothing very good.
Nice job! Looks really slick. I totally would’ve made good use of this when setting up a new Mac a couple months ago! Sometimes having browsable categories is perfect when you’re trying to remember everything you normally have installed.
Am I correct that this only shows GUI apps that can be installed via Homebrew? I'm sure I have some command line utilities installed that aren't showing up in Applite.
Tbh, I'm not sure if mixing the two in one app would make sense. Maybe a second app at one point?
I moved from macports to brew as for a long while there were no build servers for arm for macports - having to regularly build clang and gcc from source just to patch a few utilities is not much fun. But I believe that's been fixed for a while.
I honestly think brew's policy of "latest, nothing or @specialcase" isn't great for a stable work environment. But it has a lot of mind share.
In my view NixOS is too much, GNU Guix for better or worse won't support propitary toolchains like Mac, pkgsrc looks best on paper - but seems abandoned? Which leaves macports as perhaps the best option and homebrew a close second.
I find myself preferring macports for a lot of things, but homebrew has brought its own niceness to the table.
It's just a bit of a nightmare as a software author because so much rework is done to repackage your stuff in n formats: one for nix, one for guix, one for debian, one for redhat, one for homebrew, one for macports, snap, flatpak, AUR, cross-compilation for alpine, maybe add a PPA in there for the ubuntu fans...and then some of them try to wrap packages on npm, rubygems, pypi, etc.
it's all done by the community but at the same time, so many of the people you want to help with your software won't touch it if their only option is to clone the repo and compile it (which in itself is simple, if done thoughtfully)
There would be a lot of value in whitelist and audit features for IT to manage their risk when letting developers install applications themselves (if not also a binary repository).
One model (and possible partner) here is Sonatype, with a growth path into binary repositories for development (Swift packages, cocoa pods et al).
I realize you might not want the burden, but you might partner with someone or some company. (And I would encourage others to collaborate before forking.)
Yes. You can also sell the project as-is with zero changes if you want. The only thing you have to be wary of is trademarks, which normally aren't covered under standard OSS licenses.
I love the guy's actual answer. It's always interesting to see this be a question. What is yum's monetization strategy? What is apt's? Does any package manager have a monetization strategy? If anything, they might be components to a larger distro that itself sells enterprise support packages, but the software itself is rarely if ever monetized. Homebrew is BSD-licensed and currently run by a nonprofit. The original developer never tried to make it into a product and "monetized" by parlaying the experience he gained doing it into highly paid engineering jobs in spite of having no formal training in computer science or software development, and eventually started his own company when he got tired of working for Apple.
Any tracking or privacy concerns we should be aware of that a polite adds on top of home brew? For example, does a polite collect data on the type of device, installed casks, user data, anything?
I started to write something to better organize synchronizing my Homebrew installation across multiple machines, then thought someone must have done this well already. Sure enough,
https://pumpingco.de/blog/brewfile/
A fantastic, clean way to reinstall or synchronize Homebrew setups, using the command line. I'm surprised that Applite doesn't accept a brewfile to ease migration.
In my case I depend on Bash, Tailscale, and Ruby as installed by Homebrew, so a clean reinstallation is delicate. I have scripts to make sure I don't screw this up:
1 brew bundle dump.sh 2 uninstall homebrew.sh 3 install homebrew.sh 4 renew bash.sh 5 renew tailscale.sh 6 renew ruby.sh 7 renew brew bundle.sh choose-shell.sh