summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--acinclude.m47
-rwxr-xr-xcontrib/bacman.in16
-rw-r--r--lib/libalpm/alpm.h487
-rw-r--r--lib/libalpm/be_package.c10
-rw-r--r--lib/libalpm/db.c65
-rw-r--r--lib/libalpm/deps.c2
-rw-r--r--lib/libalpm/diskspace.c4
-rw-r--r--lib/libalpm/dload.c6
-rw-r--r--lib/libalpm/package.c46
-rw-r--r--lib/libalpm/po/LINGUAS1
-rw-r--r--lib/libalpm/po/ko.po548
-rw-r--r--lib/libalpm/remove.c8
-rw-r--r--lib/libalpm/trans.c32
-rw-r--r--po/LINGUAS1
-rw-r--r--po/ko.po1775
-rw-r--r--scripts/makepkg.sh.in2
-rw-r--r--src/pacman/query.c48
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;
}
diff --git a/po/LINGUAS b/po/LINGUAS
index 3ce69e3c..fac79ebd 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -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);