I am not known here, did not work for SUN, have not contributed code to illumos or any derivatives, etc, but I feel my viewpoint is relevant. what I can say for credentials is that I've used Slackware linux since around 2001, have managed packaging on slackware, redhat, debian/ubuntu (most painful experience ever), and freebsd, at least. I've managed packages and their repositories in real life scenarios. I got on solaris around 2005, and put it on a server when ZFS went into Solaris 10. I didn't learn SVR4 packaging as it was too easy to bash-script builds and updates of one-core software - a single personal server, after all. but I worked with it plenty, and I've worked with IPS maybe less so - I took a long break from the Solarish world when IPS/Murdock/etc happened - but probably more in-depth. currently I'm creating a distro of illumos, including a package management system that makes sense to me. basically, I live between the OS hackers and the end-users; I can't write a package management system in C, but I can write one in bash, perl, or go - and I think I know what to include and what to elide, situation-depending. this is why I feel my viewpoint is relevant to the original question.

here are the purely technical criticisms I have of IPS:
1. it's slow. it was slow when it started, it still is - improvements notwithstanding. it's written in python, so basically it will never operate at a reasonable speed. 2. it does too much. a package management system should manage packages. otherwise, call it something else. 3. in keeping with (2), it is tediously over-complex. packaging is *dead simple*. IPS is the opposite. 4. the lack of scripting is, in my opinion, simply stupid. we're not there yet, we need scripts. 5. SVR4 wasn't perfect, the patch stuff was definitely wonky in my experience, but actual package management worked, and consistently, and at a respectable rate of speed. what, exactly, was the problem with this scenario? throw out the patching and you have a perfectly good system. the replacement of this with a slow thing that does too much, requires learning a new interface, and breaks? a loss. 6. the network argument is simply nonsense. wget. script it if your requirements are such. Schilling also pointed out a solution to this total non-problem.

other points:

Quoting Joerg Schilling <[email protected]>:
So to me the question is rather: why do some people believe, we need a new
packaging system instead of working on fixing the old and proven one?

completely agreed. point 5.

Quoting Peter Tribble <[email protected]>:
in many scenarios. It's also proved in practice to be far too fragile
- many of us have ended up with a hosed system that IPS refused
point bank to let us do anything with because of its constraints.

facts. points 2,3, and 5.

distribute software for your platform. The IPS repository model
is a huge barrier to entry, and many will simply refuse point-blank
to be involved. By contrast, simple file-based packages are easy
to build and trivially easy to distribute by any channel. As a

I can't say that better.

Quoting Garrett D'Amore <[email protected]>:
IPS single greatest strength is that a package in theory is fully described by its metadata. (It turns out that this isn't 100% true, as post-reboot scripts in the form of special SMF manifests have become a way to "workaround" the lack of scripting in IPS.) Whether

items 1 and 1.5: facts. items 1.5 and 2: ugh.

In almost every other way IPS fails, with the sole exception that it works well *if* you are an end user who only ever installs software using IPS, and you follow strict rules about using the right repositories, etc. This does describe the majority of IPS users.

funny how well s/IPS/apt works there. doh...

In my "ubervision" of illumos packaging, we would use IPS manifests (which have that wonderful self describing property), and different vendors can use them as source files for a variety of binary packaging formats. I know that people have figured out how to parse and process those manifests to create not just IPS packages, but also Debian (illumian & Nexenta do this), ISO (Joyent and DEY do this), and SVR4 (I have done this in an ugly proof of concept).

I am absotively 100% for this. I've done this to create my own packages, so I have a personal interest. but beyond that and more important is the fact that, as you say, others are also doing this. breaking that would be, in my opinion, a fatal error. which is part of the problem with the move from SVR4 packaging to IPS packaging, as you've also pointed out. for me, this is two simple perl scripts - one that groks manifests and does things with that info, and another that maps IPS packages, or oddly split-up IPS packages, into more sane packages. I can't believe that others parsing the existent manifests would not be upset if this changed.

IPS had some interesting and potentially good ideas: fact. Some great minds put a lot of work into IPS: fact. its implementation was a failure: fact. for people who package, it's painful. for people from a slack/bsd background, it's painful. for people from a solaris background, it's painful. even for end-users, it has that potential. hell, even the debianish folk - masochists by definition - ditch IPS for dpkg/apt - what does *that* tell you?

-J

Quoting Moinak Ghosh <[email protected]>:

On Wed, Dec 19, 2012 at 10:26 PM, Moinak Ghosh <[email protected]> wrote:

Good points from everybody. Adding a few tidbits of my own. Just to clarify
I'm no SVR4 lover having had worked on the messy codebase during my stint
at SUN. It had good ideas but the age of the code was showing.


BTW to repeat once more so that people do not misunderstand. SVR4 principles
were solid, codebase was somewhat messy. It is feasible to provide a
solution
that retained compatibility while utilizing a more modern core.

It is too heavily centered around scripting. The biggest drawback with the
SVR4
package tools is that there is no native notion of a package upgrade. There
is
only overwrite capability. So this is one thing that caused the messy
patching to
come into the picture.

Regards,
Moinak.
--
================================
http://moinakg.wordpress.com/
http://moinakg.github.com/pcompress/



-------------------------------------------
illumos-discuss
Archives: https://www.listbox.com/member/archive/182180/=now
RSS Feed: https://www.listbox.com/member/archive/rss/182180/23519696-f7df691b
Modify Your Subscription: https://www.listbox.com/member/?&;
Powered by Listbox: http://www.listbox.com





-------------------------------------------
illumos-discuss
Archives: https://www.listbox.com/member/archive/182180/=now
RSS Feed: https://www.listbox.com/member/archive/rss/182180/21175430-2e6923be
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=21175430&id_secret=21175430-6a77cda4
Powered by Listbox: http://www.listbox.com

Reply via email to