============== AUR Web Interface ============== Terms and Definitions: ================ AUR - Arch User Repository Repository made up of a collection of build scripts that are created and submitted by the Arch community. TU - Trusted User A user that can add binary packages to the [community] repository and administer AUR. [unsupported] The collection of package build files hosted via the AUR website. File Hierachy ========= Directory Layout: ------------------- ./html - DocumentRoot for AUR, where the PHP scripts live. ./html/css - CSS for AUR appearance ./html/css/navbar - CSS for Arch navigation bar appearance ./html/images - Any AUR images live here. ./lib - Supporting PHP include files. Access denied to Apache. ./locale ./template - Where most of the html markup resides and minimal amount of PHP scripting. ./template/stats ./html Files: ------------- account.php - PHP script to handle registering for a new account. It prompts the visitor for account information: desired username, E-mail, password, real name, IRC nick, and default language. The info is recorded in the Users table. A logged-in user can change any of their own account information. If a TU or Developer is logged into the system, they can search for and edit accounts. A TU can change an account to a TU or User account. A Developer can also change an account to the Developer type. TUs and Developers are able to suspend accounts. If an account is suspended, all packages are orphaned (the MaintainerUID field in the Packages table is set to NULL). addvote.php - A form to submit proposals relating to the AUR. Only accessible to TUs and Developers. Can be used to vote on a potential new TU, or any other proposal that needs a vote. Length of the vote can be specified. index.php - Main page for the AUR. Provides links to all other pages in the AUR. Gives a brief synopsis of what the AUR is and where to go for more information. logout.php - Logs out a logged-in user. Clears the session id from the Sessions table and unsets the cookie. packages.php - Page used to search the package database. Supports searching by name, category, maintainer, popularity, etc. Also provides the ability to go to a package page which has specific information for that package. A specific package page includes the name, description, votes, etc. As well as the ability to perform actions on the packages, such as flagging or leaving a comment on the package. passreset.php - A page for a user to enter their e-mail and receive a reset e-mail to replace the forgotten password. pkgsubmit.php - Page for users to upload a new package. Only allows upload of a tarball that has been compressed with gzip. Tarball must contain the PKGBUILD, scriptlets, and any other files necessary to build the package from source. The user can select a category for the package. The page makes appropriate entries into the database for tracking the newly added source package and associated information. rpc.php - A frontend for tools to obtain raw information from the AUR. Features the ability to search for a package, return information on a package, return information on multiple packages, and search for a specific package maintainer. Functionality through HTTP GET. rss.php - Generates RDF Site Summary (RSS) feed with the latest packages updated in the AUR. Lists most recent 20 packages. Includes package name, link to package page, package description, time of update, source listing, maintainer name. tu.php - Page only available to TUs and Developers. Shows ongoing votes for proposals and past votes for proposals. Current votes can be voted on with a "Yes" vote, "No" vote, or an "Abstain" vote. Developers and TUs can only vote once. Cannot vote on a proposal about themselves. voters.php - Page only available to TUs and Developers. Shows list of users that voted for a specific package. Each username links to the user's account information page.