# below is a live example which we almost always include, so it's embedded
# here for convenience.
-#[nechung fortune]
-# runs every minute and recreates a fortune for thunderbird signature.
-# a lot of the detail below is to get the feisty meow environment loaded for
-# the new_sig command.
-* * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; perl $FEISTY_MEOW_SCRIPTS/text/new_sig.pl) &>>/tmp/${CRONUSER}-cron-nechung_fortune.log
-
+##############
+##############
+
#[backup git account]
# archives the whole ~git folder with all account databases into a compressed tar file.
34 20 * * 5 tar -czf /z/stuffing/archives/git_archive_$(date +"\%Y_\%m_\%d_\%H\%M_\%S" | tr -d '/\n/').tar.gz /home/git &>>/tmp/${CRONUSER}-cron-backup_git_account.log
+##############
+
+##############
+
#[backup maildir]
# backs up the maildir folder for fred bi-monthly.
8 4 3,14 * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; tar -czf /z/stuffing/archives/maildir_backup_$(date_stringer).tar.gz $HOME/Maildir) &>/tmp/${CRONUSER}-cron-backup_maildir.log
+##############
+
+##############
+
#[backup_mailman_archives]
# creates a monthly backup of all the mailman list server's archives.
14 2 28 * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; tar -czf /z/stuffing/archives/mailman_backup_$(hostname)_$(date_stringer).tar.gz /var/lib/mailman ) &>/tmp/${CRONUSER}-cron-mailman_backup.log
+##############
+
+##############
+
#[backup mysql databases]
# backs up all of our mysql databases on a weekly basis.
28 4 * * 2 (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; mysqldump -u root '-pPASSWORD' --all-databases | gzip > /z/stuffing/archives/database_backup_$(hostname)_$(date_stringer).sql.gz) &>>/tmp/${CRONUSER}-cron-backup_mysql_databases.log
+##############
+
+##############
+
#[backup photo albums]
# back up the pictures in coppermine gallery every month.
34 6 4 * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; tar -czf /z/stuffing/archives/photo_albums_backup_$(date_stringer).tar.gz /home/albums ; refred) &>>/tmp/${CRONUSER}-cron-backup_photo_albums.log
+##############
+
+##############
+
#[backup serene system]
# backs up config files and important parts of home directories to off-machine storage.
14 2 * * */7 (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/archival/serene_backer_upper.sh) &>>/tmp/${CRONUSER}-cron-backup_serene_system.log
+##############
+
+##############
+
#[backup trac]
# backs up trac every week.
28 7 * * 2 bash $FEISTY_MEOW_APEX/scripts/archival/backup_trac.sh /home/trac /z/stuffing/archives &>>/tmp/${CRONUSER}-cron-backup_trac.log
+##############
+
+##############
+
#[bookmarks builder]
# regenerate the bookmarks pages.
24 10 * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/bookmarks/create_marks.sh ) &>>/tmp/${CRONUSER}-cron-bookmarks_builder.log
+##############
+
+##############
+
#[chkrootkit]
# this runs chkrootkit to demonstrate a bug in the vm kernel currently
# provided by...? hmmm: who's the vendor?
3 * * * * (/usr/sbin/chkrootkit -q &>/var/www/rootkit_report_quiet.txt ) &>>/tmp/${CRONUSER}-cron-chkrootkit.log
4 * * * * (/usr/sbin/chkrootkit -x &>/var/www/rootkit_report_expert.txt ) &>>/tmp/${CRONUSER}-cron-chkrootkit.log
+##############
+
+##############
+
#[doxygen]
# update the feisty meow documentation once on each of tuesday, thursday and saturday.
20 4 * * 2,4,6 (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; cd $FEISTY_MEOW_APEX/documentation; make) &>>/tmp/${CRONUSER}-cron-doxygen.log
+##############
+
+##############
+
#[emit crontab]
# meta-operation to backup the crontab file using cron itself.
28 */8 * * * crontab -l >$HOME/$(hostname).$CRONUSER.crontab
+##############
+
+##############
+
#[letsencrypt renewal]
# run the letsencrypt certificate renewal process every 4 hours.
37 */4 * * * letsencrypt renew &>>/tmp/${CRONUSER}-cron-letsencrypt_renewal.log
+##############
+
+##############
+
#[mailman attribute fix]
# fix the mailman log files so that an obnoxious bug doesn't happen on the mailman web site.
23 5 * * * chmod -R 02775 /var/lib/mailman/logs &>/dev/null
+##############
+
+##############
+
#[nechung fortune]
# runs every minute and recreates a fortune for thunderbird signature.
# a lot of the detail below is to get the feisty meow environment loaded for
# the new_sig command.
* * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; perl $FEISTY_MEOW_SCRIPTS/text/new_sig.pl) &>>/tmp/${CRONUSER}-cron-nechung_fortune.log
+##############
+
+##############
+
#[opensim restart]
# ensure opensim is started if we can't detect it as running.
*/5 * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/opensim/maybe_restart_opensim.sh) &>>/tmp/${CRONUSER}-cron-opensim_restart.log
+##############
+
+##############
+
#[pack feisty for web]
# this packs up our source code distributions every 8 days.
16 22 */8 * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/archival/pack_feisty_meow.sh) &>>/tmp/${CRONUSER}-cron-pack_feisty_for_web.log
+##############
+
--- /dev/null
+
+##############
+
+# [periodic reboot]
+# invigorates a shaky machine that cannot run longer than a certain time period.
+# version below reboots every two days, somewhat.
+20 4 * * 0,2,4,6 (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; sep; echo periodic reboot running at $(date) ; sep; sync; sleep 2; /sbin/reboot) &>>$HOME/${CRONUSER}-cron-periodic_reboot.log
+
+##############
+
+
+##############
+
#[process check]
# a crontab for periodically dumping the process state.
* * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/processes/show_hot_ones.sh) &>>/tmp/${CRONUSER}-cron-active_processes.log
+##############
+
+##############
+
#[random sound]
* * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/multimedia/randomly_play.sh) &>>/tmp/${CRONUSER}-cron-random_sound.log
+##############
+
+##############
+
#[snarf linux configuration]
# do a backup of the linux configuration files once a week.
28 7 * * 4 (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; cd /z/stuffing/archives; perl $FEISTY_MEOW_SCRIPTS/archival/snarf_linux_config.pl) &>>/tmp/${CRONUSER}-cron-snarf_linux_configuration.log
+##############
+
+##############
+
#[synch and swim downstream]
# updates local code repositories from master versions before uploading any changes to downstream
# repositories, such as sourceforge or github. the uploading process (which we think of as sending
# our makefiles. that's why the code below relies on the top-level makefile in home.
14 * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; cd $HOME ; bash $FEISTY_MEOW_SCRIPTS/rev_control/rgetem.sh ; make ) &>>/tmp/${CRONUSER}-cron-synch_and_swim_downstream.log
+##############
+
+##############
+
#[tell zooty our ip]
# firewall host only--inform serene/zooty of our home IP address to enable back-connections.
0,14,28,42,56 * * * * (bash $FEISTY_MEOW_APEX/scripts/security/tell_zooty_our_ip.sh serene.feistymeow.org fred $CRONUSER ) &>>/tmp/${CRONUSER}-cron-tell_zooty_our_ip.log
+##############
+
-#[time synch]
+##############
-# standard to synch to local machine.
+#[time synch]
-##############
+LOCAL_TIME_SERVER=greendragon
-# synchronize time/date with our nearest time server.
-*/4 * * * * /usr/sbin/ntpdate greendragon &>>/tmp/${CRONUSER}-cron-time_synch.log
+# standard version synchs to a local machine. can be used on a network
+# to get time from central host.
+*/4 * * * * /usr/sbin/ntpdate $LOCAL_TIME_SERVER &>>/tmp/${CRONUSER}-cron-time_synch.log
##############
-# one machine on the network uses this version, to synch externally.
+# the central host machine uses this version, to synch time externally.
0 0,4,8,12,16,20 * * * /usr/bin/rdate -s time.nist.gov &>>/tmp/${CRONUSER}-cron-time_synch.log
-#hmmm: is above still correct?
+
+##############
+##############
#[update apt based linux crontab]
# does a daily update of an apt-based linux box at pi o'clock.
14 3 * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/system/naive_system_updater.sh) &>>/tmp/${CRONUSER}-cron-update_aptbased_linux.log
+##############
+
+##############
+
#[uptime report]
# the script writes the current time and current uptime to the log file.
0 * * * * (source $FEISTY_MEOW_APEX/scripts/core/launch_feisty_meow.sh; bash $FEISTY_MEOW_SCRIPTS/system/write_uptime_report.sh) &>>/tmp/${CRONUSER}-cron-uptime_report.log
+##############
+
+##############
+
#[web group perm fix]
# fix the web directories for group access.
0 * * * * chmod -R g+w /var/www &>/dev/null
+##############
+