-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Klaus Kaempf wrote:
> * Pascal Bleser <[EMAIL PROTECTED]> [Jul 23. 2006 12:42]:
> [...]
>> Now, with those patterns, if they're not a closed, well-defined list of
>> options to choose from, we will most probably end up with chaos.
> 
> Well, actually I don't think so. We'll probably get as much (or better
> as less) chaos as with packages.

I think we have a slightly different view/understanding of the patterns.
To me, it's not as much high-level packages than rather groups.

I rather see the analogy with RPM Groups or .desktop categories.

btw, just to make sure I got that right, can patterns be organized into
a tree (i.e. do they have a hierarchy) ?
e.g. Development/Database/Server

> Patterns is about the ability to group packages for better overview
> and handling, mostly at the UI level. Its an abstraction level.

It's grouping... I wouldn't call that an "abstraction level" though :)

An "abstraction", to me, would rather be to say "install texteditor" and
you would get kate, emacs, vim or whatever ;)

> However, I do agree that some kind of public 'pattern database' would
> be nice in order to find duplicates and overlaps.

Totally.

I really see a risk of ending up with chaos here.
To continue on my analogy with RPM groups and .desktop categories: if we
didn't have a closed set of options to choose from (as defined in the
SUSE Package Conventions), it would be havoc and the end-user KDE/GNOME
menus wouldn't be very deep.

At the very least, let's keep a pattern database (or rather, just a
list) to try to reuse existing patterns if they match.

...
>>> - The groups can be specified as comment-metadata at the top of the spec 
>>> file
>> Well.. yeah... that should be the last option to consider.
>> Introducing proprietary spec file tags through comments is really,
>> really bad practice.
> 
> I fully agree. The package-pattern relationship is not an attribute
> of the package.
> 
>> Anyhow, that pattern infrastructure must be "pluggable" - i.e. every
>> package must be able to define what pattern it is part of.
> 
> Please let the patterns define which packages they want. Grouping of
> packages is already done with RPM groups. Being able to specify multiple
> groups would be nice.

Right.

> But this does not specify (hard or weak) dependencies and there's
> no use in enforcing specific package groups to be installed. However
> with patterns, defining a functionality, dependencies express to-be-
> installed packages and the dependency solver ensures this.

Makes sense. If patterns were hard dependencies, then we could achieve
the same with packages (and Requires:).

>> I think it would be much better to just store the information directly
>> in .pat files in repositories (in suse/setup/descr), in a simple format,
>> to just create or modify those files with a simple text editor (XML
>> would be an option as well - less human-readable/editable but validation
>> would be a plus).
> 
> Agreed. Lets create a 'pattern definition format' (just like .spec is a
> package definition format)

Yes please :)

>> An example:
>> - - you have two repositories configured in your list: SUSE Linux 10.2 and
>> Packman (for SUSE Linux 10.2)
>> - - in the SL 10.2 repository, in suse/setup/descr/, you have a file
>> called "development-database-server.pat", that includes stuff like
>> mysql, mysql-Max, postgresql-server, ...)
>> - - in the Packman repository, in suse/setup/descr/, you also have a file
>> called "development-database-server.pat", that includes e.g. firebird
> 
> Well, thats similar to packages having the same name but different content.

Mmmm... I don't agree ;)

>> YaST2 must be capable of iterating through all the .pat files of all the
>> repositories it has in its configuration, and to merge to actual list of
>> packages that are part of each pattern from all of those.
>>
>> For the example above, the "Development/Database/Server" pattern should
>> contain/show
>> - - mysql
>> - - mysql-Max
>> - - postgresql-server
>> - - firebird
> 
> Given the package analogy above, would such a merge behaviour make sense ?

I don't see any package analogy here with the patterns.

It's just that if you see it as an analogy to RPM Groups or .desktop
categories, a package that's in my repository (or packman, or ...)
should be able to merge into a pattern/group/category that's already
present on the SUSE repository (or media), as in the example above.

>> On another note, I hope the process and behavior will be well-documented.
>> It would be really neat to also implement pattern support into smart,
>> for example.
>> smart upgrade pattern:Desktop/KDE3
> 
> 'rug' is already able to do exactly this ;-)

Ok, but I'd love to see it in smart ;))

Thanks for the feedback and information !

cheers
- --
  -o) Pascal Bleser     http://linux01.gwdg.de/~pbleser/
  /\\ <[EMAIL PROTECTED]>       <[EMAIL PROTECTED]>
 _\_v The more things change, the more they stay insane.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFExlK6r3NMWliFcXcRAgpeAJ0ZBdYosbps6PYGFNLVFlCC/4M3jgCbBcov
wSCs3bJ1qrF1S98kWjdIVXQ=
=E+i3
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to