Skip to content

Commit e715d1e

Browse files
committed
Update/add other scripts
1 parent 9ef5d29 commit e715d1e

File tree

5 files changed

+151
-16
lines changed

5 files changed

+151
-16
lines changed

brightctl

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,11 @@ usage () {
5757
case $HOSTNAME in
5858
nac36663|nvc3691)
5959
ctlfile=/sys/class/backlight/intel_backlight/brightness
60-
max_brightness=19200
60+
max_brightness=$(cat /sys/class/backlight/intel_backlight/max_brightness)
6161
;;
6262
laptop-nico-aardbei)
6363
ctlfile=/sys/class/backlight/acpi_video0/brightness
64-
max_brightness=1500
64+
max_brightness=$(cat /sys/class/backlight/acpi_video0/max_brightness)
6565
;;
6666
*)
6767
die 1 "Dunno the ctlfile."
@@ -74,6 +74,8 @@ br=$(cat ${ctlfile})
7474
# vary in steps
7575
if [ $br -ge $((max_brightness-100)) -a $1 == "up" ];then
7676
step=$((max_brightness-$br))
77+
elif [ $br -le $max_brightness -a $br -gt 10000 ];then
78+
step=1000
7779
elif [ $br -le $max_brightness -a $br -gt 1000 ];then
7880
step=100
7981
elif [ $br -le 1000 -a $br -gt 100 ];then
@@ -85,9 +87,10 @@ elif [ $br -le 10 ];then
8587
fi
8688

8789
case $1 in
88-
up) newbr=$((br+step));;
89-
down) newbr=$((br-step));;
90-
*) usage;;
90+
max) newbr=$max_brightness;;
91+
up) newbr=$((br+step));;
92+
down) newbr=$((br-step));;
93+
*) usage;;
9194
esac
9295
echo ${newbr} > ${ctlfile}
9396

node_and_vm_agent

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,6 @@
2727
date=$(date +%Y%m%d)
2828
me=$(basename $0)
2929
mydir=$(dirname $0)
30-
node_exporter_version=1.3.1
31-
node_exporter_url="https://github.com/prometheus/node_exporter/releases/download/v$node_exporter_version/node_exporter-$node_exporter_version.linux-amd64.tar.gz"
32-
vm_agent_version=1.70.0
33-
vm_agent_url="https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v$vm_agent_version/vmutils-amd64-v$vm_agent_version.tar.gz"
34-
vm_agent_remote_url='http://ardbeg.barchem.de-eekhoorn.eu:8428/api/v1/write'
3530

3631
# FUNCTIONS
3732
die () {
@@ -50,19 +45,35 @@ log () { printf '%s %s\n' "$(date +%F' '%T)" "$@"; }
5045
[ ${UID} -gt 0 ] && die 1 "Only root may do that."
5146
log "Started ${me}"
5247

48+
case $(uname -m) in
49+
x86_64) architecture='amd64' ;node_exporter_architecture=$architecture;;
50+
armv6l) architecture='arm' ;node_exporter_architecture='armv6' ;;
51+
*) echo "Failed to detect processor architecture" ; exit 1 ;;
52+
esac
53+
54+
[ -x /usr/bin/jq ] || die 2 "JQ not found"
55+
node_exporter_tagname=$(curl -s https://api.github.com/repos/prometheus/node_exporter/releases/latest | jq -r '.tag_name' )
56+
node_exporter_version=${node_exporter_tagname#v}
57+
node_exporter_url="https://github.com/prometheus/node_exporter/releases/download/$node_exporter_tagname/node_exporter-$node_exporter_version.linux-$node_exporter_architecture.tar.gz"
58+
vm_agent_tagname=$(curl -s https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest | jq -r '.tag_name' )
59+
vm_agent_version=${vm_agent_tagname#v}
60+
vm_agent_url="https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/$vm_agent_tagname/vmutils-linux-$architecture-$vm_agent_tagname.tar.gz"
61+
vm_agent_remote_url='http://ardbeg.barchem.de-eekhoorn.eu:8428/api/v1/write'
62+
63+
5364
# Node Exporter
5465
[ -d /opt/node_exporter ] || install -dm 0755 /opt/node_exporter
5566
[ -d /opt/node_exporter/textfile_collector ] || install -dm 0755 /opt/node_exporter/textfile_collector
5667
curl -sLo - $node_exporter_url |tar zxvf - -C /opt/node_exporter
57-
ln -s node_exporter-$node_exporter_version.linux-amd64/node_exporter /opt/node_exporter
58-
[ -s /etc/systemd/system/node_exporter.service ] || cat << EOF > /etc/systemd/system/node_exporter.service
68+
ln -sf node_exporter-$node_exporter_version.linux-$node_exporter_architecture/node_exporter /opt/node_exporter
69+
cat << EOF > /etc/systemd/system/node_exporter.service
5970
[Unit]
6071
Description=Node Exporter
6172
After=network.target
6273
6374
[Service]
6475
WorkingDirectory=/opt/node_exporter
65-
ExecStart=/opt/node_exporter/node_exporter --collector.textfile.directory=/opt/node_exporter/textfile_collector --collector.netstat.fields=(.*) --collector.ntp --collector.systemd
76+
ExecStart=/opt/node_exporter/node_exporter --collector.textfile.directory=/opt/node_exporter/textfile_collector --collector.netstat.fields=(.*) --collector.ntp --collector.systemd --collector.vmstat.fields=(.*) --collector.processes --collector.ethtool --collector.zfs
6677
StandardOutput=syslog
6778
StandardError=syslog
6879
SyslogIdentifier=node_exporter
@@ -95,7 +106,7 @@ getent passwd victoriametrics > /dev/null || useradd -g victoriametrics -d /opt/
95106
[ -d /opt/victoriametrics ] || install -dm 0755 -o victoriametrics -g victoriametrics /opt/victoriametrics
96107
curl -sLo - $vm_agent_url | tar zxvf - -C /opt/victoriametrics
97108

98-
[ -s /etc/systemd/system/vm-agent.service ] || cat << EOF > /etc/systemd/system/vm-agent.service
109+
cat << EOF > /etc/systemd/system/vm-agent.service
99110
[Unit]
100111
Description=Victoria Metrics Agent Service
101112
After=network.target
@@ -104,7 +115,7 @@ After=network.target
104115
WorkingDirectory=/opt/victoriametrics
105116
User=victoriametrics
106117
Group=victoriametrics
107-
ExecStart=/opt/victoriametrics/vmagent-prod -promscrape.config /opt/victoriametrics/scraper.yml -remoteWrite.url=$vm_agent_remote_url -loggerDisableTimestamps
118+
ExecStart=/opt/victoriametrics/vmagent-prod -promscrape.config /opt/victoriametrics/scraper.yml -promscrape.config.strictParse=false -remoteWrite.url=$vm_agent_remote_url -loggerDisableTimestamps
108119
StandardOutput=syslog
109120
StandardError=syslog
110121
SyslogIdentifier=vm-agent
@@ -152,6 +163,8 @@ systemctl daemon-reload
152163
systemctl restart rsyslog.service
153164
systemctl restart node_exporter.service
154165
systemctl restart vm-agent.service
166+
systemctl enable node_exporter.service
167+
systemctl enable vm-agent.service
155168

156169
log "Finished"
157170
# END

shelters/shelters-html-to-kml.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/usr/bin/python3
2+
3+
from html.parser import HTMLParser
4+
import argparse, re, sys
5+
6+
parser = argparse.ArgumentParser();
7+
parser.add_argument('-f', '--file', help="The file to proces", required=True)
8+
9+
args = parser.parse_args()
10+
11+
fileContents = open(args.file, "rt")
12+
13+
class MyHTMLParser(HTMLParser):
14+
# def handle_starttag(self, tag, attrs):
15+
# print("Encountered a start tag:", tag)
16+
#
17+
# def handle_endtag(self, tag):
18+
# print("Encountered an end tag :", tag)
19+
#
20+
def handle_data(self, data):
21+
print("Encountered some data :", data)
22+
23+
demo = MyHTMLParser()
24+
25+
demo.feed(fileContents.read())

shelters/shelters-html-to-kml.sh

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
#!/bin/bash
2+
# shelters-html-to-kml.sh
3+
# Scrapes all shelters from Swedish shelter page
4+
5+
# Copyright (C) 2014-2015 Alexander Swen <alex@swen.nu>
6+
7+
# This program is free software: you can redistribute it and/or modify
8+
# it under the terms of the GNU General Public License as published by
9+
# the Free Software Foundation; either version 2 of the License, or
10+
# (at your option) any later version.
11+
12+
# This program is distributed in the hope that it will be useful,
13+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
14+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15+
# GNU General Public License for more details.
16+
#
17+
# You should have received a copy of the GNU General Public License
18+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
19+
20+
# Alexander Swen
21+
# Private contact: alex@swen.nu
22+
23+
# CHANGELOG:
24+
# 20220719 A.Swen created.
25+
26+
# SETTINGS
27+
date=$(date +%Y%m%d)
28+
me=$(basename $0)
29+
mydir=$(dirname $0)
30+
shelter_list_url='https://vindskyddskartan.se/en/places/Sweden'
31+
32+
# FUNCTIONS
33+
die () {
34+
rc=$1
35+
shift
36+
printf '%s\n' "=====================" >&2
37+
printf '%s\n' "==== FATAL ERROR ====" >&2
38+
printf '%s\n\n' "=====================" >&2
39+
printf '%s\n\n' "$@" >&2
40+
exit $rc
41+
}
42+
43+
usage () {
44+
printf '%s\n' "===============" >&2
45+
printf '%s\n' "==== USAGE ====" >&2
46+
printf '%s\n\n' "===============" >&2
47+
printf '%s\n' "Usage: ${me} " >&2
48+
printf '%s\n\n' "example: ${me} " >&2
49+
exit 1
50+
}
51+
52+
log () { printf '%s %s\n' "$(date +%F' '%T)" "$@"; }
53+
54+
# SCRIPT
55+
56+
# To get an index file:
57+
#curl "$shelter_list_url" | grep -EA2 '<td><a href="/en/places/[0-9]+/' > Sweden.list
58+
# VIM: :%s?<td><a href="\(/en.*\)">\(.*\)</a></td>\n\s*<td>\(.*\)</td>\n\s*<td><a.*>\(.*\)</a></td>\n--?\2;\4;\3;\1?
59+
60+
# Use the index to download all files from the site
61+
# IFS=';';total=$(wc -l <../Sweden.list );count=0;while read name loc state uri;do count=$((count+1));nr=${uri#/en/places/};nr=${nr%/*};printf '%d/%d: Name: %s\n' "$count" "$total" "$name" ;curl -s "https://vindskyddskartan.se$uri" > "${name/\// }_$nr.html";done < Sweden.list
62+
63+
IFS=';'
64+
printf '%s\n' '<?xml version="1.0" encoding="UTF-8"?>'
65+
printf '%s\n' '<kml xmlns="http://earth.google.com/kml/2.0">'
66+
printf '%s\n' '<Document>'
67+
printf '%s\n' '<name>Shelters in Sweden</name>'
68+
while read name loc state uri;do
69+
clean_name=$(echo $name|sed -e 's?"??g' -e 's?&??g')
70+
longitude=${loc##*,}
71+
latitude=${loc%%,*}
72+
nr=${uri#/en/places/};nr=${nr%/*}
73+
file="${name/\// }_$nr.html"
74+
printf '<Placemark>\n<name>%s</name>\n<description>\n' "$clean_name"
75+
grep -hE 'placeCheckboxProperty|placeValueProperty|<br />|</p>' "$file"|\
76+
grep -vE '<p>|^<br />|^</p>'|\
77+
sed -e 's?<p class="placeDescription mt-3 mb-3">?Information: ?'\
78+
-e 's?</p>??g'\
79+
-e 's?<span class="placeCheckboxProperty">?+ ?'\
80+
-e 's?</span>??g'\
81+
-e 's?<span class="placeValueProperty">?+ ?'\
82+
-e 's?</div>??g'\
83+
-e 's?<br />??g'\
84+
-e 's?&quot;?"?g'\
85+
-e 's?&amp;?and?g'\
86+
-e 's?&?and?g'\
87+
-e 's?"??g'\
88+
-e 's?&#039;?'"''"'?g'\
89+
-e 's?<a href.*</a>??g'
90+
printf '</description>\n<Point>\n<coordinates>%s,%s,0</coordinates>\n</Point>\n<styleUrl>#placemark-%s</styleUrl>\n</Placemark>\n' "$longitude" "$latitude" "purple"
91+
done < ../Sweden.list
92+
printf '</Document>\n</kml>\n'
93+
94+
# END

zoom-launcher

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ saver_off () {
4646
# SCRIPT
4747

4848
saver_off
49-
v4l2-ctl -d $video_device --set-ctrl=white_balance_temperature_auto=0,power_line_frequency=1
49+
v4l2-ctl -d $video_device --set-ctrl=white_balance_automatic=0,power_line_frequency=1
5050
v4l2-ctl -d $video_device --set-ctrl=white_balance_temperature=3200,sharpness=200
5151
zoom
5252
saver_on

0 commit comments

Comments
 (0)