[aur-dev] [AUR2] How to go about official dependencies

Sebastian xilonmu at gmail.com
Sun Dec 30 02:52:58 EST 2007

I'm having a problem figuring out how to cleanly handle dependencies
that exist in the official repositories. I have implemented tracking
dependencies that are within AUR, but since we don't have access to the
main site database it's hard to manage the packages that depend on
official packages.

The way the current AUR handles this seems to be by simply linking to a
search for that package, but that requires some messy alterations the
current AUR2 database structure. It is one of the solutions, though
probably a last resort.

Another solution would be to have some sort of inter-process
communication (XML, JSON, whatever) so that AUR2 could get some
information about the official packages and store them in the database.
This of course brings about redundancy and again it's quite ugly.

The best solution would be to actually get access to the database and be
able to easily reference those packages. If we had this access we could
also work on improving and merging the code, since there is a lot of
redundancy at the moment. The databases and sites could still be
separate if need be, but it would be great to merge the code. I'm sure a
lot of users would prefer to search packages in AUR on the main site as
well, but I understand that it may look like AUR is in some way official
or supported. Regardless, I'd like your opinion on how to go about this.

Here's the schema for the package, category and repository relations, in
case you'd like more insight into the database structure. As you will see
it would be a little difficult to make a record with just the URL
pointing to a search on the main site.

              Table "aur_package"
    Column     |           Type           | Modifiers
 name          | character varying(30)    | not null
 version       | character varying(20)    | not null
 release       | smallint                 | not null
 description   | character varying(180)   | not null
 url           | character varying(200)   |
 repository_id | integer                  | not null
 category_id   | integer                  | not null
 deleted       | boolean                  | not null
 outdated      | boolean                  | not null
 added         | timestamp with time zone | not null
 updated       | timestamp with time zone | not null

              Table "aur_category"
 Column        |         Type             | Modifiers
 id            | integer                  | not null
 name          | character varying(20)    | not null

              Table "aur_repository"
 Column        |         Type             | Modifiers
 id            | integer                  | not null
 name          | character varying(20)    | not null

More information about the aur-dev mailing list