From f26cf87f5a8c47a1830c357ca4ac7e2114720078 Mon Sep 17 00:00:00 2001 From: Charlie Root Date: Tue, 25 Feb 2020 11:28:31 -0800 Subject: [PATCH] Feb 25, 2020 --- .gitignore | 2 + README.md | 1 + configs/boot/loader.conf | 100 + configs/etc/defaults/devfs.rules | 112 + configs/etc/defaults/periodic.conf | 407 ++ configs/etc/freebsd-update.conf | 76 + configs/etc/fstab | 12 + configs/etc/login.conf | 324 + configs/etc/ntp.conf | 105 + configs/etc/profile | 20 + configs/etc/rc.conf | 85 + configs/etc/resolvconf.conf | 1 + configs/etc/sysctl.conf | 113 + configs/usr/local/etc/nano/asm.nanorc | 25 + configs/usr/local/etc/nano/autoconf.nanorc | 32 + configs/usr/local/etc/nano/awk.nanorc | 37 + configs/usr/local/etc/nano/c.nanorc | 39 + configs/usr/local/etc/nano/changelog.nanorc | 28 + configs/usr/local/etc/nano/cmake.nanorc | 20 + configs/usr/local/etc/nano/css.nanorc | 11 + configs/usr/local/etc/nano/debian.nanorc | 21 + configs/usr/local/etc/nano/default.nanorc | 17 + configs/usr/local/etc/nano/elisp.nanorc | 33 + configs/usr/local/etc/nano/fortran.nanorc | 40 + configs/usr/local/etc/nano/gentoo.nanorc | 74 + configs/usr/local/etc/nano/go.nanorc | 42 + configs/usr/local/etc/nano/groff.nanorc | 26 + configs/usr/local/etc/nano/guile.nanorc | 24 + configs/usr/local/etc/nano/html.nanorc | 28 + configs/usr/local/etc/nano/java.nanorc | 16 + configs/usr/local/etc/nano/javascript.nanorc | 24 + configs/usr/local/etc/nano/json.nanorc | 34 + configs/usr/local/etc/nano/lua.nanorc | 57 + configs/usr/local/etc/nano/makefile.nanorc | 14 + configs/usr/local/etc/nano/man.nanorc | 18 + configs/usr/local/etc/nano/mgp.nanorc | 10 + configs/usr/local/etc/nano/mutt.nanorc | 9 + configs/usr/local/etc/nano/nanohelp.nanorc | 11 + configs/usr/local/etc/nano/nanorc.nanorc | 31 + configs/usr/local/etc/nano/nftables.nanorc | 30 + configs/usr/local/etc/nano/objc.nanorc | 42 + configs/usr/local/etc/nano/ocaml.nanorc | 30 + configs/usr/local/etc/nano/patch.nanorc | 26 + configs/usr/local/etc/nano/perl.nanorc | 15 + configs/usr/local/etc/nano/php.nanorc | 35 + configs/usr/local/etc/nano/po.nanorc | 29 + configs/usr/local/etc/nano/postgresql.nanorc | 75 + configs/usr/local/etc/nano/pov.nanorc | 16 + configs/usr/local/etc/nano/python.nanorc | 33 + configs/usr/local/etc/nano/ruby.nanorc | 36 + configs/usr/local/etc/nano/rust.nanorc | 39 + configs/usr/local/etc/nano/sh.nanorc | 29 + configs/usr/local/etc/nano/spec.nanorc | 40 + configs/usr/local/etc/nano/tcl.nanorc | 20 + configs/usr/local/etc/nano/tex.nanorc | 10 + configs/usr/local/etc/nano/texinfo.nanorc | 21 + configs/usr/local/etc/nano/xml.nanorc | 22 + configs/usr/local/etc/nanorc | 270 + configs/usr/local/etc/nut/ups.conf | 124 + configs/usr/local/etc/nut/upsd.conf | 109 + configs/usr/local/etc/nut/upsd.users | 72 + configs/usr/local/etc/nut/upsmon.conf | 381 ++ configs/usr/local/etc/pkg/repos/pkgp.conf | 20 + configs/usr/local/etc/rc.d/gstat_exporter | 44 + configs/usr/local/etc/scl.conf | 30 + configs/usr/local/etc/smartd.conf | 183 + configs/usr/local/etc/sudoers | 109 + configs/usr/local/etc/syslog-ng.conf | 185 + diyit-org-license.txt | 25 + iocage/Makefile | 24 + jails/config/atm/afp.conf | 32 + jails/config/atm/pkgp.conf | 20 + jails/config/auto/.keep | 0 jails/config/book/cps | 46 + jails/config/calibre/.keep | 0 jails/config/cam/camserver | 44 + jails/config/cert/.keep | 0 jails/config/ci/.keep | 0 jails/config/cloud/020_mod_ssl.conf | 11 + jails/config/cloud/crontab_add | 1 + jails/config/cloud/httpd.conf | 611 ++ jails/config/cloud/php.ini | 1919 ++++++ jails/config/cloud/redis.conf | 1317 ++++ jails/config/cloud/www.conf | 423 ++ jails/config/common/.bash_profile | 77 + jails/config/common/.dir_colors | 148 + jails/config/common/FreeBSD.conf | 1 + jails/config/common/authorized_keys | 1 + jails/config/common/nano/asm.nanorc | 25 + jails/config/common/nano/autoconf.nanorc | 32 + jails/config/common/nano/awk.nanorc | 37 + jails/config/common/nano/c.nanorc | 39 + jails/config/common/nano/changelog.nanorc | 28 + jails/config/common/nano/cmake.nanorc | 20 + jails/config/common/nano/css.nanorc | 11 + jails/config/common/nano/debian.nanorc | 21 + jails/config/common/nano/default.nanorc | 17 + jails/config/common/nano/elisp.nanorc | 33 + jails/config/common/nano/fortran.nanorc | 40 + jails/config/common/nano/gentoo.nanorc | 74 + jails/config/common/nano/go.nanorc | 42 + jails/config/common/nano/groff.nanorc | 26 + jails/config/common/nano/guile.nanorc | 24 + jails/config/common/nano/html.nanorc | 28 + jails/config/common/nano/java.nanorc | 16 + jails/config/common/nano/javascript.nanorc | 24 + jails/config/common/nano/json.nanorc | 34 + jails/config/common/nano/lua.nanorc | 57 + jails/config/common/nano/makefile.nanorc | 14 + jails/config/common/nano/man.nanorc | 18 + jails/config/common/nano/mgp.nanorc | 10 + jails/config/common/nano/mutt.nanorc | 9 + jails/config/common/nano/nanohelp.nanorc | 11 + jails/config/common/nano/nanorc.nanorc | 31 + jails/config/common/nano/nftables.nanorc | 30 + jails/config/common/nano/objc.nanorc | 42 + jails/config/common/nano/ocaml.nanorc | 30 + jails/config/common/nano/patch.nanorc | 26 + jails/config/common/nano/perl.nanorc | 15 + jails/config/common/nano/php.nanorc | 35 + jails/config/common/nano/po.nanorc | 29 + jails/config/common/nano/postgresql.nanorc | 75 + jails/config/common/nano/pov.nanorc | 16 + jails/config/common/nano/python.nanorc | 33 + jails/config/common/nano/ruby.nanorc | 36 + jails/config/common/nano/rust.nanorc | 39 + jails/config/common/nano/sh.nanorc | 29 + jails/config/common/nano/spec.nanorc | 40 + jails/config/common/nano/tcl.nanorc | 20 + jails/config/common/nano/tex.nanorc | 10 + jails/config/common/nano/texinfo.nanorc | 21 + jails/config/common/nano/xml.nanorc | 22 + jails/config/common/nanorc | 270 + jails/config/common/pkgp.conf | 20 + jails/config/common/snip-sendmail.sh | 12 + jails/config/common/sshd_config | 121 + jails/config/common/vncserver | 49 + jails/config/common/xstartup | 25 + jails/config/db/my.cnf | 99 + jails/config/db/mysqld_exporter/my.cnf | 3 + jails/config/debian/.keep | 0 jails/config/dns/.keep | 0 jails/config/git/gitea/conf/app.ini.defaults | 785 +++ jails/config/git/gitea/conf/app.ini.sample | 93 + jails/config/git/gitea/options/license | 25 + .../git/gitea/public/diyit-org-license.txt | 25 + .../gitea/templates/base/footer_content.tmpl | 4 + jails/config/hub/.htaccess | 12 + jails/config/hub/020_mod_ssl.conf | 11 + jails/config/hub/httpd.conf | 612 ++ jails/config/hub/httpd.conf.no_http2_fpm | 586 ++ jails/config/hub/menu | 419 ++ jails/config/hub/periodic.conf | 4 + jails/config/hub/php.ini | 1918 ++++++ jails/config/hub/phptest.php | 1 + jails/config/hub/pkgp.conf | 20 + jails/config/hub/setup_jail.sh | 6 + jails/config/hub/smb4.conf | 88 + jails/config/hub/smb_quota_void.sh | 2 + jails/config/hub/sshd_config | 121 + jails/config/hub/www.conf | 423 ++ jails/config/ldap-mgr/020_mod_ssl.conf | 11 + .../ldap-mgr/config.php.phpldapadmin.github | 576 ++ jails/config/ldap-mgr/httpd.conf | 583 ++ jails/config/ldap-mgr/php.ini | 1937 ++++++ jails/config/ldap/pkgp.conf | 20 + jails/config/mage/.keep | 0 .../mail/.secret/dkim/ahlawat.com.dkim.key | 28 + .../mail/.secret/dkim/beyondbell.com.dkim.key | 28 + .../mail/.secret/dkim/diyit.org.dkim.key | 28 + .../mail/.secret/dkim/diyit.space.dkim.key | 28 + jails/config/mail/dcc_conf | 3 + jails/config/mail/dovecot/README | 2 + jails/config/mail/dovecot/conf.d/10-auth.conf | 21 + jails/config/mail/dovecot/conf.d/10-mail.conf | 28 + .../config/mail/dovecot/conf.d/10-master.conf | 60 + jails/config/mail/dovecot/conf.d/10-ssl.conf | 11 + jails/config/mail/dovecot/conf.d/15-lda.conf | 7 + .../mail/dovecot/conf.d/15-mailboxes.conf | 24 + jails/config/mail/dovecot/conf.d/20-imap.conf | 10 + jails/config/mail/dovecot/conf.d/20-lmtp.conf | 5 + .../mail/dovecot/conf.d/20-managesieve.conf | 14 + jails/config/mail/dovecot/conf.d/90-fts.conf | 6 + .../mail/dovecot/conf.d/90-imapsieve.conf | 18 + .../config/mail/dovecot/conf.d/90-sieve.conf | 21 + jails/config/mail/dovecot/dovecot.conf | 9 + .../example-config/conf.d/10-auth.conf | 128 + .../example-config/conf.d/10-director.conf | 60 + .../example-config/conf.d/10-logging.conf | 109 + .../example-config/conf.d/10-mail.conf | 414 ++ .../example-config/conf.d/10-master.conf | 130 + .../dovecot/example-config/conf.d/10-ssl.conf | 78 + .../dovecot/example-config/conf.d/15-lda.conf | 48 + .../example-config/conf.d/15-mailboxes.conf | 78 + .../example-config/conf.d/20-imap.conf | 98 + .../example-config/conf.d/20-lmtp.conf | 26 + .../example-config/conf.d/20-pop3.conf | 99 + .../example-config/conf.d/20-submission.conf | 112 + .../dovecot/example-config/conf.d/90-acl.conf | 19 + .../example-config/conf.d/90-plugin.conf | 11 + .../example-config/conf.d/90-quota.conf | 83 + .../conf.d/auth-checkpassword.conf.ext | 21 + .../example-config/conf.d/auth-deny.conf.ext | 15 + .../example-config/conf.d/auth-dict.conf.ext | 16 + .../example-config/conf.d/auth-ldap.conf.ext | 33 + .../conf.d/auth-master.conf.ext | 16 + .../conf.d/auth-passwdfile.conf.ext | 20 + .../example-config/conf.d/auth-sql.conf.ext | 30 + .../conf.d/auth-static.conf.ext | 24 + .../conf.d/auth-system.conf.ext | 74 + .../conf.d/auth-vpopmail.conf.ext | 17 + .../example-config/dovecot-dict-auth.conf.ext | 54 + .../example-config/dovecot-dict-sql.conf.ext | 41 + .../example-config/dovecot-ldap.conf.ext | 151 + .../example-config/dovecot-sql.conf.ext | 144 + .../mail/dovecot/example-config/dovecot.conf | 102 + jails/config/mail/dovecot/ldap.conf.ext | 14 + .../dovecot/sieve-before.d/10-rspamd.sieve | 5 + .../dovecot/sieve-before.d/10-rspamd.svbin | Bin 0 -> 242 bytes .../mail/dovecot/sieve/report-ham.sieve | 15 + .../mail/dovecot/sieve/report-ham.svbin | Bin 0 -> 452 bytes .../mail/dovecot/sieve/report-spam.sieve | 7 + .../mail/dovecot/sieve/report-spam.svbin | Bin 0 -> 354 bytes jails/config/mail/dovecot/sieve/train-ham.sh | 1 + jails/config/mail/dovecot/sieve/train-spam.sh | 1 + jails/config/mail/periodic.conf | 4 + jails/config/mail/pkgp.conf | 20 + jails/config/mail/postfix/LICENSE | 508 ++ jails/config/mail/postfix/TLS_LICENSE | 36 + jails/config/mail/postfix/bounce.cf.default | 112 + .../ldap-virtual-mailbox-alias-maps.cf | 6 + .../postfix/ldap-virtual-mailbox-domains.cf | 6 + .../mail/postfix/ldap-virtual-mailbox-maps.cf | 6 + jails/config/mail/postfix/main.cf | 810 +++ jails/config/mail/postfix/main.cf.default | 918 +++ jails/config/mail/postfix/main.cf.sample | 677 ++ jails/config/mail/postfix/master.cf | 135 + jails/config/mail/postfix/master.cf.sample | 133 + jails/config/mail/postfix/reinit.sac | 10 + .../mail/postfix/virtual-maillist-alias-maps | 3 + .../postfix/virtual-maillist-alias-maps.db | Bin 0 -> 131072 bytes jails/config/mail/redis.conf | 1318 ++++ jails/config/mail/rspamd/actions.conf | 29 + jails/config/mail/rspamd/cgp.inc | 17 + jails/config/mail/rspamd/common.conf | 40 + jails/config/mail/rspamd/composites.conf | 160 + jails/config/mail/rspamd/groups.conf | 120 + .../mail/rspamd/local.d/classifier-bayes.conf | 2 + jails/config/mail/rspamd/local.d/dcc.conf | 3 + .../mail/rspamd/local.d/dkim_signing.conf | 3 + .../config/mail/rspamd/local.d/mx_check.conf | 2 + .../config/mail/rspamd/local.d/phishing.conf | 3 + jails/config/mail/rspamd/local.d/redis.conf | 2 + jails/config/mail/rspamd/local.d/replies.conf | 2 + jails/config/mail/rspamd/local.d/surbl.conf | 2 + .../mail/rspamd/local.d/url_reputation.conf | 2 + .../config/mail/rspamd/local.d/url_tags.conf | 2 + .../mail/rspamd/local.d/worker-controller.inc | 10 + .../mail/rspamd/local.d/worker-normal.inc | 3 + .../mail/rspamd/local.d/worker-proxy.inc | 13 + jails/config/mail/rspamd/logging.inc | 35 + .../mail/rspamd/maps.d/dmarc_whitelist.inc | 70 + jails/config/mail/rspamd/maps.d/maillist.inc | 208 + jails/config/mail/rspamd/maps.d/mid.inc | 22 + .../config/mail/rspamd/maps.d/mime_types.inc | 1533 +++++ .../config/mail/rspamd/maps.d/redirectors.inc | 1045 +++ .../mail/rspamd/maps.d/spf_dkim_whitelist.inc | 233 + .../mail/rspamd/maps.d/surbl-whitelist.inc | 830 +++ jails/config/mail/rspamd/metrics.conf | 24 + jails/config/mail/rspamd/modules.conf | 17 + .../mail/rspamd/modules.d/antivirus.conf | 59 + jails/config/mail/rspamd/modules.d/arc.conf | 72 + jails/config/mail/rspamd/modules.d/asn.conf | 29 + .../mail/rspamd/modules.d/chartable.conf | 21 + .../mail/rspamd/modules.d/clickhouse.conf | 60 + jails/config/mail/rspamd/modules.d/dcc.conf | 28 + jails/config/mail/rspamd/modules.d/dkim.conf | 25 + .../mail/rspamd/modules.d/dkim_signing.conf | 77 + jails/config/mail/rspamd/modules.d/dmarc.conf | 19 + .../config/mail/rspamd/modules.d/elastic.conf | 35 + .../config/mail/rspamd/modules.d/emails.conf | 8 + .../rspamd/modules.d/external_services.conf | 92 + .../mail/rspamd/modules.d/force_actions.conf | 22 + .../rspamd/modules.d/forged_recipients.conf | 22 + .../mail/rspamd/modules.d/fuzzy_check.conf | 48 + .../mail/rspamd/modules.d/greylist.conf | 35 + .../config/mail/rspamd/modules.d/hfilter.conf | 26 + .../mail/rspamd/modules.d/history_redis.conf | 25 + .../mail/rspamd/modules.d/maillist.conf | 20 + .../rspamd/modules.d/metadata_exporter.conf | 24 + .../rspamd/modules.d/metric_exporter.conf | 21 + jails/config/mail/rspamd/modules.d/mid.conf | 28 + .../mail/rspamd/modules.d/milter_headers.conf | 29 + .../mail/rspamd/modules.d/mime_types.conf | 40 + .../mail/rspamd/modules.d/multimap.conf | 167 + .../mail/rspamd/modules.d/mx_check.conf | 43 + .../config/mail/rspamd/modules.d/neural.conf | 37 + .../mail/rspamd/modules.d/once_received.conf | 26 + jails/config/mail/rspamd/modules.d/p0f.conf | 45 + .../mail/rspamd/modules.d/phishing.conf | 35 + .../mail/rspamd/modules.d/ratelimit.conf | 45 + jails/config/mail/rspamd/modules.d/rbl.conf | 325 + jails/config/mail/rspamd/modules.d/redis.conf | 26 + .../config/mail/rspamd/modules.d/regexp.conf | 21 + .../config/mail/rspamd/modules.d/replies.conf | 30 + .../mail/rspamd/modules.d/reputation.conf | 30 + .../mail/rspamd/modules.d/rspamd_update.conf | 26 + .../mail/rspamd/modules.d/spamassassin.conf | 26 + .../mail/rspamd/modules.d/spamtrap.conf | 53 + jails/config/mail/rspamd/modules.d/spf.conf | 21 + jails/config/mail/rspamd/modules.d/surbl.conf | 9 + jails/config/mail/rspamd/modules.d/trie.conf | 37 + .../mail/rspamd/modules.d/url_redirector.conf | 27 + .../mail/rspamd/modules.d/whitelist.conf | 66 + jails/config/mail/rspamd/options.inc | 68 + jails/config/mail/rspamd/rspamd.conf | 67 + .../config/mail/rspamd/rspamd.newsyslog.conf | 11 + .../mail/rspamd/rspamd.newsyslog.conf.sample | 11 + .../mail/rspamd/scores.d/fuzzy_group.conf | 37 + .../mail/rspamd/scores.d/headers_group.conf | 67 + .../mail/rspamd/scores.d/hfilter_group.conf | 133 + .../rspamd/scores.d/mime_types_group.conf | 66 + .../mail/rspamd/scores.d/mua_group.conf | 25 + .../mail/rspamd/scores.d/phishing_group.conf | 40 + .../mail/rspamd/scores.d/policies_group.conf | 124 + .../mail/rspamd/scores.d/rbl_group.conf | 254 + .../rspamd/scores.d/statistics_group.conf | 29 + .../mail/rspamd/scores.d/subject_group.conf | 23 + .../mail/rspamd/scores.d/surbl_group.conf | 228 + .../mail/rspamd/scores.d/whitelist_group.conf | 55 + jails/config/mail/rspamd/settings.conf | 66 + jails/config/mail/rspamd/statistic.conf | 58 + .../config/mail/rspamd/worker-controller.inc | 19 + jails/config/mail/rspamd/worker-fuzzy.inc | 22 + jails/config/mail/rspamd/worker-normal.inc | 15 + jails/config/mail/rspamd/worker-proxy.inc | 28 + jails/config/mail/schema.xml | 48 + jails/config/mail/solrconfig.xml | 289 + jails/config/maps/index.js | 1039 +++ jails/config/maps/maps | 44 + jails/config/maps/networkmaps/config.json | 64 + .../matrix/matrix.ahlawat.com.log.config | 38 + jails/config/monitor/.htaccess | 4 + jails/config/monitor/020_mod_ssl.conf | 11 + jails/config/monitor/alert_rules.yml | 45 + jails/config/monitor/alertmanager.yml | 70 + jails/config/monitor/elasticsearch.yml | 105 + jails/config/monitor/fstab | 2 + jails/config/monitor/grafana.conf | 549 ++ jails/config/monitor/heartbeat.yml | 197 + jails/config/monitor/httpd.conf | 618 ++ jails/config/monitor/jvm.options | 122 + jails/config/monitor/kibana.yml | 113 + jails/config/monitor/logstash.conf | 30 + jails/config/monitor/logstash.keystore | Bin 0 -> 892 bytes jails/config/monitor/logstash.yml | 251 + jails/config/monitor/php.ini | 1918 ++++++ jails/config/monitor/prometheus.yml | 70 + jails/config/monitor/start_logstash.sh | 2 + jails/config/monitor/telegraf.conf | 6058 +++++++++++++++++ jails/config/monitor/www.conf | 423 ++ jails/config/nivi/020_mod_ssl.conf | 11 + jails/config/nivi/Koken_Installer.zip | Bin 0 -> 11881 bytes jails/config/nivi/httpd.conf | 610 ++ jails/config/nivi/php.ini | 1918 ++++++ jails/config/nivi/www.conf | 423 ++ jails/config/pkgp/freebsd-update.conf | 76 + jails/config/pkgp/make.conf | 2 + jails/config/pkgp/mime.types | 95 + jails/config/pkgp/mypkgs | 15 + jails/config/pkgp/nginx.conf | 194 + jails/config/pkgp/poudriere.conf | 320 + jails/config/plex/Settings.cfg | 26 + jails/config/plex/plexconnect | 41 + jails/config/proxy/haproxy.conf | 230 + jails/config/proxy/pkgp.conf | 20 + jails/config/r-api/.keep | 0 jails/config/r-automated/.keep | 0 jails/config/r-ci/.keep | 0 jails/config/r-db/my.cnf | 99 + .../config/r-git/gitea/conf/app.ini.defaults | 785 +++ jails/config/r-git/gitea/conf/app.ini.sample | 93 + jails/config/r-git/gitea/options/license | 25 + .../gitea/public/beyondbell-com-license.txt | 25 + .../gitea/templates/base/footer_content.tmpl | 4 + jails/config/r-ldap-mgr/020_mod_ssl.conf | 11 + .../r-ldap-mgr/config.php.phpldapadmin.github | 576 ++ jails/config/r-ldap-mgr/httpd.conf | 583 ++ jails/config/r-ldap-mgr/php.ini | 1937 ++++++ jails/config/r-ldap/pkgp.conf | 20 + jails/config/r-repo/.keep | 0 jails/config/r-web/.keep | 0 jails/config/rishabh/020_mod_ssl.conf | 11 + jails/config/rishabh/httpd.conf | 610 ++ jails/config/rishabh/php.ini | 1918 ++++++ jails/config/rishabh/www.conf | 423 ++ jails/config/sharad/020_mod_ssl.conf | 11 + jails/config/sharad/httpd.conf | 610 ++ jails/config/sharad/php.ini | 1918 ++++++ jails/config/sharad/www.conf | 423 ++ jails/config/test/.keep | 0 jails/config/torrent/backup.sh | 2 + jails/config/torrent/setup_jail.sh | 6 + jails/config/vm/.tmux.conf | 12 + jails/config/vm/create_taps.sh | 35 + jails/config/vm/freebsd.sh | 64 + jails/config/vm/pbx.sh | 67 + jails/config/vm/r-windows.sh | 64 + jails/config/vm/setup_jail.sh | 4 + jails/config/vm/startvms.sh | 41 + jails/config/vm/ubuntu.sh | 63 + jails/config/web-diyit/020_mod_ssl.conf | 11 + jails/config/web-diyit/blackbox_exporter.yml | 33 + jails/config/web-diyit/httpd.conf | 616 ++ jails/config/web-diyit/php.ini | 1918 ++++++ jails/config/web-diyit/resolvconf.conf | 2 + jails/config/web-diyit/www.conf | 423 ++ jails/config/web/.htaccess | 12 + jails/config/web/020_mod_ssl.conf | 11 + jails/config/web/httpd.conf | 612 ++ jails/config/web/php.ini | 1918 ++++++ jails/config/web/pkgp.conf | 20 + jails/config/web/www.conf | 423 ++ jails/create.sh | 180 + jails/jails-restore-httpd.sh | 18 + jails/jails-update-cert.sh | 43 + jails/jails-update-pkgs.sh | 105 + jails/update.sh | 53 + patches/344061.patch | 20 + patches/344356.patch | 18 + patches/D20868.patch | 17 + patches/D20869.patch | 15 + scripts/crontab.txt | 2 + scripts/gstat_exporter.py | 411 ++ scripts/zfs-prune-snapshots | 172 + scripts/zfs_health.sh | 131 + 436 files changed, 67904 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 configs/boot/loader.conf create mode 100644 configs/etc/defaults/devfs.rules create mode 100644 configs/etc/defaults/periodic.conf create mode 100644 configs/etc/freebsd-update.conf create mode 100644 configs/etc/fstab create mode 100644 configs/etc/login.conf create mode 100644 configs/etc/ntp.conf create mode 100644 configs/etc/profile create mode 100644 configs/etc/rc.conf create mode 100644 configs/etc/resolvconf.conf create mode 100644 configs/etc/sysctl.conf create mode 100644 configs/usr/local/etc/nano/asm.nanorc create mode 100644 configs/usr/local/etc/nano/autoconf.nanorc create mode 100644 configs/usr/local/etc/nano/awk.nanorc create mode 100644 configs/usr/local/etc/nano/c.nanorc create mode 100644 configs/usr/local/etc/nano/changelog.nanorc create mode 100644 configs/usr/local/etc/nano/cmake.nanorc create mode 100644 configs/usr/local/etc/nano/css.nanorc create mode 100644 configs/usr/local/etc/nano/debian.nanorc create mode 100644 configs/usr/local/etc/nano/default.nanorc create mode 100644 configs/usr/local/etc/nano/elisp.nanorc create mode 100644 configs/usr/local/etc/nano/fortran.nanorc create mode 100644 configs/usr/local/etc/nano/gentoo.nanorc create mode 100644 configs/usr/local/etc/nano/go.nanorc create mode 100644 configs/usr/local/etc/nano/groff.nanorc create mode 100644 configs/usr/local/etc/nano/guile.nanorc create mode 100644 configs/usr/local/etc/nano/html.nanorc create mode 100644 configs/usr/local/etc/nano/java.nanorc create mode 100644 configs/usr/local/etc/nano/javascript.nanorc create mode 100644 configs/usr/local/etc/nano/json.nanorc create mode 100644 configs/usr/local/etc/nano/lua.nanorc create mode 100644 configs/usr/local/etc/nano/makefile.nanorc create mode 100644 configs/usr/local/etc/nano/man.nanorc create mode 100644 configs/usr/local/etc/nano/mgp.nanorc create mode 100644 configs/usr/local/etc/nano/mutt.nanorc create mode 100644 configs/usr/local/etc/nano/nanohelp.nanorc create mode 100644 configs/usr/local/etc/nano/nanorc.nanorc create mode 100644 configs/usr/local/etc/nano/nftables.nanorc create mode 100644 configs/usr/local/etc/nano/objc.nanorc create mode 100644 configs/usr/local/etc/nano/ocaml.nanorc create mode 100644 configs/usr/local/etc/nano/patch.nanorc create mode 100644 configs/usr/local/etc/nano/perl.nanorc create mode 100644 configs/usr/local/etc/nano/php.nanorc create mode 100644 configs/usr/local/etc/nano/po.nanorc create mode 100644 configs/usr/local/etc/nano/postgresql.nanorc create mode 100644 configs/usr/local/etc/nano/pov.nanorc create mode 100644 configs/usr/local/etc/nano/python.nanorc create mode 100644 configs/usr/local/etc/nano/ruby.nanorc create mode 100644 configs/usr/local/etc/nano/rust.nanorc create mode 100644 configs/usr/local/etc/nano/sh.nanorc create mode 100644 configs/usr/local/etc/nano/spec.nanorc create mode 100644 configs/usr/local/etc/nano/tcl.nanorc create mode 100644 configs/usr/local/etc/nano/tex.nanorc create mode 100644 configs/usr/local/etc/nano/texinfo.nanorc create mode 100644 configs/usr/local/etc/nano/xml.nanorc create mode 100644 configs/usr/local/etc/nanorc create mode 100644 configs/usr/local/etc/nut/ups.conf create mode 100644 configs/usr/local/etc/nut/upsd.conf create mode 100644 configs/usr/local/etc/nut/upsd.users create mode 100644 configs/usr/local/etc/nut/upsmon.conf create mode 100644 configs/usr/local/etc/pkg/repos/pkgp.conf create mode 100755 configs/usr/local/etc/rc.d/gstat_exporter create mode 100644 configs/usr/local/etc/scl.conf create mode 100644 configs/usr/local/etc/smartd.conf create mode 100644 configs/usr/local/etc/sudoers create mode 100644 configs/usr/local/etc/syslog-ng.conf create mode 100644 diyit-org-license.txt create mode 100644 iocage/Makefile create mode 100644 jails/config/atm/afp.conf create mode 100644 jails/config/atm/pkgp.conf create mode 100644 jails/config/auto/.keep create mode 100755 jails/config/book/cps create mode 100644 jails/config/calibre/.keep create mode 100644 jails/config/cam/camserver create mode 100644 jails/config/cert/.keep create mode 100644 jails/config/ci/.keep create mode 100644 jails/config/cloud/020_mod_ssl.conf create mode 100644 jails/config/cloud/crontab_add create mode 100644 jails/config/cloud/httpd.conf create mode 100644 jails/config/cloud/php.ini create mode 100644 jails/config/cloud/redis.conf create mode 100644 jails/config/cloud/www.conf create mode 100644 jails/config/common/.bash_profile create mode 100644 jails/config/common/.dir_colors create mode 100644 jails/config/common/FreeBSD.conf create mode 100644 jails/config/common/authorized_keys create mode 100644 jails/config/common/nano/asm.nanorc create mode 100644 jails/config/common/nano/autoconf.nanorc create mode 100644 jails/config/common/nano/awk.nanorc create mode 100644 jails/config/common/nano/c.nanorc create mode 100644 jails/config/common/nano/changelog.nanorc create mode 100644 jails/config/common/nano/cmake.nanorc create mode 100644 jails/config/common/nano/css.nanorc create mode 100644 jails/config/common/nano/debian.nanorc create mode 100644 jails/config/common/nano/default.nanorc create mode 100644 jails/config/common/nano/elisp.nanorc create mode 100644 jails/config/common/nano/fortran.nanorc create mode 100644 jails/config/common/nano/gentoo.nanorc create mode 100644 jails/config/common/nano/go.nanorc create mode 100644 jails/config/common/nano/groff.nanorc create mode 100644 jails/config/common/nano/guile.nanorc create mode 100644 jails/config/common/nano/html.nanorc create mode 100644 jails/config/common/nano/java.nanorc create mode 100644 jails/config/common/nano/javascript.nanorc create mode 100644 jails/config/common/nano/json.nanorc create mode 100644 jails/config/common/nano/lua.nanorc create mode 100644 jails/config/common/nano/makefile.nanorc create mode 100644 jails/config/common/nano/man.nanorc create mode 100644 jails/config/common/nano/mgp.nanorc create mode 100644 jails/config/common/nano/mutt.nanorc create mode 100644 jails/config/common/nano/nanohelp.nanorc create mode 100644 jails/config/common/nano/nanorc.nanorc create mode 100644 jails/config/common/nano/nftables.nanorc create mode 100644 jails/config/common/nano/objc.nanorc create mode 100644 jails/config/common/nano/ocaml.nanorc create mode 100644 jails/config/common/nano/patch.nanorc create mode 100644 jails/config/common/nano/perl.nanorc create mode 100644 jails/config/common/nano/php.nanorc create mode 100644 jails/config/common/nano/po.nanorc create mode 100644 jails/config/common/nano/postgresql.nanorc create mode 100644 jails/config/common/nano/pov.nanorc create mode 100644 jails/config/common/nano/python.nanorc create mode 100644 jails/config/common/nano/ruby.nanorc create mode 100644 jails/config/common/nano/rust.nanorc create mode 100644 jails/config/common/nano/sh.nanorc create mode 100644 jails/config/common/nano/spec.nanorc create mode 100644 jails/config/common/nano/tcl.nanorc create mode 100644 jails/config/common/nano/tex.nanorc create mode 100644 jails/config/common/nano/texinfo.nanorc create mode 100644 jails/config/common/nano/xml.nanorc create mode 100644 jails/config/common/nanorc create mode 100644 jails/config/common/pkgp.conf create mode 100755 jails/config/common/snip-sendmail.sh create mode 100644 jails/config/common/sshd_config create mode 100644 jails/config/common/vncserver create mode 100755 jails/config/common/xstartup create mode 100644 jails/config/db/my.cnf create mode 100644 jails/config/db/mysqld_exporter/my.cnf create mode 100644 jails/config/debian/.keep create mode 100644 jails/config/dns/.keep create mode 100644 jails/config/git/gitea/conf/app.ini.defaults create mode 100644 jails/config/git/gitea/conf/app.ini.sample create mode 100644 jails/config/git/gitea/options/license create mode 100644 jails/config/git/gitea/public/diyit-org-license.txt create mode 100644 jails/config/git/gitea/templates/base/footer_content.tmpl create mode 100644 jails/config/hub/.htaccess create mode 100644 jails/config/hub/020_mod_ssl.conf create mode 100644 jails/config/hub/httpd.conf create mode 100644 jails/config/hub/httpd.conf.no_http2_fpm create mode 100644 jails/config/hub/menu create mode 100644 jails/config/hub/periodic.conf create mode 100644 jails/config/hub/php.ini create mode 100644 jails/config/hub/phptest.php create mode 100644 jails/config/hub/pkgp.conf create mode 100755 jails/config/hub/setup_jail.sh create mode 100644 jails/config/hub/smb4.conf create mode 100755 jails/config/hub/smb_quota_void.sh create mode 100644 jails/config/hub/sshd_config create mode 100644 jails/config/hub/www.conf create mode 100644 jails/config/ldap-mgr/020_mod_ssl.conf create mode 100644 jails/config/ldap-mgr/config.php.phpldapadmin.github create mode 100644 jails/config/ldap-mgr/httpd.conf create mode 100644 jails/config/ldap-mgr/php.ini create mode 100644 jails/config/ldap/pkgp.conf create mode 100644 jails/config/mage/.keep create mode 100644 jails/config/mail/.secret/dkim/ahlawat.com.dkim.key create mode 100644 jails/config/mail/.secret/dkim/beyondbell.com.dkim.key create mode 100644 jails/config/mail/.secret/dkim/diyit.org.dkim.key create mode 100644 jails/config/mail/.secret/dkim/diyit.space.dkim.key create mode 100644 jails/config/mail/dcc_conf create mode 100644 jails/config/mail/dovecot/README create mode 100644 jails/config/mail/dovecot/conf.d/10-auth.conf create mode 100644 jails/config/mail/dovecot/conf.d/10-mail.conf create mode 100644 jails/config/mail/dovecot/conf.d/10-master.conf create mode 100644 jails/config/mail/dovecot/conf.d/10-ssl.conf create mode 100644 jails/config/mail/dovecot/conf.d/15-lda.conf create mode 100644 jails/config/mail/dovecot/conf.d/15-mailboxes.conf create mode 100644 jails/config/mail/dovecot/conf.d/20-imap.conf create mode 100644 jails/config/mail/dovecot/conf.d/20-lmtp.conf create mode 100644 jails/config/mail/dovecot/conf.d/20-managesieve.conf create mode 100644 jails/config/mail/dovecot/conf.d/90-fts.conf create mode 100644 jails/config/mail/dovecot/conf.d/90-imapsieve.conf create mode 100644 jails/config/mail/dovecot/conf.d/90-sieve.conf create mode 100644 jails/config/mail/dovecot/dovecot.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-auth.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-director.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-logging.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-mail.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-master.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/10-ssl.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/15-lda.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/15-mailboxes.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/20-imap.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/20-lmtp.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/20-pop3.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/20-submission.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/90-acl.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/90-plugin.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/90-quota.conf create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-checkpassword.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-deny.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-dict.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-ldap.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-master.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-passwdfile.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-sql.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-static.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-system.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/conf.d/auth-vpopmail.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/dovecot-dict-auth.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/dovecot-dict-sql.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/dovecot-ldap.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/dovecot-sql.conf.ext create mode 100644 jails/config/mail/dovecot/example-config/dovecot.conf create mode 100644 jails/config/mail/dovecot/ldap.conf.ext create mode 100644 jails/config/mail/dovecot/sieve-before.d/10-rspamd.sieve create mode 100644 jails/config/mail/dovecot/sieve-before.d/10-rspamd.svbin create mode 100644 jails/config/mail/dovecot/sieve/report-ham.sieve create mode 100644 jails/config/mail/dovecot/sieve/report-ham.svbin create mode 100644 jails/config/mail/dovecot/sieve/report-spam.sieve create mode 100644 jails/config/mail/dovecot/sieve/report-spam.svbin create mode 100755 jails/config/mail/dovecot/sieve/train-ham.sh create mode 100755 jails/config/mail/dovecot/sieve/train-spam.sh create mode 100644 jails/config/mail/periodic.conf create mode 100644 jails/config/mail/pkgp.conf create mode 100644 jails/config/mail/postfix/LICENSE create mode 100644 jails/config/mail/postfix/TLS_LICENSE create mode 100644 jails/config/mail/postfix/bounce.cf.default create mode 100644 jails/config/mail/postfix/ldap-virtual-mailbox-alias-maps.cf create mode 100644 jails/config/mail/postfix/ldap-virtual-mailbox-domains.cf create mode 100644 jails/config/mail/postfix/ldap-virtual-mailbox-maps.cf create mode 100644 jails/config/mail/postfix/main.cf create mode 100644 jails/config/mail/postfix/main.cf.default create mode 100644 jails/config/mail/postfix/main.cf.sample create mode 100644 jails/config/mail/postfix/master.cf create mode 100644 jails/config/mail/postfix/master.cf.sample create mode 100755 jails/config/mail/postfix/reinit.sac create mode 100644 jails/config/mail/postfix/virtual-maillist-alias-maps create mode 100644 jails/config/mail/postfix/virtual-maillist-alias-maps.db create mode 100644 jails/config/mail/redis.conf create mode 100644 jails/config/mail/rspamd/actions.conf create mode 100644 jails/config/mail/rspamd/cgp.inc create mode 100644 jails/config/mail/rspamd/common.conf create mode 100644 jails/config/mail/rspamd/composites.conf create mode 100644 jails/config/mail/rspamd/groups.conf create mode 100644 jails/config/mail/rspamd/local.d/classifier-bayes.conf create mode 100644 jails/config/mail/rspamd/local.d/dcc.conf create mode 100644 jails/config/mail/rspamd/local.d/dkim_signing.conf create mode 100644 jails/config/mail/rspamd/local.d/mx_check.conf create mode 100644 jails/config/mail/rspamd/local.d/phishing.conf create mode 100644 jails/config/mail/rspamd/local.d/redis.conf create mode 100644 jails/config/mail/rspamd/local.d/replies.conf create mode 100644 jails/config/mail/rspamd/local.d/surbl.conf create mode 100644 jails/config/mail/rspamd/local.d/url_reputation.conf create mode 100644 jails/config/mail/rspamd/local.d/url_tags.conf create mode 100644 jails/config/mail/rspamd/local.d/worker-controller.inc create mode 100644 jails/config/mail/rspamd/local.d/worker-normal.inc create mode 100644 jails/config/mail/rspamd/local.d/worker-proxy.inc create mode 100644 jails/config/mail/rspamd/logging.inc create mode 100644 jails/config/mail/rspamd/maps.d/dmarc_whitelist.inc create mode 100644 jails/config/mail/rspamd/maps.d/maillist.inc create mode 100644 jails/config/mail/rspamd/maps.d/mid.inc create mode 100644 jails/config/mail/rspamd/maps.d/mime_types.inc create mode 100644 jails/config/mail/rspamd/maps.d/redirectors.inc create mode 100644 jails/config/mail/rspamd/maps.d/spf_dkim_whitelist.inc create mode 100644 jails/config/mail/rspamd/maps.d/surbl-whitelist.inc create mode 100644 jails/config/mail/rspamd/metrics.conf create mode 100644 jails/config/mail/rspamd/modules.conf create mode 100644 jails/config/mail/rspamd/modules.d/antivirus.conf create mode 100644 jails/config/mail/rspamd/modules.d/arc.conf create mode 100644 jails/config/mail/rspamd/modules.d/asn.conf create mode 100644 jails/config/mail/rspamd/modules.d/chartable.conf create mode 100644 jails/config/mail/rspamd/modules.d/clickhouse.conf create mode 100644 jails/config/mail/rspamd/modules.d/dcc.conf create mode 100644 jails/config/mail/rspamd/modules.d/dkim.conf create mode 100644 jails/config/mail/rspamd/modules.d/dkim_signing.conf create mode 100644 jails/config/mail/rspamd/modules.d/dmarc.conf create mode 100644 jails/config/mail/rspamd/modules.d/elastic.conf create mode 100644 jails/config/mail/rspamd/modules.d/emails.conf create mode 100644 jails/config/mail/rspamd/modules.d/external_services.conf create mode 100644 jails/config/mail/rspamd/modules.d/force_actions.conf create mode 100644 jails/config/mail/rspamd/modules.d/forged_recipients.conf create mode 100644 jails/config/mail/rspamd/modules.d/fuzzy_check.conf create mode 100644 jails/config/mail/rspamd/modules.d/greylist.conf create mode 100644 jails/config/mail/rspamd/modules.d/hfilter.conf create mode 100644 jails/config/mail/rspamd/modules.d/history_redis.conf create mode 100644 jails/config/mail/rspamd/modules.d/maillist.conf create mode 100644 jails/config/mail/rspamd/modules.d/metadata_exporter.conf create mode 100644 jails/config/mail/rspamd/modules.d/metric_exporter.conf create mode 100644 jails/config/mail/rspamd/modules.d/mid.conf create mode 100644 jails/config/mail/rspamd/modules.d/milter_headers.conf create mode 100644 jails/config/mail/rspamd/modules.d/mime_types.conf create mode 100644 jails/config/mail/rspamd/modules.d/multimap.conf create mode 100644 jails/config/mail/rspamd/modules.d/mx_check.conf create mode 100644 jails/config/mail/rspamd/modules.d/neural.conf create mode 100644 jails/config/mail/rspamd/modules.d/once_received.conf create mode 100644 jails/config/mail/rspamd/modules.d/p0f.conf create mode 100644 jails/config/mail/rspamd/modules.d/phishing.conf create mode 100644 jails/config/mail/rspamd/modules.d/ratelimit.conf create mode 100644 jails/config/mail/rspamd/modules.d/rbl.conf create mode 100644 jails/config/mail/rspamd/modules.d/redis.conf create mode 100644 jails/config/mail/rspamd/modules.d/regexp.conf create mode 100644 jails/config/mail/rspamd/modules.d/replies.conf create mode 100644 jails/config/mail/rspamd/modules.d/reputation.conf create mode 100644 jails/config/mail/rspamd/modules.d/rspamd_update.conf create mode 100644 jails/config/mail/rspamd/modules.d/spamassassin.conf create mode 100644 jails/config/mail/rspamd/modules.d/spamtrap.conf create mode 100644 jails/config/mail/rspamd/modules.d/spf.conf create mode 100644 jails/config/mail/rspamd/modules.d/surbl.conf create mode 100644 jails/config/mail/rspamd/modules.d/trie.conf create mode 100644 jails/config/mail/rspamd/modules.d/url_redirector.conf create mode 100644 jails/config/mail/rspamd/modules.d/whitelist.conf create mode 100644 jails/config/mail/rspamd/options.inc create mode 100644 jails/config/mail/rspamd/rspamd.conf create mode 100644 jails/config/mail/rspamd/rspamd.newsyslog.conf create mode 100644 jails/config/mail/rspamd/rspamd.newsyslog.conf.sample create mode 100644 jails/config/mail/rspamd/scores.d/fuzzy_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/headers_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/hfilter_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/mime_types_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/mua_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/phishing_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/policies_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/rbl_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/statistics_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/subject_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/surbl_group.conf create mode 100644 jails/config/mail/rspamd/scores.d/whitelist_group.conf create mode 100644 jails/config/mail/rspamd/settings.conf create mode 100644 jails/config/mail/rspamd/statistic.conf create mode 100644 jails/config/mail/rspamd/worker-controller.inc create mode 100644 jails/config/mail/rspamd/worker-fuzzy.inc create mode 100644 jails/config/mail/rspamd/worker-normal.inc create mode 100644 jails/config/mail/rspamd/worker-proxy.inc create mode 100644 jails/config/mail/schema.xml create mode 100644 jails/config/mail/solrconfig.xml create mode 100755 jails/config/maps/index.js create mode 100755 jails/config/maps/maps create mode 100644 jails/config/maps/networkmaps/config.json create mode 100644 jails/config/matrix/matrix.ahlawat.com.log.config create mode 100644 jails/config/monitor/.htaccess create mode 100644 jails/config/monitor/020_mod_ssl.conf create mode 100644 jails/config/monitor/alert_rules.yml create mode 100644 jails/config/monitor/alertmanager.yml create mode 100755 jails/config/monitor/elasticsearch.yml create mode 100644 jails/config/monitor/fstab create mode 100644 jails/config/monitor/grafana.conf create mode 100644 jails/config/monitor/heartbeat.yml create mode 100644 jails/config/monitor/httpd.conf create mode 100755 jails/config/monitor/jvm.options create mode 100644 jails/config/monitor/kibana.yml create mode 100644 jails/config/monitor/logstash.conf create mode 100644 jails/config/monitor/logstash.keystore create mode 100644 jails/config/monitor/logstash.yml create mode 100644 jails/config/monitor/php.ini create mode 100644 jails/config/monitor/prometheus.yml create mode 100755 jails/config/monitor/start_logstash.sh create mode 100644 jails/config/monitor/telegraf.conf create mode 100644 jails/config/monitor/www.conf create mode 100644 jails/config/nivi/020_mod_ssl.conf create mode 100644 jails/config/nivi/Koken_Installer.zip create mode 100644 jails/config/nivi/httpd.conf create mode 100644 jails/config/nivi/php.ini create mode 100644 jails/config/nivi/www.conf create mode 100644 jails/config/pkgp/freebsd-update.conf create mode 100644 jails/config/pkgp/make.conf create mode 100644 jails/config/pkgp/mime.types create mode 100644 jails/config/pkgp/mypkgs create mode 100644 jails/config/pkgp/nginx.conf create mode 100644 jails/config/pkgp/poudriere.conf create mode 100644 jails/config/plex/Settings.cfg create mode 100755 jails/config/plex/plexconnect create mode 100644 jails/config/proxy/haproxy.conf create mode 100644 jails/config/proxy/pkgp.conf create mode 100644 jails/config/r-api/.keep create mode 100644 jails/config/r-automated/.keep create mode 100644 jails/config/r-ci/.keep create mode 100644 jails/config/r-db/my.cnf create mode 100644 jails/config/r-git/gitea/conf/app.ini.defaults create mode 100644 jails/config/r-git/gitea/conf/app.ini.sample create mode 100644 jails/config/r-git/gitea/options/license create mode 100644 jails/config/r-git/gitea/public/beyondbell-com-license.txt create mode 100644 jails/config/r-git/gitea/templates/base/footer_content.tmpl create mode 100644 jails/config/r-ldap-mgr/020_mod_ssl.conf create mode 100644 jails/config/r-ldap-mgr/config.php.phpldapadmin.github create mode 100644 jails/config/r-ldap-mgr/httpd.conf create mode 100644 jails/config/r-ldap-mgr/php.ini create mode 100644 jails/config/r-ldap/pkgp.conf create mode 100644 jails/config/r-repo/.keep create mode 100644 jails/config/r-web/.keep create mode 100644 jails/config/rishabh/020_mod_ssl.conf create mode 100644 jails/config/rishabh/httpd.conf create mode 100644 jails/config/rishabh/php.ini create mode 100644 jails/config/rishabh/www.conf create mode 100644 jails/config/sharad/020_mod_ssl.conf create mode 100644 jails/config/sharad/httpd.conf create mode 100644 jails/config/sharad/php.ini create mode 100644 jails/config/sharad/www.conf create mode 100644 jails/config/test/.keep create mode 100755 jails/config/torrent/backup.sh create mode 100755 jails/config/torrent/setup_jail.sh create mode 100644 jails/config/vm/.tmux.conf create mode 100755 jails/config/vm/create_taps.sh create mode 100755 jails/config/vm/freebsd.sh create mode 100755 jails/config/vm/pbx.sh create mode 100755 jails/config/vm/r-windows.sh create mode 100755 jails/config/vm/setup_jail.sh create mode 100755 jails/config/vm/startvms.sh create mode 100755 jails/config/vm/ubuntu.sh create mode 100644 jails/config/web-diyit/020_mod_ssl.conf create mode 100644 jails/config/web-diyit/blackbox_exporter.yml create mode 100644 jails/config/web-diyit/httpd.conf create mode 100644 jails/config/web-diyit/php.ini create mode 100644 jails/config/web-diyit/resolvconf.conf create mode 100644 jails/config/web-diyit/www.conf create mode 100644 jails/config/web/.htaccess create mode 100644 jails/config/web/020_mod_ssl.conf create mode 100644 jails/config/web/httpd.conf create mode 100644 jails/config/web/php.ini create mode 100644 jails/config/web/pkgp.conf create mode 100644 jails/config/web/www.conf create mode 100755 jails/create.sh create mode 100755 jails/jails-restore-httpd.sh create mode 100755 jails/jails-update-cert.sh create mode 100755 jails/jails-update-pkgs.sh create mode 100755 jails/update.sh create mode 100644 patches/344061.patch create mode 100644 patches/344356.patch create mode 100644 patches/D20868.patch create mode 100644 patches/D20869.patch create mode 100644 scripts/crontab.txt create mode 100755 scripts/gstat_exporter.py create mode 100755 scripts/zfs-prune-snapshots create mode 100755 scripts/zfs_health.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..10e4514 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +#.gitignore +**/secret/** diff --git a/README.md b/README.md new file mode 100644 index 0000000..9870ee2 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# diyIT.org FreeBSD repository diff --git a/configs/boot/loader.conf b/configs/boot/loader.conf new file mode 100644 index 0000000..dc44a7e --- /dev/null +++ b/configs/boot/loader.conf @@ -0,0 +1,100 @@ +# Copyright (c) 2018-2020, diyIT.org +# All rights reserved. +# +# BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License") +# https://diyit.org/license/ +# +# + +autoboot_delay="4" + +# If the machine dies at boot before /etc/rc.d/sysctl is run, let the user do something. +debug.debugger_on_panic=1 +debug.ddb.textdump.pending=1 + +security.bsd.allow_destructive_dtrace=0 + +# Drive Labels. A diskid or gptid is a long, unique string assigned to drives +# which we find are difficult to relate to. We prefer to disable diskid's and +# gptid's and use GPT Labels, like gpt/disk0, or the raw device names, like +# nvd0p2 for the first NVMe drive, second partition. Use "glabel status" to +# display a map of GPT Labels to raw device names in order to identify the +# physical drive location. When adding new drives, try to use gpt labels +# instead of raw device names in case the drives move to different SATA, SAS or +# SCSI interface ports. +kern.geom.label.disk_ident.enable="0" +kern.geom.label.gptid.enable="0" + +# Increase dmesg buffer to fit longer boot output. +kern.msgbufsize="524288" + +# ZFS root boot config +zfs_load="YES" +vfs.root.mountfrom="zfs:zroot/ROOT/default" + +ipmi_load="YES" +aesni_load="YES" + +# thermal sensors for intel +coretemp_load="YES" + +#tmpfs_load="YES" # interferes with jails + +if_lagg_load="YES" +if_tap_load="YES" + +hw.em.rx_process_limit="-1" +hw.em.max_interrupt_rate="16000" + +# hostcache cache limit is the number of ip addresses in the hostcache list. +# Setting the value to zero(0) stops any ip address connection information from +# being cached +# net.inet.tcp.hostcache.cachelimit=0 +# we are on a stable network + +# disable net.inet.tcp.soreceive_stream when using +# rndc to update BIND DNS records otherwise the following error will trigger, +# "rndc: recv failed: host unreachable". +# DNS TCP Transfers do not work with this enabled. +# net.inet.tcp.soreceive_stream=1 + +# https://lists.freebsd.org/pipermail/freebsd-net/2014-April/038470.html +net.isr.bindthreads=1 +net.isr.maxthreads=-1 +net.link.ifqmaxlen=2048 +net.isr.defaultqlimit=2048 +net.isr.maxqlimit=98304 + +# also disabed in BIOS +machdep.hyperthreading_allowed="0" + +# RACK TCP Stack: Netflix's TCP Recent ACKnowledgment (Recent ACK) and Tail +# Loss Probe (TLP) for improved Retransmit TimeOut response. +tcp_rack_load="YES" + +# https://labs.ripe.net/Members/gih/bbr-tcp +cc_cubic_load="YES" + +# https://savagedlight.me/2015/08/23/eli5-freebsd-accept-filters/ +accf_data_load="YES" + +# Wait for full DNS request accept filter (unbound) +accf_dns_load="YES" + +accf_http_load="YES" + +net.inet.tcp.syncache.hashsize="1024" +net.inet.tcp.syncache.bucketlimit="100" + +# ZFS: the maximum upper limit of RAM used for dirty, "modified", uncommitted +# data which cannot be exceed. +vfs.zfs.dirty_data_max_max=12884901888 + +vfs.zfs.vdev.cache.size=134217728 +vfs.zfs.vdev.cache.max=134217728 + +# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=185487 +# https://forums.freebsd.org/threads/updating-bsd-from-10-to-11-ahci-ssd-issue.59923/ +# https://lists.freebsd.org/pipermail/freebsd-bugs/2013-April/052301.html +# my 8TB's don't support NCQ TRIM +vfs.unmapped_buf_allowed=0 diff --git a/configs/etc/defaults/devfs.rules b/configs/etc/defaults/devfs.rules new file mode 100644 index 0000000..b024474 --- /dev/null +++ b/configs/etc/defaults/devfs.rules @@ -0,0 +1,112 @@ +# +# The following are some default rules for devfs(5) mounts. +# The format is very simple. Empty lines and lines beginning +# with a hash '#' are ignored. If the hash mark occurs anywhere +# other than the beginning of a line, it and any subsequent +# characters will be ignored. A line in between brackets '[]' +# denotes the beginning of a ruleset. In the brackets should +# be a name for the rule and its ruleset number. Any other lines +# will be considered to be the 'action' part of a rule +# passed to the devfs(8) command. These will be passed +# "as-is" to the devfs(8) command with the exception that +# any references to other rulesets will be expanded first. These +# references must include a dollar sign '$' in front of the +# name to be expanded properly. +# +# $FreeBSD: releng/12.1/sbin/devfs/devfs.rules 338204 2018-08-22 15:55:23Z brd $ +# + +# Very basic and secure ruleset: Hide everything. +# Used as a basis for other rules. +# +[devfsrules_hide_all=1] +add hide + +# Basic devices typically necessary. +# Requires: devfsrules_hide_all +# +[devfsrules_unhide_basic=2] +add path log unhide +add path null unhide +add path zero unhide +add path crypto unhide +add path random unhide +add path urandom unhide + +# Devices typically needed to support logged-in users. +# Requires: devfsrules_hide_all +# +[devfsrules_unhide_login=3] +add path 'ptyp*' unhide +add path 'ptyq*' unhide +add path 'ptyr*' unhide +add path 'ptys*' unhide +add path 'ptyP*' unhide +add path 'ptyQ*' unhide +add path 'ptyR*' unhide +add path 'ptyS*' unhide +add path 'ptyl*' unhide +add path 'ptym*' unhide +add path 'ptyn*' unhide +add path 'ptyo*' unhide +add path 'ptyL*' unhide +add path 'ptyM*' unhide +add path 'ptyN*' unhide +add path 'ptyO*' unhide +add path 'ttyp*' unhide +add path 'ttyq*' unhide +add path 'ttyr*' unhide +add path 'ttys*' unhide +add path 'ttyP*' unhide +add path 'ttyQ*' unhide +add path 'ttyR*' unhide +add path 'ttyS*' unhide +add path 'ttyl*' unhide +add path 'ttym*' unhide +add path 'ttyn*' unhide +add path 'ttyo*' unhide +add path 'ttyL*' unhide +add path 'ttyM*' unhide +add path 'ttyN*' unhide +add path 'ttyO*' unhide +add path ptmx unhide +add path pts unhide +add path 'pts/*' unhide +add path fd unhide +add path 'fd/*' unhide +add path stdin unhide +add path stdout unhide +add path stderr unhide + +# Devices usually found in a jail. +# +[devfsrules_jail=4] +add include $devfsrules_hide_all +add include $devfsrules_unhide_basic +add include $devfsrules_unhide_login +add path fuse unhide +add path zfs unhide + +[usbrules=100] +add path 'usbctl' mode 660 group uucp +add path 'usb/*' mode 660 group uucp +add path 'ttyU*' mode 660 group uucp + +[serial_usb_rules=1000] +add include $devfsrules_jail +add path 'cuau*' unhide +add path 'cuaU*' unhide +add path 'ttyu*' unhide +add path 'ttyU*' unhide +add path 'usb*' unhide +add path 'usb/*' unhide + +[devfs_rules_bhyve_jail=2000] +add include $devfsrules_jail +add path vmm unhide +add path vmm/* unhide +add path vmm.io unhide +add path vmm.io/* unhide +add path tap* unhide +add path zvol/ship/raw/* unhide +add path nmdm* unhide diff --git a/configs/etc/defaults/periodic.conf b/configs/etc/defaults/periodic.conf new file mode 100644 index 0000000..295dc9a --- /dev/null +++ b/configs/etc/defaults/periodic.conf @@ -0,0 +1,407 @@ +#!/bin/sh +# +# This is defaults/periodic.conf - a file full of useful variables that +# you can set to change the default behaviour of periodic jobs on your +# system. You should not edit this file! Put any overrides into one of the +# $periodic_conf_files instead and you will be able to update these defaults +# later without spamming your local configuration information. +# +# The $periodic_conf_files files should only contain values which override +# values set in this file. This eases the upgrade path when defaults +# are changed and new features are added. +# +# For a more detailed explanation of all the periodic.conf variables, please +# refer to the periodic.conf(5) manual page. +# +# $FreeBSD: releng/12.1/usr.sbin/periodic/periodic.conf 337648 2018-08-11 17:11:08Z brd $ +# + +# What files override these defaults ? +periodic_conf_files="/etc/periodic.conf /etc/periodic.conf.local" + +# periodic script dirs +local_periodic="/usr/local/etc/periodic" + +# Max time to sleep to avoid causing congestion on download servers +anticongestion_sleeptime=3600 + +# Daily options + +# These options are used by periodic(8) itself to determine what to do +# with the output of the sub-programs that are run, and where to send +# that output. $daily_output might be set to /var/log/daily.log if you +# wish to log the daily output and have the files rotated by newsyslog(8) +# +daily_output="root" # user or /file +daily_show_success="YES" # scripts returning 0 +daily_show_info="YES" # scripts returning 1 +daily_show_badconfig="YES" # scripts returning 2 + +# 100.clean-disks +daily_clean_disks_enable="NO" # Delete files daily +daily_clean_disks_files="[#,]* .#* a.out *.core *.CKP .emacs_[0-9]*" +daily_clean_disks_days=3 # If older than this +daily_clean_disks_verbose="YES" # Mention files deleted + +# 110.clean-tmps +daily_clean_tmps_enable="NO" # Delete stuff daily +daily_clean_tmps_dirs="/tmp" # Delete under here +daily_clean_tmps_days="3" # If not accessed for +daily_clean_tmps_ignore=".X*-lock .X11-unix .ICE-unix .font-unix .XIM-unix" +daily_clean_tmps_ignore="$daily_clean_tmps_ignore quota.user quota.group .snap" +daily_clean_tmps_ignore="$daily_clean_tmps_ignore .sujournal" + # Don't delete these +daily_clean_tmps_verbose="YES" # Mention files deleted + +# 120.clean-preserve +daily_clean_preserve_enable="YES" # Delete files daily +daily_clean_preserve_days=7 # If not modified for +daily_clean_preserve_verbose="YES" # Mention files deleted + +# 130.clean-msgs +daily_clean_msgs_enable="YES" # Delete msgs daily +daily_clean_msgs_days= # If not modified for + +# 140.clean-rwho +daily_clean_rwho_enable="YES" # Delete rwho daily +daily_clean_rwho_days=7 # If not modified for +daily_clean_rwho_verbose="YES" # Mention files deleted + +# 150.clean-hoststat +daily_clean_hoststat_enable="YES" # Purge sendmail host + # status cache daily + +# 200.backup-passwd +daily_backup_passwd_enable="YES" # Backup passwd & group + +# 210.backup-aliases +daily_backup_aliases_enable="YES" # Backup mail aliases + +# 300.calendar +daily_calendar_enable="NO" # Run calendar -a + +# 310.accounting +daily_accounting_enable="YES" # Rotate acct files +daily_accounting_compress="NO" # Gzip rotated files +daily_accounting_flags=-q # Flags to /usr/sbin/sa +daily_accounting_save=3 # How many files to save + +# 330.news +daily_news_expire_enable="YES" # Run news.expire + +# 400.status-disks +daily_status_disks_enable="NO" # Check disk status +daily_status_disks_df_flags="-l -h" # df(1) flags for check + +# 401.status-graid +daily_status_graid_enable="NO" # Check graid(8) + +# 404.status-zfs +daily_status_zfs_enable="YES" # Check ZFS +daily_status_zfs_zpool_list_enable="YES" # List ZFS pools + +# 406.status-gmirror +daily_status_gmirror_enable="NO" # Check gmirror(8) + +# 407.status-graid3 +daily_status_graid3_enable="NO" # Check graid3(8) + +# 408.status-gstripe +daily_status_gstripe_enable="NO" # Check gstripe(8) + +# 409.status-gconcat +daily_status_gconcat_enable="NO" # Check gconcat(8) + +# 410.status-mfi +daily_status_mfi_enable="NO" # Check mfiutil(8) + +# 420.status-network +daily_status_network_enable="NO" # Check network status +daily_status_network_usedns="YES" # DNS lookups are ok +daily_status_network_netstat_flags="-d" # netstat(1) flags + +# 430.status-uptime +daily_status_uptime_enable="YES" # Check system uptime + +# 440.status-mailq +daily_status_mailq_enable="YES" # Check mail status +daily_status_mailq_shorten="NO" # Shorten output +daily_status_include_submit_mailq="YES" # Also submit queue + +# 450.status-security +daily_status_security_enable="YES" # Security check +# See also "Security options" below for more options +daily_status_security_inline="NO" # Run inline ? +daily_status_security_output="root" # user or /file + +# 460.status-mail-rejects +daily_status_mail_rejects_enable="YES" # Check mail rejects +daily_status_mail_rejects_logs=3 # How many logs to check +daily_status_mail_rejects_shorten="NO" # Shorten output + +# 480.leapfile-ntpd +daily_ntpd_leapfile_enable="YES" # Fetch NTP leapfile + +# 480.status-ntpd +daily_status_ntpd_enable="NO" # Check NTP status + +# 500.queuerun +daily_queuerun_enable="YES" # Run mail queue +daily_submit_queuerun="YES" # Also submit queue + +# 510.status-world-kernel +daily_status_world_kernel="YES" # Check the running + # userland/kernel version + +# 800.scrub-zfs +daily_scrub_zfs_enable="YES" +daily_scrub_zfs_pools="" # empty string selects all pools +daily_scrub_zfs_default_threshold="35" # days between scrubs +#daily_scrub_zfs_${poolname}_threshold="35" # pool specific threshold + +# 999.local +daily_local="/etc/daily.local" # Local scripts + + +# Weekly options + +# These options are used by periodic(8) itself to determine what to do +# with the output of the sub-programs that are run, and where to send +# that output. $weekly_output might be set to /var/log/weekly.log if you +# wish to log the weekly output and have the files rotated by newsyslog(8) +# +weekly_output="root" # user or /file +weekly_show_success="YES" # scripts returning 0 +weekly_show_info="YES" # scripts returning 1 +weekly_show_badconfig="NO" # scripts returning 2 + +# 310.locate +weekly_locate_enable="YES" # Update locate weekly + +# 320.whatis +weekly_whatis_enable="YES" # Update whatis weekly + +# 340.noid +weekly_noid_enable="NO" # Find unowned files +weekly_noid_dirs="/" # Look here + +# 450.status-security +weekly_status_security_enable="YES" # Security check +# See also "Security options" above for more options +weekly_status_security_inline="NO" # Run inline ? +weekly_status_security_output="root" # user or /file + +# 999.local +weekly_local="/etc/weekly.local" # Local scripts + + +# Monthly options + +# These options are used by periodic(8) itself to determine what to do +# with the output of the sub-programs that are run, and where to send +# that output. $monthly_output might be set to /var/log/monthly.log if you +# wish to log the monthly output and have the files rotated by newsyslog(8) +# +monthly_output="root" # user or /file +monthly_show_success="YES" # scripts returning 0 +monthly_show_info="YES" # scripts returning 1 +monthly_show_badconfig="NO" # scripts returning 2 + +# 200.accounting +monthly_accounting_enable="YES" # Login accounting + +# 450.status-security +monthly_status_security_enable="YES" # Security check +# See also "Security options" above for more options +monthly_status_security_inline="NO" # Run inline ? +monthly_status_security_output="root" # user or /file + +# 999.local +monthly_local="/etc/monthly.local" # Local scripts + + +# Security options + +security_show_success="YES" # scripts returning 0 +security_show_info="YES" # scripts returning 1 +security_show_badconfig="NO" # scripts returning 2 + +# These options are used by the security periodic(8) scripts spawned in +# daily and weekly 450.status-security. +security_status_logdir="/var/log" # Directory for logs +security_status_diff_flags="-b -u" # flags for diff output + +# Each of the security_status_*_period options below can have one of the +# following values: +# - NO: do not run at all +# - daily: only run during the daily security status +# - weekly: only run during the weekly security status +# - monthly: only run during the monthly security status +# Note that if periodic security scripts are run from crontab(5) directly, +# they will be run unless _enable or _period is set to "NO". + +# 100.chksetuid +security_status_chksetuid_enable="NO" +security_status_chksetuid_period="daily" + +# 110.neggrpperm +security_status_neggrpperm_enable="YES" +security_status_neggrpperm_period="daily" + +# 200.chkmounts +security_status_chkmounts_enable="YES" +security_status_chkmounts_period="daily" +#security_status_chkmounts_ignore="^amd:" # Don't check matching + # FS types +security_status_noamd="NO" # Don't check amd mounts + +# 300.chkuid0 +security_status_chkuid0_enable="YES" +security_status_chkuid0_period="daily" + +# 400.passwdless +security_status_passwdless_enable="YES" +security_status_passwdless_period="daily" + +# 410.logincheck +security_status_logincheck_enable="YES" +security_status_logincheck_period="daily" + +# 500.ipfwdenied +security_status_ipfwdenied_enable="YES" +security_status_ipfwdenied_period="daily" + +# 510.ipfdenied +security_status_ipfdenied_enable="YES" +security_status_ipfdenied_period="daily" + +# 520.pfdenied +security_status_pfdenied_enable="YES" +security_status_pfdenied_period="daily" + +# 550.ipfwlimit +security_status_ipfwlimit_enable="YES" +security_status_ipfwlimit_period="daily" + +# 610.ipf6denied +security_status_ipf6denied_enable="YES" +security_status_ipf6denied_period="daily" + +# 700.kernelmsg +security_status_kernelmsg_enable="YES" +security_status_kernelmsg_period="daily" + +# 800.loginfail +security_status_loginfail_enable="YES" +security_status_loginfail_period="daily" + +# 900.tcpwrap +security_status_tcpwrap_enable="YES" +security_status_tcpwrap_period="daily" + + + +# Define source_periodic_confs, the mechanism used by /etc/periodic/*/* +# scripts to source defaults/periodic.conf overrides safely. + +if [ -z "${source_periodic_confs_defined}" ]; then + source_periodic_confs_defined=yes + + # Sleep for a random amount of time in order to mitigate the thundering + # herd problem of multiple hosts running periodic simultaneously. + # Will not sleep when used interactively. + # Will sleep at most once per invocation of periodic + anticongestion() { + [ -n "$PERIODIC_IS_INTERACTIVE" ] && return + if [ -f "$PERIODIC_ANTICONGESTION_FILE" ]; then + rm -f $PERIODIC_ANTICONGESTION_FILE + sleep `jot -r 1 0 ${anticongestion_sleeptime}` + fi + } + + # Compatibility with old daily variable names. + # They can be removed in stable/11. + security_daily_compat_var() { + local var=$1 dailyvar value + + dailyvar=daily_status_security${var#security_status} + periodvar=${var%enable}period + eval value=\"\$$dailyvar\" + [ -z "$value" ] && return + echo "Warning: Variable \$$dailyvar is deprecated," \ + "use \$$var instead." >&2 + case "$value" in + [Yy][Ee][Ss]) + eval $var=YES + eval $periodvar=daily + ;; + *) + eval $var=\"$value\" + ;; + esac + } + + check_yesno_period() { + local var="$1" periodvar value period + + eval value=\"\$$var\" + case "$value" in + [Yy][Ee][Ss]) ;; + *) return 1 ;; + esac + + periodvar=${var%enable}period + eval period=\"\$$periodvar\" + case "$PERIODIC" in + "security daily") + case "$period" in + [Dd][Aa][Ii][Ll][Yy]) return 0 ;; + *) return 1 ;; + esac + ;; + "security weekly") + case "$period" in + [Ww][Ee][Ee][Kk][Ll][Yy]) return 0 ;; + *) return 1 ;; + esac + ;; + "security monthly") + case "$period" in + [Mm][Oo][Nn][Tt][Hh][Ll][Yy]) return 0 ;; + *) return 1 ;; + esac + ;; + security) + # Run directly from crontab(5). + case "$period" in + [Nn][Oo]) return 1 ;; + *) return 0 ;; + esac + ;; + '') + # Script run manually. + return 0 + ;; + *) + echo "ASSERTION FAILED: Unexpected value for" \ + "\$PERIODIC: '$PERIODIC'" >&2 + exit 127 + ;; + esac + } + + source_periodic_confs() { + local i sourced_files + + for i in ${periodic_conf_files}; do + case ${sourced_files} in + *:$i:*) + ;; + *) + sourced_files="${sourced_files}:$i:" + [ -r $i ] && . $i + ;; + esac + done + } +fi diff --git a/configs/etc/freebsd-update.conf b/configs/etc/freebsd-update.conf new file mode 100644 index 0000000..40d187c --- /dev/null +++ b/configs/etc/freebsd-update.conf @@ -0,0 +1,76 @@ +# $FreeBSD: releng/12.1/usr.sbin/freebsd-update/freebsd-update.conf 337338 2018-08-04 22:25:41Z brd $ + +# Trusted keyprint. Changing this is a Bad Idea unless you've received +# a PGP-signed email from telling you to +# change it and explaining why. +KeyPrint 800651ef4b4c71c27e60786d7b487188970f4b4169cc055784e21eb71d410cc5 + +# Server or server pool from which to fetch updates. You can change +# this to point at a specific server if you want, but in most cases +# using a "nearby" server won't provide a measurable improvement in +# performance. +ServerName update.FreeBSD.org + +# Components of the base system which should be kept updated. +#Components src world kernel + +# Example for updating the userland and the kernel source code only: +Components src world + +# Paths which start with anything matching an entry in an IgnorePaths +# statement will be ignored. +IgnorePaths + +# Paths which start with anything matching an entry in an IDSIgnorePaths +# statement will be ignored by "freebsd-update IDS". +IDSIgnorePaths /usr/share/man/cat +IDSIgnorePaths /usr/share/man/whatis +IDSIgnorePaths /var/db/locate.database +IDSIgnorePaths /var/log + +# Paths which start with anything matching an entry in an UpdateIfUnmodified +# statement will only be updated if the contents of the file have not been +# modified by the user (unless changes are merged; see below). +UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile + +# When upgrading to a new FreeBSD release, files which match MergeChanges +# will have any local changes merged into the version from the new release. +MergeChanges /etc/ /boot/device.hints + +### Default configuration options: + +# Directory in which to store downloaded updates and temporary +# files used by FreeBSD Update. +# WorkDir /var/db/freebsd-update + +# Destination to send output of "freebsd-update cron" if an error +# occurs or updates have been downloaded. +# MailTo root + +# Is FreeBSD Update allowed to create new files? +# AllowAdd yes + +# Is FreeBSD Update allowed to delete files? +# AllowDelete yes + +# If the user has modified file ownership, permissions, or flags, should +# FreeBSD Update retain this modified metadata when installing a new version +# of that file? +# KeepModifiedMetadata yes + +# When upgrading between releases, should the list of Components be +# read strictly (StrictComponents yes) or merely as a list of components +# which *might* be installed of which FreeBSD Update should figure out +# which actually are installed and upgrade those (StrictComponents no)? +# StrictComponents no + +# When installing a new kernel perform a backup of the old one first +# so it is possible to boot the old kernel in case of problems. +# BackupKernel yes + +# If BackupKernel is enabled, the backup kernel is saved to this +# directory. +# BackupKernelDir /boot/kernel.old + +# When backing up a kernel also back up debug symbol files? +# BackupKernelSymbolFiles no diff --git a/configs/etc/fstab b/configs/etc/fstab new file mode 100644 index 0000000..59a4c87 --- /dev/null +++ b/configs/etc/fstab @@ -0,0 +1,12 @@ +# Device Mountpoint FStype Options Dump Pass# +/dev/ada2p3 none swap sw 0 0 +/dev/ada3p3 none swap sw 0 0 +#/dev/da0p1 none swap sw 0 0 +/dev/da1p1 none swap sw 0 0 +/dev/da2p1 none swap sw 0 0 +/dev/da3p1 none swap sw 0 0 +/dev/da4p1 none swap sw 0 0 +#/dev/da5p1 none swap sw 0 0 +#/dev/da6p1 none swap sw 0 0 +#/dev/da7p1 none swap sw 0 0 +fdescfs /dev/fd fdescfs rw 0 0 diff --git a/configs/etc/login.conf b/configs/etc/login.conf new file mode 100644 index 0000000..3569145 --- /dev/null +++ b/configs/etc/login.conf @@ -0,0 +1,324 @@ +# login.conf - login class capabilities database. +# +# Remember to rebuild the database after each change to this file: +# +# cap_mkdb /etc/login.conf +# +# This file controls resource limits, accounting limits and +# default user environment settings. +# +# $FreeBSD: releng/12.1/usr.bin/login/login.conf 338399 2018-08-30 15:52:03Z brd $ +# + +# Default settings effectively disable resource limits, see the +# examples below for a starting point to enable them. + +# defaults +# These settings are used by login(1) by default for classless users +# Note that entries like "cputime" set both "cputime-cur" and "cputime-max" +# +# Note that since a colon ':' is used to separate capability entries, +# a \c escape sequence must be used to embed a literal colon in the +# value or name of a capability (see the ``CGETNUM AND CGETSTR SYNTAX +# AND SEMANTICS'' section of getcap(3) for more escape sequences). + +default:\ + :passwd_format=sha512:\ + :copyright=/etc/COPYRIGHT:\ + :welcome=/etc/motd:\ + :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\ + :path=/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin ~/bin:\ + :nologin=/var/run/nologin:\ + :cputime=unlimited:\ + :datasize=unlimited:\ + :stacksize=unlimited:\ + :memorylocked=64K:\ + :memoryuse=unlimited:\ + :filesize=unlimited:\ + :coredumpsize=unlimited:\ + :openfiles=unlimited:\ + :maxproc=unlimited:\ + :sbsize=unlimited:\ + :vmemoryuse=unlimited:\ + :swapuse=unlimited:\ + :pseudoterminals=unlimited:\ + :kqueues=unlimited:\ + :umtxp=unlimited:\ + :priority=0:\ + :ignoretime@:\ + :umask=022:\ + :charset=UTF-8:\ + :lang=en_US.UTF-8: + + +# +# A collection of common class names - forward them all to 'default' +# (login would normally do this anyway, but having a class name +# here suppresses the diagnostic) +# +standard:\ + :tc=default: +xuser:\ + :tc=default: +staff:\ + :tc=default: +daemon:\ + :memorylocked=128M:\ + :tc=default: +news:\ + :tc=default: +dialer:\ + :tc=default: + +# +# Root can always login +# +# N.B. login_getpwclass(3) will use this entry for the root account, +# in preference to 'default'. +root:\ + :ignorenologin:\ + :memorylocked=unlimited:\ + :tc=default: + +# +# Russian Users Accounts. Setup proper environment variables. +# +russian|Russian Users Accounts:\ + :charset=UTF-8:\ + :lang=ru_RU.UTF-8:\ + :tc=default: + + +###################################################################### +###################################################################### +## +## Example entries +## +###################################################################### +###################################################################### + +## Example defaults +## These settings are used by login(1) by default for classless users +## Note that entries like "cputime" set both "cputime-cur" and "cputime-max" +# +#default:\ +# :cputime=infinity:\ +# :datasize-cur=22M:\ +# :stacksize-cur=8M:\ +# :memorylocked-cur=10M:\ +# :memoryuse-cur=30M:\ +# :filesize=infinity:\ +# :coredumpsize=infinity:\ +# :maxproc-cur=64:\ +# :openfiles-cur=64:\ +# :priority=0:\ +# :requirehome@:\ +# :umask=022:\ +# :tc=auth-defaults: +# +# +## +## standard - standard user defaults +## +#standard:\ +# :copyright=/etc/COPYRIGHT:\ +# :welcome=/etc/motd:\ +# :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\ +# :path=~/bin /bin /usr/bin /usr/local/bin:\ +# :manpath=/usr/share/man /usr/local/man:\ +# :nologin=/var/run/nologin:\ +# :cputime=1h30m:\ +# :datasize=8M:\ +# :vmemoryuse=100M:\ +# :stacksize=2M:\ +# :memorylocked=4M:\ +# :memoryuse=8M:\ +# :filesize=8M:\ +# :coredumpsize=8M:\ +# :openfiles=24:\ +# :maxproc=32:\ +# :priority=0:\ +# :requirehome:\ +# :passwordtime=90d:\ +# :umask=002:\ +# :ignoretime@:\ +# :tc=default: +# +# +## +## users of X (needs more resources!) +## +#xuser:\ +# :manpath=/usr/share/man /usr/local/man:\ +# :cputime=4h:\ +# :datasize=12M:\ +# :vmemoryuse=infinity:\ +# :stacksize=4M:\ +# :filesize=8M:\ +# :memoryuse=16M:\ +# :openfiles=32:\ +# :maxproc=48:\ +# :tc=standard: +# +# +## +## Staff users - few restrictions and allow login anytime +## +#staff:\ +# :ignorenologin:\ +# :ignoretime:\ +# :requirehome@:\ +# :accounted@:\ +# :path=~/bin /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin:\ +# :umask=022:\ +# :tc=standard: +# +# +## +## root - fallback for root logins +## +#root:\ +# :path=~/bin /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin:\ +# :cputime=infinity:\ +# :datasize=infinity:\ +# :stacksize=infinity:\ +# :memorylocked=infinity:\ +# :memoryuse=infinity:\ +# :filesize=infinity:\ +# :coredumpsize=infinity:\ +# :openfiles=infinity:\ +# :maxproc=infinity:\ +# :memoryuse-cur=32M:\ +# :maxproc-cur=64:\ +# :openfiles-cur=1024:\ +# :priority=0:\ +# :requirehome@:\ +# :umask=022:\ +# :tc=auth-root-defaults: +# +# +## +## Settings used by /etc/rc +## +#daemon:\ +# :coredumpsize@:\ +# :coredumpsize-cur=0:\ +# :datasize=infinity:\ +# :datasize-cur@:\ +# :maxproc=512:\ +# :maxproc-cur@:\ +# :memoryuse-cur=64M:\ +# :memorylocked-cur=64M:\ +# :openfiles=1024:\ +# :openfiles-cur@:\ +# :stacksize=16M:\ +# :stacksize-cur@:\ +# :tc=default: +# +# +## +## Settings used by news subsystem +## +#news:\ +# :path=/usr/local/news/bin /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin:\ +# :cputime=infinity:\ +# :filesize=128M:\ +# :datasize-cur=64M:\ +# :stacksize-cur=32M:\ +# :coredumpsize-cur=0:\ +# :maxmemorysize-cur=128M:\ +# :memorylocked=32M:\ +# :maxproc=128:\ +# :openfiles=256:\ +# :tc=default: +# +# +## +## The dialer class should be used for a dialup PPP account +## Welcome messages/news suppressed +## +#dialer:\ +# :hushlogin:\ +# :requirehome@:\ +# :cputime=unlimited:\ +# :filesize=2M:\ +# :datasize=2M:\ +# :stacksize=4M:\ +# :coredumpsize=0:\ +# :memoryuse=4M:\ +# :memorylocked=1M:\ +# :maxproc=16:\ +# :openfiles=32:\ +# :tc=standard: +# +# +## +## Site full-time 24/7 PPP connection +## - no time accounting, restricted to access via dialin lines +## +#site:\ +# :ignoretime:\ +# :passwordtime@:\ +# :refreshtime@:\ +# :refreshperiod@:\ +# :sessionlimit@:\ +# :autodelete@:\ +# :expireperiod@:\ +# :graceexpire@:\ +# :gracetime@:\ +# :warnexpire@:\ +# :warnpassword@:\ +# :idletime@:\ +# :sessiontime@:\ +# :daytime@:\ +# :weektime@:\ +# :monthtime@:\ +# :warntime@:\ +# :accounted@:\ +# :tc=dialer:\ +# :tc=staff: +# +# +## +## Example standard accounting entries for subscriber levels +## +# +#subscriber|Subscribers:\ +# :accounted:\ +# :refreshtime=180d:\ +# :refreshperiod@:\ +# :sessionlimit@:\ +# :autodelete=30d:\ +# :expireperiod=180d:\ +# :graceexpire=7d:\ +# :gracetime=10m:\ +# :warnexpire=7d:\ +# :warnpassword=7d:\ +# :idletime=30m:\ +# :sessiontime=4h:\ +# :daytime=6h:\ +# :weektime=40h:\ +# :monthtime=120h:\ +# :warntime=4h:\ +# :tc=standard: +# +# +## +## Subscriber accounts. These accounts have their login times +## accounted and have access limits applied. +## +#subppp|PPP Subscriber Accounts:\ +# :tc=dialer:\ +# :tc=subscriber: +# +# +#subshell|Shell Subscriber Accounts:\ +# :tc=subscriber: +# +## +## If you want some of the accounts to use traditional UNIX DES based +## password hashes. +## +#des_users:\ +# :passwd_format=des:\ +# :tc=default: diff --git a/configs/etc/ntp.conf b/configs/etc/ntp.conf new file mode 100644 index 0000000..7caedb4 --- /dev/null +++ b/configs/etc/ntp.conf @@ -0,0 +1,105 @@ +# +# $FreeBSD: releng/12.1/usr.sbin/ntp/ntpd/ntp.conf 337649 2018-08-11 17:42:42Z brd $ +# +# Default NTP servers for the FreeBSD operating system. +# +# Don't forget to enable ntpd in /etc/rc.conf with: +# ntpd_enable="YES" +# +# The driftfile is by default /var/db/ntpd.drift, check +# /etc/defaults/rc.conf on how to change the location. +# + +# +# Set the target and limit for adding servers configured via pool statements +# or discovered dynamically via mechanisms such as broadcast and manycast. +# Ntpd automatically adds maxclock-1 servers from configured pools, and may +# add as many as maxclock*2 if necessary to ensure that at least minclock +# servers are providing good consistant time. +# +tos minclock 3 maxclock 6 + +# +# The following pool statement will give you a random set of NTP servers +# geographically close to you. A single pool statement adds multiple +# servers from the pool, according to the tos minclock/maxclock targets. +# See http://www.pool.ntp.org/ for details. Note, pool.ntp.org encourages +# users with a static IP and good upstream NTP servers to add a server +# to the pool. See http://www.pool.ntp.org/join.html if you are interested. +# +# The option `iburst' is used for faster initial synchronization. +# +#pool 0.freebsd.pool.ntp.org iburst + +# +# If you want to pick yourself which country's public NTP server +# you want to sync against, comment out the above pool, uncomment +# the next one, and replace CC with the country's abbreviation. +# Make sure that the hostname resolves to a proper IP address! +# +# pool 0.CC.pool.ntp.org iburst + +# +# To configure a specific server, such as an organization-wide local +# server, add lines similar to the following. One or more specific +# servers can be configured in addition to, or instead of, any server +# pools specified above. When both are configured, ntpd first adds all +# the specific servers, then adds servers from the pool until the tos +# minclock/maxclock targets are met. +# +#server time.my-internal.org iburst +server 192.168.0.5 iburst + +# +# Security: +# +# By default, only allow time queries and block all other requests +# from unauthenticated clients. +# +# The "restrict source" line allows peers to be mobilized when added by +# ntpd from a pool, but does not enable mobilizing a new peer association +# by other dynamic means (broadcast, manycast, ntpq commands, etc). +# +# See http://support.ntp.org/bin/view/Support/AccessRestrictions +# for more information. +# +restrict default limited kod nomodify notrap noquery nopeer +restrict source limited kod nomodify notrap noquery + +# +# Alternatively, the following rules would block all unauthorized access. +# +#restrict default ignore +# +# In this case, all remote NTP time servers also need to be explicitly +# allowed or they would not be able to exchange time information with +# this server. +# +# Please note that this example doesn't work for the servers in +# the pool.ntp.org domain since they return multiple A records. +# +#restrict 0.pool.ntp.org nomodify nopeer noquery notrap +#restrict 1.pool.ntp.org nomodify nopeer noquery notrap +#restrict 2.pool.ntp.org nomodify nopeer noquery notrap +# +# The following settings allow unrestricted access from the localhost +restrict 127.0.0.1 +restrict ::1 + +# +# If a server loses sync with all upstream servers, NTP clients +# no longer follow that server. The local clock can be configured +# to provide a time source when this happens, but it should usually +# be configured on just one server on a network. For more details see +# http://support.ntp.org/bin/view/Support/UndisciplinedLocalClock +# The use of Orphan Mode may be preferable. +# +#server 127.127.1.0 +#fudge 127.127.1.0 stratum 10 + +# See http://support.ntp.org/bin/view/Support/ConfiguringNTP#Section_6.14. +# for documentation regarding leapfile. Updates to the file can be obtained +# from ftp://time.nist.gov/pub/ or ftp://tycho.usno.navy.mil/pub/ntp/. +# Use either leapfile in /etc/ntp or periodically updated leapfile in /var/db. +#leapfile "/etc/ntp/leap-seconds" +leapfile "/var/db/ntpd.leap-seconds.list" diff --git a/configs/etc/profile b/configs/etc/profile new file mode 100644 index 0000000..ec81596 --- /dev/null +++ b/configs/etc/profile @@ -0,0 +1,20 @@ +# $FreeBSD: releng/12.1/bin/sh/profile 337849 2018-08-15 14:41:24Z brd $ +# +# System-wide .profile file for sh(1). +# +# Uncomment this to give you the default 4.2 behavior, where disk +# information is shown in K-Blocks +# BLOCKSIZE=K; export BLOCKSIZE +# +# For the setting of languages and character sets please see +# login.conf(5) and in particular the charset and lang options. +# For full locales list check /usr/share/locale/* +# You should also read the setlocale(3) man page for information +# on how to achieve more precise control of locale settings. +# +# Check system messages +# msgs -q +# Allow terminal messages +# mesg y +LANG=en_US.UTF-8; export LANG +CHARSET=UTF-8; export CHARSET diff --git a/configs/etc/rc.conf b/configs/etc/rc.conf new file mode 100644 index 0000000..8f617c6 --- /dev/null +++ b/configs/etc/rc.conf @@ -0,0 +1,85 @@ +zfs_enable="YES" + +kld_list="nmdm vmm ipfw" + +# Do not mark to autodetach otherwise ZFS gets very unhappy. +geli_autodetach="NO" + +# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable +dumpdev="/dev/ada2p3" +dumpdir="/var/crash" +savecore_enable="YES" + +# Turbo boost +performance_cpu_freq="HIGH" + +ntpd_sync_on_start="YES" +ntpd_enable="YES" + +powerd_enable="YES" +powerd_flags="-a hiadaptive -n hiadaptive -m 2500 -M 3300" + +smartd_enable="YES" +nut_enable="YES" + +#dbus_enable="YES" + +firewall_enable="NO" +firewall_type="open" +firewall_logging="YES" +firewall_logif="YES" + +# interfaces +cloned_interfaces_sticky="YES" +cloned_interfaces="lagg0 bridge1 bridge2 bridge5 bridge9" + +ifconfig_lagg0="laggproto lacp laggport igb0 laggport igb1 up" +ifconfig_igb0="up" +ifconfig_igb1="up" + +vlans_lagg0="1 2 5 9" + +ipv6_activate_all_interfaces="YES" +rtsold_enable="YES" + +ifconfig_lagg0_1="inet 192.168.0.10/24" +ifconfig_lagg0_1_ipv6="inet6 2603:3024:3f6:e1::10/64 auto_linklocal accept_rtadv" +ifconfig_lagg0_2="inet 192.168.1.10/24" +ifconfig_lagg0_2_ipv6="inet6 2603:3024:3f6:e2::10/64 auto_linklocal accept_rtadv" +ifconfig_lagg0_5="inet 192.168.2.10/24" +ifconfig_lagg0_5_ipv6="inet6 2603:3024:3f6:e5::10/64 auto_linklocal accept_rtadv" +ifconfig_lagg0_9="inet 192.168.200.10/24" +ifconfig_lagg0_9_ipv6="inet6 2603:3024:3f6:e9::10/64 auto_linklocal accept_rtadv" + +ifconfig_bridge1="addm lagg0.1 up" +ifconfig_bridge2="addm lagg0.2 up" +ifconfig_bridge5="addm lagg0.5 up" +ifconfig_bridge9="addm lagg0.9 up" + +defaultrouter="192.168.0.5" +ipv6_defaultrouter="2603:3024:3f6:e1::5" +# interfaces + +hostname="nas.ahlawat.com" + +syslogd_enable="YES" +syslogd_flags="-ss" + +syslog_ng_enable="NO" +syslog_ng_config="-u daemon" +syslog_ng_pid="/var/run/syslog-ng.pid" + +sendmail_enable="NO" +sendmail_outbound_enable="NO" +sendmail_submit_enable="YES" +sendmail_msp_queue_enable="YES" + +sshd_enable="YES" + +iocage_enable="YES" + +devfs_system_ruleset="usbrules" + +node_exporter_enable="YES" +node_exporter_args=--collector.filesystem.ignored-mount-points="/mnt/iocage*" +gstat_exporter_enable="YES" diff --git a/configs/etc/resolvconf.conf b/configs/etc/resolvconf.conf new file mode 100644 index 0000000..7ba3605 --- /dev/null +++ b/configs/etc/resolvconf.conf @@ -0,0 +1 @@ +export name_servers=192.168.0.5 diff --git a/configs/etc/sysctl.conf b/configs/etc/sysctl.conf new file mode 100644 index 0000000..3a91917 --- /dev/null +++ b/configs/etc/sysctl.conf @@ -0,0 +1,113 @@ +# $FreeBSD: releng/12.1/sbin/sysctl/sysctl.conf 337624 2018-08-11 13:28:03Z brd $ +# +# This file is read when going to multi-user and its contents piped thru +# ``sysctl'' to adjust kernel values. ``man 5 sysctl.conf'' for details. +# + +# Uncomment this to prevent users from seeing information about processes that +# are being run under another UID. +security.bsd.see_other_uids=0 +security.bsd.unprivileged_read_msgbuf=0 +security.bsd.unprivileged_proc_debug=0 +kern.randompid=1 +vfs.zfs.min_auto_ashift=12 + +kern.coredump=1 +kern.sugid_coredump=1 +kern.sched.interact=5 +kern.sched.slice=3 +vfs.read_max=128 +vfs.timestamp_precision=3 +net.link.tap.up_on_open=1 +#net.link.lagg.lacp.default_strict_mode=0 +net.inet.ip.fw.verbose_limit=5 + +dev.igb.0.fc=0 +dev.igb.1.fc=0 +#dev.igb.0.eee_control=0 +#dev.igb.1.eee_control=0 +# breaks the igb driver +hw.intr_storm_threshold=9000 +kern.ipc.maxsockbuf=16777216 +kern.ipc.shm_use_phys=1 +kern.ipc.soacceptqueue=1024 +kern.maxvnodes=4194304 +kern.random.harvest.mask=351 +kern.threads.max_threads_per_proc=9000 +net.bpf.optimize_writers=1 +net.inet.icmp.drop_redirect=1 +net.inet.icmp.icmplim=512 +net.inet.icmp.icmplim_output=0 +net.inet.ip.forwarding=1 +net.inet.ip.maxfragpackets=0 +net.inet.ip.maxfragsperpacket=0 +net.inet.ip.random_id=1 +net.inet.ip.redirect=0 +net.inet.raw.maxdgram=131072 +net.inet.raw.recvspace=131072 +net.inet.tcp.abc_l_var=44 +net.inet.tcp.blackhole=2 +net.inet.tcp.cc.abe=1 +net.inet.tcp.cc.algorithm=cubic +#net.inet.tcp.cc.htcp.adaptive_backoff=1 +#net.inet.tcp.cc.htcp.rtt_scaling=1 +net.inet.tcp.delacktime=20 +net.inet.tcp.drop_synfin=1 +net.inet.tcp.initcwnd_segments=44 +net.inet.tcp.keepidle=10000 +net.inet.tcp.keepintvl=5000 +net.inet.tcp.minmss=524 +net.inet.tcp.msl=2500 +net.inet.tcp.mssdflt=1448 +net.inet.tcp.nolocaltimewait=1 +net.inet.tcp.path_mtu_discovery=0 +net.inet.tcp.reass.maxqueuelen=1448 +net.inet.tcp.recvbuf_inc=65536 +net.inet.tcp.recvbuf_max=16777216 +net.inet.tcp.recvspace=262144 +net.inet.tcp.rfc6675_pipe=1 +net.inet.tcp.sendbuf_inc=32768 +net.inet.tcp.sendbuf_max=16777216 +net.inet.tcp.sendspace=262144 +net.inet.tcp.syncache.rexmtlimit=0 +net.inet.tcp.syncookies=0 +net.inet.tcp.tso=0 +net.inet.udp.blackhole=1 +net.inet.udp.maxdgram=57344 +net.inet6.icmp6.nodeinfo=0 +net.inet6.ip6.accept_rtadv=1 +net.inet6.ip6.use_tempaddr=1 +net.inet6.ip6.prefer_tempaddr=1 +net.inet6.ip6.forwarding=1 +net.inet6.ip6.maxfragpackets=0 +net.inet6.ip6.maxfrags=0 +net.inet6.ip6.redirect=0 +net.link.bridge.pfil_bridge=0 +net.link.bridge.pfil_member=0 +net.link.bridge.pfil_onlyip=0 +net.local.stream.recvspace=164240 +net.local.stream.sendspace=164240 +net.route.netisr_maxqlen=2048 +net.raw.recvspace=65536 +net.raw.sendspace=65536 +vfs.zfs.arc_max=51539607552 +vfs.zfs.delay_min_dirty_percent=96 +vfs.zfs.dirty_data_max=12884901888 +vfs.zfs.prefetch_disable=0 +vfs.zfs.top_maxinflight=128 +vfs.zfs.trim.txg_delay=2 +vfs.zfs.txg.timeout=90 +vfs.zfs.vdev.aggregation_limit=1048576 +vfs.zfs.vdev.write_gap_limit=0 + +# no l2arc +#vfs.zfs.l2arc_write_boost=402653184 +#vfs.zfs.l2arc_write_max=402653184 + +net.inet.tcp.functions_default=rack +net.inet.tcp.rack.tlpmethod=3 +net.inet.tcp.rack.data_after_close=0 + +# Verify RACK +# sysctl net.inet.tcp.functions_available +# sysctl net.inet.tcp.rack. diff --git a/configs/usr/local/etc/nano/asm.nanorc b/configs/usr/local/etc/nano/asm.nanorc new file mode 100644 index 0000000..35859ee --- /dev/null +++ b/configs/usr/local/etc/nano/asm.nanorc @@ -0,0 +1,25 @@ +## Here is an example for assembler. + +syntax "asm" "\.(S|s|asm)$" +magic "assembler source" +comment "//" + +color red "\<[A-Z_]{2,}\>" +color brightgreen "\.(data|subsection|text)" +color green "\.(align|file|globl|global|hidden|section|size|type|weak)" +color brightyellow "\.(ascii|asciz|byte|double|float|hword|int|long|short|single|struct|word)" +icolor brightred "^[[:space:]]*[.0-9A-Z_]*:" +color brightcyan "^[[:space:]]*#[[:space:]]*(define|undef|include|ifn?def|endif|elif|else|if|warning|error)" + +# Strings. +color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" +# Multiline strings. This regex is VERY resource intensive, +# and sometimes colours things that shouldn't be coloured. +###color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +# Comments. +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/autoconf.nanorc b/configs/usr/local/etc/nano/autoconf.nanorc new file mode 100644 index 0000000..918de3d --- /dev/null +++ b/configs/usr/local/etc/nano/autoconf.nanorc @@ -0,0 +1,32 @@ +## Here is an example for Autoconf. + +syntax "autoconf" "\.(ac|m4)$" +comment "#" + +# Keywords: +color yellow "\<(if|test|then|elif|else|fi|for|in|do|done)\>" +color yellow "(=|!=|&&|\|\|)" + +# Macros: +color cyan "\<[[:upper:]_[:digit:]]+\>" + +# Version numbers: +color red "\<[-_.0-9]+\>" + +# Strings: +color red "\"[^"]*\"" "\'[^']*\'" + +# Backticks: +color green "`[^`]*`" + +# Error lines: +color brightred "^\*\*\*.*" + +# Brackets: +color magenta "\[|\]|\(|\)" + +# Comments: +color blue "^[[:blank:]]*#.*" "\" +color red "\<(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\>" +color red "\<(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\>" +# Function declarations and special patterns. +color brightgreen "\<(function|extension|BEGIN|END)\>" +# Operators. +color green "(\{|\}|\(|\)|\;|\]|\[|\\|<|>|!|=|&|\+|-|\*|%|/|\?:|\^|\|)" +# Flow control. +color brightyellow "\<(for|if|while|do|else|in|delete|exit)\>" +color brightyellow "\<(break|continue|return)\>" +# I/O statements. +color brightgreen "\<(close|getline|next|nextfile|print|printf)\>" +color brightgreen "\<(system|fflush)\>" +# Standard functions. +color magenta "\<(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\>" +color magenta "\<(asort|asorti|gensub|gsub|index|length|match)\>" +color magenta "\<(split|sprintf|strtonum|sub|substr|tolower|toupper)\>" +color magenta "\<(mktime|strftime|systime)\>" +color magenta "\<(and|compl|lshift|or|rshift|xor)\>" +color magenta "\<(bindtextdomain|dcgettext|dcngettext)\>" + +# Strings. +color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" +# Comments. +color brightblue "(^|[[:space:]])#.*$" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/c.nanorc b/configs/usr/local/etc/nano/c.nanorc new file mode 100644 index 0000000..78041ff --- /dev/null +++ b/configs/usr/local/etc/nano/c.nanorc @@ -0,0 +1,39 @@ +## Here is an example for C/C++. + +syntax "c" "\.(c(c|pp|xx|\+\+)?|C)$" "\.(h(h|pp|xx)?|H)$" "\.ii?$" +magic "^(C|C\+\+) (source|program)" +comment "//" + +# Constants. +color brightred "\<[A-Z_][0-9A-Z_]+\>" +# Labels. +color brightmagenta "^[[:space:]]*[A-Z_a-z]+:[[:space:]]*$" + +color green "\<(float|double|bool|char|int|short|long|sizeof|enum|void|auto|static|const|struct|union|typedef|extern|(un)?signed|inline)\>" +color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" +color green "\<(class|namespace|template|public|protected|private|typename|this|friend|virtual|override|using|mutable|volatile|register|explicit)\>" +color brightyellow "\<(for|if|while|do|else|case|default|switch)\>" +color brightyellow "\<(try|throw|catch|operator|new|delete)\>" +color magenta "\<(goto|continue|break|return)\>" +color brightcyan "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" +color brightmagenta "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" + +# GCC builtins. +color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" + +# Strings. In general you will want your strings and comments to come last, +# because highlighting rules are applied in the order they are read in. +color brightyellow ""([^"]|\\")*"" "<[^[:blank:]=]*>" +# Multiline strings. This regex is VERY resource intensive, +# and sometimes colours things that shouldn't be coloured. +###color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +# Comments. +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +# Reminders. +color brightwhite,yellow "\<(FIXME|TODO|XXX)\>" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/changelog.nanorc b/configs/usr/local/etc/nano/changelog.nanorc new file mode 100644 index 0000000..b522620 --- /dev/null +++ b/configs/usr/local/etc/nano/changelog.nanorc @@ -0,0 +1,28 @@ +## Colouring for Changelogs. + +syntax "changelog" "Change[Ll]og.*" + +# Author lines. +color green "^(19|20).*$" +# Dates. +color red "^(19|20)[0-9-]{8}" +# Email addresses. +color yellow "<[^>]*@[^>]*>" + +# Command-line options. +color cyan "[[:space:]]-[a-zA-Z\$]" "--[8a-z-]+" +# Bug and patch numbers. +color cyan "(BZ|bug|patch) #[0-9]+" "PR [[:alnum:]]+/[0-9]+" +# Probable constants, for variety. +color brightred "\<[A-Z_][0-9A-Z_]+\>" +# Key sequences. +color brightblue "\^[A-Z^\]" "\" + +icolor brightgreen "^[[:space:]]*((else|end)?if|else|(end)?while|(end)?foreach|break)\>" +color brightgreen "\<(NOT|COMMAND|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)[[:space:]]" +color brightgreen "[[:space:]](OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))[[:space:]]" + +icolor brightred "^[[:space:]]*((end)?(function|macro)|return)" + +icolor cyan start="\$(\{|ENV\{)" end="\}" +color magenta "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" + +icolor brightblue "^([[:space:]]*)?#.*" +icolor brightblue "[[:space:]]#.*" +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/css.nanorc b/configs/usr/local/etc/nano/css.nanorc new file mode 100644 index 0000000..a0531cd --- /dev/null +++ b/configs/usr/local/etc/nano/css.nanorc @@ -0,0 +1,11 @@ +## Here is an example for CSS files. + +syntax "css" "\.css$" +comment "/*|*/" + +color brightred "." +color brightyellow start="\{" end="\}" +color brightwhite start=":" end="([;^\{]|$)" +color brightblue ":active|:focus|:hover|:link|:visited|:link|:after|:before|$" +color brightblue start="\/\*" end="\\*/" +color green ";|:|\{|\}" diff --git a/configs/usr/local/etc/nano/debian.nanorc b/configs/usr/local/etc/nano/debian.nanorc new file mode 100644 index 0000000..10e8a32 --- /dev/null +++ b/configs/usr/local/etc/nano/debian.nanorc @@ -0,0 +1,21 @@ +## Here is an example for apt's sources.list. + +syntax "sources.list" "sources\.list(~|\.old|\.save)?$" "sources\.list\.d/.*\.list(~|\.old|\.save)?$" +comment "#" + +# Coloring the deb lines, working from tail to head. First the +# components -- well, everything, and thus also the components. +color brightmagenta "^deb.*" +# Distribution -- well, everything, except the components. +color brightred "^deb(-src)?\s+.*((ftp|https?|rsh|ssh|copy|file|spacewalk|tor):/\S+|cdrom:\[.+\]/)\s+\S+" +# URIs. +color brightgreen "^deb(-src)?\s+.*(ftp|https?|rsh|ssh|copy|file|spacewalk|tor):/\S+" +# CDroms. +color brightgreen "^deb(-src)?\s+.*cdrom:\[.+\]/" +# Options. +color brightcyan "^deb(-src)?\s+\[.+\]\s+" +# And finally the initial deb tag. +color yellow "^deb(-src)?" + +# Comments. +color brightblue "#.*" diff --git a/configs/usr/local/etc/nano/default.nanorc b/configs/usr/local/etc/nano/default.nanorc new file mode 100644 index 0000000..e9ef303 --- /dev/null +++ b/configs/usr/local/etc/nano/default.nanorc @@ -0,0 +1,17 @@ +## An example of a default syntax. The default syntax is used for +## files that do not match any other syntax. + +syntax "default" +comment "#" + +# Comments. +color cyan "^[[:space:]]*#.*" + +# Spaces in front of tabs. +color ,red " + +" + +# Nano's name, including version. +color brightred "(GNU )?nano [1-9]\.[0-9]\.[^[:space:][:punct:]]+" + +# Email addresses. +color magenta "<[[:alnum:].%_+-]+@[[:alnum:].-]+\.[[:alpha:]]{2,}>" diff --git a/configs/usr/local/etc/nano/elisp.nanorc b/configs/usr/local/etc/nano/elisp.nanorc new file mode 100644 index 0000000..296ff49 --- /dev/null +++ b/configs/usr/local/etc/nano/elisp.nanorc @@ -0,0 +1,33 @@ +## Here is an example for Emacs Lisp. + +syntax "elisp" "\.el$" +magic "Lisp/Scheme program" +comment ";" + +# Basic functions/macros +color brightcyan "\<(if|when|unless|cond|and|or|lambda|let|progn|while|dolist|dotimes)\>" +color brightcyan "\" +color brightcyan "\" +# Defining functions +color brightcyan "\" +color brightcyan "\" +color brightcyan "\" +# Defining variables +color brightcyan "\" +# Customization functions +color brightcyan "\" +# Setting values +color brightcyan "\<(setq(-default|-local)?|setf|push|pop|declare(-function)?)\>" +# Feature functions +color brightcyan "\<(require|provide)\>" +# Quoted symbols +color brightyellow "#?'\<(\w|-)+\>" +# Booleans +color brightred "\<(t|nil)\>" +# Keywords +color blue ":(\w|[?-])+" +# Strings +color yellow start="^[[:blank:]]+\"" end="[^\]\"" +color yellow ""(\\.|[^"])*"" +# Comments +color cyan "(^|[[:space:]]);.*$" diff --git a/configs/usr/local/etc/nano/fortran.nanorc b/configs/usr/local/etc/nano/fortran.nanorc new file mode 100644 index 0000000..2a56bc7 --- /dev/null +++ b/configs/usr/local/etc/nano/fortran.nanorc @@ -0,0 +1,40 @@ +## Here is an example for Fortran 90/95. + +syntax "fortran" "\.(f|f90|f95)$" +comment "!" + +color red "\<[0-9]+\>" + +icolor green "\<(action|advance|all|allocatable|allocated|any|apostrophe)\>" +icolor green "\<(append|asis|assign|assignment|associated|character|common)\>" +icolor green "\<(complex|data|default|delim|dimension|double precision)\>" +icolor green "\<(elemental|epsilon|external|file|fmt|form|format|huge)\>" +icolor green "\<(implicit|include|index|inquire|integer|intent|interface)\>" +icolor green "\<(intrinsic|iostat|kind|logical|module|none|null|only)>" +icolor green "\<(operator|optional|pack|parameter|pointer|position|private)\>" +icolor green "\<(program|public|real|recl|recursive|selected_int_kind)\>" +icolor green "\<(selected_real_kind|subroutine|status)\>" + +icolor cyan "\<(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\>" +icolor cyan "\<(close|contains|count|cpu_time|cshift|date_and_time)\>" +icolor cyan "\<(deallocate|digits|dot_product|eor|eoshift|function|iachar)\>" +icolor cyan "\<(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\>" +icolor cyan "\<(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\>" +icolor cyan "\<(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\>" +icolor cyan "\<(open|pad|present|print|product|pure|quote|radix)\>" +icolor cyan "\<(random_number|random_seed|range|read|readwrite|replace)\>" +icolor cyan "\<(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\>" +icolor cyan "\<(spread|sum|system_clock|target|transfer|transpose|trim)\>" +icolor cyan "\<(ubound|unpack|verify|write|tiny|type|use|yes)\>" + +icolor yellow "\<(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\>" +icolor yellow "\<(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\>" +icolor yellow "\<(.or.|repeat|select case|then|where|while)\>" + +icolor magenta "\<(continue|cycle|exit|go?to|result|return)\>" + +# Strings. +icolor yellow "<[^= ]*>" ""(\\.|[^"])*"" + +# Comments. +icolor blue "!.*" diff --git a/configs/usr/local/etc/nano/gentoo.nanorc b/configs/usr/local/etc/nano/gentoo.nanorc new file mode 100644 index 0000000..330db66 --- /dev/null +++ b/configs/usr/local/etc/nano/gentoo.nanorc @@ -0,0 +1,74 @@ +## Here is an example for Gentoo ebuilds/eclasses, +## and (further down) one for Portage control files. + +syntax "ebuild" "\.e(build|class|blit)$" +comment "#" + +## All the standard portage functions: +color brightgreen "(^|\" +color brightgreen "^pkg_(config|nofetch|info|pretend|setup|(pre|post)(inst|rm))\>" +color brightgreen "\" +## Bash-related syntax: +color green "\<(break|case|continue|do|done|elif|else|esac|exit|fi|for|function|if|in|read|return|select|shift|then|time|until|while)\>" +color green "\<(declare|eval|exec|export|let|local)\>" +color green "[{}():;|`$<>!=&\\]" "(\]|\[)" +color green "-[defhnrsuwxzL]\>" +color green "-(eq|ne|gt|lt|ge|le)\>" +## Variables... official portage ones in red, all others in bright red: +color brightred "\$[-0-9@*#?$!]" "\$[[:alpha:]_][[:alnum:]_]*" +color brightred "\$\{[#!]?([-@*#?$!]|[0-9]+|[[:alpha:]_][[:alnum:]_]*)(\[([[:digit:]]|@)+\])?(([#%/]|:?[-=?+])[^}]*\}|\[|\})" +color red "\<(EAPI|ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|[HPR]?DEPEND|PROVIDE|PROPERTIES|REQUIRED_USE|RESTRICT|USERLAND)\>" +color red "\<(S|E?D|T|PV|PF|P|PN|PR|PVR|A|CATEGORY|DISTDIR|FILESDIR|EPREFIX|E?ROOT|WORKDIR)\>" +color red "\<(AS|C(PP|XX)?|LD)FLAGS\>" "\" "\<(MERGE_TYPE|REPLACING_VERSIONS|REPLACED_BY_VERSION)\>" +color red "\" +color red "\" +color red "\<(PATCHES|(HTML_)?DOCS)\>" "\" "\" +## Portage commands: +color magenta "\<(use(_(with|enable|if_iuse)|x)?|in_iuse) [!a-zA-Z0-9_+ -]*" "inherit.*" +color brightblue "\" +color brightblue "\" "\" +color brightblue "\" "\" +color brightblue "\" "\" +color brightblue "\<(die|hasv?|inherit|nonfatal)\>" "\<(use(_(with|enable|if_iuse)|x)?|in_iuse)\>" "\<(has|best)_version\>" +color brightblue "\<(do|new)(ins|(games)?s?bin|doc|lib(\.so|\.a)?|man|info|exe|initd|confd|envd|pam|menu|icon)\>" +color brightblue "\" "\" +color brightblue "\" "\" +color brightblue "\<(doc|ins|exe)?into\>" "\<(f|games)(owners|perms)\>" "\<(exe|ins|dir)opts\>" +color brightblue "\" +color brightblue "\" +## Common commands used in ebuilds: +color blue "\<(awk|cat|cd|chmod|chown|cp|echo|env|find|e?grep|ln|make|mkdir|mv|popd|printf|pushd|rm|rmdir|sed|set|tar|touch|unset|xargs)\>" +## Comments (doesn't work that well): +color yellow "(^|[[:space:]])#.*$" +## Strings (doesn't work that well): +color brightyellow ""(\\.|[^\"])*"" "'(\\.|[^'])*'" +## Trailing space is bad! +color ,green "[[:space:]]+$" +## Mixed whitespace is also bad. +color ,green " " + + +syntax "/etc/portage" "\.(accept_keywords|env|keywords|mask|unmask|use)(/.+)?$" +comment "#" + +## Base text: +color green "^.+$" +## Likely version and slot numbers: +color magenta "-[[:digit:].]+(_(alpha|beta|pre|rc|p)[[:digit:]]*)*(-r[[:digit:]]+)?([:[:space:]]|$)" +color magenta ":[^[:space:]]+([[:space:]]|$)" +## Use flags (must come after version/slot): +color brightred "[[:space:]]+\+?[A-Za-z0-9+_@-]+" +color brightblue "[[:space:]]+-[A-Za-z0-9+_@-]+" +## Accepted arches: +color white "[~-]?\<(alpha|amd64|arm(64)?|hppa|ia64|m68k|mips|nios2|ppc(64)?|riscv|s390|sh|sparc|x86)(-(aix|(f|free|net|open)bsd|cygwin|hpux|interix|linux|macos|mint|solaris|winnt))?\>" +color white "[[:space:]][*~-]?\*" +## Categories: +color cyan "^[[:space:]]*[^/]*/" +## Masking regulators: +color brightmagenta "^[[:space:]]*(=|~|<|<=|>|>=)" +## Comments: +color yellow "#.*$" +## Trailing space is bad! +color ,green "[[:space:]]+$" +## Mixed whitespace is also bad. +color ,green " " diff --git a/configs/usr/local/etc/nano/go.nanorc b/configs/usr/local/etc/nano/go.nanorc new file mode 100644 index 0000000..667ea73 --- /dev/null +++ b/configs/usr/local/etc/nano/go.nanorc @@ -0,0 +1,42 @@ +## Here is an example for Go. + +syntax "go" "\.go$" +comment "//" + +# Set up a formatter since spelling is probably useless... +#formatter gofmt -w + +# Types. +color green "\<(bool|u?int(8|16|32|64)?|float(32|64)|complex(64|128)|byte|rune|uintptr|string|error)\>" +color green "\<((<-[[:space:]]*)chan|chan[[:space:]]*<-|const|func|interface|map|struct|type|var)\>" + +# Predefined functions. +color blue "\<(append|cap|close|complex|copy|delete|imag|len|make|new|panic|print|println|real|recover)\>" + +# Control structures. +color brightyellow "\<(case|default|defer|else|for|go|if|range|select|switch)\>" + +# Control flow. +color magenta "\<(break|continue|fallthrough|goto|return)\>" + +# Declarations. +color brightcyan "\<(package|import)\>" +color brightcyan "//[[:space:]]*\+build[[:space:]]+(([a-zA-Z_0-9]+[[:space:]]*)+,[[:space:]]*)*[a-zA-Z_0-9]+" + +# Literals. +color red "\<0([0-7]*|[xX][0-9a-fA-F]+)\>" +color red "(\<0+|\B)\.[0-9]+([Ee][+-]?[0-9]+)?i?\>" +color red "\<[1-9][0-9]*(\.[0-9]*)?([Ee][+-]?[0-9]+)?i?\>" + +# Strings and characters; slightly fuzzy. +color red "\<(true|false|nil|iota|_)\>" +color red "'(\\.|[^'])+'" +color red ""(\\.|[^"])*"" +color red start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +# Comments. +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/groff.nanorc b/configs/usr/local/etc/nano/groff.nanorc new file mode 100644 index 0000000..109f9cd --- /dev/null +++ b/configs/usr/local/etc/nano/groff.nanorc @@ -0,0 +1,26 @@ +## Here is an example for groff. + +syntax "groff" "\.m[ems]$" "\.rof" "\.tmac$" "^tmac." +comment ".\"" + +# The argument of .ds or .nr +color cyan "^\.(ds|nr) [^[:space:]]*" +# Single-character escapes +color brightmagenta "\\." +# The argument of \f or \s in the same color +color brightmagenta "\\f." "\\f\(.." "\\s(\+|\-)?[0-9]" +# Newlines +color cyan "(\\|\\\\)n(.|\(..)" +color cyan start="(\\|\\\\)n\[" end="]" +# Requests +color brightgreen "^\.[[:space:]]*[^[:space:]]*" +# Comments +color yellow "^\.\\".*$" +# Strings +color green "(\\|\\\\)\*(.|\(..)" +color green start="(\\|\\\\)\*\[" end="]" +# Characters +color brightred "\\\(.." +color brightred start="\\\[" end="]" +# Macro arguments +color brightcyan "\\\\\$[1-9]" diff --git a/configs/usr/local/etc/nano/guile.nanorc b/configs/usr/local/etc/nano/guile.nanorc new file mode 100644 index 0000000..db5f786 --- /dev/null +++ b/configs/usr/local/etc/nano/guile.nanorc @@ -0,0 +1,24 @@ +## Here is an example for Guile Scheme. + +syntax "guile" "\.scm$" +header "^#!.*guile" +comment ";" + +# Basic scheme functions +color green "\<(do|if|lambda|let(rec)?|map|unless|when)\>" +# Defining things +color brightcyan "\" +# Quoted symbols +color brightyellow "'\<(\w|-)+\>" +# Chars +color brightmagenta "#\\." +color brightmagenta "#\\\w+\>" +# Booleans +color brightred "(#t|#f)\>" +# Keywords +color blue "#?:(\w|[?-])+" +# Strings +color yellow start="^[[:blank:]]+\"" end="[^\]\"" +color yellow ""(\\.|[^"])*"" +# Comments +color cyan "(^|[[:space:]]);.*$" diff --git a/configs/usr/local/etc/nano/html.nanorc b/configs/usr/local/etc/nano/html.nanorc new file mode 100644 index 0000000..f8da699 --- /dev/null +++ b/configs/usr/local/etc/nano/html.nanorc @@ -0,0 +1,28 @@ +## Here is an example for HTML. + +syntax "html" "\.html?$" +magic "HTML document" +comment "" + +# Tags: +color cyan "<[[:alpha:]/!?][^>]*>" +# Bold, italic, and underlined: +color brightmagenta "" + +# Named character references: +color red "&[^;[:space:]]*;" +# Strings: +color green ""(\\.|[^"])*"" + +# Attributes: +color red "(abbr|accept(-charset)?|accesskey|action|alink|align|alt|archive|axis|background|bgcolor|border)=" +color red "(cell(padding|spacing)|char(off|set)?|checked|cite|class(id)?|compact|code(base|tag)?|cols(pan)?)=" +color red "(content(editable)?|contextmenu|coords|data|datetime|declare|defer|dir|disabled|enctype)=" +color red "(for|frame(border)?|headers|height|hidden|href(lang)?|hspace|http-equiv|id|ismap)=" +color red "(label|lang|link|longdesc|margin(height|width)|maxlength|media|method|multiple)=" +color red "(name|nohref|noresize|noshade|object|onclick|onfocus|onload|onmouseover|profile|readonly|rel|rev)=" +color red "(rows(pan)?|rules|scheme|scope|scrolling|selected|shape|size|span|src|standby|start|style|summary)=" +color red "(tabindex|target|text|title|type|usemap|valign|value(type)?|vlink|vspace|width|xmlns|xml:space)=" + +# Comments: +color yellow start="" diff --git a/configs/usr/local/etc/nano/java.nanorc b/configs/usr/local/etc/nano/java.nanorc new file mode 100644 index 0000000..f0bd01d --- /dev/null +++ b/configs/usr/local/etc/nano/java.nanorc @@ -0,0 +1,16 @@ +## Here is an example for Java. + +syntax "java" "\.java$" +magic "Java " +comment "//" + +color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" +color red "\<(break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" +color cyan "\<(abstract|class|extends|final|implements|import|instanceof|interface|native)\>" +color cyan "\<(package|private|protected|public|static|strictfp|super|synchronized|throws|volatile)\>" +color red ""[^"]*"" +color yellow "\<(true|false|null)\>" +color blue "//.*" +color blue start="/\*" end="\*/" +color brightblue start="/\*\*" end="\*/" +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/javascript.nanorc b/configs/usr/local/etc/nano/javascript.nanorc new file mode 100644 index 0000000..5f667a1 --- /dev/null +++ b/configs/usr/local/etc/nano/javascript.nanorc @@ -0,0 +1,24 @@ +## Syntax highlighting for Javascript. + +syntax "javascript" "\.js$" +comment "//" + +# Declarational stuff. +color green "\<(async|class|const|extends|function|let|this|typeof|var|void)\>" +# Flow control and special keywords. +color brightyellow "\<(do|while|if|else|switch|case|default|for|each|in|of|with)\>" +color brightyellow "\<(await|export|import|throw|try|catch|finally|new|delete)\>" +# "Exit" points. +color magenta "\<(break|continue|return|yield)\>" + +# Octal/decimal and hexadecimal numbers. +color cyan "\<[0-9]+\>" "\<0x[0-9A-Fa-f]+\>" + +# Strings. +color brightmagenta ""(\\.|[^"])*"" "'(\\.|[^'])*'" "`(\\.|[^`])*`" +# Comments. +color brightblue "(^|[[:space:]])//.*" +color brightblue start="/\*" end="\*/" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/json.nanorc b/configs/usr/local/etc/nano/json.nanorc new file mode 100644 index 0000000..20d50c1 --- /dev/null +++ b/configs/usr/local/etc/nano/json.nanorc @@ -0,0 +1,34 @@ +## Syntax highlighting for JSON files. + +# See: http://www.json.org/ +# Original author: Aapo Rantalainen +# License: GPLv3 or newer + +syntax "json" "\.json$" +# No comments are permitted in JSON. +comment "" + +# Numbers (used as value). +color green ":[[:space:]]*\-?(0|[1-9][0-9]*)(\.[0-9]+)?([Ee]?[-+]?[0-9]+)?" +# Values (well, any string). +color brightmagenta "\".+\"" +# Hex numbers (used as value). +color green ":[[:space:]]*\"#[0-9abcdefABCDEF]+\"" +# Escapes. +color green "\\\\" "\\\"" "\\[bfnrt]" "\\u[0-9abcdefABCDEF]{4})" +# Special words. +color green "(true|false|null)" + +# Names (very unlikely to contain a quote). +color brightblue "\"[^"]+\"[[:space:]]*:" + +# Brackets, braces, and separators. +color brightblue "\[" "\]" +color brightred "\{" "\}" +color brightred "," ":" + +# Comments. +color cyan "(^|[[:space:]]+)(//|#).*$" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/lua.nanorc b/configs/usr/local/etc/nano/lua.nanorc new file mode 100644 index 0000000..41d8840 --- /dev/null +++ b/configs/usr/local/etc/nano/lua.nanorc @@ -0,0 +1,57 @@ +## Syntax highlighting for Lua. +# +## Original author: Matthew Wild +## License: GPL 3 or later + +syntax "lua" "\.lua$" +magic "Lua script" +comment "--" + +color brightwhite "\[\[.*\]\]" + +# Operators +color brightyellow ":|\*|/|%|\+|-|\^|>|>=|<|<=|~=|=|\.\.|\<(not|and|or)\>" + +# Statements +color brightblue "\<(do|end|while|repeat|until|if|elseif|then|else|for|in|function|local|return|break)\>" + +# Keywords +color brightyellow "\<(_G|_VERSION|assert|collectgarbage|dofile|error|getfenv|getmetatable|ipairs|load|loadfile|module|next|pairs|pcall|print|rawequal|rawget|rawlen|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|unpack|xpcall)\s*\(" + +# Standard library +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" +color brightyellow "\" + +# File handle methods +color brightyellow ":(close|flush|lines|read|seek|setvbuf|write)\>" + +# External files +color brightgreen "\<(dofile|require)\>" + +# Special words +color brightmagenta "\<(false|nil|true)\>" + +# Decimal and hexadecimal numbers +color red "\<[0-9]+(\.[0-9]*)?([Ee][+-]?[0-9]+)?\>" +icolor red "\<0x[0-9a-f]+(\.[0-9a-f]*)?(p[+-]?[0-9]+)?\>" + +# Brackets +color brightmagenta "\(|\)|\[|\]|\{|\}" + +# Shebang +color brightcyan "^#!.*" + +# Simple comments and multiline comments +color green "--.*" +color green start="--\[\[" end="\]\]" + +# Strings +color red ""(\\.|[^"\])*"|'(\\.|[^'\])*'" diff --git a/configs/usr/local/etc/nano/makefile.nanorc b/configs/usr/local/etc/nano/makefile.nanorc new file mode 100644 index 0000000..e94a249 --- /dev/null +++ b/configs/usr/local/etc/nano/makefile.nanorc @@ -0,0 +1,14 @@ +## Here is an example for Makefiles. + +syntax "makefile" "Makefile[^/]*$" "\.(make|mk)$" +magic "makefile script" +comment "#" + +color red "[:=]" +color magenta "\<(if|ifeq|else|endif)\>" +color blue "\$+[{(][a-zA-Z0-9_-]+[})]" +color brightblue "^[^ ]+:" +color green "(^|[[:space:]]+)#.*" + +## Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/man.nanorc b/configs/usr/local/etc/nano/man.nanorc new file mode 100644 index 0000000..00d8fe9 --- /dev/null +++ b/configs/usr/local/etc/nano/man.nanorc @@ -0,0 +1,18 @@ +## Here is an example for manpages. + +syntax "man" "\.[1-9]x?$" +magic "troff or preprocessor input" +comment ".\"" + +color green "\.(SH|SS|TH) .*$" +color brightgreen "\.(SH|SS|TH) " "\.([HIT]P)" +color brightred "\.(B[IR]?|I[BR]?|R[BI]|S[BM]) .*$" +color brightblue "\.(B[IR]?|I[BR]?|R[BI]|S[BM]) " "\.([LP]?P)$" +color magenta "\\f[BIPR]" +color yellow "\.(br|DT|RS|RE|PD)" + +# Comments. +color cyan "\.?\\\".*$" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/mgp.nanorc b/configs/usr/local/etc/nano/mgp.nanorc new file mode 100644 index 0000000..1e9d718 --- /dev/null +++ b/configs/usr/local/etc/nano/mgp.nanorc @@ -0,0 +1,10 @@ +## Here is an example for Magicpoint presentations. + +syntax "mgp" "\.mgp$" +header "^%include.*" +comment "#" + +icolor green "^%[a-z].*$" +color cyan "(^|[[:space:]])#.*$" +color cyan "(^|[[:space:]])%%.*$" +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/mutt.nanorc b/configs/usr/local/etc/nano/mutt.nanorc new file mode 100644 index 0000000..80fbcf4 --- /dev/null +++ b/configs/usr/local/etc/nano/mutt.nanorc @@ -0,0 +1,9 @@ +## Here is an example for quoted emails (under e.g. mutt). + +syntax "mutt" + +# Quoted lines. +color green "^>.*" + +# Signatures, even quoted ones. +color yellow start="^>* ?-- $" end="^>* ?$" diff --git a/configs/usr/local/etc/nano/nanohelp.nanorc b/configs/usr/local/etc/nano/nanohelp.nanorc new file mode 100644 index 0000000..18f332f --- /dev/null +++ b/configs/usr/local/etc/nano/nanohelp.nanorc @@ -0,0 +1,11 @@ +## This is meant for highlighting key combos in a nano help text. + +# It should not apply to any normal file, so no fileregex. +syntax "nanohelp" + +# Key combos: +color cyan "\^[]4-8A-Z^\_◀▶▲▼]" "[◀▶▲▼]" "(\^|M-)Space" "\" + +# Quoted indicators: +color brightred "'(\^|M-)'" diff --git a/configs/usr/local/etc/nano/nanorc.nanorc b/configs/usr/local/etc/nano/nanorc.nanorc new file mode 100644 index 0000000..9882d6b --- /dev/null +++ b/configs/usr/local/etc/nano/nanorc.nanorc @@ -0,0 +1,31 @@ +## Here is an example for nanorc files. + +syntax "nanorc" "\.?nanorc$" +comment "#" + +# Possible errors and parameters +icolor brightred "^[[:space:]]*((un)?(bind|set)|include|syntax|header|magic|comment|linter|formatter|i?color|extendsyntax).*$" + +# Keywords +icolor brightgreen "^[[:space:]]*(set|unset)[[:space:]]+(allow_insecure_backup|atblanks|autoindent|backup|backwards|boldtext|casesensitive|constantshow|cutfromcursor|fill[[:space:]]+-?[[:digit:]]+|historylog|linenumbers|locking|morespace|mouse|multibuffer|noconvert|nohelp|nopauses|nonewlines|nowrap|positionlog|preserve|quickblank|quiet|rebinddelete|rebindkeypad|regexp|showcursor|smarthome|smooth|softwrap|suspend|tabsize[[:space:]]+[1-9][0-9]*|tabstospaces|tempfile|trimblanks|unix|view|wordbounds)\>" +icolor yellow "^[[:space:]]*set[[:space:]]+((function|key|number|selected|status|title)color)[[:space:]]+(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\>" +icolor brightgreen "^[[:space:]]*set[[:space:]]+(backupdir|brackets|functioncolor|keycolor|matchbrackets|numbercolor|operatingdir|punct|quotestr|selectedcolor|speller|statuscolor|titlecolor|whitespace|wordchars)[[:space:]]+" +icolor brightgreen "^[[:space:]]*bind[[:space:]]+((\^([[:alpha:]]|[]0-9\^_]|Space)|M-([[:alpha:]]|[]!"#$%&'()*+,./0-9:;<=>?@\^_`{|}~-]|Space))|F([1-9]|1[0-6])|Ins|Del)[[:space:]]+[[:alpha:]]+[[:space:]]+(all|main|search|replace(with)?|gotoline|writeout|insert|ext(ernal)?cmd|help|spell|linter|browser|whereisfile|gotodir)([[:space:]]+#|[[:space:]]*$)" +icolor brightgreen "^[[:space:]]*unbind[[:space:]]+((\^([[:alpha:]]|[]0-9\^_]|Space)|M-([[:alpha:]]|[]!"#$%&'()*+,./0-9:;<=>?@\^_`{|}~-]|Space))|F([1-9]|1[0-6])|Ins|Del)[[:space:]]+(all|main|search|replace(with)?|gotoline|writeout|insert|ext(ernal)?cmd|help|spell|linter|browser|whereisfile|gotodir)([[:space:]]+#|[[:space:]]*$)" +icolor brightgreen "^[[:space:]]*extendsyntax[[:space:]]+[[:alpha:]]+[[:space:]]+(i?color|header|magic|comment|linter|formatter)[[:space:]]+.*$" +icolor brightgreen "^[[:space:]]*(linter|formatter)[[:space:]]+[[:alpha:]]+" +icolor green "^[[:space:]]*((un)?(bind|set)|include|syntax|header|magic|comment|linter|formatter|extendsyntax)\>" + +# Strings +color brightmagenta "".+"([[:space:]]|$)" + +# Colors +icolor yellow "^[[:space:]]*i?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\>" +icolor magenta "^[[:space:]]*i?color\>" "\<(start|end)=" + +# Comments +color brightblue "(^|[[:space:]]+)#.*$" +color cyan "^[[:space:]]*##.*$" + +# Trailing whitespace +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/nftables.nanorc b/configs/usr/local/etc/nano/nftables.nanorc new file mode 100644 index 0000000..ce0ef9c --- /dev/null +++ b/configs/usr/local/etc/nano/nftables.nanorc @@ -0,0 +1,30 @@ +## Here is an example for nftables. + +syntax "nftables" "\.(nft|nftables)$" +header "^#!.*(nft|nftables)" +comment "#" + +# Objects and operations +color green "\<(chain|hook|policy|priority|ruleset|set|table|type|v?map)\>" +color green "\<(define|include)\>" +color red "\<(add|delete|flush|insert|remove|replace)\>" + +# Families +color yellow "\<(arp|bridge|inet|ingress|ip6?|netdev)\>" + +# Terminal statements +color red "\<(drop|reject)\>" +color brightblue "\<(accept|continue|(d|s)nat|goto|jump|masquerade|return)\>" + +# Comments +color cyan "(^|[[:space:]])#.*$" + +# Trailing whitespace +color ,green "[[:space:]]+$" + +# Strings and others +color yellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +color green "[{}():;|`$<>!=&\\]" "(\]|\[)" + +# Basic variable names +color brightred "(\$|@)[[:alpha:]_-][[:alnum:]_.-]*" diff --git a/configs/usr/local/etc/nano/objc.nanorc b/configs/usr/local/etc/nano/objc.nanorc new file mode 100644 index 0000000..70fb6c6 --- /dev/null +++ b/configs/usr/local/etc/nano/objc.nanorc @@ -0,0 +1,42 @@ +## Here is an example for C/C++/Obj-C. + +syntax "m" "\.m$" +magic "Objective-C source" +comment "//" + +# Stuffs, +color brightwhite "\<[A-Z_][0-9A-Z_]+\>" +color green "\<(float|double|BOOL|bool|char|int|short|long|id|sizeof|enum|void|static|const|struct|union|typedef|extern|(un)?signed|inline)\>" +color green "\<[[:alpha:]_][[:alnum:]_]*_t\>" +color green "\<(class|namespace|template|public|protected|private|typename|this|friend|virtual|using|mutable|volatile|register|explicit)\>" +color brightgreen "\<(for|if|while|do|else|case|default|switch)\>" +color brightgreen "\<(try|throw|catch|operator|new|delete)\>" +color brightgreen "\<(goto|continue|break|return)\>" +color brightgreen "@(encode|end|implementation|interface)|selector)\>" + +# GCC builtins. +color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" + +# Selector/method. +color brightmagenta "(^|[[:space:]])\[.*[[:space:]].*\]" +color white ":[[:alnum:]]*" +color magenta "[[:alnum:]]*:" +color white "\[[^][:space:]]*\]" + +# Strings. +color brightblack "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" +color brightblack "<[^= ]*>" ""(\\.|[^"])*"" +color brightblue "@"(\\.|[^"])*"" +# Multiline strings. This regex is VERY resource intensive, +# and sometimes colours things that shouldn't be coloured. +###color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" + +# Preprocessor commands. +color brightblue "^[[:space:]]*#[[:space:]]*(define|include|import|(un|ifn?)def|endif|el(if|se)|if|warning|error)" + +# Comments. +color yellow "//.*" +color yellow start="/\*" end="\*/" + +# Trailing whitespace.   +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/ocaml.nanorc b/configs/usr/local/etc/nano/ocaml.nanorc new file mode 100644 index 0000000..73d6e06 --- /dev/null +++ b/configs/usr/local/etc/nano/ocaml.nanorc @@ -0,0 +1,30 @@ +## Syntax highlighting for OCaml. + +syntax "ocaml" "\.mli?$" +magic "OCaml" +comment "(*|*)" + +# Uid: +color red "\<[A-Z][0-9a-z_]{2,}\>" +# Declarations: +color green "\<(let|val|method|in|and|rec|private|virtual|constraint)\>" +# Structure items: +color red "\<(type|open|class|module|exception|external)\>" +# Patterns: +color blue "\<(fun|function|functor|match|try|with)\>" +# Pattern modifiers: +color yellow "\<(as|when|of)\>" +# Conditions: +color cyan "\<(if|then|else)\>" +# Blocks: +color magenta "\<(begin|end|object|struct|sig|for|while|do|done|to|downto)\>" +# Constants: +color green "\<(true|false)\>" +# Modules/classes: +color green "\<(include|inherit|initializer)\>" +# Expression modifiers: +color yellow "\<(new|ref|mutable|lazy|assert|raise)\>" +# Comments: +color white start="\(\*" end="\*\)" +# Strings: (no multiline handling yet) +color brightblack ""[^\"]*"" diff --git a/configs/usr/local/etc/nano/patch.nanorc b/configs/usr/local/etc/nano/patch.nanorc new file mode 100644 index 0000000..5bf2a39 --- /dev/null +++ b/configs/usr/local/etc/nano/patch.nanorc @@ -0,0 +1,26 @@ +## Here is an example for patch files. + +syntax "patch" "\.(patch|diff|debdiff)$" +magic "diff output" +# There is no official support for comments in patch files. +comment "" + +# Added lines. +color brightgreen "^\+.*" +# Show trailing whitespace only on added lines. +color ,green "[[:space:]]+$" +# Context lines. +color brightblue "^ .*" +# Deleted lines. +color brightred "^-.*" + +# Header lines. +color magenta "^(Index:|diff)[[:blank:]].*" +# File names and dates. +color red "^---.*" +color green "^\+\+\+.*" +# Line numbers. +color brightyellow "^@@.*" + +# Statistics. +color cyan start="^---$" end="^$" diff --git a/configs/usr/local/etc/nano/perl.nanorc b/configs/usr/local/etc/nano/perl.nanorc new file mode 100644 index 0000000..beb9b07 --- /dev/null +++ b/configs/usr/local/etc/nano/perl.nanorc @@ -0,0 +1,15 @@ +## Here is an example for Perl. + +syntax "perl" "\.p[lm]$" +header "^#!.*perl[-0-9._]*" +magic "Perl script" +comment "#" + +color red "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\>" "\<(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\>" "\<(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\>" "\<(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\>" "\<(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color magenta "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" +icolor cyan start="[$@%]" end="( |[^0-9A-Z_]|-)" +color yellow "".*"|qq\|.*\|" +color white "[sm]/.*/" +color white start="(^use| = new)" end=";" +color green "#.*" +color yellow start="<< 'STOP'" end="STOP" diff --git a/configs/usr/local/etc/nano/php.nanorc b/configs/usr/local/etc/nano/php.nanorc new file mode 100644 index 0000000..da47144 --- /dev/null +++ b/configs/usr/local/etc/nano/php.nanorc @@ -0,0 +1,35 @@ +## Here is an example for PHP. + +syntax "php" "\.ph(p[23457s~]?|tml)$" +magic "PHP script" +comment "//" + +# PHP markings. +color brightgreen "(<\?(php)?|\?>)" + +# Function names. +color white "\<[A-Za-z_][A-Za-z_0-9]*\(" +# Variable names. +color cyan "\$[A-Za-z_][A-Za-z_0-9]*" + +# Types. +color green "\<(array|bool|callable|const|float|global|int|object|string|var)\>" + +# Directives and structure. +color brightcyan "\<(abstract|as|class|clone|(end)?declare|extends|function|implements|include(_once)?|inst(ance|ead)of|interface|namespace|new|private|protected|public|require(_once)?|static|trait|use|yield)\>" +color brightcyan "\<(case|catch|default|do|echo|else(if)?|end(for(each)?|if|switch|while)|final(ly)?|for(each)?|if|print|switch|throw|try|while)\>" +# Operators. +color brightcyan "\<(and|or|xor)\>" + +# Control flow. +color magenta "\<(break|continue|goto|return)\>" + +# Strings. +color brightyellow ""(\.|[^"])*"" "'(\.|[^'])*'" + +# Comments. +color brightblue "(^|[[:space:]]+)//.*" +color brightblue start="/\*" end="\*/" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/po.nanorc b/configs/usr/local/etc/nano/po.nanorc new file mode 100644 index 0000000..526c1c2 --- /dev/null +++ b/configs/usr/local/etc/nano/po.nanorc @@ -0,0 +1,29 @@ +## Colouring for PO files. + +syntax "po" "\.pot?$" +comment "#" + +# Comments. +color green "^#.*$" +color yellow "Copyright|\(C\)" +# Header fields. +color brightred "^\"X-Bugs:.*\"$" +color brightmagenta "\<(Project\-Id\-Version|Report\-Msgid\-Bugs\-To|Last\-Translator|Language(\-Team)?|X-Bugs|X-Generator|Plural\-Forms)\>" +color cyan "\<(POT\-Creation\-Date|PO\-Revision\-Date|MIME\-Version|Content\-Type|Content\-Transfer\-Encoding)\>" +# Encodings and numbers. +color yellow "\<(UTF|ISO|Windows|Mac|IBM)-[0-9]+" +color yellow "[0-9]|pre[0-9]|[0-9]bit" +# Msgids. +color brightblue "^(msgid|msgid_plural|msgstr)\>" +# Tags. +color red " fuzzy(,|$)" +color yellow " (no-)?[-[:alpha:]]+-format(,|$)" +# Format specifiers. +color brightmagenta "%([1-9]\$)?[a-z]*" +# Quotes and newlines. +color yellow "\"" +color cyan "\\n" +# Reminders. +color brightwhite,yellow "(FIXME|TODO|XXX)" +# Obsolete strings. +color red "#~.*$" diff --git a/configs/usr/local/etc/nano/postgresql.nanorc b/configs/usr/local/etc/nano/postgresql.nanorc new file mode 100644 index 0000000..12d4483 --- /dev/null +++ b/configs/usr/local/etc/nano/postgresql.nanorc @@ -0,0 +1,75 @@ +## Here is an example for PostgreSQL. + +syntax "sql" "\.sql[2345s~]?$" +comment "-- " + +# Functions. +color white "\<[a-z_]*\(" + +# Types. +color green "\<(int2|smallint|int4|int|integer|int8|bigint|decimal|numeric|real|double precision|(small|big)?serial)\>" +color green "\<(bit( varying)?|boolean|bytea|enum|money|tsvector|uuid)\>" +color green "\<(char|varchar|character( varying)?|text)\>" +color green "\<(date|interval|time(stamp)?( with time zone| without time zone)?)\>" +color green "\<(point|line|lseg|path|box|polygon|circle)\>" +color green "\<(cidr|inet|macaddr)\>" +color green "\<(daterange|int4range|int8range|numrange|tsrange|tstzrange)\>" + +# Structure. +color brightyellow "\<(CASE|CLASS|DEFAULT|DO|ELSE|ELSEIF|FOR|FOREACH|FUNCTION|IF|IS NULL)\>" +color brightyellow "\<(NEW|PRIVATE|PUBLIC|RETURN|RETURNS|SETOF|SWITCH|THEN|WHEN|WHILE)>" + +# Control flow. +color magenta "\<(EXCEPTION|NOTICE|RAISE|RETURN)\>" + +# SQL keywords. +color blue "\<(ABORT|AGGREGATE|ALTER|ANALYZE|AND|AS|AUTHORIZATION|BEGIN|CAST|CHECKPOINT|CLASS|CLOSE)\>" +color blue "\<(CLUSTER|COLLATION|COMMENT|COMMIT|CONFIGURATION|CONSTRAINTS|CONVERSION|COPY|CREATE)\>" +color blue "\<(DATA|DATABASE|DEALLOCATE|DECLARE|DEFAULT|DELETE|DICTIONARY|DISCARD|DO|DOMAIN|DROP)\>" +color blue "\<(END|EVENT|EXECUTE|EXPLAIN|EXTENSION|FAMILY|FETCH|FOREIGN|FROM|FUNCTION)\>" +color blue "\<(GRANT|GROUP|IF NOT EXISTS|IMMUTABLE|INDEX|INSERT|INTO|LABEL|LANGUAGE|LARGE|LOAD|LOCK)\>" +color blue "\<(MAPPING FOR|MATERIALIZED|MOVE|NOTIFY|OBJECT|OPERATOR|OPTIONS|OWNED|OWNER)\>" +color blue "\<(PARSER|PREPARED?|PRIVILEGES|REASSIGN|REFRESH|RELEASE|RESET|REVOKE|ROLE|ROLLBACK|RULE)\>" +color blue "\<(SAVEPOINT|SCHEMA|SEARCH|SECURITY|SELECT|SEQUENCE|SERVER|SESSION|SET|SHOW|SPACE|START|SYSTEM)\>" +color blue "\<(TABLE|TEXT|TO|TRANSACTION|TYPE|UPDATE|USER|VACUUM|VALUES|VIEW|WHERE|WITH|WRAPPER)\>" + +# Strings. +color brightyellow "<[^= ]*>" ""(\.|[^"])*"" + +# Trailing whitespace. +color ,green "[[:space:]]+$" + +# Regular expressions. +color brightmagenta "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" + +# Shell command expansion is in `backticks` or like %x{this}. These are +# "double-quotish" (to use a perlism). +color brightblue "`[^`]*`" "%x\{[^}]*\}" + +# Strings, double-quoted. +color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" +color green "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" + +# Expression substitution. These go inside double-quoted strings, +# "like #{this}". +color brightgreen "#\{[^}]*\}" + +# Strings, single-quoted. +color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" +color green "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" + +# Comments. +color red "#[^{].*$" "#$" +color red "--[^{].*$" "#$" +color red "##[^{].*$" "##$" +color brightblue "//.*" +color brightblue start="/\*" end="\*/" + +# PostgreSQL markings. +color red "(--)" + +# PostgreSQL default schemas. +color brightred "(pg_catalog|public)" + +# PostgreSQL PLs. +color brightblue "(pljava|plperlu?|plpgsql|plpy|plpythonu?|plr|plruby|plsh|pltcl|plscheme)" diff --git a/configs/usr/local/etc/nano/pov.nanorc b/configs/usr/local/etc/nano/pov.nanorc new file mode 100644 index 0000000..9746bcc --- /dev/null +++ b/configs/usr/local/etc/nano/pov.nanorc @@ -0,0 +1,16 @@ +## Here is an example for POV-Ray. + +syntax "pov" "\.(pov|POV|povray|POVRAY)$" +comment "//" + +color brightcyan "^[[:space:]]*#[[:space:]]*(declare)" +color brightyellow "\<(sphere|cylinder|translate|matrix|rotate|scale)\>" +color brightyellow "\<(orthographic|location|up|right|direction|clipped_by)\>" +color brightyellow "\<(fog_type|fog_offset|fog_alt|rgb|distance|transform)\>" +color brightred "\<(background|camera|fog|light_source|object|texture)\>" +color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" +color brightmagenta "\<(union|group|subgroup)\>" + +# Comments. +color brightblue "//.*" +color brightblue start="/\*" end="\*/" diff --git a/configs/usr/local/etc/nano/python.nanorc b/configs/usr/local/etc/nano/python.nanorc new file mode 100644 index 0000000..ef1dfa0 --- /dev/null +++ b/configs/usr/local/etc/nano/python.nanorc @@ -0,0 +1,33 @@ +## Here is an example for Python. + +syntax "python" "\.py$" +header "^#!.*python[-0-9._]*" +magic "Python script" +linter pyflakes +comment "#" + +# Function definitions. +icolor brightblue "def [0-9A-Z_]+" +# Keywords. +color brightcyan "\<(and|as|assert|async|await|break|class|continue)\>" +color brightcyan "\<(def|del|elif|else|except|exec|finally|for|from)\>" +color brightcyan "\<(global|if|import|in|is|lambda|nonlocal|not|or)\>" +color brightcyan "\<(pass|print|raise|return|try|while|with|yield)\>" + +# Single-quoted strings. +color brightgreen "'([^'\]|\\.)+'" +color brightgreen ""([^"\]|\\.)+"" +# Comments. +color brightred "(^|[[:blank:]])#.*$" +# Triple-quoted strings. +color brightgreen start="'''([^'),]|$)" end="(^|[^(\])'''" +color brightgreen start="\"\"\"([^"),]|$)" end="(^|[^(\])\"\"\"" + +# Special values. +color brightmagenta "\<(False|None|True)\>" + +# Reminders. +color brightwhite,yellow "(FIXME|TODO|XXX)" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/ruby.nanorc b/configs/usr/local/etc/nano/ruby.nanorc new file mode 100644 index 0000000..7fd1e3b --- /dev/null +++ b/configs/usr/local/etc/nano/ruby.nanorc @@ -0,0 +1,36 @@ +## Here is an example for Ruby. + +syntax "ruby" "\.rb$" +header "^#!.*ruby[-0-9._]*" +magic "Ruby script" +linter ruby -w -c +comment "#" + +# Reserved words. +color yellow "\<(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module)\>" +color yellow "\<(next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\>" +# Constants. +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +# Ruby "symbols". +icolor magenta "([ ]|^):[0-9A-Z_]+\>" +# Some unique things we want to stand out. +color brightyellow "\<(__FILE__|__LINE__)\>" +# Regular expressions. +color brightmagenta "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" +# Shell command expansion is in `backticks` or like %x{this}. These are +# "double-quotish" (to use a perlism). +color brightblue "`[^`]*`" "%x\{[^}]*\}" +# Strings, double-quoted. +color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" +# Expression substitution. These go inside double-quoted strings, +# "like #{this}". +color brightgreen "#\{[^}]*\}" +# Strings, single-quoted. +color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" +# Comments. +color cyan "#[^{].*$" "#$" +color brightcyan "##[^{].*$" "##$" +# "Here" docs. +color green start="<<-?'?EOT'?" end="^EOT" +# Some common markers. +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" diff --git a/configs/usr/local/etc/nano/rust.nanorc b/configs/usr/local/etc/nano/rust.nanorc new file mode 100644 index 0000000..0381de6 --- /dev/null +++ b/configs/usr/local/etc/nano/rust.nanorc @@ -0,0 +1,39 @@ +## Syntax highlighting for Rust. +## Copyright 2015 Luke Francl. +## Licensed under GPL version 3. + +## NOTE: Rules are applied in order: later rules re-colorize matching text. + +syntax "rust" "\.rs" +comment "//" + +# Function definitions +color magenta "fn [a-z_0-9]+" + +# Reserved words +color yellow "\<(abstract|alignof|as|become|box|break|const|continue|crate|do|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|offsetof|override|priv|pub|pure|ref|return|sizeof|static|self|struct|super|true|trait|type|typeof|unsafe|unsized|use|virtual|where|while|yield)\>" + +# Macros +color red "[a-z_]+!" + +# Constants +color magenta "[A-Z][A-Z_0-9]+" + +# Traits/Enums/Structs/Types/... +color magenta "[A-Z][A-Za-z0-9]+" + +# Strings +color green "\".*\"" +color green start="\".*\\$" end=".*\"" +## NOTE: This isn't accurate, but matching "#{0,} for the end of the string is too liberal. +color green start="r#+\"" end="\"#+" + +# Comments +color blue "//.*" +color blue start="/\*" end="\*/" + +# Attributes +color magenta start="#!\[" end="\]" + +# Some common markers +color brightcyan "(XXX|TODO|FIXME|\?\?\?)" diff --git a/configs/usr/local/etc/nano/sh.nanorc b/configs/usr/local/etc/nano/sh.nanorc new file mode 100644 index 0000000..406e332 --- /dev/null +++ b/configs/usr/local/etc/nano/sh.nanorc @@ -0,0 +1,29 @@ +## Here is an example for Bourne shell scripts. + +syntax "sh" "\.sh$" +header "^#!.*((ba|da|k|pdk)?sh[-0-9_]*|openrc-run|runscript)" +magic "(POSIX|Bourne-Again) shell script.*text" +linter dash -n +comment "#" + +icolor brightgreen "^[0-9A-Z_]+\(\)" +color green "\<(break|case|continue|do|done|elif|else|esac|exit|fi|for|function|if|in|read|return|select|shift|then|time|until|while)\>" +color green "\<(declare|eval|exec|export|let|local)\>" +color green "[{}():;|`$<>!=&\\]" "(\]|\[)" +color green "-[Ldefgruwx]\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" +color brightblue "\<(awk|cat|cd|ch(grp|mod|own)|cp|echo|env|grep|install|ln|make|mkdir|mv|popd|printf|pushd|rm|rmdir|sed|set|tar|touch|umask|unset)\>" + +# Basic variable names (no braces). +color brightred "\$[-0-9@*#?$!]" "\$[[:alpha:]_][[:alnum:]_]*" +# More complicated variable names; handles braces and replacements and arrays. +color brightred "\$\{[#!]?([-@*#?$!]|[0-9]+|[[:alpha:]_][[:alnum:]_]*)(\[([[:space:]]*[[:alnum:]_]+[[:space:]]*|@)\])?(([#%/]|:?[-=?+])[^}]*\}|\[|\})" + +# Comments. +color cyan "(^|[[:space:]])#.*$" + +# Strings. +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/spec.nanorc b/configs/usr/local/etc/nano/spec.nanorc new file mode 100644 index 0000000..407cab1 --- /dev/null +++ b/configs/usr/local/etc/nano/spec.nanorc @@ -0,0 +1,40 @@ +## Syntax highlighting for RPM spec files. + +syntax "spec" "\.(spec$|spec\.*)" +comment "#" + +# Main tags. +color brightblue "((Icon|ExclusiveOs|ExcludeOs)[[:space:]]*:)" +color brightblue "((BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch)[[:space:]]*:)" +color brightblue "((Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements)[[:space:]]*:)" +color brightblue "((Epoch|Serial|Nosource|Nopatch)[[:space:]]*:)" +color brightblue "((AutoReq|AutoProv|AutoReqProv)[[:space:]]*:)" +color brightblue "((Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source\d*|Patch\d*|BuildRoot|Prefix)[[:space:]]*:)" +color brightblue "((Name|Version|Release|Url|URL)[[:space:]]*:)" +color brightblue start="^Source" end=":" start="^Patch" end=":" +# Architectures. +color brightred "(i386|i486|i586|i686|athlon|ia64|alpha|alphaev5|alphaev56|alphapca56|alphaev6|alphaev67|sparc|sparcv9|sparc64armv3l|armv4b|armv4lm|ips|mipsel|ppc|ppc|iseries|ppcpseries|ppc64|m68k|m68kmint|Sgi|rs6000|i370|s390x|s390|noarch)" +# Architecture conditionals. +color brightred "(ifarch|ifnarch)" +# OS conditionals. +color brightred "(ifos|ifnos)" +# %* strings. +color green "%([A-Z_a-z_0-9_]*)" +color magenta "%_([A-Z_a-z_0-9_]*)" +color yellow start="%__" end="\ " +color magenta start="%\{" end="\}" +color yellow start="%\{__" end="\}" +# Sections. +color red "^%(build$|changelog|check$|clean$|description|files|install$|package|pre|prep$|pretrans|preun)" +color red "^%(post|posttrans|postun|trigger|triggerin|triggerpostun|triggerun|verifyscript)" +# Conditionals and defines. +color brightred "%(if|else|endif|define|global|undefine)" + +# Comments. +color cyan "#.*$" +# Special case: "# norootforbuild" is handled as main tag. +color brightblue "^# norootforbuild" +# %changelog date entries. +color brightyellow "^\* .*\)$" +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/tcl.nanorc b/configs/usr/local/etc/nano/tcl.nanorc new file mode 100644 index 0000000..363b53e --- /dev/null +++ b/configs/usr/local/etc/nano/tcl.nanorc @@ -0,0 +1,20 @@ +## Syntax highlighting for Tcl files. + +syntax "tcl" "\.tcl$" +magic "Tcl(/Tk)? script" +comment "#" + +# Standard Tcl [info commands]: +color green "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\>" +# Basic Tcl subcommands: +color green "\<(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\>" +color green "\<(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\>" +# Extended TclX [info commands]: +color green "\<(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\>" +# Syntax: +color brightblue "proc[[:space:]]" "(\{|\})" +color green "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" +color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" +icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color ,green "[[:space:]]+$" +color ,magenta "^[[:space:]]*#.*" diff --git a/configs/usr/local/etc/nano/tex.nanorc b/configs/usr/local/etc/nano/tex.nanorc new file mode 100644 index 0000000..7dcb383 --- /dev/null +++ b/configs/usr/local/etc/nano/tex.nanorc @@ -0,0 +1,10 @@ +## Here is a short example for TeX files. + +syntax "tex" "\.tex$" +magic "(La)?TeX document" +linter chktex -v0 -q -I +comment "%" + +icolor green "\\.|\\[A-Z]*" +color magenta "[{}]" +color blue "(^|[^\])%.*" diff --git a/configs/usr/local/etc/nano/texinfo.nanorc b/configs/usr/local/etc/nano/texinfo.nanorc new file mode 100644 index 0000000..3125d25 --- /dev/null +++ b/configs/usr/local/etc/nano/texinfo.nanorc @@ -0,0 +1,21 @@ +## Here is an example for Texinfo files. + +syntax "texinfo" "\.texi$" +header "^\\input texinfo" +magic "Texinfo source" +comment "@c " + +# Command arguments, trailing and enclosed. +color cyan "^@[a-z]+[[:space:]]+.*$" +color brightmagenta "@[a-zA-Z]+\{[^}]*\}" +# Commands themselves. +color yellow "@[a-zA-Z]+\{?" "\}" + +# Menu items. +color brightred "^\*[[:space:]]+.*::.*$" + +# Comments. +color green "@c[[:space:]]+.*$" + +# Trailing whitespace. +color ,green "[[:space:]]+$" diff --git a/configs/usr/local/etc/nano/xml.nanorc b/configs/usr/local/etc/nano/xml.nanorc new file mode 100644 index 0000000..084618a --- /dev/null +++ b/configs/usr/local/etc/nano/xml.nanorc @@ -0,0 +1,22 @@ +## Here is an example for XML files. + +syntax "xml" "\.([jrsx]html?|jnlp|mml|pom|rng|sgml?|svg|w[as]dl|wsdd|xjb|xml|xs(d|lt?)|xul)$" +header "<\?xml.*version=.*\?>" +magic "(XML|SGML) (sub)?document" +comment "" + +# The entire content of the tag: +color green start="<" end=">" + +# The start and the end of the tag: +color cyan "<[^> ]+" ">" + +# The strings inside the tag: +color magenta "\"[^"]*\"" + +# Comments: +color yellow start="" +color yellow start="" + +# Escapes: +color red "&[^;]*;" diff --git a/configs/usr/local/etc/nanorc b/configs/usr/local/etc/nanorc new file mode 100644 index 0000000..cc15950 --- /dev/null +++ b/configs/usr/local/etc/nanorc @@ -0,0 +1,270 @@ +## Sample initialization file for GNU nano. +## +## Please note that you must have configured nano with --enable-nanorc +## for this file to be read! Also note that this file should not be in +## DOS or Mac format, and that characters specially interpreted by the +## shell should not be escaped here. +## +## To make sure an option is disabled, use "unset