News for hackers. Stuff that matters.
Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by howard941 on Friday November 16, 2018 @01:09PM (#18470583)
Consider FreeBSD and its ports model. You'll be building your own ports from sources but you needn't touch another package someone else built, if you don't want to.
[dead]
Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by howard941 on Friday November 16, 2018 @01:37PM (#18470838)
At some point aren't you going to have to choose between software requiring shared libraries and take the package-complexity or source build-hit, or have everything statically linked and take the program size hit?
Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by Wowfunhappy on Friday November 16, 2018 @03:01PM (#18471532)
My preference would be to have everything statically linked. The extra storage cost is worth the complexity trade off.

But afaik, this usually isn't an option in the Linux world. Unless, again, I'm compiling stuff myself.

Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by AnIdiotOnTheNet on Friday November 16, 2018 @01:55PM (#18471009)
Only if I insist on doing things the way UNIXs do, which is what is keeping me on Windows.

If Linux had a stable and consistent base system that was comprised of the most commonly used libraries, then developers would only have to statically link or include their own copy of less common libraries. I'm totally ok with that.

And let's be real for a minute, the program size hit is negligible. You can get a 1TB SSD for under $200. The largest part of almost any program that's in any way large are its assets, not its code.

Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by fredsanford on Saturday November 17, 2018 @02:16AM (#18474423)
You're wrong, tiresome and ignorant.

Windows allows multiple instances of the same app to work via the WinSxS mechanism which keeps copies of basically every DLL ever installed, including system DLLs. So it is basically keeping duplicates of everything, regardless. This includes some executables as well. [1]

Before WinSxS you could achieve the same effect by keeping copies of the DLL dependencies in the app directory beside the executable. Windows would then choose the DLLs from the app current directory before looking at system directories and the path. [2]

Linux gives you the same choices and a couple more options.

   Work with the system package manager [1].

   Link dynamically and keep copies of differing DLLs in a different prefix and... take a size hit. [2]

   Link statically and take a size hit.

   Link dynamically and build everything yourself, minimizing your dependencies.
You can't do the last two with Windows, for the most part because you do not have source code.

So, which of those options do you choose?

You cannot have your cake and eat it too.

Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by AnIdiotOnTheNet on Saturday November 17, 2018 @09:30AM (#18475644)
> Linux gives you the same choices and a couple more options.

Only as the builder of an application. The application developers for Linux, on the whole, only ever chose option one, leaving everyone who uses their software no option that doesn't involve recompiling from source (which, as I've mentioned, is a ridiculous thing to expect people to do just to use your software).

I have several dozen applications on Windows that are not installed. Many of them aren't even designed to be portable, yet were easily made such just by extracting their files from the installer into a directory. I can put these applications on a thumb drive and take them to an entirely different Windows system and run them without installing them their either. These directories are exactly as they'd exist in C:\Program Files.

This is of course because they have copies of their dependent DLLs in their install directory, but only the ones that aren't part of the Windows distribution. Let's look at one: WinDirStat. It is 2.1MB total, 856KB for the executables, 844KB for dlls, and the rest is assets, docs, and configuration. This is a GUI application, but you'll notice it doesn't have to include a toolkit because it uses the one that comes with every Windows install. The DLLs, as far as I can tell, are unique to WinDirStat, so it wouldn't be unfair to say that this application actually doesn't have any dependencies other than the base OS.

That's what Linux can't get you. There is no base OS above syscalls. You can't depend on anything being there because there are hundreds of distributions and what's available to link with changes with configuration, distribution, and often version.

If I could, I'd have all my Linux applications as AppImages which follows pretty much the same model as portable applications do on Windows. As I said though, Linux developers rarely offer that as an option.

Re:Microsoft Is Putting Ads on the Mail App in Windows 10 by fredsanford on Saturday November 17, 2018 @08:37PM (#18478408)
>> Only as the builder of an application. The application developers for Linux, on the whole, only ever chose option one,

Again, wrong.

The people that package distributions usually make these choices. Gentoo and distros like it give you a choice of how things are built.

Off the top of my head I cannot think of a popular library that does not have the option to be statically or dynamically linked.

>> I have several dozen applications on Windows that are not installed. Many of them aren't even designed to be portable, ....

>> ... The DLLs, as far as I can tell, are unique to WinDirStat, so it wouldn't be unfair to say that this application actually doesn't have any dependencies other than the base OS.

This works in Linux too, somewhat. You have to have compatible ABIs though.

>> ... dependent DLLs in their install directory........

And Windows has 8 tons of different versions of system DLLs and C library runtimes in the WinSxS directories. MSVC runtimes are not interchangeable. Linux in general does not go to that length since a large majority of the apps are source available.