diff options
-rw-r--r-- | acinclude.m4 | 7 | ||||
-rwxr-xr-x | contrib/bacman.in | 16 | ||||
-rw-r--r-- | lib/libalpm/alpm.h | 487 | ||||
-rw-r--r-- | lib/libalpm/be_package.c | 10 | ||||
-rw-r--r-- | lib/libalpm/db.c | 65 | ||||
-rw-r--r-- | lib/libalpm/deps.c | 2 | ||||
-rw-r--r-- | lib/libalpm/diskspace.c | 4 | ||||
-rw-r--r-- | lib/libalpm/dload.c | 6 | ||||
-rw-r--r-- | lib/libalpm/package.c | 46 | ||||
-rw-r--r-- | lib/libalpm/po/LINGUAS | 1 | ||||
-rw-r--r-- | lib/libalpm/po/ko.po | 548 | ||||
-rw-r--r-- | lib/libalpm/remove.c | 8 | ||||
-rw-r--r-- | lib/libalpm/trans.c | 32 | ||||
-rw-r--r-- | po/LINGUAS | 1 | ||||
-rw-r--r-- | po/ko.po | 1775 | ||||
-rw-r--r-- | scripts/makepkg.sh.in | 2 | ||||
-rw-r--r-- | src/pacman/query.c | 48 |
17 files changed, 531 insertions, 2527 deletions
diff --git a/acinclude.m4 b/acinclude.m4 index 7309d731..df4f83a4 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -123,6 +123,13 @@ extern int getmntinfo (struct statfs **, int); ) AC_DEFINE_UNQUOTED(FSSTATSTYPE, [$fs_stats_cv_type], [Defined as the filesystem stats type ('statvfs' or 'statfs')]) + if test $ac_cv_func_getmntinfo = yes; then + if test "$fs_stats_cv_type" = "struct statvfs"; then + AC_DEFINE([HAVE_GETMNTINFO_STATVFS], 1, [Define if getmntinfo() uses statvfs.]) + else + AC_DEFINE([HAVE_GETMNTINFO_STATFS], 1, [Define if getmntinfo() uses statfs.]) + fi + fi ]) dnl Checks for PATH_MAX and defines it if not present diff --git a/contrib/bacman.in b/contrib/bacman.in index bd545180..ebcc386d 100755 --- a/contrib/bacman.in +++ b/contrib/bacman.in @@ -174,7 +174,7 @@ fi echo "# $(LC_ALL=C date)" >> .PKGINFO echo "#" >> .PKGINFO -cat "$pkg_dir"/{desc,files,depends} | +cat "$pkg_dir"/{desc,files} | while read i; do if [[ -z "$i" ]]; then continue; @@ -220,14 +220,6 @@ while read i; do %REPLACES%) echo "replaces = $i" >> .PKGINFO ;; - - # files - %BACKUP%) - # strip the md5sum after the tab - echo "backup = ${i%%$'\t'*}" >> .PKGINFO - ;; - - # depends %DEPENDS%) echo "depend = $i" >> .PKGINFO ;; @@ -240,6 +232,12 @@ while read i; do %PROVIDES%) echo "provides = $i" >> .PKGINFO ;; + + # files + %BACKUP%) + # strip the md5sum after the tab + echo "backup = ${i%%$'\t'*}" >> .PKGINFO + ;; esac done diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h index 82eb11e8..7259957d 100644 --- a/lib/libalpm/alpm.h +++ b/lib/libalpm/alpm.h @@ -39,6 +39,11 @@ extern "C" { * Arch Linux Package Management library */ +/** @addtogroup alpm_api Public API + * The libalpm Public API + * @{ + */ + /* * Structures */ @@ -94,42 +99,71 @@ typedef void (*alpm_cb_totaldl)(off_t total); typedef int (*alpm_cb_fetch)(const char *url, const char *localpath, int force); -/* - * Options +/** Fetch a remote pkg. + * @param url URL of the package to download + * @return the downloaded filepath on success, NULL on error + */ +char *alpm_fetch_pkgurl(const char *url); + +/** @addtogroup alpm_api_options Options + * Libalpm option getters and setters + * @{ */ +/** @name The logging callback. */ +/* @{ */ alpm_cb_log alpm_option_get_logcb(void); int alpm_option_set_logcb(alpm_cb_log cb); +/* @} */ +/** Get/set the download progress callback. */ alpm_cb_download alpm_option_get_dlcb(void); int alpm_option_set_dlcb(alpm_cb_download cb); +/** Get/set the downloader callback. */ alpm_cb_fetch alpm_option_get_fetchcb(void); int alpm_option_set_fetchcb(alpm_cb_fetch cb); +/** Get/set the callback used when download size is known. */ alpm_cb_totaldl alpm_option_get_totaldlcb(void); int alpm_option_set_totaldlcb(alpm_cb_totaldl cb); +/** Get/set the root of the destination filesystem. */ const char *alpm_option_get_root(void); int alpm_option_set_root(const char *root); +/** Get/set the path to the database directory. */ const char *alpm_option_get_dbpath(void); int alpm_option_set_dbpath(const char *dbpath); +/** Get/set the list of package cache directories. */ alpm_list_t *alpm_option_get_cachedirs(void); -int alpm_option_add_cachedir(const char *cachedir); int alpm_option_set_cachedirs(alpm_list_t *cachedirs); + +/** Add a single directory to the package cache paths. */ +int alpm_option_add_cachedir(const char *cachedir); + +/** Remove a single directory from the package cache paths. */ int alpm_option_remove_cachedir(const char *cachedir); +/** Get/set the logfile name. */ const char *alpm_option_get_logfile(void); int alpm_option_set_logfile(const char *logfile); +/** Get the name of the database lock file. + * + * This properly is read-only, and determined from + * the database path. + * + * @sa alpm_option_set_dbpath(const char*) + */ const char *alpm_option_get_lockfile(void); -/* no set_lockfile, path is determined from dbpath */ +/** Get/set the signature directory. */ const char *alpm_option_get_signaturedir(void); int alpm_option_set_signaturedir(const char *signaturedir); +/** Get/set whether to use syslog (0 is FALSE, TRUE otherwise). */ int alpm_option_get_usesyslog(void); int alpm_option_set_usesyslog(int usesyslog); @@ -153,6 +187,7 @@ int alpm_option_add_ignoregrp(const char *grp); int alpm_option_set_ignoregrps(alpm_list_t *ignoregrps); int alpm_option_remove_ignoregrp(const char *grp); +/** Get/set the targeted architecture. */ const char *alpm_option_get_arch(void); int alpm_option_set_arch(const char *arch); @@ -162,89 +197,365 @@ int alpm_option_set_usedelta(int usedelta); int alpm_option_get_checkspace(void); int alpm_option_set_checkspace(int checkspace); -pmdb_t *alpm_option_get_localdb(void); -alpm_list_t *alpm_option_get_syncdbs(void); +/** @} */ -/* - * Install reasons -- ie, why the package was installed +/** Install reasons + * Why the package was installed. */ - typedef enum _pmpkgreason_t { - PM_PKG_REASON_EXPLICIT = 0, /* explicitly requested by the user */ - PM_PKG_REASON_DEPEND = 1 /* installed as a dependency for another package */ + /** Explicitly requested by the user. */ + PM_PKG_REASON_EXPLICIT = 0, + /** Installed as a dependency for another package. */ + PM_PKG_REASON_DEPEND = 1 } pmpkgreason_t; -/* - * Databases +/** @addtogroup alpm_api_databases Database Functions + * Functions to query and manipulate the database of libalpm. + * @{ + */ + +/** Get the database of locally installed packages. + * The returned pointer points to an internal structure + * of libalpm which should only be manipulated through + * libalpm functions. + * @return a reference to the local database + */ +pmdb_t *alpm_option_get_localdb(void); + +/** Get the list of sync databases. + * Returns a list of pmdb_t structures, one for each registered + * sync database. + * @return a reference to an internal list of pmdb_t structures */ +alpm_list_t *alpm_option_get_syncdbs(void); +/** Register a sync database of packages. + * @param treename the name of the sync repository + * @return a pmdb_t* on success (the value), NULL on error + */ pmdb_t *alpm_db_register_sync(const char *treename); + +/** Unregister a package database. + * @param db pointer to the package database to unregister + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_db_unregister(pmdb_t *db); + +/** Unregister all package databases. + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_db_unregister_all(void); +/** Get the name of a package database. + * @param db pointer to the package database + * @return the name of the package database, NULL on error + */ const char *alpm_db_get_name(const pmdb_t *db); + +/** Get a download URL for the package database. + * @param db pointer to the package database + * @return a fully-specified download URL, NULL on error + */ const char *alpm_db_get_url(const pmdb_t *db); +/** Set the serverlist of a database. + * @param db database pointer + * @param url url of the server + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_db_setserver(pmdb_t *db, const char *url); int alpm_db_update(int level, pmdb_t *db); +/** Get a package entry from a package database. + * @param db pointer to the package database to get the package from + * @param name of the package + * @return the package entry on success, NULL on error + */ pmpkg_t *alpm_db_get_pkg(pmdb_t *db, const char *name); + +/** Get the package cache of a package database. + * @param db pointer to the package database to get the package from + * @return the list of packages on success, NULL on error + */ alpm_list_t *alpm_db_get_pkgcache(pmdb_t *db); +/** Get a group entry from a package database. + * @param db pointer to the package database to get the group from + * @param name of the group + * @return the groups entry on success, NULL on error + */ pmgrp_t *alpm_db_readgrp(pmdb_t *db, const char *name); + +/** Get the group cache of a package database. + * @param db pointer to the package database to get the group from + * @return the list of groups on success, NULL on error + */ alpm_list_t *alpm_db_get_grpcache(pmdb_t *db); + +/** Searches a database. + * @param db pointer to the package database to search in + * @param needles the list of strings to search for + * @return the list of packages on success, NULL on error + */ alpm_list_t *alpm_db_search(pmdb_t *db, const alpm_list_t* needles); -int alpm_db_set_pkgreason(pmdb_t *db, const char *name, pmpkgreason_t reason); -/* - * Packages +/** Set install reason for a package in db. + * @param db pointer to the package database + * @param name the name of the package + * @param reason the new install reason + * @return 0 on success, -1 on error (pm_errno is set accordingly) */ +int alpm_db_set_pkgreason(pmdb_t *db, const char *name, pmpkgreason_t reason); + +/** @} */ -/* Info parameters */ +/** @addtogroup alpm_api_packages Package Functions + * Functions to manipulate libalpm packages + * @{ + */ +/** Create a package from a file. + * If full is false, the archive is read only until all necessary + * metadata is found. If it is true, the entire archive is read, which + * serves as a verfication of integrity and the filelist can be created. + * @param filename location of the package tarball + * @param full whether to stop the load after metadata is read or continue + * through the full archive + * @param pkg address of the package pointer + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_pkg_load(const char *filename, int full, pmpkg_t **pkg); + +/** Free a package. + * @param pkg package pointer to free + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_pkg_free(pmpkg_t *pkg); + +/** Check the integrity (with md5) of a package from the sync cache. + * @param pkg package pointer + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_pkg_checkmd5sum(pmpkg_t *pkg); -char *alpm_fetch_pkgurl(const char *url); + +/** Compare two version strings and determine which one is 'newer'. */ int alpm_pkg_vercmp(const char *a, const char *b); + +/** Computes the list of packages requiring a given package. + * The return value of this function is a newly allocated + * list of package names (char*), it should be freed by the caller. + * @param pkg a package + * @return the list of packages requiring pkg + */ alpm_list_t *alpm_pkg_compute_requiredby(pmpkg_t *pkg); +/** @name Package Property Accessors + * Any pointer returned by these functions points to internal structures + * allocated by libalpm. They should not be freed nor modified in any + * way. + * @{ + */ + +/** Gets the name of the file from which the package was loaded. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_filename(pmpkg_t *pkg); + +/** Returns the package name. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_name(pmpkg_t *pkg); + +/** Returns the package version as a string. + * This includes all available epoch, version, and pkgrel components. Use + * alpm_pkg_vercmp() to compare version strings if necessary. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_version(pmpkg_t *pkg); + +/** Returns the package description. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_desc(pmpkg_t *pkg); + +/** Returns the package URL. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_url(pmpkg_t *pkg); + +/** Returns the build timestamp of the package. + * @param pkg a pointer to package + * @return the timestamp of the build time + */ time_t alpm_pkg_get_builddate(pmpkg_t *pkg); + +/** Returns the install timestamp of the package. + * @param pkg a pointer to package + * @return the timestamp of the install time + */ time_t alpm_pkg_get_installdate(pmpkg_t *pkg); + +/** Returns the packager's name. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_packager(pmpkg_t *pkg); + +/** Returns the package's MD5 checksum as a string. + * The returned string is a sequence of lowercase hexadecimal digits. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_md5sum(pmpkg_t *pkg); + const pmpgpsig_t *alpm_pkg_get_pgpsig(pmpkg_t *pkg); + +/** Returns the architecture for which the package was built. + * @param pkg a pointer to package + * @return a reference to an internal string + */ const char *alpm_pkg_get_arch(pmpkg_t *pkg); + +/** Returns the size of the package. + * @param pkg a pointer to package + * @return the size of the package in bytes. + */ off_t alpm_pkg_get_size(pmpkg_t *pkg); + +/** Returns the installed size of the package. + * @param pkg a pointer to package + * @return the total size of files installed by the package. + */ off_t alpm_pkg_get_isize(pmpkg_t *pkg); + +/** Returns the package installation reason. + * @param pkg a pointer to package + * @return an enum member giving the install reason. + */ pmpkgreason_t alpm_pkg_get_reason(pmpkg_t *pkg); + +/** Returns the list of package licenses. + * @param pkg a pointer to package + * @return a pointer to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_licenses(pmpkg_t *pkg); + +/** Returns the list of package groups. + * @param pkg a pointer to package + * @return a pointer to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_groups(pmpkg_t *pkg); + +/** Returns the list of package dependencies as pmdepend_t. + * @param pkg a pointer to package + * @return a reference to an internal list of pmdepend_t structures. + */ alpm_list_t *alpm_pkg_get_depends(pmpkg_t *pkg); + +/** Returns the list of package optional dependencies. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_optdepends(pmpkg_t *pkg); + +/** Returns the list of package names conflicting with pkg. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_conflicts(pmpkg_t *pkg); + +/** Returns the list of package names provided by pkg. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_provides(pmpkg_t *pkg); + +/** Returns the list of available deltas for pkg. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_deltas(pmpkg_t *pkg); + +/** Returns the list of packages to be replaced by pkg. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_replaces(pmpkg_t *pkg); + +/** Returns the list of files installed by pkg. + * The filenames are relative to the install root, + * and do not include leading slashes. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_files(pmpkg_t *pkg); + +/** Returns the list of files backed up when installing pkg. + * The elements of the returned list have the form + * "<filename>\t<md5sum>", where the given md5sum is that of + * the file as provided by the package. + * @param pkg a pointer to package + * @return a reference to an internal list of strings. + */ alpm_list_t *alpm_pkg_get_backup(pmpkg_t *pkg); + +/** Returns the database containing pkg + * Returns a pointer to the pmdb_t structure the package is + * originating from, or NULL is the package was loaded from a file. + * @param pkg a pointer to package + * @return a pointer to the DB containing pkg, or NULL. + */ pmdb_t *alpm_pkg_get_db(pmpkg_t *pkg); + +/* End of pmpkg_t accessors */ +/* @} */ + +/** Open a package changelog for reading. + * Similar to fopen in functionality, except that the returned 'file + * stream' could really be from an archive as well as from the database. + * @param pkg the package to read the changelog of (either file or db) + * @return a 'file stream' to the package changelog + */ void *alpm_pkg_changelog_open(pmpkg_t *pkg); + +/** Read data from an open changelog 'file stream'. + * Similar to fread in functionality, this function takes a buffer and + * amount of data to read. If an error occurs pm_errno will be set. + * @param ptr a buffer to fill with raw changelog data + * @param size the size of the buffer + * @param pkg the package that the changelog is being read from + * @param fp a 'file stream' to the package changelog + * @return the number of characters read, or 0 if there is no more data or an + * error occurred. + */ size_t alpm_pkg_changelog_read(void *ptr, size_t size, const pmpkg_t *pkg, const void *fp); + /*int alpm_pkg_changelog_feof(const pmpkg_t *pkg, void *fp);*/ + int alpm_pkg_changelog_close(const pmpkg_t *pkg, void *fp); + int alpm_pkg_has_scriptlet(pmpkg_t *pkg); +/** Returns the size of download. + * Returns the size of the files that will be downloaded to install a + * package. + * @param newpkg the new package to upgrade to + * @return the size of the download + */ off_t alpm_pkg_download_size(pmpkg_t *newpkg); + alpm_list_t *alpm_pkg_unused_deltas(pmpkg_t *pkg); +/* End of alpm_pkg */ +/** @} */ + /* * Signatures */ @@ -284,39 +595,50 @@ alpm_list_t *alpm_find_grp_pkgs(alpm_list_t *dbs, const char *name); pmpkg_t *alpm_sync_newversion(pmpkg_t *pkg, alpm_list_t *dbs_sync); -/* - * Transactions +/** @addtogroup alpm_api_trans Transaction Functions + * Functions to manipulate libalpm transactions + * @{ */ - -/* Flags */ +/** Transaction flags */ typedef enum _pmtransflag_t { + /** Ignore dependency checks. */ PM_TRANS_FLAG_NODEPS = 1, + /** Ignore file conflicts and overwrite files. */ PM_TRANS_FLAG_FORCE = (1 << 1), + /** Delete files even if they are tagged as backup. */ PM_TRANS_FLAG_NOSAVE = (1 << 2), + /** Ignore version numbers when checking dependencies. */ PM_TRANS_FLAG_NODEPVERSION = (1 << 3), + /** Remove also any packages depending on a package being removed. */ PM_TRANS_FLAG_CASCADE = (1 << 4), + /** Remove packages and their unneeded deps (not explicitly installed). */ PM_TRANS_FLAG_RECURSE = (1 << 5), + /** Modify database but do not commit changes to the filesystem. */ PM_TRANS_FLAG_DBONLY = (1 << 6), /* (1 << 7) flag can go here */ + /** Use PM_PKG_REASON_DEPEND when installing packages. */ PM_TRANS_FLAG_ALLDEPS = (1 << 8), + /** Only download packages and do not actually install. */ PM_TRANS_FLAG_DOWNLOADONLY = (1 << 9), + /** Do not execute install scriptlets after installing. */ PM_TRANS_FLAG_NOSCRIPTLET = (1 << 10), + /** Ignore dependency conflicts. */ PM_TRANS_FLAG_NOCONFLICTS = (1 << 11), /* (1 << 12) flag can go here */ + /** Do not install a package if it is already installed and up to date. */ PM_TRANS_FLAG_NEEDED = (1 << 13), + /** Use PM_PKG_REASON_EXPLICIT when installing packages. */ PM_TRANS_FLAG_ALLEXPLICIT = (1 << 14), + /** Do not remove a package if it is needed by another one. */ PM_TRANS_FLAG_UNNEEDED = (1 << 15), + /** Remove also explicitly installed unneeded deps (use with PM_TRANS_FLAG_RECURSE). */ PM_TRANS_FLAG_RECURSEALL = (1 << 16), + /** Do not lock the database during the operation. */ PM_TRANS_FLAG_NOLOCK = (1 << 17) } pmtransflag_t; -/** - * @addtogroup alpm_trans - * @{ - */ -/** - * @brief Transaction events. +/** Transaction events. * NULL parameters are passed to in all events unless specified otherwise. */ typedef enum _pmtransevt_t { @@ -395,9 +717,8 @@ typedef enum _pmtransevt_t { /** Disk space usage was computed for a package */ PM_TRANS_EVT_DISKSPACE_DONE, } pmtransevt_t; -/*@}*/ -/* Transaction Conversations (ie, questions) */ +/** Transaction Conversations (ie, questions) */ typedef enum _pmtransconv_t { PM_TRANS_CONV_INSTALL_IGNOREPKG = 1, PM_TRANS_CONV_REPLACE_PKG = (1 << 1), @@ -408,7 +729,7 @@ typedef enum _pmtransconv_t { PM_TRANS_CONV_SELECT_PROVIDER = (1 << 6), } pmtransconv_t; -/* Transaction Progress */ +/** Transaction Progress */ typedef enum _pmtransprog_t { PM_TRANS_PROGRESS_ADD_START, PM_TRANS_PROGRESS_UPGRADE_START, @@ -418,41 +739,90 @@ typedef enum _pmtransprog_t { PM_TRANS_PROGRESS_INTEGRITY_START, } pmtransprog_t; -/* Transaction Event callback */ +/** Transaction Event callback */ typedef void (*alpm_trans_cb_event)(pmtransevt_t, void *, void *); -/* Transaction Conversation callback */ +/** Transaction Conversation callback */ typedef void (*alpm_trans_cb_conv)(pmtransconv_t, void *, void *, void *, int *); -/* Transaction Progress callback */ +/** Transaction Progress callback */ typedef void (*alpm_trans_cb_progress)(pmtransprog_t, const char *, int, size_t, size_t); int alpm_trans_get_flags(void); + +/** Returns a list of packages added by the transaction. + * @return a list of pmpkg_t structures + */ alpm_list_t * alpm_trans_get_add(void); + +/** Returns the list of packages removed by the transaction. + * @return a list of pmpkg_t structures + */ alpm_list_t * alpm_trans_get_remove(void); + +/** Initialize the transaction. + * @param flags flags of the transaction (like nodeps, etc) + * @param event event callback function pointer + * @param conv question callback function pointer + * @param progress progress callback function pointer + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_trans_init(pmtransflag_t flags, alpm_trans_cb_event cb_event, alpm_trans_cb_conv conv, alpm_trans_cb_progress cb_progress); + +/** Prepare a transaction. + * @param data the address of an alpm_list where a list + * of pmdepmissing_t objects is dumped (conflicting packages) + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_trans_prepare(alpm_list_t **data); + +/** Commit a transaction. + * @param data the address of an alpm_list where detailed description + * of an error can be dumped (ie. list of conflicting files) + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_trans_commit(alpm_list_t **data); + +/** Interrupt a transaction. + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_trans_interrupt(void); + +/** Release a transaction. + * @return 0 on success, -1 on error (pm_errno is set accordingly) + */ int alpm_trans_release(void); +/** @} */ +/** @name Common Transactions */ +/** @{ */ int alpm_sync_sysupgrade(int enable_downgrade); int alpm_add_pkg(pmpkg_t *pkg); int alpm_remove_pkg(pmpkg_t *pkg); +/** @} */ -/* - * Dependencies and conflicts +/** @addtogroup alpm_api_depends Dependency Functions + * Functions dealing with libalpm representation of dependency + * information. + * @{ */ +/** Types of version constraints in dependency specs. */ typedef enum _pmdepmod_t { + /** No version constraint */ PM_DEP_MOD_ANY = 1, + /** Test version equality (package=x.y.z) */ PM_DEP_MOD_EQ, + /** Test for at least a version (package>=x.y.z) */ PM_DEP_MOD_GE, + /** Test for at most a version (package<=x.y.z) */ PM_DEP_MOD_LE, + /** Test for greater than some version (package>x.y.z) */ PM_DEP_MOD_GT, + /** Test for less than some version (package<x.y.z) */ PM_DEP_MOD_LT } pmdepmod_t; @@ -471,13 +841,38 @@ const char *alpm_conflict_get_package1(pmconflict_t *conflict); const char *alpm_conflict_get_package2(pmconflict_t *conflict); const char *alpm_conflict_get_reason(pmconflict_t *conflict); +/** Returns the type of version constraint. + * @param dep a dependency info structure + * @return the type of version constraint (PM_DEP_MOD_ANY if no version + * is specified). + */ pmdepmod_t alpm_dep_get_mod(const pmdepend_t *dep); + +/** Returns the package name of a dependency constraint. + * @param dep a dependency info structure + * @return a pointer to an internal string. + */ const char *alpm_dep_get_name(const pmdepend_t *dep); + +/** Returns the version specified by a dependency constraint. + * The version information is returned as a string in the same format + * as given by alpm_pkg_get_version(). + * @param dep a dependency info structure + * @return a pointer to an internal string. + */ const char *alpm_dep_get_version(const pmdepend_t *dep); + +/** Returns a newly allocated string representing the dependency information. + * @param dep a dependency info structure + * @return a formatted string, e.g. "glibc>=2.12" + */ char *alpm_dep_compute_string(const pmdepend_t *dep); -/* - * File conflicts +/** @} */ + +/** @addtogroup alpm_api_fileconflicts File Conflicts Functions + * Functions to manipulate file conflict information. + * @{ */ typedef enum _pmfileconflicttype_t { @@ -490,6 +885,8 @@ pmfileconflicttype_t alpm_fileconflict_get_type(pmfileconflict_t *conflict); const char *alpm_fileconflict_get_file(pmfileconflict_t *conflict); const char *alpm_fileconflict_get_ctarget(pmfileconflict_t *conflict); +/** @} */ + /* * Helpers */ @@ -497,8 +894,8 @@ const char *alpm_fileconflict_get_ctarget(pmfileconflict_t *conflict); /* checksums */ char *alpm_compute_md5sum(const char *name); -/* - * Errors +/** @addtogroup alpm_api_errors Error Codes + * @{ */ enum _pmerrno_t { PM_ERR_MEMORY = 1, @@ -564,11 +961,21 @@ enum _pmerrno_t { PM_ERR_GPGME }; +/** The number of the last error that occurred. */ extern enum _pmerrno_t pm_errno; +/** Returns the string corresponding to an error number. */ const char *alpm_strerror(int err); + +/** Returns the string corresponding to pm_errno. */ const char *alpm_strerrorlast(void); +/* End of alpm_api_errors */ +/** @} */ + +/* End of alpm_api */ +/** @} */ + #ifdef __cplusplus } #endif diff --git a/lib/libalpm/be_package.c b/lib/libalpm/be_package.c index c54e288e..e29850ba 100644 --- a/lib/libalpm/be_package.c +++ b/lib/libalpm/be_package.c @@ -380,16 +380,6 @@ error: return NULL; } -/** Create a package from a file. - * If full is false, the archive is read only until all necessary - * metadata is found. If it is true, the entire archive is read, which - * serves as a verfication of integrity and the filelist can be created. - * @param filename location of the package tarball - * @param full whether to stop the load after metadata is read or continue - * through the full archive - * @param pkg address of the package pointer - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ int SYMEXPORT alpm_pkg_load(const char *filename, int full, pmpkg_t **pkg) { ALPM_LOG_FUNC; diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index 51f9cf67..18ad2d79 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -47,10 +47,7 @@ * @{ */ -/** Register a sync database of packages. - * @param treename the name of the sync repository - * @return a pmdb_t* on success (the value), NULL on error - */ +/** Register a sync database of packages. */ pmdb_t SYMEXPORT *alpm_db_register_sync(const char *treename) { ALPM_LOG_FUNC; @@ -75,9 +72,7 @@ void _alpm_db_unregister(pmdb_t *db) _alpm_db_free(db); } -/** Unregister all package databases - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Unregister all package databases. */ int SYMEXPORT alpm_db_unregister_all(void) { alpm_list_t *i; @@ -100,10 +95,7 @@ int SYMEXPORT alpm_db_unregister_all(void) return 0; } -/** Unregister a package database - * @param db pointer to the package database to unregister - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Unregister a package database. */ int SYMEXPORT alpm_db_unregister(pmdb_t *db) { int found = 0; @@ -140,11 +132,7 @@ int SYMEXPORT alpm_db_unregister(pmdb_t *db) return 0; } -/** Set the serverlist of a database. - * @param db database pointer - * @param url url of the server - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Set the serverlist of a database. */ int SYMEXPORT alpm_db_setserver(pmdb_t *db, const char *url) { char *newurl; @@ -193,10 +181,7 @@ int SYMEXPORT alpm_db_set_pgp_verify(pmdb_t *db, pgp_verify_t verify) return(0); } -/** Get the name of a package database - * @param db pointer to the package database - * @return the name of the package database, NULL on error - */ +/** Get the name of a package database. */ const char SYMEXPORT *alpm_db_get_name(const pmdb_t *db) { ALPM_LOG_FUNC; @@ -208,10 +193,7 @@ const char SYMEXPORT *alpm_db_get_name(const pmdb_t *db) return db->treename; } -/** Get a download URL for the package database - * @param db pointer to the package database - * @return a fully-specified download URL, NULL on error - */ +/** Get a download URL for the package database. */ const char SYMEXPORT *alpm_db_get_url(const pmdb_t *db) { char *url; @@ -229,11 +211,7 @@ const char SYMEXPORT *alpm_db_get_url(const pmdb_t *db) } -/** Get a package entry from a package database - * @param db pointer to the package database to get the package from - * @param name of the package - * @return the package entry on success, NULL on error - */ +/** Get a package entry from a package database. */ pmpkg_t SYMEXPORT *alpm_db_get_pkg(pmdb_t *db, const char *name) { ALPM_LOG_FUNC; @@ -246,10 +224,7 @@ pmpkg_t SYMEXPORT *alpm_db_get_pkg(pmdb_t *db, const char *name) return _alpm_db_get_pkgfromcache(db, name); } -/** Get the package cache of a package database - * @param db pointer to the package database to get the package from - * @return the list of packages on success, NULL on error - */ +/** Get the package cache of a package database. */ alpm_list_t SYMEXPORT *alpm_db_get_pkgcache(pmdb_t *db) { ALPM_LOG_FUNC; @@ -261,11 +236,7 @@ alpm_list_t SYMEXPORT *alpm_db_get_pkgcache(pmdb_t *db) return _alpm_db_get_pkgcache(db); } -/** Get a group entry from a package database - * @param db pointer to the package database to get the group from - * @param name of the group - * @return the groups entry on success, NULL on error - */ +/** Get a group entry from a package database. */ pmgrp_t SYMEXPORT *alpm_db_readgrp(pmdb_t *db, const char *name) { ALPM_LOG_FUNC; @@ -278,10 +249,7 @@ pmgrp_t SYMEXPORT *alpm_db_readgrp(pmdb_t *db, const char *name) return _alpm_db_get_grpfromcache(db, name); } -/** Get the group cache of a package database - * @param db pointer to the package database to get the group from - * @return the list of groups on success, NULL on error - */ +/** Get the group cache of a package database. */ alpm_list_t SYMEXPORT *alpm_db_get_grpcache(pmdb_t *db) { ALPM_LOG_FUNC; @@ -293,11 +261,7 @@ alpm_list_t SYMEXPORT *alpm_db_get_grpcache(pmdb_t *db) return _alpm_db_get_grpcache(db); } -/** Searches a database - * @param db pointer to the package database to search in - * @param needles the list of strings to search for - * @return the list of packages on success, NULL on error - */ +/** Searches a database. */ alpm_list_t SYMEXPORT *alpm_db_search(pmdb_t *db, const alpm_list_t* needles) { ALPM_LOG_FUNC; @@ -309,12 +273,7 @@ alpm_list_t SYMEXPORT *alpm_db_search(pmdb_t *db, const alpm_list_t* needles) return _alpm_db_search(db, needles); } -/** Set install reason for a package in db - * @param db pointer to the package database - * @param name the name of the package - * @param reason the new install reason - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Set install reason for a package in db. */ int SYMEXPORT alpm_db_set_pkgreason(pmdb_t *db, const char *name, pmpkgreason_t reason) { ALPM_LOG_FUNC; diff --git a/lib/libalpm/deps.c b/lib/libalpm/deps.c index ee95c897..dda5ed79 100644 --- a/lib/libalpm/deps.c +++ b/lib/libalpm/deps.c @@ -261,7 +261,7 @@ pmpkg_t SYMEXPORT *alpm_find_satisfier(alpm_list_t *pkgs, const char *depstring) * @param reversedeps handles the backward dependencies * @param remove an alpm_list_t* of packages to be removed * @param upgrade an alpm_list_t* of packages to be upgraded (remove-then-upgrade) - * @return an alpm_list_t* of pmpkg_t* of pmdepmissing_t pointers. + * @return an alpm_list_t* of pmdepmissing_t pointers. */ alpm_list_t SYMEXPORT *alpm_checkdeps(alpm_list_t *pkglist, int reversedeps, alpm_list_t *remove, alpm_list_t *upgrade) diff --git a/lib/libalpm/diskspace.c b/lib/libalpm/diskspace.c index 983a3ac2..a34a63cd 100644 --- a/lib/libalpm/diskspace.c +++ b/lib/libalpm/diskspace.c @@ -112,9 +112,9 @@ static alpm_list_t *mount_point_list(void) mp->mount_dir = strdup(fsp->f_mntonname); mp->mount_dir_len = strlen(mp->mount_dir); memcpy(&(mp->fsp), fsp, sizeof(FSSTATSTYPE)); -#if defined HAVE_STRUCT_STATVFS_F_FLAG +#if defined(HAVE_GETMNTINFO_STATVFS) && defined(HAVE_STRUCT_STATVFS_F_FLAG) mp->read_only = fsp->f_flag & ST_RDONLY; -#elif defined HAVE_STRUCT_STATFS_F_FLAGS +#elif defined(HAVE_GETMNTINFO_STATFS) && defined(HAVE_STRUCT_STATFS_F_FLAGS) mp->read_only = fsp->f_flags & MNT_RDONLY; #endif diff --git a/lib/libalpm/dload.c b/lib/libalpm/dload.c index 4ebc868b..b96ca162 100644 --- a/lib/libalpm/dload.c +++ b/lib/libalpm/dload.c @@ -379,11 +379,7 @@ int _alpm_download_files(alpm_list_t *files, return ret; } -/** Fetch a remote pkg. - * @param url URL of the package to download - * @return the downloaded filepath on success, NULL on error - * @addtogroup alpm_misc - */ +/** Fetch a remote pkg. */ char SYMEXPORT *alpm_fetch_pkgurl(const char *url) { char *filename, *filepath; diff --git a/lib/libalpm/package.c b/lib/libalpm/package.c index 3a4f23fd..9e1dbd52 100644 --- a/lib/libalpm/package.c +++ b/lib/libalpm/package.c @@ -47,10 +47,7 @@ * @{ */ -/** Free a package. - * @param pkg package pointer to free - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Free a package. */ int SYMEXPORT alpm_pkg_free(pmpkg_t *pkg) { ALPM_LOG_FUNC; @@ -65,10 +62,7 @@ int SYMEXPORT alpm_pkg_free(pmpkg_t *pkg) return 0; } -/** Check the integrity (with md5) of a package from the sync cache. - * @param pkg package pointer - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Check the integrity (with md5) of a package from the sync cache. */ int SYMEXPORT alpm_pkg_checkmd5sum(pmpkg_t *pkg) { char *fpath; @@ -322,30 +316,13 @@ pmdb_t SYMEXPORT *alpm_pkg_get_db(pmpkg_t *pkg) return pkg->origin_data.db; } -/** - * Open a package changelog for reading. Similar to fopen in functionality, - * except that the returned 'file stream' could really be from an archive - * as well as from the database. - * @param pkg the package to read the changelog of (either file or db) - * @return a 'file stream' to the package changelog - */ +/** Open a package changelog for reading. */ void SYMEXPORT *alpm_pkg_changelog_open(pmpkg_t *pkg) { return pkg->ops->changelog_open(pkg); } -/** - * Read data from an open changelog 'file stream'. Similar to fread in - * functionality, this function takes a buffer and amount of data to read. If an - * error occurs pm_errno will be set. - * - * @param ptr a buffer to fill with raw changelog data - * @param size the size of the buffer - * @param pkg the package that the changelog is being read from - * @param fp a 'file stream' to the package changelog - * @return the number of characters read, or 0 if there is no more data or an - * error occurred. - */ +/** Read data from an open changelog 'file stream'. */ size_t SYMEXPORT alpm_pkg_changelog_read(void *ptr, size_t size, const pmpkg_t *pkg, const void *fp) { @@ -359,14 +336,7 @@ int SYMEXPORT alpm_pkg_changelog_feof(const pmpkg_t *pkg, void *fp) } */ -/** - * Close a package changelog for reading. Similar to fclose in functionality, - * except that the 'file stream' could really be from an archive as well as - * from the database. - * @param pkg the package that the changelog was read from - * @param fp a 'file stream' to the package changelog - * @return whether closing the package changelog stream was successful - */ +/** Close a package changelog for reading. */ int SYMEXPORT alpm_pkg_changelog_close(const pmpkg_t *pkg, void *fp) { return pkg->ops->changelog_close(pkg, fp); @@ -394,11 +364,7 @@ static void find_requiredby(pmpkg_t *pkg, pmdb_t *db, alpm_list_t **reqs) } } -/** - * @brief Compute the packages requiring a given package. - * @param pkg a package - * @return the list of packages requiring pkg - */ +/** Compute the packages requiring a given package. */ alpm_list_t SYMEXPORT *alpm_pkg_compute_requiredby(pmpkg_t *pkg) { const alpm_list_t *i; diff --git a/lib/libalpm/po/LINGUAS b/lib/libalpm/po/LINGUAS index 3ce69e3c..fac79ebd 100644 --- a/lib/libalpm/po/LINGUAS +++ b/lib/libalpm/po/LINGUAS @@ -11,7 +11,6 @@ fr hu it kk -ko nb pl pt diff --git a/lib/libalpm/po/ko.po b/lib/libalpm/po/ko.po deleted file mode 100644 index d4c70983..00000000 --- a/lib/libalpm/po/ko.po +++ /dev/null @@ -1,548 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org> -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: Arch Linux Pacman package manager\n" -"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n" -"POT-Creation-Date: 2011-03-20 23:42-0500\n" -"PO-Revision-Date: 2011-03-22 15:34+0000\n" -"Last-Translator: toofishes <dpmcgee@gmail.com>\n" -"Language-Team: Korean <None>\n" -"Language: ko\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0\n" - -#, c-format -msgid "%s-%s is up to date -- skipping\n" -msgstr "" - -#, c-format -msgid "%s-%s is up to date -- reinstalling\n" -msgstr "" - -#, c-format -msgid "downgrading package %s (%s => %s)\n" -msgstr "" - -#, c-format -msgid "warning given when extracting %s (%s)\n" -msgstr "" - -#, c-format -msgid "could not extract %s (%s)\n" -msgstr "" - -#, c-format -msgid "" -"directory permissions differ on %s\n" -"filesystem: %o package: %o\n" -msgstr "" - -#, c-format -msgid "extract: not overwriting dir with file %s\n" -msgstr "" - -#, c-format -msgid "extract: symlink %s does not point to dir\n" -msgstr "" - -#, c-format -msgid "could not rename %s to %s (%s)\n" -msgstr "" - -#, c-format -msgid "%s saved as %s\n" -msgstr "" - -#, c-format -msgid "could not install %s as %s (%s)\n" -msgstr "" - -#, c-format -msgid "%s installed as %s\n" -msgstr "" - -#, c-format -msgid "extracting %s as %s.pacnew\n" -msgstr "" - -#, c-format -msgid "could not get current working directory\n" -msgstr "" - -#, c-format -msgid "could not change directory to %s (%s)\n" -msgstr "" - -#, c-format -msgid "problem occurred while upgrading %s\n" -msgstr "" - -#, c-format -msgid "problem occurred while installing %s\n" -msgstr "" - -#, c-format -msgid "could not update database entry %s-%s\n" -msgstr "" - -#, c-format -msgid "could not add entry '%s' in cache\n" -msgstr "" - -#, c-format -msgid "removing invalid database: %s\n" -msgstr "" - -#, c-format -msgid "invalid name for database entry '%s'\n" -msgstr "" - -#, c-format -msgid "duplicated database entry '%s'\n" -msgstr "" - -#, c-format -msgid "corrupted database entry '%s'\n" -msgstr "" - -#, c-format -msgid "could not open file %s: %s\n" -msgstr "" - -#, c-format -msgid "%s database is inconsistent: name mismatch on package %s\n" -msgstr "" - -#, c-format -msgid "%s database is inconsistent: version mismatch on package %s\n" -msgstr "" - -#, c-format -msgid "could not create directory %s: %s\n" -msgstr "" - -#, c-format -msgid "could not parse package description file in %s\n" -msgstr "" - -#, c-format -msgid "missing package name in %s\n" -msgstr "" - -#, c-format -msgid "missing package version in %s\n" -msgstr "" - -#, c-format -msgid "error while reading package %s: %s\n" -msgstr "" - -#, c-format -msgid "missing package metadata in %s\n" -msgstr "" - -#, c-format -msgid "removing invalid file: %s\n" -msgstr "" - -#, c-format -msgid "database path is undefined\n" -msgstr "" - -#, c-format -msgid "dependency cycle detected:\n" -msgstr "" - -#, c-format -msgid "%s will be removed after its %s dependency\n" -msgstr "" - -#, c-format -msgid "%s will be installed before its %s dependency\n" -msgstr "" - -#, c-format -msgid "ignoring package %s-%s\n" -msgstr "" - -#, c-format -msgid "cannot resolve \"%s\", a dependency of \"%s\"\n" -msgstr "" - -#, c-format -msgid "could not get filesystem information\n" -msgstr "" - -#, c-format -msgid "could not get filesystem information for %s: %s\n" -msgstr "" - -#, c-format -msgid "could not determine mount point for file %s\n" -msgstr "" - -#, c-format -msgid "could not determine filesystem mount points\n" -msgstr "" - -#, c-format -msgid "could not determine root mount point %s\n" -msgstr "" - -#, c-format -msgid "Partition %s is mounted read only\n" -msgstr "" - -#, c-format -msgid "Partition %s too full: %ld blocks needed, %ld blocks free\n" -msgstr "" - -#, c-format -msgid "disk" -msgstr "" - -#, c-format -msgid "url '%s' is invalid\n" -msgstr "" - -#, c-format -msgid "failed retrieving file '%s' from %s : %s\n" -msgstr "" - -#, c-format -msgid "resuming download of %s not possible; starting over\n" -msgstr "" - -#, c-format -msgid "error writing to file '%s': %s\n" -msgstr "" - -#, c-format -msgid "failed retrieving file '%s' from %s\n" -msgstr "" - -#, c-format -msgid "%s appears to be truncated: %jd/%jd bytes\n" -msgstr "" - -#, c-format -msgid "failed to download %s\n" -msgstr "" - -#, c-format -msgid "out of memory!" -msgstr "" - -#, c-format -msgid "unexpected system error" -msgstr "" - -#, c-format -msgid "insufficient privileges" -msgstr "" - -#, c-format -msgid "could not find or read file" -msgstr "" - -#, c-format -msgid "could not find or read directory" -msgstr "" - -#, c-format -msgid "wrong or NULL argument passed" -msgstr "" - -#, c-format -msgid "not enough free disk space" -msgstr "" - -#, c-format -msgid "library not initialized" -msgstr "" - -#, c-format -msgid "library already initialized" -msgstr "" - -#, c-format -msgid "unable to lock database" -msgstr "" - -#, c-format -msgid "could not open database" -msgstr "" - -#, c-format -msgid "could not create database" -msgstr "" - -#, c-format -msgid "database not initialized" -msgstr "" - -#, c-format -msgid "database already registered" -msgstr "" - -#, c-format -msgid "could not find database" -msgstr "" - -#, c-format -msgid "database is incorrect version" -msgstr "" - -#, c-format -msgid "could not update database" -msgstr "" - -#, c-format -msgid "could not remove database entry" -msgstr "" - -#, c-format -msgid "invalid url for server" -msgstr "" - -#, c-format -msgid "no servers configured for repository" -msgstr "" - -#, c-format -msgid "transaction already initialized" -msgstr "" - -#, c-format -msgid "transaction not initialized" -msgstr "" - -#, c-format -msgid "duplicate target" -msgstr "" - -#, c-format -msgid "transaction not prepared" -msgstr "" - -#, c-format -msgid "transaction aborted" -msgstr "" - -#, c-format -msgid "operation not compatible with the transaction type" -msgstr "" - -#, c-format -msgid "transaction commit attempt when database is not locked" -msgstr "" - -#, c-format -msgid "could not find or read package" -msgstr "" - -#, c-format -msgid "operation cancelled due to ignorepkg" -msgstr "" - -#, c-format -msgid "invalid or corrupted package" -msgstr "" - -#, c-format -msgid "cannot open package file" -msgstr "" - -#, c-format -msgid "cannot remove all files for package" -msgstr "" - -#, c-format -msgid "package filename is not valid" -msgstr "" - -#, c-format -msgid "package architecture is not valid" -msgstr "" - -#, c-format -msgid "could not find repository for target" -msgstr "" - -#, c-format -msgid "invalid or corrupted delta" -msgstr "" - -#, c-format -msgid "delta patch failed" -msgstr "" - -#, c-format -msgid "could not satisfy dependencies" -msgstr "" - -#, c-format -msgid "conflicting dependencies" -msgstr "" - -#, c-format -msgid "conflicting files" -msgstr "" - -#, c-format -msgid "failed to retrieve some files" -msgstr "" - -#, c-format -msgid "failed to copy some file" -msgstr "" - -#, c-format -msgid "invalid regular expression" -msgstr "" - -#, c-format -msgid "libarchive error" -msgstr "" - -#, c-format -msgid "download library error" -msgstr "" - -#, c-format -msgid "error invoking external downloader" -msgstr "" - -#, c-format -msgid "unexpected error" -msgstr "" - -#, c-format -msgid "database larger than maximum size\n" -msgstr "" - -#, c-format -msgid "could not find %s in database -- skipping\n" -msgstr "" - -#, c-format -msgid "removing %s from target list\n" -msgstr "" - -#, c-format -msgid "cannot remove file '%s': %s\n" -msgstr "" - -#, c-format -msgid "could not remove database entry %s-%s\n" -msgstr "" - -#, c-format -msgid "could not remove entry '%s' from cache\n" -msgstr "" - -#, c-format -msgid "%s: ignoring package upgrade (%s => %s)\n" -msgstr "" - -#, c-format -msgid "%s: ignoring package downgrade (%s => %s)\n" -msgstr "" - -#, c-format -msgid "%s: downgrading from version %s to version %s\n" -msgstr "" - -#, c-format -msgid "%s: local (%s) is newer than %s (%s)\n" -msgstr "" - -#, c-format -msgid "ignoring package replacement (%s-%s => %s-%s)\n" -msgstr "" - -#, c-format -msgid "cannot replace %s by %s\n" -msgstr "" - -#, c-format -msgid "unresolvable package conflicts detected\n" -msgstr "" - -#, c-format -msgid "removing '%s' from target list because it conflicts with '%s'\n" -msgstr "" - -#, c-format -msgid "failed to retrieve some files from %s\n" -msgstr "" - -#, c-format -msgid "could not commit removal transaction\n" -msgstr "" - -#, c-format -msgid "could not commit transaction\n" -msgstr "" - -#, c-format -msgid "%s database version is too old\n" -msgstr "" - -#, c-format -msgid "could not remove lock file %s\n" -msgstr "" - -#, c-format -msgid "could not create temp directory\n" -msgstr "" - -#, c-format -msgid "could not copy tempfile to %s (%s)\n" -msgstr "" - -#, c-format -msgid "could not remove tmpdir %s\n" -msgstr "" - -#, c-format -msgid "could not create pipe (%s)\n" -msgstr "" - -#, c-format -msgid "could not fork a new process (%s)\n" -msgstr "" - -#, c-format -msgid "could not change the root directory (%s)\n" -msgstr "" - -#, c-format -msgid "call to execv failed (%s)\n" -msgstr "" - -#, c-format -msgid "call to waitpid failed (%s)\n" -msgstr "" - -#, c-format -msgid "could not open pipe (%s)\n" -msgstr "" - -#, c-format -msgid "command failed to execute correctly\n" -msgstr "" - -#, c-format -msgid "no %s cache exists, creating...\n" -msgstr "" - -#, c-format -msgid "couldn't create package cache, using /tmp instead\n" -msgstr "" diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c index a01349ed..ef9d40e1 100644 --- a/lib/libalpm/remove.c +++ b/lib/libalpm/remove.c @@ -129,6 +129,14 @@ static void remove_prepare_keep_needed(pmtrans_t *trans, pmdb_t *db, } } +/** Transaction preparation for remove actions. + * This functions takes a pointer to a alpm_list_t which will be + * filled with a list of pmdepmissing_t* objects representing + * the packages blocking the transaction. + * @param trans the transaction object + * @param db the database of local packages + * @param data a pointer to an alpm_list_t* to fill + */ int _alpm_remove_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data) { alpm_list_t *lp; diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c index 81254198..e1722225 100644 --- a/lib/libalpm/trans.c +++ b/lib/libalpm/trans.c @@ -97,13 +97,7 @@ static int remove_lock(pmhandle_t *handle) return 0; } -/** Initialize the transaction. - * @param flags flags of the transaction (like nodeps, etc) - * @param event event callback function pointer - * @param conv question callback function pointer - * @param progress progress callback function pointer - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Initialize the transaction. */ int SYMEXPORT alpm_trans_init(pmtransflag_t flags, alpm_trans_cb_event event, alpm_trans_cb_conv conv, alpm_trans_cb_progress progress) @@ -176,11 +170,7 @@ static alpm_list_t *check_arch(alpm_list_t *pkgs) return invalid; } -/** Prepare a transaction. - * @param data the address of an alpm_list where detailed description - * of an error can be dumped (ie. list of conflicting files) - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Prepare a transaction. */ int SYMEXPORT alpm_trans_prepare(alpm_list_t **data) { pmtrans_t *trans; @@ -226,11 +216,7 @@ int SYMEXPORT alpm_trans_prepare(alpm_list_t **data) return 0; } -/** Commit a transaction. - * @param data the address of an alpm_list where detailed description - * of an error can be dumped (ie. list of conflicting files) - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Commit a transaction. */ int SYMEXPORT alpm_trans_commit(alpm_list_t **data) { pmtrans_t *trans; @@ -271,9 +257,7 @@ int SYMEXPORT alpm_trans_commit(alpm_list_t **data) return 0; } -/** Interrupt a transaction. - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Interrupt a transaction. */ int SYMEXPORT alpm_trans_interrupt(void) { pmtrans_t *trans; @@ -293,9 +277,7 @@ int SYMEXPORT alpm_trans_interrupt(void) return 0; } -/** Release a transaction. - * @return 0 on success, -1 on error (pm_errno is set accordingly) - */ +/** Release a transaction. */ int SYMEXPORT alpm_trans_release(void) { pmtrans_t *trans; @@ -465,8 +447,8 @@ cleanup: int SYMEXPORT alpm_trans_get_flags() { /* Sanity checks */ - ASSERT(handle != NULL, return -1); - ASSERT(handle->trans != NULL, return -1); + ASSERT(handle != NULL, RET_ERR(PM_ERR_HANDLE_NULL, -1)); + ASSERT(handle->trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1)); return handle->trans->flags; } @@ -11,7 +11,6 @@ fr hu it kk -ko nb pl pt diff --git a/po/ko.po b/po/ko.po deleted file mode 100644 index 7c6cf527..00000000 --- a/po/ko.po +++ /dev/null @@ -1,1775 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org> -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: Arch Linux Pacman package manager\n" -"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n" -"POT-Creation-Date: 2011-03-23 02:03-0500\n" -"PO-Revision-Date: 2011-03-22 15:36+0000\n" -"Last-Translator: toofishes <dpmcgee@gmail.com>\n" -"Language-Team: Korean <None>\n" -"Language: ko\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0\n" - -#, c-format -msgid "checking dependencies...\n" -msgstr "" - -#, c-format -msgid "checking for file conflicts...\n" -msgstr "" - -#, c-format -msgid "resolving dependencies...\n" -msgstr "" - -#, c-format -msgid "looking for inter-conflicts...\n" -msgstr "" - -#, c-format -msgid "installing %s...\n" -msgstr "" - -#, c-format -msgid "removing %s...\n" -msgstr "" - -#, c-format -msgid "upgrading %s...\n" -msgstr "" - -#, c-format -msgid "checking package integrity...\n" -msgstr "" - -#, c-format -msgid "checking delta integrity...\n" -msgstr "" - -#, c-format -msgid "applying deltas...\n" -msgstr "" - -#, c-format -msgid "generating %s with %s... " -msgstr "" - -#, c-format -msgid "success!\n" -msgstr "" - -#, c-format -msgid "failed.\n" -msgstr "" - -#, c-format -msgid ":: Retrieving packages from %s...\n" -msgstr "" - -#, c-format -msgid "checking available disk space...\n" -msgstr "" - -#, c-format -msgid ":: %s is in IgnorePkg/IgnoreGroup. Install anyway?" -msgstr "" - -#, c-format -msgid ":: Replace %s with %s/%s?" -msgstr "" - -#, c-format -msgid ":: %s and %s are in conflict. Remove %s?" -msgstr "" - -#, c-format -msgid ":: %s and %s are in conflict (%s). Remove %s?" -msgstr "" - -#, c-format -msgid "" -":: The following package cannot be upgraded due to unresolvable " -"dependencies:\n" -msgid_plural "" -":: The following packages cannot be upgraded due to unresolvable " -"dependencies:\n" -msgstr[0] "" - -#, c-format -msgid "Do you want to skip the above package for this upgrade?" -msgid_plural "Do you want to skip the above packages for this upgrade?" -msgstr[0] "" - -#, c-format -msgid ":: There are %d providers available for %s:\n" -msgstr "" - -#, c-format -msgid ":: %s-%s: local version is newer. Upgrade anyway?" -msgstr "" - -#, c-format -msgid ":: File %s is corrupted. Do you want to delete it?" -msgstr "" - -#, c-format -msgid "installing" -msgstr "" - -#, c-format -msgid "upgrading" -msgstr "" - -#, c-format -msgid "removing" -msgstr "" - -#, c-format -msgid "checking for file conflicts" -msgstr "" - -#, c-format -msgid "checking available disk space" -msgstr "" - -#, c-format -msgid "checking package integrity" -msgstr "" - -#, c-format -msgid "downloading %s...\n" -msgstr "" - -#, c-format -msgid "malloc failure: could not allocate %zd bytes\n" -msgstr "" - -#, c-format -msgid "no targets specified (use -h for help)\n" -msgstr "" - -#, c-format -msgid "no install reason specified (use -h for help)\n" -msgstr "" - -#, c-format -msgid "could not set install reason for package %s (%s)\n" -msgstr "" - -#, c-format -msgid "%s: install reason has been set to 'installed as dependency'\n" -msgstr "" - -#, c-format -msgid "%s: install reason has been set to 'explicitly installed'\n" -msgstr "" - -#, c-format -msgid "Explicitly installed" -msgstr "" - -#, c-format -msgid "Installed as a dependency for another package" -msgstr "" - -#, c-format -msgid "Unknown" -msgstr "" - -#, c-format -msgid "Name :" -msgstr "" - -#, c-format -msgid "Version :" -msgstr "" - -#, c-format -msgid "URL :" -msgstr "" - -#, c-format -msgid "Licenses :" -msgstr "" - -#, c-format -msgid "Groups :" -msgstr "" - -#, c-format -msgid "Provides :" -msgstr "" - -#, c-format -msgid "Depends On :" -msgstr "" - -#, c-format -msgid "Optional Deps :" -msgstr "" - -#, c-format -msgid "Required By :" -msgstr "" - -#, c-format -msgid "Conflicts With :" -msgstr "" - -#, c-format -msgid "Replaces :" -msgstr "" - -#, c-format -msgid "Download Size : %6.2f K\n" -msgstr "" - -#, c-format -msgid "Compressed Size: %6.2f K\n" -msgstr "" - -#, c-format -msgid "Installed Size : %6.2f K\n" -msgstr "" - -#, c-format -msgid "Packager :" -msgstr "" - -#, c-format -msgid "Architecture :" -msgstr "" - -#, c-format -msgid "Build Date :" -msgstr "" - -#, c-format -msgid "Install Date :" -msgstr "" - -#, c-format -msgid "Install Reason :" -msgstr "" - -#, c-format -msgid "Install Script :" -msgstr "" - -#, c-format -msgid "Yes" -msgstr "" - -#, c-format -msgid "No" -msgstr "" - -#, c-format -msgid "MD5 Sum :" -msgstr "" - -#, c-format -msgid "Description :" -msgstr "" - -#, c-format -msgid "Repository :" -msgstr "" - -#, c-format -msgid "could not calculate checksums for %s\n" -msgstr "" - -#, c-format -msgid "Backup Files:\n" -msgstr "" - -#, c-format -msgid "(none)\n" -msgstr "" - -#, c-format -msgid "no changelog available for '%s'.\n" -msgstr "" - -#, c-format -msgid "options" -msgstr "" - -#, c-format -msgid "file(s)" -msgstr "" - -#, c-format -msgid "package(s)" -msgstr "" - -#, c-format -msgid "usage" -msgstr "" - -#, c-format -msgid "operation" -msgstr "" - -#, c-format -msgid "operations:\n" -msgstr "" - -#, c-format -msgid "" -"\n" -"use '%s {-h --help}' with an operation for available options\n" -msgstr "" - -#, c-format -msgid "" -" -c, --cascade remove packages and all packages that depend on them\n" -msgstr "" - -#, c-format -msgid " -n, --nosave remove configuration files as well\n" -msgstr "" - -#, c-format -msgid "" -" -s, --recursive remove dependencies also (that won't break packages)\n" -" (-ss includes explicitly installed dependencies too)\n" -msgstr "" - -#, c-format -msgid "" -" -u, --unneeded remove unneeded packages (that won't break packages)\n" -msgstr "" - -#, c-format -msgid " -c, --changelog view the changelog of a package\n" -msgstr "" - -#, c-format -msgid "" -" -d, --deps list packages installed as dependencies [filter]\n" -msgstr "" - -#, c-format -msgid " -e, --explicit list packages explicitly installed [filter]\n" -msgstr "" - -#, c-format -msgid " -g, --groups view all members of a package group\n" -msgstr "" - -#, c-format -msgid "" -" -i, --info view package information (-ii for backup files)\n" -msgstr "" - -#, c-format -msgid "" -" -k, --check check that the files owned by the package(s) are " -"present\n" -msgstr "" - -#, c-format -msgid " -l, --list list the contents of the queried package\n" -msgstr "" - -#, c-format -msgid "" -" -m, --foreign list installed packages not found in sync db(s) " -"[filter]\n" -msgstr "" - -#, c-format -msgid " -o, --owns <file> query the package that owns <file>\n" -msgstr "" - -#, c-format -msgid " -p, --file <package> query a package file instead of the database\n" -msgstr "" - -#, c-format -msgid " -q, --quiet show less information for query and search\n" -msgstr "" - -#, c-format -msgid "" -" -s, --search <regex> search locally-installed packages for matching " -"strings\n" -msgstr "" - -#, c-format -msgid "" -" -t, --unrequired list packages not required by any package [filter]\n" -msgstr "" - -#, c-format -msgid " -u, --upgrades list outdated packages [filter]\n" -msgstr "" - -#, c-format -msgid "" -" -c, --clean remove old packages from cache directory (-cc for " -"all)\n" -msgstr "" - -#, c-format -msgid " -i, --info view package information\n" -msgstr "" - -#, c-format -msgid " -l, --list <repo> view a list of packages in a repo\n" -msgstr "" - -#, c-format -msgid "" -" -s, --search <regex> search remote repositories for matching strings\n" -msgstr "" - -#, c-format -msgid "" -" -u, --sysupgrade upgrade installed packages (-uu allows downgrade)\n" -msgstr "" - -#, c-format -msgid "" -" -w, --downloadonly download packages but do not install/upgrade " -"anything\n" -msgstr "" - -#, c-format -msgid "" -" -y, --refresh download fresh package databases from the server\n" -msgstr "" - -#, c-format -msgid " --needed don't reinstall up to date packages\n" -msgstr "" - -#, c-format -msgid " --asdeps mark packages as non-explicitly installed\n" -msgstr "" - -#, c-format -msgid " --asexplicit mark packages as explicitly installed\n" -msgstr "" - -#, c-format -msgid " -f, --force force install, overwrite conflicting files\n" -msgstr "" - -#, c-format -msgid " --asdeps install packages as non-explicitly installed\n" -msgstr "" - -#, c-format -msgid " --asexplicit install packages as explicitly installed\n" -msgstr "" - -#, c-format -msgid "" -" --ignore <pkg> ignore a package upgrade (can be used more than " -"once)\n" -msgstr "" - -#, c-format -msgid "" -" --ignoregroup <grp>\n" -" ignore a group upgrade (can be used more than once)\n" -msgstr "" - -#, c-format -msgid " -d, --nodeps skip dependency checks\n" -msgstr "" - -#, c-format -msgid "" -" -k, --dbonly only modify database entries, not package files\n" -msgstr "" - -#, c-format -msgid "" -" --noprogressbar do not show a progress bar when downloading files\n" -msgstr "" - -#, c-format -msgid "" -" --noscriptlet do not execute the install scriptlet if one exists\n" -msgstr "" - -#, c-format -msgid "" -" --print only print the targets instead of performing the " -"operation\n" -msgstr "" - -#, c-format -msgid "" -" --print-format <string>\n" -" specify how the targets should be printed\n" -msgstr "" - -#, c-format -msgid " -b, --dbpath <path> set an alternate database location\n" -msgstr "" - -#, c-format -msgid " -r, --root <path> set an alternate installation root\n" -msgstr "" - -#, c-format -msgid " -v, --verbose be verbose\n" -msgstr "" - -#, c-format -msgid " --arch <arch> set an alternate architecture\n" -msgstr "" - -#, c-format -msgid " --cachedir <dir> set an alternate package cache location\n" -msgstr "" - -#, c-format -msgid " --config <path> set an alternate configuration file\n" -msgstr "" - -#, c-format -msgid " --debug display debug messages\n" -msgstr "" - -#, c-format -msgid " --logfile <path> set an alternate log file\n" -msgstr "" - -#, c-format -msgid " --noconfirm do not ask for any confirmation\n" -msgstr "" - -#, c-format -msgid "" -" This program may be freely redistributed under\n" -" the terms of the GNU General Public License.\n" -msgstr "" - -#, c-format -msgid "problem setting rootdir '%s' (%s)\n" -msgstr "" - -#, c-format -msgid "problem setting dbpath '%s' (%s)\n" -msgstr "" - -#, c-format -msgid "problem setting logfile '%s' (%s)\n" -msgstr "" - -#, c-format -msgid "problem adding cachedir '%s' (%s)\n" -msgstr "" - -#, c-format -msgid "'%s' is not a valid debug level\n" -msgstr "" - -#, c-format -msgid "only one operation may be used at a time\n" -msgstr "" - -#, c-format -msgid "invalid option\n" -msgstr "" - -#, c-format -msgid "invalid value for 'CleanMethod' : '%s'\n" -msgstr "" - -#, c-format -msgid "could not get current working directory\n" -msgstr "" - -#, c-format -msgid "could not chdir to download directory %s\n" -msgstr "" - -#, c-format -msgid "running XferCommand: fork failed!\n" -msgstr "" - -#, c-format -msgid "could not change directory to %s (%s)\n" -msgstr "" - -#, c-format -msgid "" -"config file %s, line %d: directive '%s' in section '%s' not recognized.\n" -msgstr "" - -#, c-format -msgid "" -"The mirror '%s' contains the $arch variable, but no Architecture is " -"defined.\n" -msgstr "" - -#, c-format -msgid "could not add server URL to database '%s': %s (%s)\n" -msgstr "" - -#, c-format -msgid "config file %s could not be read.\n" -msgstr "" - -#, c-format -msgid "config file %s, line %d: bad section name.\n" -msgstr "" - -#, c-format -msgid "could not register '%s' database (%s)\n" -msgstr "" - -#, c-format -msgid "config file %s, line %d: syntax error in config file- missing key.\n" -msgstr "" - -#, c-format -msgid "config file %s, line %d: All directives must belong to a section.\n" -msgstr "" - -#, c-format -msgid "config file %s, line %d: directive '%s' needs a value\n" -msgstr "" - -#, c-format -msgid "failed to initialize alpm library (%s)\n" -msgstr "" - -#, c-format -msgid "buffer overflow detected in arg parsing\n" -msgstr "" - -#, c-format -msgid "failed to reopen stdin for reading: (%s)\n" -msgstr "" - -#, c-format -msgid "you cannot perform this operation unless you are root.\n" -msgstr "" - -#, c-format -msgid "no operation specified (use -h for help)\n" -msgstr "" - -#, c-format -msgid "no file was specified for --owns\n" -msgstr "" - -#, c-format -msgid "failed to find '%s' in PATH: %s\n" -msgstr "" - -#, c-format -msgid "failed to read file '%s': %s\n" -msgstr "" - -#, c-format -msgid "cannot determine ownership of directory '%s'\n" -msgstr "" - -#, c-format -msgid "cannot determine real path for '%s': %s\n" -msgstr "" - -#, c-format -msgid "path too long: %s%s\n" -msgstr "" - -#, c-format -msgid "%s is owned by %s %s\n" -msgstr "" - -#, c-format -msgid "No package owns %s\n" -msgstr "" - -#, c-format -msgid "group \"%s\" was not found\n" -msgstr "" - -#, c-format -msgid "%s: %d total file, " -msgid_plural "%s: %d total files, " -msgstr[0] "" - -#, c-format -msgid "%d missing file\n" -msgid_plural "%d missing files\n" -msgstr[0] "" - -#, c-format -msgid "no usable package repositories configured.\n" -msgstr "" - -#, c-format -msgid "package \"%s\" not found\n" -msgstr "" - -#, c-format -msgid "failed to prepare transaction (%s)\n" -msgstr "" - -#, c-format -msgid ":: package %s does not have a valid architecture\n" -msgstr "" - -#, c-format -msgid ":: %s: requires %s\n" -msgstr "" - -#, c-format -msgid "%s is designated as a HoldPkg.\n" -msgstr "" - -#, c-format -msgid "HoldPkg was found in target list. Do you want to continue?" -msgstr "" - -#, c-format -msgid " there is nothing to do\n" -msgstr "" - -#, c-format -msgid "Do you want to remove these packages?" -msgstr "" - -#, c-format -msgid "failed to commit transaction (%s)\n" -msgstr "" - -#, c-format -msgid "could not access database directory\n" -msgstr "" - -#, c-format -msgid "could not remove %s\n" -msgstr "" - -#, c-format -msgid "Do you want to remove %s?" -msgstr "" - -#, c-format -msgid "Database directory: %s\n" -msgstr "" - -#, c-format -msgid "Do you want to remove unused repositories?" -msgstr "" - -#, c-format -msgid "Database directory cleaned up\n" -msgstr "" - -#, c-format -msgid "Cache directory: %s\n" -msgstr "" - -#, c-format -msgid "Packages to keep:\n" -msgstr "" - -#, c-format -msgid " All locally installed packages\n" -msgstr "" - -#, c-format -msgid " All current sync database packages\n" -msgstr "" - -#, c-format -msgid "Do you want to remove all other packages from cache?" -msgstr "" - -#, c-format -msgid "removing old packages from cache...\n" -msgstr "" - -#, c-format -msgid "Do you want to remove ALL files from cache?" -msgstr "" - -#, c-format -msgid "removing all files from cache...\n" -msgstr "" - -#, c-format -msgid "could not access cache directory %s\n" -msgstr "" - -#, c-format -msgid "File %s does not seem to be a valid package, remove it?" -msgstr "" - -#, c-format -msgid "failed to update %s (%s)\n" -msgstr "" - -#, c-format -msgid " %s is up to date\n" -msgstr "" - -#, c-format -msgid "failed to synchronize any databases\n" -msgstr "" - -#, c-format -msgid "installed" -msgstr "" - -#, c-format -msgid "repository '%s' does not exist\n" -msgstr "" - -#, c-format -msgid "package '%s' was not found in repository '%s'\n" -msgstr "" - -#, c-format -msgid "package '%s' was not found\n" -msgstr "" - -#, c-format -msgid "repository \"%s\" was not found.\n" -msgstr "" - -#, c-format -msgid "skipping target: %s\n" -msgstr "" - -#, c-format -msgid "target not found: %s\n" -msgstr "" - -#, c-format -msgid ":: There are %d members in group %s:\n" -msgstr "" - -#, c-format -msgid "database not found: %s\n" -msgstr "" - -#, c-format -msgid ":: Starting full system upgrade...\n" -msgstr "" - -#, c-format -msgid ":: %s and %s are in conflict\n" -msgstr "" - -#, c-format -msgid ":: %s and %s are in conflict (%s)\n" -msgstr "" - -#, c-format -msgid "Proceed with download?" -msgstr "" - -#, c-format -msgid "Proceed with installation?" -msgstr "" - -#, c-format -msgid "%s exists in both '%s' and '%s'\n" -msgstr "" - -#, c-format -msgid "%s: %s exists in filesystem\n" -msgstr "" - -#, c-format -msgid "%s is invalid or corrupted\n" -msgstr "" - -#, c-format -msgid "Errors occurred, no packages were upgraded.\n" -msgstr "" - -#, c-format -msgid ":: Synchronizing package databases...\n" -msgstr "" - -#, c-format -msgid ":: The following packages should be upgraded first :\n" -msgstr "" - -#, c-format -msgid "" -":: Do you want to cancel the current operation\n" -":: and upgrade these packages now?" -msgstr "" - -#, c-format -msgid "failed to init transaction (%s)\n" -msgstr "" - -#, c-format -msgid "" -" if you're sure a package manager is not already\n" -" running, you can remove %s\n" -msgstr "" - -#, c-format -msgid " try running pacman-db-upgrade\n" -msgstr "" - -#, c-format -msgid "failed to release transaction (%s)\n" -msgstr "" - -#, c-format -msgid "None" -msgstr "" - -#, c-format -msgid "Targets (%d):" -msgstr "" - -#, c-format -msgid "Total Download Size: %.2f MB\n" -msgstr "" - -#, c-format -msgid "Total Installed Size: %.2f MB\n" -msgstr "" - -#, c-format -msgid "Remove (%d):" -msgstr "" - -#, c-format -msgid "Total Removed Size: %.2f MB\n" -msgstr "" - -#, c-format -msgid "New optional dependencies for %s\n" -msgstr "" - -#, c-format -msgid "Optional dependencies for %s\n" -msgstr "" - -#, c-format -msgid "Repository %s\n" -msgstr "" - -#, c-format -msgid "Invalid value: %d is not between %d and %d\n" -msgstr "" - -#, c-format -msgid "Invalid number: %s\n" -msgstr "" - -#, c-format -msgid "Enter a selection (default=all)" -msgstr "" - -#, c-format -msgid "Enter a number (default=%d)" -msgstr "" - -#, c-format -msgid "[Y/n]" -msgstr "" - -#, c-format -msgid "[y/N]" -msgstr "" - -#, c-format -msgid "Y" -msgstr "" - -#, c-format -msgid "YES" -msgstr "" - -#, c-format -msgid "N" -msgstr "" - -#, c-format -msgid "NO" -msgstr "" - -#, c-format -msgid "failed to allocate string\n" -msgstr "" - -#, c-format -msgid "error: %s" -msgstr "" - -#, c-format -msgid "warning: %s" -msgstr "" - -#, c-format -msgid "error: " -msgstr "" - -#, c-format -msgid "warning: " -msgstr "" - -msgid "WARNING:" -msgstr "" - -msgid "ERROR:" -msgstr "" - -msgid "Cleaning up..." -msgstr "" - -msgid "Unable to find source file %s." -msgstr "" - -msgid "Aborting..." -msgstr "" - -msgid "There is no agent set up to handle %s URLs. Check %s." -msgstr "" - -msgid "The download program %s is not installed." -msgstr "" - -msgid "'%s' returned a fatal error (%i): %s" -msgstr "" - -msgid "Installing missing dependencies..." -msgstr "" - -msgid "'%s' failed to install missing dependencies." -msgstr "" - -msgid "Missing Dependencies:" -msgstr "" - -msgid "Failed to remove installed dependencies." -msgstr "" - -msgid "Retrieving Sources..." -msgstr "" - -msgid "Found %s" -msgstr "" - -msgid "%s was not found in the build directory and is not a URL." -msgstr "" - -msgid "Downloading %s..." -msgstr "" - -msgid "Failure while downloading %s" -msgstr "" - -msgid "Generating checksums for source files..." -msgstr "" - -msgid "Cannot find openssl." -msgstr "" - -msgid "Invalid integrity algorithm '%s' specified." -msgstr "" - -msgid "Validating source files with %s..." -msgstr "" - -msgid "NOT FOUND" -msgstr "" - -msgid "Passed" -msgstr "" - -msgid "FAILED" -msgstr "" - -msgid "One or more files did not pass the validity check!" -msgstr "" - -msgid "Integrity checks (%s) differ in size from the source array." -msgstr "" - -msgid "Integrity checks are missing." -msgstr "" - -msgid "Extracting Sources..." -msgstr "" - -msgid "Extracting %s with %s" -msgstr "" - -msgid "Failed to extract %s" -msgstr "" - -msgid "A failure occurred in %s()." -msgstr "" - -msgid "Starting %s()..." -msgstr "" - -msgid "Tidying install..." -msgstr "" - -msgid "Removing doc files..." -msgstr "" - -msgid "Purging other files..." -msgstr "" - -msgid "Compressing man and info pages..." -msgstr "" - -msgid "Stripping unneeded symbols from binaries and libraries..." -msgstr "" - -msgid "Removing libtool .la files..." -msgstr "" - -msgid "Removing empty directories..." -msgstr "" - -msgid "Generating .PKGINFO file..." -msgstr "" - -msgid "Please add a license line to your %s!" -msgstr "" - -msgid "Example for GPL'ed software: license=('GPL')." -msgstr "" - -msgid "Backup entry file not in package : %s" -msgstr "" - -msgid "Package contains reference to %s" -msgstr "" - -msgid "Missing pkg/ directory." -msgstr "" - -msgid "Creating package..." -msgstr "" - -msgid "Adding %s file..." -msgstr "" - -msgid "Compressing package..." -msgstr "" - -msgid "'%s' is not a valid archive extension." -msgstr "" - -msgid "Failed to create package file." -msgstr "" - -msgid "Failed to create symlink to package file." -msgstr "" - -msgid "Skipping integrity checks." -msgstr "" - -msgid "Creating source package..." -msgstr "" - -msgid "Adding %s..." -msgstr "" - -msgid "Adding %s file (%s)..." -msgstr "" - -msgid "Compressing source package..." -msgstr "" - -msgid "Failed to create source package file." -msgstr "" - -msgid "Failed to create symlink to source package file." -msgstr "" - -msgid "Installing package %s with %s -U..." -msgstr "" - -msgid "Installing %s package group with %s -U..." -msgstr "" - -msgid "Failed to install built package(s)." -msgstr "" - -msgid "%s is not allowed to be empty." -msgstr "" - -msgid "%s is not allowed to start with a hyphen." -msgstr "" - -msgid "%s is not allowed to contain colons or hyphens." -msgstr "" - -msgid "%s is not allowed to contain hyphens." -msgstr "" - -msgid "%s must be an integer." -msgstr "" - -msgid "%s is not available for the '%s' architecture." -msgstr "" - -msgid "Note that many packages may need a line added to their %s" -msgstr "" - -msgid "such as arch=('%s')." -msgstr "" - -msgid "Provides array cannot contain comparison (< or >) operators." -msgstr "" - -msgid "Backup entry should not contain leading slash : %s" -msgstr "" - -msgid "Invalid syntax for optdepend : '%s'" -msgstr "" - -msgid "%s file (%s) does not exist." -msgstr "" - -msgid "options array contains unknown option '%s'" -msgstr "" - -msgid "missing package function for split package '%s'" -msgstr "" - -msgid "requested package %s is not provided in %s" -msgstr "" - -msgid "Determining latest %s revision..." -msgstr "" - -msgid "Version found: %s" -msgstr "" - -msgid "requires an argument" -msgstr "" - -msgid "unrecognized option" -msgstr "" - -msgid "invalid option" -msgstr "" - -msgid "Usage: %s [options]" -msgstr "" - -msgid "Options:" -msgstr "" - -msgid " -A, --ignorearch Ignore incomplete arch field in %s" -msgstr "" - -msgid " -c, --clean Clean up work files after build" -msgstr "" - -msgid " -C, --cleancache Clean up source files from the cache" -msgstr "" - -msgid " -d, --nodeps Skip all dependency checks" -msgstr "" - -msgid " -e, --noextract Do not extract source files (use existing src/ dir)" -msgstr "" - -msgid " -f, --force Overwrite existing package" -msgstr "" - -msgid " -g, --geninteg Generate integrity checks for source files" -msgstr "" - -msgid " -h, --help This help" -msgstr "" - -msgid " -i, --install Install package after successful build" -msgstr "" - -msgid " -L, --log Log package build process" -msgstr "" - -msgid " -m, --nocolor Disable colorized output messages" -msgstr "" - -msgid " -o, --nobuild Download and extract files only" -msgstr "" - -msgid " -p <file> Use an alternate build script (instead of '%s')" -msgstr "" - -msgid "" -" -r, --rmdeps Remove installed dependencies after a successful build" -msgstr "" - -msgid " -R, --repackage Repackage contents of the package without rebuilding" -msgstr "" - -msgid " -s, --syncdeps Install missing dependencies with pacman" -msgstr "" - -msgid "" -" --allsource Generate a source-only tarball including downloaded " -"sources" -msgstr "" - -msgid " --asroot Allow makepkg to run as root user" -msgstr "" - -msgid " --check Run the check() function in the %s" -msgstr "" - -msgid " --config <file> Use an alternate config file (instead of '%s')" -msgstr "" - -msgid "" -" --holdver Prevent automatic version bumping for development %ss" -msgstr "" - -msgid " --nocheck Do not run the check() function in the %s" -msgstr "" - -msgid " --pkg <list> Only build listed packages from a split package" -msgstr "" - -msgid " --skipinteg Do not fail when integrity checks are missing" -msgstr "" - -msgid "" -" --source Generate a source-only tarball without downloaded sources" -msgstr "" - -msgid "These options can be passed to pacman:" -msgstr "" - -msgid "" -" --noconfirm Do not ask for confirmation when resolving dependencies" -msgstr "" - -msgid " --noprogressbar Do not show a progress bar when downloading files" -msgstr "" - -msgid "If -p is not specified, makepkg will look for '%s'" -msgstr "" - -msgid "" -"Copyright (c) 2006-2011 Pacman Development Team <pacman-dev@archlinux.org>." -"\\nCopyright (C) 2002-2006 Judd Vinet <jvinet@zeroflux.org>.\\n\\nThis is " -"free software; see the source for copying conditions.\\nThere is NO " -"WARRANTY, to the extent permitted by law.\\n" -msgstr "" - -msgid "%s not found." -msgstr "" - -msgid "You do not have write permission to store packages in %s." -msgstr "" - -msgid "You do not have write permission to store downloads in %s." -msgstr "" - -msgid "\\0--holdver and --forcever cannot both be specified" -msgstr "" - -msgid "Cleaning up ALL files from %s." -msgstr "" - -msgid " Are you sure you wish to do this? " -msgstr "" - -msgid "Problem removing files; you may not have correct permissions in %s" -msgstr "" - -msgid "Source cache cleaned." -msgstr "" - -msgid "No files have been removed." -msgstr "" - -msgid "Source destination must be defined in %s." -msgstr "" - -msgid "In addition, please run makepkg -C outside of your cache directory." -msgstr "" - -msgid "Running makepkg as root is a BAD idea and can cause" -msgstr "" - -msgid "permanent, catastrophic damage to your system. If you" -msgstr "" - -msgid "wish to run as root, please use the --asroot option." -msgstr "" - -msgid "The --asroot option is meant for the root user only." -msgstr "" - -msgid "Please rerun makepkg without the --asroot flag." -msgstr "" - -msgid "Fakeroot must be installed if using the 'fakeroot' option" -msgstr "" - -msgid "in the BUILDENV array in %s." -msgstr "" - -msgid "Running makepkg as an unprivileged user will result in non-root" -msgstr "" - -msgid "ownership of the packaged files. Try using the fakeroot environment by" -msgstr "" - -msgid "placing 'fakeroot' in the BUILDENV array in %s." -msgstr "" - -msgid "Do not use the '-F' option. This option is only for use by makepkg." -msgstr "" - -msgid "Sudo can not be found. Will use su to acquire root privileges." -msgstr "" - -msgid "%s does not exist." -msgstr "" - -msgid "%s contains CRLF characters and cannot be sourced." -msgstr "" - -msgid "A package has already been built, installing existing package..." -msgstr "" - -msgid "A package has already been built. (use -f to overwrite)" -msgstr "" - -msgid "" -"The package group has already been built, installing existing packages..." -msgstr "" - -msgid "The package group has already been built. (use -f to overwrite)" -msgstr "" - -msgid "Part of the package group has already been built. (use -f to overwrite)" -msgstr "" - -msgid "Repackaging without the use of a package() function is deprecated." -msgstr "" - -msgid "File permissions may not be preserved." -msgstr "" - -msgid "Leaving fakeroot environment." -msgstr "" - -msgid "Making package: %s" -msgstr "" - -msgid "A source package has already been built. (use -f to overwrite)" -msgstr "" - -msgid "Source package created: %s" -msgstr "" - -msgid "Skipping dependency checks." -msgstr "" - -msgid "Checking runtime dependencies..." -msgstr "" - -msgid "Checking buildtime dependencies..." -msgstr "" - -msgid "Could not resolve all dependencies." -msgstr "" - -msgid "%s was not found in PATH; skipping dependency checks." -msgstr "" - -msgid "Skipping source retrieval -- using existing src/ tree" -msgstr "" - -msgid "Skipping source integrity checks -- using existing src/ tree" -msgstr "" - -msgid "Skipping source extraction -- using existing src/ tree" -msgstr "" - -msgid "The source directory is empty, there is nothing to build!" -msgstr "" - -msgid "The package directory is empty, there is nothing to repackage!" -msgstr "" - -msgid "Sources are ready." -msgstr "" - -msgid "Removing existing pkg/ directory..." -msgstr "" - -msgid "Entering fakeroot environment..." -msgstr "" - -msgid "Finished making: %s" -msgstr "" - -msgid "Usage: %s [pacman_db_root]" -msgstr "" - -msgid "" -"Copyright (c) 2010-2011 Pacman Development Team <pacman-dev@archlinux.org>." -"\\nThis is free software; see the source for copying conditions.\\nThere is " -"NO WARRANTY, to the extent permitted by law.\\n" -msgstr "" - -msgid "%s does not exist or is not a directory." -msgstr "" - -msgid "You must have correct permissions to upgrade the database." -msgstr "" - -msgid "Pacman lock file was found. Cannot run while pacman is running." -msgstr "" - -msgid "Pre-3.5 database format detected - upgrading..." -msgstr "" - -msgid "Done." -msgstr "" - -msgid "" -"pacman-optimize is a little hack that should improve the performance\\nof " -"pacman when reading/writing to its filesystem-based database.\\n\\n" -msgstr "" - -msgid "" -"Because pacman uses many small files to keep track of packages,\\nthere is a " -"tendency for these files to become fragmented over time.\\nThis script " -"attempts to relocate these small files into one\\ncontinuous location on " -"your hard drive. The result is that the hard\\ndrive should be able to read " -"them faster, since the hard drive head\\ndoes not have to move around the " -"disk as much.\\n" -msgstr "" - -msgid "diff tool was not found, please install diffutils." -msgstr "" - -msgid "You must have correct permissions to optimize the database." -msgstr "" - -msgid "ERROR: Can not create temp directory for database building." -msgstr "" - -msgid "MD5sum'ing the old database..." -msgstr "" - -msgid "Tar'ing up %s..." -msgstr "" - -msgid "Tar'ing up %s failed." -msgstr "" - -msgid "Making and MD5sum'ing the new database..." -msgstr "" - -msgid "Untar'ing %s failed." -msgstr "" - -msgid "Syncing database to disk..." -msgstr "" - -msgid "Checking integrity..." -msgstr "" - -msgid "Integrity check FAILED, reverting to old database." -msgstr "" - -msgid "Rotating database into place..." -msgstr "" - -msgid "Finished. Your pacman database has been optimized." -msgstr "" - -msgid "Usage: pkgdelta [-q] <package1> <package2>\\n" -msgstr "" - -msgid "" -"\tpkgdelta will create a delta file between two packages.\\nThis delta file " -"can then be added to a database using repo-add.\\n\\n" -msgstr "" - -msgid "Example: pkgdelta pacman-3.0.0.pkg.tar.gz pacman-3.0.1.pkg.tar.gz" -msgstr "" - -msgid "" -"Copyright (c) 2009 Xavier Chantry <shiningxc@gmail.com>.\\n\\nThis is free " -"software; see the source for copying conditions.\\nThere is NO WARRANTY, to " -"the extent permitted by law.\\n" -msgstr "" - -msgid "Invalid package file '%s'." -msgstr "" - -msgid "The package names don't match : '%s' and '%s'" -msgstr "" - -msgid "The package architectures don't match : '%s' and '%s'" -msgstr "" - -msgid "Both packages have the same version : '%s'" -msgstr "" - -msgid "Generating delta from version %s to version %s" -msgstr "" - -msgid "Delta could not be created." -msgstr "" - -msgid "Generated delta : '%s'" -msgstr "" - -msgid "File '%s' does not exist" -msgstr "" - -msgid "Cannot find the xdelta3 binary! Is xdelta3 installed?" -msgstr "" - -msgid "Usage: repo-add [-d] [-f] [-q] <path-to-db> <package|delta> ...\\n" -msgstr "" - -msgid "Usage: repo-remove [-q] <path-to-db> <packagename|delta> ...\\n\\n" -msgstr "" - -msgid "" -"repo-add will update a package database by reading a package file." -"\\nMultiple packages to add can be specified on the command line.\\n\\n" -msgstr "" - -msgid "" -"repo-remove will update a package database by removing the package name" -"\\nspecified on the command line from the given repo database. Multiple" -"\\npackages to remove can be specified on the command line.\\n\\n" -msgstr "" - -msgid "" -"Use the -q/--quiet flag to minimize output to basic messages, warnings," -"\\nand errors.\\n\\n" -msgstr "" - -msgid "" -"Use the -d/--delta flag to automatically generate and add a delta file" -"\\nbetween the old entry and the new one, if the old package file is found" -"\\nnext to the new one.\\n\\n" -msgstr "" - -msgid "" -"Use the -f/--files flag to update a database including file entries.\\n\\n" -msgstr "" - -msgid "Example: repo-add /path/to/repo.db.tar.gz pacman-3.0.0.pkg.tar.gz" -msgstr "" - -msgid "Example: repo-remove /path/to/repo.db.tar.gz kernel26" -msgstr "" - -msgid "" -"Copyright (C) 2006-2008 Aaron Griffin <aaron@archlinux.org>.\\nCopyright (c) " -"2007-2008 Dan McGee <dan@archlinux.org>.\\n\\nThis is free software; see the " -"source for copying conditions.\\nThere is NO WARRANTY, to the extent " -"permitted by law.\\n" -msgstr "" - -msgid "No database entry for package '%s'." -msgstr "" - -msgid "Adding 'deltas' entry : %s -> %s" -msgstr "" - -msgid "Removing existing entry '%s'..." -msgstr "" - -msgid "An entry for '%s' already existed" -msgstr "" - -msgid "Creating '%s' db entry..." -msgstr "" - -msgid "Computing md5 checksums..." -msgstr "" - -msgid "Old package file not found: %s" -msgstr "" - -msgid "Failed to acquire lockfile: %s." -msgstr "" - -msgid "Held by process %s" -msgstr "" - -msgid "Repository file '%s' is not a proper pacman database." -msgstr "" - -msgid "Extracting database to a temporary location..." -msgstr "" - -msgid "Repository file '%s' was not found." -msgstr "" - -msgid "Repository file '%s' could not be created." -msgstr "" - -msgid "File '%s' not found." -msgstr "" - -msgid "Adding delta '%s'" -msgstr "" - -msgid "'%s' is not a package file, skipping" -msgstr "" - -msgid "Adding package '%s'" -msgstr "" - -msgid "Searching for delta '%s'..." -msgstr "" - -msgid "Delta matching '%s' not found." -msgstr "" - -msgid "Searching for package '%s'..." -msgstr "" - -msgid "Package matching '%s' not found." -msgstr "" - -msgid "Invalid command name '%s' specified." -msgstr "" - -msgid "Cannot create temp directory for database building." -msgstr "" - -msgid "Creating updated database file '%s'" -msgstr "" - -msgid "'%s' does not have a valid archive extension." -msgstr "" - -msgid "No packages remain, creating empty database." -msgstr "" - -msgid "No packages modified, nothing to do." -msgstr "" diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index c8e987ca..36ac7280 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -395,7 +395,7 @@ run_pacman() { if type -p sudo >/dev/null; then cmd="sudo $cmd" else - cmd="su -c '$cmd'" + cmd="su root -c '$cmd'" fi fi eval "$cmd" diff --git a/src/pacman/query.c b/src/pacman/query.c index d2bfe690..d27044eb 100644 --- a/src/pacman/query.c +++ b/src/pacman/query.c @@ -92,6 +92,16 @@ static int search_path(char **filename, struct stat *bufptr) return -1; } +static void print_query_fileowner(const char *filename, pmpkg_t *info) +{ + if (!config->quiet) { + printf(_("%s is owned by %s %s\n"), filename, + alpm_pkg_get_name(info), alpm_pkg_get_version(info)); + } else { + printf("%s\n", alpm_pkg_get_name(info)); + } +} + static int query_fileowner(alpm_list_t *targets) { int ret = 0; @@ -156,17 +166,21 @@ static int query_fileowner(alpm_list_t *targets) bname = mbasename(filename); dname = mdirname(filename); - rpath = resolve_path(dname); + /* for files in '/', there is no directory name to match */ + if (strcmp(dname, "") == 0) { + rpath = NULL; + } else { + rpath = resolve_path(dname); - /* this odd conditional is to ensure files in '/' can be checked */ - if(!rpath && strcmp(dname, "") != 0) { - pm_fprintf(stderr, PM_LOG_ERROR, _("cannot determine real path for '%s': %s\n"), - filename, strerror(errno)); - free(filename); - free(dname); - free(rpath); - ret++; - continue; + if(!rpath) { + pm_fprintf(stderr, PM_LOG_ERROR, _("cannot determine real path for '%s': %s\n"), + filename, strerror(errno)); + free(filename); + free(dname); + free(rpath); + ret++; + continue; + } } free(dname); @@ -183,6 +197,13 @@ static int query_fileowner(alpm_list_t *targets) continue; } + /* for files in '/', there is no directory name to match */ + if(!rpath) { + print_query_fileowner(filename, info); + found = 1; + continue; + } + if(strlen(pkgfile) > max_length) { pm_fprintf(stderr, PM_LOG_ERROR, _("path too long: %s%s\n"), root, pkgfile); } @@ -194,12 +215,7 @@ static int query_fileowner(alpm_list_t *targets) free(pdname); if(ppath && strcmp(ppath, rpath) == 0) { - if (!config->quiet) { - printf(_("%s is owned by %s %s\n"), filename, - alpm_pkg_get_name(info), alpm_pkg_get_version(info)); - } else { - printf("%s\n", alpm_pkg_get_name(info)); - } + print_query_fileowner(filename, info); found = 1; } free(ppath); |