5 ms·
Cygwin is and always will be only an emulation-layer, never the real deal. For most day-to-day things it works perfectly, but when you run into some corner-case
by metafex 11y ago
Cygwin is and always will be only an emulation-layer, never the real deal. For most day-to-day things it works perfectly, but when you run into some corner-case, most of the time you are out of luck.
My only real problem with Cygwin is, that it misses a command-line package manager. If they could adopt pacman for package management like MSYS2 does, I'd be a happy camper.
edit: To deploy Cygwin based applications you need to get a commercial license from RedHat (if it's not FOSS). Which could be a deal-breaker.
- typon 11y agoThis is a good answer. I always feel limited in Cygwin, it doesn't feel quite right. And it takes quite a bit of tweaking to get working correctly. Case in point: Try getting gvim to work properly from Cygwin.
- tavert 11y agoYou realize cygwin's setup.exe package manager has a CLI, right? The issue with pacman in msys2 is that it's posix dependent, which fails badly at updating the core posix layer itself. Cygwin's setup.exe is a native Windows executable and doesn't have this self hosting problem.
- koenigdavidmj 11y agoThat doesn't solve the problem that if it is trying to update the Cygwin DLL, you need to shut down everything. And if there's an update to something like bash or coreutils, same thing (since Windows does not allow writing to executables that are running).
- tavert 11y agoSure. But self-hosting pacman makes it literally impossible to do correctly. Updating cygwin itself should be done by an outside-of-cygwin solution to invoke setup.exe, just write a little powershell provisioning script or something.
- shadowfox 11y ago> My only real problem with Cygwin is, that it misses a command-line package manager. If they could adopt pacman for package management like MSYS2 does There is babun (https://babun.github.io/ https://babun.github.io/). It is essentially a wrapper around cygwin and comes with a package manager.
- emodendroket 11y agoI've always used apt-cyg to install things, which works OK.