David Naylor
2007-05-11 21:02:31 UTC
Hi,
Thank you all for your responses, it has given me much to think about. I
guess there is consenses that there is room for improvement in the current
pkg system. Attached are some of my initial ideas about what is required and
expected in any (and all future) package systems.
Since I am going away this weekend I have had limited time to work on this
document and as such it is in early stages of development. My objective is
to get a clear understanding and target of what is required for this new
package system.
I am looking at a hybrid approach to storing the package metadata, a
combination of SQLite and compressed text files. I am hoping to create a
situation where if either gets corrupted it can be created from the other.
Further more, any changes to the text files (even without recompressing them)
will be intergrated back into the database. This will allow administrators
to fiddle around with the text files without having to touch the database.
((
Another idea I have is the ability for the whole package data storage to be
recreated from the repository data if all stored data got "destroyed". This
will occur though a process of inspection of the file system. This could be
extended to allow all none package files to be combined into a "special"
package with the correct dependencies allowing a system to be restored
without a single error... Any thoughts?
))
I would also like to create package groupings, where by many packages share
the same package file. This will allow easy distribution of ports such as
the Xorg 7.2, reducing the 400 or so packages to only a few physical files
that can then be installed and managed individually.
Ultimately I would like this project to be compatible with the current pkg
system (allowing easy transition from one to another), proper integration
into the ports system and possibly into the pkgsrc system, but the future
will only be revealed in time.
All feedback is welcome, I do have some questions to ask:
1) What would random access of a package be required for and how often
will/does it occur?
2) I have chosen XML for storing the data. Is there any practical alternative
(Please keep in mind that multiple packages metadata could be stored in a
single file)
I apologies if the document is too dense any too cryptic, all ideas are
welcome.
Once again thank you all for your feedback and have a good weekend.
David
Thank you all for your responses, it has given me much to think about. I
guess there is consenses that there is room for improvement in the current
pkg system. Attached are some of my initial ideas about what is required and
expected in any (and all future) package systems.
Since I am going away this weekend I have had limited time to work on this
document and as such it is in early stages of development. My objective is
to get a clear understanding and target of what is required for this new
package system.
I am looking at a hybrid approach to storing the package metadata, a
combination of SQLite and compressed text files. I am hoping to create a
situation where if either gets corrupted it can be created from the other.
Further more, any changes to the text files (even without recompressing them)
will be intergrated back into the database. This will allow administrators
to fiddle around with the text files without having to touch the database.
((
Another idea I have is the ability for the whole package data storage to be
recreated from the repository data if all stored data got "destroyed". This
will occur though a process of inspection of the file system. This could be
extended to allow all none package files to be combined into a "special"
package with the correct dependencies allowing a system to be restored
without a single error... Any thoughts?
))
I would also like to create package groupings, where by many packages share
the same package file. This will allow easy distribution of ports such as
the Xorg 7.2, reducing the 400 or so packages to only a few physical files
that can then be installed and managed individually.
Ultimately I would like this project to be compatible with the current pkg
system (allowing easy transition from one to another), proper integration
into the ports system and possibly into the pkgsrc system, but the future
will only be revealed in time.
All feedback is welcome, I do have some questions to ask:
1) What would random access of a package be required for and how often
will/does it occur?
2) I have chosen XML for storing the data. Is there any practical alternative
(Please keep in mind that multiple packages metadata could be stored in a
single file)
I apologies if the document is too dense any too cryptic, all ideas are
welcome.
Once again thank you all for your feedback and have a good weekend.
David