Live data from Hacker News

Windows 10 will come with a command-line package manager

extremetech.com

141–150 of 348 posts

Re: Windows 10 will come with a command-line package manager

#141

Having a package manager is one thing, having a good curated repo of packages is another. I doubt MS Will have the balls to say that all their "partners" (most of the AV vendors, Oracle, ...) whose entire business model is based on crapware or bait & switch will somehow be banned from the repo? Currently it seems that both the apt and choclatey versions of Java actually come without crapware. I have a feeling that if…

I'm not really sure that relationship with AV vendors is as strong these days for MS to harm Windows UX.

Re: Windows 10 will come with a command-line package manager

#142
post #116

Earlier quoted context omitted.

Android actually _is_ a Linux desktop system. It is a GUI on top of a Java based virtual machine on top of a Linux kernel. This Linux desktop has actually overthrown both Windows and iOS. The market share was 85% in Q2 2014 according to: http://thenextweb.com/google/2014/07/31/android-reached-reco... Android just uses another type of input than classical keyboards and mice. But you can also use keyboards and mice her…

That's bullocks, you're just changing definitions to suit your needs. Android is a mobile phone OS and as suchhas a marginal market share on desktop. Windows still has over 90% market share on desktop ( http://www.netmarketshare.com/ )

Desktop computing doesn't really matter that much anymore. I'm also coming down harshly on Linux here - they tried to be a better desktop OS rather than skate to where the puck was moving to.

The vast majority of actual 'personal computing' is phones and tablets. PCs are content creation devices.

Asides from Android obviously not being the traditional stack - no glibc, no KDE or GNOME - AOSP isn't very useful compared to semi-proprietary Android. We could also say that CMU Mach / FreeBSD won the desktop because iOS and OS X use them.

Re: Windows 10 will come with a command-line package manager

#143
post #118

Earlier quoted context omitted.

I have tried PowerShell a few times but I can't never appreciate it. Yes, it technical superior than it's counterparts on Linux by piping objects instead of mangling text, but the syntax of PowerShell is just too convoluted. I have concluded that when doing command line you want to write commands and not program code to execute. That's why bash is usually straight on and powerful for the 95% commands you do. It's edg…

My point here was mostly that instpkg32.exe /DefaultSettings:ALL_DEFAULTS is something that doesn't really exist anymore for management tools on Windows, except those that have been around for a long time. Even the GUIs on Windows Server nowadays just drive a PowerShell runspace behind the scenes and you can script just as easily as click around. Install-Package is a PowerShell cmdlet and thus gets sane and consisten…

Yes, I know. What I wrote had nothing to do with your point. I just did a fork of the conversation. Apologies if it created any unnecessary noise.

Re: Windows 10 will come with a command-line package manager

#144

Earlier quoted context omitted.

Why? What's the point? NT isn't bad at all, it's just different from POSIX (hell, I can't believe the irony of this statement, but I'm glad that Microsoft is still around to resist the POSIX monoculture ). Neither Microsoft nor the Free Software™ world would gain much from killing the NT kernel, but the latter camp would gain so much more from learning the lessons that made Windows so successful 20 goddamned years af…

> Why? What's the point? The point is portability. People now write all of their server software for Linux. More people would bother porting it to Windows if doing so was easier. Example: There is no Windows equivalent to epoll/kqueue. Neither of them is even POSIX. But if you bring this up to most Windows people they tell you to use IO completion ports, which are totally different and require the core of the program…

> There is no Windows equivalent to epoll/kqueue

There is: Overlapped IO: http://msdn.microsoft.com/en-us/library/windows/desktop/ms68...

> But if you bring this up to most Windows people they tell you to use IO completion ports, which are totally different and require the core of the program to be redesigned

IO completion ports and epoll both require the programs flow logic to be designed for them. If a program has been designed for synchronous IO, a redesign is required to take advantage of any asynchronous IO pattern. There's no magic fairy dust that allows you to magically drop "asynchronous" to an otherwise synchronous program.

The reactor pattern (Windows overlapped IO) is - at least theoretically - more scalable than the proactor pattern (Linux epoll/aio).

Under the proactor pattern (Linux epoll/aio) the process must indicate it's desire to perform an IO operation. The OS will notify the process through a callback/event when the IO resource is available for the operation, and must then perform the actual operation. However at that point there is no guarantee that all of the IO will be completed - the OS will inform you how many bytes were actually read/written, and it is your responsibility to wait for the next "ready" event before trying again.

Under the reactor pattern (Windows overlapped IO) the process asks the OS to perform the IO operation directly. The operation is started by the OS while the call returns immediately. When the operation has been carried out, the OS notifies the process through a callback/event. There is no complexity in managing partially transfers - the transfer in the responsibility of the OS and you'll receive notice when it's completed. IO completion ports is actually a thread pool dedicated to IO ops, and queuing is built-in.

The proactor pattern (Linux/epoll) requires a context switch between the IO resource becoming ready for the operation and the actual operation (higher latency). If transfers are partially completed - e.g. large transfers - you'll have extra context switches for each remaining transfer operation (lower throughput).

The reactor pattern (Windows) allows the OS to directly complete the operation without a preceding context switch (lower latency), only notifying the process when done, thus avoiding unnecessary context switches even for large buffers (higher throughput).

Both approaches require the program to be deliberately designed to support asynchronous IO. However, the Windows API was always designed with overlapped (asynchronous) IO in mind, Windows IO completion ports was designed in NT from the start. The problem was always (for both platforms) how to coach the developers to actually leverage the asynchronous APIs as opposed to the simpler-to-understand synchronous APIs.

The new Windows Runtime API takes it a step further and requires virtually all IO to be asynchronous (there simply are no synchronous versions any more). That is coupled with programming language innovations like async/await (C#/VB.NET) which makes it very easy indeed to take advantage of this.

Re: Windows 10 will come with a command-line package manager

#145

If Windows 10 was built on top of Linux I'd get a lot more excited. I have to use Windows for the myriad of engineering tools that are not available under any other OS, for example, SolidWorks, Altium Designer, various embedded toolsets, etc. And, while I've been using PC's (and Macs and Linux) since they came on the scene I hate, hate, hate the DOS or technically DOS-like underbelly of the beast. I know it is a ridi…

Which bit of Windows do you feel is DOS-like? Did you ever use DOS? The DOS underbelly of Windows disappeared with the release of Windows XP over a decade ago. Windows 95 and 98 were DOS-based, or at least had DOS underpinnings to some extent I think.

From an API point of view, the Win32 API is incredibly stable and reliable and allows the ability to run programs from decades ago. This contrasts sharply with Linux, where the APIs are in a constant state of irritating flux. From a serious development perspective, this might be why the commercial application market has flourished under Windows and why you see commercial Linux applications few and far between, and (usually?) treated as a side attempt before falling by the wayside (as it appears that few Linux users will pass over cash for an application).

I would believe it is a naive approach to ask that Windows be "built on top of Linux". They are architecturally different: http://en.wikipedia.org/wiki/Architecture_of_Windows_NT

I do not install mingw or cygwin or any other "Linux-land" compilers/systems on Windows because it feels like I'm using the wrong system - just install Linux if I want all that! It would be better to just use native Visual Studio in Windows-land and keep everything separate, no? Ordinary users that I am writing software for will typically have the Visual-C++ runtimes already installed so bundling of different GNU DLLs is redundant.

Re: Windows 10 will come with a command-line package manager

#146
post #86

> and who knows, that might just trigger some kind of revolution in Windows app management Free trials of un-tar? Installing apps that require subscriptions to the cloud? Dev libraries that require enterprise support packages? Good package management on Linux is owed largely to the tireless voices such as Stallman who understand the core issues here. Yes, tying together install scripts and maintaining repositories re…

> Good package management on Linux is owed largely to the tireless voices such as Stallman

I thought it was due to the people designing the package managers. The people who run the repos Stallman-like end up shipping IceWeasel and Chromium and telling long boring stories to someone who just wanted Firefox and Chrome.

Re: Windows 10 will come with a command-line package manager

#147
post #86

> and who knows, that might just trigger some kind of revolution in Windows app management Free trials of un-tar? Installing apps that require subscriptions to the cloud? Dev libraries that require enterprise support packages? Good package management on Linux is owed largely to the tireless voices such as Stallman who understand the core issues here. Yes, tying together install scripts and maintaining repositories re…

Package management with Homebrew on OS X actually works quite well. It will be interesting to see what Microsoft comes up with.

Re: Windows 10 will come with a command-line package manager

#148
post #87
post #86

> and who knows, that might just trigger some kind of revolution in Windows app management Free trials of un-tar? Installing apps that require subscriptions to the cloud? Dev libraries that require enterprise support packages? Good package management on Linux is owed largely to the tireless voices such as Stallman who understand the core issues here. Yes, tying together install scripts and maintaining repositories re…

Pretty much. While it's cool coming from Microsoft I'm willing to bet it's going to be an inferior implementation one way or another compared to Linux distributions.

Why? Powershell innovated a lot over bash - try and kill all processes started in the last hour with bash, then do the same with posh (hint: a regex is a terrible, terrible way to deal with time). MS could do something good with package management.

Re: Windows 10 will come with a command-line package manager

#149
post #78

Earlier quoted context omitted.

I'll believe it when they let me resize the cmd window

You have always been able to resize the cmd window, not sure what you mean here.

How were you able to do that? I was only able to change the height of it personnally, very annoying.

Re: Windows 10 will come with a command-line package manager

#150

If Windows 10 was built on top of Linux I'd get a lot more excited. I have to use Windows for the myriad of engineering tools that are not available under any other OS, for example, SolidWorks, Altium Designer, various embedded toolsets, etc. And, while I've been using PC's (and Macs and Linux) since they came on the scene I hate, hate, hate the DOS or technically DOS-like underbelly of the beast. I know it is a ridi…

If Windows 10 was built on top of Linux I'd get a lot more excited. GPL would make that impossible. There are reasons OS X is based on BSD, and not all of them are about technical superiority.

And would all Windows developers leave? Most I bump into see Linux as a toy still, despite the ever-growing army of vocal Python developers who favour development on the platform (if you love slow GUI programs, Python sure is the way to go!)
Post reply on HN