Apple should follow MS's example and open source its Terminal.app
It's a decent terminal emulator, but could use several enhancements and the community could help.
For some reason I haven't changed to iTerm yet, even though it's been objectively better in every way for years.
Even the minor gripe I had with font rendering is fixed.
There's something about using default apps as much as possible that appeals to me. But Terminal.app is lagging compared to the competition.
> It's a decent terminal emulator, but could use several enhancements and the community could help.
It's the only modern terminal that passes the VT torture test. It supports double width and double height characters (great for terminal error messages).
It doesn't support overline (which is awesome for status lines at the bottom of the screen) and requires font support for line drawing and block graphics (Unicode 13 introduced 2x3 blocks and the next one will introduce 2x4s).
> There's something about using default apps as much as possible that appeals to me
For me it's one less thing to distract my distraction-prone brain.
Better keyboard only text selection, vertical/horizontal splits (I know about tmux, I still prefer scrolling and searching on true app), true color support, image visualizing would be nice.
> Apple should follow MS's example and open source its Terminal.app
This is bellyaching about nothing. Instead, Microsoft should follow Apple's example and open source the operating system. The only part of macOS that is not open source is the GUI, i.e. Quartz Compositor, and the gui applications. Microsoft, meanwhile, is an incredible slouch when it comes to open source, only very recently changing their hostile "embrace, extend, extinguish" stance towards OSS.
>Microsoft should follow Apple's example and open source the operating system
1. Apple did not open-source MacOS. Hell, I can't even buy a copy of it and run it on a PC but instead I have to buy Apple HW to get it, while at least I can download a copy of Windows and run it (even unregistered) on any cheap PC HW and develop SW for it, without paying for Microsoft hardware, or even for the OS itself (gray legal area), unlike Apple where the only way I can run MacOS and develop SW for it is by buying Apple hardware which is a far more restrictive way, from a monetary perspective, to get someone on board
2. Microsoft cannot open-source Windows as it contains a lot of third party code for which it has no licensing rights to open source. They've explained this multiple times. I assume the same applies to modern MacOS.
I probably shouldn't dignify this with a response, but yeah, you don't know what you're talking about. The kernel XNU is OSS. The BSD userland is OSS. This means that technically, the operating system is open source. If you go by file count, there is far more OSS in macOS than not. But if you want to go by file sizes, then the only closed source parts of macOS, again, are the GUI, the Quartz Compositor, and a lot of Apple's installed applications, which are bound to have large file sizes. So it is deceptive and frankly false to claim speciously there are, plural, "orders of magnitude more closed source than open in macOS."
But every release Apple releases more open source software.[1] No other proprietary operating system vendor releases more open source than Apple.
I think a lot of value comes with the Frameworks, with them you get at least source compatibility with macOS and without them the core operating system will just be another Unix operating system without much hardware supports.
So I personally put much more weight on the Frameworks over XNU and BSD userland. There is a reason GNUStep is less dead than PureDarwin :D
That's fine, but the frameworks are not installed with macOS. In order to get them, one must sign up for a free developer account, at least, and install Xcode, which is massive, but I'm not sure how you can say it is part of the OS when most people never install it.
The system frameworks e.g. Cocoa, Foundation, CoreServices come with every installation as binaries. These are the building blocks of the GUI and mac default apps. They act as the abstractions to the underlying BSD and Mach system and basically what define a macOS system. [1][2]
My point is I put more value on the closed source parts more than the core OS and even the GUI itself. If these were to be open sourced, practically means possibility of source compatibility (even binary compatibility) on Linux and that is huge deal for the public. On the other hand, I'm not sure how can anyone besides compiler and driver developers can benefits from Darwin being open source.
Cocoa/UIKit, Quartz, Core*, drivers, etc are all closed source and much larger (by line count) than the kernel and BSD stuff.
You can even throw WebKit and LLVM (which are humongous) in the mix and it won't change the balance.
But since I can't link to them and neither can you, we're just going to keep saying the other one is wrong in a web forum.
And that is expected, because graphics takes up a lot of space, so this comparison is not intellectually honest. But I'd like to see you try running just the "Cocoa/UIKit, Quartz, Core*, drivers, etc" without the kernel and BSD userland. Without the GUI, we still have an operating system that is entirely OSS. With only the GUI, we have nothing that works.
> But I'd like to see you try running just the "Cocoa/UIKit, Quartz, Core*, drivers, etc" without the kernel and BSD userland
That's the point we can't because they are binaries (with strict EULA at that) but make it open source I can guarantee they will be ported to Linux within a year :D
> Without the GUI, we still have an operating system that is entirely OSS. With only the GUI, we have nothing that works.
entirely OSS operating system that lacked hardware supports to be useful, what is the point over something like Linux. Even FreeBSD supports more hardware.
>because graphics takes up a lot of space, so this comparison is not intellectually honest
I've written “by line count”. It's more code, lots of it, not binary size.
>Without the GUI, we still have an operating system that is entirely OSS. With only the GUI, we have nothing that works.
You're discussing merits, I've been arguing about an absolute value: lines of code.
But if you want to discuss merit, here's another objective data: Darwin has been open source for 20 years. No one runs it. Because all the value is at the top layers and lower closed source ones. See the trouble folks at Asahi Linux are going through to reverse engineer the M1's GPU graphic driver.
This is a straw man, and also not entirely accurate. Darwin is BSD, and in theory just as useful as BSD, or FreeBSD, NetBSD, and useful to developers, and to anyone that can figure out how to install it and use it. [1] Meanwhile, Windows without hardware less than 2 years old is absolutely worthless. Thus, Linux.
If it were not true, Linux would never have become popular. Linux evolved beyond quickly fixing what Microsoft broke to take over the server space, but that was Linux's first practical reason for existing, to mitigate the problems with Windows slowly dying after about 2 years of being installed and used daily.
> Meanwhile, Windows without hardware less than 2 years old is absolutely worthless
This seems like a massive exaggeration. I am currently running Windows 10 on a refurbished laptop I bought in 2012! (So, actual hardware is even older).
I was a Terminal.app user since Tiger, only recently had to switch to iTerm 2 as since Big Sur it forces anti-aliasing on non-HiDPI displays, even when turned off in the settings (I like non anti-aliased Monaco 10pt). It looks like a bug, but hasn't been fixed since.
If you use a font which doesn't have outline data Terminal.app and you set the rendered size to whatever is the native size of the font, Terminal.app will show you the unadulterated bitmap (if you use a multiple of the size, Terminal.app should scale it up without anti-aliasing).
I generate a .dfont without outline data based on a tweaked version of my favorite bitmap font, in Font Forge.
Now, if there is a way you can pre-render your favorite outline font to a bitmap and write it as a .dfont without outlines (other extensions may be fine, not sure though), you could switch back to Terminal.app. But font tools on GitHub etc. are very very few and never work that well, if they even do what they advertise at all.
It's a decent terminal emulator, but could use several enhancements and the community could help.
For some reason I haven't changed to iTerm yet, even though it's been objectively better in every way for years. Even the minor gripe I had with font rendering is fixed.
There's something about using default apps as much as possible that appeals to me. But Terminal.app is lagging compared to the competition.