first check-in of feisty meow codebase. many things broken still due to recent
[feisty_meow.git] / scripts / archival / snarf_notes.pl
1 #!/usr/bin/perl
2
3 ###############################################################################
4 #                                                                             #
5 #  Name   : snarf_notes                                                       #
6 #  Author : Chris Koeritz                                                     #
7 #  Rights : Copyright (C) 2000-$now by Author                                 #
8 #                                                                             #
9 #  Purpose:                                                                   #
10 #                                                                             #
11 #    Stuffs up an archive with quartz lists and current new notes.            #
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("notes");
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 # get top level text files and other potentially important items...
40 &backup_files($base, $number, $root, ".", ("*.html", "*.txt"));
41 # backup all the hierarchies in our quartz directory.
42 &backup_hierarchy($base, $number, "$root", "quartz");
43 # grab all the state out of basketnotes's home directory.
44 &backup_hierarchy($base, $number, "$root", ".kde/share/apps/basket");
45
46 # gather any directories in our home that match these often recurring patterns.
47 &snarf_by_pattern("$root", "notes");
48 &snarf_by_pattern("$root", "project");
49 &snarf_by_pattern("$root", "issue");
50 &snarf_by_pattern("$root", "crucial");
51 &snarf_by_pattern("$root", "list");
52 &snarf_by_pattern("$root", "task");
53
54 ############################################################################
55
56 # now rename the file so only the unpacker can access it.
57 &rename_archive($snarf_file);
58
59 exit 0;
60