diff options
Diffstat (limited to '')
| -rw-r--r-- | .newsboat/urls | 1 | ||||
| -rw-r--r-- | .tmux.conf | 4 | ||||
| -rw-r--r-- | .vimrc | 8 | ||||
| -rw-r--r-- | .zshrc | 11 | ||||
| -rwxr-xr-x | bin/xman | 9 | ||||
| -rwxr-xr-x | docker/docker_builders.sh | 22 | ||||
| -rwxr-xr-x | elvis/searxng | 98 | ||||
| -rwxr-xr-x | lesscolor.sh | 6 | ||||
| -rw-r--r-- | terminaldweller.com/prosody/config/prosody.cfg.lua | 142 | ||||
| -rw-r--r-- | terminaldweller.com/searxng/Caddyfile | 1 | 
10 files changed, 216 insertions, 86 deletions
| diff --git a/.newsboat/urls b/.newsboat/urls index a6cee80..c788e78 100644 --- a/.newsboat/urls +++ b/.newsboat/urls @@ -2,6 +2,7 @@ https://www.reddit.com/r/CryptoCurrency.rss  http://feeds.feedburner.com/abseilio  https://www.cyberciti.biz/atom/atom.xml  https://www.semicolonandsons.com/feed +https://blog.terminaldweller.com/rss/feed  # (Youtube)  # Horror @@ -83,7 +83,7 @@ bind-key M-w command-prompt -p "Move Current Window To? (e.g 3.1; session_name:6  bind-key ! break-pane -d -n _hidden_pane  bind-key @ join-pane -s $.0 -bind-key p popup -w 80% -h 80% -E ksh +bind-key p popup -w 80% -h 80% -E xonsh  #to support nested tmux sessions for ssh workflows  bind -T root F6 \ @@ -147,10 +147,12 @@ bind-key -n C-S-Right swap-window -t +1\; select-window -t +1  setw -g monitor-activity off  set -g visual-activity off +# pane border style  set -g pane-active-border-style fg='#669933',bold  set -g pane-border-style fg='#0099ff'  set -g pane-border-status top  set -g pane-border-lines heavy +# set -g pane-border-format "#{pane_index}:#{s/sudo//:pane_current_command}"  set -g pane-border-format "#{pane_index}:#{pane_current_command}"  # message text @@ -1452,8 +1452,8 @@ augroup END  let b:ale_c_flawfinder_executable= "/home/devi/devi/flawfinder/flawfinder-2.0.19/flawfinder.py"  augroup ALEC    autocmd! -  autocmd FileType c let b:ale_linters = {'c': ['clang-tidy', 'flawfinder']} -  autocmd FileType c let b:ale_fixers = {'c': ['clang-format']} +  " autocmd FileType c let b:ale_linters = {'c': ['clang-tidy', 'flawfinder']} +  " autocmd FileType c let b:ale_fixers = {'c': ['clang-format']}  augroup END  let b:ale_cpp_flawfinder_executable= "/home/devi/devi/flawfinder/flawfinder-2.0.19/flawfinder.py"  augroup ALECPP @@ -1486,8 +1486,8 @@ let b:ale_sh_shfmt_options = "-w -"  let b:ale_sh_shellcheck_options = '-x'  augroup ALESH    autocmd! -  autocmd FileType sh let b:ale_linters = {'sh': ['shellcheck']} -  autocmd FileType sh let b:ale_fixers = {'sh': ['shfmt']} +  autocmd FileType sh,bash let b:ale_linters = {'sh': ['shellcheck']} +  autocmd FileType sh,bash let b:ale_fixers = {'sh': ['shfmt']}  augroup END  augroup ALECSS    autocmd! @@ -312,7 +312,11 @@ export STARDICT_DATA_DIR  export LIBGL_ALWAYS_INDIRECT=1  #export PULSE_SERVER=tcp:192.168.1.103  export WWW_HOME="duckduckgo.com" +# http://download.huzheng.org/  alias def="sdcv --color" +alias defe="sdcv --color -u dictd_www.dict.org_gcide" +alias defd="sdcv --color -u LDaF" +alias deff="sdcv --color -u XMLittre"  #goenv  export GOENV_ROOT="$HOME/.goenv"  export PATH="$GOENV_ROOT/bin:$PATH" @@ -712,5 +716,12 @@ eval "$(luarocks-5.3 path)"  source /usr/share/fzf/completion.zsh  source /usr/share/fzf/key-bindings.zsh +# deno +export DENO_INSTALL="/home/devi/.deno" +export PATH="$DENO_INSTALL/bin:$PATH" +export DVM_DIR="/home/devi/.dvm" +export PATH="$DVM_DIR/bin:$PATH" +export PATH=/home/devi/.bun/bin:$PATH +  [[ -s "/home/devi/.gvm/scripts/gvm" ]] && source "/home/devi/.gvm/scripts/gvm"  # [[ -s "/usr/share/grc/grc.zsh" ]] && source /usr/share/grc/grc.zsh diff --git a/bin/xman b/bin/xman new file mode 100755 index 0000000..5f4efed --- /dev/null +++ b/bin/xman @@ -0,0 +1,9 @@ +#!/bin/sh +# xmandoc MANPAGE - read manpage of possibly not installed package + +xlocate "man/man..\?/$1\.[0-9]" 2>/dev/null | +        { grep . || { echo "xmandoc: No entry for $1 found." 1>&2; exit 1; } } | +        while read -r pkg page; do +                page=${page#* -> } +                xbps-query --cat=$page ${pkg%-*} | mandoc -O width=205 -a +        done diff --git a/docker/docker_builders.sh b/docker/docker_builders.sh new file mode 100755 index 0000000..f791e6a --- /dev/null +++ b/docker/docker_builders.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +SOCKS_4_PROXY="socks5://127.0.0.1:9995" +SOCKS_6_PROXY="socks5://[::1]:9993" +NO_PROXY="localhost,127.0.0.0/8,192.168.0.0/16,::1" +# create the builders +# --driver-opt env.no_proxy=${NO_PROXY} \ +docker buildx create \ +  --driver-opt env.http_proxy=${SOCKS_6_PROXY} \ +  --driver-opt env.https_proxy=${SOCKS_6_PROXY} \ +  --name proxy_builder_6 + +# --driver-opt env.no_proxy=${NO_PROXY} \ +docker buildx create \ +  --driver-opt env.http_proxy=${SOCKS_4_PROXY} \ +  --driver-opt env.https_proxy=${SOCKS_4_PROXY} \ +  --name proxy_builder_4 + +docker buildx create --name armbuilder + +# choose one as default +docker buildx use proxy_builder_6 diff --git a/elvis/searxng b/elvis/searxng new file mode 100755 index 0000000..6f42adf --- /dev/null +++ b/elvis/searxng @@ -0,0 +1,98 @@ +#!/bin/sh +# a modified version of the searx elvi, for my instance of searxng +# elvis: searxng           -- Search using searx metasearch engine instances (https://searx.me and others) +# author: ng0            -- contact: ng0@we.make.ritual.n0.is +# 2016-08-14 + +. surfraw || exit 1 + +w3_config_hook () { +    def SURFRAW_searx_categories  "$SURFRAW_categories" +    def SURFRAW_searx_base_url    "$SURFRAW_url" +} + +w3_usage_hook () { +    cat <<EOF + +Usage: $w3_argv0 [options] [search words]... +Description: +  Use the searx metasearch engine + + -category,c=CATEGORIES + +  Local options: +    default   | search category "general" (default) +    vid       | search category "videos" +    socialm   | search category "social+media" +    news      | search category "news" +    music     | search category "music" +    map       | search category "map" +    it        | search category "it" +    img       | search category "images" +    files     | search category "files" +                 Default: general + + -url,u=URL + +  Local options: +    1       | https://searx.terminaldweller.com +    2       | https://searx.laquadrature.net +    3       | https://www.privatesearch.io +    o1      | http://searchb5a7tmimez.onion (laquadrature) +    o2      | http://ulrn6sryqaifefld.onion (searx.me) +    cjdns   | fc00:59dd:3bb2:d592:4083:c138:5489:560a +                  Default: https://searx.terminaldweller.com + +EOF +    w3_global_usage +} +mkopts category= url= +w3_complete_hook_opt () +{ +        local opt="$1" +        case "$opt" in +                -c=*|-category=*) echo default vid socialm news music map it img files ;; +                -u=*|-url=*) echo 1 2 3 o1 o2 cjdns ;; +                *) return 1 ;; +        esac +} + +w3_parse_option_hook () { +    opt="$1" +    optarg="$2" +    case "$opt" in +    -c*=*)   setopt   SURFRAW_searx_categories   $optarg ;; +    -u*=*)   setopt   SURFRAW_searx_base_url     $optarg ;; +    *) return 1 ;; +    esac +    return 0 +} + +w3_config +w3_parse_args "$@" + +case "$SURFRAW_searx_categories" in +    default*)   category="general"        ;; +    vid*)       category="videos"         ;; +    socialm*)   category="social+media"   ;; +    news*)      category="news"           ;; +    music*)     category="music"          ;; +    map*)       category="map"            ;; +    it*)        category="it"             ;; +    img*)       category="images"         ;; +    files*)     category="files"          ;; +    *)          category="general"        ;; +esac +case "$SURFRAW_searx_base_url" in +    1*)   searx_url="https://searx.terminaldweller.com"         ;; +    2*)         searx_url="https://searx.laquadrature.net" ;; +    3*)         searx_url="https://www.privatesearch.io" ;; +    o1*)        searx_url="http://searchb5a7tmimez.onion" ;; +    o2*)        searx_url="http://ulrn6sryqaifefld.onion" ;; +    cjdns*)     searx_url="fc00:59dd:3bb2:d592:4083:c138:5489:560a" ;; +    *)          searx_url="https://searx.terminaldweller.com" ;; +esac +# w3_args now contains a list of arguments +escaped_args=$(w3_url_of_arg $w3_args) + +w3_browse_url "${searx_url}/?q=${escaped_args}&categories=${category}" diff --git a/lesscolor.sh b/lesscolor.sh index 4a8dc93..108f0a6 100755 --- a/lesscolor.sh +++ b/lesscolor.sh @@ -64,9 +64,9 @@ case "$1" in      *.qbs|*.slim|*.xqy|*.xquery|*.xq|*.xql|*.xqm|*.whiley|*.x10)          pygmentize -f 256 -O style="$PYGMENTIZE_STYLE" "$1" | nl -b a;;      *) -        # interp=$(get_interp "$1") -        # pygmentize -f 256 -O style="$PYGMENTIZE_STYLE" -l "$interp" "$1" | nl -b a -        pygmentize -f 256 -O style="$PYGMENTIZE_STYLE" -g "$1" | nl -b a +        interp=$(get_interp "$1") +        pygmentize -f 256 -O style="$PYGMENTIZE_STYLE" -l "$interp" "$1" | nl -b a +        # pygmentize -f 256 -O style="$PYGMENTIZE_STYLE" -g "$1" | nl -b a  esac  exit 0 diff --git a/terminaldweller.com/prosody/config/prosody.cfg.lua b/terminaldweller.com/prosody/config/prosody.cfg.lua index d2c5e7d..ba67de7 100644 --- a/terminaldweller.com/prosody/config/prosody.cfg.lua +++ b/terminaldweller.com/prosody/config/prosody.cfg.lua @@ -12,7 +12,6 @@ daemonize = false;  --  -- Good luck, and happy Jabbering! -  ---------- Server-wide settings ----------  -- Settings in this section apply to the whole server and are the default settings  -- for any virtual hosts @@ -25,70 +24,67 @@ admins = {"devi@chat.terminaldweller.com"}  -- Enable use of libevent for better performance under high load  -- For more information see: https://prosody.im/doc/libevent ---use_libevent = true +-- use_libevent = true  -- Prosody will always look in its source directory for modules, but  -- this option allows you to specify additional locations where Prosody  -- will look for modules first. For community modules, see https://modules.prosody.im/ ---plugin_paths = {} +-- plugin_paths = {}  -- This is the list of modules Prosody will load on startup.  -- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too.  -- Documentation for bundled modules can be found at: https://prosody.im/doc/modules  modules_enabled = { -        -- Generally required -                "roster"; -- Allow users to have a roster. Recommended ;) -                "saslauth"; -- Authentication for clients and servers. Recommended if you want to log in. -                "tls"; -- Add support for secure TLS on c2s/s2s connections -                "dialback"; -- s2s dialback support -                "disco"; -- Service discovery - -        -- Not essential, but recommended -                "carbons"; -- Keep multiple clients in sync -                "pep"; -- Enables users to publish their avatar, mood, activity, playing music and more -                "private"; -- Private XML storage (for room bookmarks, etc.) -                "blocklist"; -- Allow users to block communications with other users -                "vcard4"; -- User profiles (stored in PEP) -                "vcard_legacy"; -- Conversion between legacy vCard and PEP Avatar, vcard -                "limits"; -- Enable bandwidth limiting for XMPP connections - -        -- Nice to have -                "version"; -- Replies to server version requests -                "uptime"; -- Report how long server has been running -                "time"; -- Let others know the time here on this server -                "ping"; -- Replies to XMPP pings with pongs -                --"register"; -- Allow users to register on this server using a client and change passwords -                --"mam"; -- Store messages in an archive and allow users to access it -                --"csi_simple"; -- Simple Mobile optimizations - -        -- Admin interfaces -                "admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands -                --"admin_telnet"; -- Opens telnet console interface on localhost port 5582 - -        -- HTTP modules -                "bosh"; -- Enable BOSH clients, aka "Jabber over HTTP" -                --"websocket"; -- XMPP over WebSockets -                --"http_files"; -- Serve static files from a directory over HTTP - -        -- Other specific functionality -                --"groups"; -- Shared roster support -                --"server_contact_info"; -- Publish contact information for this service -                --"announce"; -- Send announcement to all online users -                --"welcome"; -- Welcome users who register accounts -                --"watchregistrations"; -- Alert admins of registrations -                --"motd"; -- Send a message to users when they log in -                --"legacyauth"; -- Legacy authentication. Only used by some old clients and bots. -                --"proxy65"; -- Enables a file transfer proxy service which clients behind NAT can use +    -- Generally required +    "roster", -- Allow users to have a roster. Recommended ;) +    "saslauth", -- Authentication for clients and servers. Recommended if you want to log in. +    "tls", -- Add support for secure TLS on c2s/s2s connections +    "dialback", -- s2s dialback support +    "disco", -- Service discovery +    -- Not essential, but recommended +    "carbons", -- Keep multiple clients in sync +    "pep", -- Enables users to publish their avatar, mood, activity, playing music and more +    "private", -- Private XML storage (for room bookmarks, etc.) +    "blocklist", -- Allow users to block communications with other users +    "vcard4", -- User profiles (stored in PEP) +    "vcard_legacy", -- Conversion between legacy vCard and PEP Avatar, vcard +    "limits", -- Enable bandwidth limiting for XMPP connections +    -- Nice to have +    "version", -- Replies to server version requests +    "uptime", -- Report how long server has been running +    "time", -- Let others know the time here on this server +    "ping", -- Replies to XMPP pings with pongs +    -- "register"; -- Allow users to register on this server using a client and change passwords +    -- "mam"; -- Store messages in an archive and allow users to access it +    -- "csi_simple"; -- Simple Mobile optimizations +    -- Admin interfaces +    "admin_adhoc", -- Allows administration via an XMPP client that supports ad-hoc commands +    -- "admin_telnet"; -- Opens telnet console interface on localhost port 5582 + +    -- HTTP modules +    "bosh" -- Enable BOSH clients, aka "Jabber over HTTP" +    -- "websocket"; -- XMPP over WebSockets +    -- "http_files"; -- Serve static files from a directory over HTTP + +    -- Other specific functionality +    -- "groups"; -- Shared roster support +    -- "server_contact_info"; -- Publish contact information for this service +    -- "announce"; -- Send announcement to all online users +    -- "welcome"; -- Welcome users who register accounts +    -- "watchregistrations"; -- Alert admins of registrations +    -- "motd"; -- Send a message to users when they log in +    -- "legacyauth"; -- Legacy authentication. Only used by some old clients and bots. +    -- "proxy65"; -- Enables a file transfer proxy service which clients behind NAT can use  }  -- These modules are auto-loaded, but should you want  -- to disable them then uncomment them here:  modules_disabled = { -        -- "offline"; -- Store offline messages -        -- "c2s"; -- Handle client connections -        -- "s2s"; -- Handle server-to-server connections -        -- "posix"; -- POSIX functionality, sends server to background, enables syslog, etc. +    -- "offline"; -- Store offline messages +    "c2s" -- Handle client connections +    -- "s2s"; -- Handle server-to-server connections +    -- "posix"; -- POSIX functionality, sends server to background, enables syslog, etc.  }  -- Disable account creation by default, for security @@ -114,23 +110,16 @@ s2s_secure_auth = false  -- certificates. They will be authenticated using DNS instead, even  -- when s2s_secure_auth is enabled. ---s2s_insecure_domains = { "insecure.example" } +-- s2s_insecure_domains = { "insecure.example" }  -- Even if you disable s2s_secure_auth, you can still require valid  -- certificates for some domains by specifying a list here. ---s2s_secure_domains = { "jabber.org" } +-- s2s_secure_domains = { "jabber.org" }  -- Enable rate limits for incoming client and server connections -limits = { -  c2s = { -    rate = "10kb/s"; -  }; -  s2sin = { -    rate = "30kb/s"; -  }; -} +limits = {c2s = {rate = "10kb/s"}, s2sin = {rate = "30kb/s"}}  -- Required for init scripts and prosodyctl  pidfile = "/var/run/prosody/prosody.pid" @@ -145,13 +134,12 @@ authentication = "internal_hashed"  -- through modules. An "sql" backend is included by default, but requires  -- additional dependencies. See https://prosody.im/doc/storage for more info. ---storage = "sql" -- Default is "internal" +-- storage = "sql" -- Default is "internal"  -- For the "sql" backend, you can uncomment *one* of the below to configure: ---sql = { driver = "SQLite3", database = "prosody.sqlite" } -- Default. 'database' is the filename. ---sql = { driver = "MySQL", database = "prosody", username = "prosody", password = "secret", host = "localhost" } ---sql = { driver = "PostgreSQL", database = "prosody", username = "prosody", password = "secret", host = "localhost" } - +-- sql = { driver = "SQLite3", database = "prosody.sqlite" } -- Default. 'database' is the filename. +-- sql = { driver = "MySQL", database = "prosody", username = "prosody", password = "secret", host = "localhost" } +-- sql = { driver = "PostgreSQL", database = "prosody", username = "prosody", password = "secret", host = "localhost" }  -- Archiving configuration  -- If mod_mam is enabled, Prosody will store a copy of every message. This @@ -166,9 +154,7 @@ archive_expires_after = "1w" -- Remove archived messages after 1 week  -- Logging configuration  -- For advanced logging see https://prosody.im/doc/logging -log = { -    {levels = {min = "info"}, to = "console"}; -} +log = {{levels = {min = "info"}, to = "console"}}  -- Uncomment to enable statistics  -- For more info see https://prosody.im/doc/statistics @@ -185,20 +171,20 @@ log = {  certificates = "certs"  -- HTTPS currently only supports a single certificate, specify it here: ---https_certificate = "/etc/prosody/certs/localhost.crt" +-- https_certificate = "/etc/prosody/certs/localhost.crt"  ----------- Virtual hosts -----------  -- You need to add a VirtualHost entry for each domain you wish Prosody to serve.  -- Settings under each VirtualHost entry apply *only* to that host.  VirtualHost "chat.terminaldweller.com" -        enabled = true -        ssl = { -                key = "/etc/letsencrypt/live/chat.terminaldweller.com/privkey.pem"; -                certificate = "/etc/letsencrypt/live/chat.terminaldweller.com/fullchain.pem"; -                } +enabled = true +ssl = { +    key = "/etc/letsencrypt/live/chat.terminaldweller.com/privkey.pem", +    certificate = "/etc/letsencrypt/live/chat.terminaldweller.com/fullchain.pem" +} ---VirtualHost "example.com" +-- VirtualHost "example.com"  --      certificate = "/path/to/example.crt"  ------ Components ------ @@ -208,9 +194,9 @@ VirtualHost "chat.terminaldweller.com"  ---Set up a MUC (multi-user chat) room server on conference.example.com:  Component "conference.chat.terminaldweller.com" "muc" -        restrict_room_creationi = "admin" +restrict_room_creationi = "admin"  --- Store MUC messages in an archive and allow users to access it ---modules_enabled = { "muc_mam" } +-- modules_enabled = { "muc_mam" }  ---Set up an external component (default component port is 5347)  -- @@ -218,5 +204,5 @@ Component "conference.chat.terminaldweller.com" "muc"  -- transports to other networks like ICQ, MSN and Yahoo. For more info  -- see: https://prosody.im/doc/components#adding_an_external_component  -- ---Component "gateway.example.com" +-- Component "gateway.example.com"  --      component_secret = "password" diff --git a/terminaldweller.com/searxng/Caddyfile b/terminaldweller.com/searxng/Caddyfile index be88221..7f16a1d 100644 --- a/terminaldweller.com/searxng/Caddyfile +++ b/terminaldweller.com/searxng/Caddyfile @@ -1,6 +1,7 @@  {    admin off    https_port 8081 +  http_port 8082  }  {$SEARXNG_HOSTNAME} { | 
