Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

A Windows-Based Packaging Mechanism

kdawson posted more than 7 years ago | from the simple-install-and-remove dept.

Programming 451

FishWithAHammer writes "As part of my Google Summer of Code project, I'm working with WinLibre to develop a Debian-like software download system for free/open source software on the Windows platform. My reasoning is that open source software suffers from poor presentation. Most computer laymen, even those aware of open source software, often don't have any idea how to go about looking for it, but would use it if it were easier to access. What I have proposed is both a Debian-style packaging mechanism (capable of using Windows Installer MSIs or not, as the user wishes) and a software 'catalog' that takes the best aspects of Synaptic and Linspire's Click-N-Run system. Seamless, simple installation and removal of programs in as straightforward a way as apt-get (there will be a command-line tool as well). I'm posting to Slashdot to get the ideas of you lot who, while you may not be the target audience, can certainly provide insights that can be of value." Read on for more of this reader's ideas and questions.

There are areas that I'm personally not familiar with, and while I have done some research I would like the opinions of Slashdotters on some others. While at first I intend to set it up so that WinLibre (and I) run only one repository, I am curious as to how this sort of tool could be most useful to network administrators. Customizable repositories will be available; the code will be under the GPL, after all, so it'd be a little hard for them not to be available.

I'm also interested in the ideas of those who might be in a position to roll together packages. I intend to package a number of open-source language interpreters with the core software to allow special pre- and post-install scripts, as well as removal scripts. C#Script, Perl, and Python are definites, as is a Cygwin sh interpreter. We will have some program requirements — chief among them that no registry changes may be made by the program — but some of them, I fear, will require some flexibility; some programs really do require a way to edit the registry, for example, and I am considering offering some sort of tracked way to make registry changes so they can be rolled back on uninstallation of the program.

I'd love to hear what Slashdotters think of this. Think of it as a wishlist, but you don't get any damn ponies.

Ed Ropple (FishWithAHammer)"

cancel ×

451 comments

Oh no (5, Funny)

Anonymous Coward | more than 7 years ago | (#19306503)

C:\>apt-get install bsod

Re:Oh no (5, Funny)

Xogede (1064902) | more than 7 years ago | (#19306521)

Error: Package "bsod" already installed.

Re:Oh no (-1, Redundant)

creimer (824291) | more than 7 years ago | (#19306529)

Error: Package "Auto Self-Destruct" not installed. Installing...

Re:Oh no (-1, Troll)

Anonymous Coward | more than 7 years ago | (#19306569)

Do you really think you are funny? Or you are just lacking that originality package? Id mod you a troll if I had mod points left.

Re:Oh no (1)

bl8n8r (649187) | more than 7 years ago | (#19307055)

(Pop- up)

[But punch the monkey and you can download bsod here]

Re:Oh no (-1, Offtopic)

Anonymous Coward | more than 7 years ago | (#19307047)

If you don't know what Cmd-Shift-1 and Cmd-Shift-2 are for, GTFO.
If you think Firefox is a decent Mac application, GTFO.
If you're still looking for the "maximize" button, GTFO.
If the name "Clarus" means nothing to you, GTFO.

Bandwagon jumpers are not welcome among real [imageshack.us] Mac [imageshack.us] users [imageshack.us] . Keep your filthy, beige [imageshack.us] PC fingers to yourself.

It's the package selection process (5, Insightful)

zedman (98578) | more than 7 years ago | (#19306509)

That's great of course, but it's the community and a selection of packages with mutually consistent packaging metadata which make systems like Debian and their derivatives so popular. The packaging system itself is an enabling technology.

Re:It's the package selection process (2, Funny)

buswolley (591500) | more than 7 years ago | (#19306557)

What's Linux gonna do when it gives Windows its only good feature?

just kidding. ..

Re:It's the package selection process (4, Insightful)

babbling (952366) | more than 7 years ago | (#19306709)

Why are you kidding? That's actually a very good point, I think.

If GNU/Linux was the only operating system that had applications like Firefox, OpenOffice, VLC, and so on, I think it would be a much more attractive option than Windows is. Yet, we've ported some of our best applications to the proprietary Windows platform, and as a consequence of this there is less incentive for Windows users to become users of Free Software operating systems.

I'm not necessarily saying that these ports shouldn't take place, but I think we should be aware of the fact that porting a great application to Windows does lessen the incentive for Windows users to make the switch.

Re:It's the package selection process (5, Insightful)

maxwell demon (590494) | more than 7 years ago | (#19306827)

If the explicit goal of an application programmer was to move people to Linux, the ideal strategy would probably be as follows:

1. Port the application to Windows
2. Get people addicted to it (that's the hardest part).
3. Make sure that new developments are always available on Linux first (so that there's a real incentive to switch to Linux).
4. At some time, introduce Linux-only features.
5. After enough users have switched to Linux, drop Windows support.
6. ???
7. Profit!

(Sorry, the last two lines just had to come! :-))

Of course the problem with this plan is that starting from step 4 on, it's virtually impossible to do with FOSS: If you don't implement those features on Windows, likely someone else will do. And if you drop Windows support, probably someone else will take over (remember, as of step 2, it's a popular application).

Re:It's the package selection process (4, Insightful)

Rakishi (759894) | more than 7 years ago | (#19306839)

The biggest barrier to switching for many users is that they won't be able to use their old apps on the new OS. This solves that problem.

Re:It's the package selection process (3, Insightful)

Nuffsaid (855987) | more than 7 years ago | (#19306919)

Windows' shaky foundations constitute the main incentive for Windows users to make the switch. Finding on Linux the same FOSS applications you got accustomed with does just make the switch easier. I know it worked this way for my father, who now happily uses on Xubuntu the same Firefox, Thunderbird and OpenOffice he used on Windows. No equivalent for Symantec software, luckily!

Re:It's the package selection process (1)

buswolley (591500) | more than 7 years ago | (#19306995)

Kidding, because for some reason I care if I get modded down. Silly me.

Re:It's the package selection process (0)

Anonymous Coward | more than 7 years ago | (#19307035)

Wasn't Open Source software about choice? Besides, having used both Firefox and Thunderbird on XP has actually eased my switch at home.

Re:It's the package selection process (2, Insightful)

Anonymous Coward | more than 7 years ago | (#19307049)

You're completely missing the point here. This is about open source and not Linux. The point is to make people aware/use open source software. Not necessarily switching to Linux.

Re:It's the package selection process (1)

aabxx (1108623) | more than 7 years ago | (#19307061)

Products that stop, or attempt to stop, Microsoft from dictating the standards, should be made available to Windows (FireFox, OpenOffice). However, it should stop there IMO. What sells most platforms more than anything else is "killer apps". Of course, for many of us geeks other factors make us favour Linux, but for the average user, killer apps is where it's at. Taking that away from linux sounds a bit risky. As an example, imagine a world where you could not simply pirate photoshop, That would make a bunch of people consider a move towards Linux simply because of something like GIMP, unless they could... use it on Windows! So maybe it's not a good example because every kid pirates photoshop but still... I believe Linux would be best served if every good thing about it didn't get ported. This might make it easier for many to switch, but for even more, I suspect (but cannot guarantee of course) it would make it more _difficult_ for them to switch because you've taken away their incentive to switch.

Re:It's the package selection process (2, Insightful)

mrsteveman1 (1010381) | more than 7 years ago | (#19307075)

I think part of the value in making sure there are lots of open source apps on Windows is the tie in factor, that is, it makes it a bit harder to segment Microsoft and Windows from open source programs. This has some advantages, if core Windows customers rely on certain open source apps it becomes much harder to attack the concept of open source itself. While it might be easy to say that certain apps or functions should be Linux only, this is a sure way to retard growth and won't actually help anything.

It does help to ensure that the applications people use are consistent and cross platform, because Firefox has already become so common and desirable that a very large percentage of non technical people prefer to use it. The same will become true for other applications, all thats needed is time and exposure. At some point the strengths of a better back end operating system will also become apparent, but first we need to ensure that the front end interface and applications are both usable and familiar.

Re:It's the package selection process (2, Insightful)

metalcup (897029) | more than 7 years ago | (#19306559)

I agree - but given that there is currently no similar technology, it does seem like a good idea to develop/design the enabling technology..

Re:It's the package selection process (2, Interesting)

KiloByte (825081) | more than 7 years ago | (#19306677)

Don't forget about updates, too. While a few apps like Firefox check for updates on their own, most don't, and even those which do are all inconsistent with each other.

The desktop I use at work is a Windows one, as this is what all but one customers use -- so even though I spend a lot of time sshed to a real box, things like Firefox, Gimp, TortoiseSVN, etc, etc, are all win32 binaries. And having them keep up to date by a single command as opposed to visiting every single homepage once in a time would be swell.

Re:It's the package selection process (1)

MikkoApo (854304) | more than 7 years ago | (#19306997)

+1 for incremential updates Also, it'd be nice if the user could specify which sub-packages they want. Selecting parts as "I want these three, but not that one" would be very nice for software which has lots of addons.

Re:It's the package selection process (3, Insightful)

Nullav (1053766) | more than 7 years ago | (#19306763)

A package manager for Windows. That's great and all, but will I be able to get out of the install-reboot game every time I have to set up a new computer for someone? What benefits will this have over just doing a Google search for "Lua compiler" and comparing feature lists?
I can see a lot of benefits for the developers, suck as skipping an installer altogether, but all the end-user can rely on is trial and error if there are ten programs under the same category and no detailed feature lists.

Re:It's the package selection process (2, Informative)

funkatron (912521) | more than 7 years ago | (#19306883)

The install-reboot game is easy to get out of. Click no when it asks to reboot and carry on installing stuff, reboot when you've finished.

Re:It's the package selection process (1)

bheekling (976077) | more than 7 years ago | (#19307041)

What if its a software I need to use now and I'm running a compile which takes a whole day to finish?

Cool! (0, Redundant)

GFree (853379) | more than 7 years ago | (#19306525)

An interesting project. I've always believed that if you HAVE to use Windows, there's nothing wrong with giving it the functionality other operating systems have enjoyed. Good luck dude.

Security, security, security. (3, Interesting)

MythMoth (73648) | more than 7 years ago | (#19306543)

Do not let this become a new attack vector.

Re:Security, security, security. (4, Insightful)

KiloByte (825081) | more than 7 years ago | (#19306627)

Uhm, let's compare signed repositories with grabbing those programs you need from websites, and quite a few of them use random services like download.com.
Quite a step forward in my book.

Re:Security, security, security. (1)

MythMoth (73648) | more than 7 years ago | (#19306703)

Oh I entirely agree. But the parlous state of the alternatives isn't a reason to ignore security.

Re:Security, security, security. (2, Insightful)

ButcherCH (822663) | more than 7 years ago | (#19307051)

This could also improve the upgrade process which would help security a lot. E.g. how man people do manually upgrade all their manually installed applications? If you can just type "apt-get upgrade" people are much more likely to update and get security updates.

I hope that comes off... (-1, Redundant)

_Shad0w_ (127912) | more than 7 years ago | (#19306553)

That's a rather good idea; I'd sure as hell be using it, if it existed.

Utterly Pointless (-1, Troll)

Anonymous Coward | more than 7 years ago | (#19306561)

"I'd love to hear what Slashdotters think of this."

Utterly pointless.

This is like someone trying to bring the Windows Registry or child windows to Mac OS X. Even the idea itself is abhorrent.

Packaging is a band aid on deeper problems with library incompatibility problems, the braindead scattering of software files all over the file system, and the completely pointless minor differences in Linux distributions.

Re:Utterly Pointless (1)

baldbobbo (883186) | more than 7 years ago | (#19306617)

He's not trying to solve problems of Windows. After all, it's for Google.

I like what you're doing, and I personally don't have any particular suggestions. I would think that the people this would be aimed for are the same people that use apt-get on Debian. So focus on the audience of apt-get and that should guide you for this sort of application for Windows. Good luck.

Re:Utterly Pointless (2, Interesting)

DaleGlass (1068434) | more than 7 years ago | (#19306713)

No, it would be a wonderful thing, although I don't think it'll fly.

On Windows one of the most annoying things that that things install themselves -- which gives them full control over what goes where, up to modifying obscure registry settings and overwriting files. That means you can never be sure you can uninstall something.

Package managers solve that: When I install say, kword it doesn't install itself. The package manager knows exactly what went where and can remove it. KWord itself runs as a normal user account and doesn't have the privileges required to make itself not removable.

But for working well this sort of thing needs everything to be packaged, and I doubt that'll ever happen except in a very few controlled environments.

Re:Utterly Pointless (0)

Anonymous Coward | more than 7 years ago | (#19306729)

Harsh, but you have a point.

One of the problems I have using linux (not that it interferes with my use, just is a minor annoyance) is that I don't know where anything is. Part of this is just because I'm used to windows, and used to the way it works (or doesn't) but it's partly the way linux works. When I install a program with synaptic/apt-get or whatever, it's completely invisible to me what it's actually doing, where is it putting all the files? Sure I can browse to / and see the whole filesystem if I want, but trying to find anything manually is worse than needle-in-a-haystack land.

It'd be nice if the installer could ask you where you want it installed, or even just tell you where its files are going.

Re:Utterly Pointless (0)

Anonymous Coward | more than 7 years ago | (#19306761)

When I install a program with synaptic/apt-get or whatever, it's completely invisible to me what it's actually doing, where is it putting all the files?

Synaptic can list a package's file locations. In the console, dpkg -L package_name does the equivalent.

Re:Utterly Pointless (0)

Anonymous Coward | more than 7 years ago | (#19306791)

Thanks.

I guess I'll get used to where things are, and it's just that I'm so used to seeing 'Program Files' and 'Documents and Settings'.

Re:Utterly Pointless (1)

stony3k (709718) | more than 7 years ago | (#19307091)

And that is exactly why packaging could be a boon for the average Joe. How many people really care where the stuff is installed?

Having said that, I feel that it's too late in the game to try to introduce package managers to windows. People are just so used to doing things one way that they're very unlikely to change.

Re:Utterly Pointless (1)

Rakishi (759894) | more than 7 years ago | (#19306815)

Packaging is a band aid on deeper problems with library incompatibility problems, the braindead scattering of software files all over the file system, and the completely pointless minor differences in Linux distributions.
Unlike you I value my time and wasting it on pointless activity doesn't appeal to me. To download an open source program now I need to google for a program, check which website is the right one, following a redirect to a working site, find+click the link to the download section, find+click the windows download link, find the newest version to download, click "yes I want to download you nitwit" and then select a mirror. Possibly at some point I will be told "we're sorry there is no windows version except in cygwin, please download and install cygwin" which then forces me to go through the whole damn process of installing software for cygwin after I need half of this crap already. Also possibly after all this I learn that the program has been dead for 4 years and that there is a new version being run by a different developer under a new (slightly modified) name.

Re:Utterly Pointless (1)

The Master Control P (655590) | more than 7 years ago | (#19306831)

I'll give you dependency hell, but linux scattering files all over the file system? I think not.

In Linux/Unix, you have a set of prefixes (/, /usr, /usr/local, sometimes /opt/kde and /opt/gnome) and directories within each of those (bin, doc, etc, man, sbin, share). If the software doesn't have special needs (e.g. a database, the kind of thing users don't install), you know exactly where crap goes: Binaries are in prefix/bin, libraries are in prefix/lib, images and whatnot go in prefix/share/appname/. Where user stuff goes is admittedly lacking in definition; It's usually either ~/.appname or ~/.kde/share/apps/appname for user-config. But the point is, if you tell me "I installed foobar," I know of maybe 4 places to look for any given file that goes with foobar.

Last time I used Windows, the installer suggests an install directory (following no particular standard), puts most of itself there, and is then free to put some random files into c:/windows/system32, or wherever it feels like.

Re:Utterly Pointless (0)

Anonymous Coward | more than 7 years ago | (#19306941)

This is why, for Windows or Linux, I much prefer programs that don't need installing. I like something I can just unzip/untar and run from there.

And I've often thought that the way windows works for programs is entirely stupid. Why does my program need to store DLLs in system32? Why not just store them in its own program folder. Why does it shove stuff in the registry? What's wrong with an INI file, like we used to have in W3.1 days.

Re:Utterly Pointless (1)

funkatron (912521) | more than 7 years ago | (#19306925)

I sort of agree that the filesystem layout on linux tends can be difficult. However, package management on windows could be benefits. Reducing the number of updaters that run every time the system starts would definitely be a step forward.

Yep. (1)

Rocketship Underpant (804162) | more than 7 years ago | (#19306953)

Agreed. This is just begging for the slogan "the reliability of Windows combined with the user-friendliness of Linux".

Re:Utterly Pointless (1)

Professor_UNIX (867045) | more than 7 years ago | (#19307043)

This is like someone trying to bring the Windows Registry or child windows to Mac OS X. Even the idea itself is abhorrent.
I think it'd be much more interesting to find a way to implement something like MacOS X's Application Directory container which has all the libraries you need to run the program and, now with universal binaries, binaries for both PowerPC and x86 platforms. I can just drag and drop the Application container onto a USB thumb drive and then onto another computer if I want and everything goes along with it 95% of the time (there are cases where kernel modules would need to be installed or a driver or something in which case it needs a different installer method or a check that runs the first time the app is run on a new system and updates the modules). Some companies developed the U3 kludge and it sort of works, but isn't nearly as elegant as MacOS X's application directories.

Re:Utterly Pointless (0)

Anonymous Coward | more than 7 years ago | (#19307093)

That would actually be real work though :)

It is amazing how robust OS X is when it comes to applications.

I can drag an application anywhere and just works. OS X performs the housekeeping all automatically. It handles file type registration automatically.

The usual unix directory layout is nicely hidden on the desktop but unchanged for people working on the command line.

Applications are are almost always in /Applications and applications are packaged with all they need right in the application's folder which looks like a normal executable. Preferences are in the user's prefs folder.

Deleting an application is trivial, just drag to the trash. You can't screw up the system in anyway other than potentially leaving some harmless libraries or data files still in the filesystem.

Moving all your old apps to a new system is as trivial as copying the applications over and if you want your old preferences.

For Linux or Windows to do anything comparable would require massive amount of rewriting and the ability make basic sane choices that only Apple appears to capable of.

It is much less work to pretend to like the Linux packaging system than to actually make the tremendous effort required to implement something as elegant and user friendly as Apple has with OS X.

interesting! (2, Insightful)

wwmedia (950346) | more than 7 years ago | (#19306609)

interesting but for it to be popular on window IT HAS TO HAVE a user friendly interface not just a command line tool (btw look into new powershell for windows ;) )

Registry (4, Insightful)

VE3OGG (1034632) | more than 7 years ago | (#19306611)

I would say the big thing that I would look for in such a product would be a consistent (or even better, non-existent) use/removal of registry entries. I have dealt with so many so-called "professionally" done software pieces that upon uninstallation would leave several dozen registry entries. This seems terribly unnecessary, and if the so-called apt-get method could circumvent the registry (much like the run from USB flash drive programs) altogether, or at least make it a sure-fire thing to remove, instead of wipe-and-pray.

Good on you for trying to better the system man, I wish you the best of luck!

Re:Registry (2, Interesting)

El_Muerte_TDS (592157) | more than 7 years ago | (#19306675)

--purge

Something I've always missed it the --purge feature, sometimes you want to do a re-install without losing your configuration and sometimes you simply want to get rid of it all.

Re:Registry (2, Interesting)

Anonymous Coward | more than 7 years ago | (#19306687)

If used correctly, Windows Installer packages are really the best choice for non-trivial packages. If you use windows installer packages correctly, then they can uninstall all the installed registry settings.

Avoiding registry settings is very difficult if the applications are coded to store their settings in the registry. Most people do not realise however that you can move COM registration (ie HKCR/CLSID, HKCR/Interfaces, HKCR/TypeLib etc) out of the registry and into manifest files on XP/W2k3/Vista.

I would suggest that you either:
(i) recode applications to make them trivial - ie all the applications files self contained in a single folder (OS X style). User preferences obviously should be separated.
(ii) create a registry redirector that redirects certain registry calls into files (Altiris SVS style)
(iii) still with Windows Installer packages (generated with WiX)

Re:Registry (2, Interesting)

macraig (621737) | more than 7 years ago | (#19306771)

What you're talking about has little to do with the installation process, and much to do with the applications themselves: you're suggesting creating a configuration standard that doesn't use or depend upon the Registry, instead storing configuration and state data in something non-monolithic and independent like, oh I don't know, an INI or CONF file?

It's hardly a new idea; in the past I'd toyed with trying to start a grassroots movement I called Windindin (Windows Data Independence Initiative), that would push for Win32 developers to adopt standards that would deprecate use of the Registry and place config and state data and even user files in predictable standardized places, to make them easy to find AND easy to collectively back-up.

Sounds great, right? Not gonna happen, for a couple reasons: the de facto standards-setting ability of Microsoft and its overwhelming influence with commercial developers, and because the ONLY group it would truly benefit is consumers, the user. Where's the economic incentive if consumers don't even know they need this, much less come to the point of beating down doors demanding it?

The reason the Registry gained traction is because (a) Microsoft is the 800-pound OS gorilla and (b) it actually benefits software developers. The gorilla is still alive and kicking, and commercial software CxOs and project managers are greedy lazy bastards who won't do the right thing if it happens to make their job more difficult.

Re:Registry (1)

drsmithy (35869) | more than 7 years ago | (#19306971)

[...] place config and state data and even user files in predictable standardized places, to make them easy to find AND easy to collectively back-up.

I'm unclear on how this is any different to the Registry.

I'm also unclear on how it is any sort of improvement. Would your text files be transactional ? How would you apply ACLs to their contents ? How would you implement sanity checking on the data ?

Re:Registry (1)

macraig (621737) | more than 7 years ago | (#19307009)

The Registry is monolithic, for one thing. The app config data that gets stored in it is not easily backed-up WITH the app and separate from everything else, whether to archive or migrate to another system. There are plenty of other reasons, but you seem experienced enough to already know what they are.

Really? (1)

dave420 (699308) | more than 7 years ago | (#19306621)

Is it really that hard to find open source software for Windows? I've never had a problem. Windows already has a decent way of installing and uninstalling software, so adding another way to do it, seperate from Windows's own, seems rather pointless, not to be rude.

Re:Really? (1)

babbling (952366) | more than 7 years ago | (#19306671)

You sound like a Windows user. Have you ever tried installing software in Ubuntu? This is one of the areas where Free Software is far, far ahead of what Windows currently has.

Re:Really? (2, Insightful)

drsmithy (35869) | more than 7 years ago | (#19307033)

This is one of the areas where Free Software is far, far ahead of what Windows currently has.

Right up until the software you want isn't in the repo, or is broken. Then it falls way, way behind.

There's also the "what the hell is it called" issue, but that's become less significant in the last year or two, although that benefit is largely restricted to Ubuntu and its derivatives.

Re:Really? (2, Interesting)

chrono13 (879557) | more than 7 years ago | (#19306693)

"Windows already has a decent way of installing and uninstalling software"


Accepted does not mean decent.

Add/Remove really doesn't have anything to actually Add. And the Remove aspect of Add/Remove doesn't actually remove. Some programs go so far as to only remove the shortcuts and say "Uninstall Complete!", while others leave behind large swaths of registry entries and several MB of unnecessary files at C:\, Windows, Program Files, AppData, Local Data, Local Data\AppData (the other AppData, ugh) and anywhere else they please.

But the real failure in Windows is a decent way to keep any number of applications up to date. This would be a fantastic reason to use FOSS in Windows, because for all there would (hopefully) be a central, trusted and easy update system for all FOSS on your Windows machines.

Re:Really? (1)

drsmithy (35869) | more than 7 years ago | (#19307045)

But the real failure in Windows is a decent way to keep any number of applications up to date.

Actually it does, along with having a way to populate that "Add" section, as per your comment above.

The downside is you need a properly managed AD environment to see it.

As for the reason it's not there "by default", that should be pretty obvious to anyone who has ever used the word "Microsoft" and "monopoly" in the same sentence.

Re:Really? (1)

interiot (50685) | more than 7 years ago | (#19306807)

There really is a huge difference between "1. find the proper site to download one piece of software, 2. download it, 3. click install, 4. make sure the temp install file gets removed eventually, 5. maybe think about upgrading it once the next major version comes out", and having thousands of packages [wikipedia.org] available for install at a single click, with all of the dependencies and all complications already figured out for you, and where all upgrades are nearly automatic and pain-free.

Re:Really? (3, Informative)

jcupitt65 (68879) | more than 7 years ago | (#19306851)

apt-get and friends are far, far better than Window's add/remove system. They track dependencies, so when you install "rails", for example, it will automatically install apache, mysql, ruby, all the various connectors, configure them and link them all together. This is especially useful for development. Setting up a complex build environment on Windows can be nightmarish. My project uses 10 - 15 sub-libraries and downloading working and compatible versions of all the dependencies can take a whole day. This is a one-click operation with a package manager.

They all handle updates as well, so you have a central place to keep all your entire system patched. For example, when a vulnerability is discovered in a core library (libz, or linpng have been recent examples), you need to go through your system checkiing that every application which uses one of these libraries is updated. This is almost impossible on Windows, but automatic on systems with package managers.

A lot of work, but simple, conceptually... (3, Insightful)

pla (258480) | more than 7 years ago | (#19306629)

For user-specified (or multiple fallback) repositories, you need nothing more complex than reading your base path(s) from a config file. Prepend that address to every file you download, and it will all go well.

For the bigger project, basically you just need a set of per-package install/uninstall scripts that check for dependancies (or no-longer-needed dependancies on uninstall), do their thing, and write themselves to a standardized catalog of installed software. Whether or not you can adapt Windows' list of such software, and the MSI interface in general, to your needs, I can't say offhand. I would think you can at least list the package therein, but I don't think that handles dependancy information quite as elegantly as you would want.

I see the biggest problem you'll have as coming from the poor regression testing done for Windows ports of FOSS - You may well need multiple (version-specific) instances of some dependancies installed at the same time, for different packages that use "working until version 2.8.10.4" features (or more of a nightmare, "working until KB935356").


Overall, I wish you luck with this. I think the Windows world has needed something like apt-get (with a mind-numbingly simple GUI) for a loooooong time.

Re:A lot of work, but simple, conceptually... (0)

Anonymous Coward | more than 7 years ago | (#19306711)

"I think the Windows world has needed something like apt-get (with a mind-numbingly simple GUI) for a loooooong time."

That's nice. Too bad the entire Windows doesn't want or give a shit about the fucked up world of Linux package management.

Linux package management is symptom not a solution. It exists because:

1) A bewildering array of pointless distributions that have minor differences between that have absolutely no benefit to users

2) A bewildering array of libraries for developers to add dependencies to

3) A mess of unstable APIs that constantly break apps that force Linux users to constantly update their systems to stay in sync

Windows has a stable API, a single desktop, and a standard way to easily install applications.

Bringing Linux package management to Windows is like a Windows developer porting anti-virus software to Linux.

Re:A lot of work, but simple, conceptually... (4, Insightful)

Rakishi (759894) | more than 7 years ago | (#19306901)

Uhh, lets see now. With a linux type package manager I could:
-Actually install MySQL, PHP and Apache easily without having to use a third party package that holds them all. Yeah, windows is sure free of dependencies. Just great especially when your programs are inherently dependent on each other, oh wait no its a pain in the ass.
-Download whatever packages I need without needing to deal with searching the web for the place to download this from. The whole find, download install file, run install file thing gets annoying pretty quickly. Especially when you have a bunch of software to download.
-Queue uninstalls, god damn do I hate the fucking windows uninstaller where you need to uninstall, wait,uninstall next item. Thats not even counting how it fucking breaks in one way or another after a while on most systems I've used.

mono .net (1)

fuliginous (1059354) | more than 7 years ago | (#19306657)

Strikes me as a chance to write something that can also be refitted to run on Linux. Write as .net objects, that opens up the PowerShell and the inevitable GUI back end.

Me I would keep is simple and start with the commands I most commonly use with apt-get, (install, remove, update, upgrade).

Question is how complicated you want to be getting. Will it be pulling in source, checking the environment and building things? Look at CMake.

I guess that is three pennies worth.

This could help Linux adoption (1)

L4m3rthanyou (1015323) | more than 7 years ago | (#19306659)

If something like this were widely used in Windows, the "package" system used by many linux distros wouldn't be so incomprehensible to the typical user. And, when people find out how much more free (libre) software there is on the Linux side, there would actually be a reason to switch.

The only issue I see here are with licensing. There is a ton of free windoze software out there, but a lot of it has strings attached.

And, as mentioned, there's the security issue. Packages would have to be validated in some way. I don't think that trusting the maintainers would work so well like it does for Debian.

Re:This could help Linux adoption (1)

savuporo (658486) | more than 7 years ago | (#19307015)

windows has had code signing since like prehistoric times. MSIs, EXEs and DLLs can ( and should ) be digitally signed. I'd let the thing download and install the stuff which has a signature that verifies up to a given root certificate fingerprint. PKI is there to be used.

Here's a concept I'd like to see (3, Interesting)

DaleGlass (1068434) | more than 7 years ago | (#19306665)

That packages provide functionality. This is already done in the form of virtual packages like web-browser, but I'd like to go further.

For example, the current system is that OO Writer and KWord are in the "word processor" category. But what if I want something that can open AmiPro documents? What options do I have there? That's generally not included anywhere in the package's description.

I found this weird .pcx file, and have no clue what is it, what can I open it with?

Or, what music player has the ability of playing .s3m files?

What mail clients can I choose from if I'd like both NNTP and IMAP support?

What programs are available that do some function that is related to an HP nx5000 laptop? (this would match programs controlling LCD brightness, support for the onboard bluetooth, etc)

A nice thing would having these capabilities roughly grouped as "can access" (can play .s3m files) and "fully implements" (can create .s3m files).

Re:Here's a concept I'd like to see (1)

Trinn (523103) | more than 7 years ago | (#19306837)

Actually, this is available in debian-based systems through 'debtags' and the related functionality -- open up your latest aptitude (or perhaps synaptic?) and look into the tags browsers. Its not perfect yet, but at least someone has thought of this

Good idea (1)

Futurepower(R) (558542) | more than 7 years ago | (#19306679)

"My reasoning is that open source software suffers from poor presentation."

Definitely true. Part of the reason is that programmers often just like to program, not make things easier for the user. Writing a manual and making things easy can take 90% of the development time.

Re:Good idea (3, Insightful)

perrin (891) | more than 7 years ago | (#19306829)

My reasoning is that open source software suffers from poor presentation.
Definitely true. Part of the reason is that programmers often just like to program, not make things easier for the user. Writing a manual and making things easy can take 90% of the development time.
The reason is also partly, in my experience, that free software developers listen way too much to the few, vocal power users who want all kinds of special adaptations and options, rather than finding out what the great majority of users actually need and want. The result is often over-complicated user interfaces, and hard to maintain code because of all the codepaths added to accomodate the hard to satisfy wants of some power users. Once the interface becomes hard to use, the ordinary, quiet users turn to other programs, and power users become even more dominating, leading to a vicious circle of program sectarianism.

It is not only the programmers' fault, though. Far too few users bother to suggest interface simplification,or even know how to advocate it. Merely complaining will not work - developers need to be shown that it can be done, and how, by means of mock-ups or illustrations. A few innovative user interface interested users could do wonders for many projects simply by drawing new user interfaces and submitting them to various free software projects, asking if they are interested in going a few rounds of design iterations with them. Often an outside eye, and interest in doing some adapting from both sides, is all that is needed.

Re:Good idea (1)

Aladrin (926209) | more than 7 years ago | (#19306905)

'Making it easy' takes a -lot- less time if it's planned from the start, for most projects. And the 'manual' for open source software doesn't have to look like the manual for professional software.

I wrote a mesh conversion utility once. It was used by thousands of people and my 'manual' (web-based tutorial, with screenshots) was so good that nobody ever asked me how to use the app except when there was a bug. I got plenty of praise on my tutorial as well. The tutorial probably took a couple hours to prepare and write, including adding interesting fun facts about what was being modelled. The software probably took around 20 hours. Even with the experience I have now, the program would take at least 10 hours to write.

So while it -can- take 90% of the time, it can also take 10% of the time, when done and planned right.

More complex software obviously needs a more complex manual, but I think it probably scales pretty evenly. It might even weigh in heavier on the programming side, as there will be quite a lot of back-end stuff the user won't see.

Already exists? (2, Insightful)

jamlam (1101193) | more than 7 years ago | (#19306695)

There is a mechanism for doing this kind of thing already in Windows, via Add/Remove programs and Group Policy. Surely it would be a good idea to try and re-use this rather than re-inventing the wheel.

Re:Already exists? (0)

Anonymous Coward | more than 7 years ago | (#19306843)

I see what you're saying, but something like that which works with those existing windows methods, and extends them to less graceful but now less useful opensource projects. I mean if you've got a nifty tool, and this summer of code project lets you roll it out and configure it on 100s of computers via GPO, wow, that tool just became a great deal more powerful and useful. Something that you set up once and it promises to take much labor out.... If it's written carefully in .net to be as mono friendly as possible, that's quite the foundation for linux in windows enterprises to build on. 10 years down the road a little seed of an idea like that might have grown into something quite fruitful. Crazy ambitious, but damn, if it worked it would sometimes be better than magic.

Vista... (1)

montyzooooma (853414) | more than 7 years ago | (#19306707)

How will this cope with Vista and it's increased security? I'm all for this as an idea but it would be a shame if it takes a couple of years to get up and running but by then Vista is mainstream and, for whatever reason (FUD?), breaks compatibility with the packaging system.

The small things... (1)

Daniel K. Attling (1003208) | more than 7 years ago | (#19306721)

Good initiative, I myself tossed around some ideas for such a system a long time ago but never got started on actually doing anything about it.

IMHO some things to keep in mind are some kind of authentication of packages, an extensive system for deinstallation that cleans out crust, backwards compability with existing package systems (rpm, apt-get), option of building from source if all available packages are sorly out-of-date, local and remote installation with as few requirements for previously installed programs. These are just a few of the things i thought about before, lemme know if you want me to dig out my old document with ideas.

Oh yeah, this is my first ever post on /. so be kind^H^H^H^Hless of an ass to me :P.

ReactOS compatibility (3, Interesting)

lobotomir (882610) | more than 7 years ago | (#19306733)

So, in theory this should work with ReactOS [wikipedia.org] when they are both finished, right?

Re:ReactOS compatibility (-1)

Anonymous Coward | more than 7 years ago | (#19307063)

Why was this modded up? It adds nothing to the discussion. Smells like a karma whore.

Cygwin packaging (4, Insightful)

julesh (229690) | more than 7 years ago | (#19306737)

I hope you're planning on making it interoperate with the cygwin packaging system. Cygwin's a great piece of software which is, IMO, let down by its obscure and difficult-to-use setup program. A new, friendlier way of installing and updating cygwin components would be a great asset. And if it worked with other OSS stuff as well, that would be a huge asset.

One thing I would suggest is that you make it easy for somebody to package a standalone .exe that doesn't require your system, but which can interoperate with your system easily -- perhaps by having a version of your system that can wrap up a package with a copy of the relevant parts of itself in a .exe file.

Using this tool to market open source apps (0)

Anonymous Coward | more than 7 years ago | (#19306739)

I would actually love something simmilar to java web start... i.e. a little application that lets you browse through the open source applications on your PC. It would be great to remind people of how many (good) open source apps they have.

It would also be nice to let users look for alternative applications or do a keyword search/browse for new applications. A nice web-like interface to the app would be great.

It should also prompt the user of an update to the app when its run (ala click-once).

Most people download apps like Firefox because they are good. But most people don't know where to get more simmilarly good free apps. This package management tool needs a pretty UI, a slick name and a funky logo. People need to associate the package management tool (and open source in general) as providing software worth installing and using (i.e. create a brand).

There may be an existing solution ... (5, Informative)

baileydau (1037622) | more than 7 years ago | (#19306845)

You may want to look at wpkg (http://wpkg.org/ [wpkg.org] )

It is a windows package management system based on dpkg.

We use it at work and it appears to work fairly well. Although I don't know for sure, as I'm not the PC admin and I don't run a Windows desktop :)
I just get to hear him saying how much easier it is to manage the PCs with it.

DADVSI? (0)

SocratesJedi (986460) | more than 7 years ago | (#19306865)

Slightly OT, but did you noticed on the download page that it says "Due to the french DADVSI law, we are requested to remove the following legal BitTorrent links...". I read the Wikipedia article, but it's still not clear to me what this might mean. Anyone have insight?

Re:DADVSI? (-1, Troll)

Anonymous Coward | more than 7 years ago | (#19306973)

The French have a law which says that any software which does not default to installing in the French language must not be submitted to either an IP address in a French-speaking country, or an individual whose first language is French.

All countries which include French in their official languages have to pay a tax to the French government which goes towards fighting the spread of English, and a similar tax is levied on all French lessons or teaching material round the world. This tax would be applicable as a penalty to any English-only software downloaded or viewed by a French speaker.

Removing any BitTorrent links to English-language software lets companies avoid the legal and administrative difficulties that this poses to their business.

Though this is France applying a law outside its own country, Bush signed a reciprocal treaty last year to allow its enforcement in the US, in return for French cooperation over RIAA copyright enforcement in France. I reckon he assumed there were not very many French speakers in the US, and they would not be voting Republican anyway.

You can not be extradited, but the French authorities can put a lien on your earnings for any tax they believe due, and the US Federal courts will enforce this.

Re:DADVSI? (1)

Chatterton (228704) | more than 7 years ago | (#19306993)

What ???
I am French and I have no knowledge of this law.
Could you send me links or references of supporting material?

Re:DADVSI? (1)

Chatterton (228704) | more than 7 years ago | (#19307029)

In the french version of the page it is a little bit more clear: "En raison de l'adoption de la loi DADVSI, OVH nous demande de retirer les liens BitTorrent, bien qu'ils soient légaux. Les liens suivants sont donc désactivés..." what could be translated in "Due to the French DADVSI law, OVH asked us to delete all BitTorrents links, although they are legal. The next links are then deactivated...".
It is just OVH (a web hosting company) who has shit in their pants with the DADVSI law and asked every webmaster to delete BitTorrents links legal or not :(
DADVSI is the French version of the DMCA but a little (not too much) lighter :/

Not sure (5, Interesting)

Mostly a lurker (634878) | more than 7 years ago | (#19306869)

Superficially, this seems an interesting project. I think, though, the problems with managing open source software on Windows are going to be very different to those on Linux: possibly to the point where what you can achieve will be limited.

The first issue that occurs to me immediately is that Windows has no single suitable native package management system that you can hook onto. Because of this, program installations tend either to (i) include whatever prerequisites they need and check whether their installation is necessary; or (ii) list the prerequisites in the installation instructions and leave it up to the user to ensure they are satisfied. Now, you might say that the whole point of the project is to resolve this, but I think you are going to run into licensing problems when you try. Let's say a particular open source product relies on .NET Framework 2. Are you then going to include .NET Framework 2 in your repository? Are you going to download it from Microsoft, using Microsoft's Download Center as a kind of adjunct repository? Are you going to talk to Microsoft to see if they will cooperate in working out a solution? This seems hard.

I do think that a single starting point for finding quality open source solutions on Windows has merit. Right now there is a bewildering mass of products out there, and no easy way of sifting the gems from the dross. If nothing else, you might be able to provide a good menu of open source products that are deemed worthy of consideration.

Good luck!

external package binding (1)

korpique (807933) | more than 7 years ago | (#19307059)

> Are you then going to include .NET Framework 2 in your repository?
> Are you going to download it from Microsoft, using Microsoft's Download Center as a kind of adjunct repository?
> Are you going to talk to Microsoft to see if they will cooperate in working out a solution?

Interesting question. What occurs to me naturally is to make a metapackage that provides dotnetfw2, that looks to see whether it is installed, then attempts to download the package from the official location - I'd try to implement this as semi-interactive browser use, so that user could enter login credentials or intervene in other manners in case the web pages do not answer in ways known to the script - or inform the user how to achieve installation of dotnetfw2 and fail.

Bigger question probably is whether this project will get enough contributors to achieve sufficient quality to pass as the premium choice for end users. I think there are probably plenty of software professionals who have to work on said platfrom, either permanently or every now and then, and thus likely no shortage of potential contributors - and power users.

> If nothing else, you might be able to provide a good menu of open source products that are deemed worthy of consideration.

There's a lot of that stuff that I'd love to see so easily available. Just yesterday felt kind of lost without grep. Luckily, Active perl is easy and familiar.

I'm not sure it's going to work (0)

nanosquid (1074949) | more than 7 years ago | (#19306915)

I like the goal, but I'm not sure it's going to work. People have tried hard to make this work on the Mac, where you can get MacPorts and Fink. Neither of them has caught on at all among general Mac users. Even as someone who loves the Linux package managers on Linux, I don't use either MacPorts or Fink on the Mac because I find them to be more hassle than they are worth.

At the very least, have a look at MacPorts and Fink and try to understand who uses them and how they are being used.

Re:I'm not sure it's going to work (1)

killjoe (766577) | more than 7 years ago | (#19307037)

Mac users don't want to user open source package managers and neither to windows users.

Your efforts would be better spent making wine better so we can use windows software on linux.

Re:I'm not sure it's going to work (1)

nanosquid (1074949) | more than 7 years ago | (#19307067)

Your efforts

Why are you addressing me? I'm not doing this project.

Mac users don't want to user open source package managers and neither to windows users.

I think they actually do: both Mac and Windows users like automatic updates. Furthermore, there's a strong argument to be made that a good way to get Mac and Windows users to switch to open source operating systems is to get them interested in open source desktop applications first. And a simple delivery mechanism for those desktop applications greatly helps with that.

The problem with Fink and MacPorts is that it's too Linux-like and is built around Linux packaging technologies. A good Mac/Windows package manager probably needs to be built from the ground up for those platforms, even if it is for open source software.

Cygwin? (1)

jaavaaguru (261551) | more than 7 years ago | (#19306923)

So is this going to be like Cygwin, with a nicer user interface?

MSI (2, Informative)

ericfitz (59316) | more than 7 years ago | (#19306929)

Microsoft already has an open packaging format for installers, it's called Windows Installer (formerly Microsoft Installer), or MSI for short. MSI 3.1 supports Windows 2000+. http://msdn2.microsoft.com/en-us/library/aa372866. aspx [microsoft.com]

Why re-invent the wheel? This is open to everyone and well documented on MSDN and countless forums all over the web.

Re:MSI (2, Funny)

Anonymous Coward | more than 7 years ago | (#19306939)

Because my patent on wheels will be worth BILLIONS!

Idea: start menu (1)

tmk (712144) | more than 7 years ago | (#19306945)

One of the really annoying habits of windows programmers is to put dozens of different entries in the start menu: the readme, uninstall procedure, another readme, a seperate update routine and - very important - a link to the developers web page.

Could you introduce a debian-like menu, where each program has exactly one entry and is in the right category?

Considerations about multiple repositories (3, Interesting)

maxwell demon (590494) | more than 7 years ago | (#19306965)

One thing I think shopuld be considered from the beginning is how to handle multiple archives, which may be independently maintained. Sure, the basic operation is simple: You add a new URL to the list of archives to search, and then you can see the contents of those archives. However that's not all there is to archives:

1. How do you find additional repositories?
2. How do you find out if a given repository is trustworthy?
3. What to do if several repositories contain packages for the same application or library?
4. What about version inconsistencies?

Points 1 and 2 can IMHO be (mostly) solved together through a "repository web": Repositories not only contain packages, but also links to other repositories. Those links should also be rated, so you get a web of trust for repositories: You can mark several "root repositories" as trusted or untrusted (those settings should, of course, be user-changeable). Then trust would "propagate" through links marked as trusted, or "anti-propagate" through mistrust-links. One could even imagine "repository hubs", repositories which don't contain files, but only links to other repositories together with trust ratings. It might also be a good idea to have several trust ratings for the contained files, and for the contained links (after all, you can well imagine an excellent file repository where the maintainer isn't able to accurately rank the trust on inter-repository links).

For points 3 and 4 I don't have a suggestion right now, but they definitely should be considered (note that separately maintained repositories will almost certainly cause inconsistencies at some point).

Of course you can just pretend that there will always be only one repository, or that all repository providers will work together to avoid inconsistencies, but I think that's not really a good idea. Additional independent repositories will eventually come (assuming the project is a success), and therefore the problems caused by those should definitively be anticipated, even if originally there's only one repository.

Window is not *nix. (1, Insightful)

Anonymous Coward | more than 7 years ago | (#19306967)

I want to highlight some differences between dpkg/yum/whatever to the Windows platform. You may like to carry some features of *nix, but doing so will require you to re-educate the users, and thus your package management will not get adopted.

1. Windows users expect the Next->Next->Next->Finish paradigm. *nix users expect the "silence is golden" rule.

2. *nix advocates dynamic linking. Windows has DLL-hell. This is because the distribution can suggest the library versions and the user can choose a difference library version by recompiling dependants. This is not possible in binary only distribution.

3. Windows software comes from multiple sources. You must allow others to host their packages and only link to other places. Don't try to make one large repository. You can however, maintain one large catalog and allow others to edit their entries in your catalog.

4. If users will be able to add entries to your catalog, they will add bogus software. A later version will have to allow the users to rate the packages. Use the users to make your content, you only supply the means.

5. Interaction with MSI is non-trivial. Start with a prototype of your system that use zipped packages (optionally with a manifest file). Once all the pieces is in place, start adding support in msi packages.

Some people aren't RTFA (2, Insightful)

Flying pig (925874) | more than 7 years ago | (#19306989)

and are objecting to points already covered. I think this is a good idea, though it would need support from the developers to keep the repositories working, and they would object because removing the need to navigate to the sites will remove having to work through the requests for help and funding. Now if you could fix that - so that as you install xxx.msi, a request and info page opens in a pane, that might be a good feature.

It's a stealth feature. Get people installing applications that way, because then the Linux desktop will be more familiar.

Something really is needed. I keep coming across people who really need no more than Wordpad who are buying Office because they think they have to. I recently came across a guy who has bought Office 2007 and writes nothing but letters and the odd email. He thought that somehow saving his letter to Auntie Flo in Office 2007 format (docx) was "better" than saving it in Office 2000 .doc, right up to the point she couldn't open it as an email attachment and he had to "downgrade" his document. Microsoft is exploiting numskulls like that. (I'm only jealous of course - I'd love a list of 100 or so gullible people with money but, as I'm not a corporation with deep pockets, I might get into trouble.)

These people don't know OOo exists, and even if they did would never be able to find it. But a simple little packager that has a "Top picks" with something like "Open Office 2 - for all your home office needs" and a "click here to install" button - well, at least we'd be trying.

rpm, apt, and what not (0)

Anonymous Coward | more than 7 years ago | (#19306991)

Please don't make your project any harder to use than rpm :)
[ http://jengelh.hopto.org/linux/adm_pack.php [hopto.org] ]
BTW, why reinvent the wheel? Just port an existing system (that is, libxyz and its xyz gui) over there.

feature list (0)

Anonymous Coward | more than 7 years ago | (#19307023)

Basically, this is a good enabling technology, with many long-term benefits. This, of course, means someone has already thought about it [winpackman.org] -you might want to consider joining forces, instead of rolling your own.
Either way, here are some features, which such product must have to gain the critical mass (among others):
-Automatic recognition of the currently installed softwares, along with it's version numbers. Ability to upgrade them.
-Support for stealth installation of all the current major software deployment methods: MSI, NSIS, installshield (among others)
-Support, and database for automatically downloading, showing license, and stealth installing non-GPLed, but freely available softwares (such as .NET). IANAL, but I don't think such deployment breaks any laws -after all, what does it matter, whether you've downloaded such software via a web browser, or from any other application
-Dependency tree (with version information), and automatic dependency analysis&deployment for each installed software (my mom doesn't really wanna know, or care if the latest solitarewarez needs .NET 3.5)
-Category tree, tags, user comments, rate, number of times downloaded... etc, the basic meta-information required to make an informed decision whether you'd like to try it out, or not.
-Seperated repository for freewares, sharewares, etc.
That said, I think the biggest challenge is putting together a community-based, but still trustworthy database of applications, and figuring out a way to make it convenient, and secure enough for large-volume administrators to use it.

Have a look at Filehippo.com update checker first (0, Offtopic)

christophercook (21090) | more than 7 years ago | (#19307039)

I'd recommend having a look at filehippo.com. They have a tool in a similar vein, although not restricted to opensource - the File Hippo update checker (http://www.filehippo.com/updatechecker/ [filehippo.com] ) - it works pretty well. My only criticism for them is that they identify new video driver packages which don't necessarily apply to your specific hardware, just the vendor.

On a complete tangent - what software submission sites/distribution channels can people recommend (like fileforum/download.com etc) for getting your own freeware/shareware listed? I've got a guitar tutor thingy at http://www.webprofusion.com/scalex [webprofusion.com] that I want to finally get rolling out, it's been sitting around for ages and I've another update in the works.

MSI (2, Informative)

the_soulman (465347) | more than 7 years ago | (#19307057)

An apt-get equivalent for windows would be a very cool thing, I hope you succeed.

You might want to reconsider the decision not to use MSI as a back-end. I am not familiar with the details of the technology, but some of the supported features are command-line and GUI installs, and administrative network installs. And if you don't already know, Microsoft has released some open-source (!) tools for generating MSI packages: http://wix.sourceforge.net/ [sourceforge.net]

Updates system for OSS (4, Interesting)

pubjames (468013) | more than 7 years ago | (#19307073)

I have been thinking about this recently.

I have lots of applications, both OSS and commercial, that have some kind of update system built in - the application checks for an update when you start it, for instance, or when you select the option from the help menu. In fact it is getting to the stage where practically every app. has this.

What I would like to see is a single open method of doing this which could work for all applications (so even commercial software providers could opt into it if they wanted), which would be simple and secure. It would be great to have a single application open that ran at start-up that said: "The following applications have updates available:" and then lists the applications, and two buttons "Update all" and "Advanced" which would allow you to see details about the updates and select just the ones you want.

For instance on my Mac I have:

1) The Official Apple "Software update" that updates OSX and Apple Apps.
2) The Adobe updater for Photoshop, Dreamweaver etc.
3) The Firefox/Thunderbird updater
4) Dozens of updaters for individual apps like TextMate and OSS software
5) Updaters for OSS packages (Fink/darwinports)
(Yes, I know about the App Update widget but that only addresses part of the problem, and it does not provide a technical solution that can be used across platforms and projects).

And on Windows, I have the same kind of mess of updaters.

I'm sure there could be a simple, elegant technical solution for this, a kind of RSS-type standard for application updates - you could then choose your prefered updater just as you can now choose your preferred RSS reader.

Library dependencies (1)

Slicer (4034) | more than 7 years ago | (#19307085)

What makes apt and rpm repositories so great is not that they contain loads of software, but that the software packages depend on each other so that each package contains as little as possible. In contrast, most Windows applocations are self-sufficient. If it requires external libraries, those will be bundled with the installer.

To make a functional package repository, you'd have to first build the supporting libraries all those programs use, then build all the programs and create dependencies. As this is counter to the current windows philosophy, you'll likely have to change the build scripts of all the programs involved. Good luck.

If you are going with the binary approach (basically creating a more managed download.com), be sure to fully support NSIS installers. The NSIS installer is by far the best installer out there for open source projects, and also one of the more popular ones.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...