diff options
author | Judd Vinet <judd@archlinux.org> | 2005-10-20 22:44:14 +0200 |
---|---|---|
committer | Judd Vinet <judd@archlinux.org> | 2005-10-20 22:44:14 +0200 |
commit | feb152d78c60731df19eb0041e0d22494afe9e09 (patch) | |
tree | 54b941bb9b574afa338a34e48bf120cec46e3b54 /src | |
parent | 86ec3a2ad78fd38bf057a34fc1115c3f426d2f53 (diff) | |
download | pacman-feb152d78c60731df19eb0041e0d22494afe9e09.tar.gz pacman-feb152d78c60731df19eb0041e0d22494afe9e09.tar.xz |
added a default cachedir
Diffstat (limited to 'src')
-rw-r--r-- | src/pacman/conf.c | 9 | ||||
-rw-r--r-- | src/pacman/pacman.c | 8 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/pacman/conf.c b/src/pacman/conf.c index cf3ca9c6..a62ef609 100644 --- a/src/pacman/conf.c +++ b/src/pacman/conf.c @@ -35,6 +35,7 @@ #define min(X, Y) ((X) < (Y) ? (X) : (Y)) extern char *pmo_dbpath; +extern char *pmo_cachedir; extern list_t *pmo_holdpkg; extern char *pmo_proxyhost; extern unsigned short pmo_proxyport; @@ -214,6 +215,14 @@ int parseconfig(char *file) FREE(pmo_dbpath); pmo_dbpath = strdup(ptr); vprint("config: dbpath: %s\n", ptr); + } else if(!strcmp(key, "CACHEDIR")) { + /* shave off the leading slash, if there is one */ + if(*ptr == '/') { + ptr++; + } + FREE(pmo_cachedir); + pmo_cachedir = strdup(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)); diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c index 00be4b83..f5b0e152 100644 --- a/src/pacman/pacman.c +++ b/src/pacman/pacman.c @@ -51,6 +51,7 @@ /* command line options */ char *pmo_root = NULL; char *pmo_dbpath = NULL; +char *pmo_cachedir = NULL; char *pmo_configfile = NULL; unsigned short pmo_op = PM_OP_MAIN; unsigned short pmo_verbose = 0; @@ -174,6 +175,9 @@ int main(int argc, char *argv[]) if(pmo_dbpath == NULL) { pmo_dbpath = strdup("var/lib/pacman"); } + if(pmo_cachedir == NULL) { + pmo_cachedir = strdup("var/cache/pacman"); + } /* set library parameters */ if(alpm_set_option(PM_OPT_LOGMASK, (long)pmo_debug) == -1) { @@ -188,6 +192,10 @@ int main(int argc, char *argv[]) ERR(NL, "failed to set option DBPATH (%s)\n", alpm_strerror(pm_errno)); cleanup(1); } + if(alpm_set_option(PM_OPT_CACHEDIR, (long)pmo_cachedir) == -1) { + ERR(NL, "failed to set option CACHEDIR (%s)\n", alpm_strerror(pm_errno)); + cleanup(1); + } if(pmo_verbose > 1) { printf("Root : %s\n", pmo_root); |