On Saturday 25 August 2007 02:08:47 rprinse@planet.nl wrote:
As I was browsing through the task list I stumbled upon FS#7308. This was a feature I also would like to have implemented so I thought why not try it myself!
Because I'm lazy sometimes (who isn't) I don't always take care of any .pacnew or .pacsave files immediately so a nice timestamp suffix would prevent them from getting overwritten by pacman. Especially when you would like to see what changed overtime or when you just don't want that your old saved settings might get overwritten.
So this is what i came up with: an AddDateSuffix directive in pacman.conf to enable this behaviour. If the option was enabled by the user add this timestamp suffix -YYYYMMDDHHMM (maybe even seconds??) right after .pac{new,save}. But while while going through some code I noticed the PATH_MAX constant, so can't we get in trouble if this is too small??
Flyspray link: http://bugs.archlinux.org/task/7308
I would really like to get some feedback,
Thanks in advance,
--DeliQ
Sorry for not wrapping my text at 80 chars. I guess I am a mailing-list newbie;) Anyway, here I have a little C program to test/demonstrate the feature. Is this the correct way for doing this? #include <stdio.h> #include <limits.h> /* PATH_MAX */ #include <string.h> /* memset */ #include <time.h> int main() { time_t rawtime; struct tm *timeinfo; char buffer[12]; char filename[PATH_MAX]; char newpath[PATH_MAX]; time(&rawtime); timeinfo = localtime(&rawtime); strftime(buffer, 12, "%y%m%d%H%M", timeinfo); memset(filename, 0, PATH_MAX); snprintf(filename, PATH_MAX, "%s", "pacman.conf"); snprintf(newpath, PATH_MAX, "%s.pacsave.%s", filename, buffer); printf("newpath: %s\n", newpath); return 0; } AddDateSuffix is a little odd, especially in lowercase (adddatesuffix, mind the 3 d's in a row), so maybe something like AddTimestampSuffix or AddTimeStamp, etc. is better. Suggestions are still very welcome! Thanks in advance, --DeliQ