All scripts that are somehow system-related.
If there is no description for a script below, check the script itself for comments.
backup_function.sh contains a function named
backup that you can use in your backup scripts. It will maintain a working copy of a directory at another location and it will also create snapshot archives of modifed and deleted files so that you can retrieve old data if necessary.
See the comments in the file for usage information along with an example of how to purge snapshot archives older than a month.
gpgb prompts the user for a passphrase on stdin and then uses it to batch-process arguments (e.g. signing or decrypting files). I wrote it because I don't always need or want gpg-agent running, and also because pinentry-curses does not work with
launch_subnet.sh contains a function named
launch_subnet that will automate several aspect of subnet management such as opening the required ports and starting the DHCP server. The file should be sourced from another bash script that sets the required variables before calling the function.
The file also contains a function named
print_launch_subnet_usage that will list and describe the variables expected by the
For more information read my notes about configuring a subnet with DHCP and DNS. There you will also find example scripts and configuration files for
Interactively merge serveral passwd-like files (e.g. /etc/passwd, /etc/group). This is mainly intended for merging .pacnew files but should be useful in other cases.
usage: merge-passwd [-h] [-o <path>] [-c] [-g] <path> [<path> ...] Merge changes in password files. positional arguments: <path> The files to merge. Multiple may be given. If only one is given, a matching .pacnew file must exist. optional arguments: -h, --help show this help message and exit -o <path>, --output <path> The output file. This may be one of the input files, but it is recommended to use a different file and check the output before overwriting system files. -c, --confirm Confirm before writing output file. -g, --group Treat files as group files.
A simple dialogue that lets you simultaneously enable or disable multiple networks via netctl.