4 ms·
Can you boot from them and preserve fully working UNMODIFIED system after upgrade? Nope. That is the difference in ZFS Boot Environments. You can do that with
by danieldk 8y ago
Can you boot from them and preserve fully working UNMODIFIED system after upgrade? Nope. That is the difference in ZFS Boot Environments.
You can do that with btrfs. You can make a snapshot of the whole filesystem and set a subvolume to boot.
Another approach is taken in Team Silverblue (formerly Fedora Atomic Workstation) [1], which uses OSTree snapshots with package layering. It stores the system as a git-like content-addressed object store. So not only can you boot into any version, you can guarantee that two systems are identical by checking out the same OSTree commits.
I also used Mac OS X (it was called that way before it became macOS) and I also liked it, but I feel on FreeBSD more 'at home'.
And the FreeBSD project actually cares about its UNIX user land. I am not sure if I can say that for Apple anymore. Outdated utilities, missing man pages, dtrace unusable by default due to SIP, etc.
[1] https://teamsilverblue.org https://teamsilverblue.org
- Fnoord 8y ago> And the FreeBSD project actually cares about its UNIX user land. I am not sure if I can say that for Apple anymore. Outdated utilities, missing man pages, dtrace unusable by default due to SIP, etc. Apart from Dtrace (which you can of course run in VM) it is just a matter of installing and using Homebrew.
- danieldk 8y agoI use Homebrew, but you have to prefix most GNU utilities by 'g', unless you are willing to 'override' Darwin's utilities by having the GNU counterparts earlier in the path. Besides that, Homebrew does not solve the fact that for a lot of Apple-specific utilities, subsystems, and daemons there are no man pages. (I do agree that Homebrew is a great project, have been using it pretty much since its inception.)
- Fnoord 8y ago> I use Homebrew, but you have to prefix most GNU utilities by 'g', unless you are willing to 'override' Darwin's utilities by having the GNU counterparts earlier in the path. That's typical for *BSD. Examples include gcc vs cc, gmake vs make, and many others.
- coatmatter 8y ago> Outdated utilities, missing man pages, dtrace unusable by default due to SIP, etc. After checking out macOS for the first time in late 2016, it took me until only recently to realise macOS mostly only supports info pages - not man (but to confuse matters, some man pages for certain things like "man ls" do work). Even something as recent as git only offers info pages in Darwin - I'd love to understand why that is. I've had to run through the "info info" tutorial a few times because the keyboard shortcuts seem neither compatible with emacs nor Readline and they still feel clunky compared to man pages, but I sort of know my way around them now to not have to frequently Cmd-tab back to Safari and figure out which desktop/workspace I've ended up at and how to get back (fwiw, I favour i3). As for the outdated utilities, I do think it's a little absurd that brew and brew cask are essential add-ons to fetch what should already be present and "just work" (e.g., coreutils).