I'm pretty happy with the way CS6 works with PlayOnLinux(Ubuntu 16.04, Wine 1.7.24-CS-0.9.1-DXHR). It's not perfect, but I have no problem getting the work done (mostly design). I wouldn't use it for drawing/painting though.
If you're interested in doing digital art on linux - I highly recommend checking out Krita. I've discovered it a year ago and was blown away, if you're an artist - it does everything you may need, and works extremely well.
----
Slightly off topic - I'm also quite happy with using linux for the rest of my digital art needs:
- Kdenlive is an excellent video editor. Works extremely well, and is pure joy to use.
- Nuke and Houdini have native linux versions that work perfectly. I think Maya should work fine too, but I haven't tested that.
- Silo 2.5(most recent version) works flawlessly under wine, and is perfect for any 3d modeling.
- I don't develop games, but both Unreal and Unity work very well.
The point is, several years ago you couldn't realistically use linux for professional 2D/3D work, now you totally can.
Maya definitely works, but I've always needed to create symbolic links and other tweaks for it to work on non-fedora distrust. Can also confirm that Nuke works great on Linux, if you can afford the price tag.
Consider this an "outside opinion" from an external developer, but my first impression upon reading the thread is that I think the whole design of "key state caching" is wrong and a symptom of a bigger problem.
Apps are polling GetAsyncKeyState() for good reason --- because they want that low-latency responsiveness which is important in situations like drawing with the mouse. Adding a cache defeats that, hence leading to bugs like this one. If your API implementation is slow, then profile and figure out how to make it faster because it obviously works fine in Windows.
As the saying goes, "Never add another layer of complexity when your problem can be solved by removing and/or optimising the existing ones."
The architecture is inherently different: it works fine in Windows because there's only one canonical key state and the operating system is looking after it.
Wine, on the other hand, is running within X Windows, and the canonical key state belongs to X. It's in a different process and it might even be on a different computer. So either they have to poll it (slowly), arrange for asynchronous notifications (may not be possible and undoubtedly has similar conflicts with synchronous access), or poll it a limited amount and then cache it.
The whole point of Wine is adapting one API to a fundamentally different one. It is the added layer of complexity.
Edit: another discussion suggests the X by design does not allow an application to see keystrokes aimed at another window, nor is there a global hook mechanism.
"they want that low-latency responsiveness which is important in situations like drawing with the mouse"
Yes to this in general, not just with mouse polling- I've noticed a disturbing trend towards more and more buffering, caching, and latency in a lot of modern software and hardware. In my humble opinion, if your API/interface can't match the response time of the human nervous system, then it's just flat out broken. Nerves fire at 100 hz, for pete's sake. Transistors operate on a gigahertz level. Let's get our sh together, people.
Post like that brings me back to earth every time I dream of running Linux only. I commend the work of everyone involved, people working for free on their spare time for the common benefit is great. But celebrating CS5 compatibility in late 2017… it's sobering.
To be fair, this is not for CS5 compatibility specifically (that was one of the more visible impacted apps), but multi-threaded applications that continuously poll for mouse state against a non-thread safe state-cache introduced in an earlier version.
Also wine is not linux, and photoshop is not a linux program. If you want to run Linux only, then alternatives like krita, gimp etc.. exist that work natively. While I admit they often don't line up with adobe's tools yet, Krita's come a long way from what I've been told, and for a good portion of basic photoshop tasks (rgb only for the most part) you can use gimp quite effectively.
As a non-graphic designer I use linux daily and love it. I only keep windows around for the few windows-only games I still play
Krita + Gimp can cover nearly all use cases from my understanding. Yes, as I mentioned GIMP doesn't really have CMYK support so that's limited to RGB editing (web, digital etc..), however Krita has it and has come a long ways.
So I'll double down on my statement that a good 20-30% of photoshop use cases can be covered by GIMP, with the exception of non-RBG requirements like printing that could possibly move to Krita or other tools.
> Post like that brings me back to earth every time I dream of running Linux only.
It's not a Linux problem, it's a Windows emulation problem in Wine.
As for Linux, I'm using it for 25+ years, and I ditched Windows 10+ years ago. Windows is not necessary to do stuff. However, if you vitally depend on CS5 then running CS5 in emulation is not the best idea. At least you can use it properly in a PC emulator like VMware in Linux.
Emulation is still a very hard problem in computer science. We may never get a proper xbox emulator. And more obscure consoles are doomed to be forgotten. Emulating Windows is a bit easier because it's on the same hardware, but it's still never going to be perfect.
That said, so what? It's cool that you can use Windows software on Linux. But even without that it's still a perfectly usable OS.
Yes, it took them literally years to fix it and it wasn't a particularly difficult fix. That's why companies prefer paid software - if something doesn't work, they can complain to the company and the company is obliged to fix it... as opposed to waiting years for the right volunteer developer to prioritize one of many issues.
Slightly off topic: Does anyone here have CS6 running on the macOS >= Sierra? I was only able to find information that this is not possible because the launcher requires Java and Apple removed the JRE from macOS.
This seems like a very naive view to me. This attack on Wine is by extension an attack on Linux, or otherwise I don't understand it. Wine exists for convenience for Linux users to use Software that has not been made available on Linux.
Some advantages of Linux:
* Can choose from a variety of window managers to suit your needs, from windows-like (Chalet, Zorin), to developer focussed (eg i3)
* Linux is free. Windows 10 isn't, unlike you claim. Unless I'm been mislead, the Windows 10 for-free offer was simply an ugrade for existing Windows installs; not a free to all offering. It's therefore unavailable unless you've already 'bought-in' to the Microsoft ecosystem.
* Linux has had updating figured out for years and lets you update in the background. Windows still pesters you do reboot.
* Package managers are a much more efficient way to download and install software than any way I have seen on Windows.
Some disadvantages of Windows 10:
* Bundled with a lot of bloatware (from what I have seen)
* Tracking / selling user data (PII? Not sure.)
* Ads on the start menu
Plus, with the existence of Linux, at least Microsoft doesn't have a full monopoly over the PC OS market. That said, I'd rather have myself be nestled firmly in the hands of a community than a corporation.
I still wonder why Windows exists when Linux is such an excellent OS. /s
The "for free" offer was temporary, and has expired. That is what matters.
It even worked on pirated versions. You could even upgrade say your Windows XP to a later version (pirated or not) and then upgrade to Windows 10, for free. You get a valid license that way.
You paid 2-fold: one, you were an early adopter and therefore beta tester. Two, you paid with your privacy. The anti-spyware toolkits to remove the telemetry and other stuff weren't sophisticated. Plus, Microsoft went out of their way to sabotage these.
Linux also requires reboots because of kernel upgrades. Microsoft maybe does it more, but its also due to bad programmed 3rd party apps.
Windows has its own package manager these days. Apple's App Store and Microsoft's Windows Store are nothing more than a GUI for a package manager with some Web 2.0 (or 3.0) capabilities.
Your disadvantages are fair enough, but they can all be circumvented with say O&O ShutUp or one of the many other applications which remove the spyware/bloatware/adware.
What I f* ing hate about Windows is the lack of shell scripts and the need for Powershell and CMD.exe/*.bat. I don't want to use or (re)learn that shit. Microsoft could've adopted Bash but they went with Powershell instead. Windows Subsystem for Linux is decent, as was Cygwin, but it just isn't the same as native. The same's true for WINE. So I still prefer macOS; seems to be the best of both worlds. Although terrible for gaming. You want a gaming rig for that. Which could very well run on Linux, these days, given Steam's adoption plus WINE.
Good summary though. Could use some nuances (which I did mention) but we gotta start somewhere.
The free upgrade was to gain critical mass for the upgrade, they learned with vista, 8/8.1 that users were happy with xp/7 and wouldn't pay to change, even with LTS running out. Free upgrade was a way to convince a lot of those people to upgrade. I wouldn't compare it to Linux being free in any way.
Microsoft needs to reboot to do most of its updates of its own tools, not because of badly programmed 3rd party apps but its own badly programmed apps. Out of the box with no additional software it still needs to reboot, it also takes forever, hijacks reboots without the users ability to override (sometimes for 30-60 minutes while it tries to install updates). Linux only needs to reboot for kernel upgrades, and even that isn't a full requirement (there are ways, but they aren't worth it, to load a new kernel without rebooting).
Windows store is very far from anything like a linux package manager, and it ties you into their ecosystem without extensibility. Same with Apple. Linux package management is extensible and controllable (get packages from these sources, not those, blacklist this version, etc...) so I wouldn't consider them anywhere remotely equivalent.
The obvious/known privacy issues in windows 10 can be disabled, but the fact the user has to know about find and run third party, reasonably advanced tools/scripts to stop the operating system from spying and advertising to you is absolutely not acceptable from my perspective.
I guess sometimes nuance needs to be more nuanced
For the record I use osx/linux for work, linux/windows at home. Windows only for games that don't work on linux yet.
> The free upgrade was to gain critical mass for the upgrade, they learned with vista, 8/8.1 that users were happy with xp/7 and wouldn't pay to change, even with LTS running out. Free upgrade was a way to convince a lot of those people to upgrade.
That is one of the reasons.
> I wouldn't compare it to Linux being free in any way.
Obviously not, given "Linux" is free as in speech. But free as in beer, when you also take into account things like support, doesn't exist. TANSTAAFL. And with macOS you pay via the hardware.
> (sometimes for 30-60 minutes while it tries to install updates)
On a SSD? Very unlikely, unless you're upgrading to a major version. True, Microsoft could make most of these updates being applied whilst OS is still online.
You can schedule these reboots if you got Pro. macOS also sometimes needs to reboot btw. My Android reboots every week (LOS) for new firmware.
What I said about apps requiring unnecesarily a reboot is true though. It used to be far more pervasive as well.
> Windows store is very far from anything like a linux package manager, and it ties you into their ecosystem without extensibility. Same with Apple. Linux package management is extensible and controllable (get packages from these sources, not those, blacklist this version, etc...) so I wouldn't consider them anywhere remotely equivalent.
Depends if you view it from the eyes of a power user or a casual user. The non-technical user just wants something which works ie. a good UI. App Store and Play Store provide that. Those non-technical users don't give a rat about features like "get packages from these sources, not those, blacklist this version".
> The obvious/known privacy issues in windows 10 can be disabled, but the fact the user has to know about find and run third party, reasonably advanced tools/scripts to stop the operating system from spying and advertising to you is absolutely not acceptable from my perspective.
Yeah, true, though the default settings aren't difficult to apply this is a feature most users won't use (just like "only" 33% of the browsers use an adblocker). That, together with their old model of selling licenses, is their business model.
Its funny how in these last 2 points we both shift from PoV of power user to ordinary user and vice versa.
That's the primary reason as I've been told by former MSFT employees.
> But free as in beer, when you also take into account things like support, doesn't exist.
Support exists, red hat and other foundations.
>On a SSD? Very unlikely, unless you're upgrading to a major version. True, Microsoft could make most of these updates being applied whilst OS is still online.
I just upgraded 6 systems over Christmas, every one to SSD, all running core i5/i7 with more than 8gb ram. Yes, 30-60 minutes for the fall creators update on half of them, one of them took 2 hours to finish other updates.
>You can schedule these reboots if you got Pro. macOS also sometimes needs to reboot btw. My Android reboots every week (LOS) for new firmware.
Once in a while I need to reboot osx or linux for a kernel update or other deep system update. Every time I need to reboot windows. The difference is staggering and in no way does the occasional restart from linux compare to windows. To pretend they're even in the same league is ridiculous. Windows 10 barely fixed that by moving a features to apps.
>Depends if you view it from the eyes of a power user or a casual user. The non-technical user just wants something which works ie. a good UI. App Store and Play Store provide that. Those non-technical users don't give a rat about features like "get packages from these sources, not those, blacklist this version".
Reasonable point, however non-technical users do want to be able to find their software. Microsofts store sucks compared to apple and androids from my experience, and the vast majority of non-technical users still don't use it for many/most of their software installs from numbers I've seen. That may be changing, i'm not sure the trends. My point was in linux, you're advanced enough to use the package manager and you probably know how to add sources as a casual user. In microsoft its a walled garden, and a shitty garden.
Beyond that, casual users don't want to be spied on, just because they aren't technical enough to understand whats happening and the implications does not mean microsoft should just get a 'pass' on making it difficult/impossible to disable spying on their users. This is, if anything, significantly worse if you're looking at it primarily from the casual user side which you seem to insist on.
> Microsoft could've adopted Bash but they went with Powershell instead.
Because Powershell is a better designed, more powerful, saner implementation of the original Unix philosophy of having small tools that do one thing well and combine easily to do complicated tasks. Bash and coretools are primitive bullshit by comparison.
Win10 is still ridiculously easy to pirate, and the "assistive technology loophole" remains open. I don't think this is accidental, especially after all the underhanded tactics MS was using in an attempt to force everyone to upgrade. They probably figured monetising your personal data was worth far more than just selling Win10 licenses.
I think it is more about getting as much users as possible to use their store and the Windows 10 ecosystem, where they are probably planning to get most of the money (and use part of that to fund Windows development)
(Yes, Windows 8 has the store too, but I think that there are a number of difference that makes the distinction relevant)
> They probably figured monetising your personal data was worth far more than just selling Win10 licenses.
That plus the people who run older versions of Windows already paid for it. If they're pirated they didn't paid for it, but its unlikely they will and they didn't pay the PII tax either.
> * Package managers are a much more efficient way to download and install software than any way I have seen on Windows.
Package managers are probably my second least favorite thing about using Linux as a desktop (the Linux Desktop community would be the first by a wide margin). Package managers, as implemented, are a horrible mechanism for software installation. They have all the problems of walled garden app stores, shared namespaces, and the registry. Ever see a package manager database get corrupted? Good luck ever fixing that. Want to install two different versions of the same application? Too bad, unless they're different enough that the repo maintainers decided they were separate software (only python 2/3 comes to mind). How about installing software to a different path? Nope, sorry. Good luck with make install.
There are even Linux developers sane enough to realize that this is silly, which is why you have things like AppImage. Not that more than a handful of applications are distributed that way, because Linux people quite often mistake tradition for wisdom. Oh, and the little problem of Linux not having a defined base system you can rely on.
Installers/uninstallers aren't any better, but they're only worse in different ways. That's why there's Portable Apps.
They also have the benefit of walled-garden appstores: Users don't have to care about all of the things you mentioned. If I want to use Thunderbird I just apt-get install it. Normal users almost never want two versions of the same program, and they don't make install either.
I've never seen a corrupted package database. I have seen lots of software on Windows that couldn't be properly deinstalled for some reason or other though.
"Normal users don't need that."
"I've never seen it, therefore it isn't a problem."
You want to talk up a system for being stable, malleable, and under the user's control, then you pull out lame excuses like that. It's no wonder Windows still kicks the Linux Desktop's ass in the market even with all its crap and having to pay for it.
I'm just thinking about the needs of my friends and family. I still recommend Windows to them, but the lack of a package manager is definitely an argument against Windows.
Besides Windows 10 telemetry being a privacy invasion, there are people who just prefer Linux or another Unix-like. Why would they switch to Windows?
E.g. take me. I have used UNIX in some shape or form since 1994. I do not have anything against Windows. Technically the NT kernel is a marvel of engineering. But my brain is just fundamentally incompatible with Windows. The UNIX shell is ingrained, vim keys are ingrained, etc.
definitely more secure than their counterparts
Based on what criteria? And what counterpart are you comparing Windows to? Linux with X.org? Linux with Wayland and SELinux? macOS?
What I love with my Linux is the total control I have over it. I can customize many things, have my own desktop environment while leaving other members of the family with KDE. I can update what I want, install apps with "aptitude" super easily and nobody ever asks me for my position, my age, phone number or email. Life is sooo quiet on my Linux.
(Linux "breaks" (more exactly, userland stuff) more often than windows, but when it breaks I can do something about it and learn a thing or two while I fix it).
To be fair, Linux the kernel almost never breaks userland stuff. That's the fault of Linux distributions (and glibc), and Linus has bitched them out over it several times, not that they listen.
I do all of my electronics development work on Linux. In part also using nonfree software. This is not a matter of principle for me, but a matter of productivity and efficiency.
- design circuit and PCB using EAGLE (nonfree – and BTW fuck that Autodesk subscription model).
- perform circuit simulation using LTSpice.
- compile firmware using a GCC toolchain – if using a MinGW port on Windows the linking times even for small images are abysmally long; I don't have time for that.
- since recently: synthesize and route FPGAs using yosys and the iceStorm tools.
- flash using OpenOCD.
Not all of these tools work without flaws under Windows (neither as port nor in the WSL). Of all the tools above there's only one for which no Linux port exists: LTSpice. That's what I use Wine for.
I completely agree that The GIMP and Inkscape are not a sight on Photochop. It's quite obvious - the former are developed by volunteer hobbyists, the latter by a paid team of engineers who have focused job titles.
But that doesn't make them inferior, because user-interface consistency and ease of use are not the only metrics used in the real world to select software by.
What is better or worse should also include a cost/benefit analysis on the price of the product(s). That should include the cost of things like support, or the cost of in-house experts.
When we factor in things like support, we have to consider not only cost, but also metrics like its quality and performance/price. If I had a dollar for every support ticket that got ignored for months or years... For community support, that can be fine, but when you are paying maintenance, that's unforgivable.
Aye, its a can of worms because of the complexity and subjectivity alone.
The other day saw a comment on HN on how to best get signal as a customer. IIRC was something like IM < e-mail < phone < real-life. Did you try phone as a follow-up?
I'll bite. Ignoring the obvious bait it is an interesting question.
Windows 10, by default, comes with Microsoft spyware (or settings) which one has to remove.
Running Windows 10 native isn't always possible or desirable.
You can run WINE (and CrossOver, the commercial 'version' of WINE) on any platform including Linux (e.g. Ubuntu), macOS, and [recently] ChromeOS.
Its also being used in more obscure OSes like *BSD and Illumos. And its a core part of ReactOS, which is basically a native FOSS Windows version which can run software backwards compatible.
One could even run WINE on say a Raspberry Pi, together with QEMU. Also, not every architecture has a good HVM with virtually no performance loss. Think of ARM or older Intel/AMD CPUs (if you'd reapply the cooling paste these machines could still run just as new).
Finally, if you'd run Windows 10 in a HVM you'd have a lot of additional bells and whistles. Though IIRC it is possible to just run one application in one window with say VMware or VirtualBox.
> One could even run WINE on say a Raspberry Pi, together with QEMU.
I've seen retro gamers do just this for old Windows games thus saving them having to running a massively outdated and insecure version of Windows on custom built arcade cabs.
> There's also Windows Subsystem for Linux. You can get a full-blown OS like Ubuntu or SuSE that way. Well, that is, sans Linux kernel and sans X11.
You can use X11 applications if you install an X11 agent in Windows such as Xming. But it's not pleasant. I don't know if it's WSL or Xming at fault, but 2D performance in X is pretty abysmal.
I've run applications like gedit and evince on WSL with Xming. It's also fairly annoying that you cannot print from WSL applications, and to my knowledge you cannot access devices either (e.g. USB to serial adapter).
I'm talking about Hyper-V IO performance improvements, not VT-d... My E5-2630 does support VT-d, but under Hyper-V, it's not anywhere near bare metal performance.
AFAIK the I/O issues (hardware-wise, not talking about hyper-V specifically) were solved late '00s. Whether a HVM implements it or not is a different matter.
From what I found its called Enlightened I/O as mentioned here [1] and with Hyper-V it works with Windows Vista & later, Windows 2008 & later, Linux kernel 3.14 and later, and "FreeBSD".
If what you say is true, and its also true for ESXi, Docker, VirtualBox, KVM, etc. It'd be devastating for containers and cloud.
Too bad I don't have the time to read the long comment thread on there right now. Hopefully I will remember to do so after work. :)
Instances like this are really interesting to me, as it seems early on in the thread the commit the broke Photoshop was identified, yet it took them 5 years to finally commit a fix. From the outside it's easy to say the wine devs are lazy/stupid for not having fixed it right away, but I suspect there is a story buried in there that tells why it wasn't that simple.
They introduced a state cache to fix conditions where applications poll continuously for certain states (mouse button press for example). This wasn't thread safe however, and multi-threaded applications could get a previous/incorrect state back from the cache and stop functioning as intended. This was highly visible for photoshop tools where you click and hold, as the separate mouse poller thread would get a state of 'button not clicked" and stop, or in some cases start/stop repeatedly giving a series of dots instead of a line.
The patches submitted early were to disable the global cache, which while it fixed the multi-threaded use cases didn't fix the high-polling rate issue that the global cache was attempting to fix.
The fix, years later, was to look at the global cache when changing state and invalidate it at the time of state change so any immediate calls to retrieve that state from the cache will not get the previous cached state.
There was also another issue that came up in the middle of that thread that was unrelated it seems.
> Regressions tend to be high priority for the devs though so this will be fixed eventually.
"eventually" is right...
This seems to be a failure on the part of the devs to prioritize. AFAIK code that causes a regression should be reverted and fixed properly, not left affecting the product for FIVE YEARS before finding a fix. The burden can not be on every use case to work around a bug that was introduced, the core "fix" is clearly a half-fix and should have been reverted on identification.
I mostly agree, but if we want to be pedantic, this didn't regress something so much as fix horrible performance for 90% of apps and introduced a previous non-existent bug into certain applications due to a non-thread safe bug.
The solution itself turned out to be simple enough, and the time it took to fix is definitely not excusable considering the effort vs impact IMO.
If you're interested in doing digital art on linux - I highly recommend checking out Krita. I've discovered it a year ago and was blown away, if you're an artist - it does everything you may need, and works extremely well.
----
Slightly off topic - I'm also quite happy with using linux for the rest of my digital art needs:
- Kdenlive is an excellent video editor. Works extremely well, and is pure joy to use.
- Nuke and Houdini have native linux versions that work perfectly. I think Maya should work fine too, but I haven't tested that.
- Silo 2.5(most recent version) works flawlessly under wine, and is perfect for any 3d modeling.
- I don't develop games, but both Unreal and Unity work very well.
The point is, several years ago you couldn't realistically use linux for professional 2D/3D work, now you totally can.