dot

packages and services management
Log | Files | Refs | README

commit be02259b8391b479af6349ebda773104fb1d3628
parent a7c6c43f71fc2a03360532fcc51e9821dfe3bdf8
Author: Josuah Demangeon <mail@josuah.net>
Date:   Thu, 13 Dec 2018 23:48:52 +0100

s6/*: Use ./conf/ consistently for one-file-per-variable

Diffstat:
Rs6/baresip/iptel.org/accounts/josuah@iptel.org/auth_user -> s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/auth_user | 0
Rs6/baresip/iptel.org/accounts/josuah@iptel.org/medianat -> s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/medianat | 0
Rs6/baresip/iptel.org/accounts/josuah@iptel.org/outbound -> s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/outbound | 0
Rs6/baresip/iptel.org/accounts/josuah@iptel.org/stunserver -> s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/stunserver | 0
Rs6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/medianat -> s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/medianat | 0
Rs6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/stunserver -> s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/stunserver | 0
Rs6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/transport -> s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/transport | 0
Rs6/baresip/x/conf/audio_alert -> s6/baresip/x/conf/config/audio_alert | 0
Rs6/baresip/x/conf/audio_player -> s6/baresip/x/conf/config/audio_player | 0
Rs6/baresip/x/conf/audio_source -> s6/baresip/x/conf/config/audio_source | 0
Rs6/baresip/x/conf/cons_listen -> s6/baresip/x/conf/config/cons_listen | 0
Rs6/baresip/x/conf/ice_debug -> s6/baresip/x/conf/config/ice_debug | 0
Rs6/baresip/x/conf/ice_mode -> s6/baresip/x/conf/config/ice_mode | 0
Rs6/baresip/x/conf/ice_nomination -> s6/baresip/x/conf/config/ice_nomination | 0
Rs6/baresip/x/conf/ice_turn -> s6/baresip/x/conf/config/ice_turn | 0
Rs6/baresip/x/contacts/echo@creytiv.com -> s6/baresip/x/conf/contacts/echo@creytiv.com | 0
Rs6/baresip/x/contacts/sip904@mouselike.org -> s6/baresip/x/conf/contacts/sip904@mouselike.org | 0
Rs6/baresip/x/modules/x -> s6/baresip/x/conf/modules/x | 0
Ms6/baresip/x/setup | 34++++++++++++++++++++--------------
Rs6/collectd/x/conf/FQDNLookup -> s6/collectd/x/conf/plugin/cpu/ReportByCpu | 0
Rs6/collectd/x/conf/AutoLoadPlugin -> s6/collectd/x/conf/plugin/cpu/ReportByState | 0
Rs6/collectd/x/plug/cpu/ReportByCpu -> s6/collectd/x/conf/plugin/cpu/ReportGuestState | 0
Rs6/collectd/x/plug/cpu/ReportGuestState -> s6/collectd/x/conf/plugin/cpu/ReportNumCpu | 0
Rs6/collectd/x/plug/cpu/ReportByState -> s6/collectd/x/conf/plugin/cpu/SubtractGuestState | 0
Rs6/collectd/x/plug/cpu/SubtractGuestState -> s6/collectd/x/conf/plugin/cpu/ValuesPercentage | 0
Rs6/collectd/x/plug/csv/DataDir -> s6/collectd/x/conf/plugin/csv/DataDir | 0
Rs6/collectd/x/plug/df/FSType -> s6/collectd/x/conf/plugin/df/FSType | 0
Rs6/collectd/x/plug/cpu/ReportNumCpu -> s6/collectd/x/conf/plugin/df/IgnoreSelected | 0
Rs6/collectd/x/plug/df/IgnoreSelected -> s6/collectd/x/conf/plugin/df/ReportByDevice | 0
Rs6/collectd/x/plug/df/ReportByDevice -> s6/collectd/x/conf/plugin/df/ReportInodes | 0
Rs6/collectd/x/plug/cpu/ValuesPercentage -> s6/collectd/x/conf/plugin/df/ValuesAbsolute | 0
Rs6/collectd/x/plug/df/ReportInodes -> s6/collectd/x/conf/plugin/df/ValuesPercentage | 0
Rs6/collectd/x/plug/df/ValuesPercentage -> s6/collectd/x/conf/plugin/disk/IgnoreSelected | 0
Rs6/collectd/x/plug/disk/UdevNameAttr -> s6/collectd/x/conf/plugin/disk/UdevNameAttr | 0
Rs6/collectd/x/plug/disk/IgnoreSelected -> s6/collectd/x/conf/plugin/disk/UseBSDName | 0
Rs6/collectd/x/plug/disk/UseBSDName -> s6/collectd/x/conf/plugin/interface/IgnoreSelected | 0
Rs6/collectd/x/plug/df/ValuesAbsolute -> s6/collectd/x/conf/plugin/interface/ReportInactive | 0
Rs6/collectd/x/plug/interface/IgnoreSelected -> s6/collectd/x/conf/plugin/interface/UniqueName | 0
Rs6/collectd/x/plug/interface/ReportInactive -> s6/collectd/x/conf/plugin/load/ReportRelative | 0
Rs6/collectd/x/plug/logfile/File -> s6/collectd/x/conf/plugin/logfile/File | 0
Rs6/collectd/x/plug/logfile/LogLevel -> s6/collectd/x/conf/plugin/logfile/LogLevel | 0
Rs6/collectd/x/plug/load/ReportRelative -> s6/collectd/x/conf/plugin/logfile/PrintSeverity | 0
Rs6/collectd/x/plug/logfile/PrintSeverity -> s6/collectd/x/conf/plugin/logfile/Timestamp | 0
Rs6/collectd/x/plug/interface/UniqueName -> s6/collectd/x/conf/plugin/memory/ValuesAbsolute | 0
Rs6/collectd/x/plug/logfile/Timestamp -> s6/collectd/x/conf/plugin/memory/ValuesPercentage | 0
Rs6/collectd/x/plug/memory/ValuesPercentage -> s6/collectd/x/conf/variable/AutoLoadPlugin | 0
Rs6/collectd/x/plug/memory/ValuesAbsolute -> s6/collectd/x/conf/variable/FQDNLookup | 0
Rs6/collectd/x/conf/Interval -> s6/collectd/x/conf/variable/Interval | 0
Rs6/collectd/x/conf/MaxReadInterval -> s6/collectd/x/conf/variable/MaxReadInterval | 0
Rs6/collectd/x/conf/ReadThreads -> s6/collectd/x/conf/variable/ReadThreads | 0
Rs6/collectd/x/conf/Timeout -> s6/collectd/x/conf/variable/Timeout | 0
Rs6/collectd/x/conf/WriteQueueLimitHigh -> s6/collectd/x/conf/variable/WriteQueueLimitHigh | 0
Rs6/collectd/x/conf/WriteQueueLimitLow -> s6/collectd/x/conf/variable/WriteQueueLimitLow | 0
Rs6/collectd/x/conf/WriteThreads -> s6/collectd/x/conf/variable/WriteThreads | 0
Ds6/collectd/x/data/conf | 21---------------------
Ms6/collectd/x/setup | 30+++++++++++++++++-------------
Ds6/curvevpn/x/data/Makefile | 7-------
Ms6/curvevpn/x/setup | 3++-
Rs6/ffingerd-tcp/x/env/BIND -> s6/ffingerd/x/env/BIND | 0
Rs6/ffingerd-tcp/x/env/PORT -> s6/ffingerd/x/env/PORT | 0
Rs6/ffingerd-tcp/x/run -> s6/ffingerd/x/run | 0
Rs6/ffingerd-tcp/x/type -> s6/ffingerd/x/type | 0
Ms6/host/t470s/contents | 12+++++++-----
Ds6/kamailio/conf | 854-------------------------------------------------------------------------------
Rs6/kamailio/conf.bkp -> s6/kamailio/x/README | 0
Rs6/kamailio/dbtext/define/DBURL -> s6/kamailio/x/conf/define/DBURL | 0
Rs6/qmail-send/x/conf/locals -> s6/qmail-send/x/conf/control/locals | 0
Rs6/qmail-send/x/conf/me -> s6/qmail-send/x/conf/control/me | 0
As6/qmail-send/x/env/USER | 1+
Ms6/qmail-send/x/setup | 7++++---
As6/tinydns/h-o.st/conf/alias/h-o.st/@ | 2++
As6/tinydns/h-o.st/conf/alias/h-o.st/g | 2++
As6/tinydns/h-o.st/conf/alias/h-o.st/git | 2++
As6/tinydns/h-o.st/conf/alias/h-o.st/mac/54e1ad43a3a4 | 2++
As6/tinydns/h-o.st/conf/alias/himalaya-solaire.org/@ | 2++
As6/tinydns/h-o.st/conf/alias/josuah.net/@ | 2++
As6/tinydns/h-o.st/conf/alias/josuah.net/git | 2++
As6/tinydns/h-o.st/conf/alias/josuah.net/irc | 2++
Rs6/tinydns/h-o.st/zone/host/h-o.st/glaphyrae -> s6/tinydns/h-o.st/conf/host/h-o.st/glaphyrae | 0
As6/tinydns/h-o.st/conf/ns/h-o.st | 2++
As6/tinydns/h-o.st/conf/ns/himalaya-solaire.org | 2++
As6/tinydns/h-o.st/conf/ns/josuah.net | 2++
Rs6/tinydns/h-o.st/zone/txt/h-o.st -> s6/tinydns/h-o.st/conf/txt/h-o.st | 0
Rs6/tinydns/h-o.st/zone/txt/himalaya-solaire.org -> s6/tinydns/h-o.st/conf/txt/himalaya-solaire.org | 0
Rs6/tinydns/h-o.st/zone/txt/josuah.net -> s6/tinydns/h-o.st/conf/txt/josuah.net | 0
Ds6/tinydns/h-o.st/zone/alias/h-o.st/@ | 2--
Ds6/tinydns/h-o.st/zone/alias/h-o.st/g | 2--
Ds6/tinydns/h-o.st/zone/alias/h-o.st/git | 2--
Ds6/tinydns/h-o.st/zone/alias/h-o.st/mac/54e1ad43a3a4 | 2--
Ds6/tinydns/h-o.st/zone/alias/himalaya-solaire.org/@ | 2--
Ds6/tinydns/h-o.st/zone/alias/josuah.net/@ | 2--
Ds6/tinydns/h-o.st/zone/alias/josuah.net/git | 2--
Ds6/tinydns/h-o.st/zone/alias/josuah.net/irc | 2--
Ds6/tinydns/h-o.st/zone/ns/h-o.st | 2--
Ds6/tinydns/h-o.st/zone/ns/himalaya-solaire.org | 2--
Ds6/tinydns/h-o.st/zone/ns/josuah.net | 2--
Ms6/tinydns/x/setup | 32++++++++++++++++++++------------
97 files changed, 93 insertions(+), 952 deletions(-)

diff --git a/s6/baresip/iptel.org/accounts/josuah@iptel.org/auth_user b/s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/auth_user diff --git a/s6/baresip/iptel.org/accounts/josuah@iptel.org/medianat b/s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/medianat diff --git a/s6/baresip/iptel.org/accounts/josuah@iptel.org/outbound b/s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/outbound diff --git a/s6/baresip/iptel.org/accounts/josuah@iptel.org/stunserver b/s6/baresip/iptel.org/conf/accounts/josuah@iptel.org/stunserver diff --git a/s6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/medianat b/s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/medianat diff --git a/s6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/stunserver b/s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/stunserver diff --git a/s6/baresip/linphone.org/accounts/sip:josuah@sip.linphone.org/transport b/s6/baresip/linphone.org/conf/accounts/josuah@sip.linphone.org/transport diff --git a/s6/baresip/x/conf/audio_alert b/s6/baresip/x/conf/config/audio_alert diff --git a/s6/baresip/x/conf/audio_player b/s6/baresip/x/conf/config/audio_player diff --git a/s6/baresip/x/conf/audio_source b/s6/baresip/x/conf/config/audio_source diff --git a/s6/baresip/x/conf/cons_listen b/s6/baresip/x/conf/config/cons_listen diff --git a/s6/baresip/x/conf/ice_debug b/s6/baresip/x/conf/config/ice_debug diff --git a/s6/baresip/x/conf/ice_mode b/s6/baresip/x/conf/config/ice_mode diff --git a/s6/baresip/x/conf/ice_nomination b/s6/baresip/x/conf/config/ice_nomination diff --git a/s6/baresip/x/conf/ice_turn b/s6/baresip/x/conf/config/ice_turn diff --git a/s6/baresip/x/contacts/echo@creytiv.com b/s6/baresip/x/conf/contacts/echo@creytiv.com diff --git a/s6/baresip/x/contacts/sip904@mouselike.org b/s6/baresip/x/conf/contacts/sip904@mouselike.org diff --git a/s6/baresip/x/modules/x b/s6/baresip/x/conf/modules/x diff --git a/s6/baresip/x/setup b/s6/baresip/x/setup @@ -5,11 +5,12 @@ if { mkdir -p data } # contacts if { redirfd -w 1 data/contacts + cd conf/contacts - forbacktickx -n -o 0 x { ls contacts } + forbacktickx -n -o 0 x { ls } importas contact x - redirfd -r 0 contacts/${contact} + redirfd -r 0 ${contact} withstdinas -n x importas comment x @@ -19,19 +20,21 @@ if { # accounts if { redirfd -w 1 data/accounts + cd conf/accounts - forbacktickx -n -o 0 x { ls accounts } + forbacktickx -n -o 0 x { ls } importas account x + cd ${account} - if -t { redirfd -w 1 accounts/${account}/auth_pass pass sip/${account} } + if { redirfd -w 1 auth_pass pass sip/${account} } ifte { echo } { exit 1 } if { printf "<sip:%s>" ${account} } - forbacktickx -n -o 0 x { ls accounts/${account} } + forbacktickx -n -o 0 x { ls } importas var x - redirfd -r 0 accounts/${account}/${var} + redirfd -r 0 ${var} withstdinas -n x importas value x @@ -42,21 +45,24 @@ redirfd -w 1 data/config # configuration if { - forbacktickx -n -o 0 x { ls conf } - importas var x + cd conf/config + + forbacktickx -n -o 0 x { ls } + importas variable x - redirfd -r 0 conf/${var} + redirfd -r 0 ${variable} withstdinas -n x importas value x - printf "%-20s %s\n" ${var} ${value} + printf "%-20s %s\n" ${variable} ${value} } +if { echo } + # modules if { - backtick x { ls modules } - importas -s -d "\n" lists x + cd conf/modules + + elglob x * sed "s/#.*//; s/ *$//; /^$/d" ${x} - if { echo } - sed "s/#.*//; s/ *$//; /^$/d" modules/${lists} } diff --git a/s6/collectd/x/conf/FQDNLookup b/s6/collectd/x/conf/plugin/cpu/ReportByCpu diff --git a/s6/collectd/x/conf/AutoLoadPlugin b/s6/collectd/x/conf/plugin/cpu/ReportByState diff --git a/s6/collectd/x/plug/cpu/ReportByCpu b/s6/collectd/x/conf/plugin/cpu/ReportGuestState diff --git a/s6/collectd/x/plug/cpu/ReportGuestState b/s6/collectd/x/conf/plugin/cpu/ReportNumCpu diff --git a/s6/collectd/x/plug/cpu/ReportByState b/s6/collectd/x/conf/plugin/cpu/SubtractGuestState diff --git a/s6/collectd/x/plug/cpu/SubtractGuestState b/s6/collectd/x/conf/plugin/cpu/ValuesPercentage diff --git a/s6/collectd/x/plug/csv/DataDir b/s6/collectd/x/conf/plugin/csv/DataDir diff --git a/s6/collectd/x/plug/df/FSType b/s6/collectd/x/conf/plugin/df/FSType diff --git a/s6/collectd/x/plug/cpu/ReportNumCpu b/s6/collectd/x/conf/plugin/df/IgnoreSelected diff --git a/s6/collectd/x/plug/df/IgnoreSelected b/s6/collectd/x/conf/plugin/df/ReportByDevice diff --git a/s6/collectd/x/plug/df/ReportByDevice b/s6/collectd/x/conf/plugin/df/ReportInodes diff --git a/s6/collectd/x/plug/cpu/ValuesPercentage b/s6/collectd/x/conf/plugin/df/ValuesAbsolute diff --git a/s6/collectd/x/plug/df/ReportInodes b/s6/collectd/x/conf/plugin/df/ValuesPercentage diff --git a/s6/collectd/x/plug/df/ValuesPercentage b/s6/collectd/x/conf/plugin/disk/IgnoreSelected diff --git a/s6/collectd/x/plug/disk/UdevNameAttr b/s6/collectd/x/conf/plugin/disk/UdevNameAttr diff --git a/s6/collectd/x/plug/disk/IgnoreSelected b/s6/collectd/x/conf/plugin/disk/UseBSDName diff --git a/s6/collectd/x/plug/disk/UseBSDName b/s6/collectd/x/conf/plugin/interface/IgnoreSelected diff --git a/s6/collectd/x/plug/df/ValuesAbsolute b/s6/collectd/x/conf/plugin/interface/ReportInactive diff --git a/s6/collectd/x/plug/interface/IgnoreSelected b/s6/collectd/x/conf/plugin/interface/UniqueName diff --git a/s6/collectd/x/plug/interface/ReportInactive b/s6/collectd/x/conf/plugin/load/ReportRelative diff --git a/s6/collectd/x/plug/logfile/File b/s6/collectd/x/conf/plugin/logfile/File diff --git a/s6/collectd/x/plug/logfile/LogLevel b/s6/collectd/x/conf/plugin/logfile/LogLevel diff --git a/s6/collectd/x/plug/load/ReportRelative b/s6/collectd/x/conf/plugin/logfile/PrintSeverity diff --git a/s6/collectd/x/plug/logfile/PrintSeverity b/s6/collectd/x/conf/plugin/logfile/Timestamp diff --git a/s6/collectd/x/plug/interface/UniqueName b/s6/collectd/x/conf/plugin/memory/ValuesAbsolute diff --git a/s6/collectd/x/plug/logfile/Timestamp b/s6/collectd/x/conf/plugin/memory/ValuesPercentage diff --git a/s6/collectd/x/plug/memory/ValuesPercentage b/s6/collectd/x/conf/variable/AutoLoadPlugin diff --git a/s6/collectd/x/plug/memory/ValuesAbsolute b/s6/collectd/x/conf/variable/FQDNLookup diff --git a/s6/collectd/x/conf/Interval b/s6/collectd/x/conf/variable/Interval diff --git a/s6/collectd/x/conf/MaxReadInterval b/s6/collectd/x/conf/variable/MaxReadInterval diff --git a/s6/collectd/x/conf/ReadThreads b/s6/collectd/x/conf/variable/ReadThreads diff --git a/s6/collectd/x/conf/Timeout b/s6/collectd/x/conf/variable/Timeout diff --git a/s6/collectd/x/conf/WriteQueueLimitHigh b/s6/collectd/x/conf/variable/WriteQueueLimitHigh diff --git a/s6/collectd/x/conf/WriteQueueLimitLow b/s6/collectd/x/conf/variable/WriteQueueLimitLow diff --git a/s6/collectd/x/conf/WriteThreads b/s6/collectd/x/conf/variable/WriteThreads diff --git a/s6/collectd/x/data/conf b/s6/collectd/x/data/conf @@ -1,21 +0,0 @@ -#Hostname "localhost" - -<Plugin logfile> - LogLevel info - File STDOUT - Timestamp true - PrintSeverity true -</Plugin> - -<Plugin cpu> - ReportByCpu false - ReportByState true - ValuesPercentage true - ReportNumCpu false - ReportGuestState false - SubtractGuestState true -</Plugin> - -<Plugin csv> - DataDir "/data/collectd" -</Plugin> diff --git a/s6/collectd/x/setup b/s6/collectd/x/setup @@ -3,19 +3,23 @@ if { mkdir -p data } redirfd -w 1 data/conf -if { cd conf - forbacktickx x { ls } importas file x - if { printf "%-20s " $file } - cat $file +cd conf + +if { + cd variable + forbacktickx x { ls } importas variable x + redirfd -r 0 ${variable} withstdinas -n x importas value x + printf "%-20s %s\n" ${variable} ${value} } -if { cd plug - forbacktickx x { ls } importas dir x - if { printf "\n<Plugin %s>\n" $dir } - if { - forbacktickx x { ls $dir } importas file x - if { printf "%-20s " $file } - cat ${dir}/${file} - } - printf "</Plugin>\n" +if { + cd plugin + forbacktickx x { ls } importas plugin x + if { printf "\n<Plugin %s>\n" ${plugin} } + ifte { printf "</Plugin>\n" } { exit 1 } + + cd ${plugin} + forbacktickx x { ls } importas variable x + redirfd -r 0 ${variable} withstdinas -n x importas value x + printf "\t%-20s %s\n" ${variable} ${value} } diff --git a/s6/curvevpn/x/data/Makefile b/s6/curvevpn/x/data/Makefile @@ -1,7 +0,0 @@ -all: data.cdb key - -data.cdb: data - curvevpn-data - -key: - curvevpn-makekey key diff --git a/s6/curvevpn/x/setup b/s6/curvevpn/x/setup @@ -1,2 +1,3 @@ #!/usr/bin/env execline -curvevpn-makekey key +if { cd data curvevpn-data } +if { curvevpn-makekey key } diff --git a/s6/ffingerd-tcp/x/env/BIND b/s6/ffingerd/x/env/BIND diff --git a/s6/ffingerd-tcp/x/env/PORT b/s6/ffingerd/x/env/PORT diff --git a/s6/ffingerd-tcp/x/run b/s6/ffingerd/x/run diff --git a/s6/ffingerd-tcp/x/type b/s6/ffingerd/x/type diff --git a/s6/host/t470s/contents b/s6/host/t470s/contents @@ -1,10 +1,12 @@ +baresip,iptel.org dirmngr,josuah -pjsua,iptel.org -gpg-agent,josuah -tor -ssh-agent,josuah dirmngr,root -baresip,iptel.org +gpg-agent,josuah gpg-agent,root +pjsua,iptel.org qmail-send +ssh-agent,josuah ssh-agent,root +tinydns,h-o.st +tor +transmission diff --git a/s6/kamailio/conf b/s6/kamailio/conf @@ -1,854 +0,0 @@ - -####### Defined Values ######### - -# *** Value defines - IDs used later in config -#!ifdef WITH_MYSQL -# - database URL - used to connect to database server by modules such -# as: auth_db, acc, usrloc, a.s.o. - -#!endif -#!ifdef WITH_MULTIDOMAIN -# - the value for 'use_domain' parameters -#!define MULTIDOMAIN 1 -#!else -#!define MULTIDOMAIN 0 -#!endif - -# - flags -# FLT_ - per transaction (message) flags -# FLB_ - per branch flags -#!define FLT_ACC 1 -#!define FLT_ACCMISSED 2 -#!define FLT_ACCFAILED 3 -#!define FLT_NATS 5 - -#!define FLB_NATB 6 -#!define FLB_NATSIPPING 7 - -####### Global Parameters ######### - -### LOG Levels: 3=DBG, 2=INFO, 1=NOTICE, 0=WARN, -1=ERR -#!ifdef WITH_DEBUG -debug=4 -log_stderror=yes -#!else -debug=2 -log_stderror=no -#!endif - -memdbg=5 -memlog=5 - -log_facility=LOG_LOCAL0 -log_prefix="{$mt $hdr(CSeq) $ci} " - -/* number of SIP routing processes */ -children=8 - -/* uncomment the next line to disable TCP (default on) */ -# disable_tcp=yes - -/* uncomment the next line to disable the auto discovery of local aliases - * based on reverse DNS on IPs (default on) */ -# auto_aliases=no - -/* add local domain aliases */ -# alias="sip.mydomain.com" - -/* uncomment and configure the following line if you want Kamailio to - * bind on a specific interface/port/proto (default bind on all available) */ -# listen=udp:10.0.0.10:5060 - -#!ifdef WITH_TLS -enable_tls=yes -#!endif - -/* life time of TCP connection when there is no traffic - * - a bit higher than registration expires to cope with UA behind NAT */ -tcp_connection_lifetime=3605 - -####### Custom Parameters ######### - -/* These parameters can be modified runtime via RPC interface - * - see the documentation of 'cfg_rpc' module. - * - * Format: group.id = value 'desc' description - * Access: $sel(cfg_get.group.id) or @cfg_get.group.id */ - -#!ifdef WITH_PSTN -/* PSTN GW Routing - * - * - pstn.gw_ip: valid IP or hostname as string value, example: - * pstn.gw_ip = "10.0.0.101" desc "My PSTN GW Address" - * - * - by default is empty to avoid misrouting */ -pstn.gw_ip = "" desc "PSTN GW Address" -pstn.gw_port = "" desc "PSTN GW Port" -#!endif - -#!ifdef WITH_VOICEMAIL -/* VoiceMail Routing on offline, busy or no answer - * - * - by default Voicemail server IP is empty to avoid misrouting */ -voicemail.srv_ip = "" desc "VoiceMail IP Address" -voicemail.srv_port = "5060" desc "VoiceMail Port" -#!endif - -####### Modules Section ######## - -/* set paths to location of modules */ -# mpath="/var/pack/pkg/kamailio/5.2.0/lib64/kamailio/modules/" - -#!ifdef WITH_MYSQL -loadmodule "db_mysql.so" -#!endif - -loadmodule "jsonrpcs.so" -loadmodule "kex.so" -loadmodule "corex.so" -loadmodule "tm.so" -loadmodule "tmx.so" -loadmodule "sl.so" -loadmodule "rr.so" -loadmodule "pv.so" -loadmodule "maxfwd.so" -loadmodule "usrloc.so" -loadmodule "registrar.so" -loadmodule "textops.so" -loadmodule "siputils.so" -loadmodule "xlog.so" -loadmodule "sanity.so" -loadmodule "ctl.so" -loadmodule "cfg_rpc.so" -loadmodule "acc.so" -loadmodule "counters.so" - -#!ifdef WITH_AUTH -loadmodule "auth.so" -loadmodule "auth_db.so" -#!ifdef WITH_IPAUTH -loadmodule "permissions.so" -#!endif -#!endif - -#!ifdef WITH_ALIASDB -loadmodule "alias_db.so" -#!endif - -#!ifdef WITH_SPEEDDIAL -loadmodule "speeddial.so" -#!endif - -#!ifdef WITH_MULTIDOMAIN -loadmodule "domain.so" -#!endif - -#!ifdef WITH_PRESENCE -loadmodule "presence.so" -loadmodule "presence_xml.so" -#!endif - -#!ifdef WITH_NAT -loadmodule "nathelper.so" -loadmodule "rtpproxy.so" -#!endif - -#!ifdef WITH_TLS -loadmodule "tls.so" -#!endif - -#!ifdef WITH_ANTIFLOOD -loadmodule "htable.so" -loadmodule "pike.so" -#!endif - -#!ifdef WITH_XMLRPC -loadmodule "xmlrpc.so" -#!endif - -#!ifdef WITH_DEBUG -loadmodule "debugger.so" -#!endif - -# ----------------- setting module-specific parameters --------------- - - -# ----- jsonrpcs params ----- -modparam("jsonrpcs", "pretty_format", 1) -/* set the path to RPC fifo control file */ -# modparam("jsonrpcs", "fifo_name", "/var/run/kamailio/kamailio_rpc.fifo") -/* set the path to RPC unix socket control file */ -# modparam("jsonrpcs", "dgram_socket", "/var/run/kamailio/kamailio_rpc.sock") - -# ----- ctl params ----- -/* set the path to RPC unix socket control file */ -# modparam("ctl", "binrpc", "unix:/var/run/kamailio/kamailio_ctl") - -# ----- tm params ----- -# auto-discard branches from previous serial forking leg -modparam("tm", "failure_reply_mode", 3) -# default retransmission timeout: 30sec -modparam("tm", "fr_timer", 30000) -# default invite retransmission timeout after 1xx: 120sec -modparam("tm", "fr_inv_timer", 120000) - -# ----- rr params ----- -# set next param to 1 to add value to ;lr param (helps with some UAs) -modparam("rr", "enable_full_lr", 0) -# do not append from tag to the RR (no need for this script) -modparam("rr", "append_fromtag", 0) - -# ----- registrar params ----- -modparam("registrar", "method_filtering", 1) -/* uncomment the next line to disable parallel forking via location */ -# modparam("registrar", "append_branches", 0) -/* uncomment the next line not to allow more than 10 contacts per AOR */ -# modparam("registrar", "max_contacts", 10) -/* max value for expires of registrations */ -modparam("registrar", "max_expires", 3600) -/* set it to 1 to enable GRUU */ -modparam("registrar", "gruu_enabled", 0) - -# ----- acc params ----- -/* what special events should be accounted ? */ -modparam("acc", "early_media", 0) -modparam("acc", "report_ack", 0) -modparam("acc", "report_cancels", 0) -/* by default ww do not adjust the direct of the sequential requests. - * if you enable this parameter, be sure the enable "append_fromtag" - * in "rr" module */ -modparam("acc", "detect_direction", 0) -/* account triggers (flags) */ -modparam("acc", "log_flag", FLT_ACC) -modparam("acc", "log_missed_flag", FLT_ACCMISSED) -modparam("acc", "log_extra", - "src_user=$fU;src_domain=$fd;src_ip=$si;" - "dst_ouser=$tU;dst_user=$rU;dst_domain=$rd") -modparam("acc", "failed_transaction_flag", FLT_ACCFAILED) -/* enhanced DB accounting */ -#!ifdef WITH_ACCDB -modparam("acc", "db_flag", FLT_ACC) -modparam("acc", "db_missed_flag", FLT_ACCMISSED) -modparam("acc", "db_url", DBURL) -modparam("acc", "db_extra", - "src_user=$fU;src_domain=$fd;src_ip=$si;" - "dst_ouser=$tU;dst_user=$rU;dst_domain=$rd") -#!endif - -# ----- usrloc params ----- -/* enable DB persistency for location entries */ -#!ifdef WITH_USRLOCDB -modparam("usrloc", "db_url", DBURL) -modparam("usrloc", "db_mode", 2) -modparam("usrloc", "use_domain", MULTIDOMAIN) -#!endif - -# ----- auth_db params ----- -#!ifdef WITH_AUTH -modparam("auth_db", "db_url", DBURL) -modparam("auth_db", "calculate_ha1", yes) -modparam("auth_db", "password_column", "password") -modparam("auth_db", "load_credentials", "") -modparam("auth_db", "use_domain", MULTIDOMAIN) - -# ----- permissions params ----- -#!ifdef WITH_IPAUTH -modparam("permissions", "db_url", DBURL) -modparam("permissions", "db_mode", 1) -#!endif - -#!endif - -# ----- alias_db params ----- -#!ifdef WITH_ALIASDB -modparam("alias_db", "db_url", DBURL) -modparam("alias_db", "use_domain", MULTIDOMAIN) -#!endif - -# ----- speeddial params ----- -#!ifdef WITH_SPEEDDIAL -modparam("speeddial", "db_url", DBURL) -modparam("speeddial", "use_domain", MULTIDOMAIN) -#!endif - -# ----- domain params ----- -#!ifdef WITH_MULTIDOMAIN -modparam("domain", "db_url", DBURL) -/* register callback to match myself condition with domains list */ -modparam("domain", "register_myself", 1) -#!endif - -#!ifdef WITH_PRESENCE -# ----- presence params ----- -modparam("presence", "db_url", DBURL) - -# ----- presence_xml params ----- -modparam("presence_xml", "db_url", DBURL) -modparam("presence_xml", "force_active", 1) -#!endif - -#!ifdef WITH_NAT -# ----- rtpproxy params ----- -modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:7722") - -# ----- nathelper params ----- -modparam("nathelper", "natping_interval", 30) -modparam("nathelper", "ping_nated_only", 1) -modparam("nathelper", "sipping_bflag", FLB_NATSIPPING) -modparam("nathelper", "sipping_from", "sip:pinger@kamailio.org") - -# params needed for NAT traversal in other modules -modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)") -modparam("usrloc", "nat_bflag", FLB_NATB) -#!endif - -#!ifdef WITH_TLS -# ----- tls params ----- -modparam("tls", "config", "/var/pack/pkg/kamailio/5.2.0/etc/kamailio/tls.cfg") -#!endif - -#!ifdef WITH_ANTIFLOOD -# ----- pike params ----- -modparam("pike", "sampling_time_unit", 2) -modparam("pike", "reqs_density_per_unit", 16) -modparam("pike", "remove_latency", 4) - -# ----- htable params ----- -/* ip ban htable with autoexpire after 5 minutes */ -modparam("htable", "htable", "ipban=>size=8;autoexpire=300;") -#!endif - -#!ifdef WITH_XMLRPC -# ----- xmlrpc params ----- -modparam("xmlrpc", "route", "XMLRPC"); -modparam("xmlrpc", "url_match", "^/RPC") -#!endif - -#!ifdef WITH_DEBUG -# ----- debugger params ----- -modparam("debugger", "cfgtrace", 1) -modparam("debugger", "log_level_name", "exec") -#!endif - -####### Routing Logic ######## - - -/* Main SIP request routing logic - * - processing of any incoming SIP request starts with this route - * - note: this is the same as route { ... } */ -request_route { - - # per request initial checks - route(REQINIT); - - # NAT detection - route(NATDETECT); - - # CANCEL processing - if (is_method("CANCEL")) { - if (t_check_trans()) { - route(RELAY); - } - exit; - } - - # handle retransmissions - if (!is_method("ACK")) { - if(t_precheck_trans()) { - t_check_trans(); - exit; - } - t_check_trans(); - } - - # handle requests within SIP dialogs - route(WITHINDLG); - - ### only initial requests (no To tag) - - # authentication - route(AUTH); - - # record routing for dialog forming requests (in case they are routed) - # - remove preloaded route headers - remove_hf("Route"); - if (is_method("INVITE|SUBSCRIBE")) { - record_route(); - } - - # account only INVITEs - if (is_method("INVITE")) { - setflag(FLT_ACC); # do accounting - } - - # dispatch requests to foreign domains - route(SIPOUT); - - ### requests for my local domains - - # handle presence related requests - route(PRESENCE); - - # handle registrations - route(REGISTRAR); - - if ($rU==$null) { - # request with no Username in RURI - sl_send_reply("484","Address Incomplete"); - exit; - } - - # dispatch destinations to PSTN - route(PSTN); - - # user location service - route(LOCATION); -} - -# Wrapper for relaying requests -route[RELAY] { - - # enable additional event routes for forwarded requests - # - serial forking, RTP relaying handling, a.s.o. - if (is_method("INVITE|BYE|SUBSCRIBE|UPDATE")) { - if(!t_is_set("branch_route")) t_on_branch("MANAGE_BRANCH"); - } - if (is_method("INVITE|SUBSCRIBE|UPDATE")) { - if(!t_is_set("onreply_route")) t_on_reply("MANAGE_REPLY"); - } - if (is_method("INVITE")) { - if(!t_is_set("failure_route")) t_on_failure("MANAGE_FAILURE"); - } - - if (!t_relay()) { - sl_reply_error(); - } - exit; -} - -# Per SIP request initial checks -route[REQINIT] { -#!ifdef WITH_ANTIFLOOD - # flood detection from same IP and traffic ban for a while - # be sure you exclude checking trusted peers, such as pstn gateways - # - local host excluded (e.g., loop to self) - if(src_ip!=myself) { - if($sht(ipban=>$si)!=$null) { - # ip is already blocked - xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)\n"); - exit; - } - if (!pike_check_req()) { - xlog("L_ALERT","ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n"); - $sht(ipban=>$si) = 1; - exit; - } - } -#!endif - if($ua =~ "friendly-scanner|sipcli|VaxSIPUserAgent") { - # silent drop for scanners - uncomment next line if want to reply - # sl_send_reply("200", "OK"); - exit; - } - - if (!mf_process_maxfwd_header("10")) { - sl_send_reply("483","Too Many Hops"); - exit; - } - - if(is_method("OPTIONS") && uri==myself && $rU==$null) { - sl_send_reply("200","Keepalive"); - exit; - } - - if(!sanity_check("17895", "7")) { - xlog("Malformed SIP message from $si:$sp\n"); - exit; - } -} - -# Handle requests within SIP dialogs -route[WITHINDLG] { - if (!has_totag()) return; - - # sequential request withing a dialog should - # take the path determined by record-routing - if (loose_route()) { - route(DLGURI); - if (is_method("BYE")) { - setflag(FLT_ACC); # do accounting ... - setflag(FLT_ACCFAILED); # ... even if the transaction fails - } else if ( is_method("ACK") ) { - # ACK is forwarded statelessly - route(NATMANAGE); - } else if ( is_method("NOTIFY") ) { - # Add Record-Route for in-dialog NOTIFY as per RFC 6665. - record_route(); - } - route(RELAY); - exit; - } - - if (is_method("SUBSCRIBE") && uri == myself) { - # in-dialog subscribe requests - route(PRESENCE); - exit; - } - if ( is_method("ACK") ) { - if ( t_check_trans() ) { - # no loose-route, but stateful ACK; - # must be an ACK after a 487 - # or e.g. 404 from upstream server - route(RELAY); - exit; - } else { - # ACK without matching transaction ... ignore and discard - exit; - } - } - sl_send_reply("404","Not here"); - exit; -} - -# Handle SIP registrations -route[REGISTRAR] { - if (!is_method("REGISTER")) return; - - if(isflagset(FLT_NATS)) { - setbflag(FLB_NATB); -#!ifdef WITH_NATSIPPING - # do SIP NAT pinging - setbflag(FLB_NATSIPPING); -#!endif - } - if (!save("location")) { - sl_reply_error(); - } - exit; -} - -# User location service -route[LOCATION] { - -#!ifdef WITH_SPEEDDIAL - # search for short dialing - 2-digit extension - if($rU=~"^[0-9][0-9]$") { - if(sd_lookup("speed_dial")) { - route(SIPOUT); - } - } -#!endif - -#!ifdef WITH_ALIASDB - # search in DB-based aliases - if(alias_db_lookup("dbaliases")) { - route(SIPOUT); - } -#!endif - - $avp(oexten) = $rU; - if (!lookup("location")) { - $var(rc) = $rc; - route(TOVOICEMAIL); - t_newtran(); - switch ($var(rc)) { - case -1: - case -3: - send_reply("404", "Not Found"); - exit; - case -2: - send_reply("405", "Method Not Allowed"); - exit; - } - } - - # when routing via usrloc, log the missed calls also - if (is_method("INVITE")) { - setflag(FLT_ACCMISSED); - } - - route(RELAY); - exit; -} - -# Presence server processing -route[PRESENCE] { - if(!is_method("PUBLISH|SUBSCRIBE")) return; - - if(is_method("SUBSCRIBE") && $hdr(Event)=="message-summary") { - route(TOVOICEMAIL); - # returns here if no voicemail server is configured - sl_send_reply("404", "No voicemail service"); - exit; - } - -#!ifdef WITH_PRESENCE - if (!t_newtran()) { - sl_reply_error(); - exit; - } - - if(is_method("PUBLISH")) { - handle_publish(); - t_release(); - } else if(is_method("SUBSCRIBE")) { - handle_subscribe(); - t_release(); - } - exit; -#!endif - - # if presence enabled, this part will not be executed - if (is_method("PUBLISH") || $rU==$null) { - sl_send_reply("404", "Not here"); - exit; - } - return; -} - -# IP authorization and user authentication -route[AUTH] { -#!ifdef WITH_AUTH - -#!ifdef WITH_IPAUTH - if((!is_method("REGISTER")) && allow_source_address()) { - # source IP allowed - return; - } -#!endif - - if (is_method("REGISTER") || from_uri==myself) { - # authenticate requests - if (!auth_check("$fd", "subscriber", "1")) { - auth_challenge("$fd", "0"); - exit; - } - # user authenticated - remove auth header - if(!is_method("REGISTER|PUBLISH")) - consume_credentials(); - } - # if caller is not local subscriber, then check if it calls - # a local destination, otherwise deny, not an open relay here - if (from_uri!=myself && uri!=myself) { - sl_send_reply("403","Not relaying"); - exit; - } - -#!else - - # authentication not enabled - do not relay at all to foreign networks - if(uri!=myself) { - sl_send_reply("403","Not relaying"); - exit; - } - -#!endif - return; -} - -# Caller NAT detection -route[NATDETECT] { -#!ifdef WITH_NAT - force_rport(); - if (nat_uac_test("19")) { - if (is_method("REGISTER")) { - fix_nated_register(); - } else { - if(is_first_hop()) { - set_contact_alias(); - } - } - setflag(FLT_NATS); - } -#!endif - return; -} - -# RTPProxy control and signaling updates for NAT traversal -route[NATMANAGE] { -#!ifdef WITH_NAT - if (is_request()) { - if(has_totag()) { - if(check_route_param("nat=yes")) { - setbflag(FLB_NATB); - } - } - } - if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB))) return; - - if(nat_uac_test("8")) { - rtpproxy_manage("co"); - } else { - rtpproxy_manage("cor"); - } - - if (is_request()) { - if (!has_totag()) { - if(t_is_branch_route()) { - add_rr_param(";nat=yes"); - } - } - } - if (is_reply()) { - if(isbflagset(FLB_NATB)) { - if(is_first_hop()) - set_contact_alias(); - } - } -#!endif - return; -} - -# URI update for dialog requests -route[DLGURI] { -#!ifdef WITH_NAT - if(!isdsturiset()) { - handle_ruri_alias(); - } -#!endif - return; -} - -# Routing to foreign domains -route[SIPOUT] { - if (uri==myself) return; - - append_hf("P-hint: outbound\r\n"); - route(RELAY); - exit; -} - -# PSTN GW routing -route[PSTN] { -#!ifdef WITH_PSTN - # check if PSTN GW IP is defined - if (strempty($sel(cfg_get.pstn.gw_ip))) { - xlog("SCRIPT: PSTN routing enabled but pstn.gw_ip not defined\n"); - return; - } - - # route to PSTN dialed numbers starting with '+' or '00' - # (international format) - # - update the condition to match your dialing rules for PSTN routing - if(!($rU=~"^(\+|00)[1-9][0-9]{3,20}$")) return; - - # only local users allowed to call - if(from_uri!=myself) { - sl_send_reply("403", "Not Allowed"); - exit; - } - - # normalize target number for pstn gateway - # - convert leading 00 to + - if (starts_with("$rU", "00")) { - strip(2); - prefix("+"); - } - - if (strempty($sel(cfg_get.pstn.gw_port))) { - $ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip); - } else { - $ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip) + ":" - + $sel(cfg_get.pstn.gw_port); - } - - route(RELAY); - exit; -#!endif - - return; -} - -# XMLRPC routing -#!ifdef WITH_XMLRPC -route[XMLRPC] { - # allow XMLRPC from localhost - if ((method=="POST" || method=="GET") - && (src_ip==127.0.0.1)) { - # close connection only for xmlrpclib user agents (there is a bug in - # xmlrpclib: it waits for EOF before interpreting the response). - if ($hdr(User-Agent) =~ "xmlrpclib") - set_reply_close(); - set_reply_no_connect(); - dispatch_rpc(); - exit; - } - send_reply("403", "Forbidden"); - exit; -} -#!endif - -# Routing to voicemail server -route[TOVOICEMAIL] { -#!ifdef WITH_VOICEMAIL - if(!is_method("INVITE|SUBSCRIBE")) return; - - # check if VoiceMail server IP is defined - if (strempty($sel(cfg_get.voicemail.srv_ip))) { - xlog("SCRIPT: VoiceMail routing enabled but IP not defined\n"); - return; - } - if(is_method("INVITE")) { - if($avp(oexten)==$null) return; - - $ru = "sip:" + $avp(oexten) + "@" + $sel(cfg_get.voicemail.srv_ip) - + ":" + $sel(cfg_get.voicemail.srv_port); - } else { - if($rU==$null) return; - - $ru = "sip:" + $rU + "@" + $sel(cfg_get.voicemail.srv_ip) - + ":" + $sel(cfg_get.voicemail.srv_port); - } - route(RELAY); - exit; -#!endif - - return; -} - -# Manage outgoing branches -branch_route[MANAGE_BRANCH] { - xdbg("new branch [$T_branch_idx] to $ru\n"); - route(NATMANAGE); -} - -# Manage incoming replies -onreply_route[MANAGE_REPLY] { - xdbg("incoming reply\n"); - if(status=~"[12][0-9][0-9]") { - route(NATMANAGE); - } -} - -# Manage failure routing cases -failure_route[MANAGE_FAILURE] { - route(NATMANAGE); - - if (t_is_canceled()) exit; - -#!ifdef WITH_BLOCK3XX - # block call redirect based on 3xx replies. - if (t_check_status("3[0-9][0-9]")) { - t_reply("404","Not found"); - exit; - } -#!endif - -#!ifdef WITH_BLOCK401407 - # block call redirect based on 401, 407 replies. - if (t_check_status("401|407")) { - t_reply("404","Not found"); - exit; - } -#!endif - -#!ifdef WITH_VOICEMAIL - # serial forking - # - route to voicemail on busy or no answer (timeout) - if (t_check_status("486|408")) { - $du = $null; - route(TOVOICEMAIL); - exit; - } -#!endif -} diff --git a/s6/kamailio/conf.bkp b/s6/kamailio/x/README diff --git a/s6/kamailio/dbtext/define/DBURL b/s6/kamailio/x/conf/define/DBURL diff --git a/s6/qmail-send/x/conf/locals b/s6/qmail-send/x/conf/control/locals diff --git a/s6/qmail-send/x/conf/me b/s6/qmail-send/x/conf/control/me diff --git a/s6/qmail-send/x/env/USER b/s6/qmail-send/x/env/USER @@ -0,0 +1 @@ +sqmail diff --git a/s6/qmail-send/x/setup b/s6/qmail-send/x/setup @@ -1,5 +1,6 @@ #!/usr/bin/env execlineb -if { s6-hiercopy alias /var/qmail/alias } -if { s6-hiercopy conf /var/qmail/control } -chgrp -R sqmail /var/qmail +s6-envdir env +importas USER USER +if { s6-hiercopy conf /var/qmail } +chgrp -R ${USER} /var/qmail diff --git a/s6/tinydns/h-o.st/conf/alias/h-o.st/@ b/s6/tinydns/h-o.st/conf/alias/h-o.st/@ @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/h-o.st/g b/s6/tinydns/h-o.st/conf/alias/h-o.st/g @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/h-o.st/git b/s6/tinydns/h-o.st/conf/alias/h-o.st/git @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/h-o.st/mac/54e1ad43a3a4 b/s6/tinydns/h-o.st/conf/alias/h-o.st/mac/54e1ad43a3a4 @@ -0,0 +1 @@ +../../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/himalaya-solaire.org/@ b/s6/tinydns/h-o.st/conf/alias/himalaya-solaire.org/@ @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/josuah.net/@ b/s6/tinydns/h-o.st/conf/alias/josuah.net/@ @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/josuah.net/git b/s6/tinydns/h-o.st/conf/alias/josuah.net/git @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/alias/josuah.net/irc b/s6/tinydns/h-o.st/conf/alias/josuah.net/irc @@ -0,0 +1 @@ +../../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/host/h-o.st/glaphyrae b/s6/tinydns/h-o.st/conf/host/h-o.st/glaphyrae diff --git a/s6/tinydns/h-o.st/conf/ns/h-o.st b/s6/tinydns/h-o.st/conf/ns/h-o.st @@ -0,0 +1 @@ +../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/ns/himalaya-solaire.org b/s6/tinydns/h-o.st/conf/ns/himalaya-solaire.org @@ -0,0 +1 @@ +../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/conf/ns/josuah.net b/s6/tinydns/h-o.st/conf/ns/josuah.net @@ -0,0 +1 @@ +../host/h-o.st/glaphyrae+ \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/txt/h-o.st b/s6/tinydns/h-o.st/conf/txt/h-o.st diff --git a/s6/tinydns/h-o.st/zone/txt/himalaya-solaire.org b/s6/tinydns/h-o.st/conf/txt/himalaya-solaire.org diff --git a/s6/tinydns/h-o.st/zone/txt/josuah.net b/s6/tinydns/h-o.st/conf/txt/josuah.net diff --git a/s6/tinydns/h-o.st/zone/alias/h-o.st/@ b/s6/tinydns/h-o.st/zone/alias/h-o.st/@ @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/h-o.st/g b/s6/tinydns/h-o.st/zone/alias/h-o.st/g @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/h-o.st/git b/s6/tinydns/h-o.st/zone/alias/h-o.st/git @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/h-o.st/mac/54e1ad43a3a4 b/s6/tinydns/h-o.st/zone/alias/h-o.st/mac/54e1ad43a3a4 @@ -1 +0,0 @@ -../../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/himalaya-solaire.org/@ b/s6/tinydns/h-o.st/zone/alias/himalaya-solaire.org/@ @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/josuah.net/@ b/s6/tinydns/h-o.st/zone/alias/josuah.net/@ @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/josuah.net/git b/s6/tinydns/h-o.st/zone/alias/josuah.net/git @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/alias/josuah.net/irc b/s6/tinydns/h-o.st/zone/alias/josuah.net/irc @@ -1 +0,0 @@ -../../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/ns/h-o.st b/s6/tinydns/h-o.st/zone/ns/h-o.st @@ -1 +0,0 @@ -../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/ns/himalaya-solaire.org b/s6/tinydns/h-o.st/zone/ns/himalaya-solaire.org @@ -1 +0,0 @@ -../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/h-o.st/zone/ns/josuah.net b/s6/tinydns/h-o.st/zone/ns/josuah.net @@ -1 +0,0 @@ -../host/h-o.st/glaphyrae- \ No newline at end of file diff --git a/s6/tinydns/x/setup b/s6/tinydns/x/setup @@ -5,10 +5,14 @@ if { touch data/data } ifte { cd data tinydns-data } { exit 1 } -forbacktickx -o 0 -d "\n" x { ls zone } importas -n type x -forbacktickx -o 0 -d "\n" x { - cd zone/${type} elglob x * find -L ${x} -type f -o -type l -} importas path x +cd conf + +forbacktickx -o 0 -d "\n" x { ls } +importas -n type x +cd ${type} + +forbacktickx -o 0 -d "\n" x { elglob x * find -L ${x} -type f -o -type l } +importas path x # transform top/mid/low to low.mid.top backtick -n x { @@ -17,11 +21,13 @@ backtick -n x { pipeline { sed "1!G;h;$!d" } pipeline { tr "\n" "." } sed "s/\\.$//; s/^@.//" -} importas -n name x +} +importas -n name x -forbacktickx -o 0 -d "\n" x { cat zone/${type}/${path} } importas content x +forbacktickx -o 0 -d "\n" x { cat ${path} } +importas content x -if { printf "%-6s %-20s %s\n" ${type} ${name} ${content} } +if { printf "%-6s %-30s %s\n" ${type} ${name} ${content} } ifelse { test ${type} = txt } { # encode to octal: "\254\055\301\006\241\062\046\102" @@ -35,9 +41,9 @@ ifelse { test ${type} = txt } { s/ +/\\\\/g " } tr -d "\n" - } importas text x - - redirfd -a 1 data/data echo "'${name}:${text}" + } + importas text x + redirfd -a 1 ../../data/data echo "'${name}:${text}" } ifelse { heredoc 0 ${type} grep -Eq "^[0-9]+$" } { @@ -45,8 +51,10 @@ ifelse { heredoc 0 ${type} grep -Eq "^[0-9]+$" } { echo ":${type}:${name}:${content}" } +cd ../../data + ifelse { heredoc 0 ${content} grep -vq : } - { tinydns-edit data/data data/data.new add ${type} ${name} ${content} } + { tinydns-edit data data.new add ${type} ${name} ${content} } ifelse -n { if -n { test ${type} = host } if -n { test ${type} = alias } } - { tinydns-edit data/data data/data.new add ${type}6 ${name} ${content} } + { tinydns-edit data data.new add ${type}6 ${name} ${content} }