A proposal for a package management system
Michael Rasmussen <[email protected]>
| Newsgroups | gmane.comp.security.ipcop.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi all,
It think IPCop could gain a lot by having a package management system.
I have therefore attached (added since the list does not accept
attachments) a proposal for such a package management system to this
mail (I hope it is not removed by the list server).
What do you think? Is this something which I should continue with?
Proposed package management system for IPCop
Motivation: Currently there exists no common way of installing updates
or add-ons. For updates this means either you install the lot or
nothing at all. For add-ons this means missing an overview of installed
add-ons as well as not being able to specify dependencies and each
add-on provider are required to make their own installer and
un-installer which basically mean the RPM-hell prior to yum. Why not
make a general, simple system which can eliminate this situation?
Requirements:
1) The package management system must not require any
configuration or binary which is not provided by the IPCop base system.
2) The package management system must be simple. No yum or apt for
IPCop so only the most fundamental will be supported.
3) A simple package structure.
4) A simple installer able to solve simple dependencies downloading
from one known repository.
5) Support a simple version system.
6) Be able to verify package signatures.
7) Be able to uninstall installed packages including packages installed
to solve dependencies if dependent packages are not required by another
package.
8) Give a list of installed packages.
9) Give a list of available packages from repository.
10) Give a list of available updates from repository.
11) Upgrade on or more packages according to list of available updates
from repository.
Suggested tools:
1) Use Perl as program language.
2) Use Perl::LWP for networking.
3) Use Sqlite (DBI and DBD-SQLite) for package database.
4) Use gnu-pg for package signatures.
5) Use gzip as a container for packages
Structure for a package:
Package
|___root
|___
|.....
|___Control
Download:
1) A package. Foo-0.1.tgz
2) A package signature. Foo-0.1.tgz.gpg
Structure for control:
Name:
Version:
Description:
Depends:
File list:
--
Hilsen/Regards
Michael Rasmussen
Get my public GnuPG keys:
michael <at> rasmussen <dot> cc
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xD3C9A00E
mir <at> datanom <dot> net
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE501F51C
mir <at> miras <dot> org
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE3E80917
--------------------------------------------------------------
------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
IPCop-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ipcop-devel
signature.asc
(application/pgp-signature, 198 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iEYEARECAAYFAk8ZE6oACgkQVErYVePoCRcHnACfXFqCTDyALXBp7xdWm289eQ1t sLEAnjFG0DAfhk1rzqNOGDPQJ7Lk8e0m =90NZ -----END PGP SIGNATURE-----