LWN: Comments on "Applications and bundled libraries" https://lwn.net/Articles/378865/ This is a special feed containing comments posted to the individual LWN article titled "Applications and bundled libraries". en-us Thu, 25 Sep 2025 06:25:41 +0000 Thu, 25 Sep 2025 06:25:41 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Applications and bundled libraries https://lwn.net/Articles/382948/ https://lwn.net/Articles/382948/ dlang <div class="FormattedComment"> Ok, your systems is stripped down more than mine is :-)<br> <p> if you don't do an apt-get clean after doing the update debian will keep the .deb files of the packages that you downloaded around (in /var/cache/apt/archives)<br> <p> if you are wanting your product to update directly from debian's public servers then you need to plan to support the large package list (any way for them to split the package list is going to put _someone's_ critical package in an optional repository), but you can run your own repository and only put packages in it that you want to make available to your product. This will also save you time in the updates.<br> <p> a minor point, I'll also point out that most of this space is in /var, which is not what most people would think of when you said it was in the rootfs<br> </div> Fri, 09 Apr 2010 18:46:05 +0000 Applications and bundled libraries https://lwn.net/Articles/382870/ https://lwn.net/Articles/382870/ wookey <div class="FormattedComment"> That stat comes from the fact that the (emdebian-grip) rootfs for the product I am currently working on is about 60Mb unpacked, and after you do your first apt-get update at which point it is about 100Mb. Those numbers are from memory, but the point is that on a small system the overhead is significant. Debian's package list alone is 25Mb, and the package cache is another 13Mb on this box I have to hand. This desktop box has 60Mb of apt cache and package lists. Clearly 60Mb on a 4Gb system is not a big deal at all, and even on a 60Mb system we still find it useful enough that we choose to use it. We used to use ipkg which is enormously slimmer, and necessary if you don't have the storage to support apt/dpkg, but apt/dpkg do work a lot better when things get a little complex.<br> </div> Fri, 09 Apr 2010 13:20:27 +0000 Applications and bundled libraries https://lwn.net/Articles/382766/ https://lwn.net/Articles/382766/ dlang <div class="FormattedComment"> I build pretty stripped down debian systems, and I don't see anywhere near the '40% of rootfs is package management' overhead that you describe. people who install fatter systems would see even less as much of the overhead is constant (there are a handful of files per package, but they are tiny compared to the rest of the package)<br> </div> Thu, 08 Apr 2010 18:41:20 +0000 Applications and bundled libraries https://lwn.net/Articles/382752/ https://lwn.net/Articles/382752/ wookey <div class="FormattedComment"> Whilst I am a huge fan of 'the Debian way' of central package management, it really isn't true to say that the current (large) pile covers most areas. There are big gaps in no doubt many areas; I've recently noticed them in two: energy monitoring/control and building design. There are an awful lot of handy Windows apps for things like calculating beam loadings in buildings, and many more for specifying vendor's products like hot water tanks and ventilation equipment. Very few of those are free software, but they probably could be and either they all need adding to the distro repositories or we need a more modular mechanism for installing developer/vendor-supplied apps. I believe autopackage is intended to fill that role but it hasn't been very popular so far (possibly because the internals are pretty ugly). I mention it because no-one else has so far - maybe something like that is worth more effort.<br> <p> On the energy monitoring front there are plenty of things like mango, diyzoning, owfs and temploggerd whcih are basic apps for this stuff but none are in Debian yet (or weren't last time I looked). No doubt they will be at some point but until then anyone wanting to use them has an installation problem. I tried local building but found this to be very hard indeed for the two java-based apps there when targeting an arm box. Obviously that wasn't something the developers had tried.<br> <p> I do agree with those who say that developers should not be doing packaging and system integration. They are not well-placed to understand the issue of less-common architectures, complex system interactions and really have better things to be doing with their time.<br> <p> I am inclined to agree that a bit more modularisation of distro repositories would be a good thing. Ubuntu's model of 'core stuff', 'common stuff' and 'everything else' is a step in this direction. Debian's monlithic tools are becoming stretched, especially on small systems (where the package management overhead can amount to 40% of the rootfs storage requirement). I'm not sure there are 'millions' of applications, but there are many tens of thousands and dealing with that efficiently is a challenge. <br> <p> One other thing which I don't think has been said loudly enough in this debate is that users really do value stability. The central repository model does provide a lot more of that than the 'install random stuff off the net' model. It really is worth something, and whilst they also value being able to install 'latest' of a few apps there is a real potential tradeoff there which needs to be managed somehow. The users I deal with are _much_ more interested in having a stable system than they are in the latest and greatest. They only upgrade apps when they find they need to for some significant feature. Making that easy and reliable _and discoverable_ for them is where we have much room for improvement. <br> <p> I find that the Debian backports model works pretty well for this, and could be greatly extended to provide a much larger chunk of the new stuff users want. However it is not a particularly discoverable mechanism - not helped at all by the way many users are used to the Windows model of 'just click here to install this stuff'. There is a significant element of user education to get them to stop and think for a mo and see if what they want is already in the packaging system, or would be if they/it added a suitable repo. Most software websites don't help at all with this, as they encourage the Windows model and rarely mention the 'distro' model.<br> <p> So, it's a thorny issue, and I agree there is room for improvement, but I also feel that the good part of what we have is very valuable, to everybody, including naive users on laptops, even if they don't really appreciate it. Make it easier to go outside that model by all means, when necessary, but try hard not to just make thing unreliable and/or insecure as a result. <br> <p> <p> </div> Thu, 08 Apr 2010 18:27:07 +0000 Applications and bundled libraries https://lwn.net/Articles/381204/ https://lwn.net/Articles/381204/ oblio <div class="FormattedComment"> Oh come on!<br> <p> You really think that 25.000 applications can replace millions? No they can't.<br> <p> First of all, if you look really closely, those aren't 25.000 applications. They're 25.000 *packages* - including libraries (who cares about those?), documentation, meta packages, maybe even development versions of packages (sources).<br> <p> Secondly, you're forgetting about statistics and evolution. More variation and competition means there's a greater chance of success. Only a small percentage of applications are any good.<br> <p> Thirdly, for each niche there are many design decisions. Out of 10.000 crappy applications for a certain niche, you'll have 100 decent applications, 10 really good ones, and 3 great ones, each having a different design philosophy (therefore you can't replace great application A with B or C).<br> <p> Should I write my own "custom" application for everything that doesn't fit that tight collection of 25.000 "applications"? (answer: no, on Windows you find a tool already made for 99% of regular desktop activities)<br> </div> Wed, 31 Mar 2010 06:30:59 +0000 Applications and bundled libraries https://lwn.net/Articles/380744/ https://lwn.net/Articles/380744/ cas <div class="FormattedComment"> what you are describing here is not a system, it is a random, chaotic mess.<br> <p> distributions are made by "big picture" systems people. they want the ENTIRE system to work smoothly as an integrated whole. i.e. they're mostly systems administrators rather than programmers (although there's a lot of crossover there's also a very obvious distinction between the two).<br> <p> applications like firefox, chrome, etc are made by programmers. their focus is far narrower, all they really care about is their application - even at the expense of the larger system that it will be installed on.<br> <p> this is not to say one kind of developer or the other is "better" - they're not, and BOTH are absolutely essential. but software works best when programmers and sysadmins work together, rather than try to work around each other.<br> <p> <p> </div> Sun, 28 Mar 2010 11:11:08 +0000 Applications and bundled libraries https://lwn.net/Articles/380743/ https://lwn.net/Articles/380743/ cas <div class="FormattedComment"> <p> what this describes is classic "DLL Hell".<br> <p> If Mozilla and Chrome want to import that disastrous practice into linux, they're going to find that a lot of people say "thanks, but no thanks"(*)<br> <p> firefox is good, but it's not so good or so irreplacable that it's worth tolerating that nightmare.<br> <p> <p> <p> (*) quoted text passed through an extreme politeness translator.<br> <p> <p> </div> Sun, 28 Mar 2010 10:53:05 +0000 Applications and bundled libraries https://lwn.net/Articles/380430/ https://lwn.net/Articles/380430/ rqosa <p><font class="QuotedText">&gt; The LSB is not adequate to solve the problems to which bundling is perceived as a solution.</font></p> <p>Why not? The whole point of the LSB is to have "<font class="QuotedText">libraries by default in the OS</font>", and to have an unchanging ABI for those included libraries, just like they are with Windows or Mac OS X. (That is, for <em>a single version of</em> Windows or Mac OS X, at least, since the API/ABI <a href="http://lwn.net/Articles/373789/">has changed between releases</a>.) An application compiled for the LSB can depend on those libraries without bundling them with the application, and any other libraries must be bundled with the application (which can be done by linking it statically, or can be done by putting the library in a directory under /opt and then setting RUNPATH or RPATH to that directory). This is essentially what developers of apps for Windows and Mac OS X <strong>must</strong> do already.</p> <p>In short, your proposed solution for Linux to include "<font class="QuotedText">libraries by default in the OS</font>" exists, and it's called the LSB.</p> Thu, 25 Mar 2010 21:38:20 +0000 Applications and bundled libraries https://lwn.net/Articles/380343/ https://lwn.net/Articles/380343/ DarthCthulhu <div class="FormattedComment"> I'm a bit late to this party, but I'll cheerlead a little anyway.<br> <p> It's already possible (and easy!) for a user to get the benefits of both models. All you need is the right distribution. And that distro is GoboLinux. <br> <p> Software installation is very, very easy on GoboLinux and you can have multiple versions of a software all running happily together without the need for every software bundling its own libraries. If some bit of software needs a specific library version, no problem! It will install that version which will still live happily with others.<br> <p> How is it able to do this? Through a better directory layout, some symlink magic, and Recipes. Recipes are the means to install software; at its base, it's really just a URL with the software location and a list of prerequisites. The system will automatically go through and download/copy/compile all the needed libraries and so on before installing the main software. Recipes can install both source and precompiled binaries.<br> <p> Currently, the distro is centrally-based, but there's no reason why that has to be the case. It's quite easy for individual developers to make their own Recipes for software installation and publish them. There's a local recipe store just for that, in fact. <br> <p> It's also very easy to write a Recipe. In fact, there's a tool that does it mostly for you (albeit command line). Most of the time you only need to know the URL of the software you're interested in. <br> <p> The main downside of the distro is that it's basically developed by two guys at present, the official release is positively ancient (you'll need to set aside a day or so to download and upgrade Recipes), and that, if things go wrong, it can take a little technical knowledge to fix (never try compiling glibc -- always go precompiled with that one). I've also, personally, never had the automatic kernel upgrade work correctly; it always requires manually moving the kernel modules to the proper place in the directory tree. Irritating, but fairly straightforward once you understand the way the new directory tree works.<br> <p> GoboLinux really is the best of both worlds. Give it a try.<br> </div> Thu, 25 Mar 2010 16:19:35 +0000 KSM https://lwn.net/Articles/379801/ https://lwn.net/Articles/379801/ johill <div class="FormattedComment"> Not really, it seems extremely unlikely that they actually get the code ordered the same way <br> and aligned at the same point within a page.<br> </div> Mon, 22 Mar 2010 21:06:31 +0000 KSM https://lwn.net/Articles/379796/ https://lwn.net/Articles/379796/ Bones0 I wonder what implications page sharing via <a href="http://kernelnewbies.org/Linux_2_6_32#head-d3f32e41df508090810388a57efce73f52660ccb">KSM</a> has for the memory use discussion. As long as all the private libraries are built with the same compiler options, isn't there a good chance that the majority of the memory could be shared behind the scenes? <p>If the result of those KSM scans could be remembered between reboots, increased CPU usage should not be an issue. And if the file system supported shared chunks analogously to KSM's shared pages, disk space might not be a problem either. Mon, 22 Mar 2010 20:38:04 +0000 Applications and bundled libraries https://lwn.net/Articles/379787/ https://lwn.net/Articles/379787/ lkundrak <div class="FormattedComment"> So, how about v8?<br> </div> Mon, 22 Mar 2010 18:43:28 +0000 Applications and bundled libraries https://lwn.net/Articles/379786/ https://lwn.net/Articles/379786/ lkundrak <div class="FormattedComment"> I stopped reading your comment at "focused on getting something working well" point. Are you really sure avoiding distributions shipping the code qualifies as working well? When the software can't even be installed via standard methods?<br> </div> Mon, 22 Mar 2010 18:39:18 +0000 Applications and bundled libraries https://lwn.net/Articles/379747/ https://lwn.net/Articles/379747/ Frej <div class="FormattedComment"> Just for the record, the windows way is also a bit crappy from a user standpoint.<br> With OSX it's better. For many apps you just drag the 'icon' to wherever you want. This simplicity is for users the same as when we want everything to be a file. It can be expressed as 'everything is just an object' for users. Of course this can't cover all cases, but the simplicity is attractive. <br> Why isn't a program just a file? <br> <p> In short this way normal users actually have a chance of<br> 1) Locating the program after 'installing it' (Since they decided the location)<br> 2) Uninstall is just dragging same file (program) to trash.<br> <p> But i agree, if you want to manage your computer (i think it's fun...) linux is for you. But if you don't, package systems are pretty annoying.<br> </div> Mon, 22 Mar 2010 16:06:55 +0000 Applications and bundled libraries https://lwn.net/Articles/379700/ https://lwn.net/Articles/379700/ ikm <div class="FormattedComment"> <font class="QuotedText">&gt; packaging happen 'upstream'. "Make install" should not drop binaries onto /usr/local, it should produce a 'deb' or 'rpm' file. Software then should not be distributed through tarballs or central source code repositories, but through built packages.</font><br> <p> Funnily enough, that's exactly what happens under Windows. When you release a piece of software for Windows, all you have to provide is an .exe installer. Why? Because that's what end users expect and because it's quite easy to do (you only have one single platform and packaging format). And everyone's happy! Yes, libraries get bundled, they waste space, have bugs, but this doesn't seem like a major issue for most programs.<br> <p> In contrast, under Linux you just can't provide 1) debs for three flavors of Debian and two flavors of Ubuntu, 2) rpms for each of the existing RH-derivatives, 3) ebuilds for gentoo and gentoo-derived distros, 4) whatever else other formats are out there. This is just crazy! Thus the only reliable and easy form is to provide compilable source. And let all those zillions of distros do the rest.<br> <p> So what plagues linux, in my opinion, is that hailed "diversity". It's just too diverse to provide an easy way to install a piece of software. Linux needs its own Microsoft to make something a standard at last.<br> </div> Sun, 21 Mar 2010 18:31:59 +0000 Applications and bundled libraries https://lwn.net/Articles/379672/ https://lwn.net/Articles/379672/ nye <div class="FormattedComment"> <font class="QuotedText">&gt;I'm sorry, but "stable distro" and "latest versions of A, B, C" just don't jibe.</font><br> <p> That is because in your mindset every application is inextricably part of The System. That isn't the way anyone thinks outside of the Linux ecosystem, and it's frustratingly difficult for one side to understand the other.<br> <p> The average user wants to continue with the same stable system (with the appropriate fixes if they're towards the higher end of the average), but with the option of whatever software versions they choose. A Windows user doesn't expect that updating Firefox may require them to reinstall every other application on their system to support a complex web of interdependencies - the idea would be beyond ludicrous. This highly desirable goal is currently achieved by bundling libraries - perhaps it always will be.<br> <p> It doesn't have to be that way, but the [overly IMO] rapid pace of Linux distribution releases means that having separate system and applications package trees would rapidly lead to massive combinatorial explosion.<br> </div> Sun, 21 Mar 2010 00:13:03 +0000 Applications and bundled libraries https://lwn.net/Articles/379670/ https://lwn.net/Articles/379670/ cmccabe <div class="FormattedComment"> <font class="QuotedText">&gt; Good point and I agree. The current system is great for sysadmins. But we </font><br> <font class="QuotedText">&gt; need a system that works for both users,devs and sysadmins. Currently it </font><br> <font class="QuotedText">&gt; works for companies (they pay), where there are people dediated to support</font><br> <font class="QuotedText">&gt; the system. You don't have that on a personal computer ;).</font><br> <p> I use Fedora Core 12 and I turned on automatic updates.<br> <p> That is "a system that works for me" and I didn't need to pay or hire anyone to support the system.<br> <p> There's a lot of areas where the Linux desktop is behind Windows. But in the area of automatic updates, Linux is way ahead. This matters not only because you get nice features, but because updating regularly is an important part of securing your system.<br> <p> Firefox and Chrome rolled their own update system because their main audience is Windows. There is no system-wide update on Windows, except for Microsoft's code. They could nicely strip out all their updater code on Linux, and cooperate with upstream, but it's more work than just doing things the same way on both platforms.<br> <p> The bundled libraries issue is the same problem. On Windows, you have to bundle all your libraries with your app, because there's no dependency management framework. You can't really trust the DLLs in the Windows folder because someone else might have put a different version there. And you can't put your version there because you might break somebody else who needs to use the earlier version.<br> <p> Anyway, web browsers are kind of special. They've almost grown into mini operating systems over the last decade. Unfortunately, most of the wheels they've reinvented were rounder the first time around. At least it's an open platform, by and large.<br> <p> </div> Sat, 20 Mar 2010 23:10:22 +0000 Applications and bundled libraries https://lwn.net/Articles/379649/ https://lwn.net/Articles/379649/ man_ls It may seem obvious, but I have to ask -- why not revive libjingle and push the patches upstream? Sat, 20 Mar 2010 12:51:41 +0000 Test suites can help https://lwn.net/Articles/379617/ https://lwn.net/Articles/379617/ jrn Does your program have a test suite? Even basic tests can do a lot of good, both in making non-functional functionality more obvious and spurring people to fix it. You might be interested in Mike Hommey’s recent work on Mozilla: <a href="http://glandium.org/blog/?p=859">before</a> and <a href="http://glandium.org/blog/?p=927">after</a>. Sat, 20 Mar 2010 01:00:52 +0000 Applications and bundled libraries https://lwn.net/Articles/379600/ https://lwn.net/Articles/379600/ dirtyepic <div class="FormattedComment"> <font class="QuotedText">&gt; Why do we even have a system packager? </font><br> <p> You've answered your own question. Because every app developer thinks their app is so important that users need to be using the latest version the day it's released, with no thought to system stability or security. Who cares about libpng indeed.<br> </div> Fri, 19 Mar 2010 20:58:41 +0000 How VMWare does it https://lwn.net/Articles/379599/ https://lwn.net/Articles/379599/ gurulabs <div class="FormattedComment"> I use VMware Workstation on Linux. They allow you to go either way. By default it uses system libs, but you can set environment variables to control behaviour. <br> <p> For example:<br> <p> VMWARE_USE_SHIPPED_GTK="force" /usr/bin/vmware<br> <p> </div> Fri, 19 Mar 2010 20:57:42 +0000 Applications and bundled libraries https://lwn.net/Articles/379580/ https://lwn.net/Articles/379580/ halla Yes, they are. Both Qt4 and GTK2 are part of LSB. See <a href="http://refspecs.linux- foundation.org/LSB_4.0.0/LSB-Desktop-generic/LSB-Desktop- generic.html">http://refspecs.linux-foundation.org/LSB_4.0.0/LSB-Desktop- generic/LSB-Desktop-generic.html</a>. Fri, 19 Mar 2010 18:48:35 +0000 Applications and bundled libraries https://lwn.net/Articles/379579/ https://lwn.net/Articles/379579/ marcH <div class="FormattedComment"> I like this.<br> <p> Going even further, most people actually need only the same small fraction of these 25K packages. So it would be nice to make this centralized repository much more modular, because every apt-XXX invocation is F.... dead slow on any low-end machine.<br> <p> </div> Fri, 19 Mar 2010 18:33:20 +0000 Applications and bundled libraries https://lwn.net/Articles/379571/ https://lwn.net/Articles/379571/ vonbrand <p> I'm sorry, but "stable distro" and "latest versions of A, B, C" just don't jibe. <p> Whenever I really needed installing non-official software like that, after <em>much</em> looking around I usually decided not to do it. And when I did, the "application A" for which I truly, really, no-other-option-works, had to get a later version it was something very localized (not exactly (pieces off) newest Gnome or KDE), and I installed that from source (and created a package for simple installation/update). The "dependency hell problems" mentioned mostly just weren't. <p> Where I did install a larger set of stuff was when we had Suns with Solaris, where many pieces were almost useless (like the infamous cc or its klunky sh, or its bloated beyond recognition version of X) . There the first step was what somebody called <code>GNU > /usr/local</code> (which did include X Windows, TeX and an assortment of other pieces). But it was still done carefully and as limited as reasonable. Fri, 19 Mar 2010 18:16:26 +0000 Applications and bundled libraries https://lwn.net/Articles/379573/ https://lwn.net/Articles/379573/ mikov <div class="FormattedComment"> Isn't that exactly what I am saying? The LSB is not adequate to solve <br> the problems to which bundling is perceived as a solution. Neither is <br> distribution package management.<br> </div> Fri, 19 Mar 2010 18:12:17 +0000 Applications and bundled libraries https://lwn.net/Articles/379569/ https://lwn.net/Articles/379569/ dlang <div class="FormattedComment"> if you look at the LSB, I believe that you will find that the GUI libraries are not part of it's specs.<br> </div> Fri, 19 Mar 2010 18:02:28 +0000 Applications and bundled libraries https://lwn.net/Articles/379555/ https://lwn.net/Articles/379555/ mikov <div class="FormattedComment"> Unfortunately, the LSB libraries and the ones coming from package <br> management are not really standard, or we wouldn't be having this <br> discussion at all. <br> <p> The GUI libraries are the biggest problems I still experience <br> horror trying to get vmware-server-console working on a new system. <br> <p> But there are plenty of other things which come bundled with <br> Windows, like secure sockets (Firefox doesn't use them, but Chrome <br> does AFAIK) and so on.<br> <p> The bottom line is that bundling for Linux will create larger and <br> clumsier applications than their Windows equivalents. I am not <br> advocating against it - it is a solution, but I think it is a <br> really really ugly solution. In this case it is better to work on a <br> proper solution than to settle for a horrible one.<br> <p> What would be a "proper" solution? For example, a global repository <br> with libraries which can all exist side by side. For example, if <br> Firefox wants to bundle a library "libfoo", it will be called <br> "libfoo-firefox-e0b146e7-26e5-4c2c-90e0-bec9bac7218e.so.1.2" . <br> Other packages can use it, and decrease the duplication. There will <br> have to be extensive metadata, etc.<br> <p> It is complex, but it is worthwhile and doable.<br> </div> Fri, 19 Mar 2010 17:28:00 +0000 Applications and bundled libraries https://lwn.net/Articles/379549/ https://lwn.net/Articles/379549/ jospoortvliet <div class="FormattedComment"> Interesting. Yes, you understood what I meant, it's strange that you can't reproduce it. Maybe it does depend on the windowmanager used. Either way, I haven't used it in a while now - I did use it when reading lots of PDF's while doing research for a paper. I vividly recall how I disliked Acrobat, as it was far less nice to use for reading. I actually went home behind my own computer screen to read, rather than doing it at work (where I only had windows available).<br> <p> But I guess everyone's habits are different, as are preferences ;-)<br> <p> I just wanted to illustrate a very small yet nice feature Okular has which makes it (to me) nicer than Acrobat. It has more of those, of course ;-)<br> </div> Fri, 19 Mar 2010 17:06:58 +0000 Applications and bundled libraries https://lwn.net/Articles/379535/ https://lwn.net/Articles/379535/ tzafrir <div class="FormattedComment"> You can consider whatever is in the LSB as "standard library". <br> <p> Alternatively, consider any library that comes with the package management system as "standard library" :-)<br> <p> Now, check what libraries Firefox bundles in its installation for Windows (those are not system libraries)<br> </div> Fri, 19 Mar 2010 16:12:08 +0000 Applications and bundled libraries https://lwn.net/Articles/379529/ https://lwn.net/Articles/379529/ dbruce <div class="FormattedComment"> "It can work for a few hundred packages easily enough to do it the 'apt-get way'. It can scale upwards to several thousands. But to be on par with something like what Windows provides you have to scale to millions and you have a shitload of programs that nobody in the Debian project (or Fedora or Redhat or anybody else) will never be aware of, much less know enough to package and build them for end users.<br> <p> There is just simply no chance in hell that a centrally managed, closed system like the current package management status quo can ever hope to scale and meet the diverse needs of the average population."<br> <p> I don't buy that at all. The fact that there are "millions" of Windows programs available (assuming that is even true, which I doubt) just points out the inefficiency of closed-source development, where it is not possible to build on someone else's program without explicit licensing, fees, etc. The "millions" of programs are the problem with Windows, not an advantage of Windows. When I show people a Linux system, they invariably are more impressed by centralized package management than by any argument concerning freedom.<br> <p> If you look at everything that is in Debian, it is hard to come up with a niche that isn't covered. Some of the OSS programs may lack important functionality, but in principle they could be improved to cover everything that their commercial counterparts provide.<br> <p> I just don't see any need to provide "millions" of programs. If you have some need that isn't addressed by the ~25K packages in Debian, it probably requires a custom application anyway. <br> </div> Fri, 19 Mar 2010 15:38:48 +0000 Static Library https://lwn.net/Articles/379531/ https://lwn.net/Articles/379531/ mgedmin <div class="FormattedComment"> Static linking has the same disadvantages as bundling own libraries, with <br> the addition that you can't easily see which apps bundle which libraries, <br> making e.g. security support that much harder.<br> <br> </div> Fri, 19 Mar 2010 15:32:44 +0000 Applications and bundled libraries https://lwn.net/Articles/379530/ https://lwn.net/Articles/379530/ mgedmin <div class="FormattedComment"> Linking statically would not be an improvement over bundling.<br> </div> Fri, 19 Mar 2010 15:28:14 +0000 Applications and bundled libraries https://lwn.net/Articles/379492/ https://lwn.net/Articles/379492/ jengelh <div class="FormattedComment"> Symbol versioning would not work in this case, I think, because as you recompile $broken_program (which can easily happen in things like rawhide/factory), you are linking it against $new_symbol.<br> </div> Fri, 19 Mar 2010 11:36:23 +0000 Applications and bundled libraries https://lwn.net/Articles/379488/ https://lwn.net/Articles/379488/ smurf <div class="FormattedComment"> Yeah, for major changes. For minor ones (like the aforementioned bug workarounds), symbol versioning is a much better choice.<br> </div> Fri, 19 Mar 2010 11:30:48 +0000 Applications and bundled libraries https://lwn.net/Articles/379481/ https://lwn.net/Articles/379481/ hummassa <div class="FormattedComment"> About why it affects security patching: because then you have to patch it in two places, instead of <br> one.<br> About modified-sqlite: yes, it is a library. if it is required by chrome and supercedes regular-sqlite <br> (without any api/abi incompatibilities), it should be packaged as another, modified, version (and <br> SONAMEd accordingly); else, it should be packaged as another package altogether (and anyway, yes, <br> security patching must be done in each package, regular-sqlite and chrome-sqlite, but in the first <br> case, you can have only chrome-sqlite in memory even if another program wants to use sqlite)<br> </div> Fri, 19 Mar 2010 10:57:30 +0000 Static Library https://lwn.net/Articles/379467/ https://lwn.net/Articles/379467/ nikanth <div class="FormattedComment"> Use static libraries and provide a single binary. Why do we need dynamic libraries, unless we want to provide multiple binaries for a package?<br> <p> Static linking could achieve the goal without violating the Linux model.<br> </div> Fri, 19 Mar 2010 06:05:29 +0000 Applications and bundled libraries https://lwn.net/Articles/379460/ https://lwn.net/Articles/379460/ mikov <div class="FormattedComment"> It seems to me nobody has commented on one huge difference between <br> Windows and Linux. Windows already caries a huge amount of libraries <br> by default in the OS. That may not be apparent, but all the thousands <br> of Win32 APIs, are in essence standard libraries available everywhere <br> (more or less). This includes GUI controls, etc.<br> <p> There is no equivalent in Linux. The only somewhat standard library <br> is libc. A "bundled" Linux app would have to bundle everything under <br> the sun - X11 libraries, GUI toolkits, etc. This is crazy and in no <br> way comparable to Windows.<br> </div> Fri, 19 Mar 2010 03:54:48 +0000 Applications and bundled libraries https://lwn.net/Articles/379431/ https://lwn.net/Articles/379431/ djao I have okular installed here (Fedora 12) and I cannot reproduce the behavior you describe. <p> One problem is that, most of the time, when I'm scrolling through a PDF, I want to read the pages from the top down (i.e. scroll forward through the file). However, in order to scroll forward by dragging the main page with the left mouse button, the mouse cursor itself actually has to move <em>up</em> in order for the page content to move down. So my mouse cursor never hits the bottom of the screen like you describe, unless I'm scrolling backwards, which happens very rarely. When I scroll forward, the cursor hits the <em>top</em> of the screen, and when it hits the top, it certainly doesn't automatically wrap the cursor to the bottom. <p> Since I cannot reproduce this behavior, I have to make certain assumptions about what you mean. Assuming you meant that the mouse cursor wraps from top to bottom, I can see how it would be a worthwhile option, but I would never use it myself. Most of my pdf reading occurs on a laptop, with a touchpad, in which case dragging the page is worse than useless -- it requires holding down a button as well as moving a finger along the touchpad, whereas the scrollwheel is built in to the touchpad and only requires moving a finger along the touchpad, and thus involves strictly less work. The only time I use dragging is for fine (pixel-level) scrolling control that cannot be achieved with the scroll wheel, but in such cases wraparound is unnecessary. <p> In addition to the lack of utility, my own opinion is that the bottom of the screen should be an absolute boundary to movement, not an invitation to wrap the cursor around to the top of the screen, no matter how worthy the justification may be. Moreover, if the PDF is displayed in a window, rather than full screen, then automatic cursor wraparound would be even more jarring, as it would jump from the top of the window to the bottom of the window rather than the top of the screen to the bottom of the screen. Thu, 18 Mar 2010 22:22:29 +0000 Applications and bundled libraries https://lwn.net/Articles/379434/ https://lwn.net/Articles/379434/ dlang <div class="FormattedComment"> what I've seen is that when you try to drag outside the window, it gets interpreted as a scroll request and the window starts scrolling until you move the mouse back into the window area.<br> <p> I don't know if this is implemented by the window manager or by the individual app.<br> </div> Thu, 18 Mar 2010 22:17:54 +0000 Applications and bundled libraries in the Ideal World (LSB) https://lwn.net/Articles/379433/ https://lwn.net/Articles/379433/ dlang <div class="FormattedComment"> look at what LSB defines. it only defines a very small portion of the system.<br> <p> if the application only uses the things that are defined by LSB, then it would work on either distro.<br> <p> but if the application uses things that are outside the scope of the LSB, then it may not work.<br> </div> Thu, 18 Mar 2010 22:14:34 +0000