Slashdot Mirror


User: IamTheRealMike

IamTheRealMike's activity in the archive.

Stories
0
Comments
5,855
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 5,855

  1. Re:plenty of UI and Usability mistakes on AutoPackaging for Linux · · Score: 2, Informative
    Yes we know the bouncing progress bars suck. I yelled at people about that a few days ago. Expect them to disappear as time goes on.

    Dialogs same size - not sure there's any point to this. Dialogs that don't fit their content are just weird. Making them all the same window is technically very hard because of the need to run different programs to re-authenticate etc. Yes yes, excuses, but software is compromise.

    No cancel button: where is the cancel button? You cannot cancel an install, so there should not be one. The closest I can see is Hide which is different.

    Don't ask for passwords: you need the root password for software to be shared, and various things work better when software is installed system-wide. The "No password" button is there for setups where you are not the administrator rather than for home users. Long term authentication-less software installation should happen but it's a big step that neither MacOS X nor Windows have fully taken yet, it requires a lot of thought and technology to ensure it's done correctly.

    Progress meters: yes, from a pure UI perspective you are correct. However it's hard to know how long things will take because the packager has complete freedom to do whatever they like. It's not deterministic, in other words. Again, compromise. Long term this whole UI will disappear in favour of drag/drop installs anyway so there's not much point in polishing it too much.

    The uninstaller will prompt you for the root password once you hit "Remove". It's just not shown in the Flash demo.

    Thanks for your comments!

  2. Re:Dependency policy? on AutoPackaging for Linux · · Score: 1
    To answer your questions:

    • The GNOME APIs aren't unstable, far from it. They are very stable. So this is not a big problem. Now, if you want to use very new APIs not all your users have yet, whilst falling back to the old ones, relaytool can help you there - the Fyre package is a demonstration of doing this for the old/new GTK+ filepicker.
    • User tweaking functionality, yes you have it pretty much right. With weak linkage stuff will magically start working when you install the right package. Autopackage understands the difference between a required and recommended dependency and will tell the user about missing recommended deps at the end of the install in the summary screen. It's not perfect, but it works. We really need a Desktop Linux Platform to go further here.
  3. Re:Where Can I... on AutoPackaging for Linux · · Score: 1

    Yeah I know ;) But having built the damn things I wanna pimp them

  4. Re:Some FAQ entries on AutoPackaging for Linux · · Score: 1

    Read the section on static linking - hard disk space may be cheap but memory is at a premium in most systems.

  5. Re:That's right. apt-get works. on AutoPackaging for Linux · · Score: 5, Insightful

    Having applications (as opposed to libraries) installed outside of apt doesn't break anything as they aren't dependencies of things.

  6. Re:Where does everything get autopackaged to? on AutoPackaging for Linux · · Score: 1
    We already "fix" or rather workaround a few of the more annoying problems like the Ubuntu/Debian libpng mess, but doing deep surgery isn't our place.

    Working around others cockups is just a part of writing software I'm afraid, arguably it's a part of life ;)

    Long term what I'd like to see is an equivalent to freedesktop.org for distributions, where distro developers can congregate and produce standards on how things should work. That would help a lot. Often the brokenness is needless, one distro just hasn't picked up the right fix or magic script from another. Co-ordination could help a lot.

  7. Re:Obligatory OS X user response on AutoPackaging for Linux · · Score: 1

    Sure, that UI is a good one and we want to implement it (and have a concrete implementation idea to back it up). But getting installs reliable and easy is a higher priority, different kinds of UI can come later.

  8. Re:Wrong Paradigm on AutoPackaging for Linux · · Score: 1

    No. If you're aware of any Linux software that's currently shipping with malicious code let me know and it'll go up the priority list. Mirror cracking and so on is already dealt with by using GPG signatures as the Gaim autopackage does.

  9. Re:BackPackage on AutoPackaging for Linux · · Score: 1
    You can see the Flash demo here.

    You can't automatically convert pre-existing packages to autopackages. The process of building an autopackage is rather longer than an RPM because you have to improve the quality of the software at the same time to meet various standards. For instance a dependency audit may be useful, weakening various deps at runtime so you can run without them being present but use them if they are (relaytool) etc etc.

  10. Re:Where does everything get autopackaged to? on AutoPackaging for Linux · · Score: 1
    If it was only small distros, maybe we could get away with that. But it's not. It's large distros like Fedora and Debian.

    Pretty quickly you realise that every distro is broken in various unique ways - isn't the distro system marvellous? So it's a lot easier to just work around their various faults than wait for the day when they all get their act together (not going to happen).

  11. Re:Where Can I... on AutoPackaging for Linux · · Score: 1

    When it comes back up there's an RPM of the support and developer code on the website, for those who want it (though they aren't required). We're not anti-RPM or anything you know ;)

  12. Re:Wow there is a lot of evangelizing here on AutoPackaging for Linux · · Score: 1
    There are already packages of Gaim, Inkscape, and AbiWord. Unfortunately if you want to test them you must download this file manually and then this one, and put it in the same directory as the .package - the redirects we use to stay independent of sunsite have been crushed out of existance by the Slashdot effect. It's a temporary problem, don't worry.

    Asking how they stack up is a bit of a biased question. Autopackage isn't meant to compete directly with RPM/DPKG or replace them, it's meant as a complement. They are designed for different things. For instance, a package of gnome-terminal makes no sense because that's a core part of the OS and autopackage is meant for third party applications. Capabilities RPM needs like auto-shlib-dep discovery are done differently in autopackage and vice-versa.

  13. Re:BackPackage on AutoPackaging for Linux · · Score: 4, Interesting
    The really big leap in backends would be a distributed repository.

    I suspect you are thinking of something like Conary. However ... that said, a distributed and decentralised package management system is what autopackage is all about. Autopackages can resolve dependencies in a manner that does not require large monolithic databases: the packages themselves know where to go to find their dependencies if they're missing (and in future they'll be able to use yum, apt-get etc as well just in case).

    Basically the apt-get type model doesn't work too well once you start having say >50 repositories all together, as co-ordinating the overlaps becomes too much of a nightmare. A much less tightly coupled system works better, which is what we have here.

  14. Re:Be like OSX on AutoPackaging for Linux · · Score: 1
    That assumes the dependencies are in Debian, aren't broken (eg, unstable/experimental sometimes contain uninstallable packages) and so on.

    What the gp is asking for is something like this, I think.

    All kinds of UIs become possible once you have the infrastructure in place. Apt-get "name that package" type UIs are of course very handy when you know what it is you want, and NeXT style appfolders are also quite convenient when browsing around. We can support all of them, if we want.

  15. Re:Wrong Paradigm on AutoPackaging for Linux · · Score: 1
    I'm afraid your assumption that distributions "authenticate" software is flawed. Hiding a back door in software of any reasonable complexity is not hard, if you're so determined, and no distribution can protect you from that. Think about it: who in their right mind is going to wade through all 100,000 lines of configure script looking for back doors? Not going to happen.

    Now what you may mean is spyware, malware etc. But this thinking is also flawed. Spyware and such is designed to make money by piggybacking on proprietary software. Open source software has no need of revenue to keep it alive, therefore no need of spyware - but proprietary software cannot enter most distro repositories because most distros do not distribute commercial software. Therefore they would never get a chance to filter things out anyway.

    If you want to filter out malicious software in the decentralised model, you need to do several things:

    • Define a policy for what is and is not allowed
    • Create a certificate authority heirarchy SSL-style. It should be easy to get a package signing certificate: however, it should also be easy to get kicked off if you violate network policy.
    • Have an auto-update mechanism that downloads whitelists of signing keys: if you aren't in the whitelist, the system will give you big honking warnings.

    The danger here is that people try to audit code before giving out certificates. That's clearly bong: you can't do that reliably or scalably, and anyway waiting until somebody has violated the network policy and then kick them off rapidly has much the same effect: the OS stays free of "bad" software.

  16. Re:Where does everything get autopackaged to? on AutoPackaging for Linux · · Score: 1

    The LSB really isn't big enough for any non-trivial desktop app, and it shows no signs of growing to meet that challenge. There'll probably ahve to be a different "standard" (yeah yeah, I know) base set, one that builds on LSB but extends it.

  17. MIRROR IS HERE on AutoPackaging for Linux · · Score: 2, Insightful
  18. Re:Some FAQ entries on AutoPackaging for Linux · · Score: 5, Informative
    Why bother?

    # What's wrong with centralized repositories, apt style?

    The system of attempting to package everything the user of the distro might ever want is not scalable. By not scalable, we mean the way in which packages are created and stored in a central location, usually by separate people to those who made the software in the first place. There are several problems with this approach:

    • Centralisation introduces lag between upstream releases and actually being able to install them, sometimes measured in months or years.
    • Packaging as separate from development tends to introduce obscure bugs caused by packagers not always fully understanding what it is they're packaging. It makes no more sense than UI design or artwork being done by the distribution.
    • Distro developers end up duplicating effort on a massive scale. 20 distros == the same software packaged 20 times == 20 times the chance a user will receive a buggy package. Broken packages are not rare: see Wine, which has a huge number of incorrect packages in circulation, Mono which suffers from undesired distro packaging, etc
    • apt et al require extremely well controlled repos, otherwise they can get confused and ask users to provide solutions manually : this requires an understanding of the technology we can't expect users to have.
    • Very hard to avoid the "shopping mall" type user interface, at which point choice becomes unmanagably large: see Synaptic for a pathological example of this. Better UIs are possible but you're covering up a programmatic model which doesn't match the user model esp for migrants.
    • Pushes the "appliance" line of thinking, where a distro is not a platform on which third parties can build with a strong commitment to stability but merely an appliance: a collection of bits that happen to work together but may not tomorrow: you can use what's on the CDs but extend or modify it and you void the warranty. Appliance distros have their place: live demo CDs, router distros, maybe even server distros, but not desktops. To compete with Windows for mindshare and acceptance we must be a platform.

    # What's wrong with NeXT/MacOSX style appfolders?

    One of the more memorable features of NeXT based systems like MacOS X or GNUstep is that applications do not have installers, but are contained within a single "appfolder", a special type of directory that contains everything the application needs. To install apps, you just drag them into a special Applications folder. To uninstall, drag them to the trash can. This is a beguilingly easy way of managing software, and it's a common conception that Linux should also adopt this mechanism. I'd like to explain why this isn't the approach that autopackage takes to software management.

    The first reason is the lack of dependency management. Because you are simply moving folders around, there is no logic involved so you cannot check for your apps dependencies. Most operating systems are made up of many different components, that work together to make the computer work. Linux is no different, but due to the way in which it was developed, Linux has far more components and is far more "pluggable" than most other platforms. As such, the number of discrete components that must be managed is huge. Linux is different to what came before not only in this respect, but also because virtually all the components are freely available on the internet. Because of this, software often has large numbers of dependencies which must be satisfied for it to work correctly. Even simple programs often make use of many shar

  19. Some FAQ entries on AutoPackaging for Linux · · Score: 4, Informative
    So much for sunsite having plenty of bandwidth and fast servers! Well, here are some select pieces from the FAQ:

    # What is autopackage?

    For users: it makes software installation on Linux easier. If a project provides an autopackage, you know it can work on your distribution. You know it'll integrate nicely with your desktop and you know it'll be up to date, because it's provided by the software developers themselves. You don't have to choose which distro you run based on how many packages are available.

    For developers: it's software that lets you create binary packages for Linux that will install on any distribution, can automatically resolve dependencies and can be installed using multiple front ends, for instance from the command line or from a graphical interface. It lets you get your software to your users quicker, easier and more reliably. It immediately increases your userbase by allowing people with no native package to run your software within seconds.

    # Is autopackage meant to replace RPM?

    No. RPM is good at managing the core software of a distro. It's fast, well understood and supports features like prepatching of sources. What RPM is not good at is non-core packages, ie programs available from the net, from commercial vendors, magazine coverdisks and so on. This is the area that autopackage tackles. Although in theory it'd be possible to build a distro based around it, in reality such a solution would be very suboptimal as we sacrifice speed for flexibility and distro neutrality. For instance, it can take several seconds to verify the presence of all required dependencies, something that RPM can do far quicker.

    # Why a new format? Why do the RPMs I find on the net today only work on one distro?

    There are a number of reasons, some obvious, some not so obvious. Let's take them one at a time:

    • Dependency metadata: RPMs can have several types of dependencies, the most common being file deps and package deps. In file deps, the package depends on some other package providing that file. Depending on /bin/bash for a shell script is easy, as that file is in the same location with the same name on all systems. Other dependencies are not so simple, there is no file that reliably expresses the dependency, or the file could be in multiple locations. That means sometimes package dependencies are preferred. Unfortunately, there is no standard for naming packages, and distros give them different names, as well as splitting them into different sized pieces. Because of that, often dependency information has to be expressed in a distro-dependent way.
    • RPM features: because RPM is, at the end of the day, a tool to help distro makers, they sometimes add new macros and features to it and then use them in their specfiles. People want proper integration of course, so they use Mandrake specific macros or whatever, and then that RPM won't work properly on other distros.
    • Binary portability: This one affects all binary packaging systems. A more detailed explanation of the problems faced can be found in Chapter 7 of the developer guide.
    • Bad interactions with source code: because the current versions of RPM don't check the system directly, they only check a database, it makes it hard to install them on distros like Gentoo even when they only use file deps. Similar problems arise if you compile things from source.

    There are various reasons why a new format was created rather than changing RPM

  20. Re:Balance on Large Prize Offered For Writing Mac Virus · · Score: 1
    Yes, exactly. Firstly it's hard to propogate viruses based purely on such exploits unless there is high market share. Secondly it doesn't tell us much of value about the difference between MacOS X and Windows, as both are written mostly in languages like C/C++ (or Objective-C which isn't inherantly safe from buffer overflows either). Unless you believe that working at Apple magically makes you write less buggy code (there's no evidence that this is the case).

    If anything I'd say Microsoft have the upper hand as they have a large and well publicised secure-code training program. I'd guess that Apple don't have an equivalent otherwise they'd probably mention it somewhere (good PR right?).

  21. Re:Balance on Large Prize Offered For Writing Mac Virus · · Score: 4, Insightful
    Being based on BSD has nothing to do with anything, the userland/desktop space is where most exploits have been in recent years and the Aqua shell is no more free from exploits than Explorer is.

    In particular, appfolders have had some pretty nasty broken-by-design security exploits like the URL handler variants where an internet enabled DMG would self-mount itself into the filing system and automatically reconfigure URL schemes in Safari, all without the user doing anything other than visiting a web page. I think (hope) they fixed that but it was still several months until all the holes and variants of this technique were "fixed" (really just hacked around). The help system exploits Apple suffered were similar in nature.

    Essentially, Apple haven't proven themselves any more skilled at designing secure desktops than Microsoft have. That said, this sort of competition is fairly pointless: being able to "infect" a machine with no action taken by the user boils down to finding buffer/heap overflows and the like in running software. Many viruses propogate with a bit of help from the user, even if all that involves is surfing the web.

  22. Re:What Open on Microsoft Partially Opens Proprietary XML Format · · Score: 2, Interesting

    I always got the impression most of the remaining work was being bug-for-bug compatible with the Word layout engine, eg agreeing on what margins are and so on rather than actually reading the file data itself.

  23. Re:THANK YOU on IE Developer Responds to Mozilla Accusations · · Score: 1
    There's no point playing this sort of word game, it has no intellectual merit. Microsoft employees routinely define "API" as something that is documented and exported by a DLL, and therefore anything that is exported but not documented is not an API regardless of what happens to use it.

    The most important, most fundamental point is: did the Internet Explorer team have an advantage over Netscape because they were working for Microsoft? I think you'd have to be naive to claim that wasn't true. The integration IE4 had with Windows 95 wasn't simply a matter of clever use of APIs, it was a matter of a full OS upgrade. Of course, Windows 98 came shipped with it by default and at that point, we disappear into the black hole of semantic pissing matches.

    Nobody cares about undocumented calls today: back then integration into the OS was a secret weapon, today it's seen merely as a liability.

  24. Re:KDE equivalent? on Preview of X Windows Eye Candy · · Score: 3, Interesting

    Even more specifically Qt isn't using Cairo, it's using its own equivalent TrollTech are writing from scratch (because they have to own the copyright on all the Qt code for their business model to work). However everything below Cairo and GTK+ is independent of GNOME/GTK+ and will work fine for KDE.

  25. Re:Antisocial Engineering on IE Developer Responds to Mozilla Accusations · · Score: 4, Informative
    Yeah, I mean seriously. IE only uses documented APIs? What's this then?

    Can somebody - Dave? - point me to the API that let IE4 add a "Favourites" item to the start menu in Windows 95? I don't mean something that was documented last year, I mean something that was documented ... in 1995. I don't think there is such an API. I don't think there ever was.

    Can somebody - Dave? - tell me why the IE installer calls the undocumented Extract cabinet.dll function?

    As far as I'm concerned this is all very simple. Could Netscape have done to Windows 95 what Microsoft did with IE4? Obviously the answer is no: IE did things that weren't just *adding* APIs, they were replacing core parts of the OS like Explorer in order to add the Favourites menu, Active Desktop etc etc. Dave is full of shit and the sad thing is, he probably believes his own story.