blob: ad08183acfe4b13a73b64dd8f1ec8dd3400f6422 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
━━━━━━━━━
LEO
Andinus
━━━━━━━━━
Table of Contents
─────────────────
1 Documentation
.. 1.1 encrypt/sign
.. 1.2 delete
.. 1.3 help
2 History
Leo is my archival program. It creates tar(1) files from a pre-defined
list. It can encrypt/sign files with gpg2(1).
• Web-site: [https://andinus.nand.sh/leo]
• Source: [https://git.tilde.institute/andinus/leo]
• Source (mirror): [https://github.com/andinus/leo]
1 Documentation
═══════════════
`%dispatch' has the pre-defined list. Learn the list directly from
`leo.pl', it's self-explanatory. Or check the sub `HelpMessage', it
explains what each command does.
For example, `documents' will archive `$ENV{HOME}/documents' to
`/tmp/archive/documents_$ymd.tar' where `$ymd' is current date in
`YYYY-MM-DD' format.
┌────
│ my %dispatch = (
│ "documents" => sub {
│ tar_create("/tmp/archive/documents_$ymd.tar",
│ "-C", "$ENV{HOME}/documents", ".");
│ },
│ ...
│ )
└────
I use this to quickly archive some of my files & copy them to another
computer as a backup.
1.1 encrypt/sign
────────────────
`encrypt_sign' handles `gpg2' related functions. It passes `--yes' by
default.
*Note*: `gpg2' might compress the archives depending on your config.
Default is to enable compression, if you don't want this then add `-z
0' to `@options'. `-z' specifies the compression level & 0 means no
compression.
1.2 delete
──────────
Removes the archive file after running gpg2(1). This means that either
`encrypt' or `sign' option must be passed.
1.3 help
────────
Running just `leo' will print help.
2 History
═════════
This was Leo's initial description:
Leo is a program to run my personal scripts. You might not
find them useful, these were previously shell scripts that
I rewrote in Perl.
I had created a sync function initially & was going to expand it. Then
I decided to remove those sync functions because it was too complex, I
replaced then with simple `sh' scripts.
I added a simple `archive' function later & decided to turn Leo into
that function. So, it's not a meta-program anymore. I was thinking of
creating something that does all the things for me but that'll be too
complex.
|