diff options
Diffstat (limited to 'src/pacman')
-rw-r--r-- | src/pacman/add.c | 28 | ||||
-rw-r--r-- | src/pacman/conf.c | 81 | ||||
-rw-r--r-- | src/pacman/deptest.c | 19 | ||||
-rw-r--r-- | src/pacman/download.c | 59 | ||||
-rw-r--r-- | src/pacman/list.c | 6 | ||||
-rw-r--r-- | src/pacman/log.c | 17 | ||||
-rw-r--r-- | src/pacman/package.c | 71 | ||||
-rw-r--r-- | src/pacman/pacman.c | 157 | ||||
-rw-r--r-- | src/pacman/query.c | 21 | ||||
-rw-r--r-- | src/pacman/remove.c | 29 | ||||
-rw-r--r-- | src/pacman/sync.c | 127 | ||||
-rw-r--r-- | src/pacman/trans.c | 39 | ||||
-rw-r--r-- | src/pacman/util.c | 5 | ||||
-rw-r--r-- | src/pacman/util.h | 2 |
14 files changed, 339 insertions, 322 deletions
diff --git a/src/pacman/add.c b/src/pacman/add.c index c63e14b5..04182df9 100644 --- a/src/pacman/add.c +++ b/src/pacman/add.c @@ -22,6 +22,7 @@ #include <stdlib.h> #include <stdio.h> #include <string.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -31,6 +32,7 @@ #include "trans.h" #include "add.h" #include "conf.h" +#include "util.h" extern config_t *config; @@ -64,34 +66,34 @@ int pacman_add(list_t *targets) config->flags, cb_trans_evt, cb_trans_conv) == -1) { ERR(NL, "%s\n", alpm_strerror(pm_errno)); if(pm_errno == PM_ERR_HANDLE_LOCK) { - MSG(NL, " if you're sure a package manager is not already running,\n" - " you can remove %s\n", PM_LOCK); + MSG(NL, _(" if you're sure a package manager is not already running,\n" + " you can remove %s\n"), PM_LOCK); } return(1); } /* and add targets to it */ - MSG(NL, "loading package data... "); + MSG(NL, _("loading package data... ")); for(i = targets; i; i = i->next) { if(alpm_trans_addtarget(i->data) == -1) { - ERR(NL, "failed to add target '%s' (%s)\n", (char *)i->data, alpm_strerror(pm_errno)); + ERR(NL, _("failed to add target '%s' (%s)\n"), (char *)i->data, alpm_strerror(pm_errno)); retval = 1; goto cleanup; } } - MSG(CL, "done."); + MSG(CL, _("done.")); /* Step 2: "compute" the transaction based on targets and flags */ if(alpm_trans_prepare(&data) == -1) { PM_LIST *i; - ERR(NL, "failed to prepare transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to prepare transaction (%s)\n"), alpm_strerror(pm_errno)); switch(pm_errno) { case PM_ERR_UNSATISFIED_DEPS: for(i = alpm_list_first(data); i; i = alpm_list_next(i)) { PM_DEPMISS *miss = alpm_list_getdata(i); - MSG(NL, ":: %s: requires %s", alpm_dep_getinfo(miss, PM_DEP_TARGET), + MSG(NL, _(":: %s: requires %s"), alpm_dep_getinfo(miss, PM_DEP_TARGET), alpm_dep_getinfo(miss, PM_DEP_NAME)); switch((int)alpm_dep_getinfo(miss, PM_DEP_MOD)) { case PM_DEP_MOD_EQ: MSG(CL, "=%s", alpm_dep_getinfo(miss, PM_DEP_VERSION)); break; @@ -105,7 +107,7 @@ int pacman_add(list_t *targets) case PM_ERR_CONFLICTING_DEPS: for(i = alpm_list_first(data); i; i = alpm_list_next(i)) { PM_DEPMISS *miss = alpm_list_getdata(i); - MSG(NL, ":: %s: conflicts with %s", + MSG(NL, _(":: %s: conflicts with %s"), alpm_dep_getinfo(miss, PM_DEP_TARGET), alpm_dep_getinfo(miss, PM_DEP_NAME)); } alpm_list_free(data); @@ -115,20 +117,20 @@ int pacman_add(list_t *targets) PM_CONFLICT *conflict = alpm_list_getdata(i); switch((int)alpm_conflict_getinfo(conflict, PM_CONFLICT_TYPE)) { case PM_CONFLICT_TYPE_TARGET: - MSG(NL, "%s exists in \"%s\" (target) and \"%s\" (target)", + MSG(NL, _("%s exists in \"%s\" (target) and \"%s\" (target)"), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_FILE), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_TARGET), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_CTARGET)); break; case PM_CONFLICT_TYPE_FILE: - MSG(NL, "%s: %s exists in filesystem", + MSG(NL, _("%s: %s exists in filesystem"), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_TARGET), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_FILE)); break; } } alpm_list_free(data); - MSG(NL, "\nerrors occurred, no packages were upgraded.\n"); + MSG(NL, _("\nerrors occurred, no packages were upgraded.\n")); break; default: break; @@ -140,7 +142,7 @@ int pacman_add(list_t *targets) /* Step 3: actually perform the installation */ if(alpm_trans_commit(NULL) == -1) { - ERR(NL, "failed to commit transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to commit transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -149,7 +151,7 @@ int pacman_add(list_t *targets) */ cleanup: if(alpm_trans_release() == -1) { - ERR(NL, "failed to release transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to release transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; } diff --git a/src/pacman/conf.c b/src/pacman/conf.c index 2a49fadc..1caefd32 100644 --- a/src/pacman/conf.c +++ b/src/pacman/conf.c @@ -23,6 +23,7 @@ #include <stdio.h> #include <string.h> #include <limits.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -98,13 +99,13 @@ int parseconfig(char *file, config_t *config) ptr++; strncpy(section, ptr, min(255, strlen(ptr)-1)); section[min(255, strlen(ptr)-1)] = '\0'; - vprint("config: new section '%s'\n", section); + vprint(_("config: new section '%s'\n"), section); if(!strlen(section)) { - ERR(NL, "config: line %d: bad section name\n", linenum); + ERR(NL, _("config: line %d: bad section name\n"), linenum); return(1); } if(!strcmp(section, "local")) { - ERR(NL, "config: line %d: '%s' is reserved and cannot be used as a package tree\n", + ERR(NL, _("config: line %d: '%s' is reserved and cannot be used as a package tree\n"), linenum, section); return(1); } @@ -130,29 +131,29 @@ int parseconfig(char *file, config_t *config) ptr = line; key = strsep(&ptr, "="); if(key == NULL) { - ERR(NL, "config: line %d: syntax error\n", linenum); + ERR(NL, _("config: line %d: syntax error\n"), linenum); return(1); } strtrim(key); key = strtoupper(key); if(!strlen(section) && strcmp(key, "INCLUDE")) { - ERR(NL, "config: line %d: all directives must belong to a section\n", linenum); + ERR(NL, _("config: line %d: all directives must belong to a section\n"), linenum); return(1); } if(ptr == NULL) { if(!strcmp(key, "NOPASSIVEFTP")) { config->nopassiveftp = 1; - vprint("config: nopassiveftp\n"); + vprint(_("config: nopassiveftp\n")); } else if(!strcmp(key, "USESYSLOG")) { if(alpm_set_option(PM_OPT_USESYSLOG, (long)1) == -1) { - ERR(NL, "failed to set option USESYSLOG (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option USESYSLOG (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: usesyslog\n"); + vprint(_("config: usesyslog\n")); } else if(!strcmp(key, "ILOVECANDY")) { config->chomp = 1; } else { - ERR(NL, "config: line %d: syntax error\n", linenum); + ERR(NL, _("config: line %d: syntax error\n"), linenum); return(1); } } else { @@ -160,7 +161,7 @@ int parseconfig(char *file, config_t *config) if(!strcmp(key, "INCLUDE")) { char conf[PATH_MAX]; strncpy(conf, ptr, PATH_MAX); - vprint("config: including %s\n", conf); + vprint(_("config: including %s\n"), conf); parseconfig(conf, config); } else if(!strcmp(section, "options")) { if(!strcmp(key, "NOUPGRADE")) { @@ -169,66 +170,66 @@ int parseconfig(char *file, config_t *config) while((q = strchr(p, ' '))) { *q = '\0'; if(alpm_set_option(PM_OPT_NOUPGRADE, (long)p) == -1) { - ERR(NL, "failed to set option NOUPGRADE (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option NOUPGRADE (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: noupgrade: %s\n", p); + vprint(_("config: noupgrade: %s\n"), p); p = q; p++; } if(alpm_set_option(PM_OPT_NOUPGRADE, (long)p) == -1) { - ERR(NL, "failed to set option NOUPGRADE (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option NOUPGRADE (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: noupgrade: %s\n", p); + vprint(_("config: noupgrade: %s\n"), p); } else if(!strcmp(key, "NOEXTRACT")) { char *p = ptr; char *q; while((q = strchr(p, ' '))) { *q = '\0'; if(alpm_set_option(PM_OPT_NOEXTRACT, (long)p) == -1) { - ERR(NL, "failed to set option NOEXTRACT (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option NOEXTRACT (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: noextract: %s\n", p); + vprint(_("config: noextract: %s\n"), p); p = q; p++; } if(alpm_set_option(PM_OPT_NOEXTRACT, (long)p) == -1) { - ERR(NL, "failed to set option NOEXTRACT (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option NOEXTRACT (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: noextract: %s\n", p); + vprint(_("config: noextract: %s\n"), p); } else if(!strcmp(key, "IGNOREPKG")) { char *p = ptr; char *q; while((q = strchr(p, ' '))) { *q = '\0'; if(alpm_set_option(PM_OPT_IGNOREPKG, (long)p) == -1) { - ERR(NL, "failed to set option IGNOREPKG (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option IGNOREPKG (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: ignorepkg: %s\n", p); + vprint(_("config: ignorepkg: %s\n"), p); p = q; p++; } if(alpm_set_option(PM_OPT_IGNOREPKG, (long)p) == -1) { - ERR(NL, "failed to set option IGNOREPKG (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option IGNOREPKG (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: ignorepkg: %s\n", p); + vprint(_("config: ignorepkg: %s\n"), p); } else if(!strcmp(key, "HOLDPKG")) { char *p = ptr; char *q; while((q = strchr(p, ' '))) { *q = '\0'; config->holdpkg = list_add(config->holdpkg, strdup(p)); - vprint("config: holdpkg: %s\n", p); + vprint(_("config: holdpkg: %s\n"), p); p = q; p++; } config->holdpkg = list_add(config->holdpkg, strdup(p)); - vprint("config: holdpkg: %s\n", p); + vprint(_("config: holdpkg: %s\n"), p); } else if(!strcmp(key, "DBPATH")) { /* shave off the leading slash, if there is one */ if(*ptr == '/') { @@ -236,7 +237,7 @@ int parseconfig(char *file, config_t *config) } FREE(config->dbpath); config->dbpath = strdup(ptr); - vprint("config: dbpath: %s\n", ptr); + vprint(_("config: dbpath: %s\n"), ptr); } else if(!strcmp(key, "CACHEDIR")) { /* shave off the leading slash, if there is one */ if(*ptr == '/') { @@ -244,17 +245,17 @@ int parseconfig(char *file, config_t *config) } FREE(config->cachedir); config->cachedir = strdup(ptr); - vprint("config: cachedir: %s\n", ptr); + vprint(_("config: cachedir: %s\n"), ptr); } else if (!strcmp(key, "LOGFILE")) { if(alpm_set_option(PM_OPT_LOGFILE, (long)ptr) == -1) { - ERR(NL, "failed to set option LOGFILE (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option LOGFILE (%s)\n"), alpm_strerror(pm_errno)); return(1); } - vprint("config: log file: %s\n", ptr); + vprint(_("config: log file: %s\n"), ptr); } else if (!strcmp(key, "XFERCOMMAND")) { FREE(config->xfercommand); config->xfercommand = strndup(ptr, PATH_MAX); - vprint("config: xfercommand: %s\n", config->xfercommand); + vprint(_("config: xfercommand: %s\n"), config->xfercommand); } else if (!strcmp(key, "PROXYSERVER")) { char *p; if(config->proxyhost) { @@ -264,18 +265,18 @@ int parseconfig(char *file, config_t *config) if(p) { p += 3; if(p == NULL || *p == '\0') { - ERR(NL, "config: line %d: bad server location\n", linenum); + ERR(NL, _("config: line %d: bad server location\n"), linenum); return(1); } ptr = p; } config->proxyhost = strndup(ptr, PATH_MAX); - vprint("config: proxyserver: %s\n", config->proxyhost); + vprint(_("config: proxyserver: %s\n"), config->proxyhost); } else if (!strcmp(key, "PROXYPORT")) { config->proxyport = (unsigned short)atoi(ptr); - vprint("config: proxyport: %u\n", config->proxyport); + vprint(_("config: proxyport: %u\n"), config->proxyport); } else { - ERR(NL, "config: line %d: syntax error\n", linenum); + ERR(NL, _("config: line %d: syntax error\n"), linenum); return(1); } } else { @@ -290,13 +291,13 @@ int parseconfig(char *file, config_t *config) p = strstr(ptr, "://"); if(p == NULL) { - ERR(NL, "config: line %d: bad server location\n", linenum); + ERR(NL, _("config: line %d: bad server location\n"), linenum); return(1); } *p = '\0'; p++; p++; p++; if(p == NULL || *p == '\0') { - ERR(NL, "config: line %d: bad server location\n", linenum); + ERR(NL, _("config: line %d: bad server location\n"), linenum); return(1); } server->protocol = strdup(ptr); @@ -313,7 +314,7 @@ int parseconfig(char *file, config_t *config) server->path = strdup(slash); } else { if((server->path = (char *)malloc(strlen(slash)+2)) == NULL) { - ERR(NL, "could not allocate %d bytes\n", sizeof(strlen(slash+2))); + ERR(NL, _("could not allocate %d bytes\n"), sizeof(strlen(slash+2))); return(1); } sprintf(server->path, "%s/", slash); @@ -328,20 +329,20 @@ int parseconfig(char *file, config_t *config) } else { server->path = (char *)malloc(strlen(p)+2); if(server->path == NULL) { - ERR(NL, "could not allocate %d bytes\n", sizeof(strlen(p+2))); + ERR(NL, _("could not allocate %d bytes\n"), sizeof(strlen(p+2))); return(1); } sprintf(server->path, "%s/", p); } } else { - ERR(NL, "config: line %d: protocol %s is not supported\n", linenum, ptr); + ERR(NL, _("config: line %d: protocol %s is not supported\n"), linenum, ptr); return(1); } /* add to the list */ - vprint("config: %s: server: %s %s %s\n", section, server->protocol, server->server, server->path); + vprint(_("config: %s: server: %s %s %s\n"), section, server->protocol, server->server, server->path); sync->servers = list_add(sync->servers, server); } else { - ERR(NL, "config: line %d: syntax error\n", linenum); + ERR(NL, _("config: line %d: syntax error\n"), linenum); return(1); } } diff --git a/src/pacman/deptest.c b/src/pacman/deptest.c index 1ed11aa0..425bd1da 100644 --- a/src/pacman/deptest.c +++ b/src/pacman/deptest.c @@ -24,6 +24,7 @@ #include <stdlib.h> #include <stdio.h> #include <string.h> +#include <libintl.h> #include <alpm.h> /* pacman */ #include "util.h" @@ -60,8 +61,8 @@ int pacman_deptest(list_t *targets) if(alpm_trans_init(PM_TRANS_TYPE_ADD, 0, NULL, NULL) == -1) { ERR(NL, "%s", alpm_strerror(pm_errno)); if(pm_errno == PM_ERR_HANDLE_LOCK) { - MSG(NL, " if you're sure a package manager is not already running,\n" \ - " you can remove %s\n", PM_LOCK); + MSG(NL, _(" if you're sure a package manager is not already running,\n" + " you can remove %s\n"), PM_LOCK); } return(1); } @@ -73,7 +74,7 @@ int pacman_deptest(list_t *targets) */ str = (char *)malloc(strlen("name=dummy|version=1.0-1")+1); if(str == NULL) { - ERR(NL, "memory allocation failure\n"); + ERR(NL, _("memory allocation failure\n")); retval = 1; goto cleanup; } @@ -83,10 +84,10 @@ int pacman_deptest(list_t *targets) strcat(str, "|depend="); strcat(str, i->data); } - vprint("add target %s\n", str); + vprint(_("add target %s\n"), str); if(alpm_trans_addtarget(str) == -1) { FREE(str); - ERR(NL, "could not add target (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("could not add target (%s)\n"), alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -106,7 +107,7 @@ int pacman_deptest(list_t *targets) for(lp = alpm_list_first(data); lp; lp = alpm_list_next(lp)) { PM_DEPMISS *miss = alpm_list_getdata(lp); if(!config->op_d_resolve) { - MSG(NL, "requires: %s", alpm_dep_getinfo(miss, PM_DEP_NAME)); + MSG(NL, _("requires: %s"), alpm_dep_getinfo(miss, PM_DEP_NAME)); switch((int)alpm_dep_getinfo(miss, PM_DEP_MOD)) { case PM_DEP_MOD_EQ: MSG(CL, "=%s", alpm_dep_getinfo(miss, PM_DEP_VERSION)); break; case PM_DEP_MOD_GE: MSG(CL, ">=%s", alpm_dep_getinfo(miss, PM_DEP_VERSION)); break; @@ -122,7 +123,7 @@ int pacman_deptest(list_t *targets) /* we can't auto-resolve conflicts */ for(lp = alpm_list_first(data); lp; lp = alpm_list_next(lp)) { PM_DEPMISS *miss = alpm_list_getdata(lp); - MSG(NL, "conflict: %s", alpm_dep_getinfo(miss, PM_DEP_NAME)); + MSG(NL, _("conflict: %s"), alpm_dep_getinfo(miss, PM_DEP_NAME)); } retval = 127; alpm_list_free(data); @@ -136,7 +137,7 @@ int pacman_deptest(list_t *targets) /* TODO: handle version comparators (eg, glibc>=2.2.5) */ if(retval == 126 && synctargs != NULL) { if(alpm_trans_release() == -1) { - ERR(NL, "could not release transaction (%s)", alpm_strerror(pm_errno)); + ERR(NL, _("could not release transaction (%s)"), alpm_strerror(pm_errno)); FREELIST(synctargs); return(1); } @@ -153,7 +154,7 @@ int pacman_deptest(list_t *targets) cleanup: if(alpm_trans_release() == -1) { - ERR(NL, "could not release transaction (%s)", alpm_strerror(pm_errno)); + ERR(NL, _("could not release transaction (%s)"), alpm_strerror(pm_errno)); retval = 1; } diff --git a/src/pacman/download.c b/src/pacman/download.c index 9a80e29e..b59aeada 100644 --- a/src/pacman/download.c +++ b/src/pacman/download.c @@ -29,6 +29,7 @@ #include <time.h> #include <sys/time.h> #include <ftplib.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -204,27 +205,27 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, if(!config->xfercommand && strcmp(server->protocol, "file")) { if(!strcmp(server->protocol, "ftp") && !config->proxyhost) { FtpInit(); - vprint("connecting to %s:21\n", server->server); + vprint(_("connecting to %s:21\n"), server->server); if(!FtpConnect(server->server, &control)) { - ERR(NL, "cannot connect to %s\n", server->server); + ERR(NL, _("cannot connect to %s\n"), server->server); continue; } if(!FtpLogin("anonymous", "arch@guest", control)) { - ERR(NL, "anonymous login failed\n"); + ERR(NL, _("anonymous login failed\n")); FtpQuit(control); continue; } if(!FtpChdir(server->path, control)) { - ERR(NL, "could not cwd to %s: %s\n", server->path, FtpLastResponse(control)); + ERR(NL, _("could not cwd to %s: %s\n"), server->path, FtpLastResponse(control)); FtpQuit(control); continue; } if(!config->nopassiveftp) { if(!FtpOptions(FTPLIB_CONNMODE, FTPLIB_PASSIVE, control)) { - WARN(NL, "failed to set passive mode\n"); + WARN(NL, _("failed to set passive mode\n")); } } else { - vprint("FTP passive mode not set\n"); + vprint(_("FTP passive mode not set\n")); } } else if(config->proxyhost) { char *host; @@ -232,12 +233,12 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, host = (config->proxyhost) ? config->proxyhost : server->server; port = (config->proxyport) ? config->proxyport : 80; if(strchr(host, ':')) { - vprint("connecting to %s\n", host); + vprint(_("connecting to %s\n"), host); } else { - vprint("connecting to %s:%u\n", host, port); + vprint(_("connecting to %s:%u\n"), host, port); } if(!HttpConnect(host, port, &control)) { - ERR(NL, "cannot connect to %s\n", host); + ERR(NL, _("cannot connect to %s\n"), host); continue; } } @@ -296,18 +297,18 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, /* cwd to the download directory */ getcwd(cwd, PATH_MAX); if(chdir(localpath)) { - ERR(NL, "could not chdir to %s\n", localpath); + ERR(NL, _("could not chdir to %s\n"), localpath); return(1); } /* execute the parsed command via /bin/sh -c */ - vprint("running command: %s\n", parsedCmd); + vprint(_("running command: %s\n"), parsedCmd); ret = system(parsedCmd); if(ret == -1) { - ERR(NL, "running XferCommand: fork failed!\n"); + ERR(NL, _("running XferCommand: fork failed!\n")); return(1); } else if(ret != 0) { /* download failed */ - vprint("XferCommand command returned non-zero status code (%d)\n", ret); + vprint(_("XferCommand command returned non-zero status code (%d)\n"), ret); } else { /* download was successful */ complete = list_add(complete, fn); @@ -352,18 +353,18 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, if(!strcmp(server->protocol, "ftp") && !config->proxyhost) { if(!FtpSize(fn, &fsz, FTPLIB_IMAGE, control)) { - WARN(NL, "failed to get filesize for %s\n", fn); + WARN(NL, _("failed to get filesize for %s\n"), fn); } /* check mtimes */ if(mtime1) { char fmtime[64]; if(!FtpModDate(fn, fmtime, sizeof(fmtime)-1, control)) { - WARN(NL, "failed to get mtime for %s\n", fn); + WARN(NL, _("failed to get mtime for %s\n"), fn); } else { strtrim(fmtime); if(mtime1 && !strcmp(mtime1, fmtime)) { /* mtimes are identical, skip this file */ - vprint("mtimes are identical, skipping %s\n", fn); + vprint(_("mtimes are identical, skipping %s\n"), fn); filedone = -1; complete = list_add(complete, fn); } else { @@ -378,14 +379,14 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, if(!stat(output, &st)) { offset = (int)st.st_size; if(!FtpRestart(offset, control)) { - WARN(NL, "failed to resume download -- restarting\n"); + WARN(NL, _("failed to resume download -- restarting\n")); /* can't resume: */ /* unlink the file in order to restart download from scratch */ unlink(output); } } if(!FtpGet(output, fn, FTPLIB_IMAGE, control)) { - ERR(NL, "\nfailed downloading %s from %s: %s\n", fn, server->server, FtpLastResponse(control)); + ERR(NL, _("\nfailed downloading %s from %s: %s\n"), fn, server->server, FtpLastResponse(control)); /* we leave the partially downloaded file in place so it can be resumed later */ } else { filedone = 1; @@ -406,12 +407,12 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, host = (config->proxyhost) ? config->proxyhost : server->server; port = (config->proxyhost) ? config->proxyport : 80; if(strchr(host, ':')) { - vprint("connecting to %s\n", host); + vprint(_("connecting to %s\n"), host); } else { - vprint("connecting to %s:%u\n", host, port); + vprint(_("connecting to %s:%u\n"), host, port); } if(!HttpConnect(host, port, &control)) { - ERR(NL, "cannot connect to %s\n", host); + ERR(NL, _("cannot connect to %s\n"), host); continue; } /* set up our progress bar's callback (and idle timeout) */ @@ -456,11 +457,11 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, if(!HttpGet(server->server, output, src, &fsz, control, offset, (mtime1) ? &fmtime1 : NULL, (mtime2) ? &fmtime2 : NULL)) { if(strstr(FtpLastResponse(control), "304")) { - vprint("mtimes are identical, skipping %s\n", fn); + vprint(_("mtimes are identical, skipping %s\n"), fn); filedone = -1; complete = list_add(complete, fn); } else { - ERR(NL, "\nfailed downloading %s from %s: %s\n", src, server->server, FtpLastResponse(control)); + ERR(NL, _("\nfailed downloading %s from %s: %s\n"), src, server->server, FtpLastResponse(control)); /* we leave the partially downloaded file in place so it can be resumed later */ } } else { @@ -471,7 +472,7 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, fmtime2.tm_year+1900, fmtime2.tm_mon+1, fmtime2.tm_mday, fmtime2.tm_hour, fmtime2.tm_min, fmtime2.tm_sec); } else { - WARN(NL, "failed to get mtime for %s\n", fn); + WARN(NL, _("failed to get mtime for %s\n"), fn); } } filedone = 1; @@ -479,10 +480,10 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, } else if(!strcmp(server->protocol, "file")) { char src[PATH_MAX]; snprintf(src, PATH_MAX, "%s%s", server->path, fn); - vprint("copying %s to %s/%s\n", src, localpath, fn); + vprint(_("copying %s to %s/%s\n"), src, localpath, fn); /* local repository, just copy the file */ if(copyfile(src, output)) { - ERR(NL, "failed copying %s\n", src); + ERR(NL, _("failed copying %s\n"), src); } else { filedone = 1; } @@ -498,7 +499,7 @@ int downloadfiles_forreal(list_t *servers, const char *localpath, for(j = strlen(out); j < maxcols-64; j++) { printf(" "); } - fputs("] 100% LOCAL ", stdout); + fputs(_("] 100% LOCAL "), stdout); } else { log_progress(control, fsz-offset, &fsz); } @@ -560,7 +561,7 @@ char *fetch_pkgurl(char *target) /* do not download the file if it exists in the current dir */ if(stat(fn, &buf) == 0) { - vprint(" %s is already in the current directory\n", fn); + vprint(_(" %s is already in the current directory\n"), fn); } else { server_t *server; list_t *servers = NULL; @@ -574,7 +575,7 @@ char *fetch_pkgurl(char *target) files = list_add(NULL, fn); if(downloadfiles(servers, ".", files)) { - ERR(NL, "failed to download %s\n", target); + ERR(NL, _("failed to download %s\n"), target); return(NULL); } FREELISTPTR(files); diff --git a/src/pacman/list.c b/src/pacman/list.c index a7e9ce13..0a080373 100644 --- a/src/pacman/list.c +++ b/src/pacman/list.c @@ -23,7 +23,9 @@ #include <stdlib.h> #include <string.h> #include <stdio.h> +#include <libintl.h> /* pacman */ +#include "util.h" #include "list.h" extern int maxcols; @@ -138,7 +140,7 @@ void list_display(const char *title, list_t *list) } printf("\n"); } else { - printf("None\n"); + printf(_("None\n")); } } @@ -166,7 +168,7 @@ void PM_LIST_display(const char *title, PM_LIST *list) } printf("\n"); } else { - printf("None\n"); + printf(_("None\n")); } } diff --git a/src/pacman/log.c b/src/pacman/log.c index f989a79c..35cef028 100644 --- a/src/pacman/log.c +++ b/src/pacman/log.c @@ -24,6 +24,7 @@ #include <string.h> #include <stdarg.h> #include <ctype.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -46,25 +47,25 @@ void cb_log(unsigned short level, char *msg) switch(level) { case PM_LOG_DEBUG: - sprintf(str, "debug"); + sprintf(str, _("debug")); break; case PM_LOG_ERROR: - sprintf(str, "error"); + sprintf(str, _("error")); break; case PM_LOG_WARNING: - sprintf(str, "warning"); + sprintf(str, _("warning")); break; case PM_LOG_FLOW1: - sprintf(str, "flow1"); + sprintf(str, _("flow1")); break; case PM_LOG_FLOW2: - sprintf(str, "flow2"); + sprintf(str, _("flow2")); break; case PM_LOG_FUNCTION: - sprintf(str, "function"); + sprintf(str, _("function")); break; default: - sprintf(str, "???"); + sprintf(str, _("???")); break; } @@ -147,7 +148,7 @@ int yesno(char *fmt, ...) *++pch = 0; strtrim(response); - if(!strcasecmp(response, "Y") || !strcasecmp(response, "YES") || !strlen(response)) { + if(!strcasecmp(response, _("Y")) || !strcasecmp(response, _("YES")) || !strlen(response)) { return(1); } } diff --git a/src/pacman/package.c b/src/pacman/package.c index 3e2956c8..72cf3c83 100644 --- a/src/pacman/package.c +++ b/src/pacman/package.c @@ -24,6 +24,7 @@ #include <string.h> #include <limits.h> #include <sys/stat.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -42,43 +43,43 @@ void dump_pkg_full(PM_PKG *pkg, int level) return; } - printf("Name : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME)); - printf("Version : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); + printf(_("Name : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME)); + printf(_("Version : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); - PM_LIST_display("Groups :", alpm_pkg_getinfo(pkg, PM_PKG_GROUPS)); + PM_LIST_display(_("Groups :"), alpm_pkg_getinfo(pkg, PM_PKG_GROUPS)); - printf("Packager : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_PACKAGER)); - printf("URL : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_URL)); - PM_LIST_display("License :", alpm_pkg_getinfo(pkg, PM_PKG_LICENSE)); - printf("Architecture : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_ARCH)); - printf("Size : %ld\n", (long int)alpm_pkg_getinfo(pkg, PM_PKG_SIZE)); + printf(_("Packager : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_PACKAGER)); + printf(_("URL : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_URL)); + PM_LIST_display(_("License :"), alpm_pkg_getinfo(pkg, PM_PKG_LICENSE)); + printf(_("Architecture : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_ARCH)); + printf(_("Size : %ld\n"), (long int)alpm_pkg_getinfo(pkg, PM_PKG_SIZE)); date = alpm_pkg_getinfo(pkg, PM_PKG_BUILDDATE); - printf("Build Date : %s %s\n", date, strlen(date) ? "UTC" : ""); + printf(_("Build Date : %s %s\n"), date, strlen(date) ? "UTC" : ""); date = alpm_pkg_getinfo(pkg, PM_PKG_INSTALLDATE); - printf("Install Date : %s %s\n", date, strlen(date) ? "UTC" : ""); + printf(_("Install Date : %s %s\n"), date, strlen(date) ? "UTC" : ""); - printf("Install Script : %s\n", alpm_pkg_getinfo(pkg, PM_PKG_SCRIPLET) ? "Yes" : "No"); + printf(_("Install Script : %s\n"), alpm_pkg_getinfo(pkg, PM_PKG_SCRIPLET) ? "Yes" : "No"); - printf("Reason: : "); + printf(_("Reason: : ")); switch((int)alpm_pkg_getinfo(pkg, PM_PKG_REASON)) { case PM_PKG_REASON_EXPLICIT: - printf("Explicitly installed\n"); + printf(_("Explicitly installed\n")); break; case PM_PKG_REASON_DEPEND: - printf("Installed as a dependency for another package\n"); + printf(_("Installed as a dependency for another package\n")); break; default: - printf("Unknown\n"); + printf(_("Unknown\n")); break; } - PM_LIST_display("Provides :", alpm_pkg_getinfo(pkg, PM_PKG_PROVIDES)); - PM_LIST_display("Depends On :", alpm_pkg_getinfo(pkg, PM_PKG_DEPENDS)); - PM_LIST_display("Required By :", alpm_pkg_getinfo(pkg, PM_PKG_REQUIREDBY)); - PM_LIST_display("Conflicts With :", alpm_pkg_getinfo(pkg, PM_PKG_CONFLICTS)); + PM_LIST_display(_("Provides :"), alpm_pkg_getinfo(pkg, PM_PKG_PROVIDES)); + PM_LIST_display(_("Depends On :"), alpm_pkg_getinfo(pkg, PM_PKG_DEPENDS)); + PM_LIST_display(_("Required By :"), alpm_pkg_getinfo(pkg, PM_PKG_REQUIREDBY)); + PM_LIST_display(_("Conflicts With :"), alpm_pkg_getinfo(pkg, PM_PKG_CONFLICTS)); - printf("Description : "); + printf(_("Description : ")); indentprint(alpm_pkg_getinfo(pkg, PM_PKG_DESC), 17); printf("\n"); @@ -102,14 +103,14 @@ void dump_pkg_full(PM_PKG *pkg, int level) if(!stat(path, &buf)) { char *md5sum = alpm_get_md5sum(path); if(md5sum == NULL) { - ERR(NL, "error calculating md5sum for %s\n", path); + ERR(NL, _("error calculating md5sum for %s\n"), path); FREE(str); continue; } - printf("%sMODIFIED\t%s\n", strcmp(md5sum, ptr) ? "" : "NOT ", path); + printf(_("%sMODIFIED\t%s\n"), strcmp(md5sum, ptr) ? "" : "NOT ", path); FREE(md5sum); } else { - printf("MISSING\t\t%s\n", path); + printf(_("MISSING\t\t%s\n"), path); } FREE(str); } @@ -127,20 +128,20 @@ void dump_pkg_sync(PM_PKG *pkg, char *treename) return; } - printf("Repository : %s\n", treename); - printf("Name : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME)); - printf("Version : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); + printf(_("Repository : %s\n"), treename); + printf(_("Name : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME)); + printf(_("Version : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); - PM_LIST_display("Groups :", alpm_pkg_getinfo(pkg, PM_PKG_GROUPS)); - PM_LIST_display("Provides :", alpm_pkg_getinfo(pkg, PM_PKG_PROVIDES)); - PM_LIST_display("Depends On :", alpm_pkg_getinfo(pkg, PM_PKG_DEPENDS)); - PM_LIST_display("Conflicts With :", alpm_pkg_getinfo(pkg, PM_PKG_CONFLICTS)); - PM_LIST_display("Replaces :", alpm_pkg_getinfo(pkg, PM_PKG_REPLACES)); + PM_LIST_display(_("Groups :"), alpm_pkg_getinfo(pkg, PM_PKG_GROUPS)); + PM_LIST_display(_("Provides :"), alpm_pkg_getinfo(pkg, PM_PKG_PROVIDES)); + PM_LIST_display(_("Depends On :"), alpm_pkg_getinfo(pkg, PM_PKG_DEPENDS)); + PM_LIST_display(_("Conflicts With :"), alpm_pkg_getinfo(pkg, PM_PKG_CONFLICTS)); + PM_LIST_display(_("Replaces :"), alpm_pkg_getinfo(pkg, PM_PKG_REPLACES)); - printf("Size (compressed) : %ld\n", (long)alpm_pkg_getinfo(pkg, PM_PKG_SIZE)); - printf("Description : "); + printf(_("Size (compressed) : %ld\n"), (long)alpm_pkg_getinfo(pkg, PM_PKG_SIZE)); + printf(_("Description : ")); indentprint(alpm_pkg_getinfo(pkg, PM_PKG_DESC), 20); - printf("\nMD5 Sum : %s\n", (char *)alpm_pkg_getinfo(pkg, PM_PKG_MD5SUM)); + printf(_("\nMD5 Sum : %s\n"), (char *)alpm_pkg_getinfo(pkg, PM_PKG_MD5SUM)); } void dump_pkg_files(PM_PKG *pkg) @@ -152,7 +153,7 @@ void dump_pkg_files(PM_PKG *pkg) pkgfiles = alpm_pkg_getinfo(pkg, PM_PKG_FILES); for(i = pkgfiles; i; i = alpm_list_next(i)) { - fprintf(stdout, "%s %s\n", (char *)pkgname, (char *)alpm_list_getdata(i)); + fprintf(stdout, _("%s %s\n"), (char *)pkgname, (char *)alpm_list_getdata(i)); } fflush(stdout); diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c index a2ff2604..3678f628 100644 --- a/src/pacman/pacman.c +++ b/src/pacman/pacman.c @@ -27,6 +27,7 @@ #include <string.h> #include <signal.h> #include <unistd.h> +#include <libintl.h> #ifndef CYGWIN #include <mcheck.h> /* debug */ #else @@ -77,12 +78,12 @@ extern int neednl; */ static void version() { - printf("\n"); - printf(" .--. Pacman v%s - libalpm v%s\n", PACKAGE_VERSION, PM_VERSION); - printf("/ _.-' .-. .-. .-. Copyright (C) 2002-2006 Judd Vinet <jvinet@zeroflux.org>\n"); - printf("\\ '-. '-' '-' '-' \n"); - printf(" '--' This program may be freely redistributed under\n"); - printf(" the terms of the GNU General Public License\n"); + printf(_("\n")); + printf(_(" .--. Pacman v%s - libalpm v%s\n"), PACKAGE_VERSION, PM_VERSION); + printf(_("/ _.-' .-. .-. .-. Copyright (C) 2002-2006 Judd Vinet <jvinet@zeroflux.org>\n")); + printf(_("\\ '-. '-' '-' '-' \n")); + printf(_(" '--' This program may be freely redistributed under\n")); + printf(_(" the terms of the GNU General Public License\n")); printf("\n"); } @@ -93,72 +94,72 @@ static void version() static void usage(int op, char *myname) { if(op == PM_OP_MAIN) { - printf("usage: %s {-h --help}\n", myname); - printf(" %s {-V --version}\n", myname); - printf(" %s {-A --add} [options] <file>\n", myname); - printf(" %s {-R --remove} [options] <package>\n", myname); - printf(" %s {-U --upgrade} [options] <file>\n", myname); - printf(" %s {-F --freshen} [options] <file>\n", myname); - printf(" %s {-Q --query} [options] [package]\n", myname); - printf(" %s {-S --sync} [options] [package]\n", myname); - printf("\nuse '%s --help' with other options for more syntax\n", myname); + printf(_("usage: %s {-h --help}\n"), myname); + printf(_(" %s {-V --version}\n"), myname); + printf(_(" %s {-A --add} [options] <file>\n"), myname); + printf(_(" %s {-R --remove} [options] <package>\n"), myname); + printf(_(" %s {-U --upgrade} [options] <file>\n"), myname); + printf(_(" %s {-F --freshen} [options] <file>\n"), myname); + printf(_(" %s {-Q --query} [options] [package]\n"), myname); + printf(_(" %s {-S --sync} [options] [package]\n"), myname); + printf(_("\nuse '%s --help' with other options for more syntax\n"), myname); } else { if(op == PM_OP_ADD) { - printf("usage: %s {-A --add} [options] <file>\n", myname); - printf("options:\n"); - printf(" -d, --nodeps skip dependency checks\n"); - printf(" -f, --force force install, overwrite conflicting files\n"); + printf(_("usage: %s {-A --add} [options] <file>\n"), myname); + printf(_("options:\n")); + printf(_(" -d, --nodeps skip dependency checks\n")); + printf(_(" -f, --force force install, overwrite conflicting files\n")); } else if(op == PM_OP_REMOVE) { - printf("usage: %s {-R --remove} [options] <package>\n", myname); - printf("options:\n"); - printf(" -c, --cascade remove packages and all packages that depend on them\n"); - printf(" -d, --nodeps skip dependency checks\n"); - printf(" -k, --dbonly only remove database entry, do not remove files\n"); - printf(" -n, --nosave remove configuration files as well\n"); - printf(" -s, --recursive remove dependencies also (that won't break packages)\n"); + printf(_("usage: %s {-R --remove} [options] <package>\n"), myname); + printf(_("options:\n")); + printf(_(" -c, --cascade remove packages and all packages that depend on them\n")); + printf(_(" -d, --nodeps skip dependency checks\n")); + printf(_(" -k, --dbonly only remove database entry, do not remove files\n")); + printf(_(" -n, --nosave remove configuration files as well\n")); + printf(_(" -s, --recursive remove dependencies also (that won't break packages)\n")); } else if(op == PM_OP_UPGRADE) { if(config->flags & PM_TRANS_FLAG_FRESHEN) { - printf("usage: %s {-F --freshen} [options] <file>\n", myname); + printf(_("usage: %s {-F --freshen} [options] <file>\n"), myname); } else { - printf("usage: %s {-U --upgrade} [options] <file>\n", myname); + printf(_("usage: %s {-U --upgrade} [options] <file>\n"), myname); } - printf("options:\n"); - printf(" -d, --nodeps skip dependency checks\n"); - printf(" -f, --force force install, overwrite conflicting files\n"); + printf(_("options:\n")); + printf(_(" -d, --nodeps skip dependency checks\n")); + printf(_(" -f, --force force install, overwrite conflicting files\n")); } else if(op == PM_OP_QUERY) { - printf("usage: %s {-Q --query} [options] [package]\n", myname); - printf("options:\n"); - printf(" -e, --orphans list all packages that were explicitly installed\n"); - printf(" and are not required by any other packages\n"); - printf(" -g, --groups view all members of a package group\n"); - printf(" -i, --info view package information\n"); - printf(" -l, --list list the contents of the queried package\n"); - printf(" -m, --foreign list all packages that were not found in the sync repos\n"); - printf(" -o, --owns <file> query the package that owns <file>\n"); - printf(" -p, --file pacman will query the package file [package] instead of\n"); - printf(" looking in the database\n"); - printf(" -s, --search search locally-installed packages for matching strings\n"); + printf(_("usage: %s {-Q --query} [options] [package]\n"), myname); + printf(_("options:\n")); + printf(_(" -e, --orphans list all packages that were explicitly installed\n")); + printf(_(" and are not required by any other packages\n")); + printf(_(" -g, --groups view all members of a package group\n")); + printf(_(" -i, --info view package information\n")); + printf(_(" -l, --list list the contents of the queried package\n")); + printf(_(" -m, --foreign list all packages that were not found in the sync repos\n")); + printf(_(" -o, --owns <file> query the package that owns <file>\n")); + printf(_(" -p, --file pacman will query the package file [package] instead of\n")); + printf(_(" looking in the database\n")); + printf(_(" -s, --search search locally-installed packages for matching strings\n")); } else if(op == PM_OP_SYNC) { - printf("usage: %s {-S --sync} [options] [package]\n", myname); - printf("options:\n"); - printf(" -c, --clean remove old packages from cache directory (use -cc for all)\n"); - printf(" -d, --nodeps skip dependency checks\n"); - printf(" -f, --force force install, overwrite conflicting files\n"); - printf(" -g, --groups view all members of a package group\n"); - printf(" -p, --print-uris print out URIs for given packages and their dependencies\n"); - printf(" -s, --search search remote repositories for matching strings\n"); - printf(" -u, --sysupgrade upgrade all packages that are out of date\n"); - printf(" -w, --downloadonly download packages but do not install/upgrade anything\n"); - printf(" -y, --refresh download fresh package databases from the server\n"); - printf(" --ignore <pkg> ignore a package upgrade (can be used more than once)\n"); + printf(_("usage: %s {-S --sync} [options] [package]\n"), myname); + printf(_("options:\n")); + printf(_(" -c, --clean remove old packages from cache directory (use -cc for all)\n")); + printf(_(" -d, --nodeps skip dependency checks\n")); + printf(_(" -f, --force force install, overwrite conflicting files\n")); + printf(_(" -g, --groups view all members of a package group\n")); + printf(_(" -p, --print-uris print out URIs for given packages and their dependencies\n")); + printf(_(" -s, --search search remote repositories for matching strings\n")); + printf(_(" -u, --sysupgrade upgrade all packages that are out of date\n")); + printf(_(" -w, --downloadonly download packages but do not install/upgrade anything\n")); + printf(_(" -y, --refresh download fresh package databases from the server\n")); + printf(_(" --ignore <pkg> ignore a package upgrade (can be used more than once)\n")); } - printf(" --config <path> set an alternate configuration file\n"); - printf(" --noconfirm do not ask for anything confirmation\n"); - printf(" --noprogressbar do not show a progress bar when downloading files\n"); - printf(" --noscriptlet do not execute the install scriptlet if there is any\n"); - printf(" -v, --verbose be verbose\n"); - printf(" -r, --root <path> set an alternate installation root\n"); - printf(" -b, --dbpath <path> set an alternate database location\n"); + printf(_(" --config <path> set an alternate configuration file\n")); + printf(_(" --noconfirm do not ask for anything confirmation\n")); + printf(_(" --noprogressbar do not show a progress bar when downloading files\n")); + printf(_(" --noscriptlet do not execute the install scriptlet if there is any\n")); + printf(_(" -v, --verbose be verbose\n")); + printf(_(" -r, --root <path> set an alternate installation root\n")); + printf(_(" -b, --dbpath <path> set an alternate database location\n")); } } @@ -284,7 +285,7 @@ static int parseargs(int argc, char *argv[]) break; case 'r': if(realpath(optarg, root) == NULL) { - perror("bad root path"); + perror(_("bad root path")); return(1); } if(config->root) { @@ -310,7 +311,7 @@ static int parseargs(int argc, char *argv[]) } if(config->op == 0) { - ERR(NL, "only one operation may be used at a time\n"); + ERR(NL, _("only one operation may be used at a time\n")); return(1); } @@ -342,7 +343,7 @@ static void cleanup(int signum) /* free alpm library resources */ if(alpm_release() == -1) { - ERR(NL, "%s\n", alpm_strerror(pm_errno)); + ERR(NL, _("%s\n"), alpm_strerror(pm_errno)); } /* free memory */ @@ -432,7 +433,7 @@ int main(int argc, char *argv[]) config->op_q_info)) || (config->op == PM_OP_DEPTEST && !config->op_d_resolve)) { /* special case: PM_OP_SYNC can be used w/ config->op_s_search by any user */ } else { - ERR(NL, "you cannot perform this operation unless you are root.\n"); + ERR(NL, _("you cannot perform this operation unless you are root.\n")); config_free(config); exit(1); } @@ -456,7 +457,7 @@ int main(int argc, char *argv[]) /* initialize pm library */ if(alpm_initialize(config->root) == -1) { - ERR(NL, "failed to initilize alpm library (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to initilize alpm library (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } @@ -469,11 +470,11 @@ int main(int argc, char *argv[]) /* set library parameters */ if(alpm_set_option(PM_OPT_LOGMASK, (long)config->debug) == -1) { - ERR(NL, "failed to set option LOGMASK (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option LOGMASK (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } if(alpm_set_option(PM_OPT_LOGCB, (long)cb_log) == -1) { - ERR(NL, "failed to set option LOGCB (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option LOGCB (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } if(config->dbpath == NULL) { @@ -481,39 +482,39 @@ int main(int argc, char *argv[]) } else { /* dbpath has been set by parseargs or parseconfig */ if(alpm_set_option(PM_OPT_DBPATH, (long)config->dbpath) == -1) { - ERR(NL, "failed to set option DBPATH (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option DBPATH (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } } if(alpm_set_option(PM_OPT_CACHEDIR, (long)config->cachedir) == -1) { - ERR(NL, "failed to set option CACHEDIR (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option CACHEDIR (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } for(lp = config->op_s_ignore; lp; lp = lp->next) { if(alpm_set_option(PM_OPT_IGNOREPKG, (long)lp->data) == -1) { - ERR(NL, "failed to set option IGNOREPKG (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option IGNOREPKG (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } } if(config->verbose > 0) { - printf("Root : %s\n", config->root); - printf("DBPath: %s\n", config->dbpath); - list_display("Targets:", pm_targets); + printf(_("Root : %s\n"), config->root); + printf(_("DBPath: %s\n"), config->dbpath); + list_display(_("Targets:"), pm_targets); } /* Opening local database */ db_local = alpm_db_register("local"); if(db_local == NULL) { - ERR(NL, "could not register 'local' database (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("could not register 'local' database (%s)\n"), alpm_strerror(pm_errno)); cleanup(1); } if(list_count(pm_targets) == 0 && !(config->op == PM_OP_QUERY || (config->op == PM_OP_SYNC && (config->op_s_sync || config->op_s_upgrade || config->op_s_clean || config->group || config->op_q_list)))) { - ERR(NL, "no targets specified (use -h for help)\n"); + ERR(NL, _("no targets specified (use -h for help)\n")); cleanup(1); } @@ -526,7 +527,7 @@ int main(int argc, char *argv[]) case PM_OP_SYNC: ret = pacman_sync(pm_targets); break; case PM_OP_DEPTEST: ret = pacman_deptest(pm_targets); break; default: - ERR(NL, "no operation specified (use -h for help)\n"); + ERR(NL, _("no operation specified (use -h for help)\n")); ret = 1; } diff --git a/src/pacman/query.c b/src/pacman/query.c index 3981eedf..233e61e7 100644 --- a/src/pacman/query.c +++ b/src/pacman/query.c @@ -24,6 +24,7 @@ #include <limits.h> #include <string.h> #include <sys/stat.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -52,12 +53,12 @@ static int query_fileowner(PM_DB *db, char *filename) return(0); } if(filename == NULL || strlen(filename) == 0) { - ERR(NL, "no file was specified for --owns\n"); + ERR(NL, _("no file was specified for --owns\n")); return(1); } if(stat(filename, &buf) == -1 || S_ISDIR(buf.st_mode) || realpath(filename, rpath) == NULL) { - ERR(NL, "%s is not a file.\n", filename); + ERR(NL, _("%s is not a file.\n"), filename); return(1); } @@ -74,7 +75,7 @@ static int query_fileowner(PM_DB *db, char *filename) snprintf(path, PATH_MAX, "%s%s", root, (char *)alpm_list_getdata(i)); if(!strcmp(path, rpath)) { - printf("%s is owned by %s %s\n", filename, (char *)alpm_pkg_getinfo(info, PM_PKG_NAME), + printf(_("%s is owned by %s %s\n"), filename, (char *)alpm_pkg_getinfo(info, PM_PKG_NAME), (char *)alpm_pkg_getinfo(info, PM_PKG_VERSION)); gotcha = 1; break; @@ -82,7 +83,7 @@ static int query_fileowner(PM_DB *db, char *filename) } } if(!gotcha) { - ERR(NL, "No package owns %s\n", filename); + ERR(NL, _("No package owns %s\n"), filename); return(1); } @@ -107,7 +108,7 @@ int pacman_query(list_t *targets) if(config->op_q_foreign) { if(pmc_syncs == NULL || !list_count(pmc_syncs)) { - ERR(NL, "no usable package repositories configured.\n"); + ERR(NL, _("no usable package repositories configured.\n")); return(1); } @@ -156,7 +157,7 @@ int pacman_query(list_t *targets) MSG(NL, "%s %s\n", package, (char *)alpm_list_getdata(i)); } } else { - ERR(NL, "group \"%s\" was not found\n", package); + ERR(NL, _("group \"%s\" was not found\n"), package); return(2); } } @@ -166,11 +167,11 @@ int pacman_query(list_t *targets) /* output info for a .tar.gz package */ if(config->op_q_isfile) { if(package == NULL) { - ERR(NL, "no package file was specified for --file\n"); + ERR(NL, _("no package file was specified for --file\n")); return(1); } if(alpm_pkg_load(package, &info) == -1) { - ERR(NL, "failed to load package '%s' (%s)\n", package, alpm_strerror(pm_errno)); + ERR(NL, _("failed to load package '%s' (%s)\n"), package, alpm_strerror(pm_errno)); return(1); } if(config->op_q_info) { @@ -208,7 +209,7 @@ int pacman_query(list_t *targets) info = alpm_db_readpkg(db_local, pkgname); if(info == NULL) { /* something weird happened */ - ERR(NL, "package \"%s\" not found\n", pkgname); + ERR(NL, _("package \"%s\" not found\n"), pkgname); return(1); } if(config->op_q_foreign) { @@ -252,7 +253,7 @@ int pacman_query(list_t *targets) info = alpm_db_readpkg(db_local, package); if(info == NULL) { - ERR(NL, "package \"%s\" not found\n", package); + ERR(NL, _("package \"%s\" not found\n"), package); return(2); } diff --git a/src/pacman/remove.c b/src/pacman/remove.c index 5c8568ca..2092ccf0 100644 --- a/src/pacman/remove.c +++ b/src/pacman/remove.c @@ -22,6 +22,7 @@ #include <stdlib.h> #include <stdio.h> #include <string.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -60,11 +61,11 @@ int pacman_remove(list_t *targets) pkgnames = alpm_grp_getinfo(grp, PM_GRP_PKGNAMES); - MSG(NL, ":: group %s:\n", alpm_grp_getinfo(grp, PM_GRP_NAME)); + MSG(NL, _(":: group %s:\n"), alpm_grp_getinfo(grp, PM_GRP_NAME)); PM_LIST_display(" ", pkgnames); - all = yesno(" Remove whole content? [Y/n] "); + all = yesno(_(" Remove whole content? [Y/n] ")); for(lp = alpm_list_first(pkgnames); lp; lp = alpm_list_next(lp)) { - if(all || yesno(":: Remove %s from group %s? [Y/n] ", (char *)alpm_list_getdata(lp), i->data)) { + if(all || yesno(_(":: Remove %s from group %s? [Y/n] "), (char *)alpm_list_getdata(lp), i->data)) { finaltargs = list_add(finaltargs, strdup(alpm_list_getdata(lp))); } } @@ -77,10 +78,10 @@ int pacman_remove(list_t *targets) /* Step 1: create a new transaction */ if(alpm_trans_init(PM_TRANS_TYPE_REMOVE, config->flags, cb_trans_evt, cb_trans_conv) == -1) { - ERR(NL, "failed to init transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to init transaction (%s)\n"), alpm_strerror(pm_errno)); if(pm_errno == PM_ERR_HANDLE_LOCK) { - MSG(NL, " if you're sure a package manager is not already running,\n" - " you can remove %s\n", PM_LOCK); + MSG(NL, _(" if you're sure a package manager is not already running,\n" + " you can remove %s\n"), PM_LOCK); } FREELIST(finaltargs); return(1); @@ -90,12 +91,12 @@ int pacman_remove(list_t *targets) /* check if the package is in the HoldPkg list. If so, ask * confirmation first */ if(list_is_strin(i->data, config->holdpkg)) { - if(!yesno(":: %s is designated as a HoldPkg. Remove anyway? [Y/n] ", i->data)) { + if(!yesno(_(":: %s is designated as a HoldPkg. Remove anyway? [Y/n] "), i->data)) { return(1); } } if(alpm_trans_addtarget(i->data) == -1) { - ERR(NL, "failed to add target '%s' (%s)\n", (char *)i->data, alpm_strerror(pm_errno)); + ERR(NL, _("failed to add target '%s' (%s)\n"), (char *)i->data, alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -105,12 +106,12 @@ int pacman_remove(list_t *targets) */ if(alpm_trans_prepare(&data) == -1) { PM_LIST *lp; - ERR(NL, "failed to prepare transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to prepare transaction (%s)\n"), alpm_strerror(pm_errno)); switch(pm_errno) { case PM_ERR_UNSATISFIED_DEPS: for(lp = alpm_list_first(data); lp; lp = alpm_list_next(lp)) { PM_DEPMISS *miss = alpm_list_getdata(lp); - MSG(NL, " %s: is required by %s\n", alpm_dep_getinfo(miss, PM_DEP_TARGET), + MSG(NL, _(" %s: is required by %s\n"), alpm_dep_getinfo(miss, PM_DEP_TARGET), alpm_dep_getinfo(miss, PM_DEP_NAME)); } alpm_list_free(data); @@ -132,10 +133,10 @@ int pacman_remove(list_t *targets) PM_PKG *pkg = alpm_list_getdata(lp); i = list_add(i, strdup(alpm_pkg_getinfo(pkg, PM_PKG_NAME))); } - list_display("\nTargets:", i); + list_display(_("\nTargets:"), i); FREELIST(i); /* get confirmation */ - if(yesno("\nDo you want to remove these packages? [Y/n] ") == 0) { + if(yesno(_("\nDo you want to remove these packages? [Y/n] ")) == 0) { retval = 1; goto cleanup; } @@ -145,7 +146,7 @@ int pacman_remove(list_t *targets) /* Step 3: actually perform the removal */ if(alpm_trans_commit(NULL) == -1) { - ERR(NL, "failed to commit transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to commit transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -156,7 +157,7 @@ cleanup: FREELIST(finaltargs); if(alpm_trans_release() == -1) { - ERR(NL, "failed to release transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to release transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; } diff --git a/src/pacman/sync.c b/src/pacman/sync.c index fc1ccfe3..c25ef17f 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -26,6 +26,7 @@ #include <sys/stat.h> #include <unistd.h> #include <dirent.h> +#include <libintl.h> #ifdef CYGWIN #include <limits.h> /* PATH_MAX */ #endif @@ -64,10 +65,10 @@ static int sync_cleancache(int level) list_t *clean = NULL; list_t *i, *j; - MSG(NL, "removing old packages from cache... "); + MSG(NL, _("removing old packages from cache... ")); dir = opendir(dirpath); if(dir == NULL) { - ERR(NL, "could not access cache directory\n"); + ERR(NL, _("could not access cache directory\n")); return(1); } rewinddir(dir); @@ -127,20 +128,20 @@ static int sync_cleancache(int level) FREELIST(clean); } else { /* full cleanup */ - MSG(NL, "removing all packages from cache... "); + MSG(NL, _("removing all packages from cache... ")); if(rmrf(dirpath)) { - ERR(NL, "could not remove cache directory\n"); + ERR(NL, _("could not remove cache directory\n")); return(1); } if(makepath(dirpath)) { - ERR(NL, "could not create new cache directory\n"); + ERR(NL, _("could not create new cache directory\n")); return(1); } } - MSG(CL, "done.\n"); + MSG(CL, _("done.\n")); return(0); } @@ -164,7 +165,7 @@ static int sync_synctree(int level, list_t *syncs) /* get the lastupdate time */ db_getlastupdate(sync->db, lastupdate); if(strlen(lastupdate) == 0) { - vprint("failed to get lastupdate time for %s (no big deal)\n", sync->treename); + vprint(_("failed to get lastupdate time for %s (no big deal)\n"), sync->treename); } } @@ -177,18 +178,18 @@ static int sync_synctree(int level, list_t *syncs) ret = downloadfiles_forreal(sync->servers, path, files, lastupdate, newmtime); FREELIST(files); if(ret > 0) { - ERR(NL, "failed to synchronize %s\n", sync->treename); + ERR(NL, _("failed to synchronize %s\n"), sync->treename); success--; } else if(ret < 0) { - MSG(NL, " %s is up to date\n", sync->treename); + MSG(NL, _(" %s is up to date\n"), sync->treename); } else { if(strlen(newmtime)) { - vprint("sync: new mtime for %s: %s\n", sync->treename, newmtime); + vprint(_("sync: new mtime for %s: %s\n"), sync->treename, newmtime); db_setlastupdate(sync->db, newmtime); } snprintf(path, PATH_MAX, "%s%s/%s" PM_EXT_DB, root, dbpath, sync->treename); if(alpm_db_update(sync->db, path) == -1) { - ERR(NL, "failed to update %s (%s)\n", sync->treename, alpm_strerror(pm_errno)); + ERR(NL, _("failed to update %s (%s)\n"), sync->treename, alpm_strerror(pm_errno)); } /* remove the .tar.gz */ unlink(path); @@ -214,7 +215,7 @@ static int sync_search(list_t *syncs, list_t *targets) for(lp = alpm_db_getpkgcache(sync->db); lp; lp = alpm_list_next(lp)) { PM_PKG *pkg = alpm_list_getdata(lp); - MSG(NL, "%s/%s %s\n ", sync->treename, (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME), (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); + MSG(NL, _("%s/%s %s\n "), sync->treename, (char *)alpm_pkg_getinfo(pkg, PM_PKG_NAME), (char *)alpm_pkg_getinfo(pkg, PM_PKG_VERSION)); indentprint(alpm_pkg_getinfo(pkg, PM_PKG_DESC), 4); MSG(NL, "\n"); } @@ -282,7 +283,7 @@ static int sync_info(list_t *syncs, list_t *targets) } } if(!found) { - ERR(NL, "package \"%s\" was not found.\n", (char *)i->data); + ERR(NL, _("package \"%s\" was not found.\n"), (char *)i->data); break; } } @@ -320,7 +321,7 @@ static int sync_list(list_t *syncs, list_t *targets) } if(sync == NULL) { - ERR(NL, "repository \"%s\" was not found.\n", (char *)i->data); + ERR(NL, _("repository \"%s\" was not found.\n"), (char *)i->data); FREELISTPTR(ls); return(1); } @@ -361,7 +362,7 @@ int pacman_sync(list_t *targets) list_t *files = NULL; if(pmc_syncs == NULL || !list_count(pmc_syncs)) { - ERR(NL, "no usable package repositories configured.\n"); + ERR(NL, _("no usable package repositories configured.\n")); return(1); } @@ -381,8 +382,8 @@ int pacman_sync(list_t *targets) if(config->op_s_sync) { /* grab a fresh package list */ - MSG(NL, ":: Synchronizing package databases...\n"); - alpm_logaction("synchronizing package lists"); + MSG(NL, _(":: Synchronizing package databases...\n")); + alpm_logaction(_("synchronizing package lists")); if(sync_synctree(config->op_s_sync, pmc_syncs)) { return(1); } @@ -407,17 +408,17 @@ int pacman_sync(list_t *targets) /* Step 1: create a new transaction... */ if(alpm_trans_init(PM_TRANS_TYPE_SYNC, config->flags, cb_trans_evt, cb_trans_conv) == -1) { - ERR(NL, "failed to init transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to init transaction (%s)\n"), alpm_strerror(pm_errno)); if(pm_errno == PM_ERR_HANDLE_LOCK) { - MSG(NL, " if you're sure a package manager is not already running,\n" - " you can remove %s\n", PM_LOCK); + MSG(NL, _(" if you're sure a package manager is not already running,\n" + " you can remove %s\n"), PM_LOCK); } return(1); } if(config->op_s_upgrade) { - MSG(NL, ":: Starting local database upgrade...\n"); - alpm_logaction("starting full system upgrade"); + MSG(NL, _(":: Starting local database upgrade...\n")); + alpm_logaction(_("starting full system upgrade")); if(alpm_trans_sysupgrade() == -1) { ERR(NL, "%s\n", alpm_strerror(pm_errno)); retval = 1; @@ -435,26 +436,26 @@ int pacman_sync(list_t *targets) PM_SYNCPKG *sync = alpm_list_getdata(lp); PM_PKG *spkg = alpm_sync_getinfo(sync, PM_SYNC_PKG); if(!strcmp("pacman", alpm_pkg_getinfo(spkg, PM_PKG_NAME)) && alpm_list_count(data) > 1) { - MSG(NL, "\n:: pacman has detected a newer version of the \"pacman\" package.\n"); - MSG(NL, ":: It is recommended that you allow pacman to upgrade itself\n"); - MSG(NL, ":: first, then you can re-run the operation with the newer version.\n"); - MSG(NL, "::\n"); - if(yesno(":: Upgrade pacman first? [Y/n] ")) { + MSG(NL, _("\n:: pacman has detected a newer version of the \"pacman\" package.\n")); + MSG(NL, _(":: It is recommended that you allow pacman to upgrade itself\n")); + MSG(NL, _(":: first, then you can re-run the operation with the newer version.\n")); + MSG(NL, _("::\n")); + if(yesno(_(":: Upgrade pacman first? [Y/n] "))) { if(alpm_trans_release() == -1) { - ERR(NL, "failed to release transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to release transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; goto cleanup; } if(alpm_trans_init(PM_TRANS_TYPE_SYNC, config->flags, cb_trans_evt, cb_trans_conv) == -1) { - ERR(NL, "failed to init transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to init transaction (%s)\n"), alpm_strerror(pm_errno)); if(pm_errno == PM_ERR_HANDLE_LOCK) { - MSG(NL, " if you're sure a package manager is not already running,\n" - " you can remove %s\n", PM_LOCK); + MSG(NL, _(" if you're sure a package manager is not already running,\n" + " you can remove %s\n"), PM_LOCK); } return(1); } if(alpm_trans_addtarget("pacman") == -1) { - ERR(NL, "could not add target '%s': %s\n", (char *)i->data, alpm_strerror(pm_errno)); + ERR(NL, _("could not add target '%s': %s\n"), (char *)i->data, alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -474,7 +475,7 @@ int pacman_sync(list_t *targets) continue; } if(pm_errno != PM_ERR_PKG_NOT_FOUND) { - ERR(NL, "could not add target '%s': %s\n", (char *)i->data, alpm_strerror(pm_errno)); + ERR(NL, _("could not add target '%s': %s\n"), (char *)i->data, alpm_strerror(pm_errno)); retval = 1; goto cleanup; } @@ -485,20 +486,20 @@ int pacman_sync(list_t *targets) if(grp) { PM_LIST *pmpkgs; list_t *k, *pkgs; - MSG(NL, ":: group %s:\n", targ); + MSG(NL, _(":: group %s:\n"), targ); pmpkgs = alpm_grp_getinfo(grp, PM_GRP_PKGNAMES); /* remove dupe entries in case a package exists in multiple repos */ /* (the dupe function takes a PM_LIST* and returns a list_t*) */ pkgs = PM_LIST_remove_dupes(pmpkgs); list_display(" ", pkgs); - if(yesno(":: Install whole content? [Y/n] ")) { + if(yesno(_(":: Install whole content? [Y/n] "))) { for(k = pkgs; k; k = k->next) { targets = list_add(targets, strdup(k->data)); } } else { for(k = pkgs; k; k = k->next) { char *pkgname = k->data; - if(yesno(":: Install %s from group %s? [Y/n] ", pkgname, targ)) { + if(yesno(_(":: Install %s from group %s? [Y/n] "), pkgname, targ)) { targets = list_add(targets, strdup(pkgname)); } } @@ -518,13 +519,13 @@ int pacman_sync(list_t *targets) /* Step 2: "compute" the transaction based on targets and flags */ if(alpm_trans_prepare(&data) == -1) { - ERR(NL, "failed to prepare transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to prepare transaction (%s)\n"), alpm_strerror(pm_errno)); switch(pm_errno) { case PM_ERR_UNSATISFIED_DEPS: for(lp = alpm_list_first(data); lp; lp = alpm_list_next(lp)) { PM_DEPMISS *miss = alpm_list_getdata(lp); - MSG(NL, ":: %s: %s %s", alpm_dep_getinfo(miss, PM_DEP_TARGET), - (int)alpm_dep_getinfo(miss, PM_DEP_TYPE) == PM_DEP_TYPE_DEPEND ? "requires" : "is required by", + MSG(NL, _(":: %s: %s %s"), alpm_dep_getinfo(miss, PM_DEP_TARGET), + (int)alpm_dep_getinfo(miss, PM_DEP_TYPE) == PM_DEP_TYPE_DEPEND ? _("requires") : _("is required by"), alpm_dep_getinfo(miss, PM_DEP_NAME)); switch((int)alpm_dep_getinfo(miss, PM_DEP_MOD)) { case PM_DEP_MOD_EQ: MSG(CL, "=%s", alpm_dep_getinfo(miss, PM_DEP_VERSION)); break; @@ -589,7 +590,7 @@ int pacman_sync(list_t *targets) list_install = list_add(list_install, str); } if(list_remove) { - MSG(NL, "\nRemove: "); + MSG(NL, _("\nRemove: ")); str = buildstring(list_remove); indentprint(str, 9); MSG(CL, "\n"); @@ -601,20 +602,20 @@ int pacman_sync(list_t *targets) if(mb < 0.1) { mb = 0.1; } - MSG(NL, "\nTargets: "); + MSG(NL, _("\nTargets: ")); str = buildstring(list_install); indentprint(str, 9); - MSG(NL, "\nTotal Package Size: %.1f MB\n", mb); + MSG(NL, _("\nTotal Package Size: %.1f MB\n"), mb); FREELIST(list_install); FREE(str); if(config->op_s_downloadonly) { if(config->noconfirm) { - MSG(NL, "\nBeginning download...\n"); + MSG(NL, _("\nBeginning download...\n")); confirm = 1; } else { MSG(NL, "\n"); - confirm = yesno("Proceed with download? [Y/n] "); + confirm = yesno(_("Proceed with download? [Y/n] ")); } } else { /* don't get any confirmation if we're called from makepkg */ @@ -622,11 +623,11 @@ int pacman_sync(list_t *targets) confirm = 1; } else { if(config->noconfirm) { - MSG(NL, "\nBeginning upgrade process...\n"); + MSG(NL, _("\nBeginning upgrade process...\n")); confirm = 1; } else { MSG(NL, "\n"); - confirm = yesno("Proceed with upgrade? [Y/n] "); + confirm = yesno(_("Proceed with upgrade? [Y/n] ")); } } } @@ -672,7 +673,7 @@ int pacman_sync(list_t *targets) snprintf(path, PATH_MAX, "%s-%s" PM_EXT_PKG, pkgname, pkgver); files = list_add(files, strdup(path)); } else { - vprint(" %s-%s" PM_EXT_PKG " is already in the cache\n", pkgname, pkgver); + vprint(_(" %s-%s" PM_EXT_PKG " is already in the cache\n"), pkgname, pkgver); } } } @@ -680,28 +681,28 @@ int pacman_sync(list_t *targets) if(files) { struct stat buf; - MSG(NL, "\n:: Retrieving packages from %s...\n", current->treename); + MSG(NL, _("\n:: Retrieving packages from %s...\n"), current->treename); fflush(stdout); if(stat(ldir, &buf)) { /* no cache directory.... try creating it */ - WARN(NL, "no %s cache exists. creating...\n", ldir); - alpm_logaction("warning: no %s cache exists. creating...", ldir); + WARN(NL, _("no %s cache exists. creating...\n"), ldir); + alpm_logaction(_("warning: no %s cache exists. creating..."), ldir); if(makepath(ldir)) { /* couldn't mkdir the cache directory, so fall back to /tmp and unlink * the package afterwards. */ - WARN(NL, "couldn't create package cache, using /tmp instead"); - alpm_logaction("warning: couldn't create package cache, using /tmp instead"); + WARN(NL, _("couldn't create package cache, using /tmp instead")); + alpm_logaction(_("warning: couldn't create package cache, using /tmp instead")); snprintf(ldir, PATH_MAX, "/tmp"); if(alpm_set_option(PM_OPT_CACHEDIR, (long)ldir) == -1) { - ERR(NL, "failed to set option CACHEDIR (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to set option CACHEDIR (%s)\n"), alpm_strerror(pm_errno)); goto cleanup; } varcache = 0; } } if(downloadfiles(current->servers, ldir, files)) { - ERR(NL, "failed to retrieve some files from %s\n", current->treename); + ERR(NL, _("failed to retrieve some files from %s\n"), current->treename); retval = 1; goto cleanup; } @@ -714,16 +715,16 @@ int pacman_sync(list_t *targets) MSG(NL, "\n"); /* Check integrity of files */ - MSG(NL, "checking package integrity... "); + MSG(NL, _("checking package integrity... ")); for(lp = alpm_list_first(packages); lp; lp = alpm_list_next(lp)) { PM_SYNCPKG *sync = alpm_list_getdata(lp); PM_PKG *spkg = alpm_sync_getinfo(sync, PM_SYNC_PKG); if(alpm_pkg_checkmd5sum(spkg) == -1) { if(pm_errno == PM_ERR_PKG_INVALID) { - ERR(NL, "archive %s is corrupted\n", alpm_pkg_getinfo(spkg, PM_PKG_NAME)); + ERR(NL, _("archive %s is corrupted\n"), alpm_pkg_getinfo(spkg, PM_PKG_NAME)); } else { - ERR(NL, "could not get checksum for package %s (%s)\n", + ERR(NL, _("could not get checksum for package %s (%s)\n"), alpm_pkg_getinfo(spkg, PM_PKG_NAME), alpm_strerror(pm_errno)); } retval = 1; @@ -732,7 +733,7 @@ int pacman_sync(list_t *targets) if(retval) { goto cleanup; } - MSG(CL, "done.\n"); + MSG(CL, _("done.\n")); if(config->op_s_downloadonly) { goto cleanup; @@ -741,27 +742,27 @@ int pacman_sync(list_t *targets) /* Step 3: actually perform the installation */ if(alpm_trans_commit(&data) == -1) { - ERR(NL, "failed to commit transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to commit transaction (%s)\n"), alpm_strerror(pm_errno)); switch(pm_errno) { case PM_ERR_FILE_CONFLICTS: for(lp = alpm_list_first(data); lp; lp = alpm_list_next(lp)) { PM_CONFLICT *conflict = alpm_list_getdata(lp); switch((int)alpm_conflict_getinfo(conflict, PM_CONFLICT_TYPE)) { case PM_CONFLICT_TYPE_TARGET: - MSG(NL, "%s exists in \"%s\" (target) and \"%s\" (target)", + MSG(NL, _("%s exists in \"%s\" (target) and \"%s\" (target)"), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_FILE), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_TARGET), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_CTARGET)); break; case PM_CONFLICT_TYPE_FILE: - MSG(NL, "%s: %s exists in filesystem", + MSG(NL, _("%s: %s exists in filesystem"), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_TARGET), (char *)alpm_conflict_getinfo(conflict, PM_CONFLICT_FILE)); break; } } alpm_list_free(data); - MSG(NL, "\nerrors occurred, no packages were upgraded.\n"); + MSG(NL, _("\nerrors occurred, no packages were upgraded.\n")); break; default: break; @@ -781,7 +782,7 @@ int pacman_sync(list_t *targets) */ cleanup: if(alpm_trans_release() == -1) { - ERR(NL, "failed to release transaction (%s)\n", alpm_strerror(pm_errno)); + ERR(NL, _("failed to release transaction (%s)\n"), alpm_strerror(pm_errno)); retval = 1; } diff --git a/src/pacman/trans.c b/src/pacman/trans.c index 4f9f68e7..279d431a 100644 --- a/src/pacman/trans.c +++ b/src/pacman/trans.c @@ -26,6 +26,7 @@ #include <sys/stat.h> #include <unistd.h> #include <dirent.h> +#include <libintl.h> #include <alpm.h> /* pacman */ @@ -47,49 +48,49 @@ void cb_trans_evt(unsigned char event, void *data1, void *data2) switch(event) { case PM_TRANS_EVT_CHECKDEPS_START: - MSG(NL, "checking dependencies... "); + MSG(NL, _("checking dependencies... ")); break; case PM_TRANS_EVT_FILECONFLICTS_START: - MSG(NL, "checking for file conflicts... "); + MSG(NL, _("checking for file conflicts... ")); break; case PM_TRANS_EVT_RESOLVEDEPS_START: - MSG(NL, "resolving dependencies... "); + MSG(NL, _("resolving dependencies... ")); break; case PM_TRANS_EVT_INTERCONFLICTS_START: - MSG(NL, "looking for inter-conflicts... "); + MSG(NL, _("looking for inter-conflicts... ")); break; case PM_TRANS_EVT_CHECKDEPS_DONE: case PM_TRANS_EVT_FILECONFLICTS_DONE: case PM_TRANS_EVT_RESOLVEDEPS_DONE: case PM_TRANS_EVT_INTERCONFLICTS_DONE: - MSG(CL, "done.\n"); + MSG(CL, _("done.\n")); break; case PM_TRANS_EVT_ADD_START: - MSG(NL, "installing %s... ", (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); + MSG(NL, _("installing %s... "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); break; case PM_TRANS_EVT_ADD_DONE: - MSG(CL, "done.\n"); - snprintf(str, LOG_STR_LEN, "installed %s (%s)", + MSG(CL, _("done.\n")); + snprintf(str, LOG_STR_LEN, _("installed %s (%s)"), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data1, PM_PKG_VERSION)); alpm_logaction(str); break; case PM_TRANS_EVT_REMOVE_START: - MSG(NL, "removing %s... ", (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); + MSG(NL, _("removing %s... "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); break; case PM_TRANS_EVT_REMOVE_DONE: - MSG(CL, "done.\n"); - snprintf(str, LOG_STR_LEN, "removed %s (%s)", + MSG(CL, _("done.\n")); + snprintf(str, LOG_STR_LEN, _("removed %s (%s)"), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data1, PM_PKG_VERSION)); alpm_logaction(str); break; case PM_TRANS_EVT_UPGRADE_START: - MSG(NL, "upgrading %s... ", (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); + MSG(NL, _("upgrading %s... "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME)); break; case PM_TRANS_EVT_UPGRADE_DONE: - MSG(CL, "done.\n"); - snprintf(str, LOG_STR_LEN, "upgraded %s (%s -> %s)", + MSG(CL, _("done.\n")); + snprintf(str, LOG_STR_LEN, _("upgraded %s (%s -> %s)"), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data2, PM_PKG_VERSION), (char *)alpm_pkg_getinfo(data1, PM_PKG_VERSION)); @@ -104,20 +105,20 @@ void cb_trans_conv(unsigned char event, void *data1, void *data2, void *data3, i switch(event) { case PM_TRANS_CONV_INSTALL_IGNOREPKG: - snprintf(str, LOG_STR_LEN, ":: %s requires %s, but it is in IgnorePkg. Install anyway? [Y/n] ", + snprintf(str, LOG_STR_LEN, _(":: %s requires %s, but it is in IgnorePkg. Install anyway? [Y/n] "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data2, PM_PKG_NAME)); *response = yesno(str); break; case PM_TRANS_CONV_REPLACE_PKG: - snprintf(str, LOG_STR_LEN, ":: Replace %s with %s/%s? [Y/n] ", + snprintf(str, LOG_STR_LEN, _(":: Replace %s with %s/%s? [Y/n] "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)data3, (char *)alpm_pkg_getinfo(data2, PM_PKG_NAME)); *response = yesno(str); break; case PM_TRANS_CONV_CONFLICT_PKG: - snprintf(str, LOG_STR_LEN, ":: %s conflicts with %s. Remove %s? [Y/n] ", + snprintf(str, LOG_STR_LEN, _(":: %s conflicts with %s. Remove %s? [Y/n] "), (char *)data1, (char *)data2, (char *)data2); @@ -125,7 +126,7 @@ void cb_trans_conv(unsigned char event, void *data1, void *data2, void *data3, i break; case PM_TRANS_CONV_LOCAL_NEWER: if(!config->op_s_downloadonly) { - snprintf(str, LOG_STR_LEN, ":: %s-%s: local version is newer. Upgrade anyway? [Y/n] ", + snprintf(str, LOG_STR_LEN, _(":: %s-%s: local version is newer. Upgrade anyway? [Y/n] "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data1, PM_PKG_VERSION)); *response = yesno(str); @@ -135,7 +136,7 @@ void cb_trans_conv(unsigned char event, void *data1, void *data2, void *data3, i break; case PM_TRANS_CONV_LOCAL_UPTODATE: if(!config->op_s_downloadonly) { - snprintf(str, LOG_STR_LEN, ":: %s-%s: local version is up to date. Upgrade anyway? [Y/n] ", + snprintf(str, LOG_STR_LEN, _(":: %s-%s: local version is up to date. Upgrade anyway? [Y/n] "), (char *)alpm_pkg_getinfo(data1, PM_PKG_NAME), (char *)alpm_pkg_getinfo(data1, PM_PKG_VERSION)); *response = yesno(str); diff --git a/src/pacman/util.c b/src/pacman/util.c index ef6c0f82..aefdea9b 100644 --- a/src/pacman/util.c +++ b/src/pacman/util.c @@ -30,6 +30,7 @@ #include <dirent.h> #include <unistd.h> #include <regex.h> +#include <libintl.h> #ifdef CYGWIN #include <limits.h> /* PATH_MAX */ #endif @@ -168,7 +169,7 @@ char *buildstring(list_t *strlist) } str = (char *)malloc(size); if(str == NULL) { - ERR(NL, "failed to allocated %d bytes\n", size); + ERR(NL, _("failed to allocated %d bytes\n"), size); } str[0] = '\0'; for(lp = strlist; lp; lp = lp->next) { @@ -222,7 +223,7 @@ int reg_match(char *string, char *pattern) regex_t reg; if(regcomp(®, pattern, REG_EXTENDED | REG_NOSUB | REG_ICASE) != 0) { - ERR(NL, "%s is not a valid regular expression.\n", pattern); + ERR(NL, _("%s is not a valid regular expression.\n"), pattern); return(-1); } result = regexec(®, string, 0, 0, 0); diff --git a/src/pacman/util.h b/src/pacman/util.h index 96b38736..51e05fd3 100644 --- a/src/pacman/util.h +++ b/src/pacman/util.h @@ -42,6 +42,8 @@ s1[(len)-1] = 0; \ } while(0) +#define _(str) gettext(str) + int makepath(char *path); int rmrf(char *path); void indentprint(char *str, int indent); |