first check-in of feisty meow codebase. many things broken still due to recent
[feisty_meow.git] / scripts / archival / snarf_user.pl
1 #!/usr/bin/perl
2
3 ###############################################################################
4 #                                                                             #
5 #  Name   : snarf_user                                                        #
6 #  Author : Chris Koeritz                                                     #
7 #  Rights : Copyright (C) 2000-$now by Author                                 #
8 #                                                                             #
9 #  Purpose:                                                                   #
10 #                                                                             #
11 #    Bundles the configuration files that are commonly in a user's home dir.  #
12 #                                                                             #
13 ###############################################################################
14 #  This program is free software; you can redistribute it and/or modify it    #
15 #  under the terms of the GNU General Public License as published by the Free #
16 #  Software Foundation; either version 2 of the License or (at your option)   #
17 #  any later version.  See: "http://www.gruntose.com/Info/GNU/GPL.html" for a #
18 #  version of the License.  Please send any updates to "fred@gruntose.com".   #
19 ###############################################################################
20
21 require "importenv.pl";
22 require "shared_snarfer.pl";
23
24 &initialize_snarfer;
25
26 # get the number we use and increment it for the next use.
27 local($number) = &retrieve_number("aa_backup");
28
29 # variables for directory location to backup and the file to dump it in.
30 local($root) = "$HOME";
31 local($base) = snarf_prefix("$USER");
32 local($snarf_file) = &snarf_name($base, $number);
33
34 # store the archive number in the file for retrieval on the other side.
35 &backup_number("aa_backup", $base, $number);
36
37 ############################################################################
38
39 # backup all the config info for kde.
40 &backup_hierarchy($base, $number, "$root", ".kde");
41
42 # get any dot files ending in "rc", or with "bash" or "profile" in them, or
43 # that start with "x".
44 &backup_files($base, $number, $root, ".",
45     ("*rc", ".*bash*", ".*profile*", ".x*", ));
46
47 # get the ssh configuration files.
48 &backup_hierarchy($base, $number, "$root", ".ssh");
49
50 # now rename the file so only the unpacker can access it.
51 &rename_archive($snarf_file);
52
53 exit 0;
54