various improvements
authorIan Kelling <ian@iankelling.org>
Fri, 11 Nov 2022 22:37:25 +0000 (17:37 -0500)
committerIan Kelling <ian@iankelling.org>
Fri, 11 Nov 2022 22:37:25 +0000 (17:37 -0500)
brc
brc2
conflink
distro-end
filesystem/etc/profile.d/environment.sh
filesystem/etc/systemd/system/ssh-agent-iank.service
input-setup
pkgs

diff --git a/brc b/brc
index ff3b91fb84306bc7cee5ec924a20f37d34f8b314..3c54796a5ce0988ae7dadaeb771bd6aa5faa1f6e 100644 (file)
--- a/brc
+++ b/brc
@@ -879,7 +879,7 @@ ediff() {
 # mail related
 etail() {
   ngset
-  tail -F /var/log/exim4/mainlog /var/log/exim4/*main -n 200 "$@"
+  tail -F /var/log/exim4/mainlog /var/log/exim4/*main /var/log/exim4/paniclog /var/log/exim4/*panic -n 200 "$@"
   ngreset
 }
 etailm() {
@@ -888,10 +888,11 @@ etailm() {
 etail2() {
   tail -F /var/log/exim4/mymain -n 200 "$@"
 }
-
 ccomp tail etail etail2
 
 
+
+
 # print exim old pids
 eoldpids() {
   local configtime pid piduptime now daemonpid
diff --git a/brc2 b/brc2
index 754f9a0ca1b37a784bad5ebfee9fb14d6abacabc..ea1faafd479eb2b1f5128728f71c41a5853fd991 100644 (file)
--- a/brc2
+++ b/brc2
@@ -115,9 +115,9 @@ rootrsync() {
 }
 
 zcheck() {
-  s ssh bow DISPLAY=:0 scrot /tmp/oegu.jpg
-  s scp bow:/tmp/oegu.jpg /t
-  s ssh bow rm /tmp/oegu.jpg
+  ssh bow DISPLAY=:0 scrot /tmp/oegu.jpg
+  scp bow:/tmp/oegu.jpg /t
+  ssh bow rm /tmp/oegu.jpg
   feh /t/oegu.jpg
 }
 
@@ -1045,8 +1045,9 @@ hstatus() {
 
 # work log
 wlog() {
-  local day now i
-  for (( i=0; i<60; i++ )); do
+  local day now i days_back
+  days_back=${1:-16}
+  for (( i=0; i<days_back; i++ )); do
     day=$( date +%F -d @$((EPOCHSECONDS - 86400*i )) )
     date "+%a %b %d" -d @$((EPOCHSECONDS - 86400*i )) | tr '\n' ' '
     /a/opt/timetrap/bin/t d -ftotal -s $day -e $day all -m '^w|lunch$'
@@ -1435,7 +1436,8 @@ allmyirc() {
 }
 
 mygajim() {
-  local time time_sec time_pretty
+  local time time_sec time_pretty days
+  days=${1:-16}
   sqlite3 -separator ' ' /p/c/subdir_files/.local/share/gajim/logs.db "select time, message from logs where contact_name = 'iank' and jid_id = 17;" | while read -r time l; do
     case $time in
       16*) : ;;
@@ -1448,7 +1450,7 @@ mygajim() {
     echo $time_pretty "$l"
     time_sec=${time%%.*}
     # only look at the last 18 days. generally just use this for timesheet.
-    if (( time_sec < EPOCHSECONDS - 60 * 60 * 24 * 18 )); then break; fi
+    if (( time_sec < EPOCHSECONDS - 60 * 60 * 24 * days )); then break; fi
   done
 }
 
@@ -1460,6 +1462,11 @@ gajlogs() {
   sqlite3 -separator ' ' /p/c/subdir_files/.local/share/gajim/logs.db "select time, message from logs" | less
 }
 
+# slow down ploopy trackball
+ploop() {
+xinput --set-prop $(xinput list | grep -F 'Ploopy Corporation Trackball Mouse' | sed -rn 's/.*[[:space:]]id=([^[:space:]]*).*/\1/p') 'libinput Accel Speed' -0.9
+}
+
 net-dev-info() {
   e "lspci -nnk|gr -iA2 net"
   lspci -nnk|gr -iA2 net
@@ -1833,6 +1840,20 @@ This is a test message.
 EOF
 }
 
+# test bounce exim
+testbexim() {
+  to=$1
+  exim -d -f '<>' $to <<EOF
+From: Mail Delivery System <Mailer-Daemon@gnu.org>
+To: $to
+Subject: Mail delivery failed: returning message to sender
+
+This message was created automatically by mail delivery software.
+EOF
+
+}
+
+
 # toggle keyboard
 tk() {
   # based on
index 1cefd0bd3f7bad668d25e380b717c80a51689b7e..f798204c4a1ff32d1dd2c507c91d8f6362c36ee5 100755 (executable)
--- a/conflink
+++ b/conflink
@@ -237,11 +237,19 @@ case $user in
     f=/etc/prometheus-pass
     if [[ -e $f ]]; then
       # note: this is duplicative of the file's own permissions
-      s chmod 640 $f /etc/prometheus-pass
+      s chmod 640 $f
       if getent passwd prometheus &>/dev/null; then
         s chown root:prometheus $f
       fi
     fi
+    f=/etc/nagios4/htdigest.users
+    if [[ -e $f ]]; then
+      # note: this is duplicative of the file's own permissions
+      s chmod 640 $f /etc/prometheus-pass
+      if getent passwd nagios &>/dev/null; then
+        s chown nagios:www-data $f
+      fi
+    fi
     ##### end special extra stuff #####
 
     if ! $fast; then
index 98a28bd9b1bc171118a599c64ffd669d74908127..e07ab789b46583fdccb294eba1b7f679df651464 100755 (executable)
@@ -2029,6 +2029,98 @@ esac
 
 ### end prometheus ###
 
+### begin nagios ###
+
+pi nagios4
+s rm /etc/apache2/conf-enabled/nagios4-cgi.conf
+
+# to add a password for admin:
+# htdigest /etc/nagios4/htdigest.users Nagios4 iank
+# now using the same pass as prometheus
+
+# nagstamon auth settings, set to digest instead of basic.
+
+web-conf -p 3005 - apache2 i.b8.nz <<'EOF'
+# adapted from /etc/apache2/conf-enabled/nagios4-cgi.conf
+
+ScriptAlias /cgi-bin/nagios4 /usr/lib/cgi-bin/nagios4
+ScriptAlias /nagios4/cgi-bin /usr/lib/cgi-bin/nagios4
+
+# Where the stylesheets (config files) reside
+Alias /nagios4/stylesheets /etc/nagios4/stylesheets
+
+# Where the HTML pages live
+Alias /nagios4 /usr/share/nagios4/htdocs
+
+<DirectoryMatch (/usr/share/nagios4/htdocs|/usr/lib/cgi-bin/nagios4|/etc/nagios4/stylesheets)>
+    Options FollowSymLinks
+    DirectoryIndex index.php index.html
+    AllowOverride AuthConfig
+    #
+    # The default Debian nagios4 install sets use_authentication=0 in
+    # /etc/nagios4/cgi.cfg, which turns off nagos's internal authentication.
+    # This is insecure.  As a compromise this default apache2 configuration
+    # only allows private IP addresses access.
+    #
+    # The <Files>...</Files> below shows how you can secure the nagios4
+    # web site so anybody can view it, but only authenticated users can issue
+    # commands (such as silence notifications).  To do that replace the
+    # "Require all granted" with "Require valid-user", and use htdigest
+    # program from the apache2-utils package to add users to
+    # /etc/nagios4/htdigest.users.
+    #
+    # A step up is to insist all users validate themselves by moving
+    # the stanza's in the <Files>..<Files> into the <DirectoryMatch>.
+    # Then by setting use_authentication=1 in /etc/nagios4/cgi.cfg you
+    # can configure which people get to see a particular service from
+    # within the nagios configuration.
+    #
+       AuthDigestDomain "Nagios4"
+       AuthDigestProvider file
+       AuthUserFile    "/etc/nagios4/htdigest.users"
+       AuthGroupFile   "/etc/group"
+       AuthName        "Nagios4"
+       AuthType        Digest
+       Require valid-user
+</DirectoryMatch>
+
+<Directory /usr/share/nagios4/htdocs>
+    Options    +ExecCGI
+</Directory>
+EOF
+
+
+# when you alter a service through the web, it changes vars in /var/lib/nagios4/status.dat. for example:
+# notifications_enabled=1
+# note, the same variable exists in the correspdonding "define service {"
+
+# in the default config, we have these definitions
+
+     # 11 define command {
+     #  2 define contact {
+     #  1 define contactgroup {
+     #  9 define host {
+     #  4 define hostgroup {
+     # 23 define service {
+     #  5 define timeperiod {
+
+
+# on klaxon
+
+# klaxon:/etc/nagios3 # grep -rho '^ *define [^{ ]*' | sort | uniq -c
+#      76 define command
+#      11 define contact
+#       6 define contactgroup
+#     162 define host
+#       1 define hostextinfo
+#      16 define hostgroup
+#    3040 define service
+#       2 define servicedependency
+#       6 define timeperiod
+
+
+### end nagios ###
+
 
 end_msg <<'EOF'
 In mate settings settings, change scrolling to two-finger,
index f44175267fa78a7175d97ec6780820165861cb81..f059e4d3c0385f8aa5ffdccc36c00d23a32d9dce 100644 (file)
@@ -125,8 +125,8 @@ done
 if ! test "$SSH_AUTH_SOCK"; then
   if [ "$EUID" = 0 ]; then
     export SSH_AUTH_SOCK=/run/openssh_agent
-  else
-    export SSH_AUTH_SOCK=/run/user/1000/openssh_agent
+  elif [ "$EUID" = 1000 ]; then
+    export SSH_AUTH_SOCK=$HOME/openssh_agent
   fi
 fi
 
index 87020433463fdc689f479df627b50e6e303475b7..fc6ced656d541d2cfdfbe430bcdd72018442baef 100644 (file)
@@ -6,7 +6,8 @@ StartLimitIntervalSec=0
 [Service]
 User=iank
 Environment=DISPLAY=:0
-ExecStart=/usr/bin/ssh-agent -D -a /run/user/1000/openssh_agent
+ExecStartPre=/usr/bin/rm -f /home/iank/openssh_agent
+ExecStart=/usr/bin/ssh-agent -D -a /home/iank/openssh_agent
 Restart=always
 RestartSec=30
 
index f3678b0098eabceaa095d77e519c688462bbbd73..9f6734cfcfd8e23902617416a74bbff2c391e193 100755 (executable)
@@ -93,3 +93,6 @@ fi
 
 set +x
 exit 0
+
+# ploopy setup until i recompile firmware
+# xinput --set-prop $(xinput list | grep -F 'Ploopy Corporation Trackball Mouse' | sed -rn 's/.*[[:space:]]id=([^[:space:]]*).*/\1/p') 'libinput Accel Speed' -0.9
diff --git a/pkgs b/pkgs
index f38a772d138401a62b12ef632e1b7c579e857d55..c6eea76eb9c08be534224bce1b071b3a9d479c63 100644 (file)
--- a/pkgs
+++ b/pkgs
@@ -99,6 +99,7 @@ p3=(
   devscripts
   dillo
   dirmngr
+  dos2unix
   dnsutils
   python3-dnspython
   duplicity