[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNUstep repository (was LinuxSTEP + Integration of apps)
From: |
Stefan Urbanek |
Subject: |
Re: GNUstep repository (was LinuxSTEP + Integration of apps) |
Date: |
Sun, 05 Jan 2003 18:31:35 +0100 |
On 2003-01-05 14:23:31 +0100 Dennis Leeuw <dleeuw@made-it.com> wrote:
<snip>
I agree! Code may be scattered across the Internet, aslong as there is a
single source that holds the links... On the other hand a mirror might
be handy for code that is suddenly orphaned or if the server gets pulled
of the net.
While speaking about GNUstep packages, i have few ideas in mind...
What about having something like distributed package lists? For example there
should be one http://packages.gnustep.org/Packages.plist
{
Packages =
(
/* List of packages, their URLs, versions and dependencies */
);
/* Links to other repositories with some assigned trust value */
Repositories = (
{
Name = "GNUstep Web Packages"
URL = "packages.gnustep.web";
Trust = High; /* Should be Low, Medium, High, Unknown */
}
);
}
This property list can be easily read by SomePackager.app using NSDictionary
dictionaryWithContentsOfURL:. Moreover this list can be generated by a server
script from some database of packages... there are many posibilities.
Packager.app can have list of those repositories, like apt's sources.list. The
Trust variable can be used for example for searching for unknown packages when
resolving dependencies, like 'satisfy dependencies only from trusted
repositories'.
Repositories can be distributed and you can get references to other
repositories very easil, because they are linked. Packages can be stored on
different host from the package list. It is just a list. Or list can specify
somthing like 'RootURL' for all packages URLs.
Each package or package control file or property list can have:
- Binary/arch URL (gnustep have to start using binary distributions, at least
for testing)
- Source URL
- dependencies
- list of possible installation domains (!)
- all other relevant keys from the AppNameInfo.plist
The last one - list of possible installation domains - will specify where the
package should be installed. It should be some variable like:
AllowedDomains = All /* For any domain */
AllowedDomains = (Local, User) /* For Local domain or User domain only */
AllowedDomains = (Developer) /* For developer domain only */
Possible values are System, Local, User, Developer and Other, where other has
to be explicitly specified, like '/' for root.
User will be allowed to install packages into his own user domain (AFAIK this
is not possible with deb, but i am not sure). All paths in the package should
be relative to the installation domain root directory.
In addition to the package description should be relevant entries from
application's Info.plist. I would not mind to include NSTypes entry, for
example. Imagine you want to open some file, but you do not have the
application. With this, it will be really easy to find application that can
open that file, or evet, this can be automated! - you try to open a file in
Workspace, and then you are given a possibility do download relevant
application. Or include list of app services... There are many open
posibilities. GNUstep has that great advanttage of application cooperatorn
which can be used here.
I have no time to implement this, but if there is anyone who is interested,
just write me. Or I should put something on the gnustep wiki pages.
What do you think about those distributed linked repositories?
Stefan
- GNUstep repository (was LinuxSTEP + Integration of apps), (continued)
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Tim Harrison, 2003/01/04
- Re: [LinuxSTEP-General] Re: GNUstep repository (was LinuxSTEP + Integration of apps), Mayuresh Kathe, 2003/01/04
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Mayuresh Kathe, 2003/01/04
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Tim Harrison, 2003/01/04
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Mayuresh Kathe, 2003/01/05
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Dennis Leeuw, 2003/01/05
- Re: GNUstep repository (was LinuxSTEP + Integration of apps),
Stefan Urbanek <=
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Tim Harrison, 2003/01/05
- Re: GNUstep repository (was LinuxSTEP + Integration of apps), Stefan Urbanek, 2003/01/05
- Package management (was Re: GNUstep repository), Tim Harrison, 2003/01/05
- Re: Package management (was Re: GNUstep repository), Stefan Urbanek, 2003/01/07
- Re: Package management (was Re: GNUstep repository), Tim Harrison, 2003/01/08