From f4fed2bc6339d6c1702ebf48570009cdff70c7cb Mon Sep 17 00:00:00 2001
From: Mid Favila <midfavila@sdf.org>
Date: Fri, 9 Jul 2021 20:28:46 +0000
Subject: [PATCH] Fork Community and musl Core, strip out many packages, fix
 FTP and HTTP sources, work on the README, etc.

---
 NOTES                                         |     7 +
 README                                        |    54 +-
 community-mod/2bwm/build                      |     4 +
 community-mod/2bwm/checksums                  |     1 +
 community-mod/2bwm/depends                    |     4 +
 community-mod/2bwm/sources                    |     1 +
 community-mod/2bwm/version                    |     1 +
 community-mod/9base/build                     |     6 +
 community-mod/9base/checksums                 |     1 +
 community-mod/9base/sources                   |     1 +
 community-mod/9base/version                   |     1 +
 community-mod/abduco/build                    |     4 +
 community-mod/abduco/checksums                |     1 +
 community-mod/abduco/sources                  |     1 +
 community-mod/abduco/version                  |     1 +
 community-mod/alsa-plugins/build              |     8 +
 community-mod/alsa-plugins/checksums          |     1 +
 community-mod/alsa-plugins/depends            |     2 +
 community-mod/alsa-plugins/sources            |     1 +
 community-mod/alsa-plugins/version            |     1 +
 community-mod/aria2/build                     |    13 +
 community-mod/aria2/checksums                 |     1 +
 community-mod/aria2/depends                   |     3 +
 community-mod/aria2/sources                   |     1 +
 community-mod/aria2/version                   |     1 +
 community-mod/autoconf-archive/build          |     7 +
 community-mod/autoconf-archive/checksums      |     1 +
 community-mod/autoconf-archive/sources        |     1 +
 community-mod/autoconf-archive/version        |     1 +
 community-mod/autoconf/build                  |     7 +
 community-mod/autoconf/checksums              |     1 +
 community-mod/autoconf/depends                |     2 +
 community-mod/autoconf/sources                |     1 +
 community-mod/autoconf/version                |     1 +
 community-mod/automake/build                  |     7 +
 community-mod/automake/checksums              |     1 +
 community-mod/automake/depends                |     2 +
 community-mod/automake/sources                |     1 +
 community-mod/automake/version                |     1 +
 community-mod/axel/build                      |     7 +
 community-mod/axel/checksums                  |     1 +
 community-mod/axel/depends                    |     1 +
 community-mod/axel/sources                    |     1 +
 community-mod/axel/version                    |     1 +
 community-mod/azpainter/build                 |     7 +
 community-mod/azpainter/checksums             |     1 +
 community-mod/azpainter/depends               |     7 +
 community-mod/azpainter/sources               |     1 +
 community-mod/azpainter/version               |     1 +
 community-mod/bash/build                      |    20 +
 community-mod/bash/checksums                  |    10 +
 community-mod/bash/depends                    |     2 +
 .../bash/patches/bash-5.1-parallel_make.patch |    15 +
 community-mod/bash/sources                    |    10 +
 community-mod/bash/version                    |     1 +
 community-mod/bdftopcf/build                  |     7 +
 community-mod/bdftopcf/checksums              |     1 +
 community-mod/bdftopcf/depends                |     2 +
 community-mod/bdftopcf/sources                |     1 +
 community-mod/bdftopcf/version                |     1 +
 community-mod/berry/build                     |     4 +
 community-mod/berry/checksums                 |     1 +
 community-mod/berry/depends                   |     3 +
 community-mod/berry/sources                   |     1 +
 community-mod/berry/version                   |     1 +
 community-mod/bind/build                      |    14 +
 community-mod/bind/checksums                  |     1 +
 community-mod/bind/depends                    |     9 +
 community-mod/bind/sources                    |     1 +
 community-mod/bind/version                    |     1 +
 community-mod/birch/build                     |     3 +
 community-mod/birch/depends                   |     1 +
 community-mod/birch/sources                   |     1 +
 community-mod/birch/version                   |     1 +
 community-mod/bitfetch/build                  |     4 +
 community-mod/bitfetch/checksums              |     1 +
 community-mod/bitfetch/depends                |     2 +
 community-mod/bitfetch/sources                |     1 +
 community-mod/bitfetch/version                |     1 +
 community-mod/bkeymaps/build                  |     4 +
 community-mod/bkeymaps/checksums              |     2 +
 community-mod/bkeymaps/post-install           |    13 +
 community-mod/bkeymaps/sources                |     2 +
 community-mod/bkeymaps/version                |     1 +
 community-mod/boehm-gc/build                  |     7 +
 community-mod/boehm-gc/checksums              |     1 +
 community-mod/boehm-gc/sources                |     1 +
 community-mod/boehm-gc/version                |     1 +
 community-mod/boost/build                     |    17 +
 community-mod/boost/checksums                 |     1 +
 community-mod/boost/depends                   |     2 +
 community-mod/boost/sources                   |     1 +
 community-mod/boost/version                   |     1 +
 community-mod/brotli/build                    |    12 +
 community-mod/brotli/checksums                |     1 +
 community-mod/brotli/depends                  |     1 +
 community-mod/brotli/sources                  |     1 +
 community-mod/brotli/version                  |     1 +
 community-mod/brownout/build                  |     3 +
 community-mod/brownout/checksums              |     1 +
 community-mod/brownout/depends                |     1 +
 community-mod/brownout/sources                |     1 +
 community-mod/brownout/version                |     1 +
 community-mod/bspwm/build                     |     4 +
 community-mod/bspwm/checksums                 |     1 +
 community-mod/bspwm/depends                   |     4 +
 community-mod/bspwm/sources                   |     1 +
 community-mod/bspwm/version                   |     1 +
 community-mod/bubblewrap/build                |    12 +
 community-mod/bubblewrap/checksums            |     2 +
 community-mod/bubblewrap/depends              |     1 +
 .../patches/realpath-workaround.patch         |    53 +
 community-mod/bubblewrap/sources              |     2 +
 community-mod/bubblewrap/version              |     1 +
 community-mod/calcurse/build                  |    15 +
 community-mod/calcurse/checksums              |     1 +
 community-mod/calcurse/depends                |     1 +
 community-mod/calcurse/sources                |     1 +
 community-mod/calcurse/version                |     1 +
 community-mod/ccrypt/build                    |     8 +
 community-mod/ccrypt/checksums                |     1 +
 community-mod/ccrypt/sources                  |     1 +
 community-mod/ccrypt/version                  |     1 +
 community-mod/cdrtools/build                  |    10 +
 community-mod/cdrtools/checksums              |     1 +
 community-mod/cdrtools/sources                |     1 +
 community-mod/cdrtools/version                |     1 +
 community-mod/cjson/build                     |     9 +
 community-mod/cjson/checksums                 |     1 +
 community-mod/cjson/sources                   |     1 +
 community-mod/cjson/version                   |     1 +
 community-mod/cloc/build                      |     3 +
 community-mod/cloc/checksums                  |     1 +
 community-mod/cloc/depends                    |     1 +
 community-mod/cloc/sources                    |     1 +
 community-mod/cloc/version                    |     1 +
 community-mod/cmus/build                      |     7 +
 community-mod/cmus/checksums                  |     1 +
 community-mod/cmus/depends                    |     1 +
 community-mod/cmus/sources                    |     1 +
 community-mod/cmus/version                    |     1 +
 community-mod/conky/build                     |    14 +
 community-mod/conky/checksums                 |     1 +
 community-mod/conky/depends                   |     8 +
 community-mod/conky/sources                   |     1 +
 community-mod/conky/version                   |     1 +
 community-mod/coreutils/build                 |     9 +
 community-mod/coreutils/checksums             |     1 +
 community-mod/coreutils/sources               |     1 +
 community-mod/coreutils/version               |     1 +
 community-mod/cproc/build                     |    10 +
 community-mod/cproc/depends                   |     1 +
 community-mod/cproc/sources                   |     1 +
 community-mod/cproc/version                   |     1 +
 community-mod/crosstool-ng-git/build          |    25 +
 community-mod/crosstool-ng-git/depends        |     9 +
 community-mod/crosstool-ng-git/sources        |     1 +
 community-mod/crosstool-ng-git/version        |     1 +
 community-mod/cryptsetup/build                |    13 +
 community-mod/cryptsetup/checksums            |     1 +
 community-mod/cryptsetup/depends              |     5 +
 community-mod/cryptsetup/sources              |     1 +
 community-mod/cryptsetup/version              |     1 +
 community-mod/ctags/build                     |     8 +
 community-mod/ctags/checksums                 |     1 +
 community-mod/ctags/sources                   |     1 +
 community-mod/ctags/version                   |     1 +
 community-mod/cwm/build                       |     4 +
 community-mod/cwm/depends                     |     3 +
 community-mod/cwm/sources                     |     1 +
 community-mod/cwm/version                     |     1 +
 community-mod/cyrus-sasl/build                |     9 +
 community-mod/cyrus-sasl/checksums            |     1 +
 community-mod/cyrus-sasl/depends              |     1 +
 community-mod/cyrus-sasl/sources              |     1 +
 community-mod/cyrus-sasl/version              |     1 +
 community-mod/darkhttpd/build                 |     5 +
 community-mod/darkhttpd/checksums             |     1 +
 community-mod/darkhttpd/sources               |     1 +
 community-mod/darkhttpd/version               |     1 +
 community-mod/dash/build                      |    10 +
 community-mod/dash/checksums                  |     1 +
 community-mod/dash/sources                    |     1 +
 community-mod/dash/version                    |     1 +
 community-mod/dejavu-ttf/build                |     5 +
 community-mod/dejavu-ttf/checksums            |     1 +
 community-mod/dejavu-ttf/post-install         |     3 +
 community-mod/dejavu-ttf/sources              |     1 +
 community-mod/dejavu-ttf/version              |     1 +
 community-mod/diffutils/build                 |     9 +
 community-mod/diffutils/checksums             |     1 +
 community-mod/diffutils/sources               |     1 +
 community-mod/diffutils/version               |     1 +
 community-mod/djvulibre/build                 |    10 +
 community-mod/djvulibre/checksums             |     1 +
 community-mod/djvulibre/sources               |     1 +
 community-mod/djvulibre/version               |     1 +
 community-mod/dmenu/build                     |     4 +
 community-mod/dmenu/checksums                 |     1 +
 community-mod/dmenu/depends                   |     3 +
 community-mod/dmenu/sources                   |     1 +
 community-mod/dmenu/version                   |     1 +
 community-mod/dmidecode/build                 |     4 +
 community-mod/dmidecode/checksums             |     1 +
 community-mod/dmidecode/sources               |     1 +
 community-mod/dmidecode/version               |     1 +
 community-mod/dosbox/build                    |     8 +
 community-mod/dosbox/checksums                |     1 +
 community-mod/dosbox/depends                  |    15 +
 community-mod/dosbox/sources                  |     1 +
 community-mod/dosbox/version                  |     1 +
 community-mod/dvtm/build                      |     3 +
 community-mod/dvtm/checksums                  |     1 +
 community-mod/dvtm/depends                    |     1 +
 community-mod/dvtm/sources                    |     1 +
 community-mod/dvtm/version                    |     1 +
 community-mod/dwm/build                       |    10 +
 community-mod/dwm/checksums                   |     1 +
 community-mod/dwm/depends                     |     2 +
 community-mod/dwm/sources                     |     1 +
 community-mod/dwm/version                     |     1 +
 community-mod/dzen/build                      |     9 +
 community-mod/dzen/depends                    |     1 +
 community-mod/dzen/sources                    |     1 +
 community-mod/dzen/version                    |     1 +
 community-mod/emacs/build                     |    32 +
 community-mod/emacs/checksums                 |     1 +
 community-mod/emacs/depends                   |    10 +
 community-mod/emacs/sources                   |     1 +
 community-mod/emacs/version                   |     1 +
 community-mod/es/build                        |    11 +
 community-mod/es/checksums                    |     2 +
 community-mod/es/patches/musl.patch           |    33 +
 community-mod/es/sources                      |     2 +
 community-mod/es/version                      |     1 +
 community-mod/evtest/build                    |     4 +
 community-mod/evtest/checksums                |     1 +
 community-mod/evtest/sources                  |     1 +
 community-mod/evtest/version                  |     1 +
 community-mod/execline/build                  |     8 +
 community-mod/execline/checksums              |     1 +
 community-mod/execline/depends                |     1 +
 community-mod/execline/sources                |     1 +
 community-mod/execline/version                |     1 +
 community-mod/exfatprogs/build                |    10 +
 community-mod/exfatprogs/checksums            |     1 +
 community-mod/exfatprogs/depends              |     2 +
 community-mod/exfatprogs/sources              |     1 +
 community-mod/exfatprogs/version              |     1 +
 community-mod/exiftool/build                  |     6 +
 community-mod/exiftool/checksums              |     1 +
 community-mod/exiftool/depends                |     1 +
 community-mod/exiftool/sources                |     1 +
 community-mod/exiftool/version                |     1 +
 community-mod/extra-cmake-modules/build       |     9 +
 community-mod/extra-cmake-modules/checksums   |     1 +
 community-mod/extra-cmake-modules/depends     |     1 +
 community-mod/extra-cmake-modules/sources     |     1 +
 community-mod/extra-cmake-modules/version     |     1 +
 community-mod/feh/build                       |     4 +
 community-mod/feh/checksums                   |     1 +
 community-mod/feh/depends                     |     6 +
 community-mod/feh/sources                     |     1 +
 community-mod/feh/version                     |     1 +
 community-mod/fftw/build                      |    10 +
 community-mod/fftw/checksums                  |     1 +
 community-mod/fftw/sources                    |     1 +
 community-mod/fftw/version                    |     1 +
 community-mod/file/build                      |     7 +
 community-mod/file/checksums                  |     1 +
 community-mod/file/depends                    |     1 +
 community-mod/file/sources                    |     1 +
 community-mod/file/version                    |     1 +
 community-mod/flac/build                      |    12 +
 community-mod/flac/checksums                  |     1 +
 community-mod/flac/depends                    |     2 +
 community-mod/flac/sources                    |     1 +
 community-mod/flac/version                    |     1 +
 community-mod/flashrom/build                  |    14 +
 community-mod/flashrom/checksums              |     1 +
 community-mod/flashrom/depends                |     2 +
 community-mod/flashrom/sources                |     1 +
 community-mod/flashrom/version                |     1 +
 community-mod/fltk/build                      |     8 +
 community-mod/fltk/checksums                  |     1 +
 community-mod/fltk/depends                    |    17 +
 community-mod/fltk/sources                    |     1 +
 community-mod/fltk/version                    |     1 +
 community-mod/fmt/build                       |    12 +
 community-mod/fmt/checksums                   |     1 +
 community-mod/fmt/sources                     |     1 +
 community-mod/fmt/version                     |     1 +
 community-mod/fortune/build                   |     5 +
 community-mod/fortune/checksums               |     3 +
 community-mod/fortune/files/kiss              |   638 +
 community-mod/fortune/sources                 |     3 +
 community-mod/fortune/version                 |     1 +
 community-mod/freeglut/build                  |    12 +
 community-mod/freeglut/checksums              |     2 +
 community-mod/freeglut/depends                |     6 +
 .../freeglut/patches/fno-common.patch         |    81 +
 community-mod/freeglut/sources                |     2 +
 community-mod/freeglut/version                |     1 +
 community-mod/fuse/build                      |    19 +
 community-mod/fuse/checksums                  |     1 +
 community-mod/fuse/depends                    |     1 +
 community-mod/fuse/sources                    |     1 +
 community-mod/fuse/version                    |     1 +
 community-mod/fuse2/build                     |    13 +
 community-mod/fuse2/checksums                 |     1 +
 community-mod/fuse2/sources                   |     1 +
 community-mod/fuse2/version                   |     1 +
 community-mod/gawk/build                      |     9 +
 community-mod/gawk/checksums                  |     1 +
 community-mod/gawk/sources                    |     1 +
 community-mod/gawk/version                    |     1 +
 community-mod/gdb/build                       |    20 +
 community-mod/gdb/checksums                   |     1 +
 community-mod/gdb/depends                     |     1 +
 community-mod/gdb/sources                     |     1 +
 community-mod/gdb/version                     |     1 +
 community-mod/ghostscript/build               |    11 +
 community-mod/ghostscript/checksums           |     1 +
 community-mod/ghostscript/sources             |     1 +
 community-mod/ghostscript/version             |     1 +
 community-mod/giblib/build                    |     7 +
 community-mod/giblib/checksums                |     1 +
 community-mod/giblib/depends                  |     2 +
 community-mod/giblib/sources                  |     1 +
 community-mod/giblib/version                  |     1 +
 community-mod/glew/build                      |     7 +
 community-mod/glew/checksums                  |     1 +
 community-mod/glew/depends                    |     1 +
 community-mod/glew/sources                    |     1 +
 community-mod/glew/version                    |     1 +
 community-mod/glib-networking/build           |    18 +
 community-mod/glib-networking/checksums       |     1 +
 community-mod/glib-networking/depends         |     4 +
 community-mod/glib-networking/sources         |     1 +
 community-mod/glib-networking/version         |     1 +
 community-mod/glorytun/build                  |     7 +
 community-mod/glorytun/checksums              |     1 +
 community-mod/glorytun/depends                |     2 +
 community-mod/glorytun/sources                |     1 +
 community-mod/glorytun/version                |     1 +
 community-mod/glu/build                       |     7 +
 community-mod/glu/checksums                   |     1 +
 community-mod/glu/depends                     |     1 +
 community-mod/glu/sources                     |     1 +
 community-mod/glu/version                     |     1 +
 community-mod/glxgears-git/build              |     5 +
 community-mod/glxgears-git/depends            |     3 +
 community-mod/glxgears-git/sources            |     1 +
 community-mod/glxgears-git/version            |     1 +
 community-mod/gnu-bc/build                    |    18 +
 community-mod/gnu-bc/checksums                |     1 +
 community-mod/gnu-bc/sources                  |     1 +
 community-mod/gnu-bc/version                  |     1 +
 community-mod/gnu-ed/build                    |     7 +
 community-mod/gnu-ed/checksums                |     1 +
 community-mod/gnu-ed/depends                  |     1 +
 community-mod/gnu-ed/sources                  |     1 +
 community-mod/gnu-ed/version                  |     1 +
 community-mod/gnu-findutils/build             |     9 +
 community-mod/gnu-findutils/checksums         |     1 +
 community-mod/gnu-findutils/sources           |     1 +
 community-mod/gnu-findutils/version           |     1 +
 community-mod/gnu-grep/build                  |    11 +
 community-mod/gnu-grep/checksums              |     1 +
 community-mod/gnu-grep/sources                |     1 +
 community-mod/gnu-grep/version                |     1 +
 community-mod/gnu-netcat/build                |    11 +
 community-mod/gnu-netcat/checksums            |     1 +
 community-mod/gnu-netcat/sources              |     1 +
 community-mod/gnu-netcat/version              |     1 +
 community-mod/gnu-sed/build                   |     9 +
 community-mod/gnu-sed/checksums               |     1 +
 community-mod/gnu-sed/sources                 |     1 +
 community-mod/gnu-sed/version                 |     1 +
 community-mod/gnu-tar/build                   |    12 +
 community-mod/gnu-tar/checksums               |     1 +
 community-mod/gnu-tar/sources                 |     1 +
 community-mod/gnu-tar/version                 |     1 +
 community-mod/gnupg2/build                    |    16 +
 community-mod/gnupg2/checksums                |     1 +
 community-mod/gnupg2/depends                  |     6 +
 community-mod/gnupg2/sources                  |     1 +
 community-mod/gnupg2/version                  |     1 +
 community-mod/gnuplot/build                   |     7 +
 community-mod/gnuplot/checksums               |     1 +
 community-mod/gnuplot/depends                 |     1 +
 community-mod/gnuplot/sources                 |     1 +
 community-mod/gnuplot/version                 |     1 +
 community-mod/gnutls/build                    |    13 +
 community-mod/gnutls/checksums                |     1 +
 community-mod/gnutls/depends                  |     2 +
 community-mod/gnutls/sources                  |     1 +
 community-mod/gnutls/version                  |     1 +
 community-mod/grabc/build                     |     5 +
 community-mod/grabc/checksums                 |     1 +
 community-mod/grabc/depends                   |     1 +
 community-mod/grabc/sources                   |     1 +
 community-mod/grabc/version                   |     1 +
 community-mod/groff/build                     |    17 +
 community-mod/groff/checksums                 |     2 +
 community-mod/groff/files/musl.patch          |    79 +
 community-mod/groff/sources                   |     2 +
 community-mod/groff/version                   |     1 +
 community-mod/gsl/build                       |     7 +
 community-mod/gsl/checksums                   |     1 +
 community-mod/gsl/sources                     |     1 +
 community-mod/gsl/version                     |     1 +
 community-mod/gst-plugins-base/build          |    16 +
 community-mod/gst-plugins-base/checksums      |     1 +
 community-mod/gst-plugins-base/depends        |    11 +
 community-mod/gst-plugins-base/sources        |     1 +
 community-mod/gst-plugins-base/version        |     1 +
 community-mod/gst-plugins/build               |    18 +
 community-mod/gst-plugins/checksums           |     4 +
 community-mod/gst-plugins/depends             |    22 +
 community-mod/gst-plugins/sources             |     4 +
 community-mod/gst-plugins/version             |     1 +
 community-mod/gstreamer/build                 |    16 +
 community-mod/gstreamer/checksums             |     1 +
 community-mod/gstreamer/depends               |     3 +
 community-mod/gstreamer/sources               |     1 +
 community-mod/gstreamer/version               |     1 +
 community-mod/gt5/build                       |     4 +
 community-mod/gt5/checksums                   |     1 +
 community-mod/gt5/sources                     |     1 +
 community-mod/gt5/version                     |     1 +
 community-mod/gumbo-parser/build              |     8 +
 community-mod/gumbo-parser/checksums          |     1 +
 community-mod/gumbo-parser/sources            |     1 +
 community-mod/gumbo-parser/version            |     1 +
 community-mod/hack/build                      |     4 +
 community-mod/hack/checksums                  |     1 +
 community-mod/hack/post-install               |     3 +
 community-mod/hack/sources                    |     1 +
 community-mod/hack/version                    |     1 +
 community-mod/harfbuzz-icu/build              |    23 +
 community-mod/harfbuzz-icu/checksums          |     1 +
 community-mod/harfbuzz-icu/depends            |     3 +
 community-mod/harfbuzz-icu/sources            |     1 +
 community-mod/harfbuzz-icu/version            |     1 +
 community-mod/herbe/build                     |     4 +
 community-mod/herbe/checksums                 |     1 +
 community-mod/herbe/depends                   |     2 +
 community-mod/herbe/sources                   |     1 +
 community-mod/herbe/version                   |     1 +
 community-mod/hsetroot/build                  |     6 +
 community-mod/hsetroot/checksums              |     1 +
 community-mod/hsetroot/depends                |     2 +
 community-mod/hsetroot/sources                |     1 +
 community-mod/hsetroot/version                |     1 +
 community-mod/hummingbird-git/build           |     8 +
 community-mod/hummingbird-git/checksums       |     1 +
 community-mod/hummingbird-git/sources         |     1 +
 community-mod/hummingbird-git/version         |     1 +
 community-mod/iana-etc/build                  |     5 +
 community-mod/iana-etc/checksums              |     2 +
 community-mod/iana-etc/files/protocols        |   135 +
 community-mod/iana-etc/files/services         | 11436 ++++++++++++++++
 community-mod/iana-etc/sources                |     2 +
 community-mod/iana-etc/version                |     1 +
 community-mod/icu/build                       |    13 +
 community-mod/icu/checksums                   |     1 +
 community-mod/icu/sources                     |     1 +
 community-mod/icu/version                     |     1 +
 community-mod/ii/build                        |     6 +
 community-mod/ii/checksums                    |     1 +
 community-mod/ii/sources                      |     1 +
 community-mod/ii/version                      |     1 +
 community-mod/imagemagick/build               |    18 +
 community-mod/imagemagick/checksums           |     1 +
 community-mod/imagemagick/depends             |     5 +
 community-mod/imagemagick/sources             |     1 +
 community-mod/imagemagick/version             |     1 +
 community-mod/imlib2/build                    |     9 +
 community-mod/imlib2/checksums                |     1 +
 community-mod/imlib2/depends                  |     9 +
 community-mod/imlib2/sources                  |     1 +
 community-mod/imlib2/version                  |     1 +
 community-mod/intel-media-driver/build        |    20 +
 community-mod/intel-media-driver/checksums    |     2 +
 community-mod/intel-media-driver/depends      |     3 +
 community-mod/intel-media-driver/sources      |     2 +
 community-mod/intel-media-driver/version      |     1 +
 community-mod/ioping/build                    |     4 +
 community-mod/ioping/checksums                |     1 +
 community-mod/ioping/sources                  |     1 +
 community-mod/ioping/version                  |     1 +
 community-mod/iosevka-nerd-fonts/build        |     6 +
 community-mod/iosevka-nerd-fonts/checksums    |     1 +
 community-mod/iosevka-nerd-fonts/sources      |     1 +
 community-mod/iosevka-nerd-fonts/version      |     1 +
 community-mod/iproute2/build                  |    17 +
 community-mod/iproute2/checksums              |     2 +
 community-mod/iproute2/depends                |     2 +
 .../0001-make-iproute2-fhs-compliant.patch    |   101 +
 community-mod/iproute2/sources                |     2 +
 community-mod/iproute2/version                |     1 +
 community-mod/iptables/build                  |    11 +
 community-mod/iptables/checksums              |     1 +
 community-mod/iptables/sources                |     1 +
 community-mod/iptables/version                |     1 +
 community-mod/iputils/build                   |    20 +
 community-mod/iputils/checksums               |     1 +
 community-mod/iputils/depends                 |     2 +
 community-mod/iputils/post-install            |     5 +
 community-mod/iputils/sources                 |     1 +
 community-mod/iputils/version                 |     1 +
 community-mod/irssi/build                     |    13 +
 community-mod/irssi/checksums                 |     1 +
 community-mod/irssi/depends                   |     4 +
 community-mod/irssi/sources                   |     1 +
 community-mod/irssi/version                   |     1 +
 community-mod/jansson/build                   |     8 +
 community-mod/jansson/checksums               |     1 +
 community-mod/jansson/sources                 |     1 +
 community-mod/jansson/version                 |     1 +
 community-mod/jbig2dec/build                  |     9 +
 community-mod/jbig2dec/checksums              |     1 +
 community-mod/jbig2dec/depends                |     4 +
 community-mod/jbig2dec/sources                |     1 +
 community-mod/jbig2dec/version                |     1 +
 community-mod/jq/build                        |     9 +
 community-mod/jq/checksums                    |     1 +
 community-mod/jq/sources                      |     1 +
 community-mod/jq/version                      |     1 +
 community-mod/json-c/build                    |    12 +
 community-mod/json-c/checksums                |     1 +
 community-mod/json-c/depends                  |     1 +
 community-mod/json-c/sources                  |     1 +
 community-mod/json-c/version                  |     1 +
 community-mod/keyutils/build                  |    13 +
 community-mod/keyutils/checksums              |     1 +
 community-mod/keyutils/sources                |     1 +
 community-mod/keyutils/version                |     1 +
 community-mod/kirc/build                      |     4 +
 community-mod/kirc/checksums                  |     1 +
 community-mod/kirc/patches/channel.patch      |    13 +
 community-mod/kirc/sources                    |     1 +
 community-mod/kirc/version                    |     1 +
 community-mod/kiss-encryption/build           |     3 +
 community-mod/kiss-encryption/checksums       |     1 +
 community-mod/kiss-encryption/sources         |     1 +
 community-mod/kiss-encryption/version         |     1 +
 community-mod/kmod/build                      |    14 +
 community-mod/kmod/checksums                  |     1 +
 community-mod/kmod/depends                    |     3 +
 community-mod/kmod/sources                    |     1 +
 community-mod/kmod/version                    |     1 +
 community-mod/lagrange/build                  |    10 +
 community-mod/lagrange/checksums              |     1 +
 community-mod/lagrange/depends                |     5 +
 community-mod/lagrange/sources                |     1 +
 community-mod/lagrange/version                |     1 +
 community-mod/lariza/build                    |     4 +
 community-mod/lariza/checksums                |     1 +
 community-mod/lariza/depends                  |     1 +
 community-mod/lariza/sources                  |     1 +
 community-mod/lariza/version                  |     1 +
 community-mod/less/build                      |     7 +
 community-mod/less/checksums                  |     1 +
 community-mod/less/depends                    |     1 +
 community-mod/less/sources                    |     1 +
 community-mod/less/version                    |     1 +
 community-mod/lesstif/build                   |     9 +
 community-mod/lesstif/checksums               |     1 +
 community-mod/lesstif/depends                 |     6 +
 community-mod/lesstif/sources                 |     1 +
 community-mod/lesstif/version                 |     1 +
 community-mod/libXslt/build                   |     1 +
 community-mod/libXslt/post-install            |     7 +
 community-mod/libXslt/version                 |     1 +
 community-mod/libaio/build                    |     4 +
 community-mod/libaio/checksums                |     1 +
 community-mod/libaio/sources                  |     1 +
 community-mod/libaio/version                  |     1 +
 community-mod/libarchive/build                |    15 +
 community-mod/libarchive/checksums            |     1 +
 community-mod/libarchive/depends              |     3 +
 community-mod/libarchive/sources              |     1 +
 community-mod/libarchive/version              |     1 +
 community-mod/libassuan/build                 |     7 +
 community-mod/libassuan/checksums             |     1 +
 community-mod/libassuan/depends               |     1 +
 community-mod/libassuan/sources               |     1 +
 community-mod/libassuan/version               |     1 +
 community-mod/libburn/build                   |     8 +
 community-mod/libburn/checksums               |     1 +
 community-mod/libburn/depends                 |     1 +
 community-mod/libburn/sources                 |     1 +
 community-mod/libburn/version                 |     1 +
 community-mod/libcap/build                    |    16 +
 community-mod/libcap/checksums                |     1 +
 community-mod/libcap/depends                  |     1 +
 community-mod/libcap/sources                  |     1 +
 community-mod/libcap/version                  |     1 +
 community-mod/libconfig/build                 |     8 +
 community-mod/libconfig/checksums             |     1 +
 community-mod/libconfig/sources               |     1 +
 community-mod/libconfig/version               |     1 +
 community-mod/libdvdcss/build                 |     7 +
 community-mod/libdvdcss/checksums             |     1 +
 community-mod/libdvdcss/sources               |     1 +
 community-mod/libdvdcss/version               |     1 +
 community-mod/libdvdread/build                |     7 +
 community-mod/libdvdread/checksums            |     1 +
 community-mod/libdvdread/sources              |     1 +
 community-mod/libdvdread/version              |     1 +
 community-mod/libedit/build                   |    11 +
 community-mod/libedit/checksums               |     1 +
 community-mod/libedit/depends                 |     1 +
 community-mod/libedit/sources                 |     1 +
 community-mod/libedit/version                 |     1 +
 community-mod/libev/build                     |    10 +
 community-mod/libev/checksums                 |     1 +
 community-mod/libev/sources                   |     1 +
 community-mod/libev/version                   |     1 +
 community-mod/libevent/build                  |     8 +
 community-mod/libevent/checksums              |     1 +
 community-mod/libevent/sources                |     1 +
 community-mod/libevent/version                |     1 +
 community-mod/libexif/build                   |     9 +
 community-mod/libexif/checksums               |     1 +
 community-mod/libexif/sources                 |     1 +
 community-mod/libexif/version                 |     1 +
 community-mod/libgcrypt/build                 |    10 +
 community-mod/libgcrypt/checksums             |     1 +
 community-mod/libgcrypt/depends               |     1 +
 community-mod/libgcrypt/sources               |     1 +
 community-mod/libgcrypt/version               |     1 +
 community-mod/libgmp/build                    |    11 +
 community-mod/libgmp/checksums                |     1 +
 community-mod/libgmp/depends                  |     1 +
 community-mod/libgmp/sources                  |     1 +
 community-mod/libgmp/version                  |     1 +
 community-mod/libgpg-error/build              |    10 +
 community-mod/libgpg-error/checksums          |     1 +
 community-mod/libgpg-error/sources            |     1 +
 community-mod/libgpg-error/version            |     1 +
 community-mod/libisoburn/build                |    12 +
 community-mod/libisoburn/checksums            |     1 +
 community-mod/libisoburn/depends              |     4 +
 community-mod/libisoburn/sources              |     1 +
 community-mod/libisoburn/version              |     1 +
 community-mod/libisofs/build                  |    10 +
 community-mod/libisofs/checksums              |     1 +
 community-mod/libisofs/depends                |     1 +
 community-mod/libisofs/sources                |     1 +
 community-mod/libisofs/version                |     1 +
 community-mod/libjpeg/build                   |     7 +
 community-mod/libjpeg/checksums               |     1 +
 community-mod/libjpeg/sources                 |     1 +
 community-mod/libjpeg/version                 |     1 +
 community-mod/libksba/build                   |     7 +
 community-mod/libksba/checksums               |     1 +
 community-mod/libksba/sources                 |     1 +
 community-mod/libksba/version                 |     1 +
 community-mod/libmad/build                    |     9 +
 community-mod/libmad/checksums                |     1 +
 community-mod/libmad/sources                  |     1 +
 community-mod/libmad/version                  |     1 +
 community-mod/libmediainfo/build              |    15 +
 community-mod/libmediainfo/checksums          |     1 +
 community-mod/libmediainfo/depends            |     2 +
 community-mod/libmediainfo/sources            |     1 +
 community-mod/libmediainfo/version            |     1 +
 community-mod/libmpc/build                    |     7 +
 community-mod/libmpc/checksums                |     1 +
 community-mod/libmpc/depends                  |     1 +
 community-mod/libmpc/sources                  |     1 +
 community-mod/libmpc/version                  |     1 +
 community-mod/libmpfr/build                   |     8 +
 community-mod/libmpfr/checksums               |     1 +
 community-mod/libmpfr/depends                 |     1 +
 community-mod/libmpfr/sources                 |     1 +
 community-mod/libmpfr/version                 |     1 +
 community-mod/libnghttp2/build                |    10 +
 community-mod/libnghttp2/checksums            |     1 +
 community-mod/libnghttp2/sources              |     1 +
 community-mod/libnghttp2/version              |     1 +
 community-mod/libnl/build                     |     9 +
 community-mod/libnl/checksums                 |     1 +
 community-mod/libnl/sources                   |     1 +
 community-mod/libnl/version                   |     1 +
 community-mod/libnpth/build                   |     7 +
 community-mod/libnpth/checksums               |     1 +
 community-mod/libnpth/sources                 |     1 +
 community-mod/libnpth/version                 |     1 +
 community-mod/libpcap/build                   |     7 +
 community-mod/libpcap/checksums               |     1 +
 community-mod/libpcap/sources                 |     1 +
 community-mod/libpcap/version                 |     1 +
 community-mod/libpsl/build                    |     7 +
 community-mod/libpsl/checksums                |     1 +
 community-mod/libpsl/depends                  |     2 +
 community-mod/libpsl/sources                  |     1 +
 community-mod/libpsl/version                  |     1 +
 community-mod/libseccomp/build                |     9 +
 community-mod/libseccomp/checksums            |     1 +
 community-mod/libseccomp/depends              |     1 +
 community-mod/libseccomp/sources              |     1 +
 community-mod/libseccomp/version              |     1 +
 community-mod/libsixel/build                  |     7 +
 community-mod/libsixel/checksums              |     1 +
 community-mod/libsixel/depends                |     2 +
 community-mod/libsixel/sources                |     1 +
 community-mod/libsixel/version                |     1 +
 community-mod/libsodium/build                 |     7 +
 community-mod/libsodium/checksums             |     1 +
 community-mod/libsodium/sources               |     1 +
 community-mod/libsodium/version               |     1 +
 community-mod/libsoup/build                   |    17 +
 community-mod/libsoup/checksums               |     1 +
 community-mod/libsoup/depends                 |     8 +
 community-mod/libsoup/sources                 |     1 +
 community-mod/libsoup/version                 |     1 +
 community-mod/libtasn1/build                  |     7 +
 community-mod/libtasn1/checksums              |     1 +
 community-mod/libtasn1/sources                |     1 +
 community-mod/libtasn1/version                |     1 +
 community-mod/libtermkey/build                |     6 +
 community-mod/libtermkey/checksums            |     2 +
 community-mod/libtermkey/depends              |     1 +
 .../patches/static-no-libtool.patch           |    40 +
 community-mod/libtermkey/sources              |     2 +
 community-mod/libtermkey/version              |     1 +
 community-mod/libtirpc/build                  |    10 +
 community-mod/libtirpc/checksums              |     1 +
 community-mod/libtirpc/sources                |     1 +
 community-mod/libtirpc/version                |     1 +
 community-mod/libtool/build                   |     7 +
 community-mod/libtool/checksums               |     1 +
 community-mod/libtool/depends                 |     2 +
 community-mod/libtool/sources                 |     1 +
 community-mod/libtool/version                 |     1 +
 community-mod/libtorrent/build                |     7 +
 community-mod/libtorrent/checksums            |     1 +
 community-mod/libtorrent/depends              |     1 +
 community-mod/libtorrent/sources              |     1 +
 community-mod/libtorrent/version              |     1 +
 community-mod/libunistring/build              |     7 +
 community-mod/libunistring/checksums          |     1 +
 community-mod/libunistring/sources            |     1 +
 community-mod/libunistring/version            |     1 +
 community-mod/libusb/build                    |     8 +
 community-mod/libusb/checksums                |     1 +
 community-mod/libusb/sources                  |     1 +
 community-mod/libusb/version                  |     1 +
 community-mod/libuv/build                     |    10 +
 community-mod/libuv/checksums                 |     1 +
 community-mod/libuv/depends                   |     1 +
 community-mod/libuv/sources                   |     1 +
 community-mod/libuv/version                   |     1 +
 community-mod/libvncserver/build              |    11 +
 community-mod/libvncserver/checksums          |     1 +
 community-mod/libvncserver/depends            |     1 +
 community-mod/libvncserver/sources            |     1 +
 community-mod/libvncserver/version            |     1 +
 community-mod/libxml2/build                   |    11 +
 community-mod/libxml2/checksums               |     1 +
 community-mod/libxml2/depends                 |     2 +
 community-mod/libxml2/sources                 |     1 +
 community-mod/libxml2/version                 |     1 +
 community-mod/libxslt/build                   |     7 +
 community-mod/libxslt/checksums               |     1 +
 community-mod/libxslt/depends                 |     2 +
 community-mod/libxslt/sources                 |     1 +
 community-mod/libxslt/version                 |     1 +
 community-mod/libyajl/build                   |     7 +
 community-mod/libyajl/checksums               |     1 +
 community-mod/libyajl/sources                 |     1 +
 community-mod/libyajl/version                 |     1 +
 community-mod/libzen/build                    |    12 +
 community-mod/libzen/checksums                |     1 +
 community-mod/libzen/depends                  |     2 +
 community-mod/libzen/sources                  |     1 +
 community-mod/libzen/version                  |     1 +
 community-mod/lilo/build                      |    34 +
 community-mod/lilo/checksums                  |     5 +
 community-mod/lilo/depends                    |     1 +
 community-mod/lilo/files/lilo.conf            |    19 +
 community-mod/lilo/patches/musl.patch         |    26 +
 community-mod/lilo/patches/x86_64.patch       |    44 +
 community-mod/lilo/sources                    |     5 +
 community-mod/lilo/version                    |     1 +
 community-mod/lld/build                       |    15 +
 community-mod/lld/checksums                   |     2 +
 community-mod/lld/depends                     |     1 +
 community-mod/lld/sources                     |     2 +
 community-mod/lld/version                     |     1 +
 community-mod/lm-sensors/build                |     9 +
 community-mod/lm-sensors/checksums            |     1 +
 community-mod/lm-sensors/depends              |     2 +
 community-mod/lm-sensors/sources              |     1 +
 community-mod/lm-sensors/version              |     1 +
 community-mod/lmdb/build                      |     6 +
 community-mod/lmdb/checksums                  |     1 +
 community-mod/lmdb/sources                    |     1 +
 community-mod/lmdb/version                    |     1 +
 community-mod/lsof/build                      |    15 +
 community-mod/lsof/checksums                  |     1 +
 community-mod/lsof/sources                    |     1 +
 community-mod/lsof/version                    |     1 +
 community-mod/lua/build                       |    12 +
 community-mod/lua/checksums                   |     2 +
 community-mod/lua/files/lua.pc                |    20 +
 community-mod/lua/sources                     |     2 +
 community-mod/lua/version                     |     1 +
 community-mod/luajit/build                    |     9 +
 community-mod/luajit/checksums                |     1 +
 community-mod/luajit/sources                  |     1 +
 community-mod/luajit/version                  |     1 +
 community-mod/lxappearance/build              |    24 +
 community-mod/lxappearance/checksums          |     1 +
 community-mod/lxappearance/depends            |     2 +
 community-mod/lxappearance/sources            |     1 +
 community-mod/lxappearance/version            |     1 +
 community-mod/lynx/build                      |    12 +
 community-mod/lynx/checksums                  |     1 +
 community-mod/lynx/depends                    |     3 +
 community-mod/lynx/sources                    |     1 +
 community-mod/lynx/version                    |     1 +
 community-mod/lz4/build                       |     6 +
 community-mod/lz4/checksums                   |     1 +
 community-mod/lz4/sources                     |     1 +
 community-mod/lz4/version                     |     1 +
 community-mod/lzo/build                       |     6 +
 community-mod/lzo/checksums                   |     1 +
 community-mod/lzo/sources                     |     1 +
 community-mod/lzo/version                     |     1 +
 community-mod/maim/build                      |    13 +
 community-mod/maim/checksums                  |     1 +
 community-mod/maim/depends                    |     5 +
 community-mod/maim/sources                    |     2 +
 community-mod/maim/version                    |     1 +
 community-mod/man-pages-posix/build           |     3 +
 community-mod/man-pages-posix/checksums       |     1 +
 community-mod/man-pages-posix/sources         |     1 +
 community-mod/man-pages-posix/version         |     1 +
 community-mod/man-pages/build                 |     3 +
 community-mod/man-pages/checksums             |     1 +
 community-mod/man-pages/sources               |     1 +
 community-mod/man-pages/version               |     1 +
 community-mod/mawk/build                      |    11 +
 community-mod/mawk/checksums                  |     1 +
 community-mod/mawk/sources                    |     1 +
 community-mod/mawk/version                    |     1 +
 community-mod/mblaze/build                    |     4 +
 community-mod/mblaze/checksums                |     1 +
 community-mod/mblaze/sources                  |     1 +
 community-mod/mblaze/version                  |     1 +
 community-mod/mdadm/build                     |     7 +
 community-mod/mdadm/checksums                 |     1 +
 community-mod/mdadm/sources                   |     1 +
 community-mod/mdadm/version                   |     1 +
 community-mod/mediainfo/build                 |    11 +
 community-mod/mediainfo/checksums             |     1 +
 community-mod/mediainfo/depends               |     1 +
 community-mod/mediainfo/sources               |     1 +
 community-mod/mediainfo/version               |     1 +
 community-mod/mg/build                        |     8 +
 community-mod/mg/checksums                    |     1 +
 community-mod/mg/depends                      |     1 +
 community-mod/mg/sources                      |     1 +
 community-mod/mg/version                      |     1 +
 community-mod/mksh/build                      |     5 +
 community-mod/mksh/checksums                  |     1 +
 community-mod/mksh/sources                    |     1 +
 community-mod/mksh/version                    |     1 +
 community-mod/most/build                      |     8 +
 community-mod/most/checksums                  |     1 +
 community-mod/most/depends                    |     1 +
 community-mod/most/sources                    |     1 +
 community-mod/most/version                    |     1 +
 community-mod/msmtp/build                     |     9 +
 community-mod/msmtp/checksums                 |     1 +
 community-mod/msmtp/depends                   |     2 +
 community-mod/msmtp/sources                   |     1 +
 community-mod/msmtp/version                   |     1 +
 community-mod/mutt/build                      |    15 +
 community-mod/mutt/checksums                  |     1 +
 community-mod/mutt/depends                    |     4 +
 community-mod/mutt/sources                    |     1 +
 community-mod/mutt/version                    |     1 +
 community-mod/nano/build                      |     8 +
 community-mod/nano/checksums                  |     1 +
 community-mod/nano/depends                    |     3 +
 community-mod/nano/sources                    |     1 +
 community-mod/nano/version                    |     1 +
 community-mod/nawk-git/build                  |     7 +
 community-mod/nawk-git/checksums              |     1 +
 community-mod/nawk-git/sources                |     1 +
 community-mod/nawk-git/version                |     1 +
 community-mod/ncdu/build                      |     7 +
 community-mod/ncdu/checksums                  |     1 +
 community-mod/ncdu/depends                    |     1 +
 community-mod/ncdu/sources                    |     1 +
 community-mod/ncdu/version                    |     1 +
 community-mod/neofetch/build                  |     3 +
 community-mod/neofetch/checksums              |     1 +
 community-mod/neofetch/depends                |     1 +
 community-mod/neofetch/sources                |     1 +
 community-mod/neofetch/version                |     1 +
 community-mod/neomutt/build                   |    29 +
 community-mod/neomutt/checksums               |     3 +
 community-mod/neomutt/depends                 |     4 +
 community-mod/neomutt/files/neomutt.1         |   589 +
 community-mod/neomutt/files/neomuttrc.5       |  9330 +++++++++++++
 community-mod/neomutt/post-install            |     5 +
 community-mod/neomutt/sources                 |     3 +
 community-mod/neomutt/version                 |     1 +
 community-mod/neovim/build                    |    12 +
 community-mod/neovim/checksums                |     1 +
 community-mod/neovim/depends                  |     3 +
 community-mod/neovim/sources                  |     1 +
 community-mod/neovim/version                  |     1 +
 community-mod/nettle/build                    |    11 +
 community-mod/nettle/checksums                |     1 +
 community-mod/nettle/sources                  |     1 +
 community-mod/nettle/version                  |     1 +
 community-mod/nfs-utils/build                 |    14 +
 community-mod/nfs-utils/checksums             |     1 +
 community-mod/nfs-utils/depends               |     2 +
 community-mod/nfs-utils/sources               |     1 +
 community-mod/nfs-utils/version               |     1 +
 community-mod/nmap/build                      |     8 +
 community-mod/nmap/checksums                  |     1 +
 community-mod/nmap/sources                    |     1 +
 community-mod/nmap/version                    |     1 +
 community-mod/nss/build                       |    49 +
 community-mod/nss/checksums                   |     1 +
 community-mod/nss/depends                     |     4 +
 community-mod/nss/sources                     |     1 +
 community-mod/nss/version                     |     1 +
 community-mod/nvme-cli/build                  |    16 +
 community-mod/nvme-cli/checksums              |     1 +
 community-mod/nvme-cli/depends                |     2 +
 community-mod/nvme-cli/sources                |     1 +
 community-mod/nvme-cli/version                |     1 +
 community-mod/oath-toolkit/build              |     8 +
 community-mod/oath-toolkit/checksums          |     1 +
 community-mod/oath-toolkit/depends            |     2 +
 community-mod/oath-toolkit/sources            |     1 +
 community-mod/oath-toolkit/version            |     1 +
 community-mod/oed/build                       |     9 +
 community-mod/oed/checksums                   |     1 +
 community-mod/oed/sources                     |     1 +
 community-mod/oed/version                     |     1 +
 community-mod/oksh/build                      |    12 +
 community-mod/oksh/checksums                  |     1 +
 community-mod/oksh/depends                    |     1 +
 community-mod/oksh/post-install               |     4 +
 community-mod/oksh/sources                    |     1 +
 community-mod/oksh/version                    |     1 +
 community-mod/openjpeg2/build                 |    12 +
 community-mod/openjpeg2/checksums             |     1 +
 community-mod/openjpeg2/depends               |     5 +
 community-mod/openjpeg2/sources               |     1 +
 community-mod/openjpeg2/version               |     1 +
 community-mod/openvpn/build                   |    14 +
 community-mod/openvpn/checksums               |     1 +
 community-mod/openvpn/depends                 |     2 +
 community-mod/openvpn/sources                 |     1 +
 community-mod/openvpn/version                 |     1 +
 community-mod/optipng/build                   |     9 +
 community-mod/optipng/checksums               |     1 +
 community-mod/optipng/depends                 |     2 +
 community-mod/optipng/sources                 |     1 +
 community-mod/optipng/version                 |     1 +
 community-mod/p11-kit/build                   |    11 +
 community-mod/p11-kit/checksums               |     1 +
 community-mod/p11-kit/depends                 |     2 +
 community-mod/p11-kit/sources                 |     1 +
 community-mod/p11-kit/version                 |     1 +
 community-mod/patch/build                     |     9 +
 community-mod/patch/checksums                 |     1 +
 community-mod/patch/sources                   |     1 +
 community-mod/patch/version                   |     1 +
 community-mod/pciutils/build                  |    20 +
 community-mod/pciutils/checksums              |     2 +
 community-mod/pciutils/depends                |     1 +
 community-mod/pciutils/sources                |     2 +
 community-mod/pciutils/version                |     1 +
 community-mod/pcre/build                      |     9 +
 community-mod/pcre/checksums                  |     1 +
 community-mod/pcre/sources                    |     1 +
 community-mod/pcre/version                    |     1 +
 community-mod/pcre2/build                     |    12 +
 community-mod/pcre2/checksums                 |     1 +
 community-mod/pcre2/sources                   |     1 +
 community-mod/pcre2/version                   |     1 +
 community-mod/pfetch/build                    |     3 +
 community-mod/pfetch/checksums                |     1 +
 community-mod/pfetch/sources                  |     1 +
 community-mod/pfetch/version                  |     1 +
 community-mod/picom/build                     |    12 +
 community-mod/picom/checksums                 |     1 +
 community-mod/picom/depends                   |     8 +
 community-mod/picom/sources                   |     1 +
 community-mod/picom/version                   |     1 +
 community-mod/pkcs11-helper/build             |     7 +
 community-mod/pkcs11-helper/checksums         |     1 +
 community-mod/pkcs11-helper/depends           |     1 +
 community-mod/pkcs11-helper/sources           |     1 +
 community-mod/pkcs11-helper/version           |     1 +
 community-mod/poppler-data/build              |     3 +
 community-mod/poppler-data/checksums          |     1 +
 community-mod/poppler-data/sources            |     1 +
 community-mod/poppler-data/version            |     1 +
 community-mod/poppler/build                   |    14 +
 community-mod/poppler/checksums               |     1 +
 community-mod/poppler/depends                 |     4 +
 community-mod/poppler/sources                 |     1 +
 community-mod/poppler/version                 |     1 +
 community-mod/popt/build                      |     7 +
 community-mod/popt/checksums                  |     1 +
 community-mod/popt/sources                    |     1 +
 community-mod/popt/version                    |     1 +
 community-mod/postgresql/build                |    22 +
 community-mod/postgresql/checksums            |     3 +
 community-mod/postgresql/depends              |     5 +
 community-mod/postgresql/files/postgresql.run |    27 +
 .../postgresql/files/postgresqld.conf         |    17 +
 community-mod/postgresql/post-install         |     7 +
 community-mod/postgresql/sources              |     3 +
 community-mod/postgresql/version              |     1 +
 community-mod/procps-ng/build                 |    14 +
 community-mod/procps-ng/checksums             |     1 +
 community-mod/procps-ng/depends               |     1 +
 community-mod/procps-ng/sources               |     1 +
 community-mod/procps-ng/version               |     1 +
 community-mod/python2/build                   |    28 +
 community-mod/python2/checksums               |     2 +
 community-mod/python2/depends                 |     3 +
 .../python2/patches/python2-always-pip.patch  |    13 +
 community-mod/python2/sources                 |     2 +
 community-mod/python2/version                 |     1 +
 community-mod/qbe/build                       |     4 +
 community-mod/qbe/sources                     |     1 +
 community-mod/qbe/version                     |     1 +
 community-mod/qemu/build                      |    49 +
 community-mod/qemu/checksums                  |     5 +
 community-mod/qemu/depends                    |     9 +
 .../qemu/patches/001-sigtrm-max.patch         |    37 +
 community-mod/qemu/patches/002-syscall.patch  |    28 +
 .../qemu/patches/CVE-2021-20255.patch         |    43 +
 .../qemu/patches/CVE-2021-3527.patch          |   205 +
 community-mod/qemu/sources                    |     5 +
 community-mod/qemu/version                    |     1 +
 community-mod/qpdf/build                      |    10 +
 community-mod/qpdf/checksums                  |     1 +
 community-mod/qpdf/depends                    |     2 +
 community-mod/qpdf/sources                    |     1 +
 community-mod/qpdf/version                    |     1 +
 community-mod/qrencode/build                  |     7 +
 community-mod/qrencode/checksums              |     1 +
 community-mod/qrencode/depends                |     2 +
 community-mod/qrencode/sources                |     1 +
 community-mod/qrencode/version                |     1 +
 community-mod/radare2/build                   |     8 +
 community-mod/radare2/checksums               |     1 +
 community-mod/radare2/sources                 |     1 +
 community-mod/radare2/version                 |     1 +
 community-mod/rdrview/build                   |     4 +
 community-mod/rdrview/depends                 |     3 +
 community-mod/rdrview/sources                 |     1 +
 community-mod/rdrview/version                 |     1 +
 community-mod/readline/build                  |     9 +
 community-mod/readline/checksums              |     1 +
 community-mod/readline/depends                |     1 +
 community-mod/readline/sources                |     1 +
 community-mod/readline/version                |     1 +
 community-mod/retrogram-rtlsdr/build          |     5 +
 community-mod/retrogram-rtlsdr/checksums      |     1 +
 community-mod/retrogram-rtlsdr/depends        |     1 +
 community-mod/retrogram-rtlsdr/sources        |     1 +
 community-mod/retrogram-rtlsdr/version        |     1 +
 community-mod/rpcsvc-proto/build              |     8 +
 community-mod/rpcsvc-proto/checksums          |     1 +
 community-mod/rpcsvc-proto/sources            |     1 +
 community-mod/rpcsvc-proto/version            |     1 +
 community-mod/rtorrent/build                  |     7 +
 community-mod/rtorrent/checksums              |     1 +
 community-mod/rtorrent/depends                |     1 +
 community-mod/rtorrent/sources                |     1 +
 community-mod/rtorrent/version                |     1 +
 community-mod/ruby/build                      |     9 +
 community-mod/ruby/checksums                  |     1 +
 community-mod/ruby/depends                    |     2 +
 community-mod/ruby/sources                    |     1 +
 community-mod/ruby/version                    |     1 +
 community-mod/s6-linux-init/build             |    14 +
 community-mod/s6-linux-init/checksums         |     1 +
 community-mod/s6-linux-init/depends           |     3 +
 community-mod/s6-linux-init/post-install      |     7 +
 community-mod/s6-linux-init/sources           |     1 +
 community-mod/s6-linux-init/version           |     1 +
 community-mod/s6-rc/build                     |     8 +
 community-mod/s6-rc/checksums                 |     1 +
 community-mod/s6-rc/depends                   |     3 +
 community-mod/s6-rc/sources                   |     1 +
 community-mod/s6-rc/version                   |     1 +
 community-mod/s6/build                        |     9 +
 community-mod/s6/checksums                    |     1 +
 community-mod/s6/depends                      |     2 +
 community-mod/s6/sources                      |     1 +
 community-mod/s6/version                      |     1 +
 community-mod/sbase/build                     |    10 +
 community-mod/sbase/checksums                 |     1 +
 .../sbase/patches/tar-dash-remove.patch       |    29 +
 community-mod/sbase/sources                   |     2 +
 community-mod/sbase/version                   |     1 +
 community-mod/sc-im/build                     |     9 +
 community-mod/sc-im/checksums                 |     1 +
 community-mod/sc-im/depends                   |     2 +
 community-mod/sc-im/sources                   |     1 +
 community-mod/sc-im/version                   |     1 +
 community-mod/sc/build                        |    12 +
 community-mod/sc/checksums                    |     1 +
 community-mod/sc/depends                      |     1 +
 community-mod/sc/sources                      |     1 +
 community-mod/sc/version                      |     1 +
 community-mod/scdoc/build                     |     4 +
 community-mod/scdoc/checksums                 |     1 +
 community-mod/scdoc/sources                   |     1 +
 community-mod/scdoc/version                   |     1 +
 community-mod/screen/build                    |     7 +
 community-mod/screen/checksums                |     1 +
 community-mod/screen/sources                  |     1 +
 community-mod/screen/version                  |     1 +
 community-mod/scroll/build                    |     4 +
 community-mod/scroll/checksums                |     1 +
 community-mod/scroll/sources                  |     1 +
 community-mod/scroll/version                  |     1 +
 community-mod/scrot/build                     |     8 +
 community-mod/scrot/checksums                 |     1 +
 community-mod/scrot/depends                   |     1 +
 community-mod/scrot/sources                   |     1 +
 community-mod/scrot/version                   |     1 +
 community-mod/sct/build                       |     5 +
 community-mod/sct/checksums                   |     1 +
 community-mod/sct/depends                     |     6 +
 community-mod/sct/sources                     |     1 +
 community-mod/sct/version                     |     1 +
 community-mod/sdcv/build                      |    14 +
 community-mod/sdcv/checksums                  |     1 +
 community-mod/sdcv/depends                    |     3 +
 community-mod/sdcv/sources                    |     1 +
 community-mod/sdcv/version                    |     1 +
 community-mod/sdl/build                       |    11 +
 community-mod/sdl/checksums                   |     1 +
 community-mod/sdl/depends                     |     1 +
 community-mod/sdl/sources                     |     1 +
 community-mod/sdl/version                     |     1 +
 community-mod/sdl2/build                      |     7 +
 community-mod/sdl2/checksums                  |     1 +
 community-mod/sdl2/depends                    |     1 +
 community-mod/sdl2/sources                    |     1 +
 community-mod/sdl2/version                    |     1 +
 community-mod/seatd/build                     |    17 +
 community-mod/seatd/checksums                 |     2 +
 community-mod/seatd/depends                   |     1 +
 community-mod/seatd/files/run                 |     5 +
 community-mod/seatd/sources                   |     2 +
 community-mod/seatd/version                   |     1 +
 community-mod/secret/build                    |     3 +
 community-mod/secret/checksums                |     3 +
 community-mod/secret/sources                  |     3 +
 community-mod/secret/version                  |     1 +
 community-mod/sed-i/build                     |     3 +
 community-mod/sed-i/checksums                 |     1 +
 community-mod/sed-i/post-install              |     3 +
 community-mod/sed-i/sources                   |     1 +
 community-mod/sed-i/version                   |     1 +
 community-mod/setroot/build                   |     4 +
 community-mod/setroot/checksums               |     1 +
 community-mod/setroot/depends                 |     2 +
 community-mod/setroot/sources                 |     1 +
 community-mod/setroot/version                 |     1 +
 community-mod/sfeed/build                     |     8 +
 community-mod/sfeed/checksums                 |     1 +
 community-mod/sfeed/depends                   |     1 +
 community-mod/sfeed/sources                   |     1 +
 community-mod/sfeed/version                   |     1 +
 community-mod/sfeed_curses/build              |     8 +
 community-mod/sfeed_curses/checksums          |     1 +
 community-mod/sfeed_curses/depends            |     1 +
 community-mod/sfeed_curses/sources            |     1 +
 community-mod/sfeed_curses/version            |     1 +
 community-mod/sgt-puzzles/build               |    11 +
 community-mod/sgt-puzzles/checksums           |     1 +
 community-mod/sgt-puzzles/depends             |     2 +
 community-mod/sgt-puzzles/sources             |     1 +
 community-mod/sgt-puzzles/version             |     1 +
 community-mod/shadow/build                    |    22 +
 community-mod/shadow/checksums                |     1 +
 community-mod/shadow/sources                  |     1 +
 community-mod/shadow/version                  |     1 +
 community-mod/shellcheck-bin/build            |     3 +
 community-mod/shellcheck-bin/checksums        |     1 +
 community-mod/shellcheck-bin/sources          |     1 +
 community-mod/shellcheck-bin/version          |     1 +
 community-mod/shinit/build                    |     7 +
 community-mod/shinit/checksums                |     1 +
 community-mod/shinit/sources                  |     1 +
 community-mod/shinit/version                  |     1 +
 community-mod/sinit/build                     |     9 +
 community-mod/sinit/checksums                 |     5 +
 community-mod/sinit/depends                   |     1 +
 community-mod/sinit/files/config.h            |     3 +
 community-mod/sinit/files/poweroff            |     2 +
 community-mod/sinit/files/reboot              |     2 +
 .../sinit/files/sinit-launch-services.boot    |    10 +
 community-mod/sinit/post-install              |    25 +
 community-mod/sinit/sources                   |     5 +
 community-mod/sinit/version                   |     1 +
 community-mod/skalibs/build                   |     8 +
 community-mod/skalibs/checksums               |     1 +
 community-mod/skalibs/sources                 |     1 +
 community-mod/skalibs/version                 |     1 +
 community-mod/slang/build                     |     8 +
 community-mod/slang/checksums                 |     1 +
 community-mod/slang/depends                   |     1 +
 community-mod/slang/sources                   |     1 +
 community-mod/slang/version                   |     1 +
 community-mod/slock/build                     |     4 +
 community-mod/slock/checksums                 |     1 +
 community-mod/slock/depends                   |     1 +
 community-mod/slock/sources                   |     1 +
 community-mod/slock/version                   |     1 +
 community-mod/slop/build                      |    13 +
 community-mod/slop/checksums                  |     2 +
 community-mod/slop/depends                    |     1 +
 community-mod/slop/sources                    |     2 +
 community-mod/slop/version                    |     1 +
 community-mod/squashfs-tools/build            |     8 +
 community-mod/squashfs-tools/checksums        |     1 +
 community-mod/squashfs-tools/depends          |     1 +
 community-mod/squashfs-tools/sources          |     1 +
 community-mod/squashfs-tools/version          |     1 +
 community-mod/sshfs/build                     |    19 +
 community-mod/sshfs/checksums                 |     1 +
 community-mod/sshfs/depends                   |     3 +
 community-mod/sshfs/sources                   |     1 +
 community-mod/sshfs/version                   |     1 +
 community-mod/ssu/build                       |     9 +
 community-mod/ssu/checksums                   |     1 +
 community-mod/ssu/post-install                |     4 +
 community-mod/ssu/sources                     |     1 +
 community-mod/ssu/version                     |     1 +
 community-mod/sx/build                        |     3 +
 community-mod/sx/checksums                    |     1 +
 community-mod/sx/depends                      |     2 +
 community-mod/sx/sources                      |     1 +
 community-mod/sx/version                      |     1 +
 community-mod/sxhkd/build                     |     4 +
 community-mod/sxhkd/checksums                 |     1 +
 community-mod/sxhkd/depends                   |     2 +
 community-mod/sxhkd/sources                   |     1 +
 community-mod/sxhkd/version                   |     1 +
 community-mod/sxiv/build                      |     3 +
 community-mod/sxiv/checksums                  |     1 +
 community-mod/sxiv/depends                    |     3 +
 community-mod/sxiv/sources                    |     1 +
 community-mod/sxiv/version                    |     1 +
 community-mod/sysmgr/build                    |     8 +
 community-mod/sysmgr/checksums                |     3 +
 community-mod/sysmgr/files/respawn            |    27 +
 community-mod/sysmgr/files/sysmgr.boot        |     1 +
 .../sysmgr/files/sysmgr.pre.shutdown          |     4 +
 community-mod/sysmgr/post-install             |     9 +
 community-mod/sysmgr/sources                  |     4 +
 community-mod/sysmgr/version                  |     1 +
 community-mod/tabbed/build                    |    10 +
 community-mod/tabbed/checksums                |     2 +
 community-mod/tabbed/depends                  |     4 +
 .../tabbed/files/tabbed-0.6-xft.diff          |   233 +
 community-mod/tabbed/sources                  |     2 +
 community-mod/tabbed/version                  |     1 +
 community-mod/tcc/build                       |     9 +
 community-mod/tcc/checksums                   |     1 +
 community-mod/tcc/sources                     |     1 +
 community-mod/tcc/version                     |     1 +
 community-mod/tcpdump/build                   |    10 +
 community-mod/tcpdump/checksums               |     1 +
 community-mod/tcpdump/depends                 |     1 +
 community-mod/tcpdump/sources                 |     1 +
 community-mod/tcpdump/version                 |     1 +
 community-mod/tdb/build                       |     7 +
 community-mod/tdb/checksums                   |     1 +
 community-mod/tdb/depends                     |     1 +
 community-mod/tdb/sources                     |     1 +
 community-mod/tdb/version                     |     1 +
 community-mod/tig/build                       |     8 +
 community-mod/tig/checksums                   |     1 +
 community-mod/tig/depends                     |     3 +
 community-mod/tig/sources                     |     1 +
 community-mod/tig/version                     |     1 +
 community-mod/tiv/build                       |     7 +
 community-mod/tiv/checksums                   |     1 +
 community-mod/tiv/depends                     |     1 +
 community-mod/tiv/sources                     |     1 +
 community-mod/tiv/version                     |     1 +
 community-mod/tmux/build                      |     7 +
 community-mod/tmux/checksums                  |     1 +
 community-mod/tmux/depends                    |     2 +
 community-mod/tmux/sources                    |     1 +
 community-mod/tmux/version                    |     1 +
 community-mod/tor/build                       |    12 +
 community-mod/tor/checksums                   |     2 +
 community-mod/tor/depends                     |     3 +
 community-mod/tor/files/tor.run               |     2 +
 community-mod/tor/sources                     |     2 +
 community-mod/tor/version                     |     1 +
 community-mod/torsocks/build                  |     8 +
 community-mod/torsocks/checksums              |     1 +
 community-mod/torsocks/depends                |     3 +
 community-mod/torsocks/sources                |     1 +
 community-mod/torsocks/version                |     1 +
 community-mod/transmission/build              |    16 +
 community-mod/transmission/checksums          |     1 +
 community-mod/transmission/depends            |     3 +
 community-mod/transmission/sources            |     1 +
 community-mod/transmission/version            |     1 +
 community-mod/tree/build                      |     7 +
 community-mod/tree/checksums                  |     1 +
 community-mod/tree/sources                    |     1 +
 community-mod/tree/version                    |     1 +
 community-mod/tty-clock/build                 |     6 +
 community-mod/tty-clock/checksums             |     1 +
 community-mod/tty-clock/depends               |     1 +
 community-mod/tty-clock/sources               |     1 +
 community-mod/tty-clock/version               |     1 +
 community-mod/ubase/build                     |    17 +
 community-mod/ubase/checksums                 |     2 +
 ...4b156360ce4a18e4a3897f883b663771ba24.patch |    70 +
 community-mod/ubase/patches/fix-mount.patch   |    12 +
 community-mod/ubase/sources                   |     3 +
 community-mod/ubase/version                   |     1 +
 community-mod/unifont/build                   |     4 +
 community-mod/unifont/checksums               |     1 +
 community-mod/unifont/sources                 |     1 +
 community-mod/unifont/version                 |     1 +
 community-mod/urlview/build                   |    34 +
 community-mod/urlview/checksums               |     2 +
 community-mod/urlview/depends                 |     4 +
 community-mod/urlview/sources                 |     2 +
 community-mod/urlview/version                 |     1 +
 community-mod/usbutils/build                  |     9 +
 community-mod/usbutils/checksums              |     1 +
 community-mod/usbutils/depends                |     3 +
 community-mod/usbutils/sources                |     1 +
 community-mod/usbutils/version                |     1 +
 community-mod/uthash/build                    |     4 +
 community-mod/uthash/checksums                |     1 +
 community-mod/uthash/sources                  |     1 +
 community-mod/uthash/version                  |     1 +
 community-mod/webkit2gtk/build                |    52 +
 community-mod/webkit2gtk/checksums            |     1 +
 community-mod/webkit2gtk/depends              |    16 +
 community-mod/webkit2gtk/sources              |     1 +
 community-mod/webkit2gtk/version              |     1 +
 community-mod/weechat/build                   |    19 +
 community-mod/weechat/checksums               |     1 +
 community-mod/weechat/depends                 |     6 +
 community-mod/weechat/sources                 |     1 +
 community-mod/weechat/version                 |     1 +
 community-mod/wget/build                      |     9 +
 community-mod/wget/checksums                  |     1 +
 community-mod/wget/depends                    |     1 +
 community-mod/wget/sources                    |     1 +
 community-mod/wget/version                    |     1 +
 community-mod/wireguard-tools/build           |     6 +
 community-mod/wireguard-tools/checksums       |     1 +
 community-mod/wireguard-tools/sources         |     1 +
 community-mod/wireguard-tools/version         |     1 +
 community-mod/x11vnc/build                    |    12 +
 community-mod/x11vnc/checksums                |     3 +
 community-mod/x11vnc/depends                  |     4 +
 community-mod/x11vnc/patches/bugfixes.patch   |   480 +
 community-mod/x11vnc/patches/libressl.patch   |    93 +
 community-mod/x11vnc/sources                  |     3 +
 community-mod/x11vnc/version                  |     1 +
 community-mod/xbg/build                       |     4 +
 community-mod/xbg/checksums                   |     1 +
 community-mod/xbg/depends                     |     2 +
 community-mod/xbg/sources                     |     1 +
 community-mod/xbg/version                     |     1 +
 community-mod/xcb-util-xrm/build              |     7 +
 community-mod/xcb-util-xrm/checksums          |     1 +
 community-mod/xcb-util-xrm/depends            |     6 +
 community-mod/xcb-util-xrm/sources            |     1 +
 community-mod/xcb-util-xrm/version            |     1 +
 community-mod/xclip/build                     |     9 +
 community-mod/xclip/checksums                 |     1 +
 community-mod/xclip/depends                   |     5 +
 community-mod/xclip/sources                   |     1 +
 community-mod/xclip/version                   |     1 +
 community-mod/xdotool/build                   |     9 +
 community-mod/xdotool/checksums               |     1 +
 community-mod/xdotool/depends                 |     9 +
 community-mod/xdotool/sources                 |     1 +
 community-mod/xdotool/version                 |     1 +
 community-mod/xhost/build                     |     7 +
 community-mod/xhost/checksums                 |     1 +
 community-mod/xhost/depends                   |     4 +
 community-mod/xhost/sources                   |     1 +
 community-mod/xhost/version                   |     1 +
 community-mod/xkb-switch/build                |    13 +
 community-mod/xkb-switch/checksums            |     1 +
 community-mod/xkb-switch/depends              |     3 +
 community-mod/xkb-switch/sources              |     1 +
 community-mod/xkb-switch/version              |     1 +
 community-mod/xmlsec1/build                   |    12 +
 community-mod/xmlsec1/checksums               |     1 +
 community-mod/xmlsec1/depends                 |     3 +
 community-mod/xmlsec1/sources                 |     1 +
 community-mod/xmlsec1/version                 |     1 +
 community-mod/xmodmap/build                   |     7 +
 community-mod/xmodmap/checksums               |     1 +
 community-mod/xmodmap/depends                 |     1 +
 community-mod/xmodmap/sources                 |     1 +
 community-mod/xmodmap/version                 |     1 +
 community-mod/xssstate/build                  |     6 +
 community-mod/xssstate/checksums              |     1 +
 community-mod/xssstate/depends                |     1 +
 community-mod/xssstate/sources                |     1 +
 community-mod/xssstate/version                |     1 +
 community-mod/xtrlock/build                   |     6 +
 community-mod/xtrlock/checksums               |     1 +
 community-mod/xtrlock/depends                 |     1 +
 community-mod/xtrlock/sources                 |     1 +
 community-mod/xtrlock/version                 |     1 +
 community-mod/xwallpaper/build                |     9 +
 community-mod/xwallpaper/checksums            |     1 +
 community-mod/xwallpaper/depends              |     4 +
 community-mod/xwallpaper/sources              |     1 +
 community-mod/xwallpaper/version              |     1 +
 community-mod/xwm/build                       |     4 +
 community-mod/xwm/checksums                   |     1 +
 community-mod/xwm/depends                     |     3 +
 community-mod/xwm/sources                     |     1 +
 community-mod/xwm/version                     |     1 +
 community-mod/yasm/build                      |     8 +
 community-mod/yasm/checksums                  |     1 +
 community-mod/yasm/sources                    |     1 +
 community-mod/yasm/version                    |     1 +
 core-mod/core/baseinit/build                  |    13 +
 core-mod/core/baseinit/checksums              |     1 +
 core-mod/core/baseinit/post-install           |     9 +
 core-mod/core/baseinit/sources                |     1 +
 core-mod/core/baseinit/version                |     1 +
 core-mod/core/baselayout/build                |    60 +
 core-mod/core/baselayout/checksums            |    13 +
 core-mod/core/baselayout/files/crypttab       |    13 +
 core-mod/core/baselayout/files/fstab          |     6 +
 core-mod/core/baselayout/files/group          |    27 +
 core-mod/core/baselayout/files/host.conf      |     4 +
 core-mod/core/baselayout/files/hosts          |    10 +
 core-mod/core/baselayout/files/issue          |     1 +
 core-mod/core/baselayout/files/mime.types     |  1918 +++
 core-mod/core/baselayout/files/os-release     |     8 +
 core-mod/core/baselayout/files/passwd         |     2 +
 core-mod/core/baselayout/files/profile        |    16 +
 core-mod/core/baselayout/files/securetty      |    26 +
 core-mod/core/baselayout/files/shadow         |     1 +
 core-mod/core/baselayout/files/shells         |     4 +
 core-mod/core/baselayout/sources              |    13 +
 core-mod/core/baselayout/version              |     1 +
 core-mod/core/binutils/build                  |    33 +
 core-mod/core/binutils/checksums              |     1 +
 core-mod/core/binutils/depends                |     2 +
 core-mod/core/binutils/sources                |     1 +
 core-mod/core/binutils/version                |     1 +
 core-mod/core/bison/build                     |     9 +
 core-mod/core/bison/checksums                 |     1 +
 core-mod/core/bison/depends                   |     1 +
 core-mod/core/bison/sources                   |     1 +
 core-mod/core/bison/version                   |     1 +
 core-mod/core/busybox/build                   |    64 +
 core-mod/core/busybox/checksums               |    18 +
 core-mod/core/busybox/depends                 |     4 +
 core-mod/core/busybox/files/.config           |  1200 ++
 core-mod/core/busybox/files/.config-suid      |  1172 ++
 core-mod/core/busybox/files/acpid.run         |     2 +
 core-mod/core/busybox/files/crond.run         |     2 +
 core-mod/core/busybox/files/mdev.conf         |    37 +
 core-mod/core/busybox/files/mdev.run          |     8 +
 core-mod/core/busybox/files/ntpd.run          |     3 +
 core-mod/core/busybox/files/syslogd.run       |     2 +
 .../busybox/patches/adduser-no-setgid.patch   |    12 +
 .../core/busybox/patches/fix-UB+clang.patch   |    65 +
 .../busybox/patches/fsck-resolve-uuid.patch   |    56 +
 .../busybox/patches/install-fix-chown.patch   |    36 +
 core-mod/core/busybox/patches/libressl.patch  |    56 +
 .../patches/lsusb-vendor-product.patch        |    53 +
 .../patches/modprobe-kernel-version.patch     |    71 +
 .../core/busybox/patches/print-unicode.patch  |    22 +
 .../patches/unzip-usage-no-error.patch        |    20 +
 core-mod/core/busybox/sources                 |    18 +
 core-mod/core/busybox/version                 |     1 +
 core-mod/core/bzip2/build                     |    20 +
 core-mod/core/bzip2/checksums                 |     1 +
 core-mod/core/bzip2/sources                   |     1 +
 core-mod/core/bzip2/version                   |     1 +
 core-mod/core/curl/build                      |    21 +
 core-mod/core/curl/checksums                  |     1 +
 core-mod/core/curl/depends                    |     2 +
 core-mod/core/curl/sources                    |     1 +
 core-mod/core/curl/version                    |     1 +
 core-mod/core/flex/build                      |    11 +
 core-mod/core/flex/checksums                  |     1 +
 core-mod/core/flex/depends                    |     1 +
 core-mod/core/flex/sources                    |     1 +
 core-mod/core/flex/version                    |     1 +
 core-mod/core/gcc/build                       |    75 +
 core-mod/core/gcc/checksums                   |     5 +
 core-mod/core/gcc/depends                     |     4 +
 core-mod/core/gcc/files/c99                   |     2 +
 core-mod/core/gcc/sources                     |     5 +
 core-mod/core/gcc/version                     |     1 +
 core-mod/core/git/build                       |    29 +
 core-mod/core/git/checksums                   |     2 +
 core-mod/core/git/depends                     |     3 +
 core-mod/core/git/sources                     |     2 +
 core-mod/core/git/version                     |     1 +
 core-mod/core/gzip/build                      |    12 +
 core-mod/core/gzip/checksums                  |     1 +
 core-mod/core/gzip/sources                    |     1 +
 core-mod/core/gzip/version                    |     1 +
 core-mod/core/kiss/build                      |    20 +
 core-mod/core/kiss/checksums                  |     3 +
 core-mod/core/kiss/depends                    |     2 +
 core-mod/core/kiss/sources                    |     3 +
 core-mod/core/kiss/version                    |     1 +
 core-mod/core/libressl/build                  |    10 +
 core-mod/core/libressl/checksums              |     2 +
 .../core/libressl/files/update-certdata.sh    |    12 +
 core-mod/core/libressl/post-install           |     3 +
 core-mod/core/libressl/sources                |     2 +
 core-mod/core/libressl/version                |     1 +
 core-mod/core/linux-headers/build             |     9 +
 core-mod/core/linux-headers/checksums         |     1 +
 core-mod/core/linux-headers/sources           |     1 +
 core-mod/core/linux-headers/version           |     1 +
 core-mod/core/m4/build                        |     9 +
 core-mod/core/m4/checksums                    |     1 +
 core-mod/core/m4/sources                      |     1 +
 core-mod/core/m4/version                      |     1 +
 core-mod/core/make/build                      |     9 +
 core-mod/core/make/checksums                  |     1 +
 core-mod/core/make/sources                    |     1 +
 core-mod/core/make/version                    |     1 +
 core-mod/core/musl/build                      |    28 +
 core-mod/core/musl/checksums                  |     6 +
 core-mod/core/musl/files/cdefs.h              |    24 +
 core-mod/core/musl/files/getconf.c            |   338 +
 core-mod/core/musl/files/getent.c             |   511 +
 core-mod/core/musl/files/queue.h              |   846 ++
 core-mod/core/musl/files/tree.h               |   761 +
 core-mod/core/musl/sources                    |     6 +
 core-mod/core/musl/version                    |     1 +
 core-mod/core/xz/build                        |     8 +
 core-mod/core/xz/checksums                    |     1 +
 core-mod/core/xz/sources                      |     1 +
 core-mod/core/xz/version                      |     1 +
 core-mod/core/zlib/build                      |    11 +
 core-mod/core/zlib/checksums                  |     1 +
 core-mod/core/zlib/sources                    |     1 +
 core-mod/core/zlib/version                    |     1 +
 core-mod/extra/acpid/build                    |    15 +
 core-mod/extra/acpid/checksums                |     2 +
 core-mod/extra/acpid/depends                  |     1 +
 core-mod/extra/acpid/files/acpid.run          |     2 +
 core-mod/extra/acpid/sources                  |     2 +
 core-mod/extra/acpid/version                  |     1 +
 core-mod/extra/alsa-lib/build                 |    11 +
 core-mod/extra/alsa-lib/checksums             |     1 +
 core-mod/extra/alsa-lib/depends               |     1 +
 core-mod/extra/alsa-lib/sources               |     1 +
 core-mod/extra/alsa-lib/version               |     1 +
 core-mod/extra/alsa-utils/build               |    16 +
 core-mod/extra/alsa-utils/checksums           |     1 +
 core-mod/extra/alsa-utils/depends             |     3 +
 core-mod/extra/alsa-utils/sources             |     1 +
 core-mod/extra/alsa-utils/version             |     1 +
 core-mod/extra/atk/build                      |    17 +
 core-mod/extra/atk/checksums                  |     1 +
 core-mod/extra/atk/depends                    |     4 +
 core-mod/extra/atk/sources                    |     1 +
 core-mod/extra/atk/version                    |     1 +
 core-mod/extra/cairo/build                    |    25 +
 core-mod/extra/cairo/checksums                |     1 +
 core-mod/extra/cairo/depends                  |    10 +
 core-mod/extra/cairo/sources                  |     1 +
 core-mod/extra/cairo/version                  |     1 +
 core-mod/extra/ccache/build                   |    27 +
 core-mod/extra/ccache/checksums               |     1 +
 core-mod/extra/ccache/depends                 |     2 +
 core-mod/extra/ccache/post-install            |    16 +
 core-mod/extra/ccache/sources                 |     1 +
 core-mod/extra/ccache/version                 |     1 +
 core-mod/extra/cmake/build                    |    33 +
 core-mod/extra/cmake/checksums                |     2 +
 core-mod/extra/cmake/depends                  |     6 +
 .../cmake/patches/cmake-no-execinfo.patch     |    52 +
 core-mod/extra/cmake/sources                  |     2 +
 core-mod/extra/cmake/version                  |     1 +
 core-mod/extra/dhcpcd/build                   |    15 +
 core-mod/extra/dhcpcd/checksums               |     2 +
 core-mod/extra/dhcpcd/depends                 |     1 +
 core-mod/extra/dhcpcd/files/dhcpcd.run        |     2 +
 core-mod/extra/dhcpcd/sources                 |     2 +
 core-mod/extra/dhcpcd/version                 |     1 +
 core-mod/extra/dosfstools/build               |    10 +
 core-mod/extra/dosfstools/checksums           |     1 +
 core-mod/extra/dosfstools/sources             |     1 +
 core-mod/extra/dosfstools/version             |     1 +
 core-mod/extra/e2fsprogs/build                |    46 +
 core-mod/extra/e2fsprogs/checksums            |     1 +
 core-mod/extra/e2fsprogs/sources              |     1 +
 core-mod/extra/e2fsprogs/version              |     1 +
 core-mod/extra/eiwd/build                     |    14 +
 core-mod/extra/eiwd/checksums                 |     2 +
 core-mod/extra/eiwd/depends                   |     1 +
 core-mod/extra/eiwd/files/eiwd.run            |     2 +
 core-mod/extra/eiwd/post-install              |     8 +
 core-mod/extra/eiwd/sources                   |     2 +
 core-mod/extra/eiwd/version                   |     1 +
 core-mod/extra/eudev/build                    |    17 +
 core-mod/extra/eudev/checksums                |     2 +
 core-mod/extra/eudev/depends                  |     2 +
 core-mod/extra/eudev/files/udevd.run          |     2 +
 core-mod/extra/eudev/sources                  |     2 +
 core-mod/extra/eudev/version                  |     1 +
 core-mod/extra/expat/build                    |     7 +
 core-mod/extra/expat/checksums                |     1 +
 core-mod/extra/expat/sources                  |     1 +
 core-mod/extra/expat/version                  |     1 +
 core-mod/extra/ffmpeg/build                   |    30 +
 core-mod/extra/ffmpeg/checksums               |     1 +
 core-mod/extra/ffmpeg/depends                 |    15 +
 core-mod/extra/ffmpeg/sources                 |     1 +
 core-mod/extra/ffmpeg/version                 |     1 +
 core-mod/extra/fontconfig/build               |    14 +
 core-mod/extra/fontconfig/checksums           |     1 +
 core-mod/extra/fontconfig/depends             |     5 +
 core-mod/extra/fontconfig/post-install        |     3 +
 core-mod/extra/fontconfig/sources             |     1 +
 core-mod/extra/fontconfig/version             |     1 +
 core-mod/extra/freetype-harfbuzz/build        |    48 +
 core-mod/extra/freetype-harfbuzz/checksums    |     2 +
 core-mod/extra/freetype-harfbuzz/depends      |    19 +
 core-mod/extra/freetype-harfbuzz/sources      |     2 +
 core-mod/extra/freetype-harfbuzz/version      |     1 +
 core-mod/extra/fribidi/build                  |     8 +
 core-mod/extra/fribidi/checksums              |     1 +
 core-mod/extra/fribidi/sources                |     1 +
 core-mod/extra/fribidi/version                |     1 +
 core-mod/extra/gcompat/build                  |     9 +
 core-mod/extra/gcompat/checksums              |     1 +
 core-mod/extra/gcompat/sources                |     1 +
 core-mod/extra/gcompat/version                |     1 +
 core-mod/extra/gdk-pixbuf/build               |    22 +
 core-mod/extra/gdk-pixbuf/checksums           |     1 +
 core-mod/extra/gdk-pixbuf/depends             |     5 +
 core-mod/extra/gdk-pixbuf/post-install        |     3 +
 core-mod/extra/gdk-pixbuf/sources             |     1 +
 core-mod/extra/gdk-pixbuf/version             |     1 +
 core-mod/extra/giflib/build                   |     4 +
 core-mod/extra/giflib/checksums               |     1 +
 core-mod/extra/giflib/sources                 |     1 +
 core-mod/extra/giflib/version                 |     1 +
 core-mod/extra/glib/build                     |    26 +
 core-mod/extra/glib/checksums                 |     1 +
 core-mod/extra/glib/depends                   |     4 +
 core-mod/extra/glib/sources                   |     1 +
 core-mod/extra/glib/version                   |     1 +
 core-mod/extra/gnupg1/build                   |    14 +
 core-mod/extra/gnupg1/checksums               |     1 +
 core-mod/extra/gnupg1/depends                 |     4 +
 core-mod/extra/gnupg1/sources                 |     1 +
 core-mod/extra/gnupg1/version                 |     1 +
 core-mod/extra/gperf/build                    |     7 +
 core-mod/extra/gperf/checksums                |     1 +
 core-mod/extra/gperf/sources                  |     1 +
 core-mod/extra/gperf/version                  |     1 +
 core-mod/extra/gtk+3/build                    |    42 +
 core-mod/extra/gtk+3/checksums                |     1 +
 core-mod/extra/gtk+3/depends                  |    14 +
 core-mod/extra/gtk+3/post-install             |     3 +
 core-mod/extra/gtk+3/sources                  |     1 +
 core-mod/extra/gtk+3/version                  |     1 +
 core-mod/extra/hicolor-icon-theme/build       |     6 +
 core-mod/extra/hicolor-icon-theme/checksums   |     1 +
 core-mod/extra/hicolor-icon-theme/sources     |     1 +
 core-mod/extra/hicolor-icon-theme/version     |     1 +
 core-mod/extra/intel-vaapi-driver/build       |    13 +
 core-mod/extra/intel-vaapi-driver/checksums   |     1 +
 core-mod/extra/intel-vaapi-driver/depends     |     6 +
 core-mod/extra/intel-vaapi-driver/sources     |     1 +
 core-mod/extra/intel-vaapi-driver/version     |     1 +
 core-mod/extra/lame/build                     |     8 +
 core-mod/extra/lame/checksums                 |     1 +
 core-mod/extra/lame/sources                   |     1 +
 core-mod/extra/lame/version                   |     1 +
 core-mod/extra/libass/build                   |     8 +
 core-mod/extra/libass/checksums               |     1 +
 core-mod/extra/libass/depends                 |     6 +
 core-mod/extra/libass/sources                 |     1 +
 core-mod/extra/libass/version                 |     1 +
 core-mod/extra/libdrm/build                   |    10 +
 core-mod/extra/libdrm/checksums               |     1 +
 core-mod/extra/libdrm/depends                 |     4 +
 core-mod/extra/libdrm/sources                 |     1 +
 core-mod/extra/libdrm/version                 |     1 +
 core-mod/extra/libelf/build                   |    27 +
 core-mod/extra/libelf/checksums               |     2 +
 core-mod/extra/libelf/depends                 |     2 +
 core-mod/extra/libelf/files/error.h           |    27 +
 core-mod/extra/libelf/sources                 |     2 +
 core-mod/extra/libelf/version                 |     1 +
 core-mod/extra/libepoxy/build                 |    13 +
 core-mod/extra/libepoxy/checksums             |     1 +
 core-mod/extra/libepoxy/depends               |     2 +
 core-mod/extra/libepoxy/sources               |     1 +
 core-mod/extra/libepoxy/version               |     1 +
 core-mod/extra/liberation-fonts/build         |     4 +
 core-mod/extra/liberation-fonts/checksums     |     1 +
 core-mod/extra/liberation-fonts/sources       |     1 +
 core-mod/extra/liberation-fonts/version       |     1 +
 core-mod/extra/libevdev/build                 |     8 +
 core-mod/extra/libevdev/checksums             |     1 +
 core-mod/extra/libevdev/depends               |     2 +
 core-mod/extra/libevdev/sources               |     1 +
 core-mod/extra/libevdev/version               |     1 +
 core-mod/extra/libffi/build                   |    18 +
 core-mod/extra/libffi/checksums               |     1 +
 core-mod/extra/libffi/depends                 |     1 +
 core-mod/extra/libffi/sources                 |     1 +
 core-mod/extra/libffi/version                 |     1 +
 core-mod/extra/libinput/build                 |    22 +
 core-mod/extra/libinput/checksums             |     1 +
 core-mod/extra/libinput/depends               |     5 +
 core-mod/extra/libinput/post-install          |     7 +
 core-mod/extra/libinput/sources               |     1 +
 core-mod/extra/libinput/version               |     1 +
 core-mod/extra/libjpeg-turbo/build            |    13 +
 core-mod/extra/libjpeg-turbo/checksums        |     1 +
 core-mod/extra/libjpeg-turbo/depends          |     2 +
 core-mod/extra/libjpeg-turbo/sources          |     1 +
 core-mod/extra/libjpeg-turbo/version          |     1 +
 core-mod/extra/libogg/build                   |     7 +
 core-mod/extra/libogg/checksums               |     1 +
 core-mod/extra/libogg/sources                 |     1 +
 core-mod/extra/libogg/version                 |     1 +
 core-mod/extra/libpng/build                   |     9 +
 core-mod/extra/libpng/checksums               |     2 +
 core-mod/extra/libpng/depends                 |     1 +
 .../libpng/patches/libpng-1.6.37-apng.patch   |  1728 +++
 core-mod/extra/libpng/sources                 |     2 +
 core-mod/extra/libpng/version                 |     1 +
 core-mod/extra/libtheora/build                |     9 +
 core-mod/extra/libtheora/checksums            |     2 +
 core-mod/extra/libtheora/depends              |     1 +
 .../patches/libtheora-1.1.1-libpng16.patch    |    17 +
 core-mod/extra/libtheora/sources              |     2 +
 core-mod/extra/libtheora/version              |     1 +
 core-mod/extra/libudev-zero/build             |     4 +
 core-mod/extra/libudev-zero/checksums         |     1 +
 core-mod/extra/libudev-zero/depends           |     1 +
 core-mod/extra/libudev-zero/sources           |     1 +
 core-mod/extra/libudev-zero/version           |     1 +
 core-mod/extra/libva-utils/build              |    12 +
 core-mod/extra/libva-utils/checksums          |     1 +
 core-mod/extra/libva-utils/depends            |     4 +
 core-mod/extra/libva-utils/sources            |     1 +
 core-mod/extra/libva-utils/version            |     1 +
 core-mod/extra/libva/build                    |    14 +
 core-mod/extra/libva/checksums                |     1 +
 core-mod/extra/libva/depends                  |     8 +
 core-mod/extra/libva/sources                  |     1 +
 core-mod/extra/libva/version                  |     1 +
 core-mod/extra/libvorbis/build                |     7 +
 core-mod/extra/libvorbis/checksums            |     1 +
 core-mod/extra/libvorbis/depends              |     1 +
 core-mod/extra/libvorbis/sources              |     1 +
 core-mod/extra/libvorbis/version              |     1 +
 core-mod/extra/libvpx/build                   |    33 +
 core-mod/extra/libvpx/checksums               |     6 +
 core-mod/extra/libvpx/depends                 |     1 +
 core-mod/extra/libvpx/files/vp8_rtcd.h        |   265 +
 core-mod/extra/libvpx/files/vp9_rtcd.h        |   126 +
 core-mod/extra/libvpx/files/vpx_dsp_rtcd.h    |  1196 ++
 core-mod/extra/libvpx/files/vpx_scale_rtcd.h  |    73 +
 .../libvpx/patches/fix-busybox-diff.patch     |    13 +
 core-mod/extra/libvpx/sources                 |     6 +
 core-mod/extra/libvpx/version                 |     1 +
 core-mod/extra/libwebp/build                  |    11 +
 core-mod/extra/libwebp/checksums              |     1 +
 core-mod/extra/libwebp/depends                |     2 +
 core-mod/extra/libwebp/sources                |     1 +
 core-mod/extra/libwebp/version                |     1 +
 core-mod/extra/llvm/build                     |    21 +
 core-mod/extra/llvm/checksums                 |     1 +
 core-mod/extra/llvm/depends                   |     3 +
 core-mod/extra/llvm/sources                   |     1 +
 core-mod/extra/llvm/version                   |     1 +
 core-mod/extra/lzip/build                     |     7 +
 core-mod/extra/lzip/checksums                 |     1 +
 core-mod/extra/lzip/sources                   |     1 +
 core-mod/extra/lzip/version                   |     1 +
 core-mod/extra/mandoc/build                   |    22 +
 core-mod/extra/mandoc/checksums               |     2 +
 core-mod/extra/mandoc/depends                 |     1 +
 .../extra/mandoc/patches/mandoc-no-warn.patch |    13 +
 core-mod/extra/mandoc/sources                 |     2 +
 core-mod/extra/mandoc/version                 |     1 +
 core-mod/extra/mesa/build                     |    48 +
 core-mod/extra/mesa/checksums                 |     2 +
 core-mod/extra/mesa/depends                   |    21 +
 core-mod/extra/mesa/sources                   |     2 +
 core-mod/extra/mesa/version                   |     1 +
 core-mod/extra/meson/build                    |     7 +
 core-mod/extra/meson/checksums                |     1 +
 core-mod/extra/meson/depends                  |     2 +
 core-mod/extra/meson/sources                  |     1 +
 core-mod/extra/meson/version                  |     1 +
 core-mod/extra/mpv/build                      |    12 +
 core-mod/extra/mpv/checksums                  |     2 +
 core-mod/extra/mpv/depends                    |    10 +
 core-mod/extra/mpv/sources                    |     2 +
 core-mod/extra/mpv/version                    |     1 +
 core-mod/extra/mtdev/build                    |     7 +
 core-mod/extra/mtdev/checksums                |     1 +
 core-mod/extra/mtdev/depends                  |     1 +
 core-mod/extra/mtdev/sources                  |     1 +
 core-mod/extra/mtdev/version                  |     1 +
 core-mod/extra/nasm/build                     |     7 +
 core-mod/extra/nasm/checksums                 |     1 +
 core-mod/extra/nasm/sources                   |     1 +
 core-mod/extra/nasm/version                   |     1 +
 core-mod/extra/ncurses/build                  |    32 +
 core-mod/extra/ncurses/checksums              |     1 +
 core-mod/extra/ncurses/sources                |     1 +
 core-mod/extra/ncurses/version                |     1 +
 core-mod/extra/openresolv/build               |     9 +
 core-mod/extra/openresolv/checksums           |     1 +
 core-mod/extra/openresolv/sources             |     1 +
 core-mod/extra/openresolv/version             |     1 +
 core-mod/extra/openssh/build                  |    27 +
 core-mod/extra/openssh/checksums              |     2 +
 core-mod/extra/openssh/depends                |     2 +
 core-mod/extra/openssh/files/sshd.run         |     2 +
 core-mod/extra/openssh/post-install           |     4 +
 core-mod/extra/openssh/sources                |     2 +
 core-mod/extra/openssh/version                |     1 +
 core-mod/extra/opus/build                     |     9 +
 core-mod/extra/opus/checksums                 |     1 +
 core-mod/extra/opus/sources                   |     1 +
 core-mod/extra/opus/version                   |     1 +
 core-mod/extra/pango/build                    |    19 +
 core-mod/extra/pango/checksums                |     1 +
 core-mod/extra/pango/depends                  |     9 +
 core-mod/extra/pango/sources                  |     1 +
 core-mod/extra/pango/version                  |     1 +
 core-mod/extra/patchelf/build                 |     7 +
 core-mod/extra/patchelf/checksums             |     1 +
 core-mod/extra/patchelf/sources               |     1 +
 core-mod/extra/patchelf/version               |     1 +
 core-mod/extra/perl/build                     |    43 +
 core-mod/extra/perl/checksums                 |     1 +
 core-mod/extra/perl/depends                   |     2 +
 core-mod/extra/perl/sources                   |     1 +
 core-mod/extra/perl/version                   |     1 +
 core-mod/extra/pkgconf/build                  |    10 +
 core-mod/extra/pkgconf/checksums              |     1 +
 core-mod/extra/pkgconf/sources                |     1 +
 core-mod/extra/pkgconf/version                |     1 +
 core-mod/extra/plzip/build                    |    17 +
 core-mod/extra/plzip/checksums                |     2 +
 core-mod/extra/plzip/sources                  |     2 +
 core-mod/extra/plzip/version                  |     1 +
 core-mod/extra/python/build                   |    47 +
 core-mod/extra/python/checksums               |     2 +
 core-mod/extra/python/depends                 |     5 +
 .../python/patches/python3-always-pip.patch   |    13 +
 core-mod/extra/python/sources                 |     2 +
 core-mod/extra/python/version                 |     1 +
 core-mod/extra/rsync/build                    |    18 +
 core-mod/extra/rsync/checksums                |     2 +
 core-mod/extra/rsync/depends                  |     1 +
 core-mod/extra/rsync/files/mkproto.awk        |    39 +
 core-mod/extra/rsync/sources                  |     2 +
 core-mod/extra/rsync/version                  |     1 +
 core-mod/extra/samurai/build                  |     6 +
 core-mod/extra/samurai/checksums              |     1 +
 core-mod/extra/samurai/sources                |     1 +
 core-mod/extra/samurai/version                |     1 +
 core-mod/extra/sqlite/build                   |    14 +
 core-mod/extra/sqlite/checksums               |     1 +
 core-mod/extra/sqlite/depends                 |     1 +
 core-mod/extra/sqlite/sources                 |     1 +
 core-mod/extra/sqlite/version                 |     1 +
 core-mod/extra/strace/build                   |     8 +
 core-mod/extra/strace/checksums               |     1 +
 core-mod/extra/strace/depends                 |     1 +
 core-mod/extra/strace/sources                 |     1 +
 core-mod/extra/strace/version                 |     1 +
 core-mod/extra/tiff/build                     |     9 +
 core-mod/extra/tiff/checksums                 |     1 +
 core-mod/extra/tiff/depends                   |     3 +
 core-mod/extra/tiff/sources                   |     1 +
 core-mod/extra/tiff/version                   |     1 +
 core-mod/extra/tzdata/build                   |    13 +
 core-mod/extra/tzdata/checksums               |     1 +
 core-mod/extra/tzdata/sources                 |     1 +
 core-mod/extra/tzdata/version                 |     1 +
 core-mod/extra/util-linux/build               |    23 +
 core-mod/extra/util-linux/checksums           |     1 +
 core-mod/extra/util-linux/depends             |     2 +
 core-mod/extra/util-linux/sources             |     1 +
 core-mod/extra/util-linux/version             |     1 +
 core-mod/extra/wpa_supplicant/build           |    19 +
 core-mod/extra/wpa_supplicant/checksums       |     3 +
 core-mod/extra/wpa_supplicant/depends         |     2 +
 core-mod/extra/wpa_supplicant/files/.config   |   551 +
 core-mod/extra/wpa_supplicant/post-install    |     8 +
 core-mod/extra/wpa_supplicant/sources         |     3 +
 core-mod/extra/wpa_supplicant/version         |     1 +
 core-mod/extra/x264/build                     |    16 +
 core-mod/extra/x264/checksums                 |     2 +
 core-mod/extra/x264/depends                   |     1 +
 .../extra/x264/patches/x264-no-bash.patch     |   222 +
 core-mod/extra/x264/sources                   |     2 +
 core-mod/extra/x264/version                   |     1 +
 core-mod/extra/x265/build                     |    10 +
 core-mod/extra/x265/checksums                 |     1 +
 core-mod/extra/x265/depends                   |     2 +
 core-mod/extra/x265/sources                   |     1 +
 core-mod/extra/x265/version                   |     1 +
 core-mod/extra/xfsprogs/build                 |    39 +
 core-mod/extra/xfsprogs/checksums             |     2 +
 core-mod/extra/xfsprogs/depends               |     3 +
 core-mod/extra/xfsprogs/sources               |     2 +
 core-mod/extra/xfsprogs/version               |     1 +
 core-mod/extra/xvidcore/build                 |     9 +
 core-mod/extra/xvidcore/checksums             |     1 +
 core-mod/extra/xvidcore/depends               |     1 +
 core-mod/extra/xvidcore/sources               |     1 +
 core-mod/extra/xvidcore/version               |     1 +
 core-mod/extra/zip/build                      |    11 +
 core-mod/extra/zip/checksums                  |     1 +
 core-mod/extra/zip/depends                    |     1 +
 core-mod/extra/zip/sources                    |     1 +
 core-mod/extra/zip/version                    |     1 +
 core-mod/xorg/libICE/build                    |     7 +
 core-mod/xorg/libICE/checksums                |     1 +
 core-mod/xorg/libICE/depends                  |     3 +
 core-mod/xorg/libICE/sources                  |     1 +
 core-mod/xorg/libICE/version                  |     1 +
 core-mod/xorg/libSM/build                     |     8 +
 core-mod/xorg/libSM/checksums                 |     1 +
 core-mod/xorg/libSM/depends                   |     3 +
 core-mod/xorg/libSM/sources                   |     1 +
 core-mod/xorg/libSM/version                   |     1 +
 core-mod/xorg/libX11/build                    |    15 +
 core-mod/xorg/libX11/checksums                |     1 +
 core-mod/xorg/libX11/depends                  |     5 +
 core-mod/xorg/libX11/sources                  |     1 +
 core-mod/xorg/libX11/version                  |     1 +
 core-mod/xorg/libXScrnSaver/build             |     8 +
 core-mod/xorg/libXScrnSaver/checksums         |     1 +
 core-mod/xorg/libXScrnSaver/depends           |     4 +
 core-mod/xorg/libXScrnSaver/sources           |     1 +
 core-mod/xorg/libXScrnSaver/version           |     1 +
 core-mod/xorg/libXau/build                    |     7 +
 core-mod/xorg/libXau/checksums                |     1 +
 core-mod/xorg/libXau/depends                  |     2 +
 core-mod/xorg/libXau/sources                  |     1 +
 core-mod/xorg/libXau/version                  |     1 +
 core-mod/xorg/libXcomposite/build             |     7 +
 core-mod/xorg/libXcomposite/checksums         |     1 +
 core-mod/xorg/libXcomposite/depends           |     3 +
 core-mod/xorg/libXcomposite/sources           |     1 +
 core-mod/xorg/libXcomposite/version           |     1 +
 core-mod/xorg/libXcursor/build                |     7 +
 core-mod/xorg/libXcursor/checksums            |     1 +
 core-mod/xorg/libXcursor/depends              |     4 +
 core-mod/xorg/libXcursor/sources              |     1 +
 core-mod/xorg/libXcursor/version              |     1 +
 core-mod/xorg/libXdamage/build                |     7 +
 core-mod/xorg/libXdamage/checksums            |     1 +
 core-mod/xorg/libXdamage/depends              |     4 +
 core-mod/xorg/libXdamage/sources              |     1 +
 core-mod/xorg/libXdamage/version              |     1 +
 core-mod/xorg/libXext/build                   |     7 +
 core-mod/xorg/libXext/checksums               |     1 +
 core-mod/xorg/libXext/depends                 |     3 +
 core-mod/xorg/libXext/sources                 |     1 +
 core-mod/xorg/libXext/version                 |     1 +
 core-mod/xorg/libXfixes/build                 |     7 +
 core-mod/xorg/libXfixes/checksums             |     1 +
 core-mod/xorg/libXfixes/depends               |     2 +
 core-mod/xorg/libXfixes/sources               |     1 +
 core-mod/xorg/libXfixes/version               |     1 +
 core-mod/xorg/libXfont2/build                 |     7 +
 core-mod/xorg/libXfont2/checksums             |     1 +
 core-mod/xorg/libXfont2/depends               |     5 +
 core-mod/xorg/libXfont2/sources               |     1 +
 core-mod/xorg/libXfont2/version               |     1 +
 core-mod/xorg/libXft/build                    |     7 +
 core-mod/xorg/libXft/checksums                |     1 +
 core-mod/xorg/libXft/depends                  |     5 +
 core-mod/xorg/libXft/sources                  |     1 +
 core-mod/xorg/libXft/version                  |     1 +
 core-mod/xorg/libXi/build                     |     8 +
 core-mod/xorg/libXi/checksums                 |     1 +
 core-mod/xorg/libXi/depends                   |     4 +
 core-mod/xorg/libXi/sources                   |     1 +
 core-mod/xorg/libXi/version                   |     1 +
 core-mod/xorg/libXinerama/build               |     8 +
 core-mod/xorg/libXinerama/checksums           |     1 +
 core-mod/xorg/libXinerama/depends             |     3 +
 core-mod/xorg/libXinerama/sources             |     1 +
 core-mod/xorg/libXinerama/version             |     1 +
 core-mod/xorg/libXmu/build                    |     8 +
 core-mod/xorg/libXmu/checksums                |     1 +
 core-mod/xorg/libXmu/depends                  |     4 +
 core-mod/xorg/libXmu/sources                  |     1 +
 core-mod/xorg/libXmu/version                  |     1 +
 core-mod/xorg/libXrandr/build                 |     7 +
 core-mod/xorg/libXrandr/checksums             |     1 +
 core-mod/xorg/libXrandr/depends               |     4 +
 core-mod/xorg/libXrandr/sources               |     1 +
 core-mod/xorg/libXrandr/version               |     1 +
 core-mod/xorg/libXrender/build                |     7 +
 core-mod/xorg/libXrender/checksums            |     1 +
 core-mod/xorg/libXrender/depends              |     3 +
 core-mod/xorg/libXrender/sources              |     1 +
 core-mod/xorg/libXrender/version              |     1 +
 core-mod/xorg/libXt/build                     |     8 +
 core-mod/xorg/libXt/checksums                 |     1 +
 core-mod/xorg/libXt/depends                   |     4 +
 core-mod/xorg/libXt/sources                   |     1 +
 core-mod/xorg/libXt/version                   |     1 +
 core-mod/xorg/libXtst/build                   |     7 +
 core-mod/xorg/libXtst/checksums               |     1 +
 core-mod/xorg/libXtst/depends                 |     6 +
 core-mod/xorg/libXtst/sources                 |     1 +
 core-mod/xorg/libXtst/version                 |     1 +
 core-mod/xorg/libXxf86vm/build                |     7 +
 core-mod/xorg/libXxf86vm/checksums            |     1 +
 core-mod/xorg/libXxf86vm/depends              |     3 +
 core-mod/xorg/libXxf86vm/sources              |     1 +
 core-mod/xorg/libXxf86vm/version              |     1 +
 core-mod/xorg/libfontenc/build                |     8 +
 core-mod/xorg/libfontenc/checksums            |     1 +
 core-mod/xorg/libfontenc/depends              |     3 +
 core-mod/xorg/libfontenc/sources              |     1 +
 core-mod/xorg/libfontenc/version              |     1 +
 core-mod/xorg/libpciaccess/build              |     7 +
 core-mod/xorg/libpciaccess/checksums          |     1 +
 core-mod/xorg/libpciaccess/sources            |     1 +
 core-mod/xorg/libpciaccess/version            |     1 +
 core-mod/xorg/libxcb/build                    |     9 +
 core-mod/xorg/libxcb/checksums                |     1 +
 core-mod/xorg/libxcb/depends                  |     5 +
 core-mod/xorg/libxcb/sources                  |     1 +
 core-mod/xorg/libxcb/version                  |     1 +
 core-mod/xorg/libxkbcommon/build              |    14 +
 core-mod/xorg/libxkbcommon/checksums          |     1 +
 core-mod/xorg/libxkbcommon/depends            |     3 +
 core-mod/xorg/libxkbcommon/sources            |     1 +
 core-mod/xorg/libxkbcommon/version            |     1 +
 core-mod/xorg/libxkbfile/build                |     7 +
 core-mod/xorg/libxkbfile/checksums            |     1 +
 core-mod/xorg/libxkbfile/depends              |     3 +
 core-mod/xorg/libxkbfile/sources              |     1 +
 core-mod/xorg/libxkbfile/version              |     1 +
 core-mod/xorg/libxshmfence/build              |     8 +
 core-mod/xorg/libxshmfence/checksums          |     1 +
 core-mod/xorg/libxshmfence/depends            |     2 +
 core-mod/xorg/libxshmfence/sources            |     1 +
 core-mod/xorg/libxshmfence/version            |     1 +
 core-mod/xorg/pixman/build                    |     8 +
 core-mod/xorg/pixman/checksums                |     1 +
 core-mod/xorg/pixman/sources                  |     1 +
 core-mod/xorg/pixman/version                  |     1 +
 core-mod/xorg/rxvt-unicode/build              |    26 +
 core-mod/xorg/rxvt-unicode/checksums          |     3 +
 core-mod/xorg/rxvt-unicode/depends            |     6 +
 .../xorg/rxvt-unicode/patches/gentables.patch |     7 +
 .../patches/rxvt-unicode-kerning.patch        |    21 +
 core-mod/xorg/rxvt-unicode/sources            |     3 +
 core-mod/xorg/rxvt-unicode/version            |     1 +
 core-mod/xorg/setxkbmap/build                 |     9 +
 core-mod/xorg/setxkbmap/checksums             |     1 +
 core-mod/xorg/setxkbmap/depends               |     3 +
 core-mod/xorg/setxkbmap/sources               |     1 +
 core-mod/xorg/setxkbmap/version               |     1 +
 core-mod/xorg/xauth/build                     |     9 +
 core-mod/xorg/xauth/checksums                 |     1 +
 core-mod/xorg/xauth/depends                   |     3 +
 core-mod/xorg/xauth/sources                   |     1 +
 core-mod/xorg/xauth/version                   |     1 +
 core-mod/xorg/xbitmaps/build                  |    10 +
 core-mod/xorg/xbitmaps/checksums              |     1 +
 core-mod/xorg/xbitmaps/depends                |     1 +
 core-mod/xorg/xbitmaps/sources                |     1 +
 core-mod/xorg/xbitmaps/version                |     1 +
 core-mod/xorg/xcb-proto/build                 |     7 +
 core-mod/xorg/xcb-proto/checksums             |     1 +
 core-mod/xorg/xcb-proto/depends               |     1 +
 core-mod/xorg/xcb-proto/sources               |     1 +
 core-mod/xorg/xcb-proto/version               |     1 +
 core-mod/xorg/xcb-util-cursor/build           |     8 +
 core-mod/xorg/xcb-util-cursor/checksums       |     1 +
 core-mod/xorg/xcb-util-cursor/depends         |     7 +
 core-mod/xorg/xcb-util-cursor/sources         |     1 +
 core-mod/xorg/xcb-util-cursor/version         |     1 +
 core-mod/xorg/xcb-util-image/build            |     8 +
 core-mod/xorg/xcb-util-image/checksums        |     1 +
 core-mod/xorg/xcb-util-image/depends          |     4 +
 core-mod/xorg/xcb-util-image/sources          |     1 +
 core-mod/xorg/xcb-util-image/version          |     1 +
 core-mod/xorg/xcb-util-keysyms/build          |     8 +
 core-mod/xorg/xcb-util-keysyms/checksums      |     1 +
 core-mod/xorg/xcb-util-keysyms/depends        |     3 +
 core-mod/xorg/xcb-util-keysyms/sources        |     1 +
 core-mod/xorg/xcb-util-keysyms/version        |     1 +
 core-mod/xorg/xcb-util-renderutil/build       |     8 +
 core-mod/xorg/xcb-util-renderutil/checksums   |     1 +
 core-mod/xorg/xcb-util-renderutil/depends     |     3 +
 core-mod/xorg/xcb-util-renderutil/sources     |     1 +
 core-mod/xorg/xcb-util-renderutil/version     |     1 +
 core-mod/xorg/xcb-util-wm/build               |     8 +
 core-mod/xorg/xcb-util-wm/checksums           |     1 +
 core-mod/xorg/xcb-util-wm/depends             |     4 +
 core-mod/xorg/xcb-util-wm/sources             |     1 +
 core-mod/xorg/xcb-util-wm/version             |     1 +
 core-mod/xorg/xcb-util/build                  |     8 +
 core-mod/xorg/xcb-util/checksums              |     1 +
 core-mod/xorg/xcb-util/depends                |     3 +
 core-mod/xorg/xcb-util/sources                |     1 +
 core-mod/xorg/xcb-util/version                |     1 +
 core-mod/xorg/xev/build                       |     7 +
 core-mod/xorg/xev/checksums                   |     1 +
 core-mod/xorg/xev/depends                     |     5 +
 core-mod/xorg/xev/sources                     |     1 +
 core-mod/xorg/xev/version                     |     1 +
 core-mod/xorg/xf86-input-libinput/build       |     7 +
 core-mod/xorg/xf86-input-libinput/checksums   |     1 +
 core-mod/xorg/xf86-input-libinput/depends     |     4 +
 core-mod/xorg/xf86-input-libinput/sources     |     1 +
 core-mod/xorg/xf86-input-libinput/version     |     1 +
 core-mod/xorg/xf86-input-mtrack/build         |     7 +
 core-mod/xorg/xf86-input-mtrack/checksums     |     1 +
 core-mod/xorg/xf86-input-mtrack/depends       |     3 +
 core-mod/xorg/xf86-input-mtrack/sources       |     1 +
 core-mod/xorg/xf86-input-mtrack/version       |     1 +
 core-mod/xorg/xf86-input-synaptics/build      |     7 +
 core-mod/xorg/xf86-input-synaptics/checksums  |     1 +
 core-mod/xorg/xf86-input-synaptics/depends    |    10 +
 core-mod/xorg/xf86-input-synaptics/sources    |     1 +
 core-mod/xorg/xf86-input-synaptics/version    |     1 +
 core-mod/xorg/xf86-input-wacom/build          |     8 +
 core-mod/xorg/xf86-input-wacom/checksums      |     1 +
 core-mod/xorg/xf86-input-wacom/depends        |     9 +
 core-mod/xorg/xf86-input-wacom/sources        |     1 +
 core-mod/xorg/xf86-input-wacom/version        |     1 +
 core-mod/xorg/xf86-video-amdgpu/build         |    12 +
 core-mod/xorg/xf86-video-amdgpu/checksums     |     2 +
 core-mod/xorg/xf86-video-amdgpu/depends       |     7 +
 .../patches/rootless-amdgpu.patch             |    15 +
 core-mod/xorg/xf86-video-amdgpu/sources       |     2 +
 core-mod/xorg/xf86-video-amdgpu/version       |     1 +
 core-mod/xorg/xf86-video-ati/build            |    12 +
 core-mod/xorg/xf86-video-ati/checksums        |     2 +
 core-mod/xorg/xf86-video-ati/depends          |     7 +
 .../xf86-video-ati/patches/rootless-ati.patch |    15 +
 core-mod/xorg/xf86-video-ati/sources          |     2 +
 core-mod/xorg/xf86-video-ati/version          |     1 +
 core-mod/xorg/xf86-video-fbdev/build          |    10 +
 core-mod/xorg/xf86-video-fbdev/checksums      |     1 +
 core-mod/xorg/xf86-video-fbdev/depends        |     1 +
 core-mod/xorg/xf86-video-fbdev/sources        |     1 +
 core-mod/xorg/xf86-video-fbdev/version        |     1 +
 core-mod/xorg/xf86-video-intel/build          |    15 +
 core-mod/xorg/xf86-video-intel/checksums      |     1 +
 core-mod/xorg/xf86-video-intel/depends        |     9 +
 core-mod/xorg/xf86-video-intel/sources        |     1 +
 core-mod/xorg/xf86-video-intel/version        |     1 +
 core-mod/xorg/xf86-video-nouveau/build        |    12 +
 core-mod/xorg/xf86-video-nouveau/checksums    |     2 +
 core-mod/xorg/xf86-video-nouveau/depends      |     4 +
 .../patches/rootless-nouveau.patch            |    15 +
 core-mod/xorg/xf86-video-nouveau/sources      |     2 +
 core-mod/xorg/xf86-video-nouveau/version      |     1 +
 core-mod/xorg/xf86-video-vesa/build           |     9 +
 core-mod/xorg/xf86-video-vesa/checksums       |     1 +
 core-mod/xorg/xf86-video-vesa/depends         |     4 +
 core-mod/xorg/xf86-video-vesa/sources         |     1 +
 core-mod/xorg/xf86-video-vesa/version         |     1 +
 core-mod/xorg/xinit/build                     |    12 +
 core-mod/xorg/xinit/checksums                 |     1 +
 core-mod/xorg/xinit/depends                   |     2 +
 core-mod/xorg/xinit/sources                   |     1 +
 core-mod/xorg/xinit/version                   |     1 +
 core-mod/xorg/xinput/build                    |     9 +
 core-mod/xorg/xinput/checksums                |     1 +
 core-mod/xorg/xinput/depends                  |     5 +
 core-mod/xorg/xinput/sources                  |     1 +
 core-mod/xorg/xinput/version                  |     1 +
 core-mod/xorg/xkbcomp/build                   |     7 +
 core-mod/xorg/xkbcomp/checksums               |     1 +
 core-mod/xorg/xkbcomp/depends                 |     3 +
 core-mod/xorg/xkbcomp/sources                 |     1 +
 core-mod/xorg/xkbcomp/version                 |     1 +
 core-mod/xorg/xkeyboard-config/build          |    15 +
 core-mod/xorg/xkeyboard-config/checksums      |     2 +
 core-mod/xorg/xkeyboard-config/depends        |     4 +
 core-mod/xorg/xkeyboard-config/files/xml2lst  |    47 +
 core-mod/xorg/xkeyboard-config/sources        |     2 +
 core-mod/xorg/xkeyboard-config/version        |     1 +
 core-mod/xorg/xorg-server/build               |    21 +
 core-mod/xorg/xorg-server/checksums           |     2 +
 core-mod/xorg/xorg-server/depends             |    24 +
 .../patches/rootless_modesetting.patch        |    14 +
 core-mod/xorg/xorg-server/post-install        |    19 +
 core-mod/xorg/xorg-server/sources             |     2 +
 core-mod/xorg/xorg-server/version             |     1 +
 core-mod/xorg/xorg-util-macros/build          |     7 +
 core-mod/xorg/xorg-util-macros/checksums      |     1 +
 core-mod/xorg/xorg-util-macros/sources        |     1 +
 core-mod/xorg/xorg-util-macros/version        |     1 +
 core-mod/xorg/xorgproto/build                 |     8 +
 core-mod/xorg/xorgproto/checksums             |     1 +
 core-mod/xorg/xorgproto/sources               |     1 +
 core-mod/xorg/xorgproto/version               |     1 +
 core-mod/xorg/xprop/build                     |     9 +
 core-mod/xorg/xprop/checksums                 |     1 +
 core-mod/xorg/xprop/depends                   |     3 +
 core-mod/xorg/xprop/sources                   |     1 +
 core-mod/xorg/xprop/version                   |     1 +
 core-mod/xorg/xrandr/build                    |     9 +
 core-mod/xorg/xrandr/checksums                |     1 +
 core-mod/xorg/xrandr/depends                  |     3 +
 core-mod/xorg/xrandr/sources                  |     1 +
 core-mod/xorg/xrandr/version                  |     1 +
 core-mod/xorg/xrdb/build                      |     9 +
 core-mod/xorg/xrdb/checksums                  |     1 +
 core-mod/xorg/xrdb/depends                    |     4 +
 core-mod/xorg/xrdb/sources                    |     1 +
 core-mod/xorg/xrdb/version                    |     1 +
 core-mod/xorg/xset/build                      |    10 +
 core-mod/xorg/xset/checksums                  |     1 +
 core-mod/xorg/xset/depends                    |     3 +
 core-mod/xorg/xset/sources                    |     1 +
 core-mod/xorg/xset/version                    |     1 +
 core-mod/xorg/xsetroot/build                  |     9 +
 core-mod/xorg/xsetroot/checksums              |     1 +
 core-mod/xorg/xsetroot/depends                |     6 +
 core-mod/xorg/xsetroot/sources                |     1 +
 core-mod/xorg/xsetroot/version                |     1 +
 core-mod/xorg/xtrans/build                    |     7 +
 core-mod/xorg/xtrans/checksums                |     1 +
 core-mod/xorg/xtrans/depends                  |     1 +
 core-mod/xorg/xtrans/sources                  |     1 +
 core-mod/xorg/xtrans/version                  |     1 +
 mbase/hummingbird-git                         |     2 +-
 mbase/xf86-input-libinput                     |     2 +-
 ports/ecl/checksums                           |     2 +-
 ports/links2-mod/q                            |    11 -
 ports/links2-mod/sources                      |     2 +-
 ports/mid-rc/build                            |     2 +-
 2280 files changed, 44060 insertions(+), 19 deletions(-)
 create mode 100644 NOTES
 create mode 100755 community-mod/2bwm/build
 create mode 100644 community-mod/2bwm/checksums
 create mode 100644 community-mod/2bwm/depends
 create mode 100644 community-mod/2bwm/sources
 create mode 100644 community-mod/2bwm/version
 create mode 100755 community-mod/9base/build
 create mode 100644 community-mod/9base/checksums
 create mode 100644 community-mod/9base/sources
 create mode 100644 community-mod/9base/version
 create mode 100755 community-mod/abduco/build
 create mode 100644 community-mod/abduco/checksums
 create mode 100644 community-mod/abduco/sources
 create mode 100644 community-mod/abduco/version
 create mode 100755 community-mod/alsa-plugins/build
 create mode 100644 community-mod/alsa-plugins/checksums
 create mode 100644 community-mod/alsa-plugins/depends
 create mode 100644 community-mod/alsa-plugins/sources
 create mode 100644 community-mod/alsa-plugins/version
 create mode 100755 community-mod/aria2/build
 create mode 100644 community-mod/aria2/checksums
 create mode 100644 community-mod/aria2/depends
 create mode 100644 community-mod/aria2/sources
 create mode 100644 community-mod/aria2/version
 create mode 100755 community-mod/autoconf-archive/build
 create mode 100644 community-mod/autoconf-archive/checksums
 create mode 100644 community-mod/autoconf-archive/sources
 create mode 100644 community-mod/autoconf-archive/version
 create mode 100755 community-mod/autoconf/build
 create mode 100644 community-mod/autoconf/checksums
 create mode 100644 community-mod/autoconf/depends
 create mode 100644 community-mod/autoconf/sources
 create mode 100644 community-mod/autoconf/version
 create mode 100755 community-mod/automake/build
 create mode 100644 community-mod/automake/checksums
 create mode 100644 community-mod/automake/depends
 create mode 100644 community-mod/automake/sources
 create mode 100644 community-mod/automake/version
 create mode 100755 community-mod/axel/build
 create mode 100644 community-mod/axel/checksums
 create mode 100644 community-mod/axel/depends
 create mode 100644 community-mod/axel/sources
 create mode 100644 community-mod/axel/version
 create mode 100755 community-mod/azpainter/build
 create mode 100644 community-mod/azpainter/checksums
 create mode 100644 community-mod/azpainter/depends
 create mode 100644 community-mod/azpainter/sources
 create mode 100644 community-mod/azpainter/version
 create mode 100755 community-mod/bash/build
 create mode 100644 community-mod/bash/checksums
 create mode 100644 community-mod/bash/depends
 create mode 100644 community-mod/bash/patches/bash-5.1-parallel_make.patch
 create mode 100644 community-mod/bash/sources
 create mode 100644 community-mod/bash/version
 create mode 100755 community-mod/bdftopcf/build
 create mode 100644 community-mod/bdftopcf/checksums
 create mode 100644 community-mod/bdftopcf/depends
 create mode 100644 community-mod/bdftopcf/sources
 create mode 100644 community-mod/bdftopcf/version
 create mode 100755 community-mod/berry/build
 create mode 100644 community-mod/berry/checksums
 create mode 100644 community-mod/berry/depends
 create mode 100644 community-mod/berry/sources
 create mode 100644 community-mod/berry/version
 create mode 100755 community-mod/bind/build
 create mode 100644 community-mod/bind/checksums
 create mode 100644 community-mod/bind/depends
 create mode 100644 community-mod/bind/sources
 create mode 100644 community-mod/bind/version
 create mode 100755 community-mod/birch/build
 create mode 100644 community-mod/birch/depends
 create mode 100644 community-mod/birch/sources
 create mode 100644 community-mod/birch/version
 create mode 100755 community-mod/bitfetch/build
 create mode 100644 community-mod/bitfetch/checksums
 create mode 100644 community-mod/bitfetch/depends
 create mode 100644 community-mod/bitfetch/sources
 create mode 100644 community-mod/bitfetch/version
 create mode 100755 community-mod/bkeymaps/build
 create mode 100644 community-mod/bkeymaps/checksums
 create mode 100755 community-mod/bkeymaps/post-install
 create mode 100644 community-mod/bkeymaps/sources
 create mode 100644 community-mod/bkeymaps/version
 create mode 100755 community-mod/boehm-gc/build
 create mode 100644 community-mod/boehm-gc/checksums
 create mode 100644 community-mod/boehm-gc/sources
 create mode 100644 community-mod/boehm-gc/version
 create mode 100755 community-mod/boost/build
 create mode 100644 community-mod/boost/checksums
 create mode 100644 community-mod/boost/depends
 create mode 100644 community-mod/boost/sources
 create mode 100644 community-mod/boost/version
 create mode 100755 community-mod/brotli/build
 create mode 100644 community-mod/brotli/checksums
 create mode 100644 community-mod/brotli/depends
 create mode 100644 community-mod/brotli/sources
 create mode 100644 community-mod/brotli/version
 create mode 100755 community-mod/brownout/build
 create mode 100644 community-mod/brownout/checksums
 create mode 100644 community-mod/brownout/depends
 create mode 100644 community-mod/brownout/sources
 create mode 100644 community-mod/brownout/version
 create mode 100755 community-mod/bspwm/build
 create mode 100644 community-mod/bspwm/checksums
 create mode 100644 community-mod/bspwm/depends
 create mode 100644 community-mod/bspwm/sources
 create mode 100644 community-mod/bspwm/version
 create mode 100755 community-mod/bubblewrap/build
 create mode 100644 community-mod/bubblewrap/checksums
 create mode 100644 community-mod/bubblewrap/depends
 create mode 100644 community-mod/bubblewrap/patches/realpath-workaround.patch
 create mode 100644 community-mod/bubblewrap/sources
 create mode 100644 community-mod/bubblewrap/version
 create mode 100755 community-mod/calcurse/build
 create mode 100644 community-mod/calcurse/checksums
 create mode 100644 community-mod/calcurse/depends
 create mode 100644 community-mod/calcurse/sources
 create mode 100644 community-mod/calcurse/version
 create mode 100755 community-mod/ccrypt/build
 create mode 100644 community-mod/ccrypt/checksums
 create mode 100644 community-mod/ccrypt/sources
 create mode 100644 community-mod/ccrypt/version
 create mode 100755 community-mod/cdrtools/build
 create mode 100644 community-mod/cdrtools/checksums
 create mode 100644 community-mod/cdrtools/sources
 create mode 100644 community-mod/cdrtools/version
 create mode 100755 community-mod/cjson/build
 create mode 100644 community-mod/cjson/checksums
 create mode 100644 community-mod/cjson/sources
 create mode 100644 community-mod/cjson/version
 create mode 100755 community-mod/cloc/build
 create mode 100644 community-mod/cloc/checksums
 create mode 100644 community-mod/cloc/depends
 create mode 100644 community-mod/cloc/sources
 create mode 100644 community-mod/cloc/version
 create mode 100755 community-mod/cmus/build
 create mode 100644 community-mod/cmus/checksums
 create mode 100755 community-mod/cmus/depends
 create mode 100755 community-mod/cmus/sources
 create mode 100755 community-mod/cmus/version
 create mode 100755 community-mod/conky/build
 create mode 100644 community-mod/conky/checksums
 create mode 100644 community-mod/conky/depends
 create mode 100644 community-mod/conky/sources
 create mode 100644 community-mod/conky/version
 create mode 100755 community-mod/coreutils/build
 create mode 100644 community-mod/coreutils/checksums
 create mode 100644 community-mod/coreutils/sources
 create mode 100644 community-mod/coreutils/version
 create mode 100755 community-mod/cproc/build
 create mode 100644 community-mod/cproc/depends
 create mode 100644 community-mod/cproc/sources
 create mode 100644 community-mod/cproc/version
 create mode 100755 community-mod/crosstool-ng-git/build
 create mode 100644 community-mod/crosstool-ng-git/depends
 create mode 100644 community-mod/crosstool-ng-git/sources
 create mode 100644 community-mod/crosstool-ng-git/version
 create mode 100755 community-mod/cryptsetup/build
 create mode 100644 community-mod/cryptsetup/checksums
 create mode 100644 community-mod/cryptsetup/depends
 create mode 100644 community-mod/cryptsetup/sources
 create mode 100644 community-mod/cryptsetup/version
 create mode 100755 community-mod/ctags/build
 create mode 100644 community-mod/ctags/checksums
 create mode 100644 community-mod/ctags/sources
 create mode 100644 community-mod/ctags/version
 create mode 100755 community-mod/cwm/build
 create mode 100644 community-mod/cwm/depends
 create mode 100644 community-mod/cwm/sources
 create mode 100644 community-mod/cwm/version
 create mode 100755 community-mod/cyrus-sasl/build
 create mode 100644 community-mod/cyrus-sasl/checksums
 create mode 100644 community-mod/cyrus-sasl/depends
 create mode 100644 community-mod/cyrus-sasl/sources
 create mode 100644 community-mod/cyrus-sasl/version
 create mode 100755 community-mod/darkhttpd/build
 create mode 100644 community-mod/darkhttpd/checksums
 create mode 100644 community-mod/darkhttpd/sources
 create mode 100644 community-mod/darkhttpd/version
 create mode 100755 community-mod/dash/build
 create mode 100644 community-mod/dash/checksums
 create mode 100644 community-mod/dash/sources
 create mode 100644 community-mod/dash/version
 create mode 100755 community-mod/dejavu-ttf/build
 create mode 100644 community-mod/dejavu-ttf/checksums
 create mode 100755 community-mod/dejavu-ttf/post-install
 create mode 100644 community-mod/dejavu-ttf/sources
 create mode 100644 community-mod/dejavu-ttf/version
 create mode 100755 community-mod/diffutils/build
 create mode 100644 community-mod/diffutils/checksums
 create mode 100644 community-mod/diffutils/sources
 create mode 100644 community-mod/diffutils/version
 create mode 100755 community-mod/djvulibre/build
 create mode 100644 community-mod/djvulibre/checksums
 create mode 100644 community-mod/djvulibre/sources
 create mode 100644 community-mod/djvulibre/version
 create mode 100755 community-mod/dmenu/build
 create mode 100644 community-mod/dmenu/checksums
 create mode 100644 community-mod/dmenu/depends
 create mode 100644 community-mod/dmenu/sources
 create mode 100644 community-mod/dmenu/version
 create mode 100755 community-mod/dmidecode/build
 create mode 100644 community-mod/dmidecode/checksums
 create mode 100644 community-mod/dmidecode/sources
 create mode 100644 community-mod/dmidecode/version
 create mode 100755 community-mod/dosbox/build
 create mode 100644 community-mod/dosbox/checksums
 create mode 100644 community-mod/dosbox/depends
 create mode 100644 community-mod/dosbox/sources
 create mode 100644 community-mod/dosbox/version
 create mode 100755 community-mod/dvtm/build
 create mode 100644 community-mod/dvtm/checksums
 create mode 100644 community-mod/dvtm/depends
 create mode 100644 community-mod/dvtm/sources
 create mode 100644 community-mod/dvtm/version
 create mode 100755 community-mod/dwm/build
 create mode 100644 community-mod/dwm/checksums
 create mode 100644 community-mod/dwm/depends
 create mode 100644 community-mod/dwm/sources
 create mode 100644 community-mod/dwm/version
 create mode 100755 community-mod/dzen/build
 create mode 100644 community-mod/dzen/depends
 create mode 100644 community-mod/dzen/sources
 create mode 100644 community-mod/dzen/version
 create mode 100755 community-mod/emacs/build
 create mode 100644 community-mod/emacs/checksums
 create mode 100644 community-mod/emacs/depends
 create mode 100644 community-mod/emacs/sources
 create mode 100644 community-mod/emacs/version
 create mode 100755 community-mod/es/build
 create mode 100644 community-mod/es/checksums
 create mode 100644 community-mod/es/patches/musl.patch
 create mode 100644 community-mod/es/sources
 create mode 100644 community-mod/es/version
 create mode 100755 community-mod/evtest/build
 create mode 100644 community-mod/evtest/checksums
 create mode 100644 community-mod/evtest/sources
 create mode 100644 community-mod/evtest/version
 create mode 100755 community-mod/execline/build
 create mode 100644 community-mod/execline/checksums
 create mode 100644 community-mod/execline/depends
 create mode 100644 community-mod/execline/sources
 create mode 100644 community-mod/execline/version
 create mode 100755 community-mod/exfatprogs/build
 create mode 100644 community-mod/exfatprogs/checksums
 create mode 100644 community-mod/exfatprogs/depends
 create mode 100644 community-mod/exfatprogs/sources
 create mode 100644 community-mod/exfatprogs/version
 create mode 100755 community-mod/exiftool/build
 create mode 100644 community-mod/exiftool/checksums
 create mode 100644 community-mod/exiftool/depends
 create mode 100644 community-mod/exiftool/sources
 create mode 100644 community-mod/exiftool/version
 create mode 100755 community-mod/extra-cmake-modules/build
 create mode 100644 community-mod/extra-cmake-modules/checksums
 create mode 100644 community-mod/extra-cmake-modules/depends
 create mode 100644 community-mod/extra-cmake-modules/sources
 create mode 100644 community-mod/extra-cmake-modules/version
 create mode 100755 community-mod/feh/build
 create mode 100644 community-mod/feh/checksums
 create mode 100644 community-mod/feh/depends
 create mode 100644 community-mod/feh/sources
 create mode 100644 community-mod/feh/version
 create mode 100755 community-mod/fftw/build
 create mode 100644 community-mod/fftw/checksums
 create mode 100644 community-mod/fftw/sources
 create mode 100644 community-mod/fftw/version
 create mode 100755 community-mod/file/build
 create mode 100644 community-mod/file/checksums
 create mode 100644 community-mod/file/depends
 create mode 100644 community-mod/file/sources
 create mode 100644 community-mod/file/version
 create mode 100755 community-mod/flac/build
 create mode 100644 community-mod/flac/checksums
 create mode 100644 community-mod/flac/depends
 create mode 100644 community-mod/flac/sources
 create mode 100644 community-mod/flac/version
 create mode 100755 community-mod/flashrom/build
 create mode 100644 community-mod/flashrom/checksums
 create mode 100644 community-mod/flashrom/depends
 create mode 100644 community-mod/flashrom/sources
 create mode 100644 community-mod/flashrom/version
 create mode 100755 community-mod/fltk/build
 create mode 100644 community-mod/fltk/checksums
 create mode 100644 community-mod/fltk/depends
 create mode 100644 community-mod/fltk/sources
 create mode 100644 community-mod/fltk/version
 create mode 100755 community-mod/fmt/build
 create mode 100644 community-mod/fmt/checksums
 create mode 100644 community-mod/fmt/sources
 create mode 100644 community-mod/fmt/version
 create mode 100755 community-mod/fortune/build
 create mode 100644 community-mod/fortune/checksums
 create mode 100644 community-mod/fortune/files/kiss
 create mode 100644 community-mod/fortune/sources
 create mode 100644 community-mod/fortune/version
 create mode 100755 community-mod/freeglut/build
 create mode 100644 community-mod/freeglut/checksums
 create mode 100644 community-mod/freeglut/depends
 create mode 100644 community-mod/freeglut/patches/fno-common.patch
 create mode 100644 community-mod/freeglut/sources
 create mode 100644 community-mod/freeglut/version
 create mode 100755 community-mod/fuse/build
 create mode 100644 community-mod/fuse/checksums
 create mode 100644 community-mod/fuse/depends
 create mode 100644 community-mod/fuse/sources
 create mode 100644 community-mod/fuse/version
 create mode 100755 community-mod/fuse2/build
 create mode 100644 community-mod/fuse2/checksums
 create mode 100644 community-mod/fuse2/sources
 create mode 100644 community-mod/fuse2/version
 create mode 100755 community-mod/gawk/build
 create mode 100644 community-mod/gawk/checksums
 create mode 100644 community-mod/gawk/sources
 create mode 100644 community-mod/gawk/version
 create mode 100755 community-mod/gdb/build
 create mode 100644 community-mod/gdb/checksums
 create mode 100644 community-mod/gdb/depends
 create mode 100644 community-mod/gdb/sources
 create mode 100644 community-mod/gdb/version
 create mode 100755 community-mod/ghostscript/build
 create mode 100644 community-mod/ghostscript/checksums
 create mode 100644 community-mod/ghostscript/sources
 create mode 100644 community-mod/ghostscript/version
 create mode 100755 community-mod/giblib/build
 create mode 100644 community-mod/giblib/checksums
 create mode 100644 community-mod/giblib/depends
 create mode 100644 community-mod/giblib/sources
 create mode 100644 community-mod/giblib/version
 create mode 100755 community-mod/glew/build
 create mode 100644 community-mod/glew/checksums
 create mode 100644 community-mod/glew/depends
 create mode 100644 community-mod/glew/sources
 create mode 100644 community-mod/glew/version
 create mode 100755 community-mod/glib-networking/build
 create mode 100644 community-mod/glib-networking/checksums
 create mode 100644 community-mod/glib-networking/depends
 create mode 100644 community-mod/glib-networking/sources
 create mode 100644 community-mod/glib-networking/version
 create mode 100755 community-mod/glorytun/build
 create mode 100644 community-mod/glorytun/checksums
 create mode 100644 community-mod/glorytun/depends
 create mode 100644 community-mod/glorytun/sources
 create mode 100644 community-mod/glorytun/version
 create mode 100755 community-mod/glu/build
 create mode 100644 community-mod/glu/checksums
 create mode 100644 community-mod/glu/depends
 create mode 100644 community-mod/glu/sources
 create mode 100644 community-mod/glu/version
 create mode 100755 community-mod/glxgears-git/build
 create mode 100644 community-mod/glxgears-git/depends
 create mode 100644 community-mod/glxgears-git/sources
 create mode 100644 community-mod/glxgears-git/version
 create mode 100755 community-mod/gnu-bc/build
 create mode 100644 community-mod/gnu-bc/checksums
 create mode 100644 community-mod/gnu-bc/sources
 create mode 100644 community-mod/gnu-bc/version
 create mode 100755 community-mod/gnu-ed/build
 create mode 100644 community-mod/gnu-ed/checksums
 create mode 100644 community-mod/gnu-ed/depends
 create mode 100644 community-mod/gnu-ed/sources
 create mode 100644 community-mod/gnu-ed/version
 create mode 100755 community-mod/gnu-findutils/build
 create mode 100644 community-mod/gnu-findutils/checksums
 create mode 100644 community-mod/gnu-findutils/sources
 create mode 100644 community-mod/gnu-findutils/version
 create mode 100755 community-mod/gnu-grep/build
 create mode 100644 community-mod/gnu-grep/checksums
 create mode 100644 community-mod/gnu-grep/sources
 create mode 100644 community-mod/gnu-grep/version
 create mode 100755 community-mod/gnu-netcat/build
 create mode 100644 community-mod/gnu-netcat/checksums
 create mode 100644 community-mod/gnu-netcat/sources
 create mode 100644 community-mod/gnu-netcat/version
 create mode 100755 community-mod/gnu-sed/build
 create mode 100644 community-mod/gnu-sed/checksums
 create mode 100644 community-mod/gnu-sed/sources
 create mode 100644 community-mod/gnu-sed/version
 create mode 100755 community-mod/gnu-tar/build
 create mode 100644 community-mod/gnu-tar/checksums
 create mode 100644 community-mod/gnu-tar/sources
 create mode 100644 community-mod/gnu-tar/version
 create mode 100755 community-mod/gnupg2/build
 create mode 100644 community-mod/gnupg2/checksums
 create mode 100644 community-mod/gnupg2/depends
 create mode 100644 community-mod/gnupg2/sources
 create mode 100644 community-mod/gnupg2/version
 create mode 100755 community-mod/gnuplot/build
 create mode 100644 community-mod/gnuplot/checksums
 create mode 100644 community-mod/gnuplot/depends
 create mode 100644 community-mod/gnuplot/sources
 create mode 100644 community-mod/gnuplot/version
 create mode 100755 community-mod/gnutls/build
 create mode 100644 community-mod/gnutls/checksums
 create mode 100644 community-mod/gnutls/depends
 create mode 100644 community-mod/gnutls/sources
 create mode 100644 community-mod/gnutls/version
 create mode 100755 community-mod/grabc/build
 create mode 100644 community-mod/grabc/checksums
 create mode 100644 community-mod/grabc/depends
 create mode 100644 community-mod/grabc/sources
 create mode 100644 community-mod/grabc/version
 create mode 100755 community-mod/groff/build
 create mode 100644 community-mod/groff/checksums
 create mode 100644 community-mod/groff/files/musl.patch
 create mode 100644 community-mod/groff/sources
 create mode 100644 community-mod/groff/version
 create mode 100755 community-mod/gsl/build
 create mode 100644 community-mod/gsl/checksums
 create mode 100644 community-mod/gsl/sources
 create mode 100644 community-mod/gsl/version
 create mode 100755 community-mod/gst-plugins-base/build
 create mode 100644 community-mod/gst-plugins-base/checksums
 create mode 100644 community-mod/gst-plugins-base/depends
 create mode 100644 community-mod/gst-plugins-base/sources
 create mode 100644 community-mod/gst-plugins-base/version
 create mode 100755 community-mod/gst-plugins/build
 create mode 100644 community-mod/gst-plugins/checksums
 create mode 100644 community-mod/gst-plugins/depends
 create mode 100644 community-mod/gst-plugins/sources
 create mode 100644 community-mod/gst-plugins/version
 create mode 100755 community-mod/gstreamer/build
 create mode 100644 community-mod/gstreamer/checksums
 create mode 100644 community-mod/gstreamer/depends
 create mode 100644 community-mod/gstreamer/sources
 create mode 100644 community-mod/gstreamer/version
 create mode 100755 community-mod/gt5/build
 create mode 100644 community-mod/gt5/checksums
 create mode 100644 community-mod/gt5/sources
 create mode 100644 community-mod/gt5/version
 create mode 100755 community-mod/gumbo-parser/build
 create mode 100644 community-mod/gumbo-parser/checksums
 create mode 100644 community-mod/gumbo-parser/sources
 create mode 100644 community-mod/gumbo-parser/version
 create mode 100755 community-mod/hack/build
 create mode 100644 community-mod/hack/checksums
 create mode 100755 community-mod/hack/post-install
 create mode 100644 community-mod/hack/sources
 create mode 100644 community-mod/hack/version
 create mode 100755 community-mod/harfbuzz-icu/build
 create mode 100644 community-mod/harfbuzz-icu/checksums
 create mode 100644 community-mod/harfbuzz-icu/depends
 create mode 100644 community-mod/harfbuzz-icu/sources
 create mode 100644 community-mod/harfbuzz-icu/version
 create mode 100755 community-mod/herbe/build
 create mode 100644 community-mod/herbe/checksums
 create mode 100644 community-mod/herbe/depends
 create mode 100644 community-mod/herbe/sources
 create mode 100644 community-mod/herbe/version
 create mode 100755 community-mod/hsetroot/build
 create mode 100644 community-mod/hsetroot/checksums
 create mode 100644 community-mod/hsetroot/depends
 create mode 100644 community-mod/hsetroot/sources
 create mode 100644 community-mod/hsetroot/version
 create mode 100755 community-mod/hummingbird-git/build
 create mode 100644 community-mod/hummingbird-git/checksums
 create mode 100644 community-mod/hummingbird-git/sources
 create mode 100644 community-mod/hummingbird-git/version
 create mode 100755 community-mod/iana-etc/build
 create mode 100644 community-mod/iana-etc/checksums
 create mode 100644 community-mod/iana-etc/files/protocols
 create mode 100644 community-mod/iana-etc/files/services
 create mode 100644 community-mod/iana-etc/sources
 create mode 100644 community-mod/iana-etc/version
 create mode 100755 community-mod/icu/build
 create mode 100644 community-mod/icu/checksums
 create mode 100644 community-mod/icu/sources
 create mode 100644 community-mod/icu/version
 create mode 100755 community-mod/ii/build
 create mode 100644 community-mod/ii/checksums
 create mode 100644 community-mod/ii/sources
 create mode 100644 community-mod/ii/version
 create mode 100755 community-mod/imagemagick/build
 create mode 100644 community-mod/imagemagick/checksums
 create mode 100644 community-mod/imagemagick/depends
 create mode 100644 community-mod/imagemagick/sources
 create mode 100644 community-mod/imagemagick/version
 create mode 100755 community-mod/imlib2/build
 create mode 100644 community-mod/imlib2/checksums
 create mode 100644 community-mod/imlib2/depends
 create mode 100644 community-mod/imlib2/sources
 create mode 100644 community-mod/imlib2/version
 create mode 100755 community-mod/intel-media-driver/build
 create mode 100644 community-mod/intel-media-driver/checksums
 create mode 100644 community-mod/intel-media-driver/depends
 create mode 100644 community-mod/intel-media-driver/sources
 create mode 100644 community-mod/intel-media-driver/version
 create mode 100755 community-mod/ioping/build
 create mode 100644 community-mod/ioping/checksums
 create mode 100644 community-mod/ioping/sources
 create mode 100644 community-mod/ioping/version
 create mode 100755 community-mod/iosevka-nerd-fonts/build
 create mode 100644 community-mod/iosevka-nerd-fonts/checksums
 create mode 100644 community-mod/iosevka-nerd-fonts/sources
 create mode 100644 community-mod/iosevka-nerd-fonts/version
 create mode 100755 community-mod/iproute2/build
 create mode 100644 community-mod/iproute2/checksums
 create mode 100644 community-mod/iproute2/depends
 create mode 100644 community-mod/iproute2/patches/0001-make-iproute2-fhs-compliant.patch
 create mode 100644 community-mod/iproute2/sources
 create mode 100644 community-mod/iproute2/version
 create mode 100755 community-mod/iptables/build
 create mode 100644 community-mod/iptables/checksums
 create mode 100644 community-mod/iptables/sources
 create mode 100644 community-mod/iptables/version
 create mode 100755 community-mod/iputils/build
 create mode 100644 community-mod/iputils/checksums
 create mode 100644 community-mod/iputils/depends
 create mode 100755 community-mod/iputils/post-install
 create mode 100644 community-mod/iputils/sources
 create mode 100644 community-mod/iputils/version
 create mode 100755 community-mod/irssi/build
 create mode 100644 community-mod/irssi/checksums
 create mode 100644 community-mod/irssi/depends
 create mode 100644 community-mod/irssi/sources
 create mode 100644 community-mod/irssi/version
 create mode 100755 community-mod/jansson/build
 create mode 100644 community-mod/jansson/checksums
 create mode 100644 community-mod/jansson/sources
 create mode 100644 community-mod/jansson/version
 create mode 100755 community-mod/jbig2dec/build
 create mode 100644 community-mod/jbig2dec/checksums
 create mode 100644 community-mod/jbig2dec/depends
 create mode 100644 community-mod/jbig2dec/sources
 create mode 100644 community-mod/jbig2dec/version
 create mode 100755 community-mod/jq/build
 create mode 100644 community-mod/jq/checksums
 create mode 100644 community-mod/jq/sources
 create mode 100644 community-mod/jq/version
 create mode 100755 community-mod/json-c/build
 create mode 100644 community-mod/json-c/checksums
 create mode 100644 community-mod/json-c/depends
 create mode 100644 community-mod/json-c/sources
 create mode 100644 community-mod/json-c/version
 create mode 100755 community-mod/keyutils/build
 create mode 100644 community-mod/keyutils/checksums
 create mode 100644 community-mod/keyutils/sources
 create mode 100644 community-mod/keyutils/version
 create mode 100755 community-mod/kirc/build
 create mode 100644 community-mod/kirc/checksums
 create mode 100644 community-mod/kirc/patches/channel.patch
 create mode 100644 community-mod/kirc/sources
 create mode 100644 community-mod/kirc/version
 create mode 100755 community-mod/kiss-encryption/build
 create mode 100644 community-mod/kiss-encryption/checksums
 create mode 100644 community-mod/kiss-encryption/sources
 create mode 100644 community-mod/kiss-encryption/version
 create mode 100755 community-mod/kmod/build
 create mode 100644 community-mod/kmod/checksums
 create mode 100644 community-mod/kmod/depends
 create mode 100644 community-mod/kmod/sources
 create mode 100644 community-mod/kmod/version
 create mode 100755 community-mod/lagrange/build
 create mode 100644 community-mod/lagrange/checksums
 create mode 100644 community-mod/lagrange/depends
 create mode 100644 community-mod/lagrange/sources
 create mode 100644 community-mod/lagrange/version
 create mode 100755 community-mod/lariza/build
 create mode 100644 community-mod/lariza/checksums
 create mode 100644 community-mod/lariza/depends
 create mode 100644 community-mod/lariza/sources
 create mode 100644 community-mod/lariza/version
 create mode 100755 community-mod/less/build
 create mode 100644 community-mod/less/checksums
 create mode 100644 community-mod/less/depends
 create mode 100644 community-mod/less/sources
 create mode 100644 community-mod/less/version
 create mode 100755 community-mod/lesstif/build
 create mode 100644 community-mod/lesstif/checksums
 create mode 100644 community-mod/lesstif/depends
 create mode 100644 community-mod/lesstif/sources
 create mode 100644 community-mod/lesstif/version
 create mode 100755 community-mod/libXslt/build
 create mode 100755 community-mod/libXslt/post-install
 create mode 100644 community-mod/libXslt/version
 create mode 100755 community-mod/libaio/build
 create mode 100644 community-mod/libaio/checksums
 create mode 100644 community-mod/libaio/sources
 create mode 100644 community-mod/libaio/version
 create mode 100755 community-mod/libarchive/build
 create mode 100644 community-mod/libarchive/checksums
 create mode 100644 community-mod/libarchive/depends
 create mode 100644 community-mod/libarchive/sources
 create mode 100644 community-mod/libarchive/version
 create mode 100755 community-mod/libassuan/build
 create mode 100644 community-mod/libassuan/checksums
 create mode 100644 community-mod/libassuan/depends
 create mode 100644 community-mod/libassuan/sources
 create mode 100644 community-mod/libassuan/version
 create mode 100755 community-mod/libburn/build
 create mode 100644 community-mod/libburn/checksums
 create mode 100644 community-mod/libburn/depends
 create mode 100644 community-mod/libburn/sources
 create mode 100644 community-mod/libburn/version
 create mode 100755 community-mod/libcap/build
 create mode 100644 community-mod/libcap/checksums
 create mode 100644 community-mod/libcap/depends
 create mode 100644 community-mod/libcap/sources
 create mode 100644 community-mod/libcap/version
 create mode 100755 community-mod/libconfig/build
 create mode 100644 community-mod/libconfig/checksums
 create mode 100644 community-mod/libconfig/sources
 create mode 100644 community-mod/libconfig/version
 create mode 100755 community-mod/libdvdcss/build
 create mode 100644 community-mod/libdvdcss/checksums
 create mode 100644 community-mod/libdvdcss/sources
 create mode 100644 community-mod/libdvdcss/version
 create mode 100755 community-mod/libdvdread/build
 create mode 100644 community-mod/libdvdread/checksums
 create mode 100644 community-mod/libdvdread/sources
 create mode 100644 community-mod/libdvdread/version
 create mode 100755 community-mod/libedit/build
 create mode 100644 community-mod/libedit/checksums
 create mode 100644 community-mod/libedit/depends
 create mode 100644 community-mod/libedit/sources
 create mode 100644 community-mod/libedit/version
 create mode 100755 community-mod/libev/build
 create mode 100644 community-mod/libev/checksums
 create mode 100644 community-mod/libev/sources
 create mode 100644 community-mod/libev/version
 create mode 100755 community-mod/libevent/build
 create mode 100644 community-mod/libevent/checksums
 create mode 100644 community-mod/libevent/sources
 create mode 100644 community-mod/libevent/version
 create mode 100755 community-mod/libexif/build
 create mode 100644 community-mod/libexif/checksums
 create mode 100644 community-mod/libexif/sources
 create mode 100644 community-mod/libexif/version
 create mode 100755 community-mod/libgcrypt/build
 create mode 100644 community-mod/libgcrypt/checksums
 create mode 100644 community-mod/libgcrypt/depends
 create mode 100644 community-mod/libgcrypt/sources
 create mode 100644 community-mod/libgcrypt/version
 create mode 100755 community-mod/libgmp/build
 create mode 100644 community-mod/libgmp/checksums
 create mode 100644 community-mod/libgmp/depends
 create mode 100644 community-mod/libgmp/sources
 create mode 100644 community-mod/libgmp/version
 create mode 100755 community-mod/libgpg-error/build
 create mode 100644 community-mod/libgpg-error/checksums
 create mode 100644 community-mod/libgpg-error/sources
 create mode 100644 community-mod/libgpg-error/version
 create mode 100755 community-mod/libisoburn/build
 create mode 100644 community-mod/libisoburn/checksums
 create mode 100644 community-mod/libisoburn/depends
 create mode 100644 community-mod/libisoburn/sources
 create mode 100644 community-mod/libisoburn/version
 create mode 100755 community-mod/libisofs/build
 create mode 100644 community-mod/libisofs/checksums
 create mode 100644 community-mod/libisofs/depends
 create mode 100644 community-mod/libisofs/sources
 create mode 100644 community-mod/libisofs/version
 create mode 100755 community-mod/libjpeg/build
 create mode 100644 community-mod/libjpeg/checksums
 create mode 100644 community-mod/libjpeg/sources
 create mode 100644 community-mod/libjpeg/version
 create mode 100755 community-mod/libksba/build
 create mode 100644 community-mod/libksba/checksums
 create mode 100644 community-mod/libksba/sources
 create mode 100644 community-mod/libksba/version
 create mode 100755 community-mod/libmad/build
 create mode 100644 community-mod/libmad/checksums
 create mode 100755 community-mod/libmad/sources
 create mode 100755 community-mod/libmad/version
 create mode 100755 community-mod/libmediainfo/build
 create mode 100644 community-mod/libmediainfo/checksums
 create mode 100644 community-mod/libmediainfo/depends
 create mode 100644 community-mod/libmediainfo/sources
 create mode 100644 community-mod/libmediainfo/version
 create mode 100755 community-mod/libmpc/build
 create mode 100644 community-mod/libmpc/checksums
 create mode 100644 community-mod/libmpc/depends
 create mode 100644 community-mod/libmpc/sources
 create mode 100644 community-mod/libmpc/version
 create mode 100755 community-mod/libmpfr/build
 create mode 100644 community-mod/libmpfr/checksums
 create mode 100644 community-mod/libmpfr/depends
 create mode 100644 community-mod/libmpfr/sources
 create mode 100644 community-mod/libmpfr/version
 create mode 100755 community-mod/libnghttp2/build
 create mode 100644 community-mod/libnghttp2/checksums
 create mode 100644 community-mod/libnghttp2/sources
 create mode 100644 community-mod/libnghttp2/version
 create mode 100755 community-mod/libnl/build
 create mode 100644 community-mod/libnl/checksums
 create mode 100644 community-mod/libnl/sources
 create mode 100644 community-mod/libnl/version
 create mode 100755 community-mod/libnpth/build
 create mode 100644 community-mod/libnpth/checksums
 create mode 100644 community-mod/libnpth/sources
 create mode 100644 community-mod/libnpth/version
 create mode 100755 community-mod/libpcap/build
 create mode 100644 community-mod/libpcap/checksums
 create mode 100644 community-mod/libpcap/sources
 create mode 100644 community-mod/libpcap/version
 create mode 100755 community-mod/libpsl/build
 create mode 100644 community-mod/libpsl/checksums
 create mode 100644 community-mod/libpsl/depends
 create mode 100644 community-mod/libpsl/sources
 create mode 100644 community-mod/libpsl/version
 create mode 100755 community-mod/libseccomp/build
 create mode 100644 community-mod/libseccomp/checksums
 create mode 100644 community-mod/libseccomp/depends
 create mode 100644 community-mod/libseccomp/sources
 create mode 100644 community-mod/libseccomp/version
 create mode 100755 community-mod/libsixel/build
 create mode 100644 community-mod/libsixel/checksums
 create mode 100644 community-mod/libsixel/depends
 create mode 100644 community-mod/libsixel/sources
 create mode 100644 community-mod/libsixel/version
 create mode 100755 community-mod/libsodium/build
 create mode 100644 community-mod/libsodium/checksums
 create mode 100644 community-mod/libsodium/sources
 create mode 100644 community-mod/libsodium/version
 create mode 100755 community-mod/libsoup/build
 create mode 100644 community-mod/libsoup/checksums
 create mode 100644 community-mod/libsoup/depends
 create mode 100644 community-mod/libsoup/sources
 create mode 100644 community-mod/libsoup/version
 create mode 100755 community-mod/libtasn1/build
 create mode 100644 community-mod/libtasn1/checksums
 create mode 100644 community-mod/libtasn1/sources
 create mode 100644 community-mod/libtasn1/version
 create mode 100755 community-mod/libtermkey/build
 create mode 100644 community-mod/libtermkey/checksums
 create mode 100644 community-mod/libtermkey/depends
 create mode 100644 community-mod/libtermkey/patches/static-no-libtool.patch
 create mode 100644 community-mod/libtermkey/sources
 create mode 100644 community-mod/libtermkey/version
 create mode 100755 community-mod/libtirpc/build
 create mode 100644 community-mod/libtirpc/checksums
 create mode 100644 community-mod/libtirpc/sources
 create mode 100644 community-mod/libtirpc/version
 create mode 100755 community-mod/libtool/build
 create mode 100644 community-mod/libtool/checksums
 create mode 100644 community-mod/libtool/depends
 create mode 100644 community-mod/libtool/sources
 create mode 100644 community-mod/libtool/version
 create mode 100755 community-mod/libtorrent/build
 create mode 100644 community-mod/libtorrent/checksums
 create mode 100644 community-mod/libtorrent/depends
 create mode 100644 community-mod/libtorrent/sources
 create mode 100644 community-mod/libtorrent/version
 create mode 100755 community-mod/libunistring/build
 create mode 100644 community-mod/libunistring/checksums
 create mode 100644 community-mod/libunistring/sources
 create mode 100644 community-mod/libunistring/version
 create mode 100755 community-mod/libusb/build
 create mode 100644 community-mod/libusb/checksums
 create mode 100644 community-mod/libusb/sources
 create mode 100644 community-mod/libusb/version
 create mode 100755 community-mod/libuv/build
 create mode 100644 community-mod/libuv/checksums
 create mode 100644 community-mod/libuv/depends
 create mode 100644 community-mod/libuv/sources
 create mode 100644 community-mod/libuv/version
 create mode 100755 community-mod/libvncserver/build
 create mode 100644 community-mod/libvncserver/checksums
 create mode 100644 community-mod/libvncserver/depends
 create mode 100644 community-mod/libvncserver/sources
 create mode 100644 community-mod/libvncserver/version
 create mode 100755 community-mod/libxml2/build
 create mode 100644 community-mod/libxml2/checksums
 create mode 100644 community-mod/libxml2/depends
 create mode 100644 community-mod/libxml2/sources
 create mode 100644 community-mod/libxml2/version
 create mode 100755 community-mod/libxslt/build
 create mode 100644 community-mod/libxslt/checksums
 create mode 100644 community-mod/libxslt/depends
 create mode 100644 community-mod/libxslt/sources
 create mode 100644 community-mod/libxslt/version
 create mode 100755 community-mod/libyajl/build
 create mode 100644 community-mod/libyajl/checksums
 create mode 100644 community-mod/libyajl/sources
 create mode 100644 community-mod/libyajl/version
 create mode 100755 community-mod/libzen/build
 create mode 100644 community-mod/libzen/checksums
 create mode 100644 community-mod/libzen/depends
 create mode 100644 community-mod/libzen/sources
 create mode 100644 community-mod/libzen/version
 create mode 100755 community-mod/lilo/build
 create mode 100644 community-mod/lilo/checksums
 create mode 100644 community-mod/lilo/depends
 create mode 100644 community-mod/lilo/files/lilo.conf
 create mode 100644 community-mod/lilo/patches/musl.patch
 create mode 100644 community-mod/lilo/patches/x86_64.patch
 create mode 100644 community-mod/lilo/sources
 create mode 100644 community-mod/lilo/version
 create mode 100755 community-mod/lld/build
 create mode 100644 community-mod/lld/checksums
 create mode 100644 community-mod/lld/depends
 create mode 100644 community-mod/lld/sources
 create mode 100644 community-mod/lld/version
 create mode 100755 community-mod/lm-sensors/build
 create mode 100644 community-mod/lm-sensors/checksums
 create mode 100644 community-mod/lm-sensors/depends
 create mode 100644 community-mod/lm-sensors/sources
 create mode 100644 community-mod/lm-sensors/version
 create mode 100755 community-mod/lmdb/build
 create mode 100644 community-mod/lmdb/checksums
 create mode 100644 community-mod/lmdb/sources
 create mode 100644 community-mod/lmdb/version
 create mode 100755 community-mod/lsof/build
 create mode 100644 community-mod/lsof/checksums
 create mode 100644 community-mod/lsof/sources
 create mode 100644 community-mod/lsof/version
 create mode 100755 community-mod/lua/build
 create mode 100644 community-mod/lua/checksums
 create mode 100644 community-mod/lua/files/lua.pc
 create mode 100644 community-mod/lua/sources
 create mode 100644 community-mod/lua/version
 create mode 100755 community-mod/luajit/build
 create mode 100644 community-mod/luajit/checksums
 create mode 100644 community-mod/luajit/sources
 create mode 100644 community-mod/luajit/version
 create mode 100755 community-mod/lxappearance/build
 create mode 100644 community-mod/lxappearance/checksums
 create mode 100644 community-mod/lxappearance/depends
 create mode 100644 community-mod/lxappearance/sources
 create mode 100644 community-mod/lxappearance/version
 create mode 100755 community-mod/lynx/build
 create mode 100644 community-mod/lynx/checksums
 create mode 100644 community-mod/lynx/depends
 create mode 100644 community-mod/lynx/sources
 create mode 100644 community-mod/lynx/version
 create mode 100755 community-mod/lz4/build
 create mode 100644 community-mod/lz4/checksums
 create mode 100644 community-mod/lz4/sources
 create mode 100644 community-mod/lz4/version
 create mode 100755 community-mod/lzo/build
 create mode 100644 community-mod/lzo/checksums
 create mode 100644 community-mod/lzo/sources
 create mode 100644 community-mod/lzo/version
 create mode 100755 community-mod/maim/build
 create mode 100644 community-mod/maim/checksums
 create mode 100644 community-mod/maim/depends
 create mode 100644 community-mod/maim/sources
 create mode 100644 community-mod/maim/version
 create mode 100755 community-mod/man-pages-posix/build
 create mode 100644 community-mod/man-pages-posix/checksums
 create mode 100644 community-mod/man-pages-posix/sources
 create mode 100644 community-mod/man-pages-posix/version
 create mode 100755 community-mod/man-pages/build
 create mode 100644 community-mod/man-pages/checksums
 create mode 100644 community-mod/man-pages/sources
 create mode 100644 community-mod/man-pages/version
 create mode 100755 community-mod/mawk/build
 create mode 100644 community-mod/mawk/checksums
 create mode 100644 community-mod/mawk/sources
 create mode 100644 community-mod/mawk/version
 create mode 100755 community-mod/mblaze/build
 create mode 100644 community-mod/mblaze/checksums
 create mode 100644 community-mod/mblaze/sources
 create mode 100644 community-mod/mblaze/version
 create mode 100755 community-mod/mdadm/build
 create mode 100644 community-mod/mdadm/checksums
 create mode 100644 community-mod/mdadm/sources
 create mode 100644 community-mod/mdadm/version
 create mode 100755 community-mod/mediainfo/build
 create mode 100644 community-mod/mediainfo/checksums
 create mode 100644 community-mod/mediainfo/depends
 create mode 100644 community-mod/mediainfo/sources
 create mode 100644 community-mod/mediainfo/version
 create mode 100755 community-mod/mg/build
 create mode 100644 community-mod/mg/checksums
 create mode 100644 community-mod/mg/depends
 create mode 100644 community-mod/mg/sources
 create mode 100644 community-mod/mg/version
 create mode 100755 community-mod/mksh/build
 create mode 100644 community-mod/mksh/checksums
 create mode 100644 community-mod/mksh/sources
 create mode 100644 community-mod/mksh/version
 create mode 100755 community-mod/most/build
 create mode 100644 community-mod/most/checksums
 create mode 100644 community-mod/most/depends
 create mode 100644 community-mod/most/sources
 create mode 100644 community-mod/most/version
 create mode 100755 community-mod/msmtp/build
 create mode 100644 community-mod/msmtp/checksums
 create mode 100644 community-mod/msmtp/depends
 create mode 100644 community-mod/msmtp/sources
 create mode 100644 community-mod/msmtp/version
 create mode 100755 community-mod/mutt/build
 create mode 100644 community-mod/mutt/checksums
 create mode 100644 community-mod/mutt/depends
 create mode 100644 community-mod/mutt/sources
 create mode 100644 community-mod/mutt/version
 create mode 100755 community-mod/nano/build
 create mode 100644 community-mod/nano/checksums
 create mode 100644 community-mod/nano/depends
 create mode 100644 community-mod/nano/sources
 create mode 100644 community-mod/nano/version
 create mode 100755 community-mod/nawk-git/build
 create mode 100644 community-mod/nawk-git/checksums
 create mode 100644 community-mod/nawk-git/sources
 create mode 100644 community-mod/nawk-git/version
 create mode 100755 community-mod/ncdu/build
 create mode 100644 community-mod/ncdu/checksums
 create mode 100644 community-mod/ncdu/depends
 create mode 100644 community-mod/ncdu/sources
 create mode 100644 community-mod/ncdu/version
 create mode 100755 community-mod/neofetch/build
 create mode 100644 community-mod/neofetch/checksums
 create mode 100644 community-mod/neofetch/depends
 create mode 100644 community-mod/neofetch/sources
 create mode 100644 community-mod/neofetch/version
 create mode 100755 community-mod/neomutt/build
 create mode 100644 community-mod/neomutt/checksums
 create mode 100644 community-mod/neomutt/depends
 create mode 100644 community-mod/neomutt/files/neomutt.1
 create mode 100644 community-mod/neomutt/files/neomuttrc.5
 create mode 100755 community-mod/neomutt/post-install
 create mode 100644 community-mod/neomutt/sources
 create mode 100644 community-mod/neomutt/version
 create mode 100755 community-mod/neovim/build
 create mode 100644 community-mod/neovim/checksums
 create mode 100644 community-mod/neovim/depends
 create mode 100644 community-mod/neovim/sources
 create mode 100644 community-mod/neovim/version
 create mode 100755 community-mod/nettle/build
 create mode 100644 community-mod/nettle/checksums
 create mode 100644 community-mod/nettle/sources
 create mode 100644 community-mod/nettle/version
 create mode 100755 community-mod/nfs-utils/build
 create mode 100644 community-mod/nfs-utils/checksums
 create mode 100644 community-mod/nfs-utils/depends
 create mode 100644 community-mod/nfs-utils/sources
 create mode 100644 community-mod/nfs-utils/version
 create mode 100755 community-mod/nmap/build
 create mode 100644 community-mod/nmap/checksums
 create mode 100644 community-mod/nmap/sources
 create mode 100644 community-mod/nmap/version
 create mode 100755 community-mod/nss/build
 create mode 100644 community-mod/nss/checksums
 create mode 100644 community-mod/nss/depends
 create mode 100644 community-mod/nss/sources
 create mode 100644 community-mod/nss/version
 create mode 100755 community-mod/nvme-cli/build
 create mode 100644 community-mod/nvme-cli/checksums
 create mode 100644 community-mod/nvme-cli/depends
 create mode 100644 community-mod/nvme-cli/sources
 create mode 100644 community-mod/nvme-cli/version
 create mode 100755 community-mod/oath-toolkit/build
 create mode 100644 community-mod/oath-toolkit/checksums
 create mode 100644 community-mod/oath-toolkit/depends
 create mode 100644 community-mod/oath-toolkit/sources
 create mode 100644 community-mod/oath-toolkit/version
 create mode 100755 community-mod/oed/build
 create mode 100644 community-mod/oed/checksums
 create mode 100644 community-mod/oed/sources
 create mode 100644 community-mod/oed/version
 create mode 100755 community-mod/oksh/build
 create mode 100644 community-mod/oksh/checksums
 create mode 100644 community-mod/oksh/depends
 create mode 100755 community-mod/oksh/post-install
 create mode 100644 community-mod/oksh/sources
 create mode 100644 community-mod/oksh/version
 create mode 100755 community-mod/openjpeg2/build
 create mode 100644 community-mod/openjpeg2/checksums
 create mode 100644 community-mod/openjpeg2/depends
 create mode 100644 community-mod/openjpeg2/sources
 create mode 100644 community-mod/openjpeg2/version
 create mode 100755 community-mod/openvpn/build
 create mode 100644 community-mod/openvpn/checksums
 create mode 100644 community-mod/openvpn/depends
 create mode 100644 community-mod/openvpn/sources
 create mode 100644 community-mod/openvpn/version
 create mode 100755 community-mod/optipng/build
 create mode 100644 community-mod/optipng/checksums
 create mode 100644 community-mod/optipng/depends
 create mode 100644 community-mod/optipng/sources
 create mode 100644 community-mod/optipng/version
 create mode 100755 community-mod/p11-kit/build
 create mode 100644 community-mod/p11-kit/checksums
 create mode 100644 community-mod/p11-kit/depends
 create mode 100644 community-mod/p11-kit/sources
 create mode 100644 community-mod/p11-kit/version
 create mode 100755 community-mod/patch/build
 create mode 100644 community-mod/patch/checksums
 create mode 100644 community-mod/patch/sources
 create mode 100644 community-mod/patch/version
 create mode 100755 community-mod/pciutils/build
 create mode 100644 community-mod/pciutils/checksums
 create mode 100644 community-mod/pciutils/depends
 create mode 100644 community-mod/pciutils/sources
 create mode 100644 community-mod/pciutils/version
 create mode 100755 community-mod/pcre/build
 create mode 100644 community-mod/pcre/checksums
 create mode 100644 community-mod/pcre/sources
 create mode 100644 community-mod/pcre/version
 create mode 100755 community-mod/pcre2/build
 create mode 100644 community-mod/pcre2/checksums
 create mode 100644 community-mod/pcre2/sources
 create mode 100644 community-mod/pcre2/version
 create mode 100755 community-mod/pfetch/build
 create mode 100644 community-mod/pfetch/checksums
 create mode 100644 community-mod/pfetch/sources
 create mode 100644 community-mod/pfetch/version
 create mode 100755 community-mod/picom/build
 create mode 100644 community-mod/picom/checksums
 create mode 100644 community-mod/picom/depends
 create mode 100644 community-mod/picom/sources
 create mode 100644 community-mod/picom/version
 create mode 100755 community-mod/pkcs11-helper/build
 create mode 100644 community-mod/pkcs11-helper/checksums
 create mode 100644 community-mod/pkcs11-helper/depends
 create mode 100644 community-mod/pkcs11-helper/sources
 create mode 100644 community-mod/pkcs11-helper/version
 create mode 100755 community-mod/poppler-data/build
 create mode 100644 community-mod/poppler-data/checksums
 create mode 100644 community-mod/poppler-data/sources
 create mode 100644 community-mod/poppler-data/version
 create mode 100755 community-mod/poppler/build
 create mode 100644 community-mod/poppler/checksums
 create mode 100644 community-mod/poppler/depends
 create mode 100644 community-mod/poppler/sources
 create mode 100644 community-mod/poppler/version
 create mode 100755 community-mod/popt/build
 create mode 100644 community-mod/popt/checksums
 create mode 100644 community-mod/popt/sources
 create mode 100644 community-mod/popt/version
 create mode 100755 community-mod/postgresql/build
 create mode 100644 community-mod/postgresql/checksums
 create mode 100644 community-mod/postgresql/depends
 create mode 100755 community-mod/postgresql/files/postgresql.run
 create mode 100644 community-mod/postgresql/files/postgresqld.conf
 create mode 100755 community-mod/postgresql/post-install
 create mode 100644 community-mod/postgresql/sources
 create mode 100644 community-mod/postgresql/version
 create mode 100755 community-mod/procps-ng/build
 create mode 100644 community-mod/procps-ng/checksums
 create mode 100644 community-mod/procps-ng/depends
 create mode 100644 community-mod/procps-ng/sources
 create mode 100644 community-mod/procps-ng/version
 create mode 100755 community-mod/python2/build
 create mode 100644 community-mod/python2/checksums
 create mode 100644 community-mod/python2/depends
 create mode 100644 community-mod/python2/patches/python2-always-pip.patch
 create mode 100644 community-mod/python2/sources
 create mode 100644 community-mod/python2/version
 create mode 100755 community-mod/qbe/build
 create mode 100644 community-mod/qbe/sources
 create mode 100644 community-mod/qbe/version
 create mode 100755 community-mod/qemu/build
 create mode 100644 community-mod/qemu/checksums
 create mode 100644 community-mod/qemu/depends
 create mode 100644 community-mod/qemu/patches/001-sigtrm-max.patch
 create mode 100644 community-mod/qemu/patches/002-syscall.patch
 create mode 100644 community-mod/qemu/patches/CVE-2021-20255.patch
 create mode 100644 community-mod/qemu/patches/CVE-2021-3527.patch
 create mode 100644 community-mod/qemu/sources
 create mode 100644 community-mod/qemu/version
 create mode 100755 community-mod/qpdf/build
 create mode 100644 community-mod/qpdf/checksums
 create mode 100644 community-mod/qpdf/depends
 create mode 100644 community-mod/qpdf/sources
 create mode 100644 community-mod/qpdf/version
 create mode 100755 community-mod/qrencode/build
 create mode 100644 community-mod/qrencode/checksums
 create mode 100644 community-mod/qrencode/depends
 create mode 100644 community-mod/qrencode/sources
 create mode 100644 community-mod/qrencode/version
 create mode 100755 community-mod/radare2/build
 create mode 100644 community-mod/radare2/checksums
 create mode 100644 community-mod/radare2/sources
 create mode 100644 community-mod/radare2/version
 create mode 100755 community-mod/rdrview/build
 create mode 100644 community-mod/rdrview/depends
 create mode 100644 community-mod/rdrview/sources
 create mode 100644 community-mod/rdrview/version
 create mode 100755 community-mod/readline/build
 create mode 100644 community-mod/readline/checksums
 create mode 100644 community-mod/readline/depends
 create mode 100644 community-mod/readline/sources
 create mode 100644 community-mod/readline/version
 create mode 100755 community-mod/retrogram-rtlsdr/build
 create mode 100644 community-mod/retrogram-rtlsdr/checksums
 create mode 100644 community-mod/retrogram-rtlsdr/depends
 create mode 100644 community-mod/retrogram-rtlsdr/sources
 create mode 100644 community-mod/retrogram-rtlsdr/version
 create mode 100755 community-mod/rpcsvc-proto/build
 create mode 100644 community-mod/rpcsvc-proto/checksums
 create mode 100644 community-mod/rpcsvc-proto/sources
 create mode 100644 community-mod/rpcsvc-proto/version
 create mode 100755 community-mod/rtorrent/build
 create mode 100644 community-mod/rtorrent/checksums
 create mode 100644 community-mod/rtorrent/depends
 create mode 100644 community-mod/rtorrent/sources
 create mode 100644 community-mod/rtorrent/version
 create mode 100755 community-mod/ruby/build
 create mode 100644 community-mod/ruby/checksums
 create mode 100644 community-mod/ruby/depends
 create mode 100644 community-mod/ruby/sources
 create mode 100644 community-mod/ruby/version
 create mode 100755 community-mod/s6-linux-init/build
 create mode 100644 community-mod/s6-linux-init/checksums
 create mode 100644 community-mod/s6-linux-init/depends
 create mode 100755 community-mod/s6-linux-init/post-install
 create mode 100644 community-mod/s6-linux-init/sources
 create mode 100644 community-mod/s6-linux-init/version
 create mode 100755 community-mod/s6-rc/build
 create mode 100644 community-mod/s6-rc/checksums
 create mode 100644 community-mod/s6-rc/depends
 create mode 100644 community-mod/s6-rc/sources
 create mode 100644 community-mod/s6-rc/version
 create mode 100755 community-mod/s6/build
 create mode 100644 community-mod/s6/checksums
 create mode 100644 community-mod/s6/depends
 create mode 100644 community-mod/s6/sources
 create mode 100644 community-mod/s6/version
 create mode 100755 community-mod/sbase/build
 create mode 100644 community-mod/sbase/checksums
 create mode 100644 community-mod/sbase/patches/tar-dash-remove.patch
 create mode 100644 community-mod/sbase/sources
 create mode 100644 community-mod/sbase/version
 create mode 100755 community-mod/sc-im/build
 create mode 100644 community-mod/sc-im/checksums
 create mode 100644 community-mod/sc-im/depends
 create mode 100644 community-mod/sc-im/sources
 create mode 100644 community-mod/sc-im/version
 create mode 100755 community-mod/sc/build
 create mode 100644 community-mod/sc/checksums
 create mode 100644 community-mod/sc/depends
 create mode 100644 community-mod/sc/sources
 create mode 100644 community-mod/sc/version
 create mode 100755 community-mod/scdoc/build
 create mode 100644 community-mod/scdoc/checksums
 create mode 100644 community-mod/scdoc/sources
 create mode 100644 community-mod/scdoc/version
 create mode 100755 community-mod/screen/build
 create mode 100644 community-mod/screen/checksums
 create mode 100644 community-mod/screen/sources
 create mode 100644 community-mod/screen/version
 create mode 100755 community-mod/scroll/build
 create mode 100644 community-mod/scroll/checksums
 create mode 100644 community-mod/scroll/sources
 create mode 100644 community-mod/scroll/version
 create mode 100755 community-mod/scrot/build
 create mode 100644 community-mod/scrot/checksums
 create mode 100644 community-mod/scrot/depends
 create mode 100644 community-mod/scrot/sources
 create mode 100644 community-mod/scrot/version
 create mode 100755 community-mod/sct/build
 create mode 100644 community-mod/sct/checksums
 create mode 100644 community-mod/sct/depends
 create mode 100644 community-mod/sct/sources
 create mode 100644 community-mod/sct/version
 create mode 100755 community-mod/sdcv/build
 create mode 100644 community-mod/sdcv/checksums
 create mode 100644 community-mod/sdcv/depends
 create mode 100644 community-mod/sdcv/sources
 create mode 100644 community-mod/sdcv/version
 create mode 100755 community-mod/sdl/build
 create mode 100644 community-mod/sdl/checksums
 create mode 100644 community-mod/sdl/depends
 create mode 100644 community-mod/sdl/sources
 create mode 100644 community-mod/sdl/version
 create mode 100755 community-mod/sdl2/build
 create mode 100644 community-mod/sdl2/checksums
 create mode 100644 community-mod/sdl2/depends
 create mode 100644 community-mod/sdl2/sources
 create mode 100644 community-mod/sdl2/version
 create mode 100755 community-mod/seatd/build
 create mode 100644 community-mod/seatd/checksums
 create mode 100644 community-mod/seatd/depends
 create mode 100755 community-mod/seatd/files/run
 create mode 100644 community-mod/seatd/sources
 create mode 100644 community-mod/seatd/version
 create mode 100755 community-mod/secret/build
 create mode 100644 community-mod/secret/checksums
 create mode 100644 community-mod/secret/sources
 create mode 100644 community-mod/secret/version
 create mode 100755 community-mod/sed-i/build
 create mode 100644 community-mod/sed-i/checksums
 create mode 100755 community-mod/sed-i/post-install
 create mode 100644 community-mod/sed-i/sources
 create mode 100644 community-mod/sed-i/version
 create mode 100755 community-mod/setroot/build
 create mode 100644 community-mod/setroot/checksums
 create mode 100644 community-mod/setroot/depends
 create mode 100644 community-mod/setroot/sources
 create mode 100644 community-mod/setroot/version
 create mode 100755 community-mod/sfeed/build
 create mode 100644 community-mod/sfeed/checksums
 create mode 100644 community-mod/sfeed/depends
 create mode 100644 community-mod/sfeed/sources
 create mode 100644 community-mod/sfeed/version
 create mode 100755 community-mod/sfeed_curses/build
 create mode 100644 community-mod/sfeed_curses/checksums
 create mode 100644 community-mod/sfeed_curses/depends
 create mode 100644 community-mod/sfeed_curses/sources
 create mode 100644 community-mod/sfeed_curses/version
 create mode 100755 community-mod/sgt-puzzles/build
 create mode 100644 community-mod/sgt-puzzles/checksums
 create mode 100644 community-mod/sgt-puzzles/depends
 create mode 100644 community-mod/sgt-puzzles/sources
 create mode 100644 community-mod/sgt-puzzles/version
 create mode 100755 community-mod/shadow/build
 create mode 100644 community-mod/shadow/checksums
 create mode 100644 community-mod/shadow/sources
 create mode 100644 community-mod/shadow/version
 create mode 100755 community-mod/shellcheck-bin/build
 create mode 100644 community-mod/shellcheck-bin/checksums
 create mode 100644 community-mod/shellcheck-bin/sources
 create mode 100644 community-mod/shellcheck-bin/version
 create mode 100755 community-mod/shinit/build
 create mode 100644 community-mod/shinit/checksums
 create mode 100644 community-mod/shinit/sources
 create mode 100644 community-mod/shinit/version
 create mode 100755 community-mod/sinit/build
 create mode 100644 community-mod/sinit/checksums
 create mode 100644 community-mod/sinit/depends
 create mode 100644 community-mod/sinit/files/config.h
 create mode 100644 community-mod/sinit/files/poweroff
 create mode 100644 community-mod/sinit/files/reboot
 create mode 100644 community-mod/sinit/files/sinit-launch-services.boot
 create mode 100755 community-mod/sinit/post-install
 create mode 100644 community-mod/sinit/sources
 create mode 100644 community-mod/sinit/version
 create mode 100755 community-mod/skalibs/build
 create mode 100644 community-mod/skalibs/checksums
 create mode 100644 community-mod/skalibs/sources
 create mode 100644 community-mod/skalibs/version
 create mode 100755 community-mod/slang/build
 create mode 100644 community-mod/slang/checksums
 create mode 100644 community-mod/slang/depends
 create mode 100644 community-mod/slang/sources
 create mode 100644 community-mod/slang/version
 create mode 100755 community-mod/slock/build
 create mode 100644 community-mod/slock/checksums
 create mode 100644 community-mod/slock/depends
 create mode 100644 community-mod/slock/sources
 create mode 100644 community-mod/slock/version
 create mode 100755 community-mod/slop/build
 create mode 100644 community-mod/slop/checksums
 create mode 100644 community-mod/slop/depends
 create mode 100644 community-mod/slop/sources
 create mode 100644 community-mod/slop/version
 create mode 100755 community-mod/squashfs-tools/build
 create mode 100644 community-mod/squashfs-tools/checksums
 create mode 100644 community-mod/squashfs-tools/depends
 create mode 100644 community-mod/squashfs-tools/sources
 create mode 100644 community-mod/squashfs-tools/version
 create mode 100755 community-mod/sshfs/build
 create mode 100644 community-mod/sshfs/checksums
 create mode 100644 community-mod/sshfs/depends
 create mode 100644 community-mod/sshfs/sources
 create mode 100644 community-mod/sshfs/version
 create mode 100755 community-mod/ssu/build
 create mode 100644 community-mod/ssu/checksums
 create mode 100755 community-mod/ssu/post-install
 create mode 100644 community-mod/ssu/sources
 create mode 100644 community-mod/ssu/version
 create mode 100755 community-mod/sx/build
 create mode 100644 community-mod/sx/checksums
 create mode 100644 community-mod/sx/depends
 create mode 100644 community-mod/sx/sources
 create mode 100644 community-mod/sx/version
 create mode 100755 community-mod/sxhkd/build
 create mode 100644 community-mod/sxhkd/checksums
 create mode 100644 community-mod/sxhkd/depends
 create mode 100644 community-mod/sxhkd/sources
 create mode 100644 community-mod/sxhkd/version
 create mode 100755 community-mod/sxiv/build
 create mode 100644 community-mod/sxiv/checksums
 create mode 100644 community-mod/sxiv/depends
 create mode 100644 community-mod/sxiv/sources
 create mode 100644 community-mod/sxiv/version
 create mode 100755 community-mod/sysmgr/build
 create mode 100644 community-mod/sysmgr/checksums
 create mode 100644 community-mod/sysmgr/files/respawn
 create mode 100644 community-mod/sysmgr/files/sysmgr.boot
 create mode 100644 community-mod/sysmgr/files/sysmgr.pre.shutdown
 create mode 100755 community-mod/sysmgr/post-install
 create mode 100644 community-mod/sysmgr/sources
 create mode 100644 community-mod/sysmgr/version
 create mode 100755 community-mod/tabbed/build
 create mode 100644 community-mod/tabbed/checksums
 create mode 100644 community-mod/tabbed/depends
 create mode 100644 community-mod/tabbed/files/tabbed-0.6-xft.diff
 create mode 100644 community-mod/tabbed/sources
 create mode 100644 community-mod/tabbed/version
 create mode 100755 community-mod/tcc/build
 create mode 100644 community-mod/tcc/checksums
 create mode 100644 community-mod/tcc/sources
 create mode 100644 community-mod/tcc/version
 create mode 100755 community-mod/tcpdump/build
 create mode 100644 community-mod/tcpdump/checksums
 create mode 100644 community-mod/tcpdump/depends
 create mode 100644 community-mod/tcpdump/sources
 create mode 100644 community-mod/tcpdump/version
 create mode 100755 community-mod/tdb/build
 create mode 100644 community-mod/tdb/checksums
 create mode 100644 community-mod/tdb/depends
 create mode 100644 community-mod/tdb/sources
 create mode 100644 community-mod/tdb/version
 create mode 100755 community-mod/tig/build
 create mode 100644 community-mod/tig/checksums
 create mode 100644 community-mod/tig/depends
 create mode 100644 community-mod/tig/sources
 create mode 100644 community-mod/tig/version
 create mode 100755 community-mod/tiv/build
 create mode 100644 community-mod/tiv/checksums
 create mode 100644 community-mod/tiv/depends
 create mode 100644 community-mod/tiv/sources
 create mode 100644 community-mod/tiv/version
 create mode 100755 community-mod/tmux/build
 create mode 100644 community-mod/tmux/checksums
 create mode 100644 community-mod/tmux/depends
 create mode 100644 community-mod/tmux/sources
 create mode 100644 community-mod/tmux/version
 create mode 100755 community-mod/tor/build
 create mode 100644 community-mod/tor/checksums
 create mode 100644 community-mod/tor/depends
 create mode 100644 community-mod/tor/files/tor.run
 create mode 100644 community-mod/tor/sources
 create mode 100644 community-mod/tor/version
 create mode 100755 community-mod/torsocks/build
 create mode 100644 community-mod/torsocks/checksums
 create mode 100644 community-mod/torsocks/depends
 create mode 100644 community-mod/torsocks/sources
 create mode 100644 community-mod/torsocks/version
 create mode 100755 community-mod/transmission/build
 create mode 100644 community-mod/transmission/checksums
 create mode 100644 community-mod/transmission/depends
 create mode 100644 community-mod/transmission/sources
 create mode 100644 community-mod/transmission/version
 create mode 100755 community-mod/tree/build
 create mode 100644 community-mod/tree/checksums
 create mode 100644 community-mod/tree/sources
 create mode 100644 community-mod/tree/version
 create mode 100755 community-mod/tty-clock/build
 create mode 100644 community-mod/tty-clock/checksums
 create mode 100644 community-mod/tty-clock/depends
 create mode 100644 community-mod/tty-clock/sources
 create mode 100644 community-mod/tty-clock/version
 create mode 100755 community-mod/ubase/build
 create mode 100644 community-mod/ubase/checksums
 create mode 100644 community-mod/ubase/patches/f3aa4b156360ce4a18e4a3897f883b663771ba24.patch
 create mode 100644 community-mod/ubase/patches/fix-mount.patch
 create mode 100644 community-mod/ubase/sources
 create mode 100644 community-mod/ubase/version
 create mode 100755 community-mod/unifont/build
 create mode 100644 community-mod/unifont/checksums
 create mode 100644 community-mod/unifont/sources
 create mode 100644 community-mod/unifont/version
 create mode 100755 community-mod/urlview/build
 create mode 100644 community-mod/urlview/checksums
 create mode 100644 community-mod/urlview/depends
 create mode 100644 community-mod/urlview/sources
 create mode 100644 community-mod/urlview/version
 create mode 100755 community-mod/usbutils/build
 create mode 100644 community-mod/usbutils/checksums
 create mode 100644 community-mod/usbutils/depends
 create mode 100644 community-mod/usbutils/sources
 create mode 100644 community-mod/usbutils/version
 create mode 100755 community-mod/uthash/build
 create mode 100644 community-mod/uthash/checksums
 create mode 100644 community-mod/uthash/sources
 create mode 100644 community-mod/uthash/version
 create mode 100755 community-mod/webkit2gtk/build
 create mode 100644 community-mod/webkit2gtk/checksums
 create mode 100644 community-mod/webkit2gtk/depends
 create mode 100644 community-mod/webkit2gtk/sources
 create mode 100644 community-mod/webkit2gtk/version
 create mode 100755 community-mod/weechat/build
 create mode 100644 community-mod/weechat/checksums
 create mode 100644 community-mod/weechat/depends
 create mode 100644 community-mod/weechat/sources
 create mode 100644 community-mod/weechat/version
 create mode 100755 community-mod/wget/build
 create mode 100644 community-mod/wget/checksums
 create mode 100644 community-mod/wget/depends
 create mode 100644 community-mod/wget/sources
 create mode 100644 community-mod/wget/version
 create mode 100755 community-mod/wireguard-tools/build
 create mode 100644 community-mod/wireguard-tools/checksums
 create mode 100644 community-mod/wireguard-tools/sources
 create mode 100644 community-mod/wireguard-tools/version
 create mode 100755 community-mod/x11vnc/build
 create mode 100644 community-mod/x11vnc/checksums
 create mode 100644 community-mod/x11vnc/depends
 create mode 100644 community-mod/x11vnc/patches/bugfixes.patch
 create mode 100644 community-mod/x11vnc/patches/libressl.patch
 create mode 100644 community-mod/x11vnc/sources
 create mode 100644 community-mod/x11vnc/version
 create mode 100755 community-mod/xbg/build
 create mode 100644 community-mod/xbg/checksums
 create mode 100644 community-mod/xbg/depends
 create mode 100644 community-mod/xbg/sources
 create mode 100644 community-mod/xbg/version
 create mode 100755 community-mod/xcb-util-xrm/build
 create mode 100644 community-mod/xcb-util-xrm/checksums
 create mode 100644 community-mod/xcb-util-xrm/depends
 create mode 100644 community-mod/xcb-util-xrm/sources
 create mode 100644 community-mod/xcb-util-xrm/version
 create mode 100755 community-mod/xclip/build
 create mode 100644 community-mod/xclip/checksums
 create mode 100644 community-mod/xclip/depends
 create mode 100644 community-mod/xclip/sources
 create mode 100644 community-mod/xclip/version
 create mode 100755 community-mod/xdotool/build
 create mode 100644 community-mod/xdotool/checksums
 create mode 100644 community-mod/xdotool/depends
 create mode 100644 community-mod/xdotool/sources
 create mode 100644 community-mod/xdotool/version
 create mode 100755 community-mod/xhost/build
 create mode 100644 community-mod/xhost/checksums
 create mode 100644 community-mod/xhost/depends
 create mode 100644 community-mod/xhost/sources
 create mode 100644 community-mod/xhost/version
 create mode 100755 community-mod/xkb-switch/build
 create mode 100644 community-mod/xkb-switch/checksums
 create mode 100644 community-mod/xkb-switch/depends
 create mode 100644 community-mod/xkb-switch/sources
 create mode 100644 community-mod/xkb-switch/version
 create mode 100755 community-mod/xmlsec1/build
 create mode 100644 community-mod/xmlsec1/checksums
 create mode 100644 community-mod/xmlsec1/depends
 create mode 100644 community-mod/xmlsec1/sources
 create mode 100644 community-mod/xmlsec1/version
 create mode 100755 community-mod/xmodmap/build
 create mode 100644 community-mod/xmodmap/checksums
 create mode 100644 community-mod/xmodmap/depends
 create mode 100644 community-mod/xmodmap/sources
 create mode 100644 community-mod/xmodmap/version
 create mode 100755 community-mod/xssstate/build
 create mode 100644 community-mod/xssstate/checksums
 create mode 100644 community-mod/xssstate/depends
 create mode 100644 community-mod/xssstate/sources
 create mode 100644 community-mod/xssstate/version
 create mode 100755 community-mod/xtrlock/build
 create mode 100644 community-mod/xtrlock/checksums
 create mode 100644 community-mod/xtrlock/depends
 create mode 100644 community-mod/xtrlock/sources
 create mode 100644 community-mod/xtrlock/version
 create mode 100755 community-mod/xwallpaper/build
 create mode 100644 community-mod/xwallpaper/checksums
 create mode 100644 community-mod/xwallpaper/depends
 create mode 100644 community-mod/xwallpaper/sources
 create mode 100644 community-mod/xwallpaper/version
 create mode 100755 community-mod/xwm/build
 create mode 100644 community-mod/xwm/checksums
 create mode 100644 community-mod/xwm/depends
 create mode 100644 community-mod/xwm/sources
 create mode 100644 community-mod/xwm/version
 create mode 100755 community-mod/yasm/build
 create mode 100644 community-mod/yasm/checksums
 create mode 100644 community-mod/yasm/sources
 create mode 100644 community-mod/yasm/version
 create mode 100755 core-mod/core/baseinit/build
 create mode 100644 core-mod/core/baseinit/checksums
 create mode 100755 core-mod/core/baseinit/post-install
 create mode 100644 core-mod/core/baseinit/sources
 create mode 100644 core-mod/core/baseinit/version
 create mode 100755 core-mod/core/baselayout/build
 create mode 100644 core-mod/core/baselayout/checksums
 create mode 100644 core-mod/core/baselayout/files/crypttab
 create mode 100644 core-mod/core/baselayout/files/fstab
 create mode 100644 core-mod/core/baselayout/files/group
 create mode 100644 core-mod/core/baselayout/files/host.conf
 create mode 100644 core-mod/core/baselayout/files/hosts
 create mode 100644 core-mod/core/baselayout/files/issue
 create mode 100644 core-mod/core/baselayout/files/mime.types
 create mode 100644 core-mod/core/baselayout/files/os-release
 create mode 100644 core-mod/core/baselayout/files/passwd
 create mode 100644 core-mod/core/baselayout/files/profile
 create mode 100644 core-mod/core/baselayout/files/securetty
 create mode 100644 core-mod/core/baselayout/files/shadow
 create mode 100644 core-mod/core/baselayout/files/shells
 create mode 100644 core-mod/core/baselayout/sources
 create mode 100644 core-mod/core/baselayout/version
 create mode 100755 core-mod/core/binutils/build
 create mode 100644 core-mod/core/binutils/checksums
 create mode 100644 core-mod/core/binutils/depends
 create mode 100644 core-mod/core/binutils/sources
 create mode 100644 core-mod/core/binutils/version
 create mode 100755 core-mod/core/bison/build
 create mode 100644 core-mod/core/bison/checksums
 create mode 100644 core-mod/core/bison/depends
 create mode 100644 core-mod/core/bison/sources
 create mode 100644 core-mod/core/bison/version
 create mode 100755 core-mod/core/busybox/build
 create mode 100644 core-mod/core/busybox/checksums
 create mode 100644 core-mod/core/busybox/depends
 create mode 100644 core-mod/core/busybox/files/.config
 create mode 100644 core-mod/core/busybox/files/.config-suid
 create mode 100644 core-mod/core/busybox/files/acpid.run
 create mode 100644 core-mod/core/busybox/files/crond.run
 create mode 100644 core-mod/core/busybox/files/mdev.conf
 create mode 100644 core-mod/core/busybox/files/mdev.run
 create mode 100644 core-mod/core/busybox/files/ntpd.run
 create mode 100644 core-mod/core/busybox/files/syslogd.run
 create mode 100644 core-mod/core/busybox/patches/adduser-no-setgid.patch
 create mode 100644 core-mod/core/busybox/patches/fix-UB+clang.patch
 create mode 100644 core-mod/core/busybox/patches/fsck-resolve-uuid.patch
 create mode 100644 core-mod/core/busybox/patches/install-fix-chown.patch
 create mode 100644 core-mod/core/busybox/patches/libressl.patch
 create mode 100644 core-mod/core/busybox/patches/lsusb-vendor-product.patch
 create mode 100644 core-mod/core/busybox/patches/modprobe-kernel-version.patch
 create mode 100644 core-mod/core/busybox/patches/print-unicode.patch
 create mode 100644 core-mod/core/busybox/patches/unzip-usage-no-error.patch
 create mode 100644 core-mod/core/busybox/sources
 create mode 100644 core-mod/core/busybox/version
 create mode 100755 core-mod/core/bzip2/build
 create mode 100644 core-mod/core/bzip2/checksums
 create mode 100644 core-mod/core/bzip2/sources
 create mode 100644 core-mod/core/bzip2/version
 create mode 100755 core-mod/core/curl/build
 create mode 100644 core-mod/core/curl/checksums
 create mode 100644 core-mod/core/curl/depends
 create mode 100644 core-mod/core/curl/sources
 create mode 100644 core-mod/core/curl/version
 create mode 100755 core-mod/core/flex/build
 create mode 100644 core-mod/core/flex/checksums
 create mode 100644 core-mod/core/flex/depends
 create mode 100644 core-mod/core/flex/sources
 create mode 100644 core-mod/core/flex/version
 create mode 100755 core-mod/core/gcc/build
 create mode 100644 core-mod/core/gcc/checksums
 create mode 100644 core-mod/core/gcc/depends
 create mode 100644 core-mod/core/gcc/files/c99
 create mode 100644 core-mod/core/gcc/sources
 create mode 100644 core-mod/core/gcc/version
 create mode 100755 core-mod/core/git/build
 create mode 100644 core-mod/core/git/checksums
 create mode 100644 core-mod/core/git/depends
 create mode 100644 core-mod/core/git/sources
 create mode 100644 core-mod/core/git/version
 create mode 100755 core-mod/core/gzip/build
 create mode 100644 core-mod/core/gzip/checksums
 create mode 100644 core-mod/core/gzip/sources
 create mode 100644 core-mod/core/gzip/version
 create mode 100755 core-mod/core/kiss/build
 create mode 100644 core-mod/core/kiss/checksums
 create mode 100644 core-mod/core/kiss/depends
 create mode 100644 core-mod/core/kiss/sources
 create mode 100644 core-mod/core/kiss/version
 create mode 100755 core-mod/core/libressl/build
 create mode 100644 core-mod/core/libressl/checksums
 create mode 100755 core-mod/core/libressl/files/update-certdata.sh
 create mode 100755 core-mod/core/libressl/post-install
 create mode 100644 core-mod/core/libressl/sources
 create mode 100644 core-mod/core/libressl/version
 create mode 100755 core-mod/core/linux-headers/build
 create mode 100644 core-mod/core/linux-headers/checksums
 create mode 100644 core-mod/core/linux-headers/sources
 create mode 100644 core-mod/core/linux-headers/version
 create mode 100755 core-mod/core/m4/build
 create mode 100644 core-mod/core/m4/checksums
 create mode 100644 core-mod/core/m4/sources
 create mode 100644 core-mod/core/m4/version
 create mode 100755 core-mod/core/make/build
 create mode 100644 core-mod/core/make/checksums
 create mode 100644 core-mod/core/make/sources
 create mode 100644 core-mod/core/make/version
 create mode 100755 core-mod/core/musl/build
 create mode 100644 core-mod/core/musl/checksums
 create mode 100755 core-mod/core/musl/files/cdefs.h
 create mode 100644 core-mod/core/musl/files/getconf.c
 create mode 100644 core-mod/core/musl/files/getent.c
 create mode 100755 core-mod/core/musl/files/queue.h
 create mode 100755 core-mod/core/musl/files/tree.h
 create mode 100644 core-mod/core/musl/sources
 create mode 100644 core-mod/core/musl/version
 create mode 100755 core-mod/core/xz/build
 create mode 100644 core-mod/core/xz/checksums
 create mode 100644 core-mod/core/xz/sources
 create mode 100644 core-mod/core/xz/version
 create mode 100755 core-mod/core/zlib/build
 create mode 100644 core-mod/core/zlib/checksums
 create mode 100644 core-mod/core/zlib/sources
 create mode 100644 core-mod/core/zlib/version
 create mode 100755 core-mod/extra/acpid/build
 create mode 100644 core-mod/extra/acpid/checksums
 create mode 100644 core-mod/extra/acpid/depends
 create mode 100644 core-mod/extra/acpid/files/acpid.run
 create mode 100644 core-mod/extra/acpid/sources
 create mode 100644 core-mod/extra/acpid/version
 create mode 100755 core-mod/extra/alsa-lib/build
 create mode 100644 core-mod/extra/alsa-lib/checksums
 create mode 100644 core-mod/extra/alsa-lib/depends
 create mode 100644 core-mod/extra/alsa-lib/sources
 create mode 100644 core-mod/extra/alsa-lib/version
 create mode 100755 core-mod/extra/alsa-utils/build
 create mode 100644 core-mod/extra/alsa-utils/checksums
 create mode 100644 core-mod/extra/alsa-utils/depends
 create mode 100644 core-mod/extra/alsa-utils/sources
 create mode 100644 core-mod/extra/alsa-utils/version
 create mode 100755 core-mod/extra/atk/build
 create mode 100644 core-mod/extra/atk/checksums
 create mode 100644 core-mod/extra/atk/depends
 create mode 100644 core-mod/extra/atk/sources
 create mode 100644 core-mod/extra/atk/version
 create mode 100755 core-mod/extra/cairo/build
 create mode 100644 core-mod/extra/cairo/checksums
 create mode 100644 core-mod/extra/cairo/depends
 create mode 100644 core-mod/extra/cairo/sources
 create mode 100644 core-mod/extra/cairo/version
 create mode 100755 core-mod/extra/ccache/build
 create mode 100644 core-mod/extra/ccache/checksums
 create mode 100644 core-mod/extra/ccache/depends
 create mode 100755 core-mod/extra/ccache/post-install
 create mode 100644 core-mod/extra/ccache/sources
 create mode 100644 core-mod/extra/ccache/version
 create mode 100755 core-mod/extra/cmake/build
 create mode 100644 core-mod/extra/cmake/checksums
 create mode 100644 core-mod/extra/cmake/depends
 create mode 100644 core-mod/extra/cmake/patches/cmake-no-execinfo.patch
 create mode 100644 core-mod/extra/cmake/sources
 create mode 100644 core-mod/extra/cmake/version
 create mode 100755 core-mod/extra/dhcpcd/build
 create mode 100644 core-mod/extra/dhcpcd/checksums
 create mode 100644 core-mod/extra/dhcpcd/depends
 create mode 100644 core-mod/extra/dhcpcd/files/dhcpcd.run
 create mode 100644 core-mod/extra/dhcpcd/sources
 create mode 100644 core-mod/extra/dhcpcd/version
 create mode 100755 core-mod/extra/dosfstools/build
 create mode 100644 core-mod/extra/dosfstools/checksums
 create mode 100644 core-mod/extra/dosfstools/sources
 create mode 100644 core-mod/extra/dosfstools/version
 create mode 100755 core-mod/extra/e2fsprogs/build
 create mode 100644 core-mod/extra/e2fsprogs/checksums
 create mode 100644 core-mod/extra/e2fsprogs/sources
 create mode 100644 core-mod/extra/e2fsprogs/version
 create mode 100755 core-mod/extra/eiwd/build
 create mode 100644 core-mod/extra/eiwd/checksums
 create mode 100644 core-mod/extra/eiwd/depends
 create mode 100644 core-mod/extra/eiwd/files/eiwd.run
 create mode 100755 core-mod/extra/eiwd/post-install
 create mode 100644 core-mod/extra/eiwd/sources
 create mode 100644 core-mod/extra/eiwd/version
 create mode 100755 core-mod/extra/eudev/build
 create mode 100644 core-mod/extra/eudev/checksums
 create mode 100644 core-mod/extra/eudev/depends
 create mode 100644 core-mod/extra/eudev/files/udevd.run
 create mode 100644 core-mod/extra/eudev/sources
 create mode 100644 core-mod/extra/eudev/version
 create mode 100755 core-mod/extra/expat/build
 create mode 100644 core-mod/extra/expat/checksums
 create mode 100644 core-mod/extra/expat/sources
 create mode 100644 core-mod/extra/expat/version
 create mode 100755 core-mod/extra/ffmpeg/build
 create mode 100644 core-mod/extra/ffmpeg/checksums
 create mode 100644 core-mod/extra/ffmpeg/depends
 create mode 100644 core-mod/extra/ffmpeg/sources
 create mode 100644 core-mod/extra/ffmpeg/version
 create mode 100755 core-mod/extra/fontconfig/build
 create mode 100644 core-mod/extra/fontconfig/checksums
 create mode 100644 core-mod/extra/fontconfig/depends
 create mode 100755 core-mod/extra/fontconfig/post-install
 create mode 100644 core-mod/extra/fontconfig/sources
 create mode 100644 core-mod/extra/fontconfig/version
 create mode 100755 core-mod/extra/freetype-harfbuzz/build
 create mode 100644 core-mod/extra/freetype-harfbuzz/checksums
 create mode 100644 core-mod/extra/freetype-harfbuzz/depends
 create mode 100644 core-mod/extra/freetype-harfbuzz/sources
 create mode 100644 core-mod/extra/freetype-harfbuzz/version
 create mode 100755 core-mod/extra/fribidi/build
 create mode 100644 core-mod/extra/fribidi/checksums
 create mode 100644 core-mod/extra/fribidi/sources
 create mode 100644 core-mod/extra/fribidi/version
 create mode 100755 core-mod/extra/gcompat/build
 create mode 100644 core-mod/extra/gcompat/checksums
 create mode 100644 core-mod/extra/gcompat/sources
 create mode 100644 core-mod/extra/gcompat/version
 create mode 100755 core-mod/extra/gdk-pixbuf/build
 create mode 100644 core-mod/extra/gdk-pixbuf/checksums
 create mode 100644 core-mod/extra/gdk-pixbuf/depends
 create mode 100755 core-mod/extra/gdk-pixbuf/post-install
 create mode 100644 core-mod/extra/gdk-pixbuf/sources
 create mode 100644 core-mod/extra/gdk-pixbuf/version
 create mode 100755 core-mod/extra/giflib/build
 create mode 100644 core-mod/extra/giflib/checksums
 create mode 100644 core-mod/extra/giflib/sources
 create mode 100644 core-mod/extra/giflib/version
 create mode 100755 core-mod/extra/glib/build
 create mode 100644 core-mod/extra/glib/checksums
 create mode 100644 core-mod/extra/glib/depends
 create mode 100644 core-mod/extra/glib/sources
 create mode 100644 core-mod/extra/glib/version
 create mode 100755 core-mod/extra/gnupg1/build
 create mode 100644 core-mod/extra/gnupg1/checksums
 create mode 100644 core-mod/extra/gnupg1/depends
 create mode 100644 core-mod/extra/gnupg1/sources
 create mode 100644 core-mod/extra/gnupg1/version
 create mode 100755 core-mod/extra/gperf/build
 create mode 100644 core-mod/extra/gperf/checksums
 create mode 100644 core-mod/extra/gperf/sources
 create mode 100644 core-mod/extra/gperf/version
 create mode 100755 core-mod/extra/gtk+3/build
 create mode 100644 core-mod/extra/gtk+3/checksums
 create mode 100644 core-mod/extra/gtk+3/depends
 create mode 100755 core-mod/extra/gtk+3/post-install
 create mode 100644 core-mod/extra/gtk+3/sources
 create mode 100644 core-mod/extra/gtk+3/version
 create mode 100755 core-mod/extra/hicolor-icon-theme/build
 create mode 100644 core-mod/extra/hicolor-icon-theme/checksums
 create mode 100644 core-mod/extra/hicolor-icon-theme/sources
 create mode 100644 core-mod/extra/hicolor-icon-theme/version
 create mode 100755 core-mod/extra/intel-vaapi-driver/build
 create mode 100644 core-mod/extra/intel-vaapi-driver/checksums
 create mode 100644 core-mod/extra/intel-vaapi-driver/depends
 create mode 100644 core-mod/extra/intel-vaapi-driver/sources
 create mode 100644 core-mod/extra/intel-vaapi-driver/version
 create mode 100755 core-mod/extra/lame/build
 create mode 100644 core-mod/extra/lame/checksums
 create mode 100644 core-mod/extra/lame/sources
 create mode 100644 core-mod/extra/lame/version
 create mode 100755 core-mod/extra/libass/build
 create mode 100644 core-mod/extra/libass/checksums
 create mode 100644 core-mod/extra/libass/depends
 create mode 100644 core-mod/extra/libass/sources
 create mode 100644 core-mod/extra/libass/version
 create mode 100755 core-mod/extra/libdrm/build
 create mode 100644 core-mod/extra/libdrm/checksums
 create mode 100644 core-mod/extra/libdrm/depends
 create mode 100644 core-mod/extra/libdrm/sources
 create mode 100644 core-mod/extra/libdrm/version
 create mode 100755 core-mod/extra/libelf/build
 create mode 100644 core-mod/extra/libelf/checksums
 create mode 100644 core-mod/extra/libelf/depends
 create mode 100644 core-mod/extra/libelf/files/error.h
 create mode 100644 core-mod/extra/libelf/sources
 create mode 100644 core-mod/extra/libelf/version
 create mode 100755 core-mod/extra/libepoxy/build
 create mode 100644 core-mod/extra/libepoxy/checksums
 create mode 100644 core-mod/extra/libepoxy/depends
 create mode 100644 core-mod/extra/libepoxy/sources
 create mode 100644 core-mod/extra/libepoxy/version
 create mode 100755 core-mod/extra/liberation-fonts/build
 create mode 100644 core-mod/extra/liberation-fonts/checksums
 create mode 100644 core-mod/extra/liberation-fonts/sources
 create mode 100644 core-mod/extra/liberation-fonts/version
 create mode 100755 core-mod/extra/libevdev/build
 create mode 100644 core-mod/extra/libevdev/checksums
 create mode 100644 core-mod/extra/libevdev/depends
 create mode 100644 core-mod/extra/libevdev/sources
 create mode 100644 core-mod/extra/libevdev/version
 create mode 100755 core-mod/extra/libffi/build
 create mode 100644 core-mod/extra/libffi/checksums
 create mode 100644 core-mod/extra/libffi/depends
 create mode 100644 core-mod/extra/libffi/sources
 create mode 100644 core-mod/extra/libffi/version
 create mode 100755 core-mod/extra/libinput/build
 create mode 100644 core-mod/extra/libinput/checksums
 create mode 100644 core-mod/extra/libinput/depends
 create mode 100755 core-mod/extra/libinput/post-install
 create mode 100644 core-mod/extra/libinput/sources
 create mode 100644 core-mod/extra/libinput/version
 create mode 100755 core-mod/extra/libjpeg-turbo/build
 create mode 100644 core-mod/extra/libjpeg-turbo/checksums
 create mode 100644 core-mod/extra/libjpeg-turbo/depends
 create mode 100644 core-mod/extra/libjpeg-turbo/sources
 create mode 100644 core-mod/extra/libjpeg-turbo/version
 create mode 100755 core-mod/extra/libogg/build
 create mode 100644 core-mod/extra/libogg/checksums
 create mode 100644 core-mod/extra/libogg/sources
 create mode 100644 core-mod/extra/libogg/version
 create mode 100755 core-mod/extra/libpng/build
 create mode 100644 core-mod/extra/libpng/checksums
 create mode 100644 core-mod/extra/libpng/depends
 create mode 100644 core-mod/extra/libpng/patches/libpng-1.6.37-apng.patch
 create mode 100644 core-mod/extra/libpng/sources
 create mode 100644 core-mod/extra/libpng/version
 create mode 100755 core-mod/extra/libtheora/build
 create mode 100644 core-mod/extra/libtheora/checksums
 create mode 100644 core-mod/extra/libtheora/depends
 create mode 100644 core-mod/extra/libtheora/patches/libtheora-1.1.1-libpng16.patch
 create mode 100644 core-mod/extra/libtheora/sources
 create mode 100644 core-mod/extra/libtheora/version
 create mode 100755 core-mod/extra/libudev-zero/build
 create mode 100644 core-mod/extra/libudev-zero/checksums
 create mode 100644 core-mod/extra/libudev-zero/depends
 create mode 100644 core-mod/extra/libudev-zero/sources
 create mode 100644 core-mod/extra/libudev-zero/version
 create mode 100755 core-mod/extra/libva-utils/build
 create mode 100644 core-mod/extra/libva-utils/checksums
 create mode 100644 core-mod/extra/libva-utils/depends
 create mode 100644 core-mod/extra/libva-utils/sources
 create mode 100644 core-mod/extra/libva-utils/version
 create mode 100755 core-mod/extra/libva/build
 create mode 100644 core-mod/extra/libva/checksums
 create mode 100644 core-mod/extra/libva/depends
 create mode 100644 core-mod/extra/libva/sources
 create mode 100644 core-mod/extra/libva/version
 create mode 100755 core-mod/extra/libvorbis/build
 create mode 100644 core-mod/extra/libvorbis/checksums
 create mode 100644 core-mod/extra/libvorbis/depends
 create mode 100644 core-mod/extra/libvorbis/sources
 create mode 100644 core-mod/extra/libvorbis/version
 create mode 100755 core-mod/extra/libvpx/build
 create mode 100644 core-mod/extra/libvpx/checksums
 create mode 100644 core-mod/extra/libvpx/depends
 create mode 100644 core-mod/extra/libvpx/files/vp8_rtcd.h
 create mode 100644 core-mod/extra/libvpx/files/vp9_rtcd.h
 create mode 100644 core-mod/extra/libvpx/files/vpx_dsp_rtcd.h
 create mode 100644 core-mod/extra/libvpx/files/vpx_scale_rtcd.h
 create mode 100644 core-mod/extra/libvpx/patches/fix-busybox-diff.patch
 create mode 100644 core-mod/extra/libvpx/sources
 create mode 100644 core-mod/extra/libvpx/version
 create mode 100755 core-mod/extra/libwebp/build
 create mode 100644 core-mod/extra/libwebp/checksums
 create mode 100644 core-mod/extra/libwebp/depends
 create mode 100644 core-mod/extra/libwebp/sources
 create mode 100644 core-mod/extra/libwebp/version
 create mode 100755 core-mod/extra/llvm/build
 create mode 100644 core-mod/extra/llvm/checksums
 create mode 100644 core-mod/extra/llvm/depends
 create mode 100644 core-mod/extra/llvm/sources
 create mode 100644 core-mod/extra/llvm/version
 create mode 100755 core-mod/extra/lzip/build
 create mode 100644 core-mod/extra/lzip/checksums
 create mode 100644 core-mod/extra/lzip/sources
 create mode 100644 core-mod/extra/lzip/version
 create mode 100755 core-mod/extra/mandoc/build
 create mode 100644 core-mod/extra/mandoc/checksums
 create mode 100644 core-mod/extra/mandoc/depends
 create mode 100644 core-mod/extra/mandoc/patches/mandoc-no-warn.patch
 create mode 100644 core-mod/extra/mandoc/sources
 create mode 100644 core-mod/extra/mandoc/version
 create mode 100755 core-mod/extra/mesa/build
 create mode 100644 core-mod/extra/mesa/checksums
 create mode 100644 core-mod/extra/mesa/depends
 create mode 100644 core-mod/extra/mesa/sources
 create mode 100644 core-mod/extra/mesa/version
 create mode 100755 core-mod/extra/meson/build
 create mode 100644 core-mod/extra/meson/checksums
 create mode 100644 core-mod/extra/meson/depends
 create mode 100644 core-mod/extra/meson/sources
 create mode 100644 core-mod/extra/meson/version
 create mode 100755 core-mod/extra/mpv/build
 create mode 100644 core-mod/extra/mpv/checksums
 create mode 100644 core-mod/extra/mpv/depends
 create mode 100644 core-mod/extra/mpv/sources
 create mode 100644 core-mod/extra/mpv/version
 create mode 100755 core-mod/extra/mtdev/build
 create mode 100644 core-mod/extra/mtdev/checksums
 create mode 100644 core-mod/extra/mtdev/depends
 create mode 100644 core-mod/extra/mtdev/sources
 create mode 100644 core-mod/extra/mtdev/version
 create mode 100755 core-mod/extra/nasm/build
 create mode 100644 core-mod/extra/nasm/checksums
 create mode 100644 core-mod/extra/nasm/sources
 create mode 100644 core-mod/extra/nasm/version
 create mode 100755 core-mod/extra/ncurses/build
 create mode 100644 core-mod/extra/ncurses/checksums
 create mode 100644 core-mod/extra/ncurses/sources
 create mode 100644 core-mod/extra/ncurses/version
 create mode 100755 core-mod/extra/openresolv/build
 create mode 100644 core-mod/extra/openresolv/checksums
 create mode 100644 core-mod/extra/openresolv/sources
 create mode 100644 core-mod/extra/openresolv/version
 create mode 100755 core-mod/extra/openssh/build
 create mode 100644 core-mod/extra/openssh/checksums
 create mode 100644 core-mod/extra/openssh/depends
 create mode 100644 core-mod/extra/openssh/files/sshd.run
 create mode 100755 core-mod/extra/openssh/post-install
 create mode 100644 core-mod/extra/openssh/sources
 create mode 100644 core-mod/extra/openssh/version
 create mode 100755 core-mod/extra/opus/build
 create mode 100644 core-mod/extra/opus/checksums
 create mode 100644 core-mod/extra/opus/sources
 create mode 100644 core-mod/extra/opus/version
 create mode 100755 core-mod/extra/pango/build
 create mode 100644 core-mod/extra/pango/checksums
 create mode 100644 core-mod/extra/pango/depends
 create mode 100644 core-mod/extra/pango/sources
 create mode 100644 core-mod/extra/pango/version
 create mode 100755 core-mod/extra/patchelf/build
 create mode 100644 core-mod/extra/patchelf/checksums
 create mode 100644 core-mod/extra/patchelf/sources
 create mode 100644 core-mod/extra/patchelf/version
 create mode 100755 core-mod/extra/perl/build
 create mode 100644 core-mod/extra/perl/checksums
 create mode 100644 core-mod/extra/perl/depends
 create mode 100644 core-mod/extra/perl/sources
 create mode 100644 core-mod/extra/perl/version
 create mode 100755 core-mod/extra/pkgconf/build
 create mode 100644 core-mod/extra/pkgconf/checksums
 create mode 100644 core-mod/extra/pkgconf/sources
 create mode 100644 core-mod/extra/pkgconf/version
 create mode 100755 core-mod/extra/plzip/build
 create mode 100644 core-mod/extra/plzip/checksums
 create mode 100644 core-mod/extra/plzip/sources
 create mode 100644 core-mod/extra/plzip/version
 create mode 100755 core-mod/extra/python/build
 create mode 100644 core-mod/extra/python/checksums
 create mode 100644 core-mod/extra/python/depends
 create mode 100644 core-mod/extra/python/patches/python3-always-pip.patch
 create mode 100644 core-mod/extra/python/sources
 create mode 100644 core-mod/extra/python/version
 create mode 100755 core-mod/extra/rsync/build
 create mode 100644 core-mod/extra/rsync/checksums
 create mode 100644 core-mod/extra/rsync/depends
 create mode 100644 core-mod/extra/rsync/files/mkproto.awk
 create mode 100644 core-mod/extra/rsync/sources
 create mode 100644 core-mod/extra/rsync/version
 create mode 100755 core-mod/extra/samurai/build
 create mode 100644 core-mod/extra/samurai/checksums
 create mode 100644 core-mod/extra/samurai/sources
 create mode 100644 core-mod/extra/samurai/version
 create mode 100755 core-mod/extra/sqlite/build
 create mode 100644 core-mod/extra/sqlite/checksums
 create mode 100644 core-mod/extra/sqlite/depends
 create mode 100644 core-mod/extra/sqlite/sources
 create mode 100644 core-mod/extra/sqlite/version
 create mode 100755 core-mod/extra/strace/build
 create mode 100644 core-mod/extra/strace/checksums
 create mode 100644 core-mod/extra/strace/depends
 create mode 100644 core-mod/extra/strace/sources
 create mode 100644 core-mod/extra/strace/version
 create mode 100755 core-mod/extra/tiff/build
 create mode 100644 core-mod/extra/tiff/checksums
 create mode 100644 core-mod/extra/tiff/depends
 create mode 100644 core-mod/extra/tiff/sources
 create mode 100644 core-mod/extra/tiff/version
 create mode 100755 core-mod/extra/tzdata/build
 create mode 100644 core-mod/extra/tzdata/checksums
 create mode 100644 core-mod/extra/tzdata/sources
 create mode 100644 core-mod/extra/tzdata/version
 create mode 100755 core-mod/extra/util-linux/build
 create mode 100644 core-mod/extra/util-linux/checksums
 create mode 100644 core-mod/extra/util-linux/depends
 create mode 100644 core-mod/extra/util-linux/sources
 create mode 100644 core-mod/extra/util-linux/version
 create mode 100755 core-mod/extra/wpa_supplicant/build
 create mode 100644 core-mod/extra/wpa_supplicant/checksums
 create mode 100644 core-mod/extra/wpa_supplicant/depends
 create mode 100644 core-mod/extra/wpa_supplicant/files/.config
 create mode 100755 core-mod/extra/wpa_supplicant/post-install
 create mode 100644 core-mod/extra/wpa_supplicant/sources
 create mode 100644 core-mod/extra/wpa_supplicant/version
 create mode 100755 core-mod/extra/x264/build
 create mode 100644 core-mod/extra/x264/checksums
 create mode 100644 core-mod/extra/x264/depends
 create mode 100644 core-mod/extra/x264/patches/x264-no-bash.patch
 create mode 100644 core-mod/extra/x264/sources
 create mode 100644 core-mod/extra/x264/version
 create mode 100755 core-mod/extra/x265/build
 create mode 100644 core-mod/extra/x265/checksums
 create mode 100644 core-mod/extra/x265/depends
 create mode 100644 core-mod/extra/x265/sources
 create mode 100644 core-mod/extra/x265/version
 create mode 100755 core-mod/extra/xfsprogs/build
 create mode 100644 core-mod/extra/xfsprogs/checksums
 create mode 100644 core-mod/extra/xfsprogs/depends
 create mode 100644 core-mod/extra/xfsprogs/sources
 create mode 100644 core-mod/extra/xfsprogs/version
 create mode 100755 core-mod/extra/xvidcore/build
 create mode 100644 core-mod/extra/xvidcore/checksums
 create mode 100644 core-mod/extra/xvidcore/depends
 create mode 100644 core-mod/extra/xvidcore/sources
 create mode 100644 core-mod/extra/xvidcore/version
 create mode 100755 core-mod/extra/zip/build
 create mode 100644 core-mod/extra/zip/checksums
 create mode 100644 core-mod/extra/zip/depends
 create mode 100644 core-mod/extra/zip/sources
 create mode 100644 core-mod/extra/zip/version
 create mode 100755 core-mod/xorg/libICE/build
 create mode 100644 core-mod/xorg/libICE/checksums
 create mode 100644 core-mod/xorg/libICE/depends
 create mode 100644 core-mod/xorg/libICE/sources
 create mode 100644 core-mod/xorg/libICE/version
 create mode 100755 core-mod/xorg/libSM/build
 create mode 100644 core-mod/xorg/libSM/checksums
 create mode 100644 core-mod/xorg/libSM/depends
 create mode 100644 core-mod/xorg/libSM/sources
 create mode 100644 core-mod/xorg/libSM/version
 create mode 100755 core-mod/xorg/libX11/build
 create mode 100644 core-mod/xorg/libX11/checksums
 create mode 100644 core-mod/xorg/libX11/depends
 create mode 100644 core-mod/xorg/libX11/sources
 create mode 100644 core-mod/xorg/libX11/version
 create mode 100755 core-mod/xorg/libXScrnSaver/build
 create mode 100644 core-mod/xorg/libXScrnSaver/checksums
 create mode 100644 core-mod/xorg/libXScrnSaver/depends
 create mode 100644 core-mod/xorg/libXScrnSaver/sources
 create mode 100644 core-mod/xorg/libXScrnSaver/version
 create mode 100755 core-mod/xorg/libXau/build
 create mode 100644 core-mod/xorg/libXau/checksums
 create mode 100644 core-mod/xorg/libXau/depends
 create mode 100644 core-mod/xorg/libXau/sources
 create mode 100644 core-mod/xorg/libXau/version
 create mode 100755 core-mod/xorg/libXcomposite/build
 create mode 100644 core-mod/xorg/libXcomposite/checksums
 create mode 100644 core-mod/xorg/libXcomposite/depends
 create mode 100644 core-mod/xorg/libXcomposite/sources
 create mode 100644 core-mod/xorg/libXcomposite/version
 create mode 100755 core-mod/xorg/libXcursor/build
 create mode 100644 core-mod/xorg/libXcursor/checksums
 create mode 100644 core-mod/xorg/libXcursor/depends
 create mode 100644 core-mod/xorg/libXcursor/sources
 create mode 100644 core-mod/xorg/libXcursor/version
 create mode 100755 core-mod/xorg/libXdamage/build
 create mode 100644 core-mod/xorg/libXdamage/checksums
 create mode 100644 core-mod/xorg/libXdamage/depends
 create mode 100644 core-mod/xorg/libXdamage/sources
 create mode 100644 core-mod/xorg/libXdamage/version
 create mode 100755 core-mod/xorg/libXext/build
 create mode 100644 core-mod/xorg/libXext/checksums
 create mode 100644 core-mod/xorg/libXext/depends
 create mode 100644 core-mod/xorg/libXext/sources
 create mode 100644 core-mod/xorg/libXext/version
 create mode 100755 core-mod/xorg/libXfixes/build
 create mode 100644 core-mod/xorg/libXfixes/checksums
 create mode 100644 core-mod/xorg/libXfixes/depends
 create mode 100644 core-mod/xorg/libXfixes/sources
 create mode 100644 core-mod/xorg/libXfixes/version
 create mode 100755 core-mod/xorg/libXfont2/build
 create mode 100644 core-mod/xorg/libXfont2/checksums
 create mode 100644 core-mod/xorg/libXfont2/depends
 create mode 100644 core-mod/xorg/libXfont2/sources
 create mode 100644 core-mod/xorg/libXfont2/version
 create mode 100755 core-mod/xorg/libXft/build
 create mode 100644 core-mod/xorg/libXft/checksums
 create mode 100644 core-mod/xorg/libXft/depends
 create mode 100644 core-mod/xorg/libXft/sources
 create mode 100644 core-mod/xorg/libXft/version
 create mode 100755 core-mod/xorg/libXi/build
 create mode 100644 core-mod/xorg/libXi/checksums
 create mode 100644 core-mod/xorg/libXi/depends
 create mode 100644 core-mod/xorg/libXi/sources
 create mode 100644 core-mod/xorg/libXi/version
 create mode 100755 core-mod/xorg/libXinerama/build
 create mode 100644 core-mod/xorg/libXinerama/checksums
 create mode 100644 core-mod/xorg/libXinerama/depends
 create mode 100644 core-mod/xorg/libXinerama/sources
 create mode 100644 core-mod/xorg/libXinerama/version
 create mode 100755 core-mod/xorg/libXmu/build
 create mode 100644 core-mod/xorg/libXmu/checksums
 create mode 100644 core-mod/xorg/libXmu/depends
 create mode 100644 core-mod/xorg/libXmu/sources
 create mode 100644 core-mod/xorg/libXmu/version
 create mode 100755 core-mod/xorg/libXrandr/build
 create mode 100644 core-mod/xorg/libXrandr/checksums
 create mode 100644 core-mod/xorg/libXrandr/depends
 create mode 100644 core-mod/xorg/libXrandr/sources
 create mode 100644 core-mod/xorg/libXrandr/version
 create mode 100755 core-mod/xorg/libXrender/build
 create mode 100644 core-mod/xorg/libXrender/checksums
 create mode 100644 core-mod/xorg/libXrender/depends
 create mode 100644 core-mod/xorg/libXrender/sources
 create mode 100644 core-mod/xorg/libXrender/version
 create mode 100755 core-mod/xorg/libXt/build
 create mode 100644 core-mod/xorg/libXt/checksums
 create mode 100644 core-mod/xorg/libXt/depends
 create mode 100644 core-mod/xorg/libXt/sources
 create mode 100644 core-mod/xorg/libXt/version
 create mode 100755 core-mod/xorg/libXtst/build
 create mode 100644 core-mod/xorg/libXtst/checksums
 create mode 100644 core-mod/xorg/libXtst/depends
 create mode 100644 core-mod/xorg/libXtst/sources
 create mode 100644 core-mod/xorg/libXtst/version
 create mode 100755 core-mod/xorg/libXxf86vm/build
 create mode 100644 core-mod/xorg/libXxf86vm/checksums
 create mode 100644 core-mod/xorg/libXxf86vm/depends
 create mode 100644 core-mod/xorg/libXxf86vm/sources
 create mode 100644 core-mod/xorg/libXxf86vm/version
 create mode 100755 core-mod/xorg/libfontenc/build
 create mode 100644 core-mod/xorg/libfontenc/checksums
 create mode 100644 core-mod/xorg/libfontenc/depends
 create mode 100644 core-mod/xorg/libfontenc/sources
 create mode 100644 core-mod/xorg/libfontenc/version
 create mode 100755 core-mod/xorg/libpciaccess/build
 create mode 100644 core-mod/xorg/libpciaccess/checksums
 create mode 100644 core-mod/xorg/libpciaccess/sources
 create mode 100644 core-mod/xorg/libpciaccess/version
 create mode 100755 core-mod/xorg/libxcb/build
 create mode 100644 core-mod/xorg/libxcb/checksums
 create mode 100644 core-mod/xorg/libxcb/depends
 create mode 100644 core-mod/xorg/libxcb/sources
 create mode 100644 core-mod/xorg/libxcb/version
 create mode 100755 core-mod/xorg/libxkbcommon/build
 create mode 100644 core-mod/xorg/libxkbcommon/checksums
 create mode 100644 core-mod/xorg/libxkbcommon/depends
 create mode 100644 core-mod/xorg/libxkbcommon/sources
 create mode 100644 core-mod/xorg/libxkbcommon/version
 create mode 100755 core-mod/xorg/libxkbfile/build
 create mode 100644 core-mod/xorg/libxkbfile/checksums
 create mode 100644 core-mod/xorg/libxkbfile/depends
 create mode 100644 core-mod/xorg/libxkbfile/sources
 create mode 100644 core-mod/xorg/libxkbfile/version
 create mode 100755 core-mod/xorg/libxshmfence/build
 create mode 100644 core-mod/xorg/libxshmfence/checksums
 create mode 100644 core-mod/xorg/libxshmfence/depends
 create mode 100644 core-mod/xorg/libxshmfence/sources
 create mode 100644 core-mod/xorg/libxshmfence/version
 create mode 100755 core-mod/xorg/pixman/build
 create mode 100644 core-mod/xorg/pixman/checksums
 create mode 100644 core-mod/xorg/pixman/sources
 create mode 100644 core-mod/xorg/pixman/version
 create mode 100755 core-mod/xorg/rxvt-unicode/build
 create mode 100644 core-mod/xorg/rxvt-unicode/checksums
 create mode 100644 core-mod/xorg/rxvt-unicode/depends
 create mode 100644 core-mod/xorg/rxvt-unicode/patches/gentables.patch
 create mode 100644 core-mod/xorg/rxvt-unicode/patches/rxvt-unicode-kerning.patch
 create mode 100644 core-mod/xorg/rxvt-unicode/sources
 create mode 100644 core-mod/xorg/rxvt-unicode/version
 create mode 100755 core-mod/xorg/setxkbmap/build
 create mode 100644 core-mod/xorg/setxkbmap/checksums
 create mode 100644 core-mod/xorg/setxkbmap/depends
 create mode 100644 core-mod/xorg/setxkbmap/sources
 create mode 100644 core-mod/xorg/setxkbmap/version
 create mode 100755 core-mod/xorg/xauth/build
 create mode 100644 core-mod/xorg/xauth/checksums
 create mode 100644 core-mod/xorg/xauth/depends
 create mode 100644 core-mod/xorg/xauth/sources
 create mode 100644 core-mod/xorg/xauth/version
 create mode 100755 core-mod/xorg/xbitmaps/build
 create mode 100644 core-mod/xorg/xbitmaps/checksums
 create mode 100644 core-mod/xorg/xbitmaps/depends
 create mode 100644 core-mod/xorg/xbitmaps/sources
 create mode 100644 core-mod/xorg/xbitmaps/version
 create mode 100755 core-mod/xorg/xcb-proto/build
 create mode 100644 core-mod/xorg/xcb-proto/checksums
 create mode 100644 core-mod/xorg/xcb-proto/depends
 create mode 100644 core-mod/xorg/xcb-proto/sources
 create mode 100644 core-mod/xorg/xcb-proto/version
 create mode 100755 core-mod/xorg/xcb-util-cursor/build
 create mode 100644 core-mod/xorg/xcb-util-cursor/checksums
 create mode 100644 core-mod/xorg/xcb-util-cursor/depends
 create mode 100644 core-mod/xorg/xcb-util-cursor/sources
 create mode 100644 core-mod/xorg/xcb-util-cursor/version
 create mode 100755 core-mod/xorg/xcb-util-image/build
 create mode 100644 core-mod/xorg/xcb-util-image/checksums
 create mode 100644 core-mod/xorg/xcb-util-image/depends
 create mode 100644 core-mod/xorg/xcb-util-image/sources
 create mode 100644 core-mod/xorg/xcb-util-image/version
 create mode 100755 core-mod/xorg/xcb-util-keysyms/build
 create mode 100644 core-mod/xorg/xcb-util-keysyms/checksums
 create mode 100644 core-mod/xorg/xcb-util-keysyms/depends
 create mode 100644 core-mod/xorg/xcb-util-keysyms/sources
 create mode 100644 core-mod/xorg/xcb-util-keysyms/version
 create mode 100755 core-mod/xorg/xcb-util-renderutil/build
 create mode 100644 core-mod/xorg/xcb-util-renderutil/checksums
 create mode 100644 core-mod/xorg/xcb-util-renderutil/depends
 create mode 100644 core-mod/xorg/xcb-util-renderutil/sources
 create mode 100644 core-mod/xorg/xcb-util-renderutil/version
 create mode 100755 core-mod/xorg/xcb-util-wm/build
 create mode 100644 core-mod/xorg/xcb-util-wm/checksums
 create mode 100644 core-mod/xorg/xcb-util-wm/depends
 create mode 100644 core-mod/xorg/xcb-util-wm/sources
 create mode 100644 core-mod/xorg/xcb-util-wm/version
 create mode 100755 core-mod/xorg/xcb-util/build
 create mode 100644 core-mod/xorg/xcb-util/checksums
 create mode 100644 core-mod/xorg/xcb-util/depends
 create mode 100644 core-mod/xorg/xcb-util/sources
 create mode 100644 core-mod/xorg/xcb-util/version
 create mode 100755 core-mod/xorg/xev/build
 create mode 100644 core-mod/xorg/xev/checksums
 create mode 100644 core-mod/xorg/xev/depends
 create mode 100644 core-mod/xorg/xev/sources
 create mode 100644 core-mod/xorg/xev/version
 create mode 100755 core-mod/xorg/xf86-input-libinput/build
 create mode 100644 core-mod/xorg/xf86-input-libinput/checksums
 create mode 100644 core-mod/xorg/xf86-input-libinput/depends
 create mode 100644 core-mod/xorg/xf86-input-libinput/sources
 create mode 100644 core-mod/xorg/xf86-input-libinput/version
 create mode 100755 core-mod/xorg/xf86-input-mtrack/build
 create mode 100755 core-mod/xorg/xf86-input-mtrack/checksums
 create mode 100755 core-mod/xorg/xf86-input-mtrack/depends
 create mode 100755 core-mod/xorg/xf86-input-mtrack/sources
 create mode 100755 core-mod/xorg/xf86-input-mtrack/version
 create mode 100755 core-mod/xorg/xf86-input-synaptics/build
 create mode 100644 core-mod/xorg/xf86-input-synaptics/checksums
 create mode 100644 core-mod/xorg/xf86-input-synaptics/depends
 create mode 100644 core-mod/xorg/xf86-input-synaptics/sources
 create mode 100644 core-mod/xorg/xf86-input-synaptics/version
 create mode 100755 core-mod/xorg/xf86-input-wacom/build
 create mode 100644 core-mod/xorg/xf86-input-wacom/checksums
 create mode 100644 core-mod/xorg/xf86-input-wacom/depends
 create mode 100644 core-mod/xorg/xf86-input-wacom/sources
 create mode 100644 core-mod/xorg/xf86-input-wacom/version
 create mode 100755 core-mod/xorg/xf86-video-amdgpu/build
 create mode 100644 core-mod/xorg/xf86-video-amdgpu/checksums
 create mode 100644 core-mod/xorg/xf86-video-amdgpu/depends
 create mode 100644 core-mod/xorg/xf86-video-amdgpu/patches/rootless-amdgpu.patch
 create mode 100644 core-mod/xorg/xf86-video-amdgpu/sources
 create mode 100644 core-mod/xorg/xf86-video-amdgpu/version
 create mode 100755 core-mod/xorg/xf86-video-ati/build
 create mode 100644 core-mod/xorg/xf86-video-ati/checksums
 create mode 100644 core-mod/xorg/xf86-video-ati/depends
 create mode 100644 core-mod/xorg/xf86-video-ati/patches/rootless-ati.patch
 create mode 100644 core-mod/xorg/xf86-video-ati/sources
 create mode 100644 core-mod/xorg/xf86-video-ati/version
 create mode 100755 core-mod/xorg/xf86-video-fbdev/build
 create mode 100644 core-mod/xorg/xf86-video-fbdev/checksums
 create mode 100644 core-mod/xorg/xf86-video-fbdev/depends
 create mode 100644 core-mod/xorg/xf86-video-fbdev/sources
 create mode 100644 core-mod/xorg/xf86-video-fbdev/version
 create mode 100755 core-mod/xorg/xf86-video-intel/build
 create mode 100644 core-mod/xorg/xf86-video-intel/checksums
 create mode 100644 core-mod/xorg/xf86-video-intel/depends
 create mode 100644 core-mod/xorg/xf86-video-intel/sources
 create mode 100644 core-mod/xorg/xf86-video-intel/version
 create mode 100755 core-mod/xorg/xf86-video-nouveau/build
 create mode 100644 core-mod/xorg/xf86-video-nouveau/checksums
 create mode 100644 core-mod/xorg/xf86-video-nouveau/depends
 create mode 100644 core-mod/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch
 create mode 100644 core-mod/xorg/xf86-video-nouveau/sources
 create mode 100644 core-mod/xorg/xf86-video-nouveau/version
 create mode 100755 core-mod/xorg/xf86-video-vesa/build
 create mode 100644 core-mod/xorg/xf86-video-vesa/checksums
 create mode 100644 core-mod/xorg/xf86-video-vesa/depends
 create mode 100644 core-mod/xorg/xf86-video-vesa/sources
 create mode 100644 core-mod/xorg/xf86-video-vesa/version
 create mode 100755 core-mod/xorg/xinit/build
 create mode 100644 core-mod/xorg/xinit/checksums
 create mode 100644 core-mod/xorg/xinit/depends
 create mode 100644 core-mod/xorg/xinit/sources
 create mode 100644 core-mod/xorg/xinit/version
 create mode 100755 core-mod/xorg/xinput/build
 create mode 100644 core-mod/xorg/xinput/checksums
 create mode 100644 core-mod/xorg/xinput/depends
 create mode 100644 core-mod/xorg/xinput/sources
 create mode 100644 core-mod/xorg/xinput/version
 create mode 100755 core-mod/xorg/xkbcomp/build
 create mode 100644 core-mod/xorg/xkbcomp/checksums
 create mode 100644 core-mod/xorg/xkbcomp/depends
 create mode 100644 core-mod/xorg/xkbcomp/sources
 create mode 100644 core-mod/xorg/xkbcomp/version
 create mode 100755 core-mod/xorg/xkeyboard-config/build
 create mode 100644 core-mod/xorg/xkeyboard-config/checksums
 create mode 100644 core-mod/xorg/xkeyboard-config/depends
 create mode 100755 core-mod/xorg/xkeyboard-config/files/xml2lst
 create mode 100644 core-mod/xorg/xkeyboard-config/sources
 create mode 100644 core-mod/xorg/xkeyboard-config/version
 create mode 100755 core-mod/xorg/xorg-server/build
 create mode 100644 core-mod/xorg/xorg-server/checksums
 create mode 100644 core-mod/xorg/xorg-server/depends
 create mode 100644 core-mod/xorg/xorg-server/patches/rootless_modesetting.patch
 create mode 100755 core-mod/xorg/xorg-server/post-install
 create mode 100644 core-mod/xorg/xorg-server/sources
 create mode 100644 core-mod/xorg/xorg-server/version
 create mode 100755 core-mod/xorg/xorg-util-macros/build
 create mode 100644 core-mod/xorg/xorg-util-macros/checksums
 create mode 100644 core-mod/xorg/xorg-util-macros/sources
 create mode 100644 core-mod/xorg/xorg-util-macros/version
 create mode 100755 core-mod/xorg/xorgproto/build
 create mode 100644 core-mod/xorg/xorgproto/checksums
 create mode 100644 core-mod/xorg/xorgproto/sources
 create mode 100644 core-mod/xorg/xorgproto/version
 create mode 100755 core-mod/xorg/xprop/build
 create mode 100644 core-mod/xorg/xprop/checksums
 create mode 100644 core-mod/xorg/xprop/depends
 create mode 100644 core-mod/xorg/xprop/sources
 create mode 100644 core-mod/xorg/xprop/version
 create mode 100755 core-mod/xorg/xrandr/build
 create mode 100644 core-mod/xorg/xrandr/checksums
 create mode 100644 core-mod/xorg/xrandr/depends
 create mode 100644 core-mod/xorg/xrandr/sources
 create mode 100644 core-mod/xorg/xrandr/version
 create mode 100755 core-mod/xorg/xrdb/build
 create mode 100644 core-mod/xorg/xrdb/checksums
 create mode 100644 core-mod/xorg/xrdb/depends
 create mode 100644 core-mod/xorg/xrdb/sources
 create mode 100644 core-mod/xorg/xrdb/version
 create mode 100755 core-mod/xorg/xset/build
 create mode 100644 core-mod/xorg/xset/checksums
 create mode 100644 core-mod/xorg/xset/depends
 create mode 100644 core-mod/xorg/xset/sources
 create mode 100644 core-mod/xorg/xset/version
 create mode 100755 core-mod/xorg/xsetroot/build
 create mode 100644 core-mod/xorg/xsetroot/checksums
 create mode 100644 core-mod/xorg/xsetroot/depends
 create mode 100644 core-mod/xorg/xsetroot/sources
 create mode 100644 core-mod/xorg/xsetroot/version
 create mode 100755 core-mod/xorg/xtrans/build
 create mode 100644 core-mod/xorg/xtrans/checksums
 create mode 100644 core-mod/xorg/xtrans/depends
 create mode 100644 core-mod/xorg/xtrans/sources
 create mode 100644 core-mod/xorg/xtrans/version
 delete mode 100644 ports/links2-mod/q

diff --git a/NOTES b/NOTES
new file mode 100644
index 0000000..409694e
--- /dev/null
+++ b/NOTES
@@ -0,0 +1,7 @@
+-LessTif is busted; tries to mkdir an existing dir
+-Package Haskell tools to allow building shellcheck from source
+-es needs to have its patch adjusted
+
+-rename all non-obvious GNU tools to gnu-$package
+-rename all libraries to lib$package, adjust depends
+-remove superfluous packages
diff --git a/README b/README
index 969765a..a9262ce 100644
--- a/README
+++ b/README
@@ -6,9 +6,9 @@ The mbase directory contains symlinks to packages that I install as my core user
 
 The banished directory contains software that has been isolated for whatever reason. May or may not include a "JUSTIFICATION" file to remind myself in the future.
 
-Note that not all of the packages in this repo are written by me; some are forked from Community. This is purely a matter of convenience.
+Note that not all of the packages in this repo are written by me; some are forked from Core and Community. This is purely a matter of convenience.
 
-All packages under mbase have been tested and build on the Haswell microarchitecture using the following buildflags (at least assuming GCC and GNU libc);
+All packages under mbase have been tested and build on the Haswell microarchitecture using the following CFLAGS (assuming GCC):
 
    -pipe                                        //Compile in memory
    -w                                           //Suppress errors
@@ -19,8 +19,56 @@ All packages under mbase have been tested and build on the Haswell microarchitec
    -momit-leaf-frame-pointer                    //Leave out unneeded pointers
    -ftree-loop-vectorize                        //Vectorize trees (unsure of the implications, but doesn't appear to cause breakage; will investigate further)
    -fstack-protector-strong                     //Sacrifice a fair amount of performance in order to protect from stack smashing
-   --param ssp-buffer-size=4                    // Increase the number of functions under the stack protector
+   --param ssp-buffer-size=4                    //Increase the number of functions under the stack protector
    -fstack-clash-protection                     //Protect from stack clashing. Will investigate further
    -fPIE                                        //Generate position-independent executables
    -fPIC                                        //Generate position-independent code
    -Wl,--hash-style=gnu                         //Linker arguments
+
+A new subdir, bin, containing binaries built with the above CFLAGS (sans native)
+will be added in the future. I, however, encourage you to build from source if
+possible.
+
+________________________________________________________________________________
+
+|/                                                         https://k1sslinux.org
+|\ISS                                 https://git.sdf.org/midfavila/kiss-mfavila
+________________________________________________________________________________
+
+(Un)Official Repositories
+
+________________________________________________________________________________
+
+The unofficial repositories for KISS Linux maintained by Mid Favila.
+Included in my repo is a snapshot of the community and musl core, xorg, and
+extra repos as of 2021/7/9, modified to replace the utterly garbage packages
+that some members had contributed (in blatant violation of guidelines, too!).
+
+These were forked due to upstream's insistence on switching from LibreSSL to
+OpenSSL, and from X11 to Wayland; the former due to Python, and the latter,
+I'm not quite sure of. Regardless, I dislike these changes.
+
+Over time, packages that I'm not willing to maintain will be moved to
+mid-graveyard; after a few months, they'll be deleted.
+
+Any programs that require Python as a build-time dependency will have their
+scripts rewritten in Common Lisp, or they will be removed. This will happen
+ASAP.
+
+I will also be removing packages that I just flat out don't like. If you want
+them yourself, then copy them from an old git push. Software that will be
+removed and never added includes, but is not limited to, the following;
+
+   -systemd or any of its ilk
+   -OpenSSL or programs that explicitly depend on it
+   -Programs that require a version of Python newer than 3.8
+   -Programs written with or requiring Rust tooling
+   -Programs written primarily by or for corporations, such as BTRFS utilities
+      (This applies triply to FAGMAN; Facebook, Apple, Google, Microsoft,
+      Amazon, and Netflix. I also will not tolerate software related to Tencent
+      or similar organizations)
+
+NOTE THAT I AM NOT AFFILIATED WITH THE KISS LINUX ORGANIZATION IN ANY OFFICIAL
+CAPACITY. THEY ARE NOT RESPONSIBLE FOR THESE PACKAGES. DO NOT SUBMIT REPORTS IN
+#KISSLINUX ON LIBERA.CHAT IF THESE BREAK; EMAIL ME. THANK YOU FOR YOUR
+COOPERATION.
diff --git a/community-mod/2bwm/build b/community-mod/2bwm/build
new file mode 100755
index 0000000..28bda35
--- /dev/null
+++ b/community-mod/2bwm/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/2bwm/checksums b/community-mod/2bwm/checksums
new file mode 100644
index 0000000..bd43481
--- /dev/null
+++ b/community-mod/2bwm/checksums
@@ -0,0 +1 @@
+a4889ea4b01b1a3d4a508daa034b9d86676913cbbca1f977858df692a6e2af95  v0.3.tar.gz
diff --git a/community-mod/2bwm/depends b/community-mod/2bwm/depends
new file mode 100644
index 0000000..2ca375f
--- /dev/null
+++ b/community-mod/2bwm/depends
@@ -0,0 +1,4 @@
+libxcb
+xcb-util-xrm
+xcb-util-wm
+xcb-util-keysyms
diff --git a/community-mod/2bwm/sources b/community-mod/2bwm/sources
new file mode 100644
index 0000000..e8e7f0e
--- /dev/null
+++ b/community-mod/2bwm/sources
@@ -0,0 +1 @@
+https://github.com/venam/2bwm/archive/v0.3.tar.gz
diff --git a/community-mod/2bwm/version b/community-mod/2bwm/version
new file mode 100644
index 0000000..cc15c62
--- /dev/null
+++ b/community-mod/2bwm/version
@@ -0,0 +1 @@
+0.3 1
diff --git a/community-mod/9base/build b/community-mod/9base/build
new file mode 100755
index 0000000..d5660e1
--- /dev/null
+++ b/community-mod/9base/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -fcommon"
+
+make PREFIX=/usr
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/9base/checksums b/community-mod/9base/checksums
new file mode 100644
index 0000000..fe9de26
--- /dev/null
+++ b/community-mod/9base/checksums
@@ -0,0 +1 @@
+git  git+https://git.suckless.org/9base
diff --git a/community-mod/9base/sources b/community-mod/9base/sources
new file mode 100644
index 0000000..3c7fb8b
--- /dev/null
+++ b/community-mod/9base/sources
@@ -0,0 +1 @@
+git+https://git.suckless.org/9base
diff --git a/community-mod/9base/version b/community-mod/9base/version
new file mode 100644
index 0000000..d4ed325
--- /dev/null
+++ b/community-mod/9base/version
@@ -0,0 +1 @@
+git 1 
diff --git a/community-mod/abduco/build b/community-mod/abduco/build
new file mode 100755
index 0000000..431cc72
--- /dev/null
+++ b/community-mod/abduco/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/abduco/checksums b/community-mod/abduco/checksums
new file mode 100644
index 0000000..b11deab
--- /dev/null
+++ b/community-mod/abduco/checksums
@@ -0,0 +1 @@
+c90909e13fa95770b5afc3b59f311b3d3d2fdfae23f9569fa4f96a3e192a35f4  abduco-0.6.tar.gz
diff --git a/community-mod/abduco/sources b/community-mod/abduco/sources
new file mode 100644
index 0000000..464f8ea
--- /dev/null
+++ b/community-mod/abduco/sources
@@ -0,0 +1 @@
+https://www.brain-dump.org/projects/abduco/abduco-0.6.tar.gz
diff --git a/community-mod/abduco/version b/community-mod/abduco/version
new file mode 100644
index 0000000..424287d
--- /dev/null
+++ b/community-mod/abduco/version
@@ -0,0 +1 @@
+0.6 1
diff --git a/community-mod/alsa-plugins/build b/community-mod/alsa-plugins/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/community-mod/alsa-plugins/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/alsa-plugins/checksums b/community-mod/alsa-plugins/checksums
new file mode 100644
index 0000000..899ddaf
--- /dev/null
+++ b/community-mod/alsa-plugins/checksums
@@ -0,0 +1 @@
+1c0f06450c928d711719686c9dbece2d480184f36fab11b8f0534cb7b41e337d  alsa-plugins-1.2.2.tar.bz2
diff --git a/community-mod/alsa-plugins/depends b/community-mod/alsa-plugins/depends
new file mode 100644
index 0000000..74cfefd
--- /dev/null
+++ b/community-mod/alsa-plugins/depends
@@ -0,0 +1,2 @@
+alsa-lib
+pkgconf build
diff --git a/community-mod/alsa-plugins/sources b/community-mod/alsa-plugins/sources
new file mode 100644
index 0000000..0633c6f
--- /dev/null
+++ b/community-mod/alsa-plugins/sources
@@ -0,0 +1 @@
+https://www.alsa-project.org/files/pub/plugins/alsa-plugins-1.2.2.tar.bz2
diff --git a/community-mod/alsa-plugins/version b/community-mod/alsa-plugins/version
new file mode 100644
index 0000000..5266927
--- /dev/null
+++ b/community-mod/alsa-plugins/version
@@ -0,0 +1 @@
+1.2.2 1
diff --git a/community-mod/aria2/build b/community-mod/aria2/build
new file mode 100755
index 0000000..9fae614
--- /dev/null
+++ b/community-mod/aria2/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-nls \
+    --disable-metalink \
+    --disable-websocket \
+    --without-libxml2 \
+    --without-libexpat \
+    --without-sqlite3
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/aria2/checksums b/community-mod/aria2/checksums
new file mode 100644
index 0000000..5092f23
--- /dev/null
+++ b/community-mod/aria2/checksums
@@ -0,0 +1 @@
+1e2b7fd08d6af228856e51c07173cfcf987528f1ac97e04c5af4a47642617dfd  aria2-1.35.0.tar.xz
diff --git a/community-mod/aria2/depends b/community-mod/aria2/depends
new file mode 100644
index 0000000..f8df7bb
--- /dev/null
+++ b/community-mod/aria2/depends
@@ -0,0 +1,3 @@
+libressl
+xz
+zlib
diff --git a/community-mod/aria2/sources b/community-mod/aria2/sources
new file mode 100644
index 0000000..beae00b
--- /dev/null
+++ b/community-mod/aria2/sources
@@ -0,0 +1 @@
+https://github.com/tatsuhiro-t/aria2/releases/download/release-1.35.0/aria2-1.35.0.tar.xz
diff --git a/community-mod/aria2/version b/community-mod/aria2/version
new file mode 100644
index 0000000..5f2b3d1
--- /dev/null
+++ b/community-mod/aria2/version
@@ -0,0 +1 @@
+1.35.0 2
diff --git a/community-mod/autoconf-archive/build b/community-mod/autoconf-archive/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/autoconf-archive/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/autoconf-archive/checksums b/community-mod/autoconf-archive/checksums
new file mode 100644
index 0000000..5dd7c12
--- /dev/null
+++ b/community-mod/autoconf-archive/checksums
@@ -0,0 +1 @@
+e8a6eb9d28ddcba8ffef3fa211653239e9bf239aba6a01a6b7cfc7ceaec69cbd
diff --git a/community-mod/autoconf-archive/sources b/community-mod/autoconf-archive/sources
new file mode 100644
index 0000000..029be42
--- /dev/null
+++ b/community-mod/autoconf-archive/sources
@@ -0,0 +1 @@
+https://ftp.wayne.edu/gnu/autoconf-archive/autoconf-archive-2021.02.19.tar.xz
diff --git a/community-mod/autoconf-archive/version b/community-mod/autoconf-archive/version
new file mode 100644
index 0000000..fbba2da
--- /dev/null
+++ b/community-mod/autoconf-archive/version
@@ -0,0 +1 @@
+2021.02.19 1
diff --git a/community-mod/autoconf/build b/community-mod/autoconf/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/autoconf/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/autoconf/checksums b/community-mod/autoconf/checksums
new file mode 100644
index 0000000..7a7892f
--- /dev/null
+++ b/community-mod/autoconf/checksums
@@ -0,0 +1 @@
+431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c
diff --git a/community-mod/autoconf/depends b/community-mod/autoconf/depends
new file mode 100644
index 0000000..8fd1a89
--- /dev/null
+++ b/community-mod/autoconf/depends
@@ -0,0 +1,2 @@
+m4
+perl
diff --git a/community-mod/autoconf/sources b/community-mod/autoconf/sources
new file mode 100644
index 0000000..dbf7c3e
--- /dev/null
+++ b/community-mod/autoconf/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.71.tar.gz
diff --git a/community-mod/autoconf/version b/community-mod/autoconf/version
new file mode 100644
index 0000000..929d147
--- /dev/null
+++ b/community-mod/autoconf/version
@@ -0,0 +1 @@
+2.71 1
diff --git a/community-mod/automake/build b/community-mod/automake/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/automake/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/automake/checksums b/community-mod/automake/checksums
new file mode 100644
index 0000000..b02a661
--- /dev/null
+++ b/community-mod/automake/checksums
@@ -0,0 +1 @@
+ce010788b51f64511a1e9bb2a1ec626037c6d0e7ede32c1c103611b9d3cba65f
diff --git a/community-mod/automake/depends b/community-mod/automake/depends
new file mode 100644
index 0000000..ef9f132
--- /dev/null
+++ b/community-mod/automake/depends
@@ -0,0 +1,2 @@
+autoconf
+perl
diff --git a/community-mod/automake/sources b/community-mod/automake/sources
new file mode 100644
index 0000000..d6ed262
--- /dev/null
+++ b/community-mod/automake/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/automake/automake-1.16.3.tar.gz
diff --git a/community-mod/automake/version b/community-mod/automake/version
new file mode 100644
index 0000000..c52bb82
--- /dev/null
+++ b/community-mod/automake/version
@@ -0,0 +1 @@
+1.16.3 1 
diff --git a/community-mod/axel/build b/community-mod/axel/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/axel/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/axel/checksums b/community-mod/axel/checksums
new file mode 100644
index 0000000..c22e300
--- /dev/null
+++ b/community-mod/axel/checksums
@@ -0,0 +1 @@
+46eb4f10a11c4e50320ae6a034ef03ffe59dc11c3c6542a9867a3e4dc0c4b44e
diff --git a/community-mod/axel/depends b/community-mod/axel/depends
new file mode 100644
index 0000000..75929cf
--- /dev/null
+++ b/community-mod/axel/depends
@@ -0,0 +1 @@
+libressl
diff --git a/community-mod/axel/sources b/community-mod/axel/sources
new file mode 100644
index 0000000..bf00e93
--- /dev/null
+++ b/community-mod/axel/sources
@@ -0,0 +1 @@
+https://github.com/axel-download-accelerator/axel/releases/download/v2.17.10/axel-2.17.10.tar.xz
diff --git a/community-mod/axel/version b/community-mod/axel/version
new file mode 100644
index 0000000..c067037
--- /dev/null
+++ b/community-mod/axel/version
@@ -0,0 +1 @@
+2.17.10 1
diff --git a/community-mod/azpainter/build b/community-mod/azpainter/build
new file mode 100755
index 0000000..fbbbb0f
--- /dev/null
+++ b/community-mod/azpainter/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+	--prefix=/usr
+	
+make
+make DESTDIR="$1" install
diff --git a/community-mod/azpainter/checksums b/community-mod/azpainter/checksums
new file mode 100644
index 0000000..90fb027
--- /dev/null
+++ b/community-mod/azpainter/checksums
@@ -0,0 +1 @@
+d5483c965cb92cd318d20d45e7d61ec75cc2add418a00162fca836c59349c1a5
diff --git a/community-mod/azpainter/depends b/community-mod/azpainter/depends
new file mode 100644
index 0000000..b20789c
--- /dev/null
+++ b/community-mod/azpainter/depends
@@ -0,0 +1,7 @@
+fontconfig
+libjpeg-turbo
+libpng
+libX11
+libXext
+libXi
+zlib
diff --git a/community-mod/azpainter/sources b/community-mod/azpainter/sources
new file mode 100644
index 0000000..f4014c6
--- /dev/null
+++ b/community-mod/azpainter/sources
@@ -0,0 +1 @@
+https://gitlab.com/azelpg/azpainter/-/archive/v3.0.2/azpainter-v3.0.2.tar.gz
diff --git a/community-mod/azpainter/version b/community-mod/azpainter/version
new file mode 100644
index 0000000..0a6f822
--- /dev/null
+++ b/community-mod/azpainter/version
@@ -0,0 +1 @@
+3.0.2 1 
diff --git a/community-mod/bash/build b/community-mod/bash/build
new file mode 100755
index 0000000..f759c19
--- /dev/null
+++ b/community-mod/bash/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+patch -p1 < bash-5.1-parallel_make.patch
+
+for patch in bash51-0??; do
+    patch -p0 < "$patch"
+done
+
+./configure \
+    --prefix=/usr \
+    --without-bash-malloc \
+    --without-installed-readline \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
+
+ln -s bash "$1/usr/bin/sh"
diff --git a/community-mod/bash/checksums b/community-mod/bash/checksums
new file mode 100644
index 0000000..bdc31c9
--- /dev/null
+++ b/community-mod/bash/checksums
@@ -0,0 +1,10 @@
+cc012bc860406dcf42f64431bcd3d2fa7560c02915a601aba9cd597a39329baa
+ebb07b3dbadd98598f078125d0ae0d699295978a5cdaef6282fe19adef45b5fa
+15ea6121a801e48e658ceee712ea9b88d4ded022046a6147550790caf04f5dbe
+22f2cc262f056b22966281babf4b0a2f84cb7dd2223422e5dcd013c3dcbab6b1
+9aaeb65664ef0d28c0067e47ba5652b518298b3b92d33327d84b98b28d873c86
+cccbb5e9e6763915d232d29c713007a62b06e65126e3dd2d1128a0dc5ef46da5
+75e17d937de862615c6375def40a7574462210dce88cf741f660e2cc29473d14
+acfcb8c7e9f73457c0fb12324afb613785e0c9cef3315c9bbab4be702f40393a
+f22cf3c51a28f084a25aef28950e8777489072628f972b12643b4534a17ed2d1
+4d299f5db33bd0f916ec1309e4568e3842670642cf160f14a3e867eb0feb493e
diff --git a/community-mod/bash/depends b/community-mod/bash/depends
new file mode 100644
index 0000000..82c37a6
--- /dev/null
+++ b/community-mod/bash/depends
@@ -0,0 +1,2 @@
+bison make
+ncurses
diff --git a/community-mod/bash/patches/bash-5.1-parallel_make.patch b/community-mod/bash/patches/bash-5.1-parallel_make.patch
new file mode 100644
index 0000000..b341a8a
--- /dev/null
+++ b/community-mod/bash/patches/bash-5.1-parallel_make.patch
@@ -0,0 +1,15 @@
+bashline.c:65:10: fatal error: builtins/builtext.h: No such file or directory
+   65 | #include "builtins/builtext.h"  /* for read_builtin */
+      |          ^~~~~~~~~~~~~~~~~~~~~
+
+--- bash-5.1/Makefile.in
++++ bash-5.1/Makefile.in
+@@ -584,6 +584,8 @@
+ 	ls -l $(Program)
+ 	-$(SIZE) $(Program)
+ 
++$(CSOURCES): $(DEFDIR)/builtext.h
++
+ .build:	$(SOURCES) config.h Makefile version.h $(VERSPROG)
+ 	@echo
+ 	@echo "	  ***********************************************************"
diff --git a/community-mod/bash/sources b/community-mod/bash/sources
new file mode 100644
index 0000000..8db69d5
--- /dev/null
+++ b/community-mod/bash/sources
@@ -0,0 +1,10 @@
+https://ftp.gnu.org/gnu/bash/bash-5.1.tar.gz
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-001
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-002
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-003
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-004
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-005
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-006
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-007
+https://ftp.gnu.org/gnu/bash/bash-5.1-patches/bash51-008
+patches/bash-5.1-parallel_make.patch
diff --git a/community-mod/bash/version b/community-mod/bash/version
new file mode 100644
index 0000000..60b8563
--- /dev/null
+++ b/community-mod/bash/version
@@ -0,0 +1 @@
+5.1.p8 1
diff --git a/community-mod/bdftopcf/build b/community-mod/bdftopcf/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/bdftopcf/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/bdftopcf/checksums b/community-mod/bdftopcf/checksums
new file mode 100644
index 0000000..7afbc5e
--- /dev/null
+++ b/community-mod/bdftopcf/checksums
@@ -0,0 +1 @@
+4b4df05fc53f1e98993638d6f7e178d95b31745c4568cee407e167491fd311a2  bdftopcf-1.1.tar.bz2
diff --git a/community-mod/bdftopcf/depends b/community-mod/bdftopcf/depends
new file mode 100644
index 0000000..127059b
--- /dev/null
+++ b/community-mod/bdftopcf/depends
@@ -0,0 +1,2 @@
+xorg-util-macros make
+xorgproto        make
diff --git a/community-mod/bdftopcf/sources b/community-mod/bdftopcf/sources
new file mode 100644
index 0000000..217507c
--- /dev/null
+++ b/community-mod/bdftopcf/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/app/bdftopcf-1.1.tar.bz2
diff --git a/community-mod/bdftopcf/version b/community-mod/bdftopcf/version
new file mode 100644
index 0000000..f8b0b37
--- /dev/null
+++ b/community-mod/bdftopcf/version
@@ -0,0 +1 @@
+1.1 1
diff --git a/community-mod/berry/build b/community-mod/berry/build
new file mode 100755
index 0000000..ad884ba
--- /dev/null
+++ b/community-mod/berry/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" bindir=/usr/bin mandir=/usr/share/man install
diff --git a/community-mod/berry/checksums b/community-mod/berry/checksums
new file mode 100644
index 0000000..b292b59
--- /dev/null
+++ b/community-mod/berry/checksums
@@ -0,0 +1 @@
+bcdf93805ad023d5635f5017230636bbfbe2698721cf4a0041a48ffb19d58844
diff --git a/community-mod/berry/depends b/community-mod/berry/depends
new file mode 100644
index 0000000..9d3dd12
--- /dev/null
+++ b/community-mod/berry/depends
@@ -0,0 +1,3 @@
+libX11
+libXft
+libXinerama
diff --git a/community-mod/berry/sources b/community-mod/berry/sources
new file mode 100644
index 0000000..e9348ec
--- /dev/null
+++ b/community-mod/berry/sources
@@ -0,0 +1 @@
+https://github.com/JLErvin/berry/archive/refs/tags/0.1.8.tar.gz
diff --git a/community-mod/berry/version b/community-mod/berry/version
new file mode 100644
index 0000000..f8376ca
--- /dev/null
+++ b/community-mod/berry/version
@@ -0,0 +1 @@
+0.1.8 1 
diff --git a/community-mod/bind/build b/community-mod/bind/build
new file mode 100755
index 0000000..29b9f04
--- /dev/null
+++ b/community-mod/bind/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+# Remove libtool dependency.
+sed -i 's/as_fn_error.*libtool/: "/g' configure
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
+
+# Why are tests installed to $DESTDIR's /tmp ?
+rm -rf "$1/tmp"
diff --git a/community-mod/bind/checksums b/community-mod/bind/checksums
new file mode 100644
index 0000000..6969e0a
--- /dev/null
+++ b/community-mod/bind/checksums
@@ -0,0 +1 @@
+bf485ac49715d43fa65c2c6e33271aab965bcd1b461fe2ac9f439754a210e6c7
diff --git a/community-mod/bind/depends b/community-mod/bind/depends
new file mode 100644
index 0000000..702fcb4
--- /dev/null
+++ b/community-mod/bind/depends
@@ -0,0 +1,9 @@
+json-c
+libcap
+libnghttp2
+libressl
+libuv
+perl    make
+pkgconf make
+xz
+zlib
diff --git a/community-mod/bind/sources b/community-mod/bind/sources
new file mode 100644
index 0000000..2ca12e0
--- /dev/null
+++ b/community-mod/bind/sources
@@ -0,0 +1 @@
+https://downloads.isc.org/isc/bind9/9.17.13/bind-9.17.13.tar.xz
diff --git a/community-mod/bind/version b/community-mod/bind/version
new file mode 100644
index 0000000..d6d7dbd
--- /dev/null
+++ b/community-mod/bind/version
@@ -0,0 +1 @@
+9.17.13 1
diff --git a/community-mod/birch/build b/community-mod/birch/build
new file mode 100755
index 0000000..8d1474a
--- /dev/null
+++ b/community-mod/birch/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+install -Dm755 birch "$1/usr/bin/birch"
diff --git a/community-mod/birch/depends b/community-mod/birch/depends
new file mode 100644
index 0000000..705963a
--- /dev/null
+++ b/community-mod/birch/depends
@@ -0,0 +1 @@
+bash
diff --git a/community-mod/birch/sources b/community-mod/birch/sources
new file mode 100644
index 0000000..061277b
--- /dev/null
+++ b/community-mod/birch/sources
@@ -0,0 +1 @@
+git+https://github.com/dylanaraps/birch
diff --git a/community-mod/birch/version b/community-mod/birch/version
new file mode 100644
index 0000000..d4ed325
--- /dev/null
+++ b/community-mod/birch/version
@@ -0,0 +1 @@
+git 1 
diff --git a/community-mod/bitfetch/build b/community-mod/bitfetch/build
new file mode 100755
index 0000000..d8552dd
--- /dev/null
+++ b/community-mod/bitfetch/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make ID=kiss bitfetch-build
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/bitfetch/checksums b/community-mod/bitfetch/checksums
new file mode 100644
index 0000000..c188147
--- /dev/null
+++ b/community-mod/bitfetch/checksums
@@ -0,0 +1 @@
+36a2902dfe257e30b9b6a01a0dc3d479b5c400a2d6a37ebd9f3514b6d80e48ed
diff --git a/community-mod/bitfetch/depends b/community-mod/bitfetch/depends
new file mode 100644
index 0000000..9003f85
--- /dev/null
+++ b/community-mod/bitfetch/depends
@@ -0,0 +1,2 @@
+libX11
+libXinerama
diff --git a/community-mod/bitfetch/sources b/community-mod/bitfetch/sources
new file mode 100644
index 0000000..816012f
--- /dev/null
+++ b/community-mod/bitfetch/sources
@@ -0,0 +1 @@
+https://gitlab.com/bit9tream/bitfetch/-/archive/3.1/bitfetch-3.1.tar.gz
diff --git a/community-mod/bitfetch/version b/community-mod/bitfetch/version
new file mode 100644
index 0000000..e751c9e
--- /dev/null
+++ b/community-mod/bitfetch/version
@@ -0,0 +1 @@
+3.1 1
diff --git a/community-mod/bkeymaps/build b/community-mod/bkeymaps/build
new file mode 100755
index 0000000..e2a3803
--- /dev/null
+++ b/community-mod/bkeymaps/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" install
+install -Dm644 -t "$1/usr/share/bkeymaps/colemak" en-latin9.bmap
diff --git a/community-mod/bkeymaps/checksums b/community-mod/bkeymaps/checksums
new file mode 100644
index 0000000..2e497ef
--- /dev/null
+++ b/community-mod/bkeymaps/checksums
@@ -0,0 +1,2 @@
+59d41ddb0c7a92d8ac155a82ed2875b7880c8957ea4308afa633c8b81e5b8887  bkeymaps-1.13.tar.gz
+f4e10f53a60516a0db572d0b1298be303dcdc5f83e2fe587379b887a85283acd  bkeymap-colemak-1.13.tar.gz
diff --git a/community-mod/bkeymaps/post-install b/community-mod/bkeymaps/post-install
new file mode 100755
index 0000000..f15c1c1
--- /dev/null
+++ b/community-mod/bkeymaps/post-install
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+cat <<EOF
+
+NOTE: Keymaps are copied to /usr/share/bkeymaps.
+
+NOTE: You should pipe the keymaps to loadkmap in 
+NOTE: order to load them.
+
+example usage:
+-> loadkmap < /usr/share/bkeymaps/us/us.bmap
+
+EOF
diff --git a/community-mod/bkeymaps/sources b/community-mod/bkeymaps/sources
new file mode 100644
index 0000000..0390c47
--- /dev/null
+++ b/community-mod/bkeymaps/sources
@@ -0,0 +1,2 @@
+https://dev.alpinelinux.org/bkeymaps/bkeymaps-1.13.tar.gz
+https://dev.alpinelinux.org/bkeymaps/bkeymap-colemak-1.13.tar.gz
diff --git a/community-mod/bkeymaps/version b/community-mod/bkeymaps/version
new file mode 100644
index 0000000..f5836c7
--- /dev/null
+++ b/community-mod/bkeymaps/version
@@ -0,0 +1 @@
+1.13 3
diff --git a/community-mod/boehm-gc/build b/community-mod/boehm-gc/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/boehm-gc/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/boehm-gc/checksums b/community-mod/boehm-gc/checksums
new file mode 100644
index 0000000..81aae4d
--- /dev/null
+++ b/community-mod/boehm-gc/checksums
@@ -0,0 +1 @@
+436a0ddc67b1ac0b0405b61a9675bca9e075c8156f4debd1d06f3a56c7cd289d  gc-8.0.4.tar.gz
diff --git a/community-mod/boehm-gc/sources b/community-mod/boehm-gc/sources
new file mode 100644
index 0000000..1170905
--- /dev/null
+++ b/community-mod/boehm-gc/sources
@@ -0,0 +1 @@
+https://github.com/ivmai/bdwgc/releases/download/v8.0.4/gc-8.0.4.tar.gz
diff --git a/community-mod/boehm-gc/version b/community-mod/boehm-gc/version
new file mode 100644
index 0000000..002e467
--- /dev/null
+++ b/community-mod/boehm-gc/version
@@ -0,0 +1 @@
+8.0.4 1
diff --git a/community-mod/boost/build b/community-mod/boost/build
new file mode 100755
index 0000000..8468a84
--- /dev/null
+++ b/community-mod/boost/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+./bootstrap.sh \
+    --prefix="$1/usr" \
+    --with-python=/usr/bin/python3
+
+for action in stage install; do
+    ./b2 $action \
+        variant=release \
+        debug-symbols=off \
+        threading=multi \
+        python=3.9
+done
+
+# https://github.com/boostorg/python/issues/203#issuecomment-391477685
+ln -s "$1/usr/lib/libboost_python39.so" "$1/usr/lib/libboost_python3.so"
+ln -s "$1/usr/lib/libboost_numpy39.so"  "$1/usr/lib/libboost_numpy3.so"
diff --git a/community-mod/boost/checksums b/community-mod/boost/checksums
new file mode 100644
index 0000000..2f76a57
--- /dev/null
+++ b/community-mod/boost/checksums
@@ -0,0 +1 @@
+f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41
diff --git a/community-mod/boost/depends b/community-mod/boost/depends
new file mode 100644
index 0000000..b46d22a
--- /dev/null
+++ b/community-mod/boost/depends
@@ -0,0 +1,2 @@
+linux-headers make
+python
diff --git a/community-mod/boost/sources b/community-mod/boost/sources
new file mode 100644
index 0000000..5d2b21a
--- /dev/null
+++ b/community-mod/boost/sources
@@ -0,0 +1 @@
+https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2
diff --git a/community-mod/boost/version b/community-mod/boost/version
new file mode 100644
index 0000000..03a7967
--- /dev/null
+++ b/community-mod/boost/version
@@ -0,0 +1 @@
+1.76.0 1 
diff --git a/community-mod/brotli/build b/community-mod/brotli/build
new file mode 100755
index 0000000..d44a1f5
--- /dev/null
+++ b/community-mod/brotli/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=lib \
+    -DBUILD_SHARED_LIBS=True
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/brotli/checksums b/community-mod/brotli/checksums
new file mode 100644
index 0000000..ad5322d
--- /dev/null
+++ b/community-mod/brotli/checksums
@@ -0,0 +1 @@
+f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46
diff --git a/community-mod/brotli/depends b/community-mod/brotli/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/brotli/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/brotli/sources b/community-mod/brotli/sources
new file mode 100644
index 0000000..82e06f1
--- /dev/null
+++ b/community-mod/brotli/sources
@@ -0,0 +1 @@
+https://github.com/google/brotli/archive/refs/tags/v1.0.9.tar.gz
diff --git a/community-mod/brotli/version b/community-mod/brotli/version
new file mode 100644
index 0000000..7773763
--- /dev/null
+++ b/community-mod/brotli/version
@@ -0,0 +1 @@
+1.0.9 1
diff --git a/community-mod/brownout/build b/community-mod/brownout/build
new file mode 100755
index 0000000..5eedb34
--- /dev/null
+++ b/community-mod/brownout/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make PREFIX=/usr DESTDIR="$1" clean install
diff --git a/community-mod/brownout/checksums b/community-mod/brownout/checksums
new file mode 100644
index 0000000..2b020a4
--- /dev/null
+++ b/community-mod/brownout/checksums
@@ -0,0 +1 @@
+949e6fccdabc237200f4e8202b0bf38151d55f7403bb2d87d725cba0574e1a2b
diff --git a/community-mod/brownout/depends b/community-mod/brownout/depends
new file mode 100644
index 0000000..1903bba
--- /dev/null
+++ b/community-mod/brownout/depends
@@ -0,0 +1 @@
+libX11
diff --git a/community-mod/brownout/sources b/community-mod/brownout/sources
new file mode 100644
index 0000000..7f5d422
--- /dev/null
+++ b/community-mod/brownout/sources
@@ -0,0 +1 @@
+https://github.com/graupe/brownout/archive/refs/tags/v0.4.tar.gz
diff --git a/community-mod/brownout/version b/community-mod/brownout/version
new file mode 100644
index 0000000..2bea266
--- /dev/null
+++ b/community-mod/brownout/version
@@ -0,0 +1 @@
+0.4 1
diff --git a/community-mod/bspwm/build b/community-mod/bspwm/build
new file mode 100755
index 0000000..28bda35
--- /dev/null
+++ b/community-mod/bspwm/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/bspwm/checksums b/community-mod/bspwm/checksums
new file mode 100644
index 0000000..cff2759
--- /dev/null
+++ b/community-mod/bspwm/checksums
@@ -0,0 +1 @@
+0d0f5e465b9c27a5c2143c86189392fa297fad55253b9ed8f6854473d3928f8f  0.9.10.tar.gz
diff --git a/community-mod/bspwm/depends b/community-mod/bspwm/depends
new file mode 100644
index 0000000..07e9fcb
--- /dev/null
+++ b/community-mod/bspwm/depends
@@ -0,0 +1,4 @@
+libxcb
+xcb-util-wm
+xcb-util-keysyms
+xcb-util make
diff --git a/community-mod/bspwm/sources b/community-mod/bspwm/sources
new file mode 100644
index 0000000..6560554
--- /dev/null
+++ b/community-mod/bspwm/sources
@@ -0,0 +1 @@
+https://github.com/baskerville/bspwm/archive/0.9.10.tar.gz
diff --git a/community-mod/bspwm/version b/community-mod/bspwm/version
new file mode 100644
index 0000000..b1465b7
--- /dev/null
+++ b/community-mod/bspwm/version
@@ -0,0 +1 @@
+0.9.10 1
diff --git a/community-mod/bubblewrap/build b/community-mod/bubblewrap/build
new file mode 100755
index 0000000..105d1e2
--- /dev/null
+++ b/community-mod/bubblewrap/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < realpath-workaround.patch
+
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --with-priv-mode=none \
+    --disable-man
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/bubblewrap/checksums b/community-mod/bubblewrap/checksums
new file mode 100644
index 0000000..9d929e8
--- /dev/null
+++ b/community-mod/bubblewrap/checksums
@@ -0,0 +1,2 @@
+b9c69b9b1c61a608f34325c8e1a495229bacf6e4a07cbb0c80cf7a814d7ccc03  bubblewrap-0.4.1.tar.xz
+404da6bab5143d5f52b5fc1ec234ede30080a9e97e1fb428c941993fedde9cc9  realpath-workaround.patch
diff --git a/community-mod/bubblewrap/depends b/community-mod/bubblewrap/depends
new file mode 100644
index 0000000..8456694
--- /dev/null
+++ b/community-mod/bubblewrap/depends
@@ -0,0 +1 @@
+libcap
diff --git a/community-mod/bubblewrap/patches/realpath-workaround.patch b/community-mod/bubblewrap/patches/realpath-workaround.patch
new file mode 100644
index 0000000..8474faf
--- /dev/null
+++ b/community-mod/bubblewrap/patches/realpath-workaround.patch
@@ -0,0 +1,53 @@
+Musl realpath() implementation currently depends on /proc which is
+not available when setting up pivot root. For the time being just
+fallback to a naive normalization algorithm originated from
+VoidLinux' xbps. If there was path that would have required advanced
+normalizing as provided by realpath() the following parse_mountinfo()
+will fail.
+
+
+diff --git bind-mount.c.orig bind-mount.c
+index 045fa0e..d05b540 100644
+--- ./bind-mount.c.orig
++++ ./bind-mount.c
+@@ -23,6 +23,28 @@
+ #include "utils.h"
+ #include "bind-mount.h"
+ 
++#ifndef __GLIBC__
++static char *
++normpath(char *path)
++{
++  char *seg = NULL, *p = NULL;
++
++  for (p = path, seg = NULL; *p; p++) {
++    if (strncmp(p, "/../", 4) == 0 || strncmp(p, "/..", 4) == 0) {
++      memmove(seg ? seg : p, p+3, strlen(p+3) + 1);
++      return normpath(path);
++    } else if (strncmp(p, "/./", 3) == 0 || strncmp(p, "/.", 3) == 0) {
++      memmove(p, p+2, strlen(p+2) + 1);
++    } else if (strncmp(p, "//", 2) == 0 || strncmp(p, "/", 2) == 0) {
++      memmove(p, p+1, strlen(p+1) + 1);
++    }
++    if (*p == '/')
++      seg = p;
++  }
++  return path;
++}
++#endif
++
+ static char *
+ skip_token (char *line, bool eat_whitespace)
+ {
+@@ -397,7 +419,11 @@ bind_mount (int           proc_fd,
+      path, so to find it in the mount table we need to do that too. */
+   resolved_dest = realpath (dest, NULL);
+   if (resolved_dest == NULL)
++#ifdef __GLIBC__
+     return 2;
++#else
++    resolved_dest = normpath(strdup(dest));
++#endif
+ 
+   mount_tab = parse_mountinfo (proc_fd, resolved_dest);
+   if (mount_tab[0].mountpoint == NULL)
diff --git a/community-mod/bubblewrap/sources b/community-mod/bubblewrap/sources
new file mode 100644
index 0000000..87c19cb
--- /dev/null
+++ b/community-mod/bubblewrap/sources
@@ -0,0 +1,2 @@
+https://github.com/containers/bubblewrap/releases/download/v0.4.1/bubblewrap-0.4.1.tar.xz
+patches/realpath-workaround.patch
diff --git a/community-mod/bubblewrap/version b/community-mod/bubblewrap/version
new file mode 100644
index 0000000..3d58e2e
--- /dev/null
+++ b/community-mod/bubblewrap/version
@@ -0,0 +1 @@
+0.4.1 1
diff --git a/community-mod/calcurse/build b/community-mod/calcurse/build
new file mode 100755
index 0000000..0e578f3
--- /dev/null
+++ b/community-mod/calcurse/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+sed -i '/ical-009.sh \\/d' test/Makefile.in
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --disable-docs \
+    --without-asciidoc \
+    --disable-nls \
+    --without-asciidoc 
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/calcurse/checksums b/community-mod/calcurse/checksums
new file mode 100644
index 0000000..25a25c2
--- /dev/null
+++ b/community-mod/calcurse/checksums
@@ -0,0 +1 @@
+ef6675966a53f41196006ce624ece222fe400da0563f4fed1ae0272ad45c8435
diff --git a/community-mod/calcurse/depends b/community-mod/calcurse/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/calcurse/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/calcurse/sources b/community-mod/calcurse/sources
new file mode 100644
index 0000000..5dcb696
--- /dev/null
+++ b/community-mod/calcurse/sources
@@ -0,0 +1 @@
+https://calcurse.org/files/calcurse-4.7.0.tar.gz
diff --git a/community-mod/calcurse/version b/community-mod/calcurse/version
new file mode 100644
index 0000000..31bf072
--- /dev/null
+++ b/community-mod/calcurse/version
@@ -0,0 +1 @@
+4.7.0 1
diff --git a/community-mod/ccrypt/build b/community-mod/ccrypt/build
new file mode 100755
index 0000000..13959c4
--- /dev/null
+++ b/community-mod/ccrypt/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/ccrypt/checksums b/community-mod/ccrypt/checksums
new file mode 100644
index 0000000..3e1ba99
--- /dev/null
+++ b/community-mod/ccrypt/checksums
@@ -0,0 +1 @@
+b19c47500a96ee5fbd820f704c912f6efcc42b638c0a6aa7a4e3dc0a6b51a44f
diff --git a/community-mod/ccrypt/sources b/community-mod/ccrypt/sources
new file mode 100644
index 0000000..f79afa5
--- /dev/null
+++ b/community-mod/ccrypt/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/ccrypt/ccrypt-1.11.tar.gz
diff --git a/community-mod/ccrypt/version b/community-mod/ccrypt/version
new file mode 100644
index 0000000..1c832f3
--- /dev/null
+++ b/community-mod/ccrypt/version
@@ -0,0 +1 @@
+1.11 1
diff --git a/community-mod/cdrtools/build b/community-mod/cdrtools/build
new file mode 100755
index 0000000..a1d64f0
--- /dev/null
+++ b/community-mod/cdrtools/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+# We have to edit files to set the install location
+sed -i 's|/opt/schily|/usr|' DEFAULTS/Defaults.linux
+
+# install rscsi to /usr/bin instead of /usr/sbin
+sed -i 's|INSDIR=.*|INSDIR=bin|' rscsi/Makefile
+
+make
+make DESTDIR="$1" install
\ No newline at end of file
diff --git a/community-mod/cdrtools/checksums b/community-mod/cdrtools/checksums
new file mode 100644
index 0000000..a3110f4
--- /dev/null
+++ b/community-mod/cdrtools/checksums
@@ -0,0 +1 @@
+a9261273b5a1a2da51bebc70584e63291b28ac6836237a4963865c50a9a026bb
diff --git a/community-mod/cdrtools/sources b/community-mod/cdrtools/sources
new file mode 100644
index 0000000..16515b4
--- /dev/null
+++ b/community-mod/cdrtools/sources
@@ -0,0 +1 @@
+https://deac-riga.dl.sourceforge.net/project/cdrtools/cdrtools-3.01.tar.gz
diff --git a/community-mod/cdrtools/version b/community-mod/cdrtools/version
new file mode 100644
index 0000000..6de1cde
--- /dev/null
+++ b/community-mod/cdrtools/version
@@ -0,0 +1 @@
+3.01 1
diff --git a/community-mod/cjson/build b/community-mod/cjson/build
new file mode 100755
index 0000000..fcac1d0
--- /dev/null
+++ b/community-mod/cjson/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+# Install static libs, avoid adding a 'cmake' dependency.
+for lib in CJSON UTILS; do
+    sed -i "s/\$(INSTALL) \$(${lib}_SHARED)/& \$(${lib}_STATIC)/" Makefile
+done
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/cjson/checksums b/community-mod/cjson/checksums
new file mode 100644
index 0000000..f33b454
--- /dev/null
+++ b/community-mod/cjson/checksums
@@ -0,0 +1 @@
+fb50a663eefdc76bafa80c82bc045af13b1363e8f45cec8b442007aef6a41343
diff --git a/community-mod/cjson/sources b/community-mod/cjson/sources
new file mode 100644
index 0000000..7a755bd
--- /dev/null
+++ b/community-mod/cjson/sources
@@ -0,0 +1 @@
+https://github.com/DaveGamble/cJSON/archive/refs/tags/v1.7.14.tar.gz
diff --git a/community-mod/cjson/version b/community-mod/cjson/version
new file mode 100644
index 0000000..81350a4
--- /dev/null
+++ b/community-mod/cjson/version
@@ -0,0 +1 @@
+1.7.14 1
diff --git a/community-mod/cloc/build b/community-mod/cloc/build
new file mode 100755
index 0000000..2636c0b
--- /dev/null
+++ b/community-mod/cloc/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+install -Dm755 cloc "$1/usr/bin/cloc"
diff --git a/community-mod/cloc/checksums b/community-mod/cloc/checksums
new file mode 100644
index 0000000..15862dc
--- /dev/null
+++ b/community-mod/cloc/checksums
@@ -0,0 +1 @@
+152502a61d4bae4a406a05a01bf52489b310ec03dbd8c645d0bb051fa4717ddb
diff --git a/community-mod/cloc/depends b/community-mod/cloc/depends
new file mode 100644
index 0000000..24475b5
--- /dev/null
+++ b/community-mod/cloc/depends
@@ -0,0 +1 @@
+perl
diff --git a/community-mod/cloc/sources b/community-mod/cloc/sources
new file mode 100644
index 0000000..55eb890
--- /dev/null
+++ b/community-mod/cloc/sources
@@ -0,0 +1 @@
+https://github.com/AlDanial/cloc/releases/download/v1.90/cloc-1.90.tar.gz
\ No newline at end of file
diff --git a/community-mod/cloc/version b/community-mod/cloc/version
new file mode 100644
index 0000000..7d5b16b
--- /dev/null
+++ b/community-mod/cloc/version
@@ -0,0 +1 @@
+1.90 1 
diff --git a/community-mod/cmus/build b/community-mod/cmus/build
new file mode 100755
index 0000000..62cb642
--- /dev/null
+++ b/community-mod/cmus/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/cmus/checksums b/community-mod/cmus/checksums
new file mode 100644
index 0000000..54e24a5
--- /dev/null
+++ b/community-mod/cmus/checksums
@@ -0,0 +1 @@
+6fb799cae60db9324f03922bbb2e322107fd386ab429c0271996985294e2ef44
diff --git a/community-mod/cmus/depends b/community-mod/cmus/depends
new file mode 100755
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/cmus/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/cmus/sources b/community-mod/cmus/sources
new file mode 100755
index 0000000..0c42b2f
--- /dev/null
+++ b/community-mod/cmus/sources
@@ -0,0 +1 @@
+https://github.com/cmus/cmus/archive/v2.9.1.tar.gz
diff --git a/community-mod/cmus/version b/community-mod/cmus/version
new file mode 100755
index 0000000..1e63090
--- /dev/null
+++ b/community-mod/cmus/version
@@ -0,0 +1 @@
+2.9.1 1
diff --git a/community-mod/conky/build b/community-mod/conky/build
new file mode 100755
index 0000000..d557bd7
--- /dev/null
+++ b/community-mod/conky/build
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DRELEASE=ON \
+    -DCMAKE_BUILD_TYPE=None \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DBUILD_I18N=OFF \
+    -DCURSES_NEED_WIDE=ON \
+    -DCURSES_INCLUDE_PATH=/usr/include
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/conky/checksums b/community-mod/conky/checksums
new file mode 100644
index 0000000..4d5634b
--- /dev/null
+++ b/community-mod/conky/checksums
@@ -0,0 +1 @@
+a7eb112fe7a6bcd6c44706a53cbf6222e640cd1e585492fc654aa9e05a7bbc94
diff --git a/community-mod/conky/depends b/community-mod/conky/depends
new file mode 100644
index 0000000..5ba13f2
--- /dev/null
+++ b/community-mod/conky/depends
@@ -0,0 +1,8 @@
+cmake   make
+freetype-harfbuzz
+imlib2
+libXft
+libXinerama
+lua     make
+ncurses
+pkgconf make
diff --git a/community-mod/conky/sources b/community-mod/conky/sources
new file mode 100644
index 0000000..1308905
--- /dev/null
+++ b/community-mod/conky/sources
@@ -0,0 +1 @@
+https://github.com/brndnmtthws/conky/archive/v1.12.2.tar.gz
diff --git a/community-mod/conky/version b/community-mod/conky/version
new file mode 100644
index 0000000..de2321d
--- /dev/null
+++ b/community-mod/conky/version
@@ -0,0 +1 @@
+1.12.2 1
diff --git a/community-mod/coreutils/build b/community-mod/coreutils/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/coreutils/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/coreutils/checksums b/community-mod/coreutils/checksums
new file mode 100644
index 0000000..ed6feea
--- /dev/null
+++ b/community-mod/coreutils/checksums
@@ -0,0 +1 @@
+4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa  coreutils-8.32.tar.xz
diff --git a/community-mod/coreutils/sources b/community-mod/coreutils/sources
new file mode 100644
index 0000000..7b35a7a
--- /dev/null
+++ b/community-mod/coreutils/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz
diff --git a/community-mod/coreutils/version b/community-mod/coreutils/version
new file mode 100644
index 0000000..381e198
--- /dev/null
+++ b/community-mod/coreutils/version
@@ -0,0 +1 @@
+8.32 1
diff --git a/community-mod/cproc/build b/community-mod/cproc/build
new file mode 100755
index 0000000..b77eaaa
--- /dev/null
+++ b/community-mod/cproc/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+# Specify the library path for linkers like `lld`.
+sed -i 's/"ld",/& "-L", "\/usr\/lib",/' config.h
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/cproc/depends b/community-mod/cproc/depends
new file mode 100644
index 0000000..f256e70
--- /dev/null
+++ b/community-mod/cproc/depends
@@ -0,0 +1 @@
+qbe
diff --git a/community-mod/cproc/sources b/community-mod/cproc/sources
new file mode 100644
index 0000000..c3da5eb
--- /dev/null
+++ b/community-mod/cproc/sources
@@ -0,0 +1 @@
+git+https://git.sr.ht/~mcf/cproc
diff --git a/community-mod/cproc/version b/community-mod/cproc/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/cproc/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/crosstool-ng-git/build b/community-mod/crosstool-ng-git/build
new file mode 100755
index 0000000..c183259
--- /dev/null
+++ b/community-mod/crosstool-ng-git/build
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+[ "$(kiss-owns /usr/bin/patch)" = patch ] || {
+    printf "/usr/bin/patch must be GNU patch\n"
+    exit 1
+}
+
+[ "$(kiss-owns /usr/bin/awk)" = gawk ] || {
+    printf "/usr/bin/awk must be GNU awk\n"
+    exit 1
+}
+
+./bootstrap
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    --disable-nls \
+    --disable-rpath \
+    --with-ncurses \
+    makeinfo=true \
+    help2man=true
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/crosstool-ng-git/depends b/community-mod/crosstool-ng-git/depends
new file mode 100644
index 0000000..cce23ad
--- /dev/null
+++ b/community-mod/crosstool-ng-git/depends
@@ -0,0 +1,9 @@
+automake make
+bash
+bison    make
+flex     make
+gawk     make
+libtool  make
+ncurses
+patch    make
+rsync
diff --git a/community-mod/crosstool-ng-git/sources b/community-mod/crosstool-ng-git/sources
new file mode 100644
index 0000000..a4aadf1
--- /dev/null
+++ b/community-mod/crosstool-ng-git/sources
@@ -0,0 +1 @@
+git+https://github.com/crosstool-ng/crosstool-ng
diff --git a/community-mod/crosstool-ng-git/version b/community-mod/crosstool-ng-git/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/crosstool-ng-git/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/cryptsetup/build b/community-mod/cryptsetup/build
new file mode 100755
index 0000000..e802410
--- /dev/null
+++ b/community-mod/cryptsetup/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+machine=$(cc -dumpmachine)
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --build="$machine" \
+    --host="$machine" \
+    --disable-blkid
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/cryptsetup/checksums b/community-mod/cryptsetup/checksums
new file mode 100644
index 0000000..b04218a
--- /dev/null
+++ b/community-mod/cryptsetup/checksums
@@ -0,0 +1 @@
+b296b7a21ea576c2b180611ccb19d06aec8dddaedf7c704b0c6a81210c25635f
diff --git a/community-mod/cryptsetup/depends b/community-mod/cryptsetup/depends
new file mode 100644
index 0000000..ac0c9cd
--- /dev/null
+++ b/community-mod/cryptsetup/depends
@@ -0,0 +1,5 @@
+json-c
+lvm2
+pkgconf make
+popt
+util-linux
diff --git a/community-mod/cryptsetup/sources b/community-mod/cryptsetup/sources
new file mode 100644
index 0000000..84b05d5
--- /dev/null
+++ b/community-mod/cryptsetup/sources
@@ -0,0 +1 @@
+https://www.fossies.org/linux/misc/cryptsetup-2.3.6.tar.xz
diff --git a/community-mod/cryptsetup/version b/community-mod/cryptsetup/version
new file mode 100644
index 0000000..d5e6c57
--- /dev/null
+++ b/community-mod/cryptsetup/version
@@ -0,0 +1 @@
+2.3.6 1
diff --git a/community-mod/ctags/build b/community-mod/ctags/build
new file mode 100755
index 0000000..729bf9f
--- /dev/null
+++ b/community-mod/ctags/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix="$1/usr" \
+    --disable-etags
+
+make
+make install
diff --git a/community-mod/ctags/checksums b/community-mod/ctags/checksums
new file mode 100644
index 0000000..b2036aa
--- /dev/null
+++ b/community-mod/ctags/checksums
@@ -0,0 +1 @@
+0e44b45dcabe969e0bbbb11e30c246f81abe5d32012db37395eb57d66e9e99c7
diff --git a/community-mod/ctags/sources b/community-mod/ctags/sources
new file mode 100644
index 0000000..314bb93
--- /dev/null
+++ b/community-mod/ctags/sources
@@ -0,0 +1 @@
+https://prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gz
diff --git a/community-mod/ctags/version b/community-mod/ctags/version
new file mode 100644
index 0000000..720a07f
--- /dev/null
+++ b/community-mod/ctags/version
@@ -0,0 +1 @@
+5.8 1
diff --git a/community-mod/cwm/build b/community-mod/cwm/build
new file mode 100755
index 0000000..431cc72
--- /dev/null
+++ b/community-mod/cwm/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/cwm/depends b/community-mod/cwm/depends
new file mode 100644
index 0000000..b6afff1
--- /dev/null
+++ b/community-mod/cwm/depends
@@ -0,0 +1,3 @@
+libX11
+libXft
+libXrandr
diff --git a/community-mod/cwm/sources b/community-mod/cwm/sources
new file mode 100644
index 0000000..17f13d1
--- /dev/null
+++ b/community-mod/cwm/sources
@@ -0,0 +1 @@
+git+https://github.com/chneukirchen/cwm.git#9fb725f417a5cee1be4a768c94e49c4f0ce65dcf
diff --git a/community-mod/cwm/version b/community-mod/cwm/version
new file mode 100644
index 0000000..75368dc
--- /dev/null
+++ b/community-mod/cwm/version
@@ -0,0 +1 @@
+6.7 1
diff --git a/community-mod/cyrus-sasl/build b/community-mod/cyrus-sasl/build
new file mode 100755
index 0000000..79768ef
--- /dev/null
+++ b/community-mod/cyrus-sasl/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/cyrus-sasl/checksums b/community-mod/cyrus-sasl/checksums
new file mode 100644
index 0000000..ddb956f
--- /dev/null
+++ b/community-mod/cyrus-sasl/checksums
@@ -0,0 +1 @@
+26866b1549b00ffd020f188a43c258017fa1c382b3ddadd8201536f72efb05d5  cyrus-sasl-2.1.27.tar.gz
diff --git a/community-mod/cyrus-sasl/depends b/community-mod/cyrus-sasl/depends
new file mode 100644
index 0000000..75929cf
--- /dev/null
+++ b/community-mod/cyrus-sasl/depends
@@ -0,0 +1 @@
+libressl
diff --git a/community-mod/cyrus-sasl/sources b/community-mod/cyrus-sasl/sources
new file mode 100644
index 0000000..50de422
--- /dev/null
+++ b/community-mod/cyrus-sasl/sources
@@ -0,0 +1 @@
+https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-2.1.27/cyrus-sasl-2.1.27.tar.gz
diff --git a/community-mod/cyrus-sasl/version b/community-mod/cyrus-sasl/version
new file mode 100644
index 0000000..2696e66
--- /dev/null
+++ b/community-mod/cyrus-sasl/version
@@ -0,0 +1 @@
+2.1.27 3
diff --git a/community-mod/darkhttpd/build b/community-mod/darkhttpd/build
new file mode 100755
index 0000000..dfa6c4c
--- /dev/null
+++ b/community-mod/darkhttpd/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+make
+
+install -Dm755 darkhttpd "$1/usr/bin/darkhttpd"
diff --git a/community-mod/darkhttpd/checksums b/community-mod/darkhttpd/checksums
new file mode 100644
index 0000000..6fc3c74
--- /dev/null
+++ b/community-mod/darkhttpd/checksums
@@ -0,0 +1 @@
+1d88c395ac79ca9365aa5af71afe4ad136a4ed45099ca398168d4a2014dc0fc2
diff --git a/community-mod/darkhttpd/sources b/community-mod/darkhttpd/sources
new file mode 100644
index 0000000..37091a3
--- /dev/null
+++ b/community-mod/darkhttpd/sources
@@ -0,0 +1 @@
+https://github.com/emikulic/darkhttpd/archive/refs/tags/v1.13.tar.gz
diff --git a/community-mod/darkhttpd/version b/community-mod/darkhttpd/version
new file mode 100644
index 0000000..c63803d
--- /dev/null
+++ b/community-mod/darkhttpd/version
@@ -0,0 +1 @@
+1.13 1
diff --git a/community-mod/dash/build b/community-mod/dash/build
new file mode 100755
index 0000000..ad4b13c
--- /dev/null
+++ b/community-mod/dash/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make DESTDIR="$1" install
+
+ln -s /usr/bin/dash "$1/usr/bin/sh"
diff --git a/community-mod/dash/checksums b/community-mod/dash/checksums
new file mode 100644
index 0000000..2be8d4d
--- /dev/null
+++ b/community-mod/dash/checksums
@@ -0,0 +1 @@
+4e15b7ba5363bcc2a443549910cdc15b5ad601df8196b5f294c712eff037e08d
diff --git a/community-mod/dash/sources b/community-mod/dash/sources
new file mode 100644
index 0000000..9d5c3c3
--- /dev/null
+++ b/community-mod/dash/sources
@@ -0,0 +1 @@
+https://gondor.apana.org.au/~herbert/dash/files/dash-0.5.11.4.tar.gz
diff --git a/community-mod/dash/version b/community-mod/dash/version
new file mode 100644
index 0000000..795de95
--- /dev/null
+++ b/community-mod/dash/version
@@ -0,0 +1 @@
+0.5.11.4 1 
diff --git a/community-mod/dejavu-ttf/build b/community-mod/dejavu-ttf/build
new file mode 100755
index 0000000..ed4b519
--- /dev/null
+++ b/community-mod/dejavu-ttf/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+for file in ttf/*.ttf; do
+    install -Dm644 "$file" "$1/usr/share/fonts/TTF/${file##*/}"
+done
diff --git a/community-mod/dejavu-ttf/checksums b/community-mod/dejavu-ttf/checksums
new file mode 100644
index 0000000..a5b8409
--- /dev/null
+++ b/community-mod/dejavu-ttf/checksums
@@ -0,0 +1 @@
+fa9ca4d13871dd122f61258a80d01751d603b4d3ee14095d65453b4e846e17d7  dejavu-fonts-ttf-2.37.tar.bz2
diff --git a/community-mod/dejavu-ttf/post-install b/community-mod/dejavu-ttf/post-install
new file mode 100755
index 0000000..60cac80
--- /dev/null
+++ b/community-mod/dejavu-ttf/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+fc-cache -f
diff --git a/community-mod/dejavu-ttf/sources b/community-mod/dejavu-ttf/sources
new file mode 100644
index 0000000..5d17b78
--- /dev/null
+++ b/community-mod/dejavu-ttf/sources
@@ -0,0 +1 @@
+https://sourceforge.net/projects/dejavu/files/dejavu/2.37/dejavu-fonts-ttf-2.37.tar.bz2
diff --git a/community-mod/dejavu-ttf/version b/community-mod/dejavu-ttf/version
new file mode 100644
index 0000000..c304d36
--- /dev/null
+++ b/community-mod/dejavu-ttf/version
@@ -0,0 +1 @@
+2.37 1
diff --git a/community-mod/diffutils/build b/community-mod/diffutils/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/diffutils/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/diffutils/checksums b/community-mod/diffutils/checksums
new file mode 100644
index 0000000..785fdb3
--- /dev/null
+++ b/community-mod/diffutils/checksums
@@ -0,0 +1 @@
+b3a7a6221c3dc916085f0d205abf6b8e1ba443d4dd965118da364a1dc1cb3a26  diffutils-3.7.tar.xz
diff --git a/community-mod/diffutils/sources b/community-mod/diffutils/sources
new file mode 100644
index 0000000..f0af8e7
--- /dev/null
+++ b/community-mod/diffutils/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/diffutils/diffutils-3.7.tar.xz
diff --git a/community-mod/diffutils/version b/community-mod/diffutils/version
new file mode 100644
index 0000000..fa0ebc7
--- /dev/null
+++ b/community-mod/diffutils/version
@@ -0,0 +1 @@
+3.7 1
diff --git a/community-mod/djvulibre/build b/community-mod/djvulibre/build
new file mode 100755
index 0000000..a06ecf3
--- /dev/null
+++ b/community-mod/djvulibre/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+autoreconf -i
+
+./configure \
+    --prefix=/usr \
+    --disable-desktopfiles
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/djvulibre/checksums b/community-mod/djvulibre/checksums
new file mode 100644
index 0000000..1322767
--- /dev/null
+++ b/community-mod/djvulibre/checksums
@@ -0,0 +1 @@
+fcd009ea7654fde5a83600eb80757bd3a76998e47d13c66b54c8db849f8f2edc
diff --git a/community-mod/djvulibre/sources b/community-mod/djvulibre/sources
new file mode 100644
index 0000000..bcb8b17
--- /dev/null
+++ b/community-mod/djvulibre/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/djvu/djvulibre-3.5.28.tar.gz
diff --git a/community-mod/djvulibre/version b/community-mod/djvulibre/version
new file mode 100644
index 0000000..41f689a
--- /dev/null
+++ b/community-mod/djvulibre/version
@@ -0,0 +1 @@
+3.5.28 1
diff --git a/community-mod/dmenu/build b/community-mod/dmenu/build
new file mode 100755
index 0000000..431cc72
--- /dev/null
+++ b/community-mod/dmenu/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/dmenu/checksums b/community-mod/dmenu/checksums
new file mode 100644
index 0000000..5de6c5e
--- /dev/null
+++ b/community-mod/dmenu/checksums
@@ -0,0 +1 @@
+fe18e142c4dbcf71ba5757dbbdea93b1c67d58fc206fc116664f4336deef6ed3
diff --git a/community-mod/dmenu/depends b/community-mod/dmenu/depends
new file mode 100644
index 0000000..4d83943
--- /dev/null
+++ b/community-mod/dmenu/depends
@@ -0,0 +1,3 @@
+libXft
+libXinerama
+xorg-server
diff --git a/community-mod/dmenu/sources b/community-mod/dmenu/sources
new file mode 100644
index 0000000..7212199
--- /dev/null
+++ b/community-mod/dmenu/sources
@@ -0,0 +1 @@
+https://dl.suckless.org/tools/dmenu-5.0.tar.gz
diff --git a/community-mod/dmenu/version b/community-mod/dmenu/version
new file mode 100644
index 0000000..d80bad4
--- /dev/null
+++ b/community-mod/dmenu/version
@@ -0,0 +1 @@
+5.0 1
diff --git a/community-mod/dmidecode/build b/community-mod/dmidecode/build
new file mode 100755
index 0000000..662ff50
--- /dev/null
+++ b/community-mod/dmidecode/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make prefix=/usr sbindir=/usr/bin
+make prefix=/usr sbindir=/usr/bin DESTDIR="$1" install
diff --git a/community-mod/dmidecode/checksums b/community-mod/dmidecode/checksums
new file mode 100644
index 0000000..7b86f92
--- /dev/null
+++ b/community-mod/dmidecode/checksums
@@ -0,0 +1 @@
+82c737a780614c38a783e8055340d295e332fb12c7f418b5d21a0797d3fb1455
diff --git a/community-mod/dmidecode/sources b/community-mod/dmidecode/sources
new file mode 100644
index 0000000..4dc413f
--- /dev/null
+++ b/community-mod/dmidecode/sources
@@ -0,0 +1 @@
+https://download.savannah.gnu.org/releases/dmidecode/dmidecode-3.3.tar.xz
diff --git a/community-mod/dmidecode/version b/community-mod/dmidecode/version
new file mode 100644
index 0000000..d8cc560
--- /dev/null
+++ b/community-mod/dmidecode/version
@@ -0,0 +1 @@
+3.3 1 
diff --git a/community-mod/dosbox/build b/community-mod/dosbox/build
new file mode 100755
index 0000000..84e8787
--- /dev/null
+++ b/community-mod/dosbox/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-opengl
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/dosbox/checksums b/community-mod/dosbox/checksums
new file mode 100644
index 0000000..ec5b872
--- /dev/null
+++ b/community-mod/dosbox/checksums
@@ -0,0 +1 @@
+c0d13dd7ed2ed363b68de615475781e891cd582e8162b5c3669137502222260a  dosbox-0.74-3.tar.gz
diff --git a/community-mod/dosbox/depends b/community-mod/dosbox/depends
new file mode 100644
index 0000000..e01033c
--- /dev/null
+++ b/community-mod/dosbox/depends
@@ -0,0 +1,15 @@
+alsa-lib
+expat
+libpng
+libX11
+libXau
+libxcb
+libdrm
+libXext
+libXfixes
+libXdamage
+libXxf86vm
+libxshmfence
+mesa
+sdl
+zlib
diff --git a/community-mod/dosbox/sources b/community-mod/dosbox/sources
new file mode 100644
index 0000000..11114b8
--- /dev/null
+++ b/community-mod/dosbox/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/dosbox/dosbox-0.74-3.tar.gz
diff --git a/community-mod/dosbox/version b/community-mod/dosbox/version
new file mode 100644
index 0000000..c1b1c52
--- /dev/null
+++ b/community-mod/dosbox/version
@@ -0,0 +1 @@
+0.74-3 1
diff --git a/community-mod/dvtm/build b/community-mod/dvtm/build
new file mode 100755
index 0000000..c208b13
--- /dev/null
+++ b/community-mod/dvtm/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/dvtm/checksums b/community-mod/dvtm/checksums
new file mode 100644
index 0000000..88025d2
--- /dev/null
+++ b/community-mod/dvtm/checksums
@@ -0,0 +1 @@
+8f2015c05e2ad82f12ae4cf12b363d34f527a4bbc8c369667f239e4542e1e510  dvtm-0.15.tar.gz
diff --git a/community-mod/dvtm/depends b/community-mod/dvtm/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/dvtm/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/dvtm/sources b/community-mod/dvtm/sources
new file mode 100644
index 0000000..21b13c5
--- /dev/null
+++ b/community-mod/dvtm/sources
@@ -0,0 +1 @@
+https://github.com/martanne/dvtm/releases/download/v0.15/dvtm-0.15.tar.gz
diff --git a/community-mod/dvtm/version b/community-mod/dvtm/version
new file mode 100644
index 0000000..a78cbfc
--- /dev/null
+++ b/community-mod/dvtm/version
@@ -0,0 +1 @@
+0.15 1
diff --git a/community-mod/dwm/build b/community-mod/dwm/build
new file mode 100755
index 0000000..0110ff5
--- /dev/null
+++ b/community-mod/dwm/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+# Amend install path to '/usr'.
+sed -i'' "s#/usr/local#/usr#" config.mk
+
+# Remove pixel gap.
+sed -i'' "s/static const int resizehints = 1/static const int resizehints = 0/" config.def.h
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/dwm/checksums b/community-mod/dwm/checksums
new file mode 100644
index 0000000..595f243
--- /dev/null
+++ b/community-mod/dwm/checksums
@@ -0,0 +1 @@
+97902e2e007aaeaa3c6e3bed1f81785b817b7413947f1db1d3b62b8da4cd110e  dwm-6.2.tar.gz
diff --git a/community-mod/dwm/depends b/community-mod/dwm/depends
new file mode 100644
index 0000000..f4fdd35
--- /dev/null
+++ b/community-mod/dwm/depends
@@ -0,0 +1,2 @@
+libXft
+libXinerama
diff --git a/community-mod/dwm/sources b/community-mod/dwm/sources
new file mode 100644
index 0000000..c9d3f5e
--- /dev/null
+++ b/community-mod/dwm/sources
@@ -0,0 +1 @@
+https://dl.suckless.org/dwm/dwm-6.2.tar.gz
diff --git a/community-mod/dwm/version b/community-mod/dwm/version
new file mode 100644
index 0000000..1fa8eec
--- /dev/null
+++ b/community-mod/dwm/version
@@ -0,0 +1 @@
+6.2 1
diff --git a/community-mod/dzen/build b/community-mod/dzen/build
new file mode 100755
index 0000000..efbe5b9
--- /dev/null
+++ b/community-mod/dzen/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
+make -C gadgets PREFIX=/usr DESTDIR="$1" install
+
+install -Dm644 README  "$1/usr/share/doc/dzen/README"
+install -Dm644 CREDITS "$1/usr/share/doc/dzen/CREDITS"
+install -Dm644 LICENSE "$1/usr/share/licenses/dzen/LICENSE"
diff --git a/community-mod/dzen/depends b/community-mod/dzen/depends
new file mode 100644
index 0000000..fe8fb62
--- /dev/null
+++ b/community-mod/dzen/depends
@@ -0,0 +1 @@
+libXft
diff --git a/community-mod/dzen/sources b/community-mod/dzen/sources
new file mode 100644
index 0000000..003b47c
--- /dev/null
+++ b/community-mod/dzen/sources
@@ -0,0 +1 @@
+git+https://github.com/robm/dzen
diff --git a/community-mod/dzen/version b/community-mod/dzen/version
new file mode 100644
index 0000000..8202611
--- /dev/null
+++ b/community-mod/dzen/version
@@ -0,0 +1 @@
+git 2
diff --git a/community-mod/emacs/build b/community-mod/emacs/build
new file mode 100755
index 0000000..15fc155
--- /dev/null
+++ b/community-mod/emacs/build
@@ -0,0 +1,32 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-modules \
+    --with-xft \
+    --with-x-toolkit=gtk2 \
+    --with-toolkit-scroll-bars \
+    --without-dbus \
+    --without-gconf \
+    --without-gsettings \
+    --with-xpm=yes \
+    --with-gnutls=yes \
+    --with-json=yes
+
+mkdir -p "$1/usr/share/emacs/site-lisp"
+cat << EOF > "$1/usr/share/emacs/site-lisp/site-start.el"
+;; Better security defaults
+(with-eval-after-load 'gnutls
+  (setq
+   gnutls-verify-error t
+   gnutls-min-prime-bits 2048
+   gnutls-trustfiles '("/etc/ssl/cert.pem")))
+
+;; Needed unless KISS Linux gains librsvg support
+(setq-default shr-blocked-images ".*\.svg$")
+EOF
+
+make
+make DESTDIR="$1" install
+
+rm -rf "$1/usr/lib/systemd"
diff --git a/community-mod/emacs/checksums b/community-mod/emacs/checksums
new file mode 100644
index 0000000..d9ec08d
--- /dev/null
+++ b/community-mod/emacs/checksums
@@ -0,0 +1 @@
+b4a7cc4e78e63f378624e0919215b910af5bb2a0afc819fad298272e9f40c1b9
diff --git a/community-mod/emacs/depends b/community-mod/emacs/depends
new file mode 100644
index 0000000..d9795aa
--- /dev/null
+++ b/community-mod/emacs/depends
@@ -0,0 +1,10 @@
+giflib
+gnutls
+libjpeg-turbo
+libpng
+libXpm
+gtk+2
+libxml2
+ncurses
+tiff
+zlib
diff --git a/community-mod/emacs/sources b/community-mod/emacs/sources
new file mode 100644
index 0000000..b031ae4
--- /dev/null
+++ b/community-mod/emacs/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/emacs/emacs-27.2.tar.xz
diff --git a/community-mod/emacs/version b/community-mod/emacs/version
new file mode 100644
index 0000000..9d9ecd1
--- /dev/null
+++ b/community-mod/emacs/version
@@ -0,0 +1 @@
+27.2 1
diff --git a/community-mod/es/build b/community-mod/es/build
new file mode 100755
index 0000000..a3c50e2
--- /dev/null
+++ b/community-mod/es/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+#patch < musl.patch
+
+sed -i 's|/doc/es\.1|/es\.1|g' Makefile.in
+
+./configure \
+    --prefix="$1/usr"
+
+make
+make install
diff --git a/community-mod/es/checksums b/community-mod/es/checksums
new file mode 100644
index 0000000..d70cdea
--- /dev/null
+++ b/community-mod/es/checksums
@@ -0,0 +1,2 @@
+b0b41fce99b122a173a06b899a4d92e5bd3cc48b227b2736159f596a58fff4ba  es-0.9.1.tar.gz
+a77acdf451ac5d0d079d1a272de64ec4c628ed65f658b30246d51b4849eea44f  musl.patch
diff --git a/community-mod/es/patches/musl.patch b/community-mod/es/patches/musl.patch
new file mode 100644
index 0000000..9facf76
--- /dev/null
+++ b/community-mod/es/patches/musl.patch
@@ -0,0 +1,33 @@
+--- print.c.orig
++++ print.c
+@@ -273,15 +273,10 @@
+ 	va_list saveargs = format->args;
+ #endif
+ 
+-
+ 	VA_START(format->args, fmt);
+ 	n += printfmt(format, fmt);
+ 	va_end(format->args);
+-#ifndef __va_copy
+-	format->args = saveargs;
+-#else
+-	__va_copy(format->args, saveargs);
+-#endif
++	va_copy(format->args, saveargs);
+ 
+ 	return n + format->flushed;
+ }
+--- stdenv.h.orig
++++ stdenv.h
+@@ -204,6 +204,11 @@
+ #define	VARARGS2(t1, v1, t2, v2)	(v1, v2, va_alist) t1 v1; t2 v2; va_dcl
+ #define	VA_START(ap, var)		va_start(ap)
+ 
++/* __va_* are defined by the compiler */
++#define va_start(ap)		__va_start(ap)
++#define va_copy(dest, src)	__va_copy(dest, src)
++#define va_end(ap)		__va_end(ap)
++
+ #endif
+ 
+ 
diff --git a/community-mod/es/sources b/community-mod/es/sources
new file mode 100644
index 0000000..93e1777
--- /dev/null
+++ b/community-mod/es/sources
@@ -0,0 +1,2 @@
+https://github.com/wryun/es-shell/releases/download/v0.9.1/es-0.9.1.tar.gz
+patches/musl.patch
diff --git a/community-mod/es/version b/community-mod/es/version
new file mode 100644
index 0000000..7ba209c
--- /dev/null
+++ b/community-mod/es/version
@@ -0,0 +1 @@
+0.9.1 1
diff --git a/community-mod/evtest/build b/community-mod/evtest/build
new file mode 100755
index 0000000..7da0e1c
--- /dev/null
+++ b/community-mod/evtest/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+"${CC:-cc}" -DPATH_MAX=255 -o evtest evtest.c
+install -Dt "$1/usr/bin" evtest
diff --git a/community-mod/evtest/checksums b/community-mod/evtest/checksums
new file mode 100644
index 0000000..c815d5e
--- /dev/null
+++ b/community-mod/evtest/checksums
@@ -0,0 +1 @@
+0e7a2eeff380af796e5e9b21b6f48fd706c58c931162c151c2c1074bdfeb85c6
diff --git a/community-mod/evtest/sources b/community-mod/evtest/sources
new file mode 100644
index 0000000..336f14b
--- /dev/null
+++ b/community-mod/evtest/sources
@@ -0,0 +1 @@
+https://gitlab.freedesktop.org/libevdev/evtest/-/archive/evtest-1.34/evtest-evtest-1.34.tar.gz
diff --git a/community-mod/evtest/version b/community-mod/evtest/version
new file mode 100644
index 0000000..1992cf5
--- /dev/null
+++ b/community-mod/evtest/version
@@ -0,0 +1 @@
+1.34 1
diff --git a/community-mod/execline/build b/community-mod/execline/build
new file mode 100755
index 0000000..9e85cfc
--- /dev/null
+++ b/community-mod/execline/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/execline/checksums b/community-mod/execline/checksums
new file mode 100644
index 0000000..07d1af7
--- /dev/null
+++ b/community-mod/execline/checksums
@@ -0,0 +1 @@
+a373f497d2335905d750e2f3be2ba47a028c11c4a7d5595dca9965c161e53aed
diff --git a/community-mod/execline/depends b/community-mod/execline/depends
new file mode 100644
index 0000000..5baacc7
--- /dev/null
+++ b/community-mod/execline/depends
@@ -0,0 +1 @@
+skalibs
diff --git a/community-mod/execline/sources b/community-mod/execline/sources
new file mode 100644
index 0000000..3bf4bb6
--- /dev/null
+++ b/community-mod/execline/sources
@@ -0,0 +1 @@
+https://skarnet.org/software/execline/execline-2.8.0.1.tar.gz
diff --git a/community-mod/execline/version b/community-mod/execline/version
new file mode 100644
index 0000000..55ae635
--- /dev/null
+++ b/community-mod/execline/version
@@ -0,0 +1 @@
+2.8.0.1 1
diff --git a/community-mod/exfatprogs/build b/community-mod/exfatprogs/build
new file mode 100755
index 0000000..b8bb1d1
--- /dev/null
+++ b/community-mod/exfatprogs/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+	--prefix=/usr \
+	--bindir=/usr/bin \
+	--sbindir=/usr/bin \
+	--datarootdir=/usr/share
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/exfatprogs/checksums b/community-mod/exfatprogs/checksums
new file mode 100644
index 0000000..96a4148
--- /dev/null
+++ b/community-mod/exfatprogs/checksums
@@ -0,0 +1 @@
+2a1574110e0d9ba11524744cac39454fb4084277cfa8ae53406a066600b825c8
diff --git a/community-mod/exfatprogs/depends b/community-mod/exfatprogs/depends
new file mode 100644
index 0000000..978c2d9
--- /dev/null
+++ b/community-mod/exfatprogs/depends
@@ -0,0 +1,2 @@
+linux-headers make
+pkgconf make
diff --git a/community-mod/exfatprogs/sources b/community-mod/exfatprogs/sources
new file mode 100644
index 0000000..959aa99
--- /dev/null
+++ b/community-mod/exfatprogs/sources
@@ -0,0 +1 @@
+https://github.com/exfatprogs/exfatprogs/releases/download/1.1.1/exfatprogs-1.1.1.tar.xz
diff --git a/community-mod/exfatprogs/version b/community-mod/exfatprogs/version
new file mode 100644
index 0000000..e343e3f
--- /dev/null
+++ b/community-mod/exfatprogs/version
@@ -0,0 +1 @@
+1.1.1 1
diff --git a/community-mod/exiftool/build b/community-mod/exiftool/build
new file mode 100755
index 0000000..6f2c6bc
--- /dev/null
+++ b/community-mod/exiftool/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+perl Makefile.PL
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/exiftool/checksums b/community-mod/exiftool/checksums
new file mode 100644
index 0000000..ec872dc
--- /dev/null
+++ b/community-mod/exiftool/checksums
@@ -0,0 +1 @@
+f734d5ff5465adc8d1d00ef21bc9362ea81c00cf109dabcf494eae2fe1724fcb
diff --git a/community-mod/exiftool/depends b/community-mod/exiftool/depends
new file mode 100644
index 0000000..24475b5
--- /dev/null
+++ b/community-mod/exiftool/depends
@@ -0,0 +1 @@
+perl
diff --git a/community-mod/exiftool/sources b/community-mod/exiftool/sources
new file mode 100644
index 0000000..90b98a6
--- /dev/null
+++ b/community-mod/exiftool/sources
@@ -0,0 +1 @@
+https://exiftool.org/Image-ExifTool-12.28.tar.gz
diff --git a/community-mod/exiftool/version b/community-mod/exiftool/version
new file mode 100644
index 0000000..1b5b5d3
--- /dev/null
+++ b/community-mod/exiftool/version
@@ -0,0 +1 @@
+12.28 1 
diff --git a/community-mod/extra-cmake-modules/build b/community-mod/extra-cmake-modules/build
new file mode 100755
index 0000000..cd659d7
--- /dev/null
+++ b/community-mod/extra-cmake-modules/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/extra-cmake-modules/checksums b/community-mod/extra-cmake-modules/checksums
new file mode 100644
index 0000000..eecf2a9
--- /dev/null
+++ b/community-mod/extra-cmake-modules/checksums
@@ -0,0 +1 @@
+70188098fe2f6307138bb7923214593ec617d0be2492560dd7296af4bb0d52d1
diff --git a/community-mod/extra-cmake-modules/depends b/community-mod/extra-cmake-modules/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/extra-cmake-modules/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/extra-cmake-modules/sources b/community-mod/extra-cmake-modules/sources
new file mode 100644
index 0000000..12380ad
--- /dev/null
+++ b/community-mod/extra-cmake-modules/sources
@@ -0,0 +1 @@
+https://github.com/KDE/extra-cmake-modules/archive/v5.83.0.tar.gz
diff --git a/community-mod/extra-cmake-modules/version b/community-mod/extra-cmake-modules/version
new file mode 100644
index 0000000..6f108e7
--- /dev/null
+++ b/community-mod/extra-cmake-modules/version
@@ -0,0 +1 @@
+5.83.0 1 
diff --git a/community-mod/feh/build b/community-mod/feh/build
new file mode 100755
index 0000000..834eff5
--- /dev/null
+++ b/community-mod/feh/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr exif=1 help=1 stat64=1
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/feh/checksums b/community-mod/feh/checksums
new file mode 100644
index 0000000..da308dc
--- /dev/null
+++ b/community-mod/feh/checksums
@@ -0,0 +1 @@
+07cdb1076c3b7777064cf081f722346600aeefeb568cbca58575777969a6bb41
diff --git a/community-mod/feh/depends b/community-mod/feh/depends
new file mode 100644
index 0000000..88e994a
--- /dev/null
+++ b/community-mod/feh/depends
@@ -0,0 +1,6 @@
+curl
+imlib2
+libexif
+libjpeg-turbo
+libXt
+libXinerama
diff --git a/community-mod/feh/sources b/community-mod/feh/sources
new file mode 100644
index 0000000..b4ebcb0
--- /dev/null
+++ b/community-mod/feh/sources
@@ -0,0 +1 @@
+https://feh.finalrewind.org/feh-3.7.tar.bz2
diff --git a/community-mod/feh/version b/community-mod/feh/version
new file mode 100644
index 0000000..fa0ebc7
--- /dev/null
+++ b/community-mod/feh/version
@@ -0,0 +1 @@
+3.7 1
diff --git a/community-mod/fftw/build b/community-mod/fftw/build
new file mode 100755
index 0000000..f11398c
--- /dev/null
+++ b/community-mod/fftw/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared \
+    --enable-threads
+
+make
+make DESTDIR="$1" install
+
diff --git a/community-mod/fftw/checksums b/community-mod/fftw/checksums
new file mode 100644
index 0000000..c3f8cb5
--- /dev/null
+++ b/community-mod/fftw/checksums
@@ -0,0 +1 @@
+bf2c7ce40b04ae811af714deb512510cc2c17b9ab9d6ddcf49fe4487eea7af3d
diff --git a/community-mod/fftw/sources b/community-mod/fftw/sources
new file mode 100644
index 0000000..8f4783e
--- /dev/null
+++ b/community-mod/fftw/sources
@@ -0,0 +1 @@
+https://www.fftw.org/fftw-3.3.9.tar.gz
diff --git a/community-mod/fftw/version b/community-mod/fftw/version
new file mode 100644
index 0000000..b44b038
--- /dev/null
+++ b/community-mod/fftw/version
@@ -0,0 +1 @@
+3.3.9 1
diff --git a/community-mod/file/build b/community-mod/file/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/file/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/file/checksums b/community-mod/file/checksums
new file mode 100644
index 0000000..33e0710
--- /dev/null
+++ b/community-mod/file/checksums
@@ -0,0 +1 @@
+167321f43c148a553f68a0ea7f579821ef3b11c27b8cbe158e4df897e4a5dd57
diff --git a/community-mod/file/depends b/community-mod/file/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/community-mod/file/depends
@@ -0,0 +1 @@
+zlib
diff --git a/community-mod/file/sources b/community-mod/file/sources
new file mode 100644
index 0000000..0978639
--- /dev/null
+++ b/community-mod/file/sources
@@ -0,0 +1 @@
+https://astron.com/pub/file/file-5.40.tar.gz
diff --git a/community-mod/file/version b/community-mod/file/version
new file mode 100644
index 0000000..cc2c3dc
--- /dev/null
+++ b/community-mod/file/version
@@ -0,0 +1 @@
+5.40 1
diff --git a/community-mod/flac/build b/community-mod/flac/build
new file mode 100755
index 0000000..d0b7d92
--- /dev/null
+++ b/community-mod/flac/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-rpath \
+    --disable-doxygen-docs \
+    --disable-xmms-plugin \
+    --disable-thorough-tests \
+    --with-pic
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/flac/checksums b/community-mod/flac/checksums
new file mode 100644
index 0000000..19f9dab
--- /dev/null
+++ b/community-mod/flac/checksums
@@ -0,0 +1 @@
+213e82bd716c9de6db2f98bcadbc4c24c7e2efe8c75939a1a84e28539c4e1748  flac-1.3.3.tar.xz
diff --git a/community-mod/flac/depends b/community-mod/flac/depends
new file mode 100644
index 0000000..bb51b88
--- /dev/null
+++ b/community-mod/flac/depends
@@ -0,0 +1,2 @@
+libogg
+nasm make
diff --git a/community-mod/flac/sources b/community-mod/flac/sources
new file mode 100644
index 0000000..acc0eed
--- /dev/null
+++ b/community-mod/flac/sources
@@ -0,0 +1 @@
+https://downloads.xiph.org/releases/flac/flac-1.3.3.tar.xz
diff --git a/community-mod/flac/version b/community-mod/flac/version
new file mode 100644
index 0000000..bdd8f5b
--- /dev/null
+++ b/community-mod/flac/version
@@ -0,0 +1 @@
+1.3.3 1
diff --git a/community-mod/flashrom/build b/community-mod/flashrom/build
new file mode 100755
index 0000000..2fe250b
--- /dev/null
+++ b/community-mod/flashrom/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+sed -i "s/sbin/bin/g" Makefile
+
+mk() {
+    make \
+        PREFIX=/usr \
+        CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no \
+        CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no \
+        "$@"
+}
+
+mk
+mk DESTDIR="$1" install
diff --git a/community-mod/flashrom/checksums b/community-mod/flashrom/checksums
new file mode 100644
index 0000000..a1a5098
--- /dev/null
+++ b/community-mod/flashrom/checksums
@@ -0,0 +1 @@
+a5bac412cefb87bb426912fed46ccc38799d088a9b92dbe7bac38c5df016d9b2  v1.2.tar.gz
diff --git a/community-mod/flashrom/depends b/community-mod/flashrom/depends
new file mode 100644
index 0000000..378a327
--- /dev/null
+++ b/community-mod/flashrom/depends
@@ -0,0 +1,2 @@
+pciutils
+zlib
diff --git a/community-mod/flashrom/sources b/community-mod/flashrom/sources
new file mode 100644
index 0000000..f949d22
--- /dev/null
+++ b/community-mod/flashrom/sources
@@ -0,0 +1 @@
+https://github.com/flashrom/flashrom/archive/v1.2.tar.gz
diff --git a/community-mod/flashrom/version b/community-mod/flashrom/version
new file mode 100644
index 0000000..f76d834
--- /dev/null
+++ b/community-mod/flashrom/version
@@ -0,0 +1 @@
+1.2 1
diff --git a/community-mod/fltk/build b/community-mod/fltk/build
new file mode 100755
index 0000000..b97f3be
--- /dev/null
+++ b/community-mod/fltk/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --bindir=/usr/bin
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/fltk/checksums b/community-mod/fltk/checksums
new file mode 100644
index 0000000..9c32a00
--- /dev/null
+++ b/community-mod/fltk/checksums
@@ -0,0 +1 @@
+9aac75ef9e9b7bd7b5338a4c0d4dd536e6c22ea7b15ea622aa1d8f1fa30d37ab
diff --git a/community-mod/fltk/depends b/community-mod/fltk/depends
new file mode 100644
index 0000000..d8ba834
--- /dev/null
+++ b/community-mod/fltk/depends
@@ -0,0 +1,17 @@
+bzip2
+expat
+fontconfig
+freetype-harfbuzz
+glib
+libX11
+libXau
+libXcursor
+libXext
+libXfixes
+libXft
+libXinerama
+libXrender
+libjpeg-turbo
+libpng
+libxcb
+zlib
diff --git a/community-mod/fltk/sources b/community-mod/fltk/sources
new file mode 100644
index 0000000..fae5beb
--- /dev/null
+++ b/community-mod/fltk/sources
@@ -0,0 +1 @@
+https://www.fltk.org/pub/fltk/1.3.6/fltk-1.3.6-source.tar.gz
diff --git a/community-mod/fltk/version b/community-mod/fltk/version
new file mode 100644
index 0000000..c22de15
--- /dev/null
+++ b/community-mod/fltk/version
@@ -0,0 +1 @@
+1.3.6 1
diff --git a/community-mod/fmt/build b/community-mod/fmt/build
new file mode 100755
index 0000000..132ebce
--- /dev/null
+++ b/community-mod/fmt/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_BUILD_TYPE=None \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+    -DBUILD_SHARED_LIBS=1
+
+cmake --build build
+cmake --install build
diff --git a/community-mod/fmt/checksums b/community-mod/fmt/checksums
new file mode 100644
index 0000000..2fbe94a
--- /dev/null
+++ b/community-mod/fmt/checksums
@@ -0,0 +1 @@
+5cae7072042b3043e12d53d50ef404bbb76949dad1de368d7f993a15c8c05ecc
diff --git a/community-mod/fmt/sources b/community-mod/fmt/sources
new file mode 100644
index 0000000..28b02c8
--- /dev/null
+++ b/community-mod/fmt/sources
@@ -0,0 +1 @@
+https://github.com/fmtlib/fmt/archive/7.1.3.tar.gz
diff --git a/community-mod/fmt/version b/community-mod/fmt/version
new file mode 100644
index 0000000..f766d02
--- /dev/null
+++ b/community-mod/fmt/version
@@ -0,0 +1 @@
+7.1.3 1
diff --git a/community-mod/fortune/build b/community-mod/fortune/build
new file mode 100755
index 0000000..efef42d
--- /dev/null
+++ b/community-mod/fortune/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+install -Dm755 fortune                     "$1/usr/bin/fortune"
+install -Dm644 kiss                        "$1/usr/share/fortune/kiss"
+install -Dm644 fortune-mod/datfiles/cookie "$1/usr/share/fortune/cookie"
diff --git a/community-mod/fortune/checksums b/community-mod/fortune/checksums
new file mode 100644
index 0000000..65435c3
--- /dev/null
+++ b/community-mod/fortune/checksums
@@ -0,0 +1,3 @@
+0449c157d973d3711d57860dd861c32fd6deba8a1f3ad7fc2f28ed1999122260
+e3ade5ff950564f34dad39e7956cd15e9a32d669917b18dcbab8e02a0671120a
+bf805c1200e03b08393b7cfa5e54315d36efa5c08b8ec009020414c77697dfec
diff --git a/community-mod/fortune/files/kiss b/community-mod/fortune/files/kiss
new file mode 100644
index 0000000..f789cff
--- /dev/null
+++ b/community-mod/fortune/files/kiss
@@ -0,0 +1,638 @@
+<kiedtl> "You will see Dylan's ghost by candlelight tonight."
+%
+<dylanaraps> I say "no a lot"
+%
+<necromancy> modprobe that doozy
+%
+<dilyn> you've made me violently ill
+%
+<dilyn> Google gNoogle gUgle
+%
+<midfavila> man, I get nervous every time I power up my workstation, haha
+%
+<jaafard> Btw, dilyn, are you Dylan Araps? Or is it just a similar nick?
+<dilyn> i wish i was
+%
+<dilyn> like, at least they don't think i'm Boris Johnson's dog
+%
+<dilyn> i spent eighteen months working at starbucks; i am the stereotype of my
+degrees lmao
+%
+<ominous_anonymou> somewhere drew devault needs to change his pants and he
+doesn't know why
+%
+<midfavila1> one sec gotta cut up an onion
+%
+<midfavila> "OH WOW I CAN PUT IT IN BOTH WAYS THIS TOTALLY JUSTIFIES LOSING
+BACKWARDS COMPATIBILITY WITH EVERYTHING FROM THE PAST TWENTY-FIVE
+YEARS11!11!1!1!1!11"
+%
+<dilyn> gemini got a new bdfl
+<ctb0> who Sundar Pichai?
+%
+<dilyn> Let's just drop support for input devices
+%
+ * midfavila1 nods
+%
+ * midfavila1 flexes on acheam
+%
+<dilyn> I will rage
+<dilyn> and we will go back to the good old days of being the goatpiss
+organization
+%
+<acheam> doom is fine, as long as it isn't doom emacs
+<merakor> WHAT
+<acheam> I said what I said.
+<phoebos[m]1> omg
+<merakor> I AM SCREAMING AT YOU THROUGH MY IRC CLIENT ON DOOM EMACS
+<acheam> ah, the natural rage of an emacs user. Quite fitting indeed.
+%
+<dilyn> emacs is for 5head humans
+<dilyn> he has to justify learning lisp to program his OS-within-an-OS, forgive
+him
+<dilyn> what like you've never done what is essentially firing up a Windows VM
+to run notepad?
+%
+<midfavila> kiss becomes k becomes kiss
+<midfavila> the araps cycle
+%
+<dilyn> I don't need sudo to yell at me too :(
+<midfavila> it's okay dilyn I can yell at you instead
+<dilyn> thanks dad
+<midfavila> ya winning, son?
+%
+<dilyn> if my biggest contribution to this project is a bunch of fucking meme
+quotes i swear to god
+%
+<acheam> something something unix philosiphy
+<dilyn> something something changing your keymap with xorg
+<dilyn> something something do I need a xorg.conf
+<dilyn> something something how do i keyboard
+<midfavila> well idk about you but I change my keyboard layout by flashing
+firmware files
+<dilyn> man turns out i was a cuck the whole time huh
+<dilyn> why didn't I think of that!
+<midfavila> the starbucks and philosophy thing gave it away
+<midfavila> i bet you use a filthy macbook too
+%
+<kiedtl> except the matrix heathens ofc
+<acheam> *cough cough* dilyn
+<midfavila> yeah well they don't matter anyway
+<dilyn> Hey I was just trying it out(tm)
+<midfavila> nope
+<midfavila> opinion discarded
+%
+<dilyn> maybe I can convince them i'm dylan and I just misspelled my name and
+lied about living in greece
+%
+<midfavila> if dilyn is kill then we just elect another bdfl
+<midfavila> they just grow on trees after all
+<dilyn> can confirm; grew on a willow tree for fifteen years
+<midfavila> explains everything
+<dilyn> yeah it's why i cry so much
+<midfavila> why couldn't we have an oak bdfl
+<midfavila> smh
+%
+<konimex> KISS doesn't use apt so I don't know why you mention it
+<midfavila> apt is a word
+<midfavila> smh
+<midfavila> konimex should be our next-in-line bdfl
+<midfavila> switch kiss to apt
+%
+<midfavila> that sounds like a you thing no offense
+<dilyn> everyone so fiesty today
+<midfavila> i'm always fiesty
+<midfavila> but getting smacked in the face by a frying pan and not having cream
+for my tea made me extra fiest
+<sh4rm4^bnc> sounds like an ubuntu release
+<sh4rm4^bnc> fiesty fucker
+<midfavila> that should be my project role
+<midfavila> kiss linux/fiesty fucker/midfavila
+<dilyn> you say feisty, I say focker
+<acheam> feisty
+(silence)
+%
+<midfavila> if you're a KISS user I either expect you don't have a phone
+<midfavila> or you're using a rooted android
+%
+<midfavila> if you stare into #kisslinux for long enough, #kisslinux will stare
+back
+%
+<midfavila> >iPhone
+<midfavila> no
+<midfavila> bad
+<midfavila> don't make me get the newspaper
+%
+<midfavila> i just use an old blackberry
+<midfavila> although for a while I did have a GNU userland on it
+<midfavila> using nano on a blackberry is p good
+<dilyn> is this sacrilege, or cancer? i can't tell
+<midfavila> yes
+<midfavila> completely unironically I used a QNX tty on my phone as my primary
+computing environment for about a month and a half
+<midfavila> literally fight me, iToddlers
+<dilyn> I would rather have both of my thumbs sewn up my own ass and be forced
+to use TTS for a year than use a TTY on my phone
+%
+<ominous_anonymou> too many devault rants to read, i don't have time for petty
+things like reading for fun
+%
+<dilyn> I'm just so obsessed with this opinionated man
+<midfavila> nobody except me is allowed to have opinions
+%
+ * dilyn cries
+<midfavila> gee guys my notification just went off but I can't see anything
+<midfavila> weird
+%
+<midfavila> NOOOOOOOOOOOOOOOOOOO YOU CAN'T JUST USE OUT OF DATE SOFTWARE!
+<midfavila> think of muh securideee :D
+<midfavila> heil CVE
+%
+<DilynCorner[m]> Now you just sound like a 200 level CSE prof
+<DilynCorner[m]> 'the answer is, of course, recursion'
+%
+<dilyn> vibin' is what i do best on the cloc
+%
+<dilyn> he's just mad he isn't poettering
+<dilyn> rip sad lad
+%
+<acheam> for (i=0; i<1000000000000; i++); do
+echo "." >> file; git commit file -m "update"; done; git push
+ * dilyn chef's kiss
+<dilyn> check out this *bespoke distro*
+<dilyn> commits just say 're'
+<necromansy> commits are just an ever increasing amount of e's
+<dilyn> systemreeeeeeeeeeeeeeeeeeeeEeEeEeEeEeEEEEEEEEEEEEEEEEE
+%
+<dilyn> :)
+<midfavila> :))))))))
+<acheam> :)))))))))))))))))
+%
+<midfavila> I Can't Believe It's Not Chrome!
+%
+<acheam> mid, stop taking a monopoly in the fortune file
+<midfavila> fuckin make me
+<midfavila> can't tell me what to do
+<acheam> mid, stop taking a monopoly in the fortune file
+<dilyn> mid, stop taking a monopoly in the fortune file
+ * midfavila smacks both with newspaper
+%
+<dilyn> I mean I love cankin' it to wayland as much as the next guy
+<midfavila> i too enjoy participating in circlejerks in obscure eye are see
+gahnoo's not yoonix loonix chats
+<midfavila> that's why I'm here after all
+%
+soon (tm)
+%
+<midfavila> jfc the fortunes file is literally like 80% me shitposting
+%
+<midfavila> there will always be a place for you in the embrace of xorg
+%
+<dilyn> i interface with my computer via a bluetooth chip i implanted in my
+brain
+%
+<midfavila> i'm a GOAT
+<midfavila> fuckin humans man
+%
+<acheam> oh my
+%
+<midfavila> totally unrelated but man
+<midfavila> I'm having *way* too much fun with my bayonet
+<midfavila> an adult needs to confiscate it from me
+<dilyn> teenager restraint code activated
+<dilyn> please stand by while a responsible adult is sent to your location
+%
+<midfavila1> "Kernel? Kernel who?"
+%
+<kiedtl> cc flags are so darn complicated
+<kiedtl> so much for unix simplicity
+<acheam> the solution?
+<acheam> rust.
+-- Mode #kisslinux [+q acheam!*@*] by kiedtl
+<midfavila1> i'm banning you acheam
+<kiedtl> Bad.
+<acheam> :mode -q acheam
+-- Mode #kisslinux [-q acheam!*@*] by kiedtl
+ * midfavila1 smacks acheam cruelly for their stupidity
+<acheam> big move quieting an op
+%
+<midfavila1> "The one who does not fight, lasts the longest"
+<midfavila1> -Sun Tzu probably
+%
+(mocking midfavila) <kiedtl> "Look at me ma, I fixed an egg salad sandwich with
+a century-old bayonet"
+<midfavila1> once I have two bayonets I can do the whole "gee mid why does your
+mom let you have *two* bayonets?"
+%
+<dilyn> i've sucked dick more dismissive than that
+%
+ * midfavila facedesks
+%
+<midfavila> smgl literally has a command to exorcise things
+%
+<midfavila> i said the heathen
+<midfavila> not me
+<kiedtl> you asked me to
+<midfavila> i'm like, the prophet
+<kiedtl> and you are?
+<kiedtl> the prophet of the heathen?
+<kiedtl> I'm confused
+<midfavila> the prophet of KISS
+<kiedtl> KISS is not heathen
+<midfavila> i channel the spirit of dylan
+<midfavila> using my 2x4
+<kiedtl> The spirit of dylan does not manifest itself in the bodies of the
+unsanctified.
+<midfavila> i'd use a ouija board but that's too complex
+<midfavila> and besides it's not usable by a single person
+<necromansy> gotta respect the daemons
+<midfavila> exactly
+<midfavila> you must chant "Keep it simple stupid" three times before beginning
+the trance
+<midfavila> and only then will dylan manifest
+<kiedtl> Even a heathen prophet is still not eligible for that privilege
+%
+<acheam> we need to make a #kisslinux-whining where its just a place that we
+can go to rant about software lol
+<midfavila> then this channel wouldn't get used
+%
+rtfm
+%
+<dilyn> landley couldn't have written a better grep than *checks notes*
+BurntSushi, could he??
+<dilyn> it would probably go zoom much quick
+%
+<dilyn> i take back everything. gnu is bae.
+%
+<acheam> posix shell gang
+%
+<nxghtmvrx> Any useful tips?
+<midfavila> install gentoo
+<acheam> run while you can
+<midfavila> it's already too late
+%
+<midfavila> exhaustion and low morale are huge problems. controversial
+statements only in #kisslinux
+%
+<midfavila> apply the unix philosophy to your life. do one thing and do it well.
+<midfavila> *become* the coreutil
+%
+<midfavila> normie detected
+<midfavila> termination initiated
+%
+<midfavila> ZOMG w00t!1!! XD
+<dilyn> 1337
+<necromansy> h4x0r5
+<midfavila> v37y e11t3
+<necromansy> r4wr x3
+%
+<travankor> but m-muh chemical weapons?!?
+<dilyn> god this channel is so weird
+%
+<acheam> what did the git tiny patch do?
+<acheam> besides making git tiny
+<midfavila> made it teeny, in addition to tiny
+%
+<dilyn> does it even use https
+<dilyn> lol they can insert 'dilyn eats rocks' into your logs ooohhh
+neeeoooooooooo
+<midfavila> "ereps is next"
+<dilyn> if you're https fan boy, don't CONSULT ME
+<dilyn> if i found that in a log i would deadass delete my existence
+%
+<hellboy2d> Picasso is an ati driver?
+<acheam> picasso is an artist
+<midfavila> picasso is a pain-
+<midfavila> FUCK
+<hellboy2d> KKKKKKKK
+<midfavila> godDAMN you, acheam
+%
+<midfavila> s/cringe/cringe
+%
+<necromansy> money money moneey
+<dilyn> $$$$$$$$$$$$$$$
+<dilyn> grubbing intensifies
+%
+** acheam complaining about python **
+<midfavila> the pythonista cries out in pain as he witnesses the horrors of C
+%
+<dilyn> click clack never get your time back
+%
+<dilyn> hippity hoppity your source tree is my property
+%
+<acheam> dilyn: true love is posix shell, not gurlfrend
+<dilyn> #!/bin/she
+<acheam> bad interpreter: /bin/she: no such file or directory
+<dilyn> she just doesn't understand me
+%
+<dilyn> cat /dev/null >> /dev/sdc2
+<acheam> ohh yeah thats the stuff
+<dilyn> fill my disk with zeroes daddy mmmm
+%
+<dgre> systemd rust gtk4
+-- Mode #kisslinux [+q dgre!*@*] by acheam
+%
+<ominous_anonymou> but but i thought BSDs aren't relevant any more?
+%
+<acheam> if you have extra credit, spin up some tor relays, or a folding at
+home instace
+<nxghtmvrx> Mine some crypto or something lol
+<testingkirc> acheam wants to use the credit to help society nxghtmvrx wants to
+mine crypto XD
+<nxghtmvrx> Hell yes. Just make it part of botnet or some nasty stuff
+%
+<nxghtmvrx> That should be some real hard glasses. Not these modern fragile
+ones. Thinkpad in the world of sunglasses
+%
+<midfavila> before long you'll be screaming about pickles
+<dilyn> i fucking love pickles dog
+<midfavila> I'M PICKLE DYLAAAN
+%
+<omanom> max recursion depth reached!
+%
+<dilyn> perl is fucking trash
+<dilyn> why is their build system so wiggidy wiggidy wack
+<midfavila> because it's basically python for boomers
+<midfavila> combining shit and shit just gets you a bigger pile of shit
+<midfavila> you don't need a maths degree to figure that out lmao
+%
+<midfavila> perl knows best, betaboi
+<dilyn> :|
+<midfavila> :p
+<midfavila> I'm a valued contributor to this project
+<dilyn> :| |:
+<dilyn> \ ._. /
+<midfavila> lmfao
+<midfavila> you know you'd miss me if I was gone
+<dilyn> lol
+%
+<midfavila> go to your room acheam
+<midfavila> no more internet for tonight
+%
+<dilyn> welcome to the present, palememe
+%
+<dilyn> i have said many things, sometimes it's hard for even me to keep them
+all straight c:
+<acheam> the wise words of a lunatic
+%
+<acheam> mozilla is dying
+<dilyn> f
+<acheam> dilyn: you don't have a right to say f, you chromium scum
+<dilyn> mozilla is dead, and I killed him
+<acheam> *gasp*
+%
+<sh4rm4^bnc> new feature: rewrite lisp code in C because it was too slow
+<dilyn> sh4rm4^bnc: s/feature/torture device/
+%
+<hellboy2d> carbs actually works?
+%
+<merakor> I watched EmacsCon from mpv
+<merakor> Damn it, why not Emacs
+%
+<necromansy> ITS A HANDGUN
+%
+<midfavila> carry a crossbow around
+<midfavila> and that's totally a-okay
+%
+<merakor> firefox is basically "javascript implemented in rust"
+%
+<midfavila> should just rewrite your init scripts with filesystem-specific
+checkers
+<midfavila> smh
+<dilyn> i'm dead
+<dilyn> I'm dead and mid has killed me
+%
+<midfavila> Everything I Don't Like Is Literally A Cargo Cult!
+%
+<dilyn> if my hands aren't flying across my keyboard as I furiously type my
+diatribes, am I even using a computer?
+%
+<midfavila> i'm not shitposting
+<midfavila> i'm Contributing:tm:
+%
+<acheam> GUIs? we don't need no stinking GUIs!
+%
+<midfavila> all kiss linux users have a moral god-given obligation to maintain
+at least ten thousand packages
+%
+<E5ten> this just reminded me to update git, so I was terrified that my patch
+wasn't gonna apply and I was gonna have to modify it to fit the current
+upstream, which would be a nightmare cuz I just got high lol
+<merakor> I remember sending a mail patch to Dylan while drunk
+<merakor> And I sent like 5 mails because I was so fucking high and wrote 4
+garbage patches
+<merakor> All my mails were "I got it this time I'm so sorry"
+<acheam> try finding contributors of this quality anywhere else folks!
+%
+<<<<<<< HEAD
+%
+<midfavila> gotta encrypt it using the strongest cipher
+<midfavila> otherwise known as base64
+%
+<merakor> Nothing quite like the warmth of compiling Webkit on a cold morning
+%
+<nxghtmvrx> In EmacsOS with systemd-kerneld everything just works too. You may
+just switch at this point :p
+<nxghtmvrx> Its in development for 20+ light years and tools from it used in
+different OSes so no one can stop you
+<dilyn> that's a long distance to be in development
+<nxghtmvrx> So yeah we measure its development in kilometers. Don't ask why
+<nxghtmvrx> Well actually that's because of SpaceMacs I think
+%
+<dilyn> oh sweet baby fucking jesus christ
+%
+<midfavila> the virgin nxgh vs the chad acheam
+%
+<acheam> tree / | aplay
+%
+word of the day: "/usr/etc"
+%
+<acheam> midfavila: what do you mean? .tar iS compression
+<acheam> you do know that the .gz and .xz are optional, and only put there by
+legacy programs, right?
+%
+<dilyn> mfw KISSfoundation is the new Mozilla Foundation
+%
+<travankor> CDDL: the copyleft license that bsd people like
+%
+A camel is a horse designed by a committee.
+%
+This wiki is incomplete, you can help by expanding it!
+%
+<AndroUser> Hello world
+<acheam> hi AndroUser
+<kiedtl> ehlo
+<dilynm> Hallo
+<testuser_[m]> hi
+<M4R10zM0113R> helo
+<claudia02> hola.
+<eudaldgr> hola
+%
+<dilynm> I am an abuser
+%
+<acheam> we shall expand our empire with force!
+<dilyn> #manifestdestiny
+<acheam> kiss shall be known in academia for centuries to come
+<midfavila> is manifest destiny our distro slogan
+<dilyn> heck naw
+<dilyn> gotta be something like...
+<dilyn> dream distro meme distro
+<dilyn> what you wish gentoo could've been
+<midfavila> the slogan can't just be a fucking description
+<dilyn> 'the meme has gone too far'
+<dilyn> hold onto your lips?
+<midfavila> "KISS Linux: 'The meme has gone too far'"
+<midfavila> ...
+<midfavila> Slogan of the day?
+<dilyn> -wayne gretzky -michael scott -dilyn corner
+%
+<GMR> hiii bro
+<GMR> i want to join hacking groups
+<GMR> help plz
+<acheam> if you want to be a 733t hackerz, there is one crucial step:
+<acheam> create an altar to Dylan Araps, and light an effigy
+<acheam> everything after that comes naturally
+<GMR> sorry i don't understand what are you saying
+GMR (~DELL@2409:4051:7:f478:d93d:c65e:92e9:cd07) has quit (Quit: Leaving)
+%
+<kiedtl> 733t l00n1x haggerz kissing each other
+%
+<dilyn> hyperbola, parabola, webola
+<dilyn> parabopolis
+<midfavila> something something parabolas and hyperbolas are different elements
+of a shape
+<dilyn> the art of abola
+<midfavila> or something
+<midfavila> you're forgetting ebola
+<acheam> thats the one with systemd, right?
+<midfavila> systemd+ebola gnu/linux
+%
+<dilyn> isn't /usr/include your pocket reference for C
+%
+<dilyn> whenever I login to a new system my first order of business is to
+`chown -R root:root ~/*`
+<dilyn> just to show the sysadmin I have nothing to hide
+%
+<noocsharp> ive always wanted a vibrator for my terminal
+%
+<dilyn> `touch` all the things
+<necromansy> woah woah hey settle down dilyn
+%
+<dilyn> merakor: I'll peak at your patch tomorrow and see if I can reproduce
+the issue. what is /bin/sh ?
+<acheam> wow I never would have though I would have to explain this to you.
+/bin/sh is the path to the posix compliant shell on the system, jeez dilyn
+<kiedtl> *Hopefully* posix compliant
+<kiedtl> but like, the bdfl of a strictly-posix distro having to ask 'what is
+/bin/sh' is just... wow
+%
+<dilyn> big https://github.com/aabacchus/pp
+<acheam> starred it.
+<dilyn> let's abuse seo and make this the most viewed github repo
+<mmatongo> thats a big pp
+<kiedtl> wtf is this
+%
+zenomat leaves: Quit: WeeChat 3.1
+<mmatongo> YESSS
+<mmatongo> YESSS
+zenomat arrives in #kisslinux
+<mmatongo> Feel my frustration
+%
+<testuser_[m]> gnu's not unix network object model environment is alright
+%
+<dilyn> mawnk awk iawk sawk pawkerfawkl
+%
+<necromansy> \o/
+<acheam> \o/
+<dilyn> \o/
+<merakor> \o_
+<testuser_[m]> /o\
+<merakor> _o/
+<necromansy> (o/
+<phoebos> _o/
+%
+<necromansy> aight now that ive sufficiently stumbled into errors in programs,
+imma go sleep
+%
+"instead of having every app be an electron app, I turned my electron app into
+every app"
+    -- Dilyn Corner on his use of Chromium
+%
+<dilyn> i like the sound of your fork
+<acheam> did you aplay it?
+%
+<phoebos> minimalism is mostly not being smart enough to learn all the commands
+in a big program
+%
+<dilyn> fuck science lmfao
+%
+<claudia> I have no desktop for my computer. Just several spots to crouch.
+%
+<dilyn> fun is illegal
+%
+<dilyn> Is it illegal to be sexually attracted to a piece of software
+%
+zenomat leaves: Quit: Never gonna give you up, except my client just did
+%
+<dilyn> repo-bin just got heckin' chonky
+%
+<dilyn> how can you NOT have a wallpaper...
+<dilyn> black screens hurt my soul
+<acheam> I don't have a wallpaper
+<acheam> just good ol #000000
+<dilyn> burn the blasphemer
+<dilyn> it's just the psychological impact of knowing a pretty picture is there
+to catch me when chromium randomly crashes
+<dilyn> keeps me sane, you know?
+%
+<dilyn> easiest alsa setup i've ever had (:
+<dilyn> KISS == Linux on EZ mode
+%
+<acheam> "I can't believe its not shell!"
+%
+<acheam> hmmm
+%
+<dilyn> what is this, BSD?
+<dilyn> things don't make sense here
+%
+<kiedtl> Quick, someone kill dilyn!
+<kiedtl> *kill their connection
+%
+<dilyn> a pacman is a wacka wacka wacka
+%
+"Just as I thought. No actual simplicity, just some neckbeards complaining
+about software evolving in the last 20 years."
+    -- Anonymous testimonial
+%
+"Not gonna lie, the attitude of the maintainer kinda makes my skin crawl, but
+to each their own."
+    -- Anonymous testimonial
+%
+"Literally the opposite of KISS. At lest don't use hypocritical excuses for
+your crusades."
+    -- Anonymous testimonial
+%
+"Oh this touches something deep in me."
+    -- Anonymous testimonial
+%
+<dilyn> the internet is cancer. I don't blame dylan for leaving
+<jslick> uh-oh, are we needing a new bdfl again?
+<dilyn> only if these 1337 hack3r5 get me
+%
+<dilyn> I am not a salesman, just a bringer of bad omens
+%
+<thermatix> is it a bad idea to have musl and glibc at the same time?
+<dilyn> it will result in what people in the industry call "a bad time"
+<thermatix> I get the feeling you're underselling how bad a time I will have...
+%
+<acheam> deer god I hope that you're kidding
+<acheam> s/deer/dear
+<acheam> i don't care about the god of bucks
+%
+<claudia02> btw dilyn, sometimes your sarcasm takes a lot of my brain power to
+process.
+%
+<thermatix> so what you're really saying is that I'm going to immortalised as
+an amusing quote?
+<thermatix> awesome!
+%
diff --git a/community-mod/fortune/sources b/community-mod/fortune/sources
new file mode 100644
index 0000000..5c1924c
--- /dev/null
+++ b/community-mod/fortune/sources
@@ -0,0 +1,3 @@
+https://git.sr.ht/~armaan/bin/archive/v0.0.1.tar.gz
+https://github.com/shlomif/fortune-mod/releases/download/fortune-mod-3.4.1/fortune-mod-3.4.1.tar.xz fortune-mod
+files/kiss
diff --git a/community-mod/fortune/version b/community-mod/fortune/version
new file mode 100644
index 0000000..fed9176
--- /dev/null
+++ b/community-mod/fortune/version
@@ -0,0 +1 @@
+0.0.1 2
diff --git a/community-mod/freeglut/build b/community-mod/freeglut/build
new file mode 100755
index 0000000..57bf157
--- /dev/null
+++ b/community-mod/freeglut/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < fno-common.patch
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=lib
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/freeglut/checksums b/community-mod/freeglut/checksums
new file mode 100644
index 0000000..85a6be3
--- /dev/null
+++ b/community-mod/freeglut/checksums
@@ -0,0 +1,2 @@
+d4000e02102acaf259998c870e25214739d1f16f67f99cb35e4f46841399da68
+898e8fb314cbe728d791e9ea69829313143cda039c008f0ca06c1b5730922aa7
diff --git a/community-mod/freeglut/depends b/community-mod/freeglut/depends
new file mode 100644
index 0000000..e014cdc
--- /dev/null
+++ b/community-mod/freeglut/depends
@@ -0,0 +1,6 @@
+cmake make
+glu make
+libXi
+libXrandr
+libXxf86vm make
+mesa
diff --git a/community-mod/freeglut/patches/fno-common.patch b/community-mod/freeglut/patches/fno-common.patch
new file mode 100644
index 0000000..655c01b
--- /dev/null
+++ b/community-mod/freeglut/patches/fno-common.patch
@@ -0,0 +1,81 @@
+From 5791564dd934d193df771a0a7c52013e9f456aa1 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyfox@gentoo.org>
+Date: Tue, 21 Jan 2020 22:33:49 +0000
+Subject: [PATCH] fg_gl2: fix build failure against gcc-10
+
+On gcc-10 (and gcc-9 -fno-common) build fails as:
+
+```
+[ 31%] Linking C executable bin/Lorenz_static
+/usr/bin/cmake -E cmake_link_script CMakeFiles/Lorenz_static.dir/link.txt --verbose=1
+/usr/lib/ccache/bin/cc  -Wall -pedantic  -rdynamic CMakeFiles/Lorenz_static.dir/progs/demos/Lorenz/lorenz.c.o \
+   -o bin/Lorenz_static  -lGLU -lGL -lm -lX11 -lXrandr -lXxf86vm -lXi -lm lib/libglut.a -lGL -lm -lX11 -lXrandr -lXxf86vm -lXi
+ld: lib/libglut.a(fg_gl2.c.o):(.bss+0x0):
+  multiple definition of `fghGenBuffers'; lib/libglut.a(fg_window.c.o):(.bss+0x0): first defined here
+ld: lib/libglut.a(fg_gl2.c.o):(.bss+0x8):
+  multiple definition of `fghDeleteBuffers'; lib/libglut.a(fg_window.c.o):(.bss+0x8): first defined here
+```
+
+Note: duplicate definition comes here from 'fg_gl2.h'.
+The fix is to move declaration to a 'fg_gl2.c' file.
+
+gcc-10 will change the default from -fcommon to fno-common:
+https://gcc.gnu.org/PR85678.
+
+The error also happens if CFLAGS=-fno-common passed explicitly.
+
+Bug: https://bugs.gentoo.org/705840
+Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
+---
+ src/fg_gl2.c | 12 ++++++++++++
+ src/fg_gl2.h | 14 +++++++-------
+ 2 files changed, 19 insertions(+), 7 deletions(-)
+
+diff --git a/freeglut/freeglut/src/fg_gl2.c b/freeglut/freeglut/src/fg_gl2.c
+index 38b0acbb..f79c432a 100644
+--- a/src/fg_gl2.c
++++ b/src/fg_gl2.c
+@@ -27,6 +27,18 @@
+ #include "fg_internal.h"
+ #include "fg_gl2.h"
+ 
++#ifdef GL_ES_VERSION_2_0
++/* Use existing functions on GLES 2.0 */
++#else
++FGH_PFNGLGENBUFFERSPROC fghGenBuffers;
++FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers;
++FGH_PFNGLBINDBUFFERPROC fghBindBuffer;
++FGH_PFNGLBUFFERDATAPROC fghBufferData;
++FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray;
++FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray;
++FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer;
++#endif
++
+ void FGAPIENTRY glutSetVertexAttribCoord3(GLint attrib) {
+   if (fgStructure.CurrentWindow != NULL)
+     fgStructure.CurrentWindow->Window.attribute_v_coord = attrib;
+diff --git a/freeglut/freeglut/src/fg_gl2.h b/freeglut/freeglut/src/fg_gl2.h
+index ab8ba5c7..fb3d4676 100644
+--- a/src/fg_gl2.h
++++ b/src/fg_gl2.h
+@@ -67,13 +67,13 @@ typedef void (APIENTRY *FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index);
+ typedef void (APIENTRY *FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint);
+ typedef void (APIENTRY *FGH_PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
+ 
+-FGH_PFNGLGENBUFFERSPROC fghGenBuffers;
+-FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers;
+-FGH_PFNGLBINDBUFFERPROC fghBindBuffer;
+-FGH_PFNGLBUFFERDATAPROC fghBufferData;
+-FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray;
+-FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray;
+-FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer;
++extern FGH_PFNGLGENBUFFERSPROC fghGenBuffers;
++extern FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers;
++extern FGH_PFNGLBINDBUFFERPROC fghBindBuffer;
++extern FGH_PFNGLBUFFERDATAPROC fghBufferData;
++extern FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray;
++extern FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray;
++extern FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer;
+ 
+ #    endif
+ 
diff --git a/community-mod/freeglut/sources b/community-mod/freeglut/sources
new file mode 100644
index 0000000..f564aaf
--- /dev/null
+++ b/community-mod/freeglut/sources
@@ -0,0 +1,2 @@
+https://downloads.sourceforge.net/freeglut/freeglut-3.2.1.tar.gz
+patches/fno-common.patch
diff --git a/community-mod/freeglut/version b/community-mod/freeglut/version
new file mode 100644
index 0000000..21a1c85
--- /dev/null
+++ b/community-mod/freeglut/version
@@ -0,0 +1 @@
+3.2.1 1 
diff --git a/community-mod/fuse/build b/community-mod/fuse/build
new file mode 100755
index 0000000..2024e5f
--- /dev/null
+++ b/community-mod/fuse/build
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+sed -i "28s|.*|chmod u+s \"\${DESTDIR}\${bindir}/fusermount3\"|" \
+    util/install_helper.sh
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    -Dexamples=false \
+    -Dsbindir=bin \
+    -Dudevrulesdir=/usr/lib/udev \
+    -Duseroot=false \
+    . output
+
+ninja -C output
+ninja -C output install
+
+rm -rf "$1/etc/init.d"
diff --git a/community-mod/fuse/checksums b/community-mod/fuse/checksums
new file mode 100644
index 0000000..d0c79fa
--- /dev/null
+++ b/community-mod/fuse/checksums
@@ -0,0 +1 @@
+9365b74fd8471caecdb3cc5adf25a821f70a931317ee9103d15bd39089e3590d
diff --git a/community-mod/fuse/depends b/community-mod/fuse/depends
new file mode 100644
index 0000000..36f6fe6
--- /dev/null
+++ b/community-mod/fuse/depends
@@ -0,0 +1 @@
+meson make
diff --git a/community-mod/fuse/sources b/community-mod/fuse/sources
new file mode 100644
index 0000000..cdf11e6
--- /dev/null
+++ b/community-mod/fuse/sources
@@ -0,0 +1 @@
+https://github.com/libfuse/libfuse/releases/download/fuse-3.10.4/fuse-3.10.4.tar.xz
diff --git a/community-mod/fuse/version b/community-mod/fuse/version
new file mode 100644
index 0000000..3cb3264
--- /dev/null
+++ b/community-mod/fuse/version
@@ -0,0 +1 @@
+3.10.4 1
diff --git a/community-mod/fuse2/build b/community-mod/fuse2/build
new file mode 100755
index 0000000..43ec27d
--- /dev/null
+++ b/community-mod/fuse2/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+./configure \
+	--prefix=/usr \
+	--bindir=/usr/bin \
+	--sbindir=/usr/bin \
+	--datarootdir=/usr/share \
+	--disable-example \
+	MOUNT_FUSE_PATH=/usr/bin \
+	UDEV_RULES_PATH=/usr/lib/udev
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/fuse2/checksums b/community-mod/fuse2/checksums
new file mode 100644
index 0000000..496e039
--- /dev/null
+++ b/community-mod/fuse2/checksums
@@ -0,0 +1 @@
+d0e69d5d608cc22ff4843791ad097f554dd32540ddc9bed7638cc6fea7c1b4b5
diff --git a/community-mod/fuse2/sources b/community-mod/fuse2/sources
new file mode 100644
index 0000000..b161b92
--- /dev/null
+++ b/community-mod/fuse2/sources
@@ -0,0 +1 @@
+https://github.com/libfuse/libfuse/releases/download/fuse-2.9.9/fuse-2.9.9.tar.gz
diff --git a/community-mod/fuse2/version b/community-mod/fuse2/version
new file mode 100644
index 0000000..0f060fb
--- /dev/null
+++ b/community-mod/fuse2/version
@@ -0,0 +1 @@
+2.9.9 1
diff --git a/community-mod/gawk/build b/community-mod/gawk/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/gawk/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gawk/checksums b/community-mod/gawk/checksums
new file mode 100644
index 0000000..10ed366
--- /dev/null
+++ b/community-mod/gawk/checksums
@@ -0,0 +1 @@
+cf5fea4ac5665fd5171af4716baab2effc76306a9572988d5ba1078f196382bd  gawk-5.1.0.tar.xz
diff --git a/community-mod/gawk/sources b/community-mod/gawk/sources
new file mode 100644
index 0000000..0a927a3
--- /dev/null
+++ b/community-mod/gawk/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz
diff --git a/community-mod/gawk/version b/community-mod/gawk/version
new file mode 100644
index 0000000..0fcd34c
--- /dev/null
+++ b/community-mod/gawk/version
@@ -0,0 +1 @@
+5.1.0 1 
diff --git a/community-mod/gdb/build b/community-mod/gdb/build
new file mode 100755
index 0000000..66017cb
--- /dev/null
+++ b/community-mod/gdb/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+cat > makeinfo <<EOF
+#!/bin/sh
+printf 'makeinfo (GNU texinfo) 5.2\n'
+EOF
+
+chmod +x makeinfo
+export PATH=$PATH:$PWD
+
+mkdir _build
+cd _build
+
+../configure \
+    --prefix=/usr \
+    --without-installed-readline \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gdb/checksums b/community-mod/gdb/checksums
new file mode 100644
index 0000000..2f76587
--- /dev/null
+++ b/community-mod/gdb/checksums
@@ -0,0 +1 @@
+aaa1223d534c9b700a8bec952d9748ee1977513f178727e1bee520ee000b4f29
diff --git a/community-mod/gdb/depends b/community-mod/gdb/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/community-mod/gdb/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/community-mod/gdb/sources b/community-mod/gdb/sources
new file mode 100644
index 0000000..d548c59
--- /dev/null
+++ b/community-mod/gdb/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/gdb/gdb-10.2.tar.xz
diff --git a/community-mod/gdb/version b/community-mod/gdb/version
new file mode 100644
index 0000000..782acc2
--- /dev/null
+++ b/community-mod/gdb/version
@@ -0,0 +1 @@
+10.2 1
diff --git a/community-mod/ghostscript/build b/community-mod/ghostscript/build
new file mode 100755
index 0000000..46d8bd2
--- /dev/null
+++ b/community-mod/ghostscript/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-gtk \
+    --disable-dbus \
+    --with-drivers=ALL \
+    --with-fontpaths=/usr/share/ghostscript/fonts/:/usr/share/fonts
+	
+make so all
+make DESTDIR="$1" install-so install
diff --git a/community-mod/ghostscript/checksums b/community-mod/ghostscript/checksums
new file mode 100644
index 0000000..0966c45
--- /dev/null
+++ b/community-mod/ghostscript/checksums
@@ -0,0 +1 @@
+0646bb97f6f4d10a763f4919c54fa28b4fbdd3dff8e7de3410431c81762cade0
diff --git a/community-mod/ghostscript/sources b/community-mod/ghostscript/sources
new file mode 100644
index 0000000..e91f44b
--- /dev/null
+++ b/community-mod/ghostscript/sources
@@ -0,0 +1 @@
+https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9540/ghostscript-9.54.0.tar.gz
diff --git a/community-mod/ghostscript/version b/community-mod/ghostscript/version
new file mode 100644
index 0000000..f894743
--- /dev/null
+++ b/community-mod/ghostscript/version
@@ -0,0 +1 @@
+9.54.0 1 
diff --git a/community-mod/giblib/build b/community-mod/giblib/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/giblib/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/giblib/checksums b/community-mod/giblib/checksums
new file mode 100644
index 0000000..ebf95f2
--- /dev/null
+++ b/community-mod/giblib/checksums
@@ -0,0 +1 @@
+176611c4d88d742ea4013991ad54c2f9d2feefbc97a28434c0f48922ebaa8bac  giblib-1.2.4.tar.gz
diff --git a/community-mod/giblib/depends b/community-mod/giblib/depends
new file mode 100644
index 0000000..63013e7
--- /dev/null
+++ b/community-mod/giblib/depends
@@ -0,0 +1,2 @@
+imlib2
+libXext
diff --git a/community-mod/giblib/sources b/community-mod/giblib/sources
new file mode 100644
index 0000000..f9ece6f
--- /dev/null
+++ b/community-mod/giblib/sources
@@ -0,0 +1 @@
+https://github.com/aicsx/kiss-repo/raw/master/giblib/giblib-1.2.4.tar.gz
diff --git a/community-mod/giblib/version b/community-mod/giblib/version
new file mode 100644
index 0000000..d66671c
--- /dev/null
+++ b/community-mod/giblib/version
@@ -0,0 +1 @@
+1.2.4 1
diff --git a/community-mod/glew/build b/community-mod/glew/build
new file mode 100755
index 0000000..6c35f04
--- /dev/null
+++ b/community-mod/glew/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+# We have to edit make files to change install dir
+sed -i "s/lib64/lib/g" config/Makefile.linux
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/glew/checksums b/community-mod/glew/checksums
new file mode 100644
index 0000000..17cc57c
--- /dev/null
+++ b/community-mod/glew/checksums
@@ -0,0 +1 @@
+d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1
diff --git a/community-mod/glew/depends b/community-mod/glew/depends
new file mode 100644
index 0000000..da0b5b9
--- /dev/null
+++ b/community-mod/glew/depends
@@ -0,0 +1 @@
+mesa
diff --git a/community-mod/glew/sources b/community-mod/glew/sources
new file mode 100644
index 0000000..43a42a2
--- /dev/null
+++ b/community-mod/glew/sources
@@ -0,0 +1 @@
+https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.tgz
diff --git a/community-mod/glew/version b/community-mod/glew/version
new file mode 100644
index 0000000..d3291fa
--- /dev/null
+++ b/community-mod/glew/version
@@ -0,0 +1 @@
+2.2.0 1
diff --git a/community-mod/glib-networking/build b/community-mod/glib-networking/build
new file mode 100755
index 0000000..b2f67d5
--- /dev/null
+++ b/community-mod/glib-networking/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+# Don't build tests that fail due to `gnutls` not being built with `p11-kit`.
+sed -i "/subdir('tls\/tests')/d" meson.build
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    -Dlibproxy=disabled \
+    -Dopenssl=disabled \
+    -Dgnutls=enabled \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/community-mod/glib-networking/checksums b/community-mod/glib-networking/checksums
new file mode 100644
index 0000000..3fbcbf1
--- /dev/null
+++ b/community-mod/glib-networking/checksums
@@ -0,0 +1 @@
+d05d8bd124a9f53fc2b93b18f2386d512e4f48bc5a80470a7967224f3bf53b30
diff --git a/community-mod/glib-networking/depends b/community-mod/glib-networking/depends
new file mode 100644
index 0000000..da4851d
--- /dev/null
+++ b/community-mod/glib-networking/depends
@@ -0,0 +1,4 @@
+glib
+gnutls
+meson make
+pkgconf make
diff --git a/community-mod/glib-networking/sources b/community-mod/glib-networking/sources
new file mode 100644
index 0000000..422533d
--- /dev/null
+++ b/community-mod/glib-networking/sources
@@ -0,0 +1 @@
+https://ftp.gnome.org/pub/gnome/sources/glib-networking/2.68/glib-networking-2.68.1.tar.xz
diff --git a/community-mod/glib-networking/version b/community-mod/glib-networking/version
new file mode 100644
index 0000000..be5bbb4
--- /dev/null
+++ b/community-mod/glib-networking/version
@@ -0,0 +1 @@
+2.68.1 1
diff --git a/community-mod/glorytun/build b/community-mod/glorytun/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/glorytun/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/glorytun/checksums b/community-mod/glorytun/checksums
new file mode 100644
index 0000000..1764bf3
--- /dev/null
+++ b/community-mod/glorytun/checksums
@@ -0,0 +1 @@
+137d9c525a05bb605163df0465367d36e943715ca773ce43d5ea66f0597600a3
diff --git a/community-mod/glorytun/depends b/community-mod/glorytun/depends
new file mode 100644
index 0000000..06e0334
--- /dev/null
+++ b/community-mod/glorytun/depends
@@ -0,0 +1,2 @@
+pkgconf make
+libsodium
diff --git a/community-mod/glorytun/sources b/community-mod/glorytun/sources
new file mode 100644
index 0000000..0d22db4
--- /dev/null
+++ b/community-mod/glorytun/sources
@@ -0,0 +1 @@
+https://github.com/angt/glorytun/releases/download/v0.3.4/glorytun-0.3.4.tar.gz
diff --git a/community-mod/glorytun/version b/community-mod/glorytun/version
new file mode 100644
index 0000000..086c5ea
--- /dev/null
+++ b/community-mod/glorytun/version
@@ -0,0 +1 @@
+0.3.4 1
diff --git a/community-mod/glu/build b/community-mod/glu/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/glu/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/glu/checksums b/community-mod/glu/checksums
new file mode 100644
index 0000000..d62201c
--- /dev/null
+++ b/community-mod/glu/checksums
@@ -0,0 +1 @@
+fb5a4c2dd6ba6d1c21ab7c05129b0769544e1d68e1e3b0ffecb18e73c93055bc  glu-9.0.1.tar.xz
diff --git a/community-mod/glu/depends b/community-mod/glu/depends
new file mode 100644
index 0000000..da0b5b9
--- /dev/null
+++ b/community-mod/glu/depends
@@ -0,0 +1 @@
+mesa
diff --git a/community-mod/glu/sources b/community-mod/glu/sources
new file mode 100644
index 0000000..f632c4e
--- /dev/null
+++ b/community-mod/glu/sources
@@ -0,0 +1 @@
+https://mesa.freedesktop.org/archive/glu/glu-9.0.1.tar.xz
diff --git a/community-mod/glu/version b/community-mod/glu/version
new file mode 100644
index 0000000..5eb512d
--- /dev/null
+++ b/community-mod/glu/version
@@ -0,0 +1 @@
+9.0.1 1
diff --git a/community-mod/glxgears-git/build b/community-mod/glxgears-git/build
new file mode 100755
index 0000000..626501a
--- /dev/null
+++ b/community-mod/glxgears-git/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+make
+
+install -Dm755 glxgears "$1/usr/bin/glxgears"
diff --git a/community-mod/glxgears-git/depends b/community-mod/glxgears-git/depends
new file mode 100644
index 0000000..7220c47
--- /dev/null
+++ b/community-mod/glxgears-git/depends
@@ -0,0 +1,3 @@
+mesa
+glu
+glew
diff --git a/community-mod/glxgears-git/sources b/community-mod/glxgears-git/sources
new file mode 100644
index 0000000..88c009f
--- /dev/null
+++ b/community-mod/glxgears-git/sources
@@ -0,0 +1 @@
+git+https://github.com/davidanthonygardner/glxgears
diff --git a/community-mod/glxgears-git/version b/community-mod/glxgears-git/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/glxgears-git/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/gnu-bc/build b/community-mod/gnu-bc/build
new file mode 100755
index 0000000..91ae3c7
--- /dev/null
+++ b/community-mod/gnu-bc/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+cat > makeinfo <<EOF
+#!/bin/sh
+printf 'makeinfo (GNU texinfo) 5.2\n'
+EOF
+
+chmod +x makeinfo
+export PATH=$PATH:$PWD
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man
+
+make -j1
+make DESTDIR="$1" install
diff --git a/community-mod/gnu-bc/checksums b/community-mod/gnu-bc/checksums
new file mode 100644
index 0000000..5baf92e
--- /dev/null
+++ b/community-mod/gnu-bc/checksums
@@ -0,0 +1 @@
+62adfca89b0a1c0164c2cdca59ca210c1d44c3ffc46daf9931cf4942664cb02a  bc-1.07.1.tar.gz
diff --git a/community-mod/gnu-bc/sources b/community-mod/gnu-bc/sources
new file mode 100644
index 0000000..1c10873
--- /dev/null
+++ b/community-mod/gnu-bc/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/bc/bc-1.07.1.tar.gz
diff --git a/community-mod/gnu-bc/version b/community-mod/gnu-bc/version
new file mode 100644
index 0000000..e13115d
--- /dev/null
+++ b/community-mod/gnu-bc/version
@@ -0,0 +1 @@
+1.07.1 1
diff --git a/community-mod/gnu-ed/build b/community-mod/gnu-ed/build
new file mode 100755
index 0000000..e6b7529
--- /dev/null
+++ b/community-mod/gnu-ed/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make all
+make DESTDIR="$1" install
diff --git a/community-mod/gnu-ed/checksums b/community-mod/gnu-ed/checksums
new file mode 100644
index 0000000..d6c2e35
--- /dev/null
+++ b/community-mod/gnu-ed/checksums
@@ -0,0 +1 @@
+71de39883c25b6fab44add80635382a10c9bf154515b94729f4a6529ddcc5e54
diff --git a/community-mod/gnu-ed/depends b/community-mod/gnu-ed/depends
new file mode 100644
index 0000000..162d916
--- /dev/null
+++ b/community-mod/gnu-ed/depends
@@ -0,0 +1 @@
+lzip
diff --git a/community-mod/gnu-ed/sources b/community-mod/gnu-ed/sources
new file mode 100644
index 0000000..a60532d
--- /dev/null
+++ b/community-mod/gnu-ed/sources
@@ -0,0 +1 @@
+https://download.savannah.gnu.org/releases/ed/ed-1.17.tar.lz
diff --git a/community-mod/gnu-ed/version b/community-mod/gnu-ed/version
new file mode 100644
index 0000000..e5b98a5
--- /dev/null
+++ b/community-mod/gnu-ed/version
@@ -0,0 +1 @@
+1.17 1 
diff --git a/community-mod/gnu-findutils/build b/community-mod/gnu-findutils/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/gnu-findutils/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gnu-findutils/checksums b/community-mod/gnu-findutils/checksums
new file mode 100644
index 0000000..727a448
--- /dev/null
+++ b/community-mod/gnu-findutils/checksums
@@ -0,0 +1 @@
+57127b7e97d91282c6ace556378d5455a9509898297e46e10443016ea1387164
diff --git a/community-mod/gnu-findutils/sources b/community-mod/gnu-findutils/sources
new file mode 100644
index 0000000..1d13431
--- /dev/null
+++ b/community-mod/gnu-findutils/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/findutils/findutils-4.8.0.tar.xz
diff --git a/community-mod/gnu-findutils/version b/community-mod/gnu-findutils/version
new file mode 100644
index 0000000..54a3de3
--- /dev/null
+++ b/community-mod/gnu-findutils/version
@@ -0,0 +1 @@
+4.8.0 1
diff --git a/community-mod/gnu-grep/build b/community-mod/gnu-grep/build
new file mode 100755
index 0000000..bfe5990
--- /dev/null
+++ b/community-mod/gnu-grep/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -Wno-error -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
+
+install -Dm755 src/grep "$1/usr/bin/ggrep"
diff --git a/community-mod/gnu-grep/checksums b/community-mod/gnu-grep/checksums
new file mode 100644
index 0000000..8ca1835
--- /dev/null
+++ b/community-mod/gnu-grep/checksums
@@ -0,0 +1 @@
+667e15e8afe189e93f9f21a7cd3a7b3f776202f417330b248c2ad4f997d9373e
diff --git a/community-mod/gnu-grep/sources b/community-mod/gnu-grep/sources
new file mode 100644
index 0000000..35d5bb3
--- /dev/null
+++ b/community-mod/gnu-grep/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/grep/grep-3.6.tar.xz
diff --git a/community-mod/gnu-grep/version b/community-mod/gnu-grep/version
new file mode 100644
index 0000000..8c2b20b
--- /dev/null
+++ b/community-mod/gnu-grep/version
@@ -0,0 +1 @@
+3.6 1 
diff --git a/community-mod/gnu-netcat/build b/community-mod/gnu-netcat/build
new file mode 100755
index 0000000..67839fa
--- /dev/null
+++ b/community-mod/gnu-netcat/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --infodir=/usr/share/info
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gnu-netcat/checksums b/community-mod/gnu-netcat/checksums
new file mode 100644
index 0000000..995a5bf
--- /dev/null
+++ b/community-mod/gnu-netcat/checksums
@@ -0,0 +1 @@
+b55af0bbdf5acc02d1eb6ab18da2acd77a400bafd074489003f3df09676332bb  netcat-0.7.1.tar.bz2
diff --git a/community-mod/gnu-netcat/sources b/community-mod/gnu-netcat/sources
new file mode 100644
index 0000000..c31316b
--- /dev/null
+++ b/community-mod/gnu-netcat/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/sourceforge/netcat/netcat-0.7.1.tar.bz2
diff --git a/community-mod/gnu-netcat/version b/community-mod/gnu-netcat/version
new file mode 100644
index 0000000..ef27064
--- /dev/null
+++ b/community-mod/gnu-netcat/version
@@ -0,0 +1 @@
+0.7.1 1 
diff --git a/community-mod/gnu-sed/build b/community-mod/gnu-sed/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/gnu-sed/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gnu-sed/checksums b/community-mod/gnu-sed/checksums
new file mode 100644
index 0000000..b8922c9
--- /dev/null
+++ b/community-mod/gnu-sed/checksums
@@ -0,0 +1 @@
+f79b0cfea71b37a8eeec8490db6c5f7ae7719c35587f21edb0617f370eeff633  sed-4.8.tar.xz
diff --git a/community-mod/gnu-sed/sources b/community-mod/gnu-sed/sources
new file mode 100644
index 0000000..1ec314b
--- /dev/null
+++ b/community-mod/gnu-sed/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/pub/gnu/sed/sed-4.8.tar.xz
diff --git a/community-mod/gnu-sed/version b/community-mod/gnu-sed/version
new file mode 100644
index 0000000..c80e4cb
--- /dev/null
+++ b/community-mod/gnu-sed/version
@@ -0,0 +1 @@
+4.8 1 
diff --git a/community-mod/gnu-tar/build b/community-mod/gnu-tar/build
new file mode 100755
index 0000000..59bf441
--- /dev/null
+++ b/community-mod/gnu-tar/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr \
+    --program-prefix=g
+
+make
+make DESTDIR="$1" install
+
+ln -s /usr/bin/gtar "$1/usr/bin/tar"
diff --git a/community-mod/gnu-tar/checksums b/community-mod/gnu-tar/checksums
new file mode 100644
index 0000000..9402730
--- /dev/null
+++ b/community-mod/gnu-tar/checksums
@@ -0,0 +1 @@
+63bebd26879c5e1eea4352f0d03c991f966aeb3ddeb3c7445c902568d5411d28
diff --git a/community-mod/gnu-tar/sources b/community-mod/gnu-tar/sources
new file mode 100644
index 0000000..d63ca6d
--- /dev/null
+++ b/community-mod/gnu-tar/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/tar/tar-1.34.tar.xz
diff --git a/community-mod/gnu-tar/version b/community-mod/gnu-tar/version
new file mode 100644
index 0000000..0088085
--- /dev/null
+++ b/community-mod/gnu-tar/version
@@ -0,0 +1 @@
+1.34 1 
diff --git a/community-mod/gnupg2/build b/community-mod/gnupg2/build
new file mode 100755
index 0000000..0f1cd0e
--- /dev/null
+++ b/community-mod/gnupg2/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+./configure --prefix=/usr \
+            --sbindir=/usr/bin \
+            --libexecdir=/usr/lib/gnupg \
+            --disable-gnutls \
+            --enable-symcryptrun \
+            --enable-gpg-is-gpg2 \
+            --disable-ldap \
+            --disable-nls
+
+make
+make DESTDIR="$1" install
+
+ln -s /usr/bin/gpg2 "$1/usr/bin/gpg"
+ln -s /usr/bin/gpgv2 "$1/usr/bin/gpgv"
diff --git a/community-mod/gnupg2/checksums b/community-mod/gnupg2/checksums
new file mode 100644
index 0000000..9d2b106
--- /dev/null
+++ b/community-mod/gnupg2/checksums
@@ -0,0 +1 @@
+c498db346a9b9a4b399e514c8f56dfc0a888ce8f327f10376ff984452cd154ec
diff --git a/community-mod/gnupg2/depends b/community-mod/gnupg2/depends
new file mode 100644
index 0000000..96899c3
--- /dev/null
+++ b/community-mod/gnupg2/depends
@@ -0,0 +1,6 @@
+libassuan
+libgcrypt
+libgpg-error
+libksba
+libnpth
+pinentry
diff --git a/community-mod/gnupg2/sources b/community-mod/gnupg2/sources
new file mode 100644
index 0000000..a6697cd
--- /dev/null
+++ b/community-mod/gnupg2/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.3.1.tar.bz2
diff --git a/community-mod/gnupg2/version b/community-mod/gnupg2/version
new file mode 100644
index 0000000..28ce77d
--- /dev/null
+++ b/community-mod/gnupg2/version
@@ -0,0 +1 @@
+2.3.1 1 
diff --git a/community-mod/gnuplot/build b/community-mod/gnuplot/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/gnuplot/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gnuplot/checksums b/community-mod/gnuplot/checksums
new file mode 100644
index 0000000..f479349
--- /dev/null
+++ b/community-mod/gnuplot/checksums
@@ -0,0 +1 @@
+e57c75e1318133951d32a83bcdc4aff17fed28722c4e71f2305cfc2ae1cae7ba
diff --git a/community-mod/gnuplot/depends b/community-mod/gnuplot/depends
new file mode 100644
index 0000000..98ccac5
--- /dev/null
+++ b/community-mod/gnuplot/depends
@@ -0,0 +1 @@
+pango
diff --git a/community-mod/gnuplot/sources b/community-mod/gnuplot/sources
new file mode 100644
index 0000000..0717b83
--- /dev/null
+++ b/community-mod/gnuplot/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/sourceforge/gnuplot/gnuplot-5.4.2.tar.gz
diff --git a/community-mod/gnuplot/version b/community-mod/gnuplot/version
new file mode 100644
index 0000000..3571db0
--- /dev/null
+++ b/community-mod/gnuplot/version
@@ -0,0 +1 @@
+5.4.2 1 
diff --git a/community-mod/gnutls/build b/community-mod/gnutls/build
new file mode 100755
index 0000000..52f527a
--- /dev/null
+++ b/community-mod/gnutls/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-nls \
+    --with-nettle-mini \
+    --with-included-libtasn1 \
+    --with-included-unistring \
+    --enable-static \
+    --without-p11-kit
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gnutls/checksums b/community-mod/gnutls/checksums
new file mode 100644
index 0000000..837e755
--- /dev/null
+++ b/community-mod/gnutls/checksums
@@ -0,0 +1 @@
+1b79b381ac283d8b054368b335c408fedcb9b7144e0c07f531e3537d4328f3b3
diff --git a/community-mod/gnutls/depends b/community-mod/gnutls/depends
new file mode 100644
index 0000000..bf6011a
--- /dev/null
+++ b/community-mod/gnutls/depends
@@ -0,0 +1,2 @@
+nettle
+pkgconf make
diff --git a/community-mod/gnutls/sources b/community-mod/gnutls/sources
new file mode 100644
index 0000000..e8e85f2
--- /dev/null
+++ b/community-mod/gnutls/sources
@@ -0,0 +1 @@
+https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.16.tar.xz
diff --git a/community-mod/gnutls/version b/community-mod/gnutls/version
new file mode 100644
index 0000000..227c9c9
--- /dev/null
+++ b/community-mod/gnutls/version
@@ -0,0 +1 @@
+3.6.16 1
diff --git a/community-mod/grabc/build b/community-mod/grabc/build
new file mode 100755
index 0000000..5f8ebc8
--- /dev/null
+++ b/community-mod/grabc/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+make
+
+install -Dm755 grabc "$1/usr/bin/grabc"
diff --git a/community-mod/grabc/checksums b/community-mod/grabc/checksums
new file mode 100644
index 0000000..875c494
--- /dev/null
+++ b/community-mod/grabc/checksums
@@ -0,0 +1 @@
+f0492a8ea33b46a16bdb94644420f54724e31c4436e4cd77937a30b2de3bb00e
diff --git a/community-mod/grabc/depends b/community-mod/grabc/depends
new file mode 100644
index 0000000..1903bba
--- /dev/null
+++ b/community-mod/grabc/depends
@@ -0,0 +1 @@
+libX11
diff --git a/community-mod/grabc/sources b/community-mod/grabc/sources
new file mode 100644
index 0000000..d437376
--- /dev/null
+++ b/community-mod/grabc/sources
@@ -0,0 +1 @@
+https://www.muquit.com/muquit/software/grabc/grabc1.1.tar.gz
diff --git a/community-mod/grabc/version b/community-mod/grabc/version
new file mode 100644
index 0000000..f8b0b37
--- /dev/null
+++ b/community-mod/grabc/version
@@ -0,0 +1 @@
+1.1 1
diff --git a/community-mod/groff/build b/community-mod/groff/build
new file mode 100755
index 0000000..506d8f8
--- /dev/null
+++ b/community-mod/groff/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+patch -p0 < musl.patch
+
+./configure \
+    --prefix=/usr \
+    --without-x \
+    --disable-rpath \
+    --with-doc=no \
+    --enable-nls=auto
+
+make
+make DESTDIR="$1" install
+
+rm -f "$1/usr/share/man/man7/roff.7" \
+	"$1/usr/share/man/man1/soelim.1" \
+	"$1/usr/bin/soelim" \
diff --git a/community-mod/groff/checksums b/community-mod/groff/checksums
new file mode 100644
index 0000000..327f1cc
--- /dev/null
+++ b/community-mod/groff/checksums
@@ -0,0 +1,2 @@
+e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293  groff-1.22.4.tar.gz
+002bf93f6d59f8c6e7e3140d6925e985fff689340e69016277aa5ff260bcd123  musl.patch
diff --git a/community-mod/groff/files/musl.patch b/community-mod/groff/files/musl.patch
new file mode 100644
index 0000000..9d2b322
--- /dev/null
+++ b/community-mod/groff/files/musl.patch
@@ -0,0 +1,79 @@
+--- lib/math.in.h.orig	2019-01-02 16:55:35.064459973 +0100
++++ lib/math.in.h	2019-01-02 17:42:43.450242836 +0100
+@@ -2342,75 +2342,6 @@
+ #endif
+ 
+ 
+-#if @GNULIB_SIGNBIT@
+-# if (@REPLACE_SIGNBIT_USING_GCC@ \
+-      && (!defined __cplusplus || __cplusplus < 201103))
+-#  undef signbit
+-   /* GCC 4.0 and newer provides three built-ins for signbit.  */
+-#  define signbit(x) \
+-   (sizeof (x) == sizeof (long double) ? __builtin_signbitl (x) : \
+-    sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \
+-    __builtin_signbitf (x))
+-# endif
+-# if @REPLACE_SIGNBIT@
+-#  undef signbit
+-_GL_EXTERN_C int gl_signbitf (float arg);
+-_GL_EXTERN_C int gl_signbitd (double arg);
+-_GL_EXTERN_C int gl_signbitl (long double arg);
+-#  if __GNUC__ >= 2 && !defined __STRICT_ANSI__
+-#   define _GL_NUM_UINT_WORDS(type) \
+-      ((sizeof (type) + sizeof (unsigned int) - 1) / sizeof (unsigned int))
+-#   if defined FLT_SIGNBIT_WORD && defined FLT_SIGNBIT_BIT && !defined gl_signbitf
+-#    define gl_signbitf_OPTIMIZED_MACRO
+-#    define gl_signbitf(arg) \
+-       ({ union { float _value;                                         \
+-                  unsigned int _word[_GL_NUM_UINT_WORDS (float)];       \
+-                } _m;                                                   \
+-          _m._value = (arg);                                            \
+-          (_m._word[FLT_SIGNBIT_WORD] >> FLT_SIGNBIT_BIT) & 1;          \
+-        })
+-#   endif
+-#   if defined DBL_SIGNBIT_WORD && defined DBL_SIGNBIT_BIT && !defined gl_signbitd
+-#    define gl_signbitd_OPTIMIZED_MACRO
+-#    define gl_signbitd(arg) \
+-       ({ union { double _value;                                        \
+-                  unsigned int _word[_GL_NUM_UINT_WORDS (double)];      \
+-                } _m;                                                   \
+-          _m._value = (arg);                                            \
+-          (_m._word[DBL_SIGNBIT_WORD] >> DBL_SIGNBIT_BIT) & 1;          \
+-        })
+-#   endif
+-#   if defined LDBL_SIGNBIT_WORD && defined LDBL_SIGNBIT_BIT && !defined gl_signbitl
+-#    define gl_signbitl_OPTIMIZED_MACRO
+-#    define gl_signbitl(arg) \
+-       ({ union { long double _value;                                   \
+-                  unsigned int _word[_GL_NUM_UINT_WORDS (long double)]; \
+-                } _m;                                                   \
+-          _m._value = (arg);                                            \
+-          (_m._word[LDBL_SIGNBIT_WORD] >> LDBL_SIGNBIT_BIT) & 1;        \
+-        })
+-#   endif
+-#  endif
+-#  define signbit(x) \
+-   (sizeof (x) == sizeof (long double) ? gl_signbitl (x) : \
+-    sizeof (x) == sizeof (double) ? gl_signbitd (x) : \
+-    gl_signbitf (x))
+-# endif
+-# ifdef __cplusplus
+-#  if defined signbit || defined GNULIB_NAMESPACE
+-_GL_MATH_CXX_REAL_FLOATING_DECL_1 (signbit)
+-#   undef signbit
+-_GL_MATH_CXX_REAL_FLOATING_DECL_2 (signbit)
+-#  endif
+-# endif
+-#elif defined GNULIB_POSIXCHECK
+-# if defined signbit
+-_GL_WARN_REAL_FLOATING_DECL (signbit);
+-#  undef signbit
+-#  define signbit(x) _GL_WARN_REAL_FLOATING_IMPL (signbit, x)
+-# endif
+-#endif
+-
+ _GL_INLINE_HEADER_END
+ 
+ #endif /* _@GUARD_PREFIX@_MATH_H */
+
diff --git a/community-mod/groff/sources b/community-mod/groff/sources
new file mode 100644
index 0000000..8f5e23f
--- /dev/null
+++ b/community-mod/groff/sources
@@ -0,0 +1,2 @@
+https://ftp.gnu.org/gnu/groff/groff-1.22.4.tar.gz
+files/musl.patch
diff --git a/community-mod/groff/version b/community-mod/groff/version
new file mode 100644
index 0000000..1418be4
--- /dev/null
+++ b/community-mod/groff/version
@@ -0,0 +1 @@
+1.22.4 1
diff --git a/community-mod/gsl/build b/community-mod/gsl/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/gsl/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gsl/checksums b/community-mod/gsl/checksums
new file mode 100644
index 0000000..0654e48
--- /dev/null
+++ b/community-mod/gsl/checksums
@@ -0,0 +1 @@
+efbbf3785da0e53038be7907500628b466152dbc3c173a87de1b5eba2e23602b
diff --git a/community-mod/gsl/sources b/community-mod/gsl/sources
new file mode 100644
index 0000000..1c86760
--- /dev/null
+++ b/community-mod/gsl/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/gsl/gsl-2.7.tar.gz
diff --git a/community-mod/gsl/version b/community-mod/gsl/version
new file mode 100644
index 0000000..7c0f916
--- /dev/null
+++ b/community-mod/gsl/version
@@ -0,0 +1 @@
+2.7 1
diff --git a/community-mod/gst-plugins-base/build b/community-mod/gst-plugins-base/build
new file mode 100755
index 0000000..27a4289
--- /dev/null
+++ b/community-mod/gst-plugins-base/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    -Dgl=disabled \
+    -Dtests=disabled \
+    -Dtremor=disabled \
+    -Dexamples=disabled \
+    -Dcdparanoia=disabled \
+    -Dintrospection=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/community-mod/gst-plugins-base/checksums b/community-mod/gst-plugins-base/checksums
new file mode 100644
index 0000000..f819b19
--- /dev/null
+++ b/community-mod/gst-plugins-base/checksums
@@ -0,0 +1 @@
+29e53229a84d01d722f6f6db13087231cdf6113dd85c25746b9b58c3d68e8323
diff --git a/community-mod/gst-plugins-base/depends b/community-mod/gst-plugins-base/depends
new file mode 100644
index 0000000..6eba18f
--- /dev/null
+++ b/community-mod/gst-plugins-base/depends
@@ -0,0 +1,11 @@
+alsa-lib
+glib
+gstreamer
+libjpeg-turbo
+libpng
+libvorbis
+linux-headers make
+mesa
+meson make
+opus
+pango
diff --git a/community-mod/gst-plugins-base/sources b/community-mod/gst-plugins-base/sources
new file mode 100644
index 0000000..7faedcc
--- /dev/null
+++ b/community-mod/gst-plugins-base/sources
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.18.4.tar.xz
diff --git a/community-mod/gst-plugins-base/version b/community-mod/gst-plugins-base/version
new file mode 100644
index 0000000..e13698d
--- /dev/null
+++ b/community-mod/gst-plugins-base/version
@@ -0,0 +1 @@
+1.18.4 1
diff --git a/community-mod/gst-plugins/build b/community-mod/gst-plugins/build
new file mode 100755
index 0000000..8678625
--- /dev/null
+++ b/community-mod/gst-plugins/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+for plugin in libav good bad ugly; do (
+    cd "$plugin"
+
+    meson \
+        --prefix=/usr \
+        -Dtests=disabled \
+        -Dexamples=disabled \
+        -Dintrospection=disabled \
+        -Dqt5=disabled \
+        . output
+
+    ninja -C output
+    ninja -C output install
+) done
diff --git a/community-mod/gst-plugins/checksums b/community-mod/gst-plugins/checksums
new file mode 100644
index 0000000..21983d3
--- /dev/null
+++ b/community-mod/gst-plugins/checksums
@@ -0,0 +1,4 @@
+b6e50e3a9bbcd56ee6ec71c33aa8332cc9c926b0c1fae995aac8b3040ebe39b0
+74e806bc5595b18c70e9ca93571e27e79dfb808e5d2e7967afa952b52e99c85f
+218df0ce0d31e8ca9cdeb01a3b0c573172cc9c21bb3d41811c7820145623d13c
+344a463badca216c2cef6ee36f9510c190862bdee48dc4591c0a430df7e8c396
diff --git a/community-mod/gst-plugins/depends b/community-mod/gst-plugins/depends
new file mode 100644
index 0000000..bdd60c2
--- /dev/null
+++ b/community-mod/gst-plugins/depends
@@ -0,0 +1,22 @@
+alsa-lib
+ffmpeg
+gdk-pixbuf
+gst-plugins-base
+gstreamer
+lame
+lcms
+libXdamage
+libjpeg-turbo
+libpng
+libressl
+libsoup
+libvorbis
+libvpx
+libwebp
+linux-headers make
+meson make
+opus
+pango
+python make
+x264
+x265
diff --git a/community-mod/gst-plugins/sources b/community-mod/gst-plugins/sources
new file mode 100644
index 0000000..f4a78a2
--- /dev/null
+++ b/community-mod/gst-plugins/sources
@@ -0,0 +1,4 @@
+https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.18.4.tar.xz good
+https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.18.4.tar.xz bad
+https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.18.4.tar.xz ugly
+https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.18.4.tar.xz libav
diff --git a/community-mod/gst-plugins/version b/community-mod/gst-plugins/version
new file mode 100644
index 0000000..e13698d
--- /dev/null
+++ b/community-mod/gst-plugins/version
@@ -0,0 +1 @@
+1.18.4 1
diff --git a/community-mod/gstreamer/build b/community-mod/gstreamer/build
new file mode 100755
index 0000000..8807234
--- /dev/null
+++ b/community-mod/gstreamer/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    -Dbuildtype=release \
+    -Ddbghelp=disabled \
+    -Dintrospection=disabled \
+    -Dexamples=disabled \
+    -Dgtk_doc=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/community-mod/gstreamer/checksums b/community-mod/gstreamer/checksums
new file mode 100644
index 0000000..aea5a71
--- /dev/null
+++ b/community-mod/gstreamer/checksums
@@ -0,0 +1 @@
+9aeec99b38e310817012aa2d1d76573b787af47f8a725a65b833880a094dfbc5
diff --git a/community-mod/gstreamer/depends b/community-mod/gstreamer/depends
new file mode 100644
index 0000000..4708b6c
--- /dev/null
+++ b/community-mod/gstreamer/depends
@@ -0,0 +1,3 @@
+bison make
+glib
+meson make
diff --git a/community-mod/gstreamer/sources b/community-mod/gstreamer/sources
new file mode 100644
index 0000000..35833b5
--- /dev/null
+++ b/community-mod/gstreamer/sources
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.18.4.tar.xz
diff --git a/community-mod/gstreamer/version b/community-mod/gstreamer/version
new file mode 100644
index 0000000..e13698d
--- /dev/null
+++ b/community-mod/gstreamer/version
@@ -0,0 +1 @@
+1.18.4 1
diff --git a/community-mod/gt5/build b/community-mod/gt5/build
new file mode 100755
index 0000000..255fa2f
--- /dev/null
+++ b/community-mod/gt5/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+install -D -m755 gt5 "$1/usr/bin/gt5"
+install -D -m644 gt5.1 "$1/usr/share/man/man1/gt5.1"
diff --git a/community-mod/gt5/checksums b/community-mod/gt5/checksums
new file mode 100644
index 0000000..ff06a03
--- /dev/null
+++ b/community-mod/gt5/checksums
@@ -0,0 +1 @@
+785a2a71f77e29d2cf4bbd2c6f49f690d6fdcb5f53abd51aee393572fd7fa03e
diff --git a/community-mod/gt5/sources b/community-mod/gt5/sources
new file mode 100644
index 0000000..ca9bef7
--- /dev/null
+++ b/community-mod/gt5/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/gt5/gt5-1.4.0.tar.gz
diff --git a/community-mod/gt5/version b/community-mod/gt5/version
new file mode 100644
index 0000000..be73137
--- /dev/null
+++ b/community-mod/gt5/version
@@ -0,0 +1 @@
+1.4.0 4
diff --git a/community-mod/gumbo-parser/build b/community-mod/gumbo-parser/build
new file mode 100755
index 0000000..9074f50
--- /dev/null
+++ b/community-mod/gumbo-parser/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./autogen.sh
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/gumbo-parser/checksums b/community-mod/gumbo-parser/checksums
new file mode 100644
index 0000000..1cc74a0
--- /dev/null
+++ b/community-mod/gumbo-parser/checksums
@@ -0,0 +1 @@
+28463053d44a5dfbc4b77bcf49c8cee119338ffa636cc17fc3378421d714efad
diff --git a/community-mod/gumbo-parser/sources b/community-mod/gumbo-parser/sources
new file mode 100644
index 0000000..f813da9
--- /dev/null
+++ b/community-mod/gumbo-parser/sources
@@ -0,0 +1 @@
+https://github.com/google/gumbo-parser/archive/v0.10.1.tar.gz
diff --git a/community-mod/gumbo-parser/version b/community-mod/gumbo-parser/version
new file mode 100644
index 0000000..03d3f17
--- /dev/null
+++ b/community-mod/gumbo-parser/version
@@ -0,0 +1 @@
+0.10.1 1
diff --git a/community-mod/hack/build b/community-mod/hack/build
new file mode 100755
index 0000000..ea8ab62
--- /dev/null
+++ b/community-mod/hack/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+mkdir -p "$1/usr/share/fonts/TTF"
+cp ./*.ttf "$1/usr/share/fonts/TTF"
diff --git a/community-mod/hack/checksums b/community-mod/hack/checksums
new file mode 100644
index 0000000..5621b5b
--- /dev/null
+++ b/community-mod/hack/checksums
@@ -0,0 +1 @@
+7f592d091cbd2472f39af96e6c280cde3c27cab50a9c88746feb42918aa1888f  Hack-v3.003-ttf.tar.gz
diff --git a/community-mod/hack/post-install b/community-mod/hack/post-install
new file mode 100755
index 0000000..60cac80
--- /dev/null
+++ b/community-mod/hack/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+fc-cache -f
diff --git a/community-mod/hack/sources b/community-mod/hack/sources
new file mode 100644
index 0000000..1d3a23f
--- /dev/null
+++ b/community-mod/hack/sources
@@ -0,0 +1 @@
+https://github.com/source-foundry/Hack/releases/download/v3.003/Hack-v3.003-ttf.tar.gz
diff --git a/community-mod/hack/version b/community-mod/hack/version
new file mode 100644
index 0000000..5fd2d15
--- /dev/null
+++ b/community-mod/hack/version
@@ -0,0 +1 @@
+3.003 1 
diff --git a/community-mod/harfbuzz-icu/build b/community-mod/harfbuzz-icu/build
new file mode 100755
index 0000000..1cf8e03
--- /dev/null
+++ b/community-mod/harfbuzz-icu/build
@@ -0,0 +1,23 @@
+#!/bin/sh -e
+
+# Will store the built package's files to
+# allow us to cherry-pick the ICU related files.
+mkdir -p tmp
+export DESTDIR="$PWD/tmp"
+
+meson \
+    --prefix=/usr \
+    -Dglib=enabled \
+    -Dicu=enabled \
+    -Dicu_builtin=false \
+    -Dbenchmark=disabled \
+    -Dcairo=disabled \
+    -Ddocs=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
+
+install -Dt "$1/usr/lib"              tmp/usr/lib/libharfbuzz-icu*
+install -Dt "$1/usr/lib/pkgconfig"    tmp/usr/lib/pkgconfig/harfbuzz-icu.pc
+install -Dt "$1/usr/include/harfbuzz" tmp/usr/include/harfbuzz/hb-icu.h
diff --git a/community-mod/harfbuzz-icu/checksums b/community-mod/harfbuzz-icu/checksums
new file mode 100644
index 0000000..d98b9c8
--- /dev/null
+++ b/community-mod/harfbuzz-icu/checksums
@@ -0,0 +1 @@
+b3f17394c5bccee456172b2b30ddec0bb87e9c5df38b4559a973d14ccd04509d
diff --git a/community-mod/harfbuzz-icu/depends b/community-mod/harfbuzz-icu/depends
new file mode 100644
index 0000000..f103c80
--- /dev/null
+++ b/community-mod/harfbuzz-icu/depends
@@ -0,0 +1,3 @@
+freetype-harfbuzz
+icu
+meson make
diff --git a/community-mod/harfbuzz-icu/sources b/community-mod/harfbuzz-icu/sources
new file mode 100644
index 0000000..edf4292
--- /dev/null
+++ b/community-mod/harfbuzz-icu/sources
@@ -0,0 +1 @@
+https://github.com/harfbuzz/harfbuzz/archive/2.8.1.tar.gz
diff --git a/community-mod/harfbuzz-icu/version b/community-mod/harfbuzz-icu/version
new file mode 100644
index 0000000..4214617
--- /dev/null
+++ b/community-mod/harfbuzz-icu/version
@@ -0,0 +1 @@
+2.8.1 1
diff --git a/community-mod/herbe/build b/community-mod/herbe/build
new file mode 100755
index 0000000..bf1965e
--- /dev/null
+++ b/community-mod/herbe/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX="/usr" DESTDIR="$1"  install
diff --git a/community-mod/herbe/checksums b/community-mod/herbe/checksums
new file mode 100644
index 0000000..9467b52
--- /dev/null
+++ b/community-mod/herbe/checksums
@@ -0,0 +1 @@
+78e454159050c86e030fb5a6cf997ac914345210cdf5a4ca4d7600c5296b7f76
diff --git a/community-mod/herbe/depends b/community-mod/herbe/depends
new file mode 100644
index 0000000..c037cff
--- /dev/null
+++ b/community-mod/herbe/depends
@@ -0,0 +1,2 @@
+libX11
+libXft
diff --git a/community-mod/herbe/sources b/community-mod/herbe/sources
new file mode 100644
index 0000000..d36d567
--- /dev/null
+++ b/community-mod/herbe/sources
@@ -0,0 +1 @@
+https://github.com/dudik/herbe/archive/1.0.0.tar.gz
diff --git a/community-mod/herbe/version b/community-mod/herbe/version
new file mode 100644
index 0000000..69c85ee
--- /dev/null
+++ b/community-mod/herbe/version
@@ -0,0 +1 @@
+1.0.0 1 
diff --git a/community-mod/hsetroot/build b/community-mod/hsetroot/build
new file mode 100755
index 0000000..91fda46
--- /dev/null
+++ b/community-mod/hsetroot/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+mkdir -p "$1/usr/bin"
+
+make
+make PREFIX="$1/usr" install
diff --git a/community-mod/hsetroot/checksums b/community-mod/hsetroot/checksums
new file mode 100644
index 0000000..0d6f4d1
--- /dev/null
+++ b/community-mod/hsetroot/checksums
@@ -0,0 +1 @@
+cff5f83b85a21e0c5c8c8eecbd552090bb75d8ac59e27b0bae48046f9cb5a44a  1.0.5.tar.gz
diff --git a/community-mod/hsetroot/depends b/community-mod/hsetroot/depends
new file mode 100644
index 0000000..ed4757c
--- /dev/null
+++ b/community-mod/hsetroot/depends
@@ -0,0 +1,2 @@
+imlib2
+libXinerama
diff --git a/community-mod/hsetroot/sources b/community-mod/hsetroot/sources
new file mode 100644
index 0000000..3ca2321
--- /dev/null
+++ b/community-mod/hsetroot/sources
@@ -0,0 +1 @@
+https://github.com/himdel/hsetroot/archive/1.0.5.tar.gz
diff --git a/community-mod/hsetroot/version b/community-mod/hsetroot/version
new file mode 100644
index 0000000..46be4aa
--- /dev/null
+++ b/community-mod/hsetroot/version
@@ -0,0 +1 @@
+1.0.5 1
diff --git a/community-mod/hummingbird-git/build b/community-mod/hummingbird-git/build
new file mode 100755
index 0000000..49cee13
--- /dev/null
+++ b/community-mod/hummingbird-git/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" install
+
+install -Dm755 usr/lib/hummingbird/* "$1/usr/lib/hummingbird"
+install -Dm755 dist/kiss/* "$1/usr/lib/hummingbird"
+ln -s hummingbird "$1/usr/bin/init"
diff --git a/community-mod/hummingbird-git/checksums b/community-mod/hummingbird-git/checksums
new file mode 100644
index 0000000..6e9411a
--- /dev/null
+++ b/community-mod/hummingbird-git/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/Sweets/hummingbird.git
diff --git a/community-mod/hummingbird-git/sources b/community-mod/hummingbird-git/sources
new file mode 100644
index 0000000..d3266dd
--- /dev/null
+++ b/community-mod/hummingbird-git/sources
@@ -0,0 +1 @@
+git+https://github.com/Sweets/hummingbird.git
diff --git a/community-mod/hummingbird-git/version b/community-mod/hummingbird-git/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/hummingbird-git/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/iana-etc/build b/community-mod/iana-etc/build
new file mode 100755
index 0000000..bae2bfc
--- /dev/null
+++ b/community-mod/iana-etc/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+mkdir -p "$1/etc"
+cp protocols "$1/etc"
+cp services  "$1/etc"
diff --git a/community-mod/iana-etc/checksums b/community-mod/iana-etc/checksums
new file mode 100644
index 0000000..11e1d73
--- /dev/null
+++ b/community-mod/iana-etc/checksums
@@ -0,0 +1,2 @@
+b67419201045bc5fb1ae6dc3b144435b2c5610a2c7d1746df61e5c9e298ae6a3
+4b8c8274d2d162037702d6700fbb64efbaa472545855864bd608bbe3fa83f61f
diff --git a/community-mod/iana-etc/files/protocols b/community-mod/iana-etc/files/protocols
new file mode 100644
index 0000000..4bf24c4
--- /dev/null
+++ b/community-mod/iana-etc/files/protocols
@@ -0,0 +1,135 @@
+hopopt         0 HOPOPT
+icmp           1 ICMP
+igmp           2 IGMP
+ggp            3 GGP
+ipv4           4 IPv4
+st             5 ST
+tcp            6 TCP
+cbt            7 CBT
+egp            8 EGP
+igp            9 IGP
+bbn-rcc-mon   10 BBN-RCC-MON
+nvp-ii        11 NVP-II
+pup           12 PUP
+emcon         14 EMCON
+xnet          15 XNET
+chaos         16 CHAOS
+udp           17 UDP
+mux           18 MUX
+dcn-meas      19 DCN-MEAS
+hmp           20 HMP
+prm           21 PRM
+xns-idp       22 XNS-IDP
+trunk-1       23 TRUNK-1
+trunk-2       24 TRUNK-2
+leaf-1        25 LEAF-1
+leaf-2        26 LEAF-2
+rdp           27 RDP
+irtp          28 IRTP
+iso-tp4       29 ISO-TP4
+netblt        30 NETBLT
+mfe-nsp       31 MFE-NSP
+merit-inp     32 MERIT-INP
+dccp          33 DCCP
+3pc           34 3PC
+idpr          35 IDPR
+xtp           36 XTP
+ddp           37 DDP
+idpr-cmtp     38 IDPR-CMTP
+tp++          39 TP++
+il            40 IL
+ipv6          41 IPv6
+sdrp          42 SDRP
+ipv6-route    43 IPv6-Route
+ipv6-frag     44 IPv6-Frag
+idrp          45 IDRP
+rsvp          46 RSVP
+gre           47 GRE
+dsr           48 DSR
+bna           49 BNA
+esp           50 ESP
+ah            51 AH
+i-nlsp        52 I-NLSP
+narp          54 NARP
+mobile        55 MOBILE
+tlsp          56 TLSP
+skip          57 SKIP
+ipv6-icmp     58 IPv6-ICMP
+ipv6-nonxt    59 IPv6-NoNxt
+ipv6-opts     60 IPv6-Opts
+cftp          62 CFTP
+sat-expak     64 SAT-EXPAK
+kryptolan     65 KRYPTOLAN
+rvd           66 RVD
+ippc          67 IPPC
+sat-mon       69 SAT-MON
+visa          70 VISA
+ipcv          71 IPCV
+cpnx          72 CPNX
+cphb          73 CPHB
+wsn           74 WSN
+pvp           75 PVP
+br-sat-mon    76 BR-SAT-MON
+sun-nd        77 SUN-ND
+wb-mon        78 WB-MON
+wb-expak      79 WB-EXPAK
+iso-ip        80 ISO-IP
+vmtp          81 VMTP
+secure-vmtp   82 SECURE-VMTP
+vines         83 VINES
+ttp           84 TTP
+iptm          84 IPTM
+nsfnet-igp    85 NSFNET-IGP
+dgp           86 DGP
+tcf           87 TCF
+eigrp         88 EIGRP
+ospfigp       89 OSPFIGP
+sprite-rpc    90 Sprite-RPC
+larp          91 LARP
+mtp           92 MTP
+ax.25         93 AX.25
+ipip          94 IPIP
+scc-sp        96 SCC-SP
+etherip       97 ETHERIP
+encap         98 ENCAP
+gmtp         100 GMTP
+ifmp         101 IFMP
+pnni         102 PNNI
+pim          103 PIM
+aris         104 ARIS
+scps         105 SCPS
+qnx          106 QNX
+a/n          107 A/N
+ipcomp       108 IPComp
+snp          109 SNP
+compaq-peer  110 Compaq-Peer
+ipx-in-ip    111 IPX-in-IP
+vrrp         112 VRRP
+pgm          113 PGM
+l2tp         115 L2TP
+ddx          116 DDX
+iatp         117 IATP
+stp          118 STP
+srp          119 SRP
+uti          120 UTI
+smp          121 SMP
+ptp          123 PTP
+fire         125 FIRE
+crtp         126 CRTP
+crudp        127 CRUDP
+sscopmce     128 SSCOPMCE
+iplt         129 IPLT
+sps          130 SPS
+pipe         131 PIPE
+sctp         132 SCTP
+fc           133 FC
+rsvp-e2e-ignore 134 RSVP-E2E-IGNORE
+udplite      136 UDPLite
+mpls-in-ip   137 MPLS-in-IP
+manet        138 manet
+hip          139 HIP
+shim6        140 Shim6
+wesp         141 WESP
+rohc         142 ROHC
+ethernet     143 Ethernet
+reserved     255 Reserved
diff --git a/community-mod/iana-etc/files/services b/community-mod/iana-etc/files/services
new file mode 100644
index 0000000..70212c8
--- /dev/null
+++ b/community-mod/iana-etc/files/services
@@ -0,0 +1,11436 @@
+tcpmux              1/tcp
+tcpmux              1/udp
+compressnet         2/tcp
+compressnet         2/udp
+compressnet         3/tcp
+compressnet         3/udp
+rje                 5/tcp
+rje                 5/udp
+echo                7/tcp
+echo                7/udp
+discard             9/tcp
+discard             9/udp
+discard             9/sctp
+discard             9/dccp
+systat             11/tcp
+systat             11/udp
+daytime            13/tcp
+daytime            13/udp
+qotd               17/tcp
+qotd               17/udp
+chargen            19/tcp
+chargen            19/udp
+ftp-data           20/tcp
+ftp-data           20/udp
+ftp-data           20/sctp
+ftp                21/tcp
+ftp                21/udp
+ftp                21/sctp
+ssh                22/tcp
+ssh                22/udp
+ssh                22/sctp
+telnet             23/tcp
+telnet             23/udp
+smtp               25/tcp
+smtp               25/udp
+nsw-fe             27/tcp
+nsw-fe             27/udp
+msg-icp            29/tcp
+msg-icp            29/udp
+msg-auth           31/tcp
+msg-auth           31/udp
+dsp                33/tcp
+dsp                33/udp
+time               37/tcp
+time               37/udp
+rap                38/tcp
+rap                38/udp
+rlp                39/tcp
+rlp                39/udp
+graphics           41/tcp
+graphics           41/udp
+name               42/tcp
+name               42/udp
+nameserver         42/tcp
+nameserver         42/udp
+nicname            43/tcp
+nicname            43/udp
+mpm-flags          44/tcp
+mpm-flags          44/udp
+mpm                45/tcp
+mpm                45/udp
+mpm-snd            46/tcp
+mpm-snd            46/udp
+auditd             48/tcp
+auditd             48/udp
+tacacs             49/tcp
+tacacs             49/udp
+re-mail-ck         50/tcp
+re-mail-ck         50/udp
+xns-time           52/tcp
+xns-time           52/udp
+domain             53/tcp
+domain             53/udp
+xns-ch             54/tcp
+xns-ch             54/udp
+isi-gl             55/tcp
+isi-gl             55/udp
+xns-auth           56/tcp
+xns-auth           56/udp
+xns-mail           58/tcp
+xns-mail           58/udp
+acas               62/tcp
+acas               62/udp
+whoispp            63/tcp
+whoispp            63/udp
+covia              64/tcp
+covia              64/udp
+tacacs-ds          65/tcp
+tacacs-ds          65/udp
+sql-net            66/tcp
+sql-net            66/udp
+bootps             67/tcp
+bootps             67/udp
+bootpc             68/tcp
+bootpc             68/udp
+tftp               69/tcp
+tftp               69/udp
+gopher             70/tcp
+gopher             70/udp
+netrjs-1           71/tcp
+netrjs-1           71/udp
+netrjs-2           72/tcp
+netrjs-2           72/udp
+netrjs-3           73/tcp
+netrjs-3           73/udp
+netrjs-4           74/tcp
+netrjs-4           74/udp
+deos               76/tcp
+deos               76/udp
+vettcp             78/tcp
+vettcp             78/udp
+finger             79/tcp
+finger             79/udp
+http               80/tcp
+http               80/udp
+www                80/tcp
+www                80/udp
+www-http           80/tcp
+www-http           80/udp
+http               80/sctp
+xfer               82/tcp
+xfer               82/udp
+mit-ml-dev         83/tcp
+mit-ml-dev         83/udp
+ctf                84/tcp
+ctf                84/udp
+mit-ml-dev         85/tcp
+mit-ml-dev         85/udp
+mfcobol            86/tcp
+mfcobol            86/udp
+kerberos           88/tcp
+kerberos           88/udp
+su-mit-tg          89/tcp
+su-mit-tg          89/udp
+dnsix              90/tcp
+dnsix              90/udp
+mit-dov            91/tcp
+mit-dov            91/udp
+npp                92/tcp
+npp                92/udp
+dcp                93/tcp
+dcp                93/udp
+objcall            94/tcp
+objcall            94/udp
+supdup             95/tcp
+supdup             95/udp
+dixie              96/tcp
+dixie              96/udp
+swift-rvf          97/tcp
+swift-rvf          97/udp
+tacnews            98/tcp
+tacnews            98/udp
+metagram           99/tcp
+metagram           99/udp
+hostname          101/tcp
+hostname          101/udp
+iso-tsap          102/tcp
+iso-tsap          102/udp
+gppitnp           103/tcp
+gppitnp           103/udp
+acr-nema          104/tcp
+acr-nema          104/udp
+cso               105/tcp
+cso               105/udp
+csnet-ns          105/tcp
+csnet-ns          105/udp
+3com-tsmux        106/tcp
+3com-tsmux        106/udp
+rtelnet           107/tcp
+rtelnet           107/udp
+snagas            108/tcp
+snagas            108/udp
+pop2              109/tcp
+pop2              109/udp
+pop3              110/tcp
+pop3              110/udp
+sunrpc            111/tcp
+sunrpc            111/udp
+mcidas            112/tcp
+mcidas            112/udp
+ident             113/tcp
+auth              113/tcp
+auth              113/udp
+sftp              115/tcp
+sftp              115/udp
+ansanotify        116/tcp
+ansanotify        116/udp
+uucp-path         117/tcp
+uucp-path         117/udp
+sqlserv           118/tcp
+sqlserv           118/udp
+nntp              119/tcp
+nntp              119/udp
+cfdptkt           120/tcp
+cfdptkt           120/udp
+erpc              121/tcp
+erpc              121/udp
+smakynet          122/tcp
+smakynet          122/udp
+ntp               123/tcp
+ntp               123/udp
+ansatrader        124/tcp
+ansatrader        124/udp
+locus-map         125/tcp
+locus-map         125/udp
+nxedit            126/tcp
+nxedit            126/udp
+locus-con         127/tcp
+locus-con         127/udp
+gss-xlicen        128/tcp
+gss-xlicen        128/udp
+pwdgen            129/tcp
+pwdgen            129/udp
+cisco-fna         130/tcp
+cisco-fna         130/udp
+cisco-tna         131/tcp
+cisco-tna         131/udp
+cisco-sys         132/tcp
+cisco-sys         132/udp
+statsrv           133/tcp
+statsrv           133/udp
+ingres-net        134/tcp
+ingres-net        134/udp
+epmap             135/tcp
+epmap             135/udp
+profile           136/tcp
+profile           136/udp
+netbios-ns        137/tcp
+netbios-ns        137/udp
+netbios-dgm       138/tcp
+netbios-dgm       138/udp
+netbios-ssn       139/tcp
+netbios-ssn       139/udp
+emfis-data        140/tcp
+emfis-data        140/udp
+emfis-cntl        141/tcp
+emfis-cntl        141/udp
+bl-idm            142/tcp
+bl-idm            142/udp
+imap              143/tcp
+imap              143/udp
+uma               144/tcp
+uma               144/udp
+uaac              145/tcp
+uaac              145/udp
+iso-tp0           146/tcp
+iso-tp0           146/udp
+iso-ip            147/tcp
+iso-ip            147/udp
+jargon            148/tcp
+jargon            148/udp
+aed-512           149/tcp
+aed-512           149/udp
+sql-net           150/tcp
+sql-net           150/udp
+hems              151/tcp
+hems              151/udp
+bftp              152/tcp
+bftp              152/udp
+sgmp              153/tcp
+sgmp              153/udp
+netsc-prod        154/tcp
+netsc-prod        154/udp
+netsc-dev         155/tcp
+netsc-dev         155/udp
+sqlsrv            156/tcp
+sqlsrv            156/udp
+knet-cmp          157/tcp
+knet-cmp          157/udp
+pcmail-srv        158/tcp
+pcmail-srv        158/udp
+nss-routing       159/tcp
+nss-routing       159/udp
+sgmp-traps        160/tcp
+sgmp-traps        160/udp
+snmp              161/tcp
+snmp              161/udp
+snmptrap          162/tcp
+snmptrap          162/udp
+cmip-man          163/tcp
+cmip-man          163/udp
+cmip-agent        164/tcp
+cmip-agent        164/udp
+xns-courier       165/tcp
+xns-courier       165/udp
+s-net             166/tcp
+s-net             166/udp
+namp              167/tcp
+namp              167/udp
+rsvd              168/tcp
+rsvd              168/udp
+send              169/tcp
+send              169/udp
+print-srv         170/tcp
+print-srv         170/udp
+multiplex         171/tcp
+multiplex         171/udp
+cl-1              172/tcp
+cl-1              172/udp
+xyplex-mux        173/tcp
+xyplex-mux        173/udp
+mailq             174/tcp
+mailq             174/udp
+vmnet             175/tcp
+vmnet             175/udp
+genrad-mux        176/tcp
+genrad-mux        176/udp
+xdmcp             177/tcp
+xdmcp             177/udp
+nextstep          178/tcp
+nextstep          178/udp
+bgp               179/tcp
+bgp               179/udp
+bgp               179/sctp
+ris               180/tcp
+ris               180/udp
+unify             181/tcp
+unify             181/udp
+audit             182/tcp
+audit             182/udp
+ocbinder          183/tcp
+ocbinder          183/udp
+ocserver          184/tcp
+ocserver          184/udp
+remote-kis        185/tcp
+remote-kis        185/udp
+kis               186/tcp
+kis               186/udp
+aci               187/tcp
+aci               187/udp
+mumps             188/tcp
+mumps             188/udp
+qft               189/tcp
+qft               189/udp
+gacp              190/tcp
+gacp              190/udp
+prospero          191/tcp
+prospero          191/udp
+osu-nms           192/tcp
+osu-nms           192/udp
+srmp              193/tcp
+srmp              193/udp
+irc               194/tcp
+irc               194/udp
+dn6-nlm-aud       195/tcp
+dn6-nlm-aud       195/udp
+dn6-smm-red       196/tcp
+dn6-smm-red       196/udp
+dls               197/tcp
+dls               197/udp
+dls-mon           198/tcp
+dls-mon           198/udp
+smux              199/tcp
+smux              199/udp
+src               200/tcp
+src               200/udp
+at-rtmp           201/tcp
+at-rtmp           201/udp
+at-nbp            202/tcp
+at-nbp            202/udp
+at-3              203/tcp
+at-3              203/udp
+at-echo           204/tcp
+at-echo           204/udp
+at-5              205/tcp
+at-5              205/udp
+at-zis            206/tcp
+at-zis            206/udp
+at-7              207/tcp
+at-7              207/udp
+at-8              208/tcp
+at-8              208/udp
+qmtp              209/tcp
+qmtp              209/udp
+z39-50            210/tcp
+z39-50            210/udp
+914c-g            211/tcp
+914c-g            211/udp
+anet              212/tcp
+anet              212/udp
+ipx               213/tcp
+ipx               213/udp
+vmpwscs           214/tcp
+vmpwscs           214/udp
+softpc            215/tcp
+softpc            215/udp
+CAIlic            216/tcp
+CAIlic            216/udp
+dbase             217/tcp
+dbase             217/udp
+mpp               218/tcp
+mpp               218/udp
+uarps             219/tcp
+uarps             219/udp
+imap3             220/tcp
+imap3             220/udp
+fln-spx           221/tcp
+fln-spx           221/udp
+rsh-spx           222/tcp
+rsh-spx           222/udp
+cdc               223/tcp
+cdc               223/udp
+masqdialer        224/tcp
+masqdialer        224/udp
+direct            242/tcp
+direct            242/udp
+sur-meas          243/tcp
+sur-meas          243/udp
+inbusiness        244/tcp
+inbusiness        244/udp
+link              245/tcp
+link              245/udp
+dsp3270           246/tcp
+dsp3270           246/udp
+subntbcst-tftp    247/tcp
+subntbcst-tftp    247/udp
+bhfhs             248/tcp
+bhfhs             248/udp
+rap               256/tcp
+rap               256/udp
+set               257/tcp
+set               257/udp
+esro-gen          259/tcp
+esro-gen          259/udp
+openport          260/tcp
+openport          260/udp
+nsiiops           261/tcp
+nsiiops           261/udp
+arcisdms          262/tcp
+arcisdms          262/udp
+hdap              263/tcp
+hdap              263/udp
+bgmp              264/tcp
+bgmp              264/udp
+x-bone-ctl        265/tcp
+x-bone-ctl        265/udp
+sst               266/tcp
+sst               266/udp
+td-service        267/tcp
+td-service        267/udp
+td-replica        268/tcp
+td-replica        268/udp
+manet             269/tcp
+manet             269/udp
+gist              270/udp
+pt-tls            271/tcp
+http-mgmt         280/tcp
+http-mgmt         280/udp
+personal-link     281/tcp
+personal-link     281/udp
+cableport-ax      282/tcp
+cableport-ax      282/udp
+rescap            283/tcp
+rescap            283/udp
+corerjd           284/tcp
+corerjd           284/udp
+fxp               286/tcp
+fxp               286/udp
+k-block           287/tcp
+k-block           287/udp
+novastorbakcup    308/tcp
+novastorbakcup    308/udp
+entrusttime       309/tcp
+entrusttime       309/udp
+bhmds             310/tcp
+bhmds             310/udp
+asip-webadmin     311/tcp
+asip-webadmin     311/udp
+vslmp             312/tcp
+vslmp             312/udp
+magenta-logic     313/tcp
+magenta-logic     313/udp
+opalis-robot      314/tcp
+opalis-robot      314/udp
+dpsi              315/tcp
+dpsi              315/udp
+decauth           316/tcp
+decauth           316/udp
+zannet            317/tcp
+zannet            317/udp
+pkix-timestamp    318/tcp
+pkix-timestamp    318/udp
+ptp-event         319/tcp
+ptp-event         319/udp
+ptp-general       320/tcp
+ptp-general       320/udp
+pip               321/tcp
+pip               321/udp
+rtsps             322/tcp
+rtsps             322/udp
+rpki-rtr          323/tcp
+rpki-rtr-tls      324/tcp
+texar             333/tcp
+texar             333/udp
+pdap              344/tcp
+pdap              344/udp
+pawserv           345/tcp
+pawserv           345/udp
+zserv             346/tcp
+zserv             346/udp
+fatserv           347/tcp
+fatserv           347/udp
+csi-sgwp          348/tcp
+csi-sgwp          348/udp
+mftp              349/tcp
+mftp              349/udp
+matip-type-a      350/tcp
+matip-type-a      350/udp
+matip-type-b      351/tcp
+matip-type-b      351/udp
+bhoetty           351/tcp
+bhoetty           351/udp
+dtag-ste-sb       352/tcp
+dtag-ste-sb       352/udp
+bhoedap4          352/tcp
+bhoedap4          352/udp
+ndsauth           353/tcp
+ndsauth           353/udp
+bh611             354/tcp
+bh611             354/udp
+datex-asn         355/tcp
+datex-asn         355/udp
+cloanto-net-1     356/tcp
+cloanto-net-1     356/udp
+bhevent           357/tcp
+bhevent           357/udp
+shrinkwrap        358/tcp
+shrinkwrap        358/udp
+nsrmp             359/tcp
+nsrmp             359/udp
+scoi2odialog      360/tcp
+scoi2odialog      360/udp
+semantix          361/tcp
+semantix          361/udp
+srssend           362/tcp
+srssend           362/udp
+rsvp-tunnel       363/tcp
+rsvp-tunnel       363/udp
+aurora-cmgr       364/tcp
+aurora-cmgr       364/udp
+dtk               365/tcp
+dtk               365/udp
+odmr              366/tcp
+odmr              366/udp
+mortgageware      367/tcp
+mortgageware      367/udp
+qbikgdp           368/tcp
+qbikgdp           368/udp
+rpc2portmap       369/tcp
+rpc2portmap       369/udp
+codaauth2         370/tcp
+codaauth2         370/udp
+clearcase         371/tcp
+clearcase         371/udp
+ulistproc         372/tcp
+ulistproc         372/udp
+legent-1          373/tcp
+legent-1          373/udp
+legent-2          374/tcp
+legent-2          374/udp
+hassle            375/tcp
+hassle            375/udp
+nip               376/tcp
+nip               376/udp
+tnETOS            377/tcp
+tnETOS            377/udp
+dsETOS            378/tcp
+dsETOS            378/udp
+is99c             379/tcp
+is99c             379/udp
+is99s             380/tcp
+is99s             380/udp
+hp-collector      381/tcp
+hp-collector      381/udp
+hp-managed-node   382/tcp
+hp-managed-node   382/udp
+hp-alarm-mgr      383/tcp
+hp-alarm-mgr      383/udp
+arns              384/tcp
+arns              384/udp
+ibm-app           385/tcp
+ibm-app           385/udp
+asa               386/tcp
+asa               386/udp
+aurp              387/tcp
+aurp              387/udp
+unidata-ldm       388/tcp
+unidata-ldm       388/udp
+ldap              389/tcp
+ldap              389/udp
+uis               390/tcp
+uis               390/udp
+synotics-relay    391/tcp
+synotics-relay    391/udp
+synotics-broker   392/tcp
+synotics-broker   392/udp
+meta5             393/tcp
+meta5             393/udp
+embl-ndt          394/tcp
+embl-ndt          394/udp
+netcp             395/tcp
+netcp             395/udp
+netware-ip        396/tcp
+netware-ip        396/udp
+mptn              397/tcp
+mptn              397/udp
+kryptolan         398/tcp
+kryptolan         398/udp
+iso-tsap-c2       399/tcp
+iso-tsap-c2       399/udp
+osb-sd            400/tcp
+osb-sd            400/udp
+ups               401/tcp
+ups               401/udp
+genie             402/tcp
+genie             402/udp
+decap             403/tcp
+decap             403/udp
+nced              404/tcp
+nced              404/udp
+ncld              405/tcp
+ncld              405/udp
+imsp              406/tcp
+imsp              406/udp
+timbuktu          407/tcp
+timbuktu          407/udp
+prm-sm            408/tcp
+prm-sm            408/udp
+prm-nm            409/tcp
+prm-nm            409/udp
+decladebug        410/tcp
+decladebug        410/udp
+rmt               411/tcp
+rmt               411/udp
+synoptics-trap    412/tcp
+synoptics-trap    412/udp
+smsp              413/tcp
+smsp              413/udp
+infoseek          414/tcp
+infoseek          414/udp
+bnet              415/tcp
+bnet              415/udp
+silverplatter     416/tcp
+silverplatter     416/udp
+onmux             417/tcp
+onmux             417/udp
+hyper-g           418/tcp
+hyper-g           418/udp
+ariel1            419/tcp
+ariel1            419/udp
+smpte             420/tcp
+smpte             420/udp
+ariel2            421/tcp
+ariel2            421/udp
+ariel3            422/tcp
+ariel3            422/udp
+opc-job-start     423/tcp
+opc-job-start     423/udp
+opc-job-track     424/tcp
+opc-job-track     424/udp
+icad-el           425/tcp
+icad-el           425/udp
+smartsdp          426/tcp
+smartsdp          426/udp
+svrloc            427/tcp
+svrloc            427/udp
+ocs-cmu           428/tcp
+ocs-cmu           428/udp
+ocs-amu           429/tcp
+ocs-amu           429/udp
+utmpsd            430/tcp
+utmpsd            430/udp
+utmpcd            431/tcp
+utmpcd            431/udp
+iasd              432/tcp
+iasd              432/udp
+nnsp              433/tcp
+nnsp              433/udp
+mobileip-agent    434/tcp
+mobileip-agent    434/udp
+mobilip-mn        435/tcp
+mobilip-mn        435/udp
+dna-cml           436/tcp
+dna-cml           436/udp
+comscm            437/tcp
+comscm            437/udp
+dsfgw             438/tcp
+dsfgw             438/udp
+dasp              439/tcp
+dasp              439/udp
+sgcp              440/tcp
+sgcp              440/udp
+decvms-sysmgt     441/tcp
+decvms-sysmgt     441/udp
+cvc-hostd         442/tcp
+cvc-hostd         442/udp
+https             443/tcp
+https             443/udp
+https             443/sctp
+snpp              444/tcp
+snpp              444/udp
+microsoft-ds      445/tcp
+microsoft-ds      445/udp
+ddm-rdb           446/tcp
+ddm-rdb           446/udp
+ddm-dfm           447/tcp
+ddm-dfm           447/udp
+ddm-ssl           448/tcp
+ddm-ssl           448/udp
+as-servermap      449/tcp
+as-servermap      449/udp
+tserver           450/tcp
+tserver           450/udp
+sfs-smp-net       451/tcp
+sfs-smp-net       451/udp
+sfs-config        452/tcp
+sfs-config        452/udp
+creativeserver    453/tcp
+creativeserver    453/udp
+contentserver     454/tcp
+contentserver     454/udp
+creativepartnr    455/tcp
+creativepartnr    455/udp
+macon-tcp         456/tcp
+macon-udp         456/udp
+scohelp           457/tcp
+scohelp           457/udp
+appleqtc          458/tcp
+appleqtc          458/udp
+ampr-rcmd         459/tcp
+ampr-rcmd         459/udp
+skronk            460/tcp
+skronk            460/udp
+datasurfsrv       461/tcp
+datasurfsrv       461/udp
+datasurfsrvsec    462/tcp
+datasurfsrvsec    462/udp
+alpes             463/tcp
+alpes             463/udp
+kpasswd           464/tcp
+kpasswd           464/udp
+urd               465/tcp
+submissions       465/tcp
+igmpv3lite        465/udp
+digital-vrc       466/tcp
+digital-vrc       466/udp
+mylex-mapd        467/tcp
+mylex-mapd        467/udp
+photuris          468/tcp
+photuris          468/udp
+rcp               469/tcp
+rcp               469/udp
+scx-proxy         470/tcp
+scx-proxy         470/udp
+mondex            471/tcp
+mondex            471/udp
+ljk-login         472/tcp
+ljk-login         472/udp
+hybrid-pop        473/tcp
+hybrid-pop        473/udp
+tn-tl-w1          474/tcp
+tn-tl-w2          474/udp
+tcpnethaspsrv     475/tcp
+tcpnethaspsrv     475/udp
+tn-tl-fd1         476/tcp
+tn-tl-fd1         476/udp
+ss7ns             477/tcp
+ss7ns             477/udp
+spsc              478/tcp
+spsc              478/udp
+iafserver         479/tcp
+iafserver         479/udp
+iafdbase          480/tcp
+iafdbase          480/udp
+ph                481/tcp
+ph                481/udp
+bgs-nsi           482/tcp
+bgs-nsi           482/udp
+ulpnet            483/tcp
+ulpnet            483/udp
+integra-sme       484/tcp
+integra-sme       484/udp
+powerburst        485/tcp
+powerburst        485/udp
+avian             486/tcp
+avian             486/udp
+saft              487/tcp
+saft              487/udp
+gss-http          488/tcp
+gss-http          488/udp
+nest-protocol     489/tcp
+nest-protocol     489/udp
+micom-pfs         490/tcp
+micom-pfs         490/udp
+go-login          491/tcp
+go-login          491/udp
+ticf-1            492/tcp
+ticf-1            492/udp
+ticf-2            493/tcp
+ticf-2            493/udp
+pov-ray           494/tcp
+pov-ray           494/udp
+intecourier       495/tcp
+intecourier       495/udp
+pim-rp-disc       496/tcp
+pim-rp-disc       496/udp
+retrospect        497/tcp
+retrospect        497/udp
+siam              498/tcp
+siam              498/udp
+iso-ill           499/tcp
+iso-ill           499/udp
+isakmp            500/tcp
+isakmp            500/udp
+stmf              501/tcp
+stmf              501/udp
+mbap              502/tcp
+mbap              502/udp
+intrinsa          503/tcp
+intrinsa          503/udp
+citadel           504/tcp
+citadel           504/udp
+mailbox-lm        505/tcp
+mailbox-lm        505/udp
+ohimsrv           506/tcp
+ohimsrv           506/udp
+crs               507/tcp
+crs               507/udp
+xvttp             508/tcp
+xvttp             508/udp
+snare             509/tcp
+snare             509/udp
+fcp               510/tcp
+fcp               510/udp
+passgo            511/tcp
+passgo            511/udp
+exec              512/tcp
+comsat            512/udp
+biff              512/udp
+login             513/tcp
+who               513/udp
+shell             514/tcp
+syslog            514/udp
+printer           515/tcp
+printer           515/udp
+videotex          516/tcp
+videotex          516/udp
+talk              517/tcp
+talk              517/udp
+ntalk             518/tcp
+ntalk             518/udp
+utime             519/tcp
+utime             519/udp
+efs               520/tcp
+router            520/udp
+ripng             521/tcp
+ripng             521/udp
+ulp               522/tcp
+ulp               522/udp
+ibm-db2           523/tcp
+ibm-db2           523/udp
+ncp               524/tcp
+ncp               524/udp
+timed             525/tcp
+timed             525/udp
+tempo             526/tcp
+tempo             526/udp
+stx               527/tcp
+stx               527/udp
+custix            528/tcp
+custix            528/udp
+irc-serv          529/tcp
+irc-serv          529/udp
+courier           530/tcp
+courier           530/udp
+conference        531/tcp
+conference        531/udp
+netnews           532/tcp
+netnews           532/udp
+netwall           533/tcp
+netwall           533/udp
+windream          534/tcp
+windream          534/udp
+iiop              535/tcp
+iiop              535/udp
+opalis-rdv        536/tcp
+opalis-rdv        536/udp
+nmsp              537/tcp
+nmsp              537/udp
+gdomap            538/tcp
+gdomap            538/udp
+apertus-ldp       539/tcp
+apertus-ldp       539/udp
+uucp              540/tcp
+uucp              540/udp
+uucp-rlogin       541/tcp
+uucp-rlogin       541/udp
+commerce          542/tcp
+commerce          542/udp
+klogin            543/tcp
+klogin            543/udp
+kshell            544/tcp
+kshell            544/udp
+appleqtcsrvr      545/tcp
+appleqtcsrvr      545/udp
+dhcpv6-client     546/tcp
+dhcpv6-client     546/udp
+dhcpv6-server     547/tcp
+dhcpv6-server     547/udp
+afpovertcp        548/tcp
+afpovertcp        548/udp
+idfp              549/tcp
+idfp              549/udp
+new-rwho          550/tcp
+new-rwho          550/udp
+cybercash         551/tcp
+cybercash         551/udp
+devshr-nts        552/tcp
+devshr-nts        552/udp
+pirp              553/tcp
+pirp              553/udp
+rtsp              554/tcp
+rtsp              554/udp
+dsf               555/tcp
+dsf               555/udp
+remotefs          556/tcp
+remotefs          556/udp
+openvms-sysipc    557/tcp
+openvms-sysipc    557/udp
+sdnskmp           558/tcp
+sdnskmp           558/udp
+teedtap           559/tcp
+teedtap           559/udp
+rmonitor          560/tcp
+rmonitor          560/udp
+monitor           561/tcp
+monitor           561/udp
+chshell           562/tcp
+chshell           562/udp
+nntps             563/tcp
+nntps             563/udp
+9pfs              564/tcp
+9pfs              564/udp
+whoami            565/tcp
+whoami            565/udp
+streettalk        566/tcp
+streettalk        566/udp
+banyan-rpc        567/tcp
+banyan-rpc        567/udp
+ms-shuttle        568/tcp
+ms-shuttle        568/udp
+ms-rome           569/tcp
+ms-rome           569/udp
+meter             570/tcp
+meter             570/udp
+meter             571/tcp
+meter             571/udp
+sonar             572/tcp
+sonar             572/udp
+banyan-vip        573/tcp
+banyan-vip        573/udp
+ftp-agent         574/tcp
+ftp-agent         574/udp
+vemmi             575/tcp
+vemmi             575/udp
+ipcd              576/tcp
+ipcd              576/udp
+vnas              577/tcp
+vnas              577/udp
+ipdd              578/tcp
+ipdd              578/udp
+decbsrv           579/tcp
+decbsrv           579/udp
+sntp-heartbeat    580/tcp
+sntp-heartbeat    580/udp
+bdp               581/tcp
+bdp               581/udp
+scc-security      582/tcp
+scc-security      582/udp
+philips-vc        583/tcp
+philips-vc        583/udp
+keyserver         584/tcp
+keyserver         584/udp
+password-chg      586/tcp
+password-chg      586/udp
+submission        587/tcp
+submission        587/udp
+cal               588/tcp
+cal               588/udp
+eyelink           589/tcp
+eyelink           589/udp
+tns-cml           590/tcp
+tns-cml           590/udp
+http-alt          591/tcp
+http-alt          591/udp
+eudora-set        592/tcp
+eudora-set        592/udp
+http-rpc-epmap    593/tcp
+http-rpc-epmap    593/udp
+tpip              594/tcp
+tpip              594/udp
+cab-protocol      595/tcp
+cab-protocol      595/udp
+smsd              596/tcp
+smsd              596/udp
+ptcnameservice    597/tcp
+ptcnameservice    597/udp
+sco-websrvrmg3    598/tcp
+sco-websrvrmg3    598/udp
+acp               599/tcp
+acp               599/udp
+ipcserver         600/tcp
+ipcserver         600/udp
+syslog-conn       601/tcp
+syslog-conn       601/udp
+xmlrpc-beep       602/tcp
+xmlrpc-beep       602/udp
+idxp              603/tcp
+idxp              603/udp
+tunnel            604/tcp
+tunnel            604/udp
+soap-beep         605/tcp
+soap-beep         605/udp
+urm               606/tcp
+urm               606/udp
+nqs               607/tcp
+nqs               607/udp
+sift-uft          608/tcp
+sift-uft          608/udp
+npmp-trap         609/tcp
+npmp-trap         609/udp
+npmp-local        610/tcp
+npmp-local        610/udp
+npmp-gui          611/tcp
+npmp-gui          611/udp
+hmmp-ind          612/tcp
+hmmp-ind          612/udp
+hmmp-op           613/tcp
+hmmp-op           613/udp
+sshell            614/tcp
+sshell            614/udp
+sco-inetmgr       615/tcp
+sco-inetmgr       615/udp
+sco-sysmgr        616/tcp
+sco-sysmgr        616/udp
+sco-dtmgr         617/tcp
+sco-dtmgr         617/udp
+dei-icda          618/tcp
+dei-icda          618/udp
+compaq-evm        619/tcp
+compaq-evm        619/udp
+sco-websrvrmgr    620/tcp
+sco-websrvrmgr    620/udp
+escp-ip           621/tcp
+escp-ip           621/udp
+collaborator      622/tcp
+collaborator      622/udp
+oob-ws-http       623/tcp
+asf-rmcp          623/udp
+cryptoadmin       624/tcp
+cryptoadmin       624/udp
+dec-dlm           625/tcp
+dec-dlm           625/udp
+asia              626/tcp
+asia              626/udp
+passgo-tivoli     627/tcp
+passgo-tivoli     627/udp
+qmqp              628/tcp
+qmqp              628/udp
+3com-amp3         629/tcp
+3com-amp3         629/udp
+rda               630/tcp
+rda               630/udp
+ipp               631/tcp
+ipp               631/udp
+ipps              631/tcp
+bmpp              632/tcp
+bmpp              632/udp
+servstat          633/tcp
+servstat          633/udp
+ginad             634/tcp
+ginad             634/udp
+rlzdbase          635/tcp
+rlzdbase          635/udp
+ldaps             636/tcp
+ldaps             636/udp
+lanserver         637/tcp
+lanserver         637/udp
+mcns-sec          638/tcp
+mcns-sec          638/udp
+msdp              639/tcp
+msdp              639/udp
+entrust-sps       640/tcp
+entrust-sps       640/udp
+repcmd            641/tcp
+repcmd            641/udp
+esro-emsdp        642/tcp
+esro-emsdp        642/udp
+sanity            643/tcp
+sanity            643/udp
+dwr               644/tcp
+dwr               644/udp
+pssc              645/tcp
+pssc              645/udp
+ldp               646/tcp
+ldp               646/udp
+dhcp-failover     647/tcp
+dhcp-failover     647/udp
+rrp               648/tcp
+rrp               648/udp
+cadview-3d        649/tcp
+cadview-3d        649/udp
+obex              650/tcp
+obex              650/udp
+ieee-mms          651/tcp
+ieee-mms          651/udp
+hello-port        652/tcp
+hello-port        652/udp
+repscmd           653/tcp
+repscmd           653/udp
+aodv              654/tcp
+aodv              654/udp
+tinc              655/tcp
+tinc              655/udp
+spmp              656/tcp
+spmp              656/udp
+rmc               657/tcp
+rmc               657/udp
+tenfold           658/tcp
+tenfold           658/udp
+mac-srvr-admin    660/tcp
+mac-srvr-admin    660/udp
+hap               661/tcp
+hap               661/udp
+pftp              662/tcp
+pftp              662/udp
+purenoise         663/tcp
+purenoise         663/udp
+oob-ws-https      664/tcp
+asf-secure-rmcp   664/udp
+sun-dr            665/tcp
+sun-dr            665/udp
+mdqs              666/tcp
+mdqs              666/udp
+doom              666/tcp
+doom              666/udp
+disclose          667/tcp
+disclose          667/udp
+mecomm            668/tcp
+mecomm            668/udp
+meregister        669/tcp
+meregister        669/udp
+vacdsm-sws        670/tcp
+vacdsm-sws        670/udp
+vacdsm-app        671/tcp
+vacdsm-app        671/udp
+vpps-qua          672/tcp
+vpps-qua          672/udp
+cimplex           673/tcp
+cimplex           673/udp
+acap              674/tcp
+acap              674/udp
+dctp              675/tcp
+dctp              675/udp
+vpps-via          676/tcp
+vpps-via          676/udp
+vpp               677/tcp
+vpp               677/udp
+ggf-ncp           678/tcp
+ggf-ncp           678/udp
+mrm               679/tcp
+mrm               679/udp
+entrust-aaas      680/tcp
+entrust-aaas      680/udp
+entrust-aams      681/tcp
+entrust-aams      681/udp
+xfr               682/tcp
+xfr               682/udp
+corba-iiop        683/tcp
+corba-iiop        683/udp
+corba-iiop-ssl    684/tcp
+corba-iiop-ssl    684/udp
+mdc-portmapper    685/tcp
+mdc-portmapper    685/udp
+hcp-wismar        686/tcp
+hcp-wismar        686/udp
+asipregistry      687/tcp
+asipregistry      687/udp
+realm-rusd        688/tcp
+realm-rusd        688/udp
+nmap              689/tcp
+nmap              689/udp
+vatp              690/tcp
+vatp              690/udp
+msexch-routing    691/tcp
+msexch-routing    691/udp
+hyperwave-isp     692/tcp
+hyperwave-isp     692/udp
+connendp          693/tcp
+connendp          693/udp
+ha-cluster        694/tcp
+ha-cluster        694/udp
+ieee-mms-ssl      695/tcp
+ieee-mms-ssl      695/udp
+rushd             696/tcp
+rushd             696/udp
+uuidgen           697/tcp
+uuidgen           697/udp
+olsr              698/tcp
+olsr              698/udp
+accessnetwork     699/tcp
+accessnetwork     699/udp
+epp               700/tcp
+epp               700/udp
+lmp               701/tcp
+lmp               701/udp
+iris-beep         702/tcp
+iris-beep         702/udp
+elcsd             704/tcp
+elcsd             704/udp
+agentx            705/tcp
+agentx            705/udp
+silc              706/tcp
+silc              706/udp
+borland-dsj       707/tcp
+borland-dsj       707/udp
+entrust-kmsh      709/tcp
+entrust-kmsh      709/udp
+entrust-ash       710/tcp
+entrust-ash       710/udp
+cisco-tdp         711/tcp
+cisco-tdp         711/udp
+tbrpf             712/tcp
+tbrpf             712/udp
+iris-xpc          713/tcp
+iris-xpc          713/udp
+iris-xpcs         714/tcp
+iris-xpcs         714/udp
+iris-lwz          715/tcp
+iris-lwz          715/udp
+pana              716/udp
+netviewdm1        729/tcp
+netviewdm1        729/udp
+netviewdm2        730/tcp
+netviewdm2        730/udp
+netviewdm3        731/tcp
+netviewdm3        731/udp
+netgw             741/tcp
+netgw             741/udp
+netrcs            742/tcp
+netrcs            742/udp
+flexlm            744/tcp
+flexlm            744/udp
+fujitsu-dev       747/tcp
+fujitsu-dev       747/udp
+ris-cm            748/tcp
+ris-cm            748/udp
+kerberos-adm      749/tcp
+kerberos-adm      749/udp
+rfile             750/tcp
+loadav            750/udp
+kerberos-iv       750/udp
+pump              751/tcp
+pump              751/udp
+qrh               752/tcp
+qrh               752/udp
+rrh               753/tcp
+rrh               753/udp
+tell              754/tcp
+tell              754/udp
+nlogin            758/tcp
+nlogin            758/udp
+con               759/tcp
+con               759/udp
+ns                760/tcp
+ns                760/udp
+rxe               761/tcp
+rxe               761/udp
+quotad            762/tcp
+quotad            762/udp
+cycleserv         763/tcp
+cycleserv         763/udp
+omserv            764/tcp
+omserv            764/udp
+webster           765/tcp
+webster           765/udp
+phonebook         767/tcp
+phonebook         767/udp
+vid               769/tcp
+vid               769/udp
+cadlock           770/tcp
+cadlock           770/udp
+rtip              771/tcp
+rtip              771/udp
+cycleserv2        772/tcp
+cycleserv2        772/udp
+submit            773/tcp
+notify            773/udp
+rpasswd           774/tcp
+acmaint-dbd       774/udp
+entomb            775/tcp
+acmaint-transd    775/udp
+wpages            776/tcp
+wpages            776/udp
+multiling-http    777/tcp
+multiling-http    777/udp
+wpgs              780/tcp
+wpgs              780/udp
+mdbs-daemon       800/tcp
+mdbs-daemon       800/udp
+device            801/tcp
+device            801/udp
+mbap-s            802/tcp
+mbap-s            802/udp
+fcp-udp           810/tcp
+fcp-udp           810/udp
+itm-mcell-s       828/tcp
+itm-mcell-s       828/udp
+pkix-3-ca-ra      829/tcp
+pkix-3-ca-ra      829/udp
+netconf-ssh       830/tcp
+netconf-ssh       830/udp
+netconf-beep      831/tcp
+netconf-beep      831/udp
+netconfsoaphttp   832/tcp
+netconfsoaphttp   832/udp
+netconfsoapbeep   833/tcp
+netconfsoapbeep   833/udp
+dhcp-failover2    847/tcp
+dhcp-failover2    847/udp
+gdoi              848/tcp
+gdoi              848/udp
+domain-s          853/tcp
+domain-s          853/udp
+dlep              854/tcp
+dlep              854/udp
+iscsi             860/tcp
+iscsi             860/udp
+owamp-control     861/tcp
+owamp-test        861/udp
+twamp-control     862/tcp
+twamp-test        862/udp
+rsync             873/tcp
+rsync             873/udp
+iclcnet-locate    886/tcp
+iclcnet-locate    886/udp
+iclcnet-svinfo    887/tcp
+iclcnet-svinfo    887/udp
+accessbuilder     888/tcp
+accessbuilder     888/udp
+cddbp             888/tcp
+omginitialrefs    900/tcp
+omginitialrefs    900/udp
+smpnameres        901/tcp
+smpnameres        901/udp
+ideafarm-door     902/tcp
+ideafarm-door     902/udp
+ideafarm-panic    903/tcp
+ideafarm-panic    903/udp
+kink              910/tcp
+kink              910/udp
+xact-backup       911/tcp
+xact-backup       911/udp
+apex-mesh         912/tcp
+apex-mesh         912/udp
+apex-edge         913/tcp
+apex-edge         913/udp
+rndc              953/tcp
+ftps-data         989/tcp
+ftps-data         989/udp
+ftps              990/tcp
+ftps              990/udp
+nas               991/tcp
+nas               991/udp
+telnets           992/tcp
+telnets           992/udp
+imaps             993/tcp
+imaps             993/udp
+pop3s             995/tcp
+pop3s             995/udp
+vsinet            996/tcp
+vsinet            996/udp
+maitrd            997/tcp
+maitrd            997/udp
+busboy            998/tcp
+puparp            998/udp
+garcon            999/tcp
+applix            999/udp
+puprouter         999/tcp
+puprouter         999/udp
+cadlock2         1000/tcp
+cadlock2         1000/udp
+webpush          1001/tcp
+surf             1010/tcp
+surf             1010/udp
+exp1             1021/tcp
+exp1             1021/udp
+exp1             1021/sctp
+exp1             1021/dccp
+exp2             1022/tcp
+exp2             1022/udp
+exp2             1022/sctp
+exp2             1022/dccp
+blackjack        1025/tcp
+blackjack        1025/udp
+cap              1026/tcp
+cap              1026/udp
+6a44             1027/udp
+solid-mux        1029/tcp
+solid-mux        1029/udp
+netinfo-local    1033/tcp
+netinfo-local    1033/udp
+activesync       1034/tcp
+activesync       1034/udp
+mxxrlogin        1035/tcp
+mxxrlogin        1035/udp
+nsstp            1036/tcp
+nsstp            1036/udp
+ams              1037/tcp
+ams              1037/udp
+mtqp             1038/tcp
+mtqp             1038/udp
+sbl              1039/tcp
+sbl              1039/udp
+netarx           1040/tcp
+netarx           1040/udp
+danf-ak2         1041/tcp
+danf-ak2         1041/udp
+afrog            1042/tcp
+afrog            1042/udp
+boinc-client     1043/tcp
+boinc-client     1043/udp
+dcutility        1044/tcp
+dcutility        1044/udp
+fpitp            1045/tcp
+fpitp            1045/udp
+wfremotertm      1046/tcp
+wfremotertm      1046/udp
+neod1            1047/tcp
+neod1            1047/udp
+neod2            1048/tcp
+neod2            1048/udp
+td-postman       1049/tcp
+td-postman       1049/udp
+cma              1050/tcp
+cma              1050/udp
+optima-vnet      1051/tcp
+optima-vnet      1051/udp
+ddt              1052/tcp
+ddt              1052/udp
+remote-as        1053/tcp
+remote-as        1053/udp
+brvread          1054/tcp
+brvread          1054/udp
+ansyslmd         1055/tcp
+ansyslmd         1055/udp
+vfo              1056/tcp
+vfo              1056/udp
+startron         1057/tcp
+startron         1057/udp
+nim              1058/tcp
+nim              1058/udp
+nimreg           1059/tcp
+nimreg           1059/udp
+polestar         1060/tcp
+polestar         1060/udp
+kiosk            1061/tcp
+kiosk            1061/udp
+veracity         1062/tcp
+veracity         1062/udp
+kyoceranetdev    1063/tcp
+kyoceranetdev    1063/udp
+jstel            1064/tcp
+jstel            1064/udp
+syscomlan        1065/tcp
+syscomlan        1065/udp
+fpo-fns          1066/tcp
+fpo-fns          1066/udp
+instl-boots      1067/tcp
+instl-boots      1067/udp
+instl-bootc      1068/tcp
+instl-bootc      1068/udp
+cognex-insight   1069/tcp
+cognex-insight   1069/udp
+gmrupdateserv    1070/tcp
+gmrupdateserv    1070/udp
+bsquare-voip     1071/tcp
+bsquare-voip     1071/udp
+cardax           1072/tcp
+cardax           1072/udp
+bridgecontrol    1073/tcp
+bridgecontrol    1073/udp
+warmspotMgmt     1074/tcp
+warmspotMgmt     1074/udp
+rdrmshc          1075/tcp
+rdrmshc          1075/udp
+dab-sti-c        1076/tcp
+dab-sti-c        1076/udp
+imgames          1077/tcp
+imgames          1077/udp
+avocent-proxy    1078/tcp
+avocent-proxy    1078/udp
+asprovatalk      1079/tcp
+asprovatalk      1079/udp
+socks            1080/tcp
+socks            1080/udp
+pvuniwien        1081/tcp
+pvuniwien        1081/udp
+amt-esd-prot     1082/tcp
+amt-esd-prot     1082/udp
+ansoft-lm-1      1083/tcp
+ansoft-lm-1      1083/udp
+ansoft-lm-2      1084/tcp
+ansoft-lm-2      1084/udp
+webobjects       1085/tcp
+webobjects       1085/udp
+cplscrambler-lg  1086/tcp
+cplscrambler-lg  1086/udp
+cplscrambler-in  1087/tcp
+cplscrambler-in  1087/udp
+cplscrambler-al  1088/tcp
+cplscrambler-al  1088/udp
+ff-annunc        1089/tcp
+ff-annunc        1089/udp
+ff-fms           1090/tcp
+ff-fms           1090/udp
+ff-sm            1091/tcp
+ff-sm            1091/udp
+obrpd            1092/tcp
+obrpd            1092/udp
+proofd           1093/tcp
+proofd           1093/udp
+rootd            1094/tcp
+rootd            1094/udp
+nicelink         1095/tcp
+nicelink         1095/udp
+cnrprotocol      1096/tcp
+cnrprotocol      1096/udp
+sunclustermgr    1097/tcp
+sunclustermgr    1097/udp
+rmiactivation    1098/tcp
+rmiactivation    1098/udp
+rmiregistry      1099/tcp
+rmiregistry      1099/udp
+mctp             1100/tcp
+mctp             1100/udp
+pt2-discover     1101/tcp
+pt2-discover     1101/udp
+adobeserver-1    1102/tcp
+adobeserver-1    1102/udp
+adobeserver-2    1103/tcp
+adobeserver-2    1103/udp
+xrl              1104/tcp
+xrl              1104/udp
+ftranhc          1105/tcp
+ftranhc          1105/udp
+isoipsigport-1   1106/tcp
+isoipsigport-1   1106/udp
+isoipsigport-2   1107/tcp
+isoipsigport-2   1107/udp
+ratio-adp        1108/tcp
+ratio-adp        1108/udp
+webadmstart      1110/tcp
+nfsd-keepalive   1110/udp
+lmsocialserver   1111/tcp
+lmsocialserver   1111/udp
+icp              1112/tcp
+icp              1112/udp
+ltp-deepspace    1113/tcp
+ltp-deepspace    1113/udp
+ltp-deepspace    1113/dccp
+mini-sql         1114/tcp
+mini-sql         1114/udp
+ardus-trns       1115/tcp
+ardus-trns       1115/udp
+ardus-cntl       1116/tcp
+ardus-cntl       1116/udp
+ardus-mtrns      1117/tcp
+ardus-mtrns      1117/udp
+sacred           1118/tcp
+sacred           1118/udp
+bnetgame         1119/tcp
+bnetgame         1119/udp
+bnetfile         1120/tcp
+bnetfile         1120/udp
+rmpp             1121/tcp
+rmpp             1121/udp
+availant-mgr     1122/tcp
+availant-mgr     1122/udp
+murray           1123/tcp
+murray           1123/udp
+hpvmmcontrol     1124/tcp
+hpvmmcontrol     1124/udp
+hpvmmagent       1125/tcp
+hpvmmagent       1125/udp
+hpvmmdata        1126/tcp
+hpvmmdata        1126/udp
+kwdb-commn       1127/tcp
+kwdb-commn       1127/udp
+saphostctrl      1128/tcp
+saphostctrl      1128/udp
+saphostctrls     1129/tcp
+saphostctrls     1129/udp
+casp             1130/tcp
+casp             1130/udp
+caspssl          1131/tcp
+caspssl          1131/udp
+kvm-via-ip       1132/tcp
+kvm-via-ip       1132/udp
+dfn              1133/tcp
+dfn              1133/udp
+aplx             1134/tcp
+aplx             1134/udp
+omnivision       1135/tcp
+omnivision       1135/udp
+hhb-gateway      1136/tcp
+hhb-gateway      1136/udp
+trim             1137/tcp
+trim             1137/udp
+encrypted-admin  1138/tcp
+encrypted-admin  1138/udp
+evm              1139/tcp
+evm              1139/udp
+autonoc          1140/tcp
+autonoc          1140/udp
+mxomss           1141/tcp
+mxomss           1141/udp
+edtools          1142/tcp
+edtools          1142/udp
+imyx             1143/tcp
+imyx             1143/udp
+fuscript         1144/tcp
+fuscript         1144/udp
+x9-icue          1145/tcp
+x9-icue          1145/udp
+audit-transfer   1146/tcp
+audit-transfer   1146/udp
+capioverlan      1147/tcp
+capioverlan      1147/udp
+elfiq-repl       1148/tcp
+elfiq-repl       1148/udp
+bvtsonar         1149/tcp
+bvtsonar         1149/udp
+blaze            1150/tcp
+blaze            1150/udp
+unizensus        1151/tcp
+unizensus        1151/udp
+winpoplanmess    1152/tcp
+winpoplanmess    1152/udp
+c1222-acse       1153/tcp
+c1222-acse       1153/udp
+resacommunity    1154/tcp
+resacommunity    1154/udp
+nfa              1155/tcp
+nfa              1155/udp
+iascontrol-oms   1156/tcp
+iascontrol-oms   1156/udp
+iascontrol       1157/tcp
+iascontrol       1157/udp
+dbcontrol-oms    1158/tcp
+dbcontrol-oms    1158/udp
+oracle-oms       1159/tcp
+oracle-oms       1159/udp
+olsv             1160/tcp
+olsv             1160/udp
+health-polling   1161/tcp
+health-polling   1161/udp
+health-trap      1162/tcp
+health-trap      1162/udp
+sddp             1163/tcp
+sddp             1163/udp
+qsm-proxy        1164/tcp
+qsm-proxy        1164/udp
+qsm-gui          1165/tcp
+qsm-gui          1165/udp
+qsm-remote       1166/tcp
+qsm-remote       1166/udp
+cisco-ipsla      1167/tcp
+cisco-ipsla      1167/udp
+cisco-ipsla      1167/sctp
+vchat            1168/tcp
+vchat            1168/udp
+tripwire         1169/tcp
+tripwire         1169/udp
+atc-lm           1170/tcp
+atc-lm           1170/udp
+atc-appserver    1171/tcp
+atc-appserver    1171/udp
+dnap             1172/tcp
+dnap             1172/udp
+d-cinema-rrp     1173/tcp
+d-cinema-rrp     1173/udp
+fnet-remote-ui   1174/tcp
+fnet-remote-ui   1174/udp
+dossier          1175/tcp
+dossier          1175/udp
+indigo-server    1176/tcp
+indigo-server    1176/udp
+dkmessenger      1177/tcp
+dkmessenger      1177/udp
+sgi-storman      1178/tcp
+sgi-storman      1178/udp
+b2n              1179/tcp
+b2n              1179/udp
+mc-client        1180/tcp
+mc-client        1180/udp
+3comnetman       1181/tcp
+3comnetman       1181/udp
+accelenet        1182/tcp
+accelenet-data   1182/udp
+llsurfup-http    1183/tcp
+llsurfup-http    1183/udp
+llsurfup-https   1184/tcp
+llsurfup-https   1184/udp
+catchpole        1185/tcp
+catchpole        1185/udp
+mysql-cluster    1186/tcp
+mysql-cluster    1186/udp
+alias            1187/tcp
+alias            1187/udp
+hp-webadmin      1188/tcp
+hp-webadmin      1188/udp
+unet             1189/tcp
+unet             1189/udp
+commlinx-avl     1190/tcp
+commlinx-avl     1190/udp
+gpfs             1191/tcp
+gpfs             1191/udp
+caids-sensor     1192/tcp
+caids-sensor     1192/udp
+fiveacross       1193/tcp
+fiveacross       1193/udp
+openvpn          1194/tcp
+openvpn          1194/udp
+rsf-1            1195/tcp
+rsf-1            1195/udp
+netmagic         1196/tcp
+netmagic         1196/udp
+carrius-rshell   1197/tcp
+carrius-rshell   1197/udp
+cajo-discovery   1198/tcp
+cajo-discovery   1198/udp
+dmidi            1199/tcp
+dmidi            1199/udp
+scol             1200/tcp
+scol             1200/udp
+nucleus-sand     1201/tcp
+nucleus-sand     1201/udp
+caiccipc         1202/tcp
+caiccipc         1202/udp
+ssslic-mgr       1203/tcp
+ssslic-mgr       1203/udp
+ssslog-mgr       1204/tcp
+ssslog-mgr       1204/udp
+accord-mgc       1205/tcp
+accord-mgc       1205/udp
+anthony-data     1206/tcp
+anthony-data     1206/udp
+metasage         1207/tcp
+metasage         1207/udp
+seagull-ais      1208/tcp
+seagull-ais      1208/udp
+ipcd3            1209/tcp
+ipcd3            1209/udp
+eoss             1210/tcp
+eoss             1210/udp
+groove-dpp       1211/tcp
+groove-dpp       1211/udp
+lupa             1212/tcp
+lupa             1212/udp
+mpc-lifenet      1213/tcp
+mpc-lifenet      1213/udp
+kazaa            1214/tcp
+kazaa            1214/udp
+scanstat-1       1215/tcp
+scanstat-1       1215/udp
+etebac5          1216/tcp
+etebac5          1216/udp
+hpss-ndapi       1217/tcp
+hpss-ndapi       1217/udp
+aeroflight-ads   1218/tcp
+aeroflight-ads   1218/udp
+aeroflight-ret   1219/tcp
+aeroflight-ret   1219/udp
+qt-serveradmin   1220/tcp
+qt-serveradmin   1220/udp
+sweetware-apps   1221/tcp
+sweetware-apps   1221/udp
+nerv             1222/tcp
+nerv             1222/udp
+tgp              1223/tcp
+tgp              1223/udp
+vpnz             1224/tcp
+vpnz             1224/udp
+slinkysearch     1225/tcp
+slinkysearch     1225/udp
+stgxfws          1226/tcp
+stgxfws          1226/udp
+dns2go           1227/tcp
+dns2go           1227/udp
+florence         1228/tcp
+florence         1228/udp
+zented           1229/tcp
+zented           1229/udp
+periscope        1230/tcp
+periscope        1230/udp
+menandmice-lpm   1231/tcp
+menandmice-lpm   1231/udp
+first-defense    1232/tcp
+first-defense    1232/udp
+univ-appserver   1233/tcp
+univ-appserver   1233/udp
+search-agent     1234/tcp
+search-agent     1234/udp
+mosaicsyssvc1    1235/tcp
+mosaicsyssvc1    1235/udp
+bvcontrol        1236/tcp
+bvcontrol        1236/udp
+tsdos390         1237/tcp
+tsdos390         1237/udp
+hacl-qs          1238/tcp
+hacl-qs          1238/udp
+nmsd             1239/tcp
+nmsd             1239/udp
+instantia        1240/tcp
+instantia        1240/udp
+nessus           1241/tcp
+nessus           1241/udp
+nmasoverip       1242/tcp
+nmasoverip       1242/udp
+serialgateway    1243/tcp
+serialgateway    1243/udp
+isbconference1   1244/tcp
+isbconference1   1244/udp
+isbconference2   1245/tcp
+isbconference2   1245/udp
+payrouter        1246/tcp
+payrouter        1246/udp
+visionpyramid    1247/tcp
+visionpyramid    1247/udp
+hermes           1248/tcp
+hermes           1248/udp
+mesavistaco      1249/tcp
+mesavistaco      1249/udp
+swldy-sias       1250/tcp
+swldy-sias       1250/udp
+servergraph      1251/tcp
+servergraph      1251/udp
+bspne-pcc        1252/tcp
+bspne-pcc        1252/udp
+q55-pcc          1253/tcp
+q55-pcc          1253/udp
+de-noc           1254/tcp
+de-noc           1254/udp
+de-cache-query   1255/tcp
+de-cache-query   1255/udp
+de-server        1256/tcp
+de-server        1256/udp
+shockwave2       1257/tcp
+shockwave2       1257/udp
+opennl           1258/tcp
+opennl           1258/udp
+opennl-voice     1259/tcp
+opennl-voice     1259/udp
+ibm-ssd          1260/tcp
+ibm-ssd          1260/udp
+mpshrsv          1261/tcp
+mpshrsv          1261/udp
+qnts-orb         1262/tcp
+qnts-orb         1262/udp
+dka              1263/tcp
+dka              1263/udp
+prat             1264/tcp
+prat             1264/udp
+dssiapi          1265/tcp
+dssiapi          1265/udp
+dellpwrappks     1266/tcp
+dellpwrappks     1266/udp
+epc              1267/tcp
+epc              1267/udp
+propel-msgsys    1268/tcp
+propel-msgsys    1268/udp
+watilapp         1269/tcp
+watilapp         1269/udp
+opsmgr           1270/tcp
+opsmgr           1270/udp
+excw             1271/tcp
+excw             1271/udp
+cspmlockmgr      1272/tcp
+cspmlockmgr      1272/udp
+emc-gateway      1273/tcp
+emc-gateway      1273/udp
+t1distproc       1274/tcp
+t1distproc       1274/udp
+ivcollector      1275/tcp
+ivcollector      1275/udp
+miva-mqs         1277/tcp
+miva-mqs         1277/udp
+dellwebadmin-1   1278/tcp
+dellwebadmin-1   1278/udp
+dellwebadmin-2   1279/tcp
+dellwebadmin-2   1279/udp
+pictrography     1280/tcp
+pictrography     1280/udp
+healthd          1281/tcp
+healthd          1281/udp
+emperion         1282/tcp
+emperion         1282/udp
+productinfo      1283/tcp
+productinfo      1283/udp
+iee-qfx          1284/tcp
+iee-qfx          1284/udp
+neoiface         1285/tcp
+neoiface         1285/udp
+netuitive        1286/tcp
+netuitive        1286/udp
+routematch       1287/tcp
+routematch       1287/udp
+navbuddy         1288/tcp
+navbuddy         1288/udp
+jwalkserver      1289/tcp
+jwalkserver      1289/udp
+winjaserver      1290/tcp
+winjaserver      1290/udp
+seagulllms       1291/tcp
+seagulllms       1291/udp
+dsdn             1292/tcp
+dsdn             1292/udp
+pkt-krb-ipsec    1293/tcp
+pkt-krb-ipsec    1293/udp
+cmmdriver        1294/tcp
+cmmdriver        1294/udp
+ehtp             1295/tcp
+ehtp             1295/udp
+dproxy           1296/tcp
+dproxy           1296/udp
+sdproxy          1297/tcp
+sdproxy          1297/udp
+lpcp             1298/tcp
+lpcp             1298/udp
+hp-sci           1299/tcp
+hp-sci           1299/udp
+h323hostcallsc   1300/tcp
+h323hostcallsc   1300/udp
+sftsrv           1303/tcp
+sftsrv           1303/udp
+boomerang        1304/tcp
+boomerang        1304/udp
+pe-mike          1305/tcp
+pe-mike          1305/udp
+re-conn-proto    1306/tcp
+re-conn-proto    1306/udp
+pacmand          1307/tcp
+pacmand          1307/udp
+odsi             1308/tcp
+odsi             1308/udp
+jtag-server      1309/tcp
+jtag-server      1309/udp
+husky            1310/tcp
+husky            1310/udp
+rxmon            1311/tcp
+rxmon            1311/udp
+sti-envision     1312/tcp
+sti-envision     1312/udp
+bmc-patroldb     1313/tcp
+bmc-patroldb     1313/udp
+pdps             1314/tcp
+pdps             1314/udp
+els              1315/tcp
+els              1315/udp
+exbit-escp       1316/tcp
+exbit-escp       1316/udp
+vrts-ipcserver   1317/tcp
+vrts-ipcserver   1317/udp
+krb5gatekeeper   1318/tcp
+krb5gatekeeper   1318/udp
+amx-icsp         1319/tcp
+amx-icsp         1319/udp
+amx-axbnet       1320/tcp
+amx-axbnet       1320/udp
+pip              1321/tcp
+pip              1321/udp
+novation         1322/tcp
+novation         1322/udp
+brcd             1323/tcp
+brcd             1323/udp
+delta-mcp        1324/tcp
+delta-mcp        1324/udp
+dx-instrument    1325/tcp
+dx-instrument    1325/udp
+wimsic           1326/tcp
+wimsic           1326/udp
+ultrex           1327/tcp
+ultrex           1327/udp
+ewall            1328/tcp
+ewall            1328/udp
+netdb-export     1329/tcp
+netdb-export     1329/udp
+streetperfect    1330/tcp
+streetperfect    1330/udp
+intersan         1331/tcp
+intersan         1331/udp
+pcia-rxp-b       1332/tcp
+pcia-rxp-b       1332/udp
+passwrd-policy   1333/tcp
+passwrd-policy   1333/udp
+writesrv         1334/tcp
+writesrv         1334/udp
+digital-notary   1335/tcp
+digital-notary   1335/udp
+ischat           1336/tcp
+ischat           1336/udp
+menandmice-dns   1337/tcp
+menandmice-dns   1337/udp
+wmc-log-svc      1338/tcp
+wmc-log-svc      1338/udp
+kjtsiteserver    1339/tcp
+kjtsiteserver    1339/udp
+naap             1340/tcp
+naap             1340/udp
+qubes            1341/tcp
+qubes            1341/udp
+esbroker         1342/tcp
+esbroker         1342/udp
+re101            1343/tcp
+re101            1343/udp
+icap             1344/tcp
+icap             1344/udp
+vpjp             1345/tcp
+vpjp             1345/udp
+alta-ana-lm      1346/tcp
+alta-ana-lm      1346/udp
+bbn-mmc          1347/tcp
+bbn-mmc          1347/udp
+bbn-mmx          1348/tcp
+bbn-mmx          1348/udp
+sbook            1349/tcp
+sbook            1349/udp
+editbench        1350/tcp
+editbench        1350/udp
+equationbuilder  1351/tcp
+equationbuilder  1351/udp
+lotusnote        1352/tcp
+lotusnote        1352/udp
+relief           1353/tcp
+relief           1353/udp
+XSIP-network     1354/tcp
+XSIP-network     1354/udp
+intuitive-edge   1355/tcp
+intuitive-edge   1355/udp
+cuillamartin     1356/tcp
+cuillamartin     1356/udp
+pegboard         1357/tcp
+pegboard         1357/udp
+connlcli         1358/tcp
+connlcli         1358/udp
+ftsrv            1359/tcp
+ftsrv            1359/udp
+mimer            1360/tcp
+mimer            1360/udp
+linx             1361/tcp
+linx             1361/udp
+timeflies        1362/tcp
+timeflies        1362/udp
+ndm-requester    1363/tcp
+ndm-requester    1363/udp
+ndm-server       1364/tcp
+ndm-server       1364/udp
+adapt-sna        1365/tcp
+adapt-sna        1365/udp
+netware-csp      1366/tcp
+netware-csp      1366/udp
+dcs              1367/tcp
+dcs              1367/udp
+screencast       1368/tcp
+screencast       1368/udp
+gv-us            1369/tcp
+gv-us            1369/udp
+us-gv            1370/tcp
+us-gv            1370/udp
+fc-cli           1371/tcp
+fc-cli           1371/udp
+fc-ser           1372/tcp
+fc-ser           1372/udp
+chromagrafx      1373/tcp
+chromagrafx      1373/udp
+molly            1374/tcp
+molly            1374/udp
+bytex            1375/tcp
+bytex            1375/udp
+ibm-pps          1376/tcp
+ibm-pps          1376/udp
+cichlid          1377/tcp
+cichlid          1377/udp
+elan             1378/tcp
+elan             1378/udp
+dbreporter       1379/tcp
+dbreporter       1379/udp
+telesis-licman   1380/tcp
+telesis-licman   1380/udp
+apple-licman     1381/tcp
+apple-licman     1381/udp
+udt-os           1382/tcp
+udt-os           1382/udp
+gwha             1383/tcp
+gwha             1383/udp
+os-licman        1384/tcp
+os-licman        1384/udp
+atex-elmd        1385/tcp
+atex-elmd        1385/udp
+checksum         1386/tcp
+checksum         1386/udp
+cadsi-lm         1387/tcp
+cadsi-lm         1387/udp
+objective-dbc    1388/tcp
+objective-dbc    1388/udp
+iclpv-dm         1389/tcp
+iclpv-dm         1389/udp
+iclpv-sc         1390/tcp
+iclpv-sc         1390/udp
+iclpv-sas        1391/tcp
+iclpv-sas        1391/udp
+iclpv-pm         1392/tcp
+iclpv-pm         1392/udp
+iclpv-nls        1393/tcp
+iclpv-nls        1393/udp
+iclpv-nlc        1394/tcp
+iclpv-nlc        1394/udp
+iclpv-wsm        1395/tcp
+iclpv-wsm        1395/udp
+dvl-activemail   1396/tcp
+dvl-activemail   1396/udp
+audio-activmail  1397/tcp
+audio-activmail  1397/udp
+video-activmail  1398/tcp
+video-activmail  1398/udp
+cadkey-licman    1399/tcp
+cadkey-licman    1399/udp
+cadkey-tablet    1400/tcp
+cadkey-tablet    1400/udp
+goldleaf-licman  1401/tcp
+goldleaf-licman  1401/udp
+prm-sm-np        1402/tcp
+prm-sm-np        1402/udp
+prm-nm-np        1403/tcp
+prm-nm-np        1403/udp
+igi-lm           1404/tcp
+igi-lm           1404/udp
+ibm-res          1405/tcp
+ibm-res          1405/udp
+netlabs-lm       1406/tcp
+netlabs-lm       1406/udp
+tibet-server     1407/tcp
+sophia-lm        1408/tcp
+sophia-lm        1408/udp
+here-lm          1409/tcp
+here-lm          1409/udp
+hiq              1410/tcp
+hiq              1410/udp
+af               1411/tcp
+af               1411/udp
+innosys          1412/tcp
+innosys          1412/udp
+innosys-acl      1413/tcp
+innosys-acl      1413/udp
+ibm-mqseries     1414/tcp
+ibm-mqseries     1414/udp
+dbstar           1415/tcp
+dbstar           1415/udp
+novell-lu6-2     1416/tcp
+novell-lu6-2     1416/udp
+timbuktu-srv1    1417/tcp
+timbuktu-srv1    1417/udp
+timbuktu-srv2    1418/tcp
+timbuktu-srv2    1418/udp
+timbuktu-srv3    1419/tcp
+timbuktu-srv3    1419/udp
+timbuktu-srv4    1420/tcp
+timbuktu-srv4    1420/udp
+gandalf-lm       1421/tcp
+gandalf-lm       1421/udp
+autodesk-lm      1422/tcp
+autodesk-lm      1422/udp
+essbase          1423/tcp
+essbase          1423/udp
+hybrid           1424/tcp
+hybrid           1424/udp
+zion-lm          1425/tcp
+zion-lm          1425/udp
+sais             1426/tcp
+sais             1426/udp
+mloadd           1427/tcp
+mloadd           1427/udp
+informatik-lm    1428/tcp
+informatik-lm    1428/udp
+nms              1429/tcp
+nms              1429/udp
+tpdu             1430/tcp
+tpdu             1430/udp
+rgtp             1431/tcp
+rgtp             1431/udp
+blueberry-lm     1432/tcp
+blueberry-lm     1432/udp
+ms-sql-s         1433/tcp
+ms-sql-s         1433/udp
+ms-sql-m         1434/tcp
+ms-sql-m         1434/udp
+ibm-cics         1435/tcp
+ibm-cics         1435/udp
+saism            1436/tcp
+saism            1436/udp
+tabula           1437/tcp
+tabula           1437/udp
+eicon-server     1438/tcp
+eicon-server     1438/udp
+eicon-x25        1439/tcp
+eicon-x25        1439/udp
+eicon-slp        1440/tcp
+eicon-slp        1440/udp
+cadis-1          1441/tcp
+cadis-1          1441/udp
+cadis-2          1442/tcp
+cadis-2          1442/udp
+ies-lm           1443/tcp
+ies-lm           1443/udp
+marcam-lm        1444/tcp
+marcam-lm        1444/udp
+proxima-lm       1445/tcp
+proxima-lm       1445/udp
+ora-lm           1446/tcp
+ora-lm           1446/udp
+apri-lm          1447/tcp
+apri-lm          1447/udp
+oc-lm            1448/tcp
+oc-lm            1448/udp
+peport           1449/tcp
+peport           1449/udp
+dwf              1450/tcp
+dwf              1450/udp
+infoman          1451/tcp
+infoman          1451/udp
+gtegsc-lm        1452/tcp
+gtegsc-lm        1452/udp
+genie-lm         1453/tcp
+genie-lm         1453/udp
+interhdl-elmd    1454/tcp
+interhdl-elmd    1454/udp
+esl-lm           1455/tcp
+esl-lm           1455/udp
+dca              1456/tcp
+dca              1456/udp
+valisys-lm       1457/tcp
+valisys-lm       1457/udp
+nrcabq-lm        1458/tcp
+nrcabq-lm        1458/udp
+proshare1        1459/tcp
+proshare1        1459/udp
+proshare2        1460/tcp
+proshare2        1460/udp
+ibm-wrless-lan   1461/tcp
+ibm-wrless-lan   1461/udp
+world-lm         1462/tcp
+world-lm         1462/udp
+nucleus          1463/tcp
+nucleus          1463/udp
+msl-lmd          1464/tcp
+msl-lmd          1464/udp
+pipes            1465/tcp
+pipes            1465/udp
+oceansoft-lm     1466/tcp
+oceansoft-lm     1466/udp
+csdmbase         1467/tcp
+csdmbase         1467/udp
+csdm             1468/tcp
+csdm             1468/udp
+aal-lm           1469/tcp
+aal-lm           1469/udp
+uaiact           1470/tcp
+uaiact           1470/udp
+csdmbase         1471/tcp
+csdmbase         1471/udp
+csdm             1472/tcp
+csdm             1472/udp
+openmath         1473/tcp
+openmath         1473/udp
+telefinder       1474/tcp
+telefinder       1474/udp
+taligent-lm      1475/tcp
+taligent-lm      1475/udp
+clvm-cfg         1476/tcp
+clvm-cfg         1476/udp
+ms-sna-server    1477/tcp
+ms-sna-server    1477/udp
+ms-sna-base      1478/tcp
+ms-sna-base      1478/udp
+dberegister      1479/tcp
+dberegister      1479/udp
+pacerforum       1480/tcp
+pacerforum       1480/udp
+airs             1481/tcp
+airs             1481/udp
+miteksys-lm      1482/tcp
+miteksys-lm      1482/udp
+afs              1483/tcp
+afs              1483/udp
+confluent        1484/tcp
+confluent        1484/udp
+lansource        1485/tcp
+lansource        1485/udp
+nms-topo-serv    1486/tcp
+nms-topo-serv    1486/udp
+localinfosrvr    1487/tcp
+localinfosrvr    1487/udp
+docstor          1488/tcp
+docstor          1488/udp
+dmdocbroker      1489/tcp
+dmdocbroker      1489/udp
+insitu-conf      1490/tcp
+insitu-conf      1490/udp
+stone-design-1   1492/tcp
+stone-design-1   1492/udp
+netmap-lm        1493/tcp
+netmap-lm        1493/udp
+ica              1494/tcp
+ica              1494/udp
+cvc              1495/tcp
+cvc              1495/udp
+liberty-lm       1496/tcp
+liberty-lm       1496/udp
+rfx-lm           1497/tcp
+rfx-lm           1497/udp
+sybase-sqlany    1498/tcp
+sybase-sqlany    1498/udp
+fhc              1499/tcp
+fhc              1499/udp
+vlsi-lm          1500/tcp
+vlsi-lm          1500/udp
+saiscm           1501/tcp
+saiscm           1501/udp
+shivadiscovery   1502/tcp
+shivadiscovery   1502/udp
+imtc-mcs         1503/tcp
+imtc-mcs         1503/udp
+evb-elm          1504/tcp
+evb-elm          1504/udp
+funkproxy        1505/tcp
+funkproxy        1505/udp
+utcd             1506/tcp
+utcd             1506/udp
+symplex          1507/tcp
+symplex          1507/udp
+diagmond         1508/tcp
+diagmond         1508/udp
+robcad-lm        1509/tcp
+robcad-lm        1509/udp
+mvx-lm           1510/tcp
+mvx-lm           1510/udp
+3l-l1            1511/tcp
+3l-l1            1511/udp
+wins             1512/tcp
+wins             1512/udp
+fujitsu-dtc      1513/tcp
+fujitsu-dtc      1513/udp
+fujitsu-dtcns    1514/tcp
+fujitsu-dtcns    1514/udp
+ifor-protocol    1515/tcp
+ifor-protocol    1515/udp
+vpad             1516/tcp
+vpad             1516/udp
+vpac             1517/tcp
+vpac             1517/udp
+vpvd             1518/tcp
+vpvd             1518/udp
+vpvc             1519/tcp
+vpvc             1519/udp
+atm-zip-office   1520/tcp
+atm-zip-office   1520/udp
+ncube-lm         1521/tcp
+ncube-lm         1521/udp
+ricardo-lm       1522/tcp
+ricardo-lm       1522/udp
+cichild-lm       1523/tcp
+cichild-lm       1523/udp
+ingreslock       1524/tcp
+ingreslock       1524/udp
+orasrv           1525/tcp
+orasrv           1525/udp
+prospero-np      1525/tcp
+prospero-np      1525/udp
+pdap-np          1526/tcp
+pdap-np          1526/udp
+tlisrv           1527/tcp
+tlisrv           1527/udp
+ngr-t            1528/udp
+coauthor         1529/tcp
+coauthor         1529/udp
+rap-service      1530/tcp
+rap-service      1530/udp
+rap-listen       1531/tcp
+rap-listen       1531/udp
+miroconnect      1532/tcp
+miroconnect      1532/udp
+virtual-places   1533/tcp
+virtual-places   1533/udp
+micromuse-lm     1534/tcp
+micromuse-lm     1534/udp
+ampr-info        1535/tcp
+ampr-info        1535/udp
+ampr-inter       1536/tcp
+ampr-inter       1536/udp
+sdsc-lm          1537/tcp
+sdsc-lm          1537/udp
+3ds-lm           1538/tcp
+3ds-lm           1538/udp
+intellistor-lm   1539/tcp
+intellistor-lm   1539/udp
+rds              1540/tcp
+rds              1540/udp
+rds2             1541/tcp
+rds2             1541/udp
+gridgen-elmd     1542/tcp
+gridgen-elmd     1542/udp
+simba-cs         1543/tcp
+simba-cs         1543/udp
+aspeclmd         1544/tcp
+aspeclmd         1544/udp
+vistium-share    1545/tcp
+vistium-share    1545/udp
+abbaccuray       1546/tcp
+abbaccuray       1546/udp
+laplink          1547/tcp
+laplink          1547/udp
+axon-lm          1548/tcp
+axon-lm          1548/udp
+shivahose        1549/tcp
+shivasound       1549/udp
+3m-image-lm      1550/tcp
+3m-image-lm      1550/udp
+hecmtl-db        1551/tcp
+hecmtl-db        1551/udp
+pciarray         1552/tcp
+pciarray         1552/udp
+sna-cs           1553/tcp
+sna-cs           1553/udp
+caci-lm          1554/tcp
+caci-lm          1554/udp
+livelan          1555/tcp
+livelan          1555/udp
+veritas-pbx      1556/tcp
+veritas-pbx      1556/udp
+arbortext-lm     1557/tcp
+arbortext-lm     1557/udp
+xingmpeg         1558/tcp
+xingmpeg         1558/udp
+web2host         1559/tcp
+web2host         1559/udp
+asci-val         1560/tcp
+asci-val         1560/udp
+facilityview     1561/tcp
+facilityview     1561/udp
+pconnectmgr      1562/tcp
+pconnectmgr      1562/udp
+cadabra-lm       1563/tcp
+cadabra-lm       1563/udp
+pay-per-view     1564/tcp
+pay-per-view     1564/udp
+winddlb          1565/tcp
+winddlb          1565/udp
+corelvideo       1566/tcp
+corelvideo       1566/udp
+jlicelmd         1567/tcp
+jlicelmd         1567/udp
+tsspmap          1568/tcp
+tsspmap          1568/udp
+ets              1569/tcp
+ets              1569/udp
+orbixd           1570/tcp
+orbixd           1570/udp
+rdb-dbs-disp     1571/tcp
+rdb-dbs-disp     1571/udp
+chip-lm          1572/tcp
+chip-lm          1572/udp
+itscomm-ns       1573/tcp
+itscomm-ns       1573/udp
+mvel-lm          1574/tcp
+mvel-lm          1574/udp
+oraclenames      1575/tcp
+oraclenames      1575/udp
+moldflow-lm      1576/tcp
+moldflow-lm      1576/udp
+hypercube-lm     1577/tcp
+hypercube-lm     1577/udp
+jacobus-lm       1578/tcp
+jacobus-lm       1578/udp
+ioc-sea-lm       1579/tcp
+ioc-sea-lm       1579/udp
+tn-tl-r1         1580/tcp
+tn-tl-r2         1580/udp
+mil-2045-47001   1581/tcp
+mil-2045-47001   1581/udp
+msims            1582/tcp
+msims            1582/udp
+simbaexpress     1583/tcp
+simbaexpress     1583/udp
+tn-tl-fd2        1584/tcp
+tn-tl-fd2        1584/udp
+intv             1585/tcp
+intv             1585/udp
+ibm-abtact       1586/tcp
+ibm-abtact       1586/udp
+pra-elmd         1587/tcp
+pra-elmd         1587/udp
+triquest-lm      1588/tcp
+triquest-lm      1588/udp
+vqp              1589/tcp
+vqp              1589/udp
+gemini-lm        1590/tcp
+gemini-lm        1590/udp
+ncpm-pm          1591/tcp
+ncpm-pm          1591/udp
+commonspace      1592/tcp
+commonspace      1592/udp
+mainsoft-lm      1593/tcp
+mainsoft-lm      1593/udp
+sixtrak          1594/tcp
+sixtrak          1594/udp
+radio            1595/tcp
+radio            1595/udp
+radio-sm         1596/tcp
+radio-bc         1596/udp
+orbplus-iiop     1597/tcp
+orbplus-iiop     1597/udp
+picknfs          1598/tcp
+picknfs          1598/udp
+simbaservices    1599/tcp
+simbaservices    1599/udp
+issd             1600/tcp
+issd             1600/udp
+aas              1601/tcp
+aas              1601/udp
+inspect          1602/tcp
+inspect          1602/udp
+picodbc          1603/tcp
+picodbc          1603/udp
+icabrowser       1604/tcp
+icabrowser       1604/udp
+slp              1605/tcp
+slp              1605/udp
+slm-api          1606/tcp
+slm-api          1606/udp
+stt              1607/tcp
+stt              1607/udp
+smart-lm         1608/tcp
+smart-lm         1608/udp
+isysg-lm         1609/tcp
+isysg-lm         1609/udp
+taurus-wh        1610/tcp
+taurus-wh        1610/udp
+ill              1611/tcp
+ill              1611/udp
+netbill-trans    1612/tcp
+netbill-trans    1612/udp
+netbill-keyrep   1613/tcp
+netbill-keyrep   1613/udp
+netbill-cred     1614/tcp
+netbill-cred     1614/udp
+netbill-auth     1615/tcp
+netbill-auth     1615/udp
+netbill-prod     1616/tcp
+netbill-prod     1616/udp
+nimrod-agent     1617/tcp
+nimrod-agent     1617/udp
+skytelnet        1618/tcp
+skytelnet        1618/udp
+xs-openstorage   1619/tcp
+xs-openstorage   1619/udp
+faxportwinport   1620/tcp
+faxportwinport   1620/udp
+softdataphone    1621/tcp
+softdataphone    1621/udp
+ontime           1622/tcp
+ontime           1622/udp
+jaleosnd         1623/tcp
+jaleosnd         1623/udp
+udp-sr-port      1624/tcp
+udp-sr-port      1624/udp
+svs-omagent      1625/tcp
+svs-omagent      1625/udp
+shockwave        1626/tcp
+shockwave        1626/udp
+t128-gateway     1627/tcp
+t128-gateway     1627/udp
+lontalk-norm     1628/tcp
+lontalk-norm     1628/udp
+lontalk-urgnt    1629/tcp
+lontalk-urgnt    1629/udp
+oraclenet8cman   1630/tcp
+oraclenet8cman   1630/udp
+visitview        1631/tcp
+visitview        1631/udp
+pammratc         1632/tcp
+pammratc         1632/udp
+pammrpc          1633/tcp
+pammrpc          1633/udp
+loaprobe         1634/tcp
+loaprobe         1634/udp
+edb-server1      1635/tcp
+edb-server1      1635/udp
+isdc             1636/tcp
+isdc             1636/udp
+islc             1637/tcp
+islc             1637/udp
+ismc             1638/tcp
+ismc             1638/udp
+cert-initiator   1639/tcp
+cert-initiator   1639/udp
+cert-responder   1640/tcp
+cert-responder   1640/udp
+invision         1641/tcp
+invision         1641/udp
+isis-am          1642/tcp
+isis-am          1642/udp
+isis-ambc        1643/tcp
+isis-ambc        1643/udp
+saiseh           1644/tcp
+saiseh           1644/udp
+sightline        1645/tcp
+sightline        1645/udp
+sa-msg-port      1646/tcp
+sa-msg-port      1646/udp
+rsap             1647/tcp
+rsap             1647/udp
+concurrent-lm    1648/tcp
+concurrent-lm    1648/udp
+kermit           1649/tcp
+kermit           1649/udp
+nkd              1650/tcp
+nkd              1650/udp
+shiva-confsrvr   1651/tcp
+shiva-confsrvr   1651/udp
+xnmp             1652/tcp
+xnmp             1652/udp
+alphatech-lm     1653/tcp
+alphatech-lm     1653/udp
+stargatealerts   1654/tcp
+stargatealerts   1654/udp
+dec-mbadmin      1655/tcp
+dec-mbadmin      1655/udp
+dec-mbadmin-h    1656/tcp
+dec-mbadmin-h    1656/udp
+fujitsu-mmpdc    1657/tcp
+fujitsu-mmpdc    1657/udp
+sixnetudr        1658/tcp
+sixnetudr        1658/udp
+sg-lm            1659/tcp
+sg-lm            1659/udp
+skip-mc-gikreq   1660/tcp
+skip-mc-gikreq   1660/udp
+netview-aix-1    1661/tcp
+netview-aix-1    1661/udp
+netview-aix-2    1662/tcp
+netview-aix-2    1662/udp
+netview-aix-3    1663/tcp
+netview-aix-3    1663/udp
+netview-aix-4    1664/tcp
+netview-aix-4    1664/udp
+netview-aix-5    1665/tcp
+netview-aix-5    1665/udp
+netview-aix-6    1666/tcp
+netview-aix-6    1666/udp
+netview-aix-7    1667/tcp
+netview-aix-7    1667/udp
+netview-aix-8    1668/tcp
+netview-aix-8    1668/udp
+netview-aix-9    1669/tcp
+netview-aix-9    1669/udp
+netview-aix-10   1670/tcp
+netview-aix-10   1670/udp
+netview-aix-11   1671/tcp
+netview-aix-11   1671/udp
+netview-aix-12   1672/tcp
+netview-aix-12   1672/udp
+proshare-mc-1    1673/tcp
+proshare-mc-1    1673/udp
+proshare-mc-2    1674/tcp
+proshare-mc-2    1674/udp
+pdp              1675/tcp
+pdp              1675/udp
+netcomm1         1676/tcp
+netcomm2         1676/udp
+groupwise        1677/tcp
+groupwise        1677/udp
+prolink          1678/tcp
+prolink          1678/udp
+darcorp-lm       1679/tcp
+darcorp-lm       1679/udp
+microcom-sbp     1680/tcp
+microcom-sbp     1680/udp
+sd-elmd          1681/tcp
+sd-elmd          1681/udp
+lanyon-lantern   1682/tcp
+lanyon-lantern   1682/udp
+ncpm-hip         1683/tcp
+ncpm-hip         1683/udp
+snaresecure      1684/tcp
+snaresecure      1684/udp
+n2nremote        1685/tcp
+n2nremote        1685/udp
+cvmon            1686/tcp
+cvmon            1686/udp
+nsjtp-ctrl       1687/tcp
+nsjtp-ctrl       1687/udp
+nsjtp-data       1688/tcp
+nsjtp-data       1688/udp
+firefox          1689/tcp
+firefox          1689/udp
+ng-umds          1690/tcp
+ng-umds          1690/udp
+empire-empuma    1691/tcp
+empire-empuma    1691/udp
+sstsys-lm        1692/tcp
+sstsys-lm        1692/udp
+rrirtr           1693/tcp
+rrirtr           1693/udp
+rrimwm           1694/tcp
+rrimwm           1694/udp
+rrilwm           1695/tcp
+rrilwm           1695/udp
+rrifmm           1696/tcp
+rrifmm           1696/udp
+rrisat           1697/tcp
+rrisat           1697/udp
+rsvp-encap-1     1698/tcp
+rsvp-encap-1     1698/udp
+rsvp-encap-2     1699/tcp
+rsvp-encap-2     1699/udp
+mps-raft         1700/tcp
+mps-raft         1700/udp
+l2f              1701/tcp
+l2f              1701/udp
+l2tp             1701/tcp
+l2tp             1701/udp
+deskshare        1702/tcp
+deskshare        1702/udp
+hb-engine        1703/tcp
+hb-engine        1703/udp
+bcs-broker       1704/tcp
+bcs-broker       1704/udp
+slingshot        1705/tcp
+slingshot        1705/udp
+jetform          1706/tcp
+jetform          1706/udp
+vdmplay          1707/tcp
+vdmplay          1707/udp
+gat-lmd          1708/tcp
+gat-lmd          1708/udp
+centra           1709/tcp
+centra           1709/udp
+impera           1710/tcp
+impera           1710/udp
+pptconference    1711/tcp
+pptconference    1711/udp
+registrar        1712/tcp
+registrar        1712/udp
+conferencetalk   1713/tcp
+conferencetalk   1713/udp
+sesi-lm          1714/tcp
+sesi-lm          1714/udp
+houdini-lm       1715/tcp
+houdini-lm       1715/udp
+xmsg             1716/tcp
+xmsg             1716/udp
+fj-hdnet         1717/tcp
+fj-hdnet         1717/udp
+h323gatedisc     1718/tcp
+h323gatedisc     1718/udp
+h323gatestat     1719/tcp
+h323gatestat     1719/udp
+h323hostcall     1720/tcp
+h323hostcall     1720/udp
+h323hostcall     1720/sctp
+caicci           1721/tcp
+caicci           1721/udp
+hks-lm           1722/tcp
+hks-lm           1722/udp
+pptp             1723/tcp
+pptp             1723/udp
+csbphonemaster   1724/tcp
+csbphonemaster   1724/udp
+iden-ralp        1725/tcp
+iden-ralp        1725/udp
+iberiagames      1726/tcp
+iberiagames      1726/udp
+winddx           1727/tcp
+winddx           1727/udp
+telindus         1728/tcp
+telindus         1728/udp
+citynl           1729/tcp
+citynl           1729/udp
+roketz           1730/tcp
+roketz           1730/udp
+msiccp           1731/tcp
+msiccp           1731/udp
+proxim           1732/tcp
+proxim           1732/udp
+siipat           1733/tcp
+siipat           1733/udp
+cambertx-lm      1734/tcp
+cambertx-lm      1734/udp
+privatechat      1735/tcp
+privatechat      1735/udp
+street-stream    1736/tcp
+street-stream    1736/udp
+ultimad          1737/tcp
+ultimad          1737/udp
+gamegen1         1738/tcp
+gamegen1         1738/udp
+webaccess        1739/tcp
+webaccess        1739/udp
+encore           1740/tcp
+encore           1740/udp
+cisco-net-mgmt   1741/tcp
+cisco-net-mgmt   1741/udp
+3Com-nsd         1742/tcp
+3Com-nsd         1742/udp
+cinegrfx-lm      1743/tcp
+cinegrfx-lm      1743/udp
+ncpm-ft          1744/tcp
+ncpm-ft          1744/udp
+remote-winsock   1745/tcp
+remote-winsock   1745/udp
+ftrapid-1        1746/tcp
+ftrapid-1        1746/udp
+ftrapid-2        1747/tcp
+ftrapid-2        1747/udp
+oracle-em1       1748/tcp
+oracle-em1       1748/udp
+aspen-services   1749/tcp
+aspen-services   1749/udp
+sslp             1750/tcp
+sslp             1750/udp
+swiftnet         1751/tcp
+swiftnet         1751/udp
+lofr-lm          1752/tcp
+lofr-lm          1752/udp
+predatar-comms   1753/tcp
+oracle-em2       1754/tcp
+oracle-em2       1754/udp
+ms-streaming     1755/tcp
+ms-streaming     1755/udp
+capfast-lmd      1756/tcp
+capfast-lmd      1756/udp
+cnhrp            1757/tcp
+cnhrp            1757/udp
+tftp-mcast       1758/tcp
+tftp-mcast       1758/udp
+spss-lm          1759/tcp
+spss-lm          1759/udp
+www-ldap-gw      1760/tcp
+www-ldap-gw      1760/udp
+cft-0            1761/tcp
+cft-0            1761/udp
+cft-1            1762/tcp
+cft-1            1762/udp
+cft-2            1763/tcp
+cft-2            1763/udp
+cft-3            1764/tcp
+cft-3            1764/udp
+cft-4            1765/tcp
+cft-4            1765/udp
+cft-5            1766/tcp
+cft-5            1766/udp
+cft-6            1767/tcp
+cft-6            1767/udp
+cft-7            1768/tcp
+cft-7            1768/udp
+bmc-net-adm      1769/tcp
+bmc-net-adm      1769/udp
+bmc-net-svc      1770/tcp
+bmc-net-svc      1770/udp
+vaultbase        1771/tcp
+vaultbase        1771/udp
+essweb-gw        1772/tcp
+essweb-gw        1772/udp
+kmscontrol       1773/tcp
+kmscontrol       1773/udp
+global-dtserv    1774/tcp
+global-dtserv    1774/udp
+vdab             1775/tcp
+femis            1776/tcp
+femis            1776/udp
+powerguardian    1777/tcp
+powerguardian    1777/udp
+prodigy-intrnet  1778/tcp
+prodigy-intrnet  1778/udp
+pharmasoft       1779/tcp
+pharmasoft       1779/udp
+dpkeyserv        1780/tcp
+dpkeyserv        1780/udp
+answersoft-lm    1781/tcp
+answersoft-lm    1781/udp
+hp-hcip          1782/tcp
+hp-hcip          1782/udp
+finle-lm         1784/tcp
+finle-lm         1784/udp
+windlm           1785/tcp
+windlm           1785/udp
+funk-logger      1786/tcp
+funk-logger      1786/udp
+funk-license     1787/tcp
+funk-license     1787/udp
+psmond           1788/tcp
+psmond           1788/udp
+hello            1789/tcp
+hello            1789/udp
+nmsp             1790/tcp
+nmsp             1790/udp
+ea1              1791/tcp
+ea1              1791/udp
+ibm-dt-2         1792/tcp
+ibm-dt-2         1792/udp
+rsc-robot        1793/tcp
+rsc-robot        1793/udp
+cera-bcm         1794/tcp
+cera-bcm         1794/udp
+dpi-proxy        1795/tcp
+dpi-proxy        1795/udp
+vocaltec-admin   1796/tcp
+vocaltec-admin   1796/udp
+uma              1797/tcp
+uma              1797/udp
+etp              1798/tcp
+etp              1798/udp
+netrisk          1799/tcp
+netrisk          1799/udp
+ansys-lm         1800/tcp
+ansys-lm         1800/udp
+msmq             1801/tcp
+msmq             1801/udp
+concomp1         1802/tcp
+concomp1         1802/udp
+hp-hcip-gwy      1803/tcp
+hp-hcip-gwy      1803/udp
+enl              1804/tcp
+enl              1804/udp
+enl-name         1805/tcp
+enl-name         1805/udp
+musiconline      1806/tcp
+musiconline      1806/udp
+fhsp             1807/tcp
+fhsp             1807/udp
+oracle-vp2       1808/tcp
+oracle-vp2       1808/udp
+oracle-vp1       1809/tcp
+oracle-vp1       1809/udp
+jerand-lm        1810/tcp
+jerand-lm        1810/udp
+scientia-sdb     1811/tcp
+scientia-sdb     1811/udp
+radius           1812/tcp
+radius           1812/udp
+radius-acct      1813/tcp
+radius-acct      1813/udp
+tdp-suite        1814/tcp
+tdp-suite        1814/udp
+mmpft            1815/tcp
+mmpft            1815/udp
+harp             1816/tcp
+harp             1816/udp
+rkb-oscs         1817/tcp
+rkb-oscs         1817/udp
+etftp            1818/tcp
+etftp            1818/udp
+plato-lm         1819/tcp
+plato-lm         1819/udp
+mcagent          1820/tcp
+mcagent          1820/udp
+donnyworld       1821/tcp
+donnyworld       1821/udp
+es-elmd          1822/tcp
+es-elmd          1822/udp
+unisys-lm        1823/tcp
+unisys-lm        1823/udp
+metrics-pas      1824/tcp
+metrics-pas      1824/udp
+direcpc-video    1825/tcp
+direcpc-video    1825/udp
+ardt             1826/tcp
+ardt             1826/udp
+asi              1827/tcp
+asi              1827/udp
+itm-mcell-u      1828/tcp
+itm-mcell-u      1828/udp
+optika-emedia    1829/tcp
+optika-emedia    1829/udp
+net8-cman        1830/tcp
+net8-cman        1830/udp
+myrtle           1831/tcp
+myrtle           1831/udp
+tht-treasure     1832/tcp
+tht-treasure     1832/udp
+udpradio         1833/tcp
+udpradio         1833/udp
+ardusuni         1834/tcp
+ardusuni         1834/udp
+ardusmul         1835/tcp
+ardusmul         1835/udp
+ste-smsc         1836/tcp
+ste-smsc         1836/udp
+csoft1           1837/tcp
+csoft1           1837/udp
+talnet           1838/tcp
+talnet           1838/udp
+netopia-vo1      1839/tcp
+netopia-vo1      1839/udp
+netopia-vo2      1840/tcp
+netopia-vo2      1840/udp
+netopia-vo3      1841/tcp
+netopia-vo3      1841/udp
+netopia-vo4      1842/tcp
+netopia-vo4      1842/udp
+netopia-vo5      1843/tcp
+netopia-vo5      1843/udp
+direcpc-dll      1844/tcp
+direcpc-dll      1844/udp
+altalink         1845/tcp
+altalink         1845/udp
+tunstall-pnc     1846/tcp
+tunstall-pnc     1846/udp
+slp-notify       1847/tcp
+slp-notify       1847/udp
+fjdocdist        1848/tcp
+fjdocdist        1848/udp
+alpha-sms        1849/tcp
+alpha-sms        1849/udp
+gsi              1850/tcp
+gsi              1850/udp
+ctcd             1851/tcp
+ctcd             1851/udp
+virtual-time     1852/tcp
+virtual-time     1852/udp
+vids-avtp        1853/tcp
+vids-avtp        1853/udp
+buddy-draw       1854/tcp
+buddy-draw       1854/udp
+fiorano-rtrsvc   1855/tcp
+fiorano-rtrsvc   1855/udp
+fiorano-msgsvc   1856/tcp
+fiorano-msgsvc   1856/udp
+datacaptor       1857/tcp
+datacaptor       1857/udp
+privateark       1858/tcp
+privateark       1858/udp
+gammafetchsvr    1859/tcp
+gammafetchsvr    1859/udp
+sunscalar-svc    1860/tcp
+sunscalar-svc    1860/udp
+lecroy-vicp      1861/tcp
+lecroy-vicp      1861/udp
+mysql-cm-agent   1862/tcp
+mysql-cm-agent   1862/udp
+msnp             1863/tcp
+msnp             1863/udp
+paradym-31port   1864/tcp
+paradym-31port   1864/udp
+entp             1865/tcp
+entp             1865/udp
+swrmi            1866/tcp
+swrmi            1866/udp
+udrive           1867/tcp
+udrive           1867/udp
+viziblebrowser   1868/tcp
+viziblebrowser   1868/udp
+transact         1869/tcp
+transact         1869/udp
+sunscalar-dns    1870/tcp
+sunscalar-dns    1870/udp
+canocentral0     1871/tcp
+canocentral0     1871/udp
+canocentral1     1872/tcp
+canocentral1     1872/udp
+fjmpjps          1873/tcp
+fjmpjps          1873/udp
+fjswapsnp        1874/tcp
+fjswapsnp        1874/udp
+westell-stats    1875/tcp
+westell-stats    1875/udp
+ewcappsrv        1876/tcp
+ewcappsrv        1876/udp
+hp-webqosdb      1877/tcp
+hp-webqosdb      1877/udp
+drmsmc           1878/tcp
+drmsmc           1878/udp
+nettgain-nms     1879/tcp
+nettgain-nms     1879/udp
+vsat-control     1880/tcp
+vsat-control     1880/udp
+ibm-mqseries2    1881/tcp
+ibm-mqseries2    1881/udp
+ecsqdmn          1882/tcp
+ecsqdmn          1882/udp
+mqtt             1883/tcp
+mqtt             1883/udp
+idmaps           1884/tcp
+idmaps           1884/udp
+vrtstrapserver   1885/tcp
+vrtstrapserver   1885/udp
+leoip            1886/tcp
+leoip            1886/udp
+filex-lport      1887/tcp
+filex-lport      1887/udp
+ncconfig         1888/tcp
+ncconfig         1888/udp
+unify-adapter    1889/tcp
+unify-adapter    1889/udp
+wilkenlistener   1890/tcp
+wilkenlistener   1890/udp
+childkey-notif   1891/tcp
+childkey-notif   1891/udp
+childkey-ctrl    1892/tcp
+childkey-ctrl    1892/udp
+elad             1893/tcp
+elad             1893/udp
+o2server-port    1894/tcp
+o2server-port    1894/udp
+b-novative-ls    1896/tcp
+b-novative-ls    1896/udp
+metaagent        1897/tcp
+metaagent        1897/udp
+cymtec-port      1898/tcp
+cymtec-port      1898/udp
+mc2studios       1899/tcp
+mc2studios       1899/udp
+ssdp             1900/tcp
+ssdp             1900/udp
+fjicl-tep-a      1901/tcp
+fjicl-tep-a      1901/udp
+fjicl-tep-b      1902/tcp
+fjicl-tep-b      1902/udp
+linkname         1903/tcp
+linkname         1903/udp
+fjicl-tep-c      1904/tcp
+fjicl-tep-c      1904/udp
+sugp             1905/tcp
+sugp             1905/udp
+tpmd             1906/tcp
+tpmd             1906/udp
+intrastar        1907/tcp
+intrastar        1907/udp
+dawn             1908/tcp
+dawn             1908/udp
+global-wlink     1909/tcp
+global-wlink     1909/udp
+ultrabac         1910/tcp
+ultrabac         1910/udp
+mtp              1911/tcp
+mtp              1911/udp
+rhp-iibp         1912/tcp
+rhp-iibp         1912/udp
+armadp           1913/tcp
+armadp           1913/udp
+elm-momentum     1914/tcp
+elm-momentum     1914/udp
+facelink         1915/tcp
+facelink         1915/udp
+persona          1916/tcp
+persona          1916/udp
+noagent          1917/tcp
+noagent          1917/udp
+can-nds          1918/tcp
+can-nds          1918/udp
+can-dch          1919/tcp
+can-dch          1919/udp
+can-ferret       1920/tcp
+can-ferret       1920/udp
+noadmin          1921/tcp
+noadmin          1921/udp
+tapestry         1922/tcp
+tapestry         1922/udp
+spice            1923/tcp
+spice            1923/udp
+xiip             1924/tcp
+xiip             1924/udp
+discovery-port   1925/tcp
+discovery-port   1925/udp
+egs              1926/tcp
+egs              1926/udp
+videte-cipc      1927/tcp
+videte-cipc      1927/udp
+emsd-port        1928/tcp
+emsd-port        1928/udp
+bandwiz-system   1929/tcp
+bandwiz-system   1929/udp
+driveappserver   1930/tcp
+driveappserver   1930/udp
+amdsched         1931/tcp
+amdsched         1931/udp
+ctt-broker       1932/tcp
+ctt-broker       1932/udp
+xmapi            1933/tcp
+xmapi            1933/udp
+xaapi            1934/tcp
+xaapi            1934/udp
+macromedia-fcs   1935/tcp
+macromedia-fcs   1935/udp
+jetcmeserver     1936/tcp
+jetcmeserver     1936/udp
+jwserver         1937/tcp
+jwserver         1937/udp
+jwclient         1938/tcp
+jwclient         1938/udp
+jvserver         1939/tcp
+jvserver         1939/udp
+jvclient         1940/tcp
+jvclient         1940/udp
+dic-aida         1941/tcp
+dic-aida         1941/udp
+res              1942/tcp
+res              1942/udp
+beeyond-media    1943/tcp
+beeyond-media    1943/udp
+close-combat     1944/tcp
+close-combat     1944/udp
+dialogic-elmd    1945/tcp
+dialogic-elmd    1945/udp
+tekpls           1946/tcp
+tekpls           1946/udp
+sentinelsrm      1947/tcp
+sentinelsrm      1947/udp
+eye2eye          1948/tcp
+eye2eye          1948/udp
+ismaeasdaqlive   1949/tcp
+ismaeasdaqlive   1949/udp
+ismaeasdaqtest   1950/tcp
+ismaeasdaqtest   1950/udp
+bcs-lmserver     1951/tcp
+bcs-lmserver     1951/udp
+mpnjsc           1952/tcp
+mpnjsc           1952/udp
+rapidbase        1953/tcp
+rapidbase        1953/udp
+abr-api          1954/tcp
+abr-api          1954/udp
+abr-secure       1955/tcp
+abr-secure       1955/udp
+vrtl-vmf-ds      1956/tcp
+vrtl-vmf-ds      1956/udp
+unix-status      1957/tcp
+unix-status      1957/udp
+dxadmind         1958/tcp
+dxadmind         1958/udp
+simp-all         1959/tcp
+simp-all         1959/udp
+nasmanager       1960/tcp
+nasmanager       1960/udp
+bts-appserver    1961/tcp
+bts-appserver    1961/udp
+biap-mp          1962/tcp
+biap-mp          1962/udp
+webmachine       1963/tcp
+webmachine       1963/udp
+solid-e-engine   1964/tcp
+solid-e-engine   1964/udp
+tivoli-npm       1965/tcp
+tivoli-npm       1965/udp
+slush            1966/tcp
+slush            1966/udp
+sns-quote        1967/tcp
+sns-quote        1967/udp
+lipsinc          1968/tcp
+lipsinc          1968/udp
+lipsinc1         1969/tcp
+lipsinc1         1969/udp
+netop-rc         1970/tcp
+netop-rc         1970/udp
+netop-school     1971/tcp
+netop-school     1971/udp
+intersys-cache   1972/tcp
+intersys-cache   1972/udp
+dlsrap           1973/tcp
+dlsrap           1973/udp
+drp              1974/tcp
+drp              1974/udp
+tcoflashagent    1975/tcp
+tcoflashagent    1975/udp
+tcoregagent      1976/tcp
+tcoregagent      1976/udp
+tcoaddressbook   1977/tcp
+tcoaddressbook   1977/udp
+unisql           1978/tcp
+unisql           1978/udp
+unisql-java      1979/tcp
+unisql-java      1979/udp
+pearldoc-xact    1980/tcp
+pearldoc-xact    1980/udp
+p2pq             1981/tcp
+p2pq             1981/udp
+estamp           1982/tcp
+estamp           1982/udp
+lhtp             1983/tcp
+lhtp             1983/udp
+bb               1984/tcp
+bb               1984/udp
+hsrp             1985/tcp
+hsrp             1985/udp
+licensedaemon    1986/tcp
+licensedaemon    1986/udp
+tr-rsrb-p1       1987/tcp
+tr-rsrb-p1       1987/udp
+tr-rsrb-p2       1988/tcp
+tr-rsrb-p2       1988/udp
+tr-rsrb-p3       1989/tcp
+tr-rsrb-p3       1989/udp
+mshnet           1989/tcp
+mshnet           1989/udp
+stun-p1          1990/tcp
+stun-p1          1990/udp
+stun-p2          1991/tcp
+stun-p2          1991/udp
+stun-p3          1992/tcp
+stun-p3          1992/udp
+ipsendmsg        1992/tcp
+ipsendmsg        1992/udp
+snmp-tcp-port    1993/tcp
+snmp-tcp-port    1993/udp
+stun-port        1994/tcp
+stun-port        1994/udp
+perf-port        1995/tcp
+perf-port        1995/udp
+tr-rsrb-port     1996/tcp
+tr-rsrb-port     1996/udp
+gdp-port         1997/tcp
+gdp-port         1997/udp
+x25-svc-port     1998/tcp
+x25-svc-port     1998/udp
+tcp-id-port      1999/tcp
+tcp-id-port      1999/udp
+cisco-sccp       2000/tcp
+cisco-sccp       2000/udp
+dc               2001/tcp
+wizard           2001/udp
+globe            2002/tcp
+globe            2002/udp
+brutus           2003/tcp
+brutus           2003/udp
+mailbox          2004/tcp
+emce             2004/udp
+berknet          2005/tcp
+oracle           2005/udp
+invokator        2006/tcp
+raid-cd          2006/udp
+dectalk          2007/tcp
+raid-am          2007/udp
+conf             2008/tcp
+terminaldb       2008/udp
+news             2009/tcp
+whosockami       2009/udp
+search           2010/tcp
+pipe-server      2010/udp
+raid-cc          2011/tcp
+servserv         2011/udp
+ttyinfo          2012/tcp
+raid-ac          2012/udp
+raid-am          2013/tcp
+raid-cd          2013/udp
+troff            2014/tcp
+raid-sf          2014/udp
+cypress          2015/tcp
+raid-cs          2015/udp
+bootserver       2016/tcp
+bootserver       2016/udp
+cypress-stat     2017/tcp
+bootclient       2017/udp
+terminaldb       2018/tcp
+rellpack         2018/udp
+whosockami       2019/tcp
+about            2019/udp
+xinupageserver   2020/tcp
+xinupageserver   2020/udp
+servexec         2021/tcp
+xinuexpansion1   2021/udp
+down             2022/tcp
+xinuexpansion2   2022/udp
+xinuexpansion3   2023/tcp
+xinuexpansion3   2023/udp
+xinuexpansion4   2024/tcp
+xinuexpansion4   2024/udp
+ellpack          2025/tcp
+xribs            2025/udp
+scrabble         2026/tcp
+scrabble         2026/udp
+shadowserver     2027/tcp
+shadowserver     2027/udp
+submitserver     2028/tcp
+submitserver     2028/udp
+hsrpv6           2029/tcp
+hsrpv6           2029/udp
+device2          2030/tcp
+device2          2030/udp
+mobrien-chat     2031/tcp
+mobrien-chat     2031/udp
+blackboard       2032/tcp
+blackboard       2032/udp
+glogger          2033/tcp
+glogger          2033/udp
+scoremgr         2034/tcp
+scoremgr         2034/udp
+imsldoc          2035/tcp
+imsldoc          2035/udp
+e-dpnet          2036/tcp
+e-dpnet          2036/udp
+applus           2037/tcp
+applus           2037/udp
+objectmanager    2038/tcp
+objectmanager    2038/udp
+prizma           2039/tcp
+prizma           2039/udp
+lam              2040/tcp
+lam              2040/udp
+interbase        2041/tcp
+interbase        2041/udp
+isis             2042/tcp
+isis             2042/udp
+isis-bcast       2043/tcp
+isis-bcast       2043/udp
+rimsl            2044/tcp
+rimsl            2044/udp
+cdfunc           2045/tcp
+cdfunc           2045/udp
+sdfunc           2046/tcp
+sdfunc           2046/udp
+dls              2047/tcp
+dls              2047/udp
+dls-monitor      2048/tcp
+dls-monitor      2048/udp
+shilp            2049/tcp
+shilp            2049/udp
+nfs              2049/tcp
+nfs              2049/udp
+nfs              2049/sctp
+av-emb-config    2050/tcp
+av-emb-config    2050/udp
+epnsdp           2051/tcp
+epnsdp           2051/udp
+clearvisn        2052/tcp
+clearvisn        2052/udp
+lot105-ds-upd    2053/tcp
+lot105-ds-upd    2053/udp
+weblogin         2054/tcp
+weblogin         2054/udp
+iop              2055/tcp
+iop              2055/udp
+omnisky          2056/tcp
+omnisky          2056/udp
+rich-cp          2057/tcp
+rich-cp          2057/udp
+newwavesearch    2058/tcp
+newwavesearch    2058/udp
+bmc-messaging    2059/tcp
+bmc-messaging    2059/udp
+teleniumdaemon   2060/tcp
+teleniumdaemon   2060/udp
+netmount         2061/tcp
+netmount         2061/udp
+icg-swp          2062/tcp
+icg-swp          2062/udp
+icg-bridge       2063/tcp
+icg-bridge       2063/udp
+icg-iprelay      2064/tcp
+icg-iprelay      2064/udp
+dlsrpn           2065/tcp
+dlsrpn           2065/udp
+aura             2066/tcp
+aura             2066/udp
+dlswpn           2067/tcp
+dlswpn           2067/udp
+avauthsrvprtcl   2068/tcp
+avauthsrvprtcl   2068/udp
+event-port       2069/tcp
+event-port       2069/udp
+ah-esp-encap     2070/tcp
+ah-esp-encap     2070/udp
+acp-port         2071/tcp
+acp-port         2071/udp
+msync            2072/tcp
+msync            2072/udp
+gxs-data-port    2073/tcp
+gxs-data-port    2073/udp
+vrtl-vmf-sa      2074/tcp
+vrtl-vmf-sa      2074/udp
+newlixengine     2075/tcp
+newlixengine     2075/udp
+newlixconfig     2076/tcp
+newlixconfig     2076/udp
+tsrmagt          2077/tcp
+tsrmagt          2077/udp
+tpcsrvr          2078/tcp
+tpcsrvr          2078/udp
+idware-router    2079/tcp
+idware-router    2079/udp
+autodesk-nlm     2080/tcp
+autodesk-nlm     2080/udp
+kme-trap-port    2081/tcp
+kme-trap-port    2081/udp
+infowave         2082/tcp
+infowave         2082/udp
+radsec           2083/tcp
+radsec           2083/udp
+sunclustergeo    2084/tcp
+sunclustergeo    2084/udp
+ada-cip          2085/tcp
+ada-cip          2085/udp
+gnunet           2086/tcp
+gnunet           2086/udp
+eli              2087/tcp
+eli              2087/udp
+ip-blf           2088/tcp
+ip-blf           2088/udp
+sep              2089/tcp
+sep              2089/udp
+lrp              2090/tcp
+lrp              2090/udp
+prp              2091/tcp
+prp              2091/udp
+descent3         2092/tcp
+descent3         2092/udp
+nbx-cc           2093/tcp
+nbx-cc           2093/udp
+nbx-au           2094/tcp
+nbx-au           2094/udp
+nbx-ser          2095/tcp
+nbx-ser          2095/udp
+nbx-dir          2096/tcp
+nbx-dir          2096/udp
+jetformpreview   2097/tcp
+jetformpreview   2097/udp
+dialog-port      2098/tcp
+dialog-port      2098/udp
+h2250-annex-g    2099/tcp
+h2250-annex-g    2099/udp
+amiganetfs       2100/tcp
+amiganetfs       2100/udp
+rtcm-sc104       2101/tcp
+rtcm-sc104       2101/udp
+zephyr-srv       2102/tcp
+zephyr-srv       2102/udp
+zephyr-clt       2103/tcp
+zephyr-clt       2103/udp
+zephyr-hm        2104/tcp
+zephyr-hm        2104/udp
+minipay          2105/tcp
+minipay          2105/udp
+mzap             2106/tcp
+mzap             2106/udp
+bintec-admin     2107/tcp
+bintec-admin     2107/udp
+comcam           2108/tcp
+comcam           2108/udp
+ergolight        2109/tcp
+ergolight        2109/udp
+umsp             2110/tcp
+umsp             2110/udp
+dsatp            2111/tcp
+dsatp            2111/udp
+idonix-metanet   2112/tcp
+idonix-metanet   2112/udp
+hsl-storm        2113/tcp
+hsl-storm        2113/udp
+ariascribe       2114/tcp
+ariascribe       2114/udp
+kdm              2115/tcp
+kdm              2115/udp
+ccowcmr          2116/tcp
+ccowcmr          2116/udp
+mentaclient      2117/tcp
+mentaclient      2117/udp
+mentaserver      2118/tcp
+mentaserver      2118/udp
+gsigatekeeper    2119/tcp
+gsigatekeeper    2119/udp
+qencp            2120/tcp
+qencp            2120/udp
+scientia-ssdb    2121/tcp
+scientia-ssdb    2121/udp
+caupc-remote     2122/tcp
+caupc-remote     2122/udp
+gtp-control      2123/tcp
+gtp-control      2123/udp
+elatelink        2124/tcp
+elatelink        2124/udp
+lockstep         2125/tcp
+lockstep         2125/udp
+pktcable-cops    2126/tcp
+pktcable-cops    2126/udp
+index-pc-wb      2127/tcp
+index-pc-wb      2127/udp
+net-steward      2128/tcp
+net-steward      2128/udp
+cs-live          2129/tcp
+cs-live          2129/udp
+xds              2130/tcp
+xds              2130/udp
+avantageb2b      2131/tcp
+avantageb2b      2131/udp
+solera-epmap     2132/tcp
+solera-epmap     2132/udp
+zymed-zpp        2133/tcp
+zymed-zpp        2133/udp
+avenue           2134/tcp
+avenue           2134/udp
+gris             2135/tcp
+gris             2135/udp
+appworxsrv       2136/tcp
+appworxsrv       2136/udp
+connect          2137/tcp
+connect          2137/udp
+unbind-cluster   2138/tcp
+unbind-cluster   2138/udp
+ias-auth         2139/tcp
+ias-auth         2139/udp
+ias-reg          2140/tcp
+ias-reg          2140/udp
+ias-admind       2141/tcp
+ias-admind       2141/udp
+tdmoip           2142/tcp
+tdmoip           2142/udp
+lv-jc            2143/tcp
+lv-jc            2143/udp
+lv-ffx           2144/tcp
+lv-ffx           2144/udp
+lv-pici          2145/tcp
+lv-pici          2145/udp
+lv-not           2146/tcp
+lv-not           2146/udp
+lv-auth          2147/tcp
+lv-auth          2147/udp
+veritas-ucl      2148/tcp
+veritas-ucl      2148/udp
+acptsys          2149/tcp
+acptsys          2149/udp
+dynamic3d        2150/tcp
+dynamic3d        2150/udp
+docent           2151/tcp
+docent           2151/udp
+gtp-user         2152/tcp
+gtp-user         2152/udp
+ctlptc           2153/tcp
+ctlptc           2153/udp
+stdptc           2154/tcp
+stdptc           2154/udp
+brdptc           2155/tcp
+brdptc           2155/udp
+trp              2156/tcp
+trp              2156/udp
+xnds             2157/tcp
+xnds             2157/udp
+touchnetplus     2158/tcp
+touchnetplus     2158/udp
+gdbremote        2159/tcp
+gdbremote        2159/udp
+apc-2160         2160/tcp
+apc-2160         2160/udp
+apc-2161         2161/tcp
+apc-2161         2161/udp
+navisphere       2162/tcp
+navisphere       2162/udp
+navisphere-sec   2163/tcp
+navisphere-sec   2163/udp
+ddns-v3          2164/tcp
+ddns-v3          2164/udp
+x-bone-api       2165/tcp
+x-bone-api       2165/udp
+iwserver         2166/tcp
+iwserver         2166/udp
+raw-serial       2167/tcp
+raw-serial       2167/udp
+easy-soft-mux    2168/tcp
+easy-soft-mux    2168/udp
+brain            2169/tcp
+brain            2169/udp
+eyetv            2170/tcp
+eyetv            2170/udp
+msfw-storage     2171/tcp
+msfw-storage     2171/udp
+msfw-s-storage   2172/tcp
+msfw-s-storage   2172/udp
+msfw-replica     2173/tcp
+msfw-replica     2173/udp
+msfw-array       2174/tcp
+msfw-array       2174/udp
+airsync          2175/tcp
+airsync          2175/udp
+rapi             2176/tcp
+rapi             2176/udp
+qwave            2177/tcp
+qwave            2177/udp
+bitspeer         2178/tcp
+bitspeer         2178/udp
+vmrdp            2179/tcp
+vmrdp            2179/udp
+mc-gt-srv        2180/tcp
+mc-gt-srv        2180/udp
+eforward         2181/tcp
+eforward         2181/udp
+cgn-stat         2182/tcp
+cgn-stat         2182/udp
+cgn-config       2183/tcp
+cgn-config       2183/udp
+nvd              2184/tcp
+nvd              2184/udp
+onbase-dds       2185/tcp
+onbase-dds       2185/udp
+gtaua            2186/tcp
+gtaua            2186/udp
+ssmc             2187/tcp
+ssmd             2187/udp
+radware-rpm      2188/tcp
+radware-rpm-s    2189/tcp
+tivoconnect      2190/tcp
+tivoconnect      2190/udp
+tvbus            2191/tcp
+tvbus            2191/udp
+asdis            2192/tcp
+asdis            2192/udp
+drwcs            2193/tcp
+drwcs            2193/udp
+mnp-exchange     2197/tcp
+mnp-exchange     2197/udp
+onehome-remote   2198/tcp
+onehome-remote   2198/udp
+onehome-help     2199/tcp
+onehome-help     2199/udp
+ats              2201/tcp
+ats              2201/udp
+imtc-map         2202/tcp
+imtc-map         2202/udp
+b2-runtime       2203/tcp
+b2-runtime       2203/udp
+b2-license       2204/tcp
+b2-license       2204/udp
+jps              2205/tcp
+jps              2205/udp
+hpocbus          2206/tcp
+hpocbus          2206/udp
+hpssd            2207/tcp
+hpssd            2207/udp
+hpiod            2208/tcp
+hpiod            2208/udp
+rimf-ps          2209/tcp
+rimf-ps          2209/udp
+noaaport         2210/tcp
+noaaport         2210/udp
+emwin            2211/tcp
+emwin            2211/udp
+leecoposserver   2212/tcp
+leecoposserver   2212/udp
+kali             2213/tcp
+kali             2213/udp
+rpi              2214/tcp
+rpi              2214/udp
+ipcore           2215/tcp
+ipcore           2215/udp
+vtu-comms        2216/tcp
+vtu-comms        2216/udp
+gotodevice       2217/tcp
+gotodevice       2217/udp
+bounzza          2218/tcp
+bounzza          2218/udp
+netiq-ncap       2219/tcp
+netiq-ncap       2219/udp
+netiq            2220/tcp
+netiq            2220/udp
+ethernet-ip-s    2221/tcp
+ethernet-ip-s    2221/udp
+EtherNet-IP-1    2222/tcp
+EtherNet-IP-1    2222/udp
+rockwell-csp2    2223/tcp
+rockwell-csp2    2223/udp
+efi-mg           2224/tcp
+efi-mg           2224/udp
+rcip-itu         2225/tcp
+rcip-itu         2225/sctp
+di-drm           2226/tcp
+di-drm           2226/udp
+di-msg           2227/tcp
+di-msg           2227/udp
+ehome-ms         2228/tcp
+ehome-ms         2228/udp
+datalens         2229/tcp
+datalens         2229/udp
+queueadm         2230/tcp
+queueadm         2230/udp
+wimaxasncp       2231/tcp
+wimaxasncp       2231/udp
+ivs-video        2232/tcp
+ivs-video        2232/udp
+infocrypt        2233/tcp
+infocrypt        2233/udp
+directplay       2234/tcp
+directplay       2234/udp
+sercomm-wlink    2235/tcp
+sercomm-wlink    2235/udp
+nani             2236/tcp
+nani             2236/udp
+optech-port1-lm  2237/tcp
+optech-port1-lm  2237/udp
+aviva-sna        2238/tcp
+aviva-sna        2238/udp
+imagequery       2239/tcp
+imagequery       2239/udp
+recipe           2240/tcp
+recipe           2240/udp
+ivsd             2241/tcp
+ivsd             2241/udp
+foliocorp        2242/tcp
+foliocorp        2242/udp
+magicom          2243/tcp
+magicom          2243/udp
+nmsserver        2244/tcp
+nmsserver        2244/udp
+hao              2245/tcp
+hao              2245/udp
+pc-mta-addrmap   2246/tcp
+pc-mta-addrmap   2246/udp
+antidotemgrsvr   2247/tcp
+antidotemgrsvr   2247/udp
+ums              2248/tcp
+ums              2248/udp
+rfmp             2249/tcp
+rfmp             2249/udp
+remote-collab    2250/tcp
+remote-collab    2250/udp
+dif-port         2251/tcp
+dif-port         2251/udp
+njenet-ssl       2252/tcp
+njenet-ssl       2252/udp
+dtv-chan-req     2253/tcp
+dtv-chan-req     2253/udp
+seispoc          2254/tcp
+seispoc          2254/udp
+vrtp             2255/tcp
+vrtp             2255/udp
+pcc-mfp          2256/tcp
+pcc-mfp          2256/udp
+simple-tx-rx     2257/tcp
+simple-tx-rx     2257/udp
+rcts             2258/tcp
+rcts             2258/udp
+apc-2260         2260/tcp
+apc-2260         2260/udp
+comotionmaster   2261/tcp
+comotionmaster   2261/udp
+comotionback     2262/tcp
+comotionback     2262/udp
+ecwcfg           2263/tcp
+ecwcfg           2263/udp
+apx500api-1      2264/tcp
+apx500api-1      2264/udp
+apx500api-2      2265/tcp
+apx500api-2      2265/udp
+mfserver         2266/tcp
+mfserver         2266/udp
+ontobroker       2267/tcp
+ontobroker       2267/udp
+amt              2268/tcp
+amt              2268/udp
+mikey            2269/tcp
+mikey            2269/udp
+starschool       2270/tcp
+starschool       2270/udp
+mmcals           2271/tcp
+mmcals           2271/udp
+mmcal            2272/tcp
+mmcal            2272/udp
+mysql-im         2273/tcp
+mysql-im         2273/udp
+pcttunnell       2274/tcp
+pcttunnell       2274/udp
+ibridge-data     2275/tcp
+ibridge-data     2275/udp
+ibridge-mgmt     2276/tcp
+ibridge-mgmt     2276/udp
+bluectrlproxy    2277/tcp
+bluectrlproxy    2277/udp
+s3db             2278/tcp
+s3db             2278/udp
+xmquery          2279/tcp
+xmquery          2279/udp
+lnvpoller        2280/tcp
+lnvpoller        2280/udp
+lnvconsole       2281/tcp
+lnvconsole       2281/udp
+lnvalarm         2282/tcp
+lnvalarm         2282/udp
+lnvstatus        2283/tcp
+lnvstatus        2283/udp
+lnvmaps          2284/tcp
+lnvmaps          2284/udp
+lnvmailmon       2285/tcp
+lnvmailmon       2285/udp
+nas-metering     2286/tcp
+nas-metering     2286/udp
+dna              2287/tcp
+dna              2287/udp
+netml            2288/tcp
+netml            2288/udp
+dict-lookup      2289/tcp
+dict-lookup      2289/udp
+sonus-logging    2290/tcp
+sonus-logging    2290/udp
+eapsp            2291/tcp
+eapsp            2291/udp
+mib-streaming    2292/tcp
+mib-streaming    2292/udp
+npdbgmngr        2293/tcp
+npdbgmngr        2293/udp
+konshus-lm       2294/tcp
+konshus-lm       2294/udp
+advant-lm        2295/tcp
+advant-lm        2295/udp
+theta-lm         2296/tcp
+theta-lm         2296/udp
+d2k-datamover1   2297/tcp
+d2k-datamover1   2297/udp
+d2k-datamover2   2298/tcp
+d2k-datamover2   2298/udp
+pc-telecommute   2299/tcp
+pc-telecommute   2299/udp
+cvmmon           2300/tcp
+cvmmon           2300/udp
+cpq-wbem         2301/tcp
+cpq-wbem         2301/udp
+binderysupport   2302/tcp
+binderysupport   2302/udp
+proxy-gateway    2303/tcp
+proxy-gateway    2303/udp
+attachmate-uts   2304/tcp
+attachmate-uts   2304/udp
+mt-scaleserver   2305/tcp
+mt-scaleserver   2305/udp
+tappi-boxnet     2306/tcp
+tappi-boxnet     2306/udp
+pehelp           2307/tcp
+pehelp           2307/udp
+sdhelp           2308/tcp
+sdhelp           2308/udp
+sdserver         2309/tcp
+sdserver         2309/udp
+sdclient         2310/tcp
+sdclient         2310/udp
+messageservice   2311/tcp
+messageservice   2311/udp
+wanscaler        2312/tcp
+wanscaler        2312/udp
+iapp             2313/tcp
+iapp             2313/udp
+cr-websystems    2314/tcp
+cr-websystems    2314/udp
+precise-sft      2315/tcp
+precise-sft      2315/udp
+sent-lm          2316/tcp
+sent-lm          2316/udp
+attachmate-g32   2317/tcp
+attachmate-g32   2317/udp
+cadencecontrol   2318/tcp
+cadencecontrol   2318/udp
+infolibria       2319/tcp
+infolibria       2319/udp
+siebel-ns        2320/tcp
+siebel-ns        2320/udp
+rdlap            2321/tcp
+rdlap            2321/udp
+ofsd             2322/tcp
+ofsd             2322/udp
+3d-nfsd          2323/tcp
+3d-nfsd          2323/udp
+cosmocall        2324/tcp
+cosmocall        2324/udp
+ansysli          2325/tcp
+ansysli          2325/udp
+idcp             2326/tcp
+idcp             2326/udp
+xingcsm          2327/tcp
+xingcsm          2327/udp
+netrix-sftm      2328/tcp
+netrix-sftm      2328/udp
+nvd              2329/tcp
+nvd              2329/udp
+tscchat          2330/tcp
+tscchat          2330/udp
+agentview        2331/tcp
+agentview        2331/udp
+rcc-host         2332/tcp
+rcc-host         2332/udp
+snapp            2333/tcp
+snapp            2333/udp
+ace-client       2334/tcp
+ace-client       2334/udp
+ace-proxy        2335/tcp
+ace-proxy        2335/udp
+appleugcontrol   2336/tcp
+appleugcontrol   2336/udp
+ideesrv          2337/tcp
+ideesrv          2337/udp
+norton-lambert   2338/tcp
+norton-lambert   2338/udp
+3com-webview     2339/tcp
+3com-webview     2339/udp
+wrs-registry     2340/tcp
+wrs-registry     2340/udp
+xiostatus        2341/tcp
+xiostatus        2341/udp
+manage-exec      2342/tcp
+manage-exec      2342/udp
+nati-logos       2343/tcp
+nati-logos       2343/udp
+fcmsys           2344/tcp
+fcmsys           2344/udp
+dbm              2345/tcp
+dbm              2345/udp
+redstorm-join    2346/tcp
+redstorm-join    2346/udp
+redstorm-find    2347/tcp
+redstorm-find    2347/udp
+redstorm-info    2348/tcp
+redstorm-info    2348/udp
+redstorm-diag    2349/tcp
+redstorm-diag    2349/udp
+psbserver        2350/tcp
+psbserver        2350/udp
+psrserver        2351/tcp
+psrserver        2351/udp
+pslserver        2352/tcp
+pslserver        2352/udp
+pspserver        2353/tcp
+pspserver        2353/udp
+psprserver       2354/tcp
+psprserver       2354/udp
+psdbserver       2355/tcp
+psdbserver       2355/udp
+gxtelmd          2356/tcp
+gxtelmd          2356/udp
+unihub-server    2357/tcp
+unihub-server    2357/udp
+futrix           2358/tcp
+futrix           2358/udp
+flukeserver      2359/tcp
+flukeserver      2359/udp
+nexstorindltd    2360/tcp
+nexstorindltd    2360/udp
+tl1              2361/tcp
+tl1              2361/udp
+digiman          2362/tcp
+digiman          2362/udp
+mediacntrlnfsd   2363/tcp
+mediacntrlnfsd   2363/udp
+oi-2000          2364/tcp
+oi-2000          2364/udp
+dbref            2365/tcp
+dbref            2365/udp
+qip-login        2366/tcp
+qip-login        2366/udp
+service-ctrl     2367/tcp
+service-ctrl     2367/udp
+opentable        2368/tcp
+opentable        2368/udp
+l3-hbmon         2370/tcp
+l3-hbmon         2370/udp
+rda              2371/tcp
+lanmessenger     2372/tcp
+lanmessenger     2372/udp
+remographlm      2373/tcp
+hydra            2374/tcp
+docker           2375/tcp
+docker-s         2376/tcp
+swarm            2377/tcp
+etcd-client      2379/tcp
+etcd-server      2380/tcp
+compaq-https     2381/tcp
+compaq-https     2381/udp
+ms-olap3         2382/tcp
+ms-olap3         2382/udp
+ms-olap4         2383/tcp
+ms-olap4         2383/udp
+sd-request       2384/tcp
+sd-capacity      2384/udp
+sd-data          2385/tcp
+sd-data          2385/udp
+virtualtape      2386/tcp
+virtualtape      2386/udp
+vsamredirector   2387/tcp
+vsamredirector   2387/udp
+mynahautostart   2388/tcp
+mynahautostart   2388/udp
+ovsessionmgr     2389/tcp
+ovsessionmgr     2389/udp
+rsmtp            2390/tcp
+rsmtp            2390/udp
+3com-net-mgmt    2391/tcp
+3com-net-mgmt    2391/udp
+tacticalauth     2392/tcp
+tacticalauth     2392/udp
+ms-olap1         2393/tcp
+ms-olap1         2393/udp
+ms-olap2         2394/tcp
+ms-olap2         2394/udp
+lan900-remote    2395/tcp
+lan900-remote    2395/udp
+wusage           2396/tcp
+wusage           2396/udp
+ncl              2397/tcp
+ncl              2397/udp
+orbiter          2398/tcp
+orbiter          2398/udp
+fmpro-fdal       2399/tcp
+fmpro-fdal       2399/udp
+opequus-server   2400/tcp
+opequus-server   2400/udp
+cvspserver       2401/tcp
+cvspserver       2401/udp
+taskmaster2000   2402/tcp
+taskmaster2000   2402/udp
+taskmaster2000   2403/tcp
+taskmaster2000   2403/udp
+iec-104          2404/tcp
+iec-104          2404/udp
+trc-netpoll      2405/tcp
+trc-netpoll      2405/udp
+jediserver       2406/tcp
+jediserver       2406/udp
+orion            2407/tcp
+orion            2407/udp
+railgun-webaccl  2408/tcp
+sns-protocol     2409/tcp
+sns-protocol     2409/udp
+vrts-registry    2410/tcp
+vrts-registry    2410/udp
+netwave-ap-mgmt  2411/tcp
+netwave-ap-mgmt  2411/udp
+cdn              2412/tcp
+cdn              2412/udp
+orion-rmi-reg    2413/tcp
+orion-rmi-reg    2413/udp
+beeyond          2414/tcp
+beeyond          2414/udp
+codima-rtp       2415/tcp
+codima-rtp       2415/udp
+rmtserver        2416/tcp
+rmtserver        2416/udp
+composit-server  2417/tcp
+composit-server  2417/udp
+cas              2418/tcp
+cas              2418/udp
+attachmate-s2s   2419/tcp
+attachmate-s2s   2419/udp
+dslremote-mgmt   2420/tcp
+dslremote-mgmt   2420/udp
+g-talk           2421/tcp
+g-talk           2421/udp
+crmsbits         2422/tcp
+crmsbits         2422/udp
+rnrp             2423/tcp
+rnrp             2423/udp
+kofax-svr        2424/tcp
+kofax-svr        2424/udp
+fjitsuappmgr     2425/tcp
+fjitsuappmgr     2425/udp
+vcmp             2426/tcp
+vcmp             2426/udp
+mgcp-gateway     2427/tcp
+mgcp-gateway     2427/udp
+ott              2428/tcp
+ott              2428/udp
+ft-role          2429/tcp
+ft-role          2429/udp
+venus            2430/tcp
+venus            2430/udp
+venus-se         2431/tcp
+venus-se         2431/udp
+codasrv          2432/tcp
+codasrv          2432/udp
+codasrv-se       2433/tcp
+codasrv-se       2433/udp
+pxc-epmap        2434/tcp
+pxc-epmap        2434/udp
+optilogic        2435/tcp
+optilogic        2435/udp
+topx             2436/tcp
+topx             2436/udp
+unicontrol       2437/tcp
+unicontrol       2437/udp
+msp              2438/tcp
+msp              2438/udp
+sybasedbsynch    2439/tcp
+sybasedbsynch    2439/udp
+spearway         2440/tcp
+spearway         2440/udp
+pvsw-inet        2441/tcp
+pvsw-inet        2441/udp
+netangel         2442/tcp
+netangel         2442/udp
+powerclientcsf   2443/tcp
+powerclientcsf   2443/udp
+btpp2sectrans    2444/tcp
+btpp2sectrans    2444/udp
+dtn1             2445/tcp
+dtn1             2445/udp
+bues-service     2446/tcp
+bues-service     2446/udp
+ovwdb            2447/tcp
+ovwdb            2447/udp
+hpppssvr         2448/tcp
+hpppssvr         2448/udp
+ratl             2449/tcp
+ratl             2449/udp
+netadmin         2450/tcp
+netadmin         2450/udp
+netchat          2451/tcp
+netchat          2451/udp
+snifferclient    2452/tcp
+snifferclient    2452/udp
+madge-ltd        2453/tcp
+madge-ltd        2453/udp
+indx-dds         2454/tcp
+indx-dds         2454/udp
+wago-io-system   2455/tcp
+wago-io-system   2455/udp
+altav-remmgt     2456/tcp
+altav-remmgt     2456/udp
+rapido-ip        2457/tcp
+rapido-ip        2457/udp
+griffin          2458/tcp
+griffin          2458/udp
+xrpl             2459/tcp
+xrpl             2459/udp
+ms-theater       2460/tcp
+ms-theater       2460/udp
+qadmifoper       2461/tcp
+qadmifoper       2461/udp
+qadmifevent      2462/tcp
+qadmifevent      2462/udp
+lsi-raid-mgmt    2463/tcp
+lsi-raid-mgmt    2463/udp
+direcpc-si       2464/tcp
+direcpc-si       2464/udp
+lbm              2465/tcp
+lbm              2465/udp
+lbf              2466/tcp
+lbf              2466/udp
+high-criteria    2467/tcp
+high-criteria    2467/udp
+qip-msgd         2468/tcp
+qip-msgd         2468/udp
+mti-tcs-comm     2469/tcp
+mti-tcs-comm     2469/udp
+taskman-port     2470/tcp
+taskman-port     2470/udp
+seaodbc          2471/tcp
+seaodbc          2471/udp
+c3               2472/tcp
+c3               2472/udp
+aker-cdp         2473/tcp
+aker-cdp         2473/udp
+vitalanalysis    2474/tcp
+vitalanalysis    2474/udp
+ace-server       2475/tcp
+ace-server       2475/udp
+ace-svr-prop     2476/tcp
+ace-svr-prop     2476/udp
+ssm-cvs          2477/tcp
+ssm-cvs          2477/udp
+ssm-cssps        2478/tcp
+ssm-cssps        2478/udp
+ssm-els          2479/tcp
+ssm-els          2479/udp
+powerexchange    2480/tcp
+powerexchange    2480/udp
+giop             2481/tcp
+giop             2481/udp
+giop-ssl         2482/tcp
+giop-ssl         2482/udp
+ttc              2483/tcp
+ttc              2483/udp
+ttc-ssl          2484/tcp
+ttc-ssl          2484/udp
+netobjects1      2485/tcp
+netobjects1      2485/udp
+netobjects2      2486/tcp
+netobjects2      2486/udp
+pns              2487/tcp
+pns              2487/udp
+moy-corp         2488/tcp
+moy-corp         2488/udp
+tsilb            2489/tcp
+tsilb            2489/udp
+qip-qdhcp        2490/tcp
+qip-qdhcp        2490/udp
+conclave-cpp     2491/tcp
+conclave-cpp     2491/udp
+groove           2492/tcp
+groove           2492/udp
+talarian-mqs     2493/tcp
+talarian-mqs     2493/udp
+bmc-ar           2494/tcp
+bmc-ar           2494/udp
+fast-rem-serv    2495/tcp
+fast-rem-serv    2495/udp
+dirgis           2496/tcp
+dirgis           2496/udp
+quaddb           2497/tcp
+quaddb           2497/udp
+odn-castraq      2498/tcp
+odn-castraq      2498/udp
+unicontrol       2499/tcp
+unicontrol       2499/udp
+rtsserv          2500/tcp
+rtsserv          2500/udp
+rtsclient        2501/tcp
+rtsclient        2501/udp
+kentrox-prot     2502/tcp
+kentrox-prot     2502/udp
+nms-dpnss        2503/tcp
+nms-dpnss        2503/udp
+wlbs             2504/tcp
+wlbs             2504/udp
+ppcontrol        2505/tcp
+ppcontrol        2505/udp
+jbroker          2506/tcp
+jbroker          2506/udp
+spock            2507/tcp
+spock            2507/udp
+jdatastore       2508/tcp
+jdatastore       2508/udp
+fjmpss           2509/tcp
+fjmpss           2509/udp
+fjappmgrbulk     2510/tcp
+fjappmgrbulk     2510/udp
+metastorm        2511/tcp
+metastorm        2511/udp
+citrixima        2512/tcp
+citrixima        2512/udp
+citrixadmin      2513/tcp
+citrixadmin      2513/udp
+facsys-ntp       2514/tcp
+facsys-ntp       2514/udp
+facsys-router    2515/tcp
+facsys-router    2515/udp
+maincontrol      2516/tcp
+maincontrol      2516/udp
+call-sig-trans   2517/tcp
+call-sig-trans   2517/udp
+willy            2518/tcp
+willy            2518/udp
+globmsgsvc       2519/tcp
+globmsgsvc       2519/udp
+pvsw             2520/tcp
+pvsw             2520/udp
+adaptecmgr       2521/tcp
+adaptecmgr       2521/udp
+windb            2522/tcp
+windb            2522/udp
+qke-llc-v3       2523/tcp
+qke-llc-v3       2523/udp
+optiwave-lm      2524/tcp
+optiwave-lm      2524/udp
+ms-v-worlds      2525/tcp
+ms-v-worlds      2525/udp
+ema-sent-lm      2526/tcp
+ema-sent-lm      2526/udp
+iqserver         2527/tcp
+iqserver         2527/udp
+ncr-ccl          2528/tcp
+ncr-ccl          2528/udp
+utsftp           2529/tcp
+utsftp           2529/udp
+vrcommerce       2530/tcp
+vrcommerce       2530/udp
+ito-e-gui        2531/tcp
+ito-e-gui        2531/udp
+ovtopmd          2532/tcp
+ovtopmd          2532/udp
+snifferserver    2533/tcp
+snifferserver    2533/udp
+combox-web-acc   2534/tcp
+combox-web-acc   2534/udp
+madcap           2535/tcp
+madcap           2535/udp
+btpp2audctr1     2536/tcp
+btpp2audctr1     2536/udp
+upgrade          2537/tcp
+upgrade          2537/udp
+vnwk-prapi       2538/tcp
+vnwk-prapi       2538/udp
+vsiadmin         2539/tcp
+vsiadmin         2539/udp
+lonworks         2540/tcp
+lonworks         2540/udp
+lonworks2        2541/tcp
+lonworks2        2541/udp
+udrawgraph       2542/tcp
+udrawgraph       2542/udp
+reftek           2543/tcp
+reftek           2543/udp
+novell-zen       2544/tcp
+novell-zen       2544/udp
+sis-emt          2545/tcp
+sis-emt          2545/udp
+vytalvaultbrtp   2546/tcp
+vytalvaultbrtp   2546/udp
+vytalvaultvsmp   2547/tcp
+vytalvaultvsmp   2547/udp
+vytalvaultpipe   2548/tcp
+vytalvaultpipe   2548/udp
+ipass            2549/tcp
+ipass            2549/udp
+ads              2550/tcp
+ads              2550/udp
+isg-uda-server   2551/tcp
+isg-uda-server   2551/udp
+call-logging     2552/tcp
+call-logging     2552/udp
+efidiningport    2553/tcp
+efidiningport    2553/udp
+vcnet-link-v10   2554/tcp
+vcnet-link-v10   2554/udp
+compaq-wcp       2555/tcp
+compaq-wcp       2555/udp
+nicetec-nmsvc    2556/tcp
+nicetec-nmsvc    2556/udp
+nicetec-mgmt     2557/tcp
+nicetec-mgmt     2557/udp
+pclemultimedia   2558/tcp
+pclemultimedia   2558/udp
+lstp             2559/tcp
+lstp             2559/udp
+labrat           2560/tcp
+labrat           2560/udp
+mosaixcc         2561/tcp
+mosaixcc         2561/udp
+delibo           2562/tcp
+delibo           2562/udp
+cti-redwood      2563/tcp
+cti-redwood      2563/udp
+hp-3000-telnet   2564/tcp
+hp-3000-telnet   2564/udp
+coord-svr        2565/tcp
+coord-svr        2565/udp
+pcs-pcw          2566/tcp
+pcs-pcw          2566/udp
+clp              2567/tcp
+clp              2567/udp
+spamtrap         2568/tcp
+spamtrap         2568/udp
+sonuscallsig     2569/tcp
+sonuscallsig     2569/udp
+hs-port          2570/tcp
+hs-port          2570/udp
+cecsvc           2571/tcp
+cecsvc           2571/udp
+ibp              2572/tcp
+ibp              2572/udp
+trustestablish   2573/tcp
+trustestablish   2573/udp
+blockade-bpsp    2574/tcp
+blockade-bpsp    2574/udp
+hl7              2575/tcp
+hl7              2575/udp
+tclprodebugger   2576/tcp
+tclprodebugger   2576/udp
+scipticslsrvr    2577/tcp
+scipticslsrvr    2577/udp
+rvs-isdn-dcp     2578/tcp
+rvs-isdn-dcp     2578/udp
+mpfoncl          2579/tcp
+mpfoncl          2579/udp
+tributary        2580/tcp
+tributary        2580/udp
+argis-te         2581/tcp
+argis-te         2581/udp
+argis-ds         2582/tcp
+argis-ds         2582/udp
+mon              2583/tcp
+mon              2583/udp
+cyaserv          2584/tcp
+cyaserv          2584/udp
+netx-server      2585/tcp
+netx-server      2585/udp
+netx-agent       2586/tcp
+netx-agent       2586/udp
+masc             2587/tcp
+masc             2587/udp
+privilege        2588/tcp
+privilege        2588/udp
+quartus-tcl      2589/tcp
+quartus-tcl      2589/udp
+idotdist         2590/tcp
+idotdist         2590/udp
+maytagshuffle    2591/tcp
+maytagshuffle    2591/udp
+netrek           2592/tcp
+netrek           2592/udp
+mns-mail         2593/tcp
+mns-mail         2593/udp
+dts              2594/tcp
+dts              2594/udp
+worldfusion1     2595/tcp
+worldfusion1     2595/udp
+worldfusion2     2596/tcp
+worldfusion2     2596/udp
+homesteadglory   2597/tcp
+homesteadglory   2597/udp
+citriximaclient  2598/tcp
+citriximaclient  2598/udp
+snapd            2599/tcp
+snapd            2599/udp
+hpstgmgr         2600/tcp
+hpstgmgr         2600/udp
+discp-client     2601/tcp
+discp-client     2601/udp
+discp-server     2602/tcp
+discp-server     2602/udp
+servicemeter     2603/tcp
+servicemeter     2603/udp
+nsc-ccs          2604/tcp
+nsc-ccs          2604/udp
+nsc-posa         2605/tcp
+nsc-posa         2605/udp
+netmon           2606/tcp
+netmon           2606/udp
+connection       2607/tcp
+connection       2607/udp
+wag-service      2608/tcp
+wag-service      2608/udp
+system-monitor   2609/tcp
+system-monitor   2609/udp
+versa-tek        2610/tcp
+versa-tek        2610/udp
+lionhead         2611/tcp
+lionhead         2611/udp
+qpasa-agent      2612/tcp
+qpasa-agent      2612/udp
+smntubootstrap   2613/tcp
+smntubootstrap   2613/udp
+neveroffline     2614/tcp
+neveroffline     2614/udp
+firepower        2615/tcp
+firepower        2615/udp
+appswitch-emp    2616/tcp
+appswitch-emp    2616/udp
+cmadmin          2617/tcp
+cmadmin          2617/udp
+priority-e-com   2618/tcp
+priority-e-com   2618/udp
+bruce            2619/tcp
+bruce            2619/udp
+lpsrecommender   2620/tcp
+lpsrecommender   2620/udp
+miles-apart      2621/tcp
+miles-apart      2621/udp
+metricadbc       2622/tcp
+metricadbc       2622/udp
+lmdp             2623/tcp
+lmdp             2623/udp
+aria             2624/tcp
+aria             2624/udp
+blwnkl-port      2625/tcp
+blwnkl-port      2625/udp
+gbjd816          2626/tcp
+gbjd816          2626/udp
+moshebeeri       2627/tcp
+moshebeeri       2627/udp
+dict             2628/tcp
+dict             2628/udp
+sitaraserver     2629/tcp
+sitaraserver     2629/udp
+sitaramgmt       2630/tcp
+sitaramgmt       2630/udp
+sitaradir        2631/tcp
+sitaradir        2631/udp
+irdg-post        2632/tcp
+irdg-post        2632/udp
+interintelli     2633/tcp
+interintelli     2633/udp
+pk-electronics   2634/tcp
+pk-electronics   2634/udp
+backburner       2635/tcp
+backburner       2635/udp
+solve            2636/tcp
+solve            2636/udp
+imdocsvc         2637/tcp
+imdocsvc         2637/udp
+sybaseanywhere   2638/tcp
+sybaseanywhere   2638/udp
+aminet           2639/tcp
+aminet           2639/udp
+ami-control      2640/tcp
+ami-control      2640/udp
+hdl-srv          2641/tcp
+hdl-srv          2641/udp
+tragic           2642/tcp
+tragic           2642/udp
+gte-samp         2643/tcp
+gte-samp         2643/udp
+travsoft-ipx-t   2644/tcp
+travsoft-ipx-t   2644/udp
+novell-ipx-cmd   2645/tcp
+novell-ipx-cmd   2645/udp
+and-lm           2646/tcp
+and-lm           2646/udp
+syncserver       2647/tcp
+syncserver       2647/udp
+upsnotifyprot    2648/tcp
+upsnotifyprot    2648/udp
+vpsipport        2649/tcp
+vpsipport        2649/udp
+eristwoguns      2650/tcp
+eristwoguns      2650/udp
+ebinsite         2651/tcp
+ebinsite         2651/udp
+interpathpanel   2652/tcp
+interpathpanel   2652/udp
+sonus            2653/tcp
+sonus            2653/udp
+corel-vncadmin   2654/tcp
+corel-vncadmin   2654/udp
+unglue           2655/tcp
+unglue           2655/udp
+kana             2656/tcp
+kana             2656/udp
+sns-dispatcher   2657/tcp
+sns-dispatcher   2657/udp
+sns-admin        2658/tcp
+sns-admin        2658/udp
+sns-query        2659/tcp
+sns-query        2659/udp
+gcmonitor        2660/tcp
+gcmonitor        2660/udp
+olhost           2661/tcp
+olhost           2661/udp
+bintec-capi      2662/tcp
+bintec-capi      2662/udp
+bintec-tapi      2663/tcp
+bintec-tapi      2663/udp
+patrol-mq-gm     2664/tcp
+patrol-mq-gm     2664/udp
+patrol-mq-nm     2665/tcp
+patrol-mq-nm     2665/udp
+extensis         2666/tcp
+extensis         2666/udp
+alarm-clock-s    2667/tcp
+alarm-clock-s    2667/udp
+alarm-clock-c    2668/tcp
+alarm-clock-c    2668/udp
+toad             2669/tcp
+toad             2669/udp
+tve-announce     2670/tcp
+tve-announce     2670/udp
+newlixreg        2671/tcp
+newlixreg        2671/udp
+nhserver         2672/tcp
+nhserver         2672/udp
+firstcall42      2673/tcp
+firstcall42      2673/udp
+ewnn             2674/tcp
+ewnn             2674/udp
+ttc-etap         2675/tcp
+ttc-etap         2675/udp
+simslink         2676/tcp
+simslink         2676/udp
+gadgetgate1way   2677/tcp
+gadgetgate1way   2677/udp
+gadgetgate2way   2678/tcp
+gadgetgate2way   2678/udp
+syncserverssl    2679/tcp
+syncserverssl    2679/udp
+pxc-sapxom       2680/tcp
+pxc-sapxom       2680/udp
+mpnjsomb         2681/tcp
+mpnjsomb         2681/udp
+ncdloadbalance   2683/tcp
+ncdloadbalance   2683/udp
+mpnjsosv         2684/tcp
+mpnjsosv         2684/udp
+mpnjsocl         2685/tcp
+mpnjsocl         2685/udp
+mpnjsomg         2686/tcp
+mpnjsomg         2686/udp
+pq-lic-mgmt      2687/tcp
+pq-lic-mgmt      2687/udp
+md-cg-http       2688/tcp
+md-cg-http       2688/udp
+fastlynx         2689/tcp
+fastlynx         2689/udp
+hp-nnm-data      2690/tcp
+hp-nnm-data      2690/udp
+itinternet       2691/tcp
+itinternet       2691/udp
+admins-lms       2692/tcp
+admins-lms       2692/udp
+pwrsevent        2694/tcp
+pwrsevent        2694/udp
+vspread          2695/tcp
+vspread          2695/udp
+unifyadmin       2696/tcp
+unifyadmin       2696/udp
+oce-snmp-trap    2697/tcp
+oce-snmp-trap    2697/udp
+mck-ivpip        2698/tcp
+mck-ivpip        2698/udp
+csoft-plusclnt   2699/tcp
+csoft-plusclnt   2699/udp
+tqdata           2700/tcp
+tqdata           2700/udp
+sms-rcinfo       2701/tcp
+sms-rcinfo       2701/udp
+sms-xfer         2702/tcp
+sms-xfer         2702/udp
+sms-chat         2703/tcp
+sms-chat         2703/udp
+sms-remctrl      2704/tcp
+sms-remctrl      2704/udp
+sds-admin        2705/tcp
+sds-admin        2705/udp
+ncdmirroring     2706/tcp
+ncdmirroring     2706/udp
+emcsymapiport    2707/tcp
+emcsymapiport    2707/udp
+banyan-net       2708/tcp
+banyan-net       2708/udp
+supermon         2709/tcp
+supermon         2709/udp
+sso-service      2710/tcp
+sso-service      2710/udp
+sso-control      2711/tcp
+sso-control      2711/udp
+aocp             2712/tcp
+aocp             2712/udp
+raventbs         2713/tcp
+raventbs         2713/udp
+raventdm         2714/tcp
+raventdm         2714/udp
+hpstgmgr2        2715/tcp
+hpstgmgr2        2715/udp
+inova-ip-disco   2716/tcp
+inova-ip-disco   2716/udp
+pn-requester     2717/tcp
+pn-requester     2717/udp
+pn-requester2    2718/tcp
+pn-requester2    2718/udp
+scan-change      2719/tcp
+scan-change      2719/udp
+wkars            2720/tcp
+wkars            2720/udp
+smart-diagnose   2721/tcp
+smart-diagnose   2721/udp
+proactivesrvr    2722/tcp
+proactivesrvr    2722/udp
+watchdog-nt      2723/tcp
+watchdog-nt      2723/udp
+qotps            2724/tcp
+qotps            2724/udp
+msolap-ptp2      2725/tcp
+msolap-ptp2      2725/udp
+tams             2726/tcp
+tams             2726/udp
+mgcp-callagent   2727/tcp
+mgcp-callagent   2727/udp
+sqdr             2728/tcp
+sqdr             2728/udp
+tcim-control     2729/tcp
+tcim-control     2729/udp
+nec-raidplus     2730/tcp
+nec-raidplus     2730/udp
+fyre-messanger   2731/tcp
+fyre-messanger   2731/udp
+g5m              2732/tcp
+g5m              2732/udp
+signet-ctf       2733/tcp
+signet-ctf       2733/udp
+ccs-software     2734/tcp
+ccs-software     2734/udp
+netiq-mc         2735/tcp
+netiq-mc         2735/udp
+radwiz-nms-srv   2736/tcp
+radwiz-nms-srv   2736/udp
+srp-feedback     2737/tcp
+srp-feedback     2737/udp
+ndl-tcp-ois-gw   2738/tcp
+ndl-tcp-ois-gw   2738/udp
+tn-timing        2739/tcp
+tn-timing        2739/udp
+alarm            2740/tcp
+alarm            2740/udp
+tsb              2741/tcp
+tsb              2741/udp
+tsb2             2742/tcp
+tsb2             2742/udp
+murx             2743/tcp
+murx             2743/udp
+honyaku          2744/tcp
+honyaku          2744/udp
+urbisnet         2745/tcp
+urbisnet         2745/udp
+cpudpencap       2746/tcp
+cpudpencap       2746/udp
+fjippol-swrly    2747/tcp
+fjippol-swrly    2747/udp
+fjippol-polsvr   2748/tcp
+fjippol-polsvr   2748/udp
+fjippol-cnsl     2749/tcp
+fjippol-cnsl     2749/udp
+fjippol-port1    2750/tcp
+fjippol-port1    2750/udp
+fjippol-port2    2751/tcp
+fjippol-port2    2751/udp
+rsisysaccess     2752/tcp
+rsisysaccess     2752/udp
+de-spot          2753/tcp
+de-spot          2753/udp
+apollo-cc        2754/tcp
+apollo-cc        2754/udp
+expresspay       2755/tcp
+expresspay       2755/udp
+simplement-tie   2756/tcp
+simplement-tie   2756/udp
+cnrp             2757/tcp
+cnrp             2757/udp
+apollo-status    2758/tcp
+apollo-status    2758/udp
+apollo-gms       2759/tcp
+apollo-gms       2759/udp
+sabams           2760/tcp
+sabams           2760/udp
+dicom-iscl       2761/tcp
+dicom-iscl       2761/udp
+dicom-tls        2762/tcp
+dicom-tls        2762/udp
+desktop-dna      2763/tcp
+desktop-dna      2763/udp
+data-insurance   2764/tcp
+data-insurance   2764/udp
+qip-audup        2765/tcp
+qip-audup        2765/udp
+compaq-scp       2766/tcp
+compaq-scp       2766/udp
+uadtc            2767/tcp
+uadtc            2767/udp
+uacs             2768/tcp
+uacs             2768/udp
+exce             2769/tcp
+exce             2769/udp
+veronica         2770/tcp
+veronica         2770/udp
+vergencecm       2771/tcp
+vergencecm       2771/udp
+auris            2772/tcp
+auris            2772/udp
+rbakcup1         2773/tcp
+rbakcup1         2773/udp
+rbakcup2         2774/tcp
+rbakcup2         2774/udp
+smpp             2775/tcp
+smpp             2775/udp
+ridgeway1        2776/tcp
+ridgeway1        2776/udp
+ridgeway2        2777/tcp
+ridgeway2        2777/udp
+gwen-sonya       2778/tcp
+gwen-sonya       2778/udp
+lbc-sync         2779/tcp
+lbc-sync         2779/udp
+lbc-control      2780/tcp
+lbc-control      2780/udp
+whosells         2781/tcp
+whosells         2781/udp
+everydayrc       2782/tcp
+everydayrc       2782/udp
+aises            2783/tcp
+aises            2783/udp
+www-dev          2784/tcp
+www-dev          2784/udp
+aic-np           2785/tcp
+aic-np           2785/udp
+aic-oncrpc       2786/tcp
+aic-oncrpc       2786/udp
+piccolo          2787/tcp
+piccolo          2787/udp
+fryeserv         2788/tcp
+fryeserv         2788/udp
+media-agent      2789/tcp
+media-agent      2789/udp
+plgproxy         2790/tcp
+plgproxy         2790/udp
+mtport-regist    2791/tcp
+mtport-regist    2791/udp
+f5-globalsite    2792/tcp
+f5-globalsite    2792/udp
+initlsmsad       2793/tcp
+initlsmsad       2793/udp
+livestats        2795/tcp
+livestats        2795/udp
+ac-tech          2796/tcp
+ac-tech          2796/udp
+esp-encap        2797/tcp
+esp-encap        2797/udp
+tmesis-upshot    2798/tcp
+tmesis-upshot    2798/udp
+icon-discover    2799/tcp
+icon-discover    2799/udp
+acc-raid         2800/tcp
+acc-raid         2800/udp
+igcp             2801/tcp
+igcp             2801/udp
+veritas-tcp1     2802/tcp
+veritas-udp1     2802/udp
+btprjctrl        2803/tcp
+btprjctrl        2803/udp
+dvr-esm          2804/tcp
+dvr-esm          2804/udp
+wta-wsp-s        2805/tcp
+wta-wsp-s        2805/udp
+cspuni           2806/tcp
+cspuni           2806/udp
+cspmulti         2807/tcp
+cspmulti         2807/udp
+j-lan-p          2808/tcp
+j-lan-p          2808/udp
+corbaloc         2809/tcp
+corbaloc         2809/udp
+netsteward       2810/tcp
+netsteward       2810/udp
+gsiftp           2811/tcp
+gsiftp           2811/udp
+atmtcp           2812/tcp
+atmtcp           2812/udp
+llm-pass         2813/tcp
+llm-pass         2813/udp
+llm-csv          2814/tcp
+llm-csv          2814/udp
+lbc-measure      2815/tcp
+lbc-measure      2815/udp
+lbc-watchdog     2816/tcp
+lbc-watchdog     2816/udp
+nmsigport        2817/tcp
+nmsigport        2817/udp
+rmlnk            2818/tcp
+rmlnk            2818/udp
+fc-faultnotify   2819/tcp
+fc-faultnotify   2819/udp
+univision        2820/tcp
+univision        2820/udp
+vrts-at-port     2821/tcp
+vrts-at-port     2821/udp
+ka0wuc           2822/tcp
+ka0wuc           2822/udp
+cqg-netlan       2823/tcp
+cqg-netlan       2823/udp
+cqg-netlan-1     2824/tcp
+cqg-netlan-1     2824/udp
+slc-systemlog    2826/tcp
+slc-systemlog    2826/udp
+slc-ctrlrloops   2827/tcp
+slc-ctrlrloops   2827/udp
+itm-lm           2828/tcp
+itm-lm           2828/udp
+silkp1           2829/tcp
+silkp1           2829/udp
+silkp2           2830/tcp
+silkp2           2830/udp
+silkp3           2831/tcp
+silkp3           2831/udp
+silkp4           2832/tcp
+silkp4           2832/udp
+glishd           2833/tcp
+glishd           2833/udp
+evtp             2834/tcp
+evtp             2834/udp
+evtp-data        2835/tcp
+evtp-data        2835/udp
+catalyst         2836/tcp
+catalyst         2836/udp
+repliweb         2837/tcp
+repliweb         2837/udp
+starbot          2838/tcp
+starbot          2838/udp
+nmsigport        2839/tcp
+nmsigport        2839/udp
+l3-exprt         2840/tcp
+l3-exprt         2840/udp
+l3-ranger        2841/tcp
+l3-ranger        2841/udp
+l3-hawk          2842/tcp
+l3-hawk          2842/udp
+pdnet            2843/tcp
+pdnet            2843/udp
+bpcp-poll        2844/tcp
+bpcp-poll        2844/udp
+bpcp-trap        2845/tcp
+bpcp-trap        2845/udp
+aimpp-hello      2846/tcp
+aimpp-hello      2846/udp
+aimpp-port-req   2847/tcp
+aimpp-port-req   2847/udp
+amt-blc-port     2848/tcp
+amt-blc-port     2848/udp
+fxp              2849/tcp
+fxp              2849/udp
+metaconsole      2850/tcp
+metaconsole      2850/udp
+webemshttp       2851/tcp
+webemshttp       2851/udp
+bears-01         2852/tcp
+bears-01         2852/udp
+ispipes          2853/tcp
+ispipes          2853/udp
+infomover        2854/tcp
+infomover        2854/udp
+msrp             2855/tcp
+cesdinv          2856/tcp
+cesdinv          2856/udp
+simctlp          2857/tcp
+simctlp          2857/udp
+ecnp             2858/tcp
+ecnp             2858/udp
+activememory     2859/tcp
+activememory     2859/udp
+dialpad-voice1   2860/tcp
+dialpad-voice1   2860/udp
+dialpad-voice2   2861/tcp
+dialpad-voice2   2861/udp
+ttg-protocol     2862/tcp
+ttg-protocol     2862/udp
+sonardata        2863/tcp
+sonardata        2863/udp
+astronova-main   2864/tcp
+astronova-main   2864/udp
+pit-vpn          2865/tcp
+pit-vpn          2865/udp
+iwlistener       2866/tcp
+iwlistener       2866/udp
+esps-portal      2867/tcp
+esps-portal      2867/udp
+npep-messaging   2868/tcp
+npep-messaging   2868/udp
+icslap           2869/tcp
+icslap           2869/udp
+daishi           2870/tcp
+daishi           2870/udp
+msi-selectplay   2871/tcp
+msi-selectplay   2871/udp
+radix            2872/tcp
+radix            2872/udp
+dxmessagebase1   2874/tcp
+dxmessagebase1   2874/udp
+dxmessagebase2   2875/tcp
+dxmessagebase2   2875/udp
+sps-tunnel       2876/tcp
+sps-tunnel       2876/udp
+bluelance        2877/tcp
+bluelance        2877/udp
+aap              2878/tcp
+aap              2878/udp
+ucentric-ds      2879/tcp
+ucentric-ds      2879/udp
+synapse          2880/tcp
+synapse          2880/udp
+ndsp             2881/tcp
+ndsp             2881/udp
+ndtp             2882/tcp
+ndtp             2882/udp
+ndnp             2883/tcp
+ndnp             2883/udp
+flashmsg         2884/tcp
+flashmsg         2884/udp
+topflow          2885/tcp
+topflow          2885/udp
+responselogic    2886/tcp
+responselogic    2886/udp
+aironetddp       2887/tcp
+aironetddp       2887/udp
+spcsdlobby       2888/tcp
+spcsdlobby       2888/udp
+rsom             2889/tcp
+rsom             2889/udp
+cspclmulti       2890/tcp
+cspclmulti       2890/udp
+cinegrfx-elmd    2891/tcp
+cinegrfx-elmd    2891/udp
+snifferdata      2892/tcp
+snifferdata      2892/udp
+vseconnector     2893/tcp
+vseconnector     2893/udp
+abacus-remote    2894/tcp
+abacus-remote    2894/udp
+natuslink        2895/tcp
+natuslink        2895/udp
+ecovisiong6-1    2896/tcp
+ecovisiong6-1    2896/udp
+citrix-rtmp      2897/tcp
+citrix-rtmp      2897/udp
+appliance-cfg    2898/tcp
+appliance-cfg    2898/udp
+powergemplus     2899/tcp
+powergemplus     2899/udp
+quicksuite       2900/tcp
+quicksuite       2900/udp
+allstorcns       2901/tcp
+allstorcns       2901/udp
+netaspi          2902/tcp
+netaspi          2902/udp
+suitcase         2903/tcp
+suitcase         2903/udp
+m2ua             2904/tcp
+m2ua             2904/udp
+m2ua             2904/sctp
+m3ua             2905/tcp
+m3ua             2905/sctp
+caller9          2906/tcp
+caller9          2906/udp
+webmethods-b2b   2907/tcp
+webmethods-b2b   2907/udp
+mao              2908/tcp
+mao              2908/udp
+funk-dialout     2909/tcp
+funk-dialout     2909/udp
+tdaccess         2910/tcp
+tdaccess         2910/udp
+blockade         2911/tcp
+blockade         2911/udp
+epicon           2912/tcp
+epicon           2912/udp
+boosterware      2913/tcp
+boosterware      2913/udp
+gamelobby        2914/tcp
+gamelobby        2914/udp
+tksocket         2915/tcp
+tksocket         2915/udp
+elvin-server     2916/tcp
+elvin-server     2916/udp
+elvin-client     2917/tcp
+elvin-client     2917/udp
+kastenchasepad   2918/tcp
+kastenchasepad   2918/udp
+roboer           2919/tcp
+roboer           2919/udp
+roboeda          2920/tcp
+roboeda          2920/udp
+cesdcdman        2921/tcp
+cesdcdman        2921/udp
+cesdcdtrn        2922/tcp
+cesdcdtrn        2922/udp
+wta-wsp-wtp-s    2923/tcp
+wta-wsp-wtp-s    2923/udp
+precise-vip      2924/tcp
+precise-vip      2924/udp
+mobile-file-dl   2926/tcp
+mobile-file-dl   2926/udp
+unimobilectrl    2927/tcp
+unimobilectrl    2927/udp
+redstone-cpss    2928/tcp
+redstone-cpss    2928/udp
+amx-webadmin     2929/tcp
+amx-webadmin     2929/udp
+amx-weblinx      2930/tcp
+amx-weblinx      2930/udp
+circle-x         2931/tcp
+circle-x         2931/udp
+incp             2932/tcp
+incp             2932/udp
+4-tieropmgw      2933/tcp
+4-tieropmgw      2933/udp
+4-tieropmcli     2934/tcp
+4-tieropmcli     2934/udp
+qtp              2935/tcp
+qtp              2935/udp
+otpatch          2936/tcp
+otpatch          2936/udp
+pnaconsult-lm    2937/tcp
+pnaconsult-lm    2937/udp
+sm-pas-1         2938/tcp
+sm-pas-1         2938/udp
+sm-pas-2         2939/tcp
+sm-pas-2         2939/udp
+sm-pas-3         2940/tcp
+sm-pas-3         2940/udp
+sm-pas-4         2941/tcp
+sm-pas-4         2941/udp
+sm-pas-5         2942/tcp
+sm-pas-5         2942/udp
+ttnrepository    2943/tcp
+ttnrepository    2943/udp
+megaco-h248      2944/tcp
+megaco-h248      2944/udp
+megaco-h248      2944/sctp
+h248-binary      2945/tcp
+h248-binary      2945/udp
+h248-binary      2945/sctp
+fjsvmpor         2946/tcp
+fjsvmpor         2946/udp
+gpsd             2947/tcp
+gpsd             2947/udp
+wap-push         2948/tcp
+wap-push         2948/udp
+wap-pushsecure   2949/tcp
+wap-pushsecure   2949/udp
+esip             2950/tcp
+esip             2950/udp
+ottp             2951/tcp
+ottp             2951/udp
+mpfwsas          2952/tcp
+mpfwsas          2952/udp
+ovalarmsrv       2953/tcp
+ovalarmsrv       2953/udp
+ovalarmsrv-cmd   2954/tcp
+ovalarmsrv-cmd   2954/udp
+csnotify         2955/tcp
+csnotify         2955/udp
+ovrimosdbman     2956/tcp
+ovrimosdbman     2956/udp
+jmact5           2957/tcp
+jmact5           2957/udp
+jmact6           2958/tcp
+jmact6           2958/udp
+rmopagt          2959/tcp
+rmopagt          2959/udp
+dfoxserver       2960/tcp
+dfoxserver       2960/udp
+boldsoft-lm      2961/tcp
+boldsoft-lm      2961/udp
+iph-policy-cli   2962/tcp
+iph-policy-cli   2962/udp
+iph-policy-adm   2963/tcp
+iph-policy-adm   2963/udp
+bullant-srap     2964/tcp
+bullant-srap     2964/udp
+bullant-rap      2965/tcp
+bullant-rap      2965/udp
+idp-infotrieve   2966/tcp
+idp-infotrieve   2966/udp
+ssc-agent        2967/tcp
+ssc-agent        2967/udp
+enpp             2968/tcp
+enpp             2968/udp
+essp             2969/tcp
+essp             2969/udp
+index-net        2970/tcp
+index-net        2970/udp
+netclip          2971/tcp
+netclip          2971/udp
+pmsm-webrctl     2972/tcp
+pmsm-webrctl     2972/udp
+svnetworks       2973/tcp
+svnetworks       2973/udp
+signal           2974/tcp
+signal           2974/udp
+fjmpcm           2975/tcp
+fjmpcm           2975/udp
+cns-srv-port     2976/tcp
+cns-srv-port     2976/udp
+ttc-etap-ns      2977/tcp
+ttc-etap-ns      2977/udp
+ttc-etap-ds      2978/tcp
+ttc-etap-ds      2978/udp
+h263-video       2979/tcp
+h263-video       2979/udp
+wimd             2980/tcp
+wimd             2980/udp
+mylxamport       2981/tcp
+mylxamport       2981/udp
+iwb-whiteboard   2982/tcp
+iwb-whiteboard   2982/udp
+netplan          2983/tcp
+netplan          2983/udp
+hpidsadmin       2984/tcp
+hpidsadmin       2984/udp
+hpidsagent       2985/tcp
+hpidsagent       2985/udp
+stonefalls       2986/tcp
+stonefalls       2986/udp
+identify         2987/tcp
+identify         2987/udp
+hippad           2988/tcp
+hippad           2988/udp
+zarkov           2989/tcp
+zarkov           2989/udp
+boscap           2990/tcp
+boscap           2990/udp
+wkstn-mon        2991/tcp
+wkstn-mon        2991/udp
+avenyo           2992/tcp
+avenyo           2992/udp
+veritas-vis1     2993/tcp
+veritas-vis1     2993/udp
+veritas-vis2     2994/tcp
+veritas-vis2     2994/udp
+idrs             2995/tcp
+idrs             2995/udp
+vsixml           2996/tcp
+vsixml           2996/udp
+rebol            2997/tcp
+rebol            2997/udp
+realsecure       2998/tcp
+realsecure       2998/udp
+hbci             3000/tcp
+hbci             3000/udp
+remoteware-cl    3000/tcp
+remoteware-cl    3000/udp
+origo-native     3001/tcp
+exlm-agent       3002/tcp
+exlm-agent       3002/udp
+remoteware-srv   3002/tcp
+remoteware-srv   3002/udp
+cgms             3003/tcp
+cgms             3003/udp
+csoftragent      3004/tcp
+csoftragent      3004/udp
+geniuslm         3005/tcp
+geniuslm         3005/udp
+ii-admin         3006/tcp
+ii-admin         3006/udp
+lotusmtap        3007/tcp
+lotusmtap        3007/udp
+midnight-tech    3008/tcp
+midnight-tech    3008/udp
+pxc-ntfy         3009/tcp
+pxc-ntfy         3009/udp
+gw               3010/tcp
+ping-pong        3010/udp
+trusted-web      3011/tcp
+trusted-web      3011/udp
+twsdss           3012/tcp
+twsdss           3012/udp
+gilatskysurfer   3013/tcp
+gilatskysurfer   3013/udp
+broker-service   3014/tcp
+broker-service   3014/udp
+nati-dstp        3015/tcp
+nati-dstp        3015/udp
+notify-srvr      3016/tcp
+notify-srvr      3016/udp
+event-listener   3017/tcp
+event-listener   3017/udp
+srvc-registry    3018/tcp
+srvc-registry    3018/udp
+resource-mgr     3019/tcp
+resource-mgr     3019/udp
+cifs             3020/tcp
+cifs             3020/udp
+agriserver       3021/tcp
+agriserver       3021/udp
+csregagent       3022/tcp
+csregagent       3022/udp
+magicnotes       3023/tcp
+magicnotes       3023/udp
+nds-sso          3024/tcp
+nds-sso          3024/udp
+arepa-raft       3025/tcp
+arepa-raft       3025/udp
+agri-gateway     3026/tcp
+agri-gateway     3026/udp
+LiebDevMgmt-C    3027/tcp
+LiebDevMgmt-C    3027/udp
+LiebDevMgmt-DM   3028/tcp
+LiebDevMgmt-DM   3028/udp
+LiebDevMgmt-A    3029/tcp
+LiebDevMgmt-A    3029/udp
+arepa-cas        3030/tcp
+arepa-cas        3030/udp
+eppc             3031/tcp
+eppc             3031/udp
+redwood-chat     3032/tcp
+redwood-chat     3032/udp
+pdb              3033/tcp
+pdb              3033/udp
+osmosis-aeea     3034/tcp
+osmosis-aeea     3034/udp
+fjsv-gssagt      3035/tcp
+fjsv-gssagt      3035/udp
+hagel-dump       3036/tcp
+hagel-dump       3036/udp
+hp-san-mgmt      3037/tcp
+hp-san-mgmt      3037/udp
+santak-ups       3038/tcp
+santak-ups       3038/udp
+cogitate         3039/tcp
+cogitate         3039/udp
+tomato-springs   3040/tcp
+tomato-springs   3040/udp
+di-traceware     3041/tcp
+di-traceware     3041/udp
+journee          3042/tcp
+journee          3042/udp
+brp              3043/tcp
+brp              3043/udp
+epp              3044/tcp
+epp              3044/udp
+responsenet      3045/tcp
+responsenet      3045/udp
+di-ase           3046/tcp
+di-ase           3046/udp
+hlserver         3047/tcp
+hlserver         3047/udp
+pctrader         3048/tcp
+pctrader         3048/udp
+nsws             3049/tcp
+nsws             3049/udp
+gds-db           3050/tcp
+gds-db           3050/udp
+galaxy-server    3051/tcp
+galaxy-server    3051/udp
+apc-3052         3052/tcp
+apc-3052         3052/udp
+dsom-server      3053/tcp
+dsom-server      3053/udp
+amt-cnf-prot     3054/tcp
+amt-cnf-prot     3054/udp
+policyserver     3055/tcp
+policyserver     3055/udp
+cdl-server       3056/tcp
+cdl-server       3056/udp
+goahead-fldup    3057/tcp
+goahead-fldup    3057/udp
+videobeans       3058/tcp
+videobeans       3058/udp
+qsoft            3059/tcp
+qsoft            3059/udp
+interserver      3060/tcp
+interserver      3060/udp
+cautcpd          3061/tcp
+cautcpd          3061/udp
+ncacn-ip-tcp     3062/tcp
+ncacn-ip-tcp     3062/udp
+ncadg-ip-udp     3063/tcp
+ncadg-ip-udp     3063/udp
+rprt             3064/tcp
+rprt             3064/udp
+slinterbase      3065/tcp
+slinterbase      3065/udp
+netattachsdmp    3066/tcp
+netattachsdmp    3066/udp
+fjhpjp           3067/tcp
+fjhpjp           3067/udp
+ls3bcast         3068/tcp
+ls3bcast         3068/udp
+ls3              3069/tcp
+ls3              3069/udp
+mgxswitch        3070/tcp
+mgxswitch        3070/udp
+xplat-replicate  3071/tcp
+csd-monitor      3072/tcp
+csd-monitor      3072/udp
+vcrp             3073/tcp
+vcrp             3073/udp
+xbox             3074/tcp
+xbox             3074/udp
+orbix-locator    3075/tcp
+orbix-locator    3075/udp
+orbix-config     3076/tcp
+orbix-config     3076/udp
+orbix-loc-ssl    3077/tcp
+orbix-loc-ssl    3077/udp
+orbix-cfg-ssl    3078/tcp
+orbix-cfg-ssl    3078/udp
+lv-frontpanel    3079/tcp
+lv-frontpanel    3079/udp
+stm-pproc        3080/tcp
+stm-pproc        3080/udp
+tl1-lv           3081/tcp
+tl1-lv           3081/udp
+tl1-raw          3082/tcp
+tl1-raw          3082/udp
+tl1-telnet       3083/tcp
+tl1-telnet       3083/udp
+itm-mccs         3084/tcp
+itm-mccs         3084/udp
+pcihreq          3085/tcp
+pcihreq          3085/udp
+jdl-dbkitchen    3086/tcp
+jdl-dbkitchen    3086/udp
+asoki-sma        3087/tcp
+asoki-sma        3087/udp
+xdtp             3088/tcp
+xdtp             3088/udp
+ptk-alink        3089/tcp
+ptk-alink        3089/udp
+stss             3090/tcp
+stss             3090/udp
+1ci-smcs         3091/tcp
+1ci-smcs         3091/udp
+rapidmq-center   3093/tcp
+rapidmq-center   3093/udp
+rapidmq-reg      3094/tcp
+rapidmq-reg      3094/udp
+panasas          3095/tcp
+panasas          3095/udp
+ndl-aps          3096/tcp
+ndl-aps          3096/udp
+itu-bicc-stc     3097/sctp
+umm-port         3098/tcp
+umm-port         3098/udp
+chmd             3099/tcp
+chmd             3099/udp
+opcon-xps        3100/tcp
+opcon-xps        3100/udp
+hp-pxpib         3101/tcp
+hp-pxpib         3101/udp
+slslavemon       3102/tcp
+slslavemon       3102/udp
+autocuesmi       3103/tcp
+autocuesmi       3103/udp
+autocuelog       3104/tcp
+autocuetime      3104/udp
+cardbox          3105/tcp
+cardbox          3105/udp
+cardbox-http     3106/tcp
+cardbox-http     3106/udp
+business         3107/tcp
+business         3107/udp
+geolocate        3108/tcp
+geolocate        3108/udp
+personnel        3109/tcp
+personnel        3109/udp
+sim-control      3110/tcp
+sim-control      3110/udp
+wsynch           3111/tcp
+wsynch           3111/udp
+ksysguard        3112/tcp
+ksysguard        3112/udp
+cs-auth-svr      3113/tcp
+cs-auth-svr      3113/udp
+ccmad            3114/tcp
+ccmad            3114/udp
+mctet-master     3115/tcp
+mctet-master     3115/udp
+mctet-gateway    3116/tcp
+mctet-gateway    3116/udp
+mctet-jserv      3117/tcp
+mctet-jserv      3117/udp
+pkagent          3118/tcp
+pkagent          3118/udp
+d2000kernel      3119/tcp
+d2000kernel      3119/udp
+d2000webserver   3120/tcp
+d2000webserver   3120/udp
+pcmk-remote      3121/tcp
+vtr-emulator     3122/tcp
+vtr-emulator     3122/udp
+edix             3123/tcp
+edix             3123/udp
+beacon-port      3124/tcp
+beacon-port      3124/udp
+a13-an           3125/tcp
+a13-an           3125/udp
+ctx-bridge       3127/tcp
+ctx-bridge       3127/udp
+ndl-aas          3128/tcp
+ndl-aas          3128/udp
+netport-id       3129/tcp
+netport-id       3129/udp
+icpv2            3130/tcp
+icpv2            3130/udp
+netbookmark      3131/tcp
+netbookmark      3131/udp
+ms-rule-engine   3132/tcp
+ms-rule-engine   3132/udp
+prism-deploy     3133/tcp
+prism-deploy     3133/udp
+ecp              3134/tcp
+ecp              3134/udp
+peerbook-port    3135/tcp
+peerbook-port    3135/udp
+grubd            3136/tcp
+grubd            3136/udp
+rtnt-1           3137/tcp
+rtnt-1           3137/udp
+rtnt-2           3138/tcp
+rtnt-2           3138/udp
+incognitorv      3139/tcp
+incognitorv      3139/udp
+ariliamulti      3140/tcp
+ariliamulti      3140/udp
+vmodem           3141/tcp
+vmodem           3141/udp
+rdc-wh-eos       3142/tcp
+rdc-wh-eos       3142/udp
+seaview          3143/tcp
+seaview          3143/udp
+tarantella       3144/tcp
+tarantella       3144/udp
+csi-lfap         3145/tcp
+csi-lfap         3145/udp
+bears-02         3146/tcp
+bears-02         3146/udp
+rfio             3147/tcp
+rfio             3147/udp
+nm-game-admin    3148/tcp
+nm-game-admin    3148/udp
+nm-game-server   3149/tcp
+nm-game-server   3149/udp
+nm-asses-admin   3150/tcp
+nm-asses-admin   3150/udp
+nm-assessor      3151/tcp
+nm-assessor      3151/udp
+feitianrockey    3152/tcp
+feitianrockey    3152/udp
+s8-client-port   3153/tcp
+s8-client-port   3153/udp
+ccmrmi           3154/tcp
+ccmrmi           3154/udp
+jpegmpeg         3155/tcp
+jpegmpeg         3155/udp
+indura           3156/tcp
+indura           3156/udp
+e3consultants    3157/tcp
+e3consultants    3157/udp
+stvp             3158/tcp
+stvp             3158/udp
+navegaweb-port   3159/tcp
+navegaweb-port   3159/udp
+tip-app-server   3160/tcp
+tip-app-server   3160/udp
+doc1lm           3161/tcp
+doc1lm           3161/udp
+sflm             3162/tcp
+sflm             3162/udp
+res-sap          3163/tcp
+res-sap          3163/udp
+imprs            3164/tcp
+imprs            3164/udp
+newgenpay        3165/tcp
+newgenpay        3165/udp
+sossecollector   3166/tcp
+sossecollector   3166/udp
+nowcontact       3167/tcp
+nowcontact       3167/udp
+poweronnud       3168/tcp
+poweronnud       3168/udp
+serverview-as    3169/tcp
+serverview-as    3169/udp
+serverview-asn   3170/tcp
+serverview-asn   3170/udp
+serverview-gf    3171/tcp
+serverview-gf    3171/udp
+serverview-rm    3172/tcp
+serverview-rm    3172/udp
+serverview-icc   3173/tcp
+serverview-icc   3173/udp
+armi-server      3174/tcp
+armi-server      3174/udp
+t1-e1-over-ip    3175/tcp
+t1-e1-over-ip    3175/udp
+ars-master       3176/tcp
+ars-master       3176/udp
+phonex-port      3177/tcp
+phonex-port      3177/udp
+radclientport    3178/tcp
+radclientport    3178/udp
+h2gf-w-2m        3179/tcp
+h2gf-w-2m        3179/udp
+mc-brk-srv       3180/tcp
+mc-brk-srv       3180/udp
+bmcpatrolagent   3181/tcp
+bmcpatrolagent   3181/udp
+bmcpatrolrnvu    3182/tcp
+bmcpatrolrnvu    3182/udp
+cops-tls         3183/tcp
+cops-tls         3183/udp
+apogeex-port     3184/tcp
+apogeex-port     3184/udp
+smpppd           3185/tcp
+smpppd           3185/udp
+iiw-port         3186/tcp
+iiw-port         3186/udp
+odi-port         3187/tcp
+odi-port         3187/udp
+brcm-comm-port   3188/tcp
+brcm-comm-port   3188/udp
+pcle-infex       3189/tcp
+pcle-infex       3189/udp
+csvr-proxy       3190/tcp
+csvr-proxy       3190/udp
+csvr-sslproxy    3191/tcp
+csvr-sslproxy    3191/udp
+firemonrcc       3192/tcp
+firemonrcc       3192/udp
+spandataport     3193/tcp
+spandataport     3193/udp
+magbind          3194/tcp
+magbind          3194/udp
+ncu-1            3195/tcp
+ncu-1            3195/udp
+ncu-2            3196/tcp
+ncu-2            3196/udp
+embrace-dp-s     3197/tcp
+embrace-dp-s     3197/udp
+embrace-dp-c     3198/tcp
+embrace-dp-c     3198/udp
+dmod-workspace   3199/tcp
+dmod-workspace   3199/udp
+tick-port        3200/tcp
+tick-port        3200/udp
+cpq-tasksmart    3201/tcp
+cpq-tasksmart    3201/udp
+intraintra       3202/tcp
+intraintra       3202/udp
+netwatcher-mon   3203/tcp
+netwatcher-mon   3203/udp
+netwatcher-db    3204/tcp
+netwatcher-db    3204/udp
+isns             3205/tcp
+isns             3205/udp
+ironmail         3206/tcp
+ironmail         3206/udp
+vx-auth-port     3207/tcp
+vx-auth-port     3207/udp
+pfu-prcallback   3208/tcp
+pfu-prcallback   3208/udp
+netwkpathengine  3209/tcp
+netwkpathengine  3209/udp
+flamenco-proxy   3210/tcp
+flamenco-proxy   3210/udp
+avsecuremgmt     3211/tcp
+avsecuremgmt     3211/udp
+surveyinst       3212/tcp
+surveyinst       3212/udp
+neon24x7         3213/tcp
+neon24x7         3213/udp
+jmq-daemon-1     3214/tcp
+jmq-daemon-1     3214/udp
+jmq-daemon-2     3215/tcp
+jmq-daemon-2     3215/udp
+ferrari-foam     3216/tcp
+ferrari-foam     3216/udp
+unite            3217/tcp
+unite            3217/udp
+smartpackets     3218/tcp
+smartpackets     3218/udp
+wms-messenger    3219/tcp
+wms-messenger    3219/udp
+xnm-ssl          3220/tcp
+xnm-ssl          3220/udp
+xnm-clear-text   3221/tcp
+xnm-clear-text   3221/udp
+glbp             3222/tcp
+glbp             3222/udp
+digivote         3223/tcp
+digivote         3223/udp
+aes-discovery    3224/tcp
+aes-discovery    3224/udp
+fcip-port        3225/tcp
+fcip-port        3225/udp
+isi-irp          3226/tcp
+isi-irp          3226/udp
+dwnmshttp        3227/tcp
+dwnmshttp        3227/udp
+dwmsgserver      3228/tcp
+dwmsgserver      3228/udp
+global-cd-port   3229/tcp
+global-cd-port   3229/udp
+sftdst-port      3230/tcp
+sftdst-port      3230/udp
+vidigo           3231/tcp
+vidigo           3231/udp
+mdtp             3232/tcp
+mdtp             3232/udp
+whisker          3233/tcp
+whisker          3233/udp
+alchemy          3234/tcp
+alchemy          3234/udp
+mdap-port        3235/tcp
+mdap-port        3235/udp
+apparenet-ts     3236/tcp
+apparenet-ts     3236/udp
+apparenet-tps    3237/tcp
+apparenet-tps    3237/udp
+apparenet-as     3238/tcp
+apparenet-as     3238/udp
+apparenet-ui     3239/tcp
+apparenet-ui     3239/udp
+triomotion       3240/tcp
+triomotion       3240/udp
+sysorb           3241/tcp
+sysorb           3241/udp
+sdp-id-port      3242/tcp
+sdp-id-port      3242/udp
+timelot          3243/tcp
+timelot          3243/udp
+onesaf           3244/tcp
+onesaf           3244/udp
+vieo-fe          3245/tcp
+vieo-fe          3245/udp
+dvt-system       3246/tcp
+dvt-system       3246/udp
+dvt-data         3247/tcp
+dvt-data         3247/udp
+procos-lm        3248/tcp
+procos-lm        3248/udp
+ssp              3249/tcp
+ssp              3249/udp
+hicp             3250/tcp
+hicp             3250/udp
+sysscanner       3251/tcp
+sysscanner       3251/udp
+dhe              3252/tcp
+dhe              3252/udp
+pda-data         3253/tcp
+pda-data         3253/udp
+pda-sys          3254/tcp
+pda-sys          3254/udp
+semaphore        3255/tcp
+semaphore        3255/udp
+cpqrpm-agent     3256/tcp
+cpqrpm-agent     3256/udp
+cpqrpm-server    3257/tcp
+cpqrpm-server    3257/udp
+ivecon-port      3258/tcp
+ivecon-port      3258/udp
+epncdp2          3259/tcp
+epncdp2          3259/udp
+iscsi-target     3260/tcp
+iscsi-target     3260/udp
+winshadow        3261/tcp
+winshadow        3261/udp
+necp             3262/tcp
+necp             3262/udp
+ecolor-imager    3263/tcp
+ecolor-imager    3263/udp
+ccmail           3264/tcp
+ccmail           3264/udp
+altav-tunnel     3265/tcp
+altav-tunnel     3265/udp
+ns-cfg-server    3266/tcp
+ns-cfg-server    3266/udp
+ibm-dial-out     3267/tcp
+ibm-dial-out     3267/udp
+msft-gc          3268/tcp
+msft-gc          3268/udp
+msft-gc-ssl      3269/tcp
+msft-gc-ssl      3269/udp
+verismart        3270/tcp
+verismart        3270/udp
+csoft-prev       3271/tcp
+csoft-prev       3271/udp
+user-manager     3272/tcp
+user-manager     3272/udp
+sxmp             3273/tcp
+sxmp             3273/udp
+ordinox-server   3274/tcp
+ordinox-server   3274/udp
+samd             3275/tcp
+samd             3275/udp
+maxim-asics      3276/tcp
+maxim-asics      3276/udp
+awg-proxy        3277/tcp
+awg-proxy        3277/udp
+lkcmserver       3278/tcp
+lkcmserver       3278/udp
+admind           3279/tcp
+admind           3279/udp
+vs-server        3280/tcp
+vs-server        3280/udp
+sysopt           3281/tcp
+sysopt           3281/udp
+datusorb         3282/tcp
+datusorb         3282/udp
+4talk            3284/tcp
+4talk            3284/udp
+plato            3285/tcp
+plato            3285/udp
+e-net            3286/tcp
+e-net            3286/udp
+directvdata      3287/tcp
+directvdata      3287/udp
+cops             3288/tcp
+cops             3288/udp
+enpc             3289/tcp
+enpc             3289/udp
+caps-lm          3290/tcp
+caps-lm          3290/udp
+sah-lm           3291/tcp
+sah-lm           3291/udp
+cart-o-rama      3292/tcp
+cart-o-rama      3292/udp
+fg-fps           3293/tcp
+fg-fps           3293/udp
+fg-gip           3294/tcp
+fg-gip           3294/udp
+dyniplookup      3295/tcp
+dyniplookup      3295/udp
+rib-slm          3296/tcp
+rib-slm          3296/udp
+cytel-lm         3297/tcp
+cytel-lm         3297/udp
+deskview         3298/tcp
+deskview         3298/udp
+pdrncs           3299/tcp
+pdrncs           3299/udp
+ceph             3300/tcp
+mcs-fastmail     3302/tcp
+mcs-fastmail     3302/udp
+opsession-clnt   3303/tcp
+opsession-clnt   3303/udp
+opsession-srvr   3304/tcp
+opsession-srvr   3304/udp
+odette-ftp       3305/tcp
+odette-ftp       3305/udp
+mysql            3306/tcp
+mysql            3306/udp
+opsession-prxy   3307/tcp
+opsession-prxy   3307/udp
+tns-server       3308/tcp
+tns-server       3308/udp
+tns-adv          3309/tcp
+tns-adv          3309/udp
+dyna-access      3310/tcp
+dyna-access      3310/udp
+mcns-tel-ret     3311/tcp
+mcns-tel-ret     3311/udp
+appman-server    3312/tcp
+appman-server    3312/udp
+uorb             3313/tcp
+uorb             3313/udp
+uohost           3314/tcp
+uohost           3314/udp
+cdid             3315/tcp
+cdid             3315/udp
+aicc-cmi         3316/tcp
+aicc-cmi         3316/udp
+vsaiport         3317/tcp
+vsaiport         3317/udp
+ssrip            3318/tcp
+ssrip            3318/udp
+sdt-lmd          3319/tcp
+sdt-lmd          3319/udp
+officelink2000   3320/tcp
+officelink2000   3320/udp
+vnsstr           3321/tcp
+vnsstr           3321/udp
+sftu             3326/tcp
+sftu             3326/udp
+bbars            3327/tcp
+bbars            3327/udp
+egptlm           3328/tcp
+egptlm           3328/udp
+hp-device-disc   3329/tcp
+hp-device-disc   3329/udp
+mcs-calypsoicf   3330/tcp
+mcs-calypsoicf   3330/udp
+mcs-messaging    3331/tcp
+mcs-messaging    3331/udp
+mcs-mailsvr      3332/tcp
+mcs-mailsvr      3332/udp
+dec-notes        3333/tcp
+dec-notes        3333/udp
+directv-web      3334/tcp
+directv-web      3334/udp
+directv-soft     3335/tcp
+directv-soft     3335/udp
+directv-tick     3336/tcp
+directv-tick     3336/udp
+directv-catlg    3337/tcp
+directv-catlg    3337/udp
+anet-b           3338/tcp
+anet-b           3338/udp
+anet-l           3339/tcp
+anet-l           3339/udp
+anet-m           3340/tcp
+anet-m           3340/udp
+anet-h           3341/tcp
+anet-h           3341/udp
+webtie           3342/tcp
+webtie           3342/udp
+ms-cluster-net   3343/tcp
+ms-cluster-net   3343/udp
+bnt-manager      3344/tcp
+bnt-manager      3344/udp
+influence        3345/tcp
+influence        3345/udp
+trnsprntproxy    3346/tcp
+trnsprntproxy    3346/udp
+phoenix-rpc      3347/tcp
+phoenix-rpc      3347/udp
+pangolin-laser   3348/tcp
+pangolin-laser   3348/udp
+chevinservices   3349/tcp
+chevinservices   3349/udp
+findviatv        3350/tcp
+findviatv        3350/udp
+btrieve          3351/tcp
+btrieve          3351/udp
+ssql             3352/tcp
+ssql             3352/udp
+fatpipe          3353/tcp
+fatpipe          3353/udp
+suitjd           3354/tcp
+suitjd           3354/udp
+ordinox-dbase    3355/tcp
+ordinox-dbase    3355/udp
+upnotifyps       3356/tcp
+upnotifyps       3356/udp
+adtech-test      3357/tcp
+adtech-test      3357/udp
+mpsysrmsvr       3358/tcp
+mpsysrmsvr       3358/udp
+wg-netforce      3359/tcp
+wg-netforce      3359/udp
+kv-server        3360/tcp
+kv-server        3360/udp
+kv-agent         3361/tcp
+kv-agent         3361/udp
+dj-ilm           3362/tcp
+dj-ilm           3362/udp
+nati-vi-server   3363/tcp
+nati-vi-server   3363/udp
+creativeserver   3364/tcp
+creativeserver   3364/udp
+contentserver    3365/tcp
+contentserver    3365/udp
+creativepartnr   3366/tcp
+creativepartnr   3366/udp
+tip2             3372/tcp
+tip2             3372/udp
+lavenir-lm       3373/tcp
+lavenir-lm       3373/udp
+cluster-disc     3374/tcp
+cluster-disc     3374/udp
+vsnm-agent       3375/tcp
+vsnm-agent       3375/udp
+cdbroker         3376/tcp
+cdbroker         3376/udp
+cogsys-lm        3377/tcp
+cogsys-lm        3377/udp
+wsicopy          3378/tcp
+wsicopy          3378/udp
+socorfs          3379/tcp
+socorfs          3379/udp
+sns-channels     3380/tcp
+sns-channels     3380/udp
+geneous          3381/tcp
+geneous          3381/udp
+fujitsu-neat     3382/tcp
+fujitsu-neat     3382/udp
+esp-lm           3383/tcp
+esp-lm           3383/udp
+hp-clic          3384/tcp
+hp-clic          3384/udp
+qnxnetman        3385/tcp
+qnxnetman        3385/udp
+gprs-data        3386/tcp
+gprs-sig         3386/udp
+backroomnet      3387/tcp
+backroomnet      3387/udp
+cbserver         3388/tcp
+cbserver         3388/udp
+ms-wbt-server    3389/tcp
+ms-wbt-server    3389/udp
+dsc              3390/tcp
+dsc              3390/udp
+savant           3391/tcp
+savant           3391/udp
+efi-lm           3392/tcp
+efi-lm           3392/udp
+d2k-tapestry1    3393/tcp
+d2k-tapestry1    3393/udp
+d2k-tapestry2    3394/tcp
+d2k-tapestry2    3394/udp
+dyna-lm          3395/tcp
+dyna-lm          3395/udp
+printer-agent    3396/tcp
+printer-agent    3396/udp
+cloanto-lm       3397/tcp
+cloanto-lm       3397/udp
+mercantile       3398/tcp
+mercantile       3398/udp
+csms             3399/tcp
+csms             3399/udp
+csms2            3400/tcp
+csms2            3400/udp
+filecast         3401/tcp
+filecast         3401/udp
+fxaengine-net    3402/tcp
+fxaengine-net    3402/udp
+nokia-ann-ch1    3405/tcp
+nokia-ann-ch1    3405/udp
+nokia-ann-ch2    3406/tcp
+nokia-ann-ch2    3406/udp
+ldap-admin       3407/tcp
+ldap-admin       3407/udp
+BESApi           3408/tcp
+BESApi           3408/udp
+networklens      3409/tcp
+networklens      3409/udp
+networklenss     3410/tcp
+networklenss     3410/udp
+biolink-auth     3411/tcp
+biolink-auth     3411/udp
+xmlblaster       3412/tcp
+xmlblaster       3412/udp
+svnet            3413/tcp
+svnet            3413/udp
+wip-port         3414/tcp
+wip-port         3414/udp
+bcinameservice   3415/tcp
+bcinameservice   3415/udp
+commandport      3416/tcp
+commandport      3416/udp
+csvr             3417/tcp
+csvr             3417/udp
+rnmap            3418/tcp
+rnmap            3418/udp
+softaudit        3419/tcp
+softaudit        3419/udp
+ifcp-port        3420/tcp
+ifcp-port        3420/udp
+bmap             3421/tcp
+bmap             3421/udp
+rusb-sys-port    3422/tcp
+rusb-sys-port    3422/udp
+xtrm             3423/tcp
+xtrm             3423/udp
+xtrms            3424/tcp
+xtrms            3424/udp
+agps-port        3425/tcp
+agps-port        3425/udp
+arkivio          3426/tcp
+arkivio          3426/udp
+websphere-snmp   3427/tcp
+websphere-snmp   3427/udp
+twcss            3428/tcp
+twcss            3428/udp
+gcsp             3429/tcp
+gcsp             3429/udp
+ssdispatch       3430/tcp
+ssdispatch       3430/udp
+ndl-als          3431/tcp
+ndl-als          3431/udp
+osdcp            3432/tcp
+osdcp            3432/udp
+opnet-smp        3433/tcp
+opnet-smp        3433/udp
+opencm           3434/tcp
+opencm           3434/udp
+pacom            3435/tcp
+pacom            3435/udp
+gc-config        3436/tcp
+gc-config        3436/udp
+autocueds        3437/tcp
+autocueds        3437/udp
+spiral-admin     3438/tcp
+spiral-admin     3438/udp
+hri-port         3439/tcp
+hri-port         3439/udp
+ans-console      3440/tcp
+ans-console      3440/udp
+connect-client   3441/tcp
+connect-client   3441/udp
+connect-server   3442/tcp
+connect-server   3442/udp
+ov-nnm-websrv    3443/tcp
+ov-nnm-websrv    3443/udp
+denali-server    3444/tcp
+denali-server    3444/udp
+monp             3445/tcp
+monp             3445/udp
+3comfaxrpc       3446/tcp
+3comfaxrpc       3446/udp
+directnet        3447/tcp
+directnet        3447/udp
+dnc-port         3448/tcp
+dnc-port         3448/udp
+hotu-chat        3449/tcp
+hotu-chat        3449/udp
+castorproxy      3450/tcp
+castorproxy      3450/udp
+asam             3451/tcp
+asam             3451/udp
+sabp-signal      3452/tcp
+sabp-signal      3452/udp
+pscupd           3453/tcp
+pscupd           3453/udp
+mira             3454/tcp
+mira             3454/udp
+prsvp            3455/tcp
+prsvp            3455/udp
+vat              3456/tcp
+vat              3456/udp
+vat-control      3457/tcp
+vat-control      3457/udp
+d3winosfi        3458/tcp
+d3winosfi        3458/udp
+integral         3459/tcp
+integral         3459/udp
+edm-manager      3460/tcp
+edm-manager      3460/udp
+edm-stager       3461/tcp
+edm-stager       3461/udp
+edm-std-notify   3462/tcp
+edm-std-notify   3462/udp
+edm-adm-notify   3463/tcp
+edm-adm-notify   3463/udp
+edm-mgr-sync     3464/tcp
+edm-mgr-sync     3464/udp
+edm-mgr-cntrl    3465/tcp
+edm-mgr-cntrl    3465/udp
+workflow         3466/tcp
+workflow         3466/udp
+rcst             3467/tcp
+rcst             3467/udp
+ttcmremotectrl   3468/tcp
+ttcmremotectrl   3468/udp
+pluribus         3469/tcp
+pluribus         3469/udp
+jt400            3470/tcp
+jt400            3470/udp
+jt400-ssl        3471/tcp
+jt400-ssl        3471/udp
+jaugsremotec-1   3472/tcp
+jaugsremotec-1   3472/udp
+jaugsremotec-2   3473/tcp
+jaugsremotec-2   3473/udp
+ttntspauto       3474/tcp
+ttntspauto       3474/udp
+genisar-port     3475/tcp
+genisar-port     3475/udp
+nppmp            3476/tcp
+nppmp            3476/udp
+ecomm            3477/tcp
+ecomm            3477/udp
+stun             3478/tcp
+stun             3478/udp
+turn             3478/tcp
+turn             3478/udp
+stun-behavior    3478/tcp
+stun-behavior    3478/udp
+twrpc            3479/tcp
+twrpc            3479/udp
+plethora         3480/tcp
+plethora         3480/udp
+cleanerliverc    3481/tcp
+cleanerliverc    3481/udp
+vulture          3482/tcp
+vulture          3482/udp
+slim-devices     3483/tcp
+slim-devices     3483/udp
+gbs-stp          3484/tcp
+gbs-stp          3484/udp
+celatalk         3485/tcp
+celatalk         3485/udp
+ifsf-hb-port     3486/tcp
+ifsf-hb-port     3486/udp
+ltctcp           3487/tcp
+ltcudp           3487/udp
+fs-rh-srv        3488/tcp
+fs-rh-srv        3488/udp
+dtp-dia          3489/tcp
+dtp-dia          3489/udp
+colubris         3490/tcp
+colubris         3490/udp
+swr-port         3491/tcp
+swr-port         3491/udp
+tvdumtray-port   3492/tcp
+tvdumtray-port   3492/udp
+nut              3493/tcp
+nut              3493/udp
+ibm3494          3494/tcp
+ibm3494          3494/udp
+seclayer-tcp     3495/tcp
+seclayer-tcp     3495/udp
+seclayer-tls     3496/tcp
+seclayer-tls     3496/udp
+ipether232port   3497/tcp
+ipether232port   3497/udp
+dashpas-port     3498/tcp
+dashpas-port     3498/udp
+sccip-media      3499/tcp
+sccip-media      3499/udp
+rtmp-port        3500/tcp
+rtmp-port        3500/udp
+isoft-p2p        3501/tcp
+isoft-p2p        3501/udp
+avinstalldisc    3502/tcp
+avinstalldisc    3502/udp
+lsp-ping         3503/tcp
+lsp-ping         3503/udp
+ironstorm        3504/tcp
+ironstorm        3504/udp
+ccmcomm          3505/tcp
+ccmcomm          3505/udp
+apc-3506         3506/tcp
+apc-3506         3506/udp
+nesh-broker      3507/tcp
+nesh-broker      3507/udp
+interactionweb   3508/tcp
+interactionweb   3508/udp
+vt-ssl           3509/tcp
+vt-ssl           3509/udp
+xss-port         3510/tcp
+xss-port         3510/udp
+webmail-2        3511/tcp
+webmail-2        3511/udp
+aztec            3512/tcp
+aztec            3512/udp
+arcpd            3513/tcp
+arcpd            3513/udp
+must-p2p         3514/tcp
+must-p2p         3514/udp
+must-backplane   3515/tcp
+must-backplane   3515/udp
+smartcard-port   3516/tcp
+smartcard-port   3516/udp
+802-11-iapp      3517/tcp
+802-11-iapp      3517/udp
+artifact-msg     3518/tcp
+artifact-msg     3518/udp
+nvmsgd           3519/tcp
+galileo          3519/udp
+galileolog       3520/tcp
+galileolog       3520/udp
+mc3ss            3521/tcp
+mc3ss            3521/udp
+nssocketport     3522/tcp
+nssocketport     3522/udp
+odeumservlink    3523/tcp
+odeumservlink    3523/udp
+ecmport          3524/tcp
+ecmport          3524/udp
+eisport          3525/tcp
+eisport          3525/udp
+starquiz-port    3526/tcp
+starquiz-port    3526/udp
+beserver-msg-q   3527/tcp
+beserver-msg-q   3527/udp
+jboss-iiop       3528/tcp
+jboss-iiop       3528/udp
+jboss-iiop-ssl   3529/tcp
+jboss-iiop-ssl   3529/udp
+gf               3530/tcp
+gf               3530/udp
+joltid           3531/tcp
+joltid           3531/udp
+raven-rmp        3532/tcp
+raven-rmp        3532/udp
+raven-rdp        3533/tcp
+raven-rdp        3533/udp
+urld-port        3534/tcp
+urld-port        3534/udp
+ms-la            3535/tcp
+ms-la            3535/udp
+snac             3536/tcp
+snac             3536/udp
+ni-visa-remote   3537/tcp
+ni-visa-remote   3537/udp
+ibm-diradm       3538/tcp
+ibm-diradm       3538/udp
+ibm-diradm-ssl   3539/tcp
+ibm-diradm-ssl   3539/udp
+pnrp-port        3540/tcp
+pnrp-port        3540/udp
+voispeed-port    3541/tcp
+voispeed-port    3541/udp
+hacl-monitor     3542/tcp
+hacl-monitor     3542/udp
+qftest-lookup    3543/tcp
+qftest-lookup    3543/udp
+teredo           3544/tcp
+teredo           3544/udp
+camac            3545/tcp
+camac            3545/udp
+symantec-sim     3547/tcp
+symantec-sim     3547/udp
+interworld       3548/tcp
+interworld       3548/udp
+tellumat-nms     3549/tcp
+tellumat-nms     3549/udp
+ssmpp            3550/tcp
+ssmpp            3550/udp
+apcupsd          3551/tcp
+apcupsd          3551/udp
+taserver         3552/tcp
+taserver         3552/udp
+rbr-discovery    3553/tcp
+rbr-discovery    3553/udp
+questnotify      3554/tcp
+questnotify      3554/udp
+razor            3555/tcp
+razor            3555/udp
+sky-transport    3556/tcp
+sky-transport    3556/udp
+personalos-001   3557/tcp
+personalos-001   3557/udp
+mcp-port         3558/tcp
+mcp-port         3558/udp
+cctv-port        3559/tcp
+cctv-port        3559/udp
+iniserve-port    3560/tcp
+iniserve-port    3560/udp
+bmc-onekey       3561/tcp
+bmc-onekey       3561/udp
+sdbproxy         3562/tcp
+sdbproxy         3562/udp
+watcomdebug      3563/tcp
+watcomdebug      3563/udp
+esimport         3564/tcp
+esimport         3564/udp
+m2pa             3565/tcp
+m2pa             3565/sctp
+quest-data-hub   3566/tcp
+dof-eps          3567/tcp
+dof-eps          3567/udp
+dof-tunnel-sec   3568/tcp
+dof-tunnel-sec   3568/udp
+mbg-ctrl         3569/tcp
+mbg-ctrl         3569/udp
+mccwebsvr-port   3570/tcp
+mccwebsvr-port   3570/udp
+megardsvr-port   3571/tcp
+megardsvr-port   3571/udp
+megaregsvrport   3572/tcp
+megaregsvrport   3572/udp
+tag-ups-1        3573/tcp
+tag-ups-1        3573/udp
+dmaf-server      3574/tcp
+dmaf-caster      3574/udp
+ccm-port         3575/tcp
+ccm-port         3575/udp
+cmc-port         3576/tcp
+cmc-port         3576/udp
+config-port      3577/tcp
+config-port      3577/udp
+data-port        3578/tcp
+data-port        3578/udp
+ttat3lb          3579/tcp
+ttat3lb          3579/udp
+nati-svrloc      3580/tcp
+nati-svrloc      3580/udp
+kfxaclicensing   3581/tcp
+kfxaclicensing   3581/udp
+press            3582/tcp
+press            3582/udp
+canex-watch      3583/tcp
+canex-watch      3583/udp
+u-dbap           3584/tcp
+u-dbap           3584/udp
+emprise-lls      3585/tcp
+emprise-lls      3585/udp
+emprise-lsc      3586/tcp
+emprise-lsc      3586/udp
+p2pgroup         3587/tcp
+p2pgroup         3587/udp
+sentinel         3588/tcp
+sentinel         3588/udp
+isomair          3589/tcp
+isomair          3589/udp
+wv-csp-sms       3590/tcp
+wv-csp-sms       3590/udp
+gtrack-server    3591/tcp
+gtrack-server    3591/udp
+gtrack-ne        3592/tcp
+gtrack-ne        3592/udp
+bpmd             3593/tcp
+bpmd             3593/udp
+mediaspace       3594/tcp
+mediaspace       3594/udp
+shareapp         3595/tcp
+shareapp         3595/udp
+iw-mmogame       3596/tcp
+iw-mmogame       3596/udp
+a14              3597/tcp
+a14              3597/udp
+a15              3598/tcp
+a15              3598/udp
+quasar-server    3599/tcp
+quasar-server    3599/udp
+trap-daemon      3600/tcp
+trap-daemon      3600/udp
+visinet-gui      3601/tcp
+visinet-gui      3601/udp
+infiniswitchcl   3602/tcp
+infiniswitchcl   3602/udp
+int-rcv-cntrl    3603/tcp
+int-rcv-cntrl    3603/udp
+bmc-jmx-port     3604/tcp
+bmc-jmx-port     3604/udp
+comcam-io        3605/tcp
+comcam-io        3605/udp
+splitlock        3606/tcp
+splitlock        3606/udp
+precise-i3       3607/tcp
+precise-i3       3607/udp
+trendchip-dcp    3608/tcp
+trendchip-dcp    3608/udp
+cpdi-pidas-cm    3609/tcp
+cpdi-pidas-cm    3609/udp
+echonet          3610/tcp
+echonet          3610/udp
+six-degrees      3611/tcp
+six-degrees      3611/udp
+dataprotector    3612/tcp
+dataprotector    3612/udp
+alaris-disc      3613/tcp
+alaris-disc      3613/udp
+sigma-port       3614/tcp
+sigma-port       3614/udp
+start-network    3615/tcp
+start-network    3615/udp
+cd3o-protocol    3616/tcp
+cd3o-protocol    3616/udp
+sharp-server     3617/tcp
+sharp-server     3617/udp
+aairnet-1        3618/tcp
+aairnet-1        3618/udp
+aairnet-2        3619/tcp
+aairnet-2        3619/udp
+ep-pcp           3620/tcp
+ep-pcp           3620/udp
+ep-nsp           3621/tcp
+ep-nsp           3621/udp
+ff-lr-port       3622/tcp
+ff-lr-port       3622/udp
+haipe-discover   3623/tcp
+haipe-discover   3623/udp
+dist-upgrade     3624/tcp
+dist-upgrade     3624/udp
+volley           3625/tcp
+volley           3625/udp
+bvcdaemon-port   3626/tcp
+bvcdaemon-port   3626/udp
+jamserverport    3627/tcp
+jamserverport    3627/udp
+ept-machine      3628/tcp
+ept-machine      3628/udp
+escvpnet         3629/tcp
+escvpnet         3629/udp
+cs-remote-db     3630/tcp
+cs-remote-db     3630/udp
+cs-services      3631/tcp
+cs-services      3631/udp
+distcc           3632/tcp
+distcc           3632/udp
+wacp             3633/tcp
+wacp             3633/udp
+hlibmgr          3634/tcp
+hlibmgr          3634/udp
+sdo              3635/tcp
+sdo              3635/udp
+servistaitsm     3636/tcp
+servistaitsm     3636/udp
+scservp          3637/tcp
+scservp          3637/udp
+ehp-backup       3638/tcp
+ehp-backup       3638/udp
+xap-ha           3639/tcp
+xap-ha           3639/udp
+netplay-port1    3640/tcp
+netplay-port1    3640/udp
+netplay-port2    3641/tcp
+netplay-port2    3641/udp
+juxml-port       3642/tcp
+juxml-port       3642/udp
+audiojuggler     3643/tcp
+audiojuggler     3643/udp
+ssowatch         3644/tcp
+ssowatch         3644/udp
+cyc              3645/tcp
+cyc              3645/udp
+xss-srv-port     3646/tcp
+xss-srv-port     3646/udp
+splitlock-gw     3647/tcp
+splitlock-gw     3647/udp
+fjcp             3648/tcp
+fjcp             3648/udp
+nmmp             3649/tcp
+nmmp             3649/udp
+prismiq-plugin   3650/tcp
+prismiq-plugin   3650/udp
+xrpc-registry    3651/tcp
+xrpc-registry    3651/udp
+vxcrnbuport      3652/tcp
+vxcrnbuport      3652/udp
+tsp              3653/tcp
+tsp              3653/udp
+vaprtm           3654/tcp
+vaprtm           3654/udp
+abatemgr         3655/tcp
+abatemgr         3655/udp
+abatjss          3656/tcp
+abatjss          3656/udp
+immedianet-bcn   3657/tcp
+immedianet-bcn   3657/udp
+ps-ams           3658/tcp
+ps-ams           3658/udp
+apple-sasl       3659/tcp
+apple-sasl       3659/udp
+can-nds-ssl      3660/tcp
+can-nds-ssl      3660/udp
+can-ferret-ssl   3661/tcp
+can-ferret-ssl   3661/udp
+pserver          3662/tcp
+pserver          3662/udp
+dtp              3663/tcp
+dtp              3663/udp
+ups-engine       3664/tcp
+ups-engine       3664/udp
+ent-engine       3665/tcp
+ent-engine       3665/udp
+eserver-pap      3666/tcp
+eserver-pap      3666/udp
+infoexch         3667/tcp
+infoexch         3667/udp
+dell-rm-port     3668/tcp
+dell-rm-port     3668/udp
+casanswmgmt      3669/tcp
+casanswmgmt      3669/udp
+smile            3670/tcp
+smile            3670/udp
+efcp             3671/tcp
+efcp             3671/udp
+lispworks-orb    3672/tcp
+lispworks-orb    3672/udp
+mediavault-gui   3673/tcp
+mediavault-gui   3673/udp
+wininstall-ipc   3674/tcp
+wininstall-ipc   3674/udp
+calltrax         3675/tcp
+calltrax         3675/udp
+va-pacbase       3676/tcp
+va-pacbase       3676/udp
+roverlog         3677/tcp
+roverlog         3677/udp
+ipr-dglt         3678/tcp
+ipr-dglt         3678/udp
+npds-tracker     3680/tcp
+npds-tracker     3680/udp
+bts-x73          3681/tcp
+bts-x73          3681/udp
+cas-mapi         3682/tcp
+cas-mapi         3682/udp
+bmc-ea           3683/tcp
+bmc-ea           3683/udp
+faxstfx-port     3684/tcp
+faxstfx-port     3684/udp
+dsx-agent        3685/tcp
+dsx-agent        3685/udp
+tnmpv2           3686/tcp
+tnmpv2           3686/udp
+simple-push      3687/tcp
+simple-push      3687/udp
+simple-push-s    3688/tcp
+simple-push-s    3688/udp
+daap             3689/tcp
+daap             3689/udp
+svn              3690/tcp
+svn              3690/udp
+magaya-network   3691/tcp
+magaya-network   3691/udp
+intelsync        3692/tcp
+intelsync        3692/udp
+easl             3693/tcp
+bmc-data-coll    3695/tcp
+bmc-data-coll    3695/udp
+telnetcpcd       3696/tcp
+telnetcpcd       3696/udp
+nw-license       3697/tcp
+nw-license       3697/udp
+sagectlpanel     3698/tcp
+sagectlpanel     3698/udp
+kpn-icw          3699/tcp
+kpn-icw          3699/udp
+lrs-paging       3700/tcp
+lrs-paging       3700/udp
+netcelera        3701/tcp
+netcelera        3701/udp
+ws-discovery     3702/tcp
+ws-discovery     3702/udp
+adobeserver-3    3703/tcp
+adobeserver-3    3703/udp
+adobeserver-4    3704/tcp
+adobeserver-4    3704/udp
+adobeserver-5    3705/tcp
+adobeserver-5    3705/udp
+rt-event         3706/tcp
+rt-event         3706/udp
+rt-event-s       3707/tcp
+rt-event-s       3707/udp
+sun-as-iiops     3708/tcp
+sun-as-iiops     3708/udp
+ca-idms          3709/tcp
+ca-idms          3709/udp
+portgate-auth    3710/tcp
+portgate-auth    3710/udp
+edb-server2      3711/tcp
+edb-server2      3711/udp
+sentinel-ent     3712/tcp
+sentinel-ent     3712/udp
+tftps            3713/tcp
+tftps            3713/udp
+delos-dms        3714/tcp
+delos-dms        3714/udp
+anoto-rendezv    3715/tcp
+anoto-rendezv    3715/udp
+wv-csp-sms-cir   3716/tcp
+wv-csp-sms-cir   3716/udp
+wv-csp-udp-cir   3717/tcp
+wv-csp-udp-cir   3717/udp
+opus-services    3718/tcp
+opus-services    3718/udp
+itelserverport   3719/tcp
+itelserverport   3719/udp
+ufastro-instr    3720/tcp
+ufastro-instr    3720/udp
+xsync            3721/tcp
+xsync            3721/udp
+xserveraid       3722/tcp
+xserveraid       3722/udp
+sychrond         3723/tcp
+sychrond         3723/udp
+blizwow          3724/tcp
+blizwow          3724/udp
+na-er-tip        3725/tcp
+na-er-tip        3725/udp
+array-manager    3726/tcp
+array-manager    3726/udp
+e-mdu            3727/tcp
+e-mdu            3727/udp
+e-woa            3728/tcp
+e-woa            3728/udp
+fksp-audit       3729/tcp
+fksp-audit       3729/udp
+client-ctrl      3730/tcp
+client-ctrl      3730/udp
+smap             3731/tcp
+smap             3731/udp
+m-wnn            3732/tcp
+m-wnn            3732/udp
+multip-msg       3733/tcp
+multip-msg       3733/udp
+synel-data       3734/tcp
+synel-data       3734/udp
+pwdis            3735/tcp
+pwdis            3735/udp
+rs-rmi           3736/tcp
+rs-rmi           3736/udp
+xpanel           3737/tcp
+versatalk        3738/tcp
+versatalk        3738/udp
+launchbird-lm    3739/tcp
+launchbird-lm    3739/udp
+heartbeat        3740/tcp
+heartbeat        3740/udp
+wysdma           3741/tcp
+wysdma           3741/udp
+cst-port         3742/tcp
+cst-port         3742/udp
+ipcs-command     3743/tcp
+ipcs-command     3743/udp
+sasg             3744/tcp
+sasg             3744/udp
+gw-call-port     3745/tcp
+gw-call-port     3745/udp
+linktest         3746/tcp
+linktest         3746/udp
+linktest-s       3747/tcp
+linktest-s       3747/udp
+webdata          3748/tcp
+webdata          3748/udp
+cimtrak          3749/tcp
+cimtrak          3749/udp
+cbos-ip-port     3750/tcp
+cbos-ip-port     3750/udp
+gprs-cube        3751/tcp
+gprs-cube        3751/udp
+vipremoteagent   3752/tcp
+vipremoteagent   3752/udp
+nattyserver      3753/tcp
+nattyserver      3753/udp
+timestenbroker   3754/tcp
+timestenbroker   3754/udp
+sas-remote-hlp   3755/tcp
+sas-remote-hlp   3755/udp
+canon-capt       3756/tcp
+canon-capt       3756/udp
+grf-port         3757/tcp
+grf-port         3757/udp
+apw-registry     3758/tcp
+apw-registry     3758/udp
+exapt-lmgr       3759/tcp
+exapt-lmgr       3759/udp
+adtempusclient   3760/tcp
+adtempusclient   3760/udp
+gsakmp           3761/tcp
+gsakmp           3761/udp
+gbs-smp          3762/tcp
+gbs-smp          3762/udp
+xo-wave          3763/tcp
+xo-wave          3763/udp
+mni-prot-rout    3764/tcp
+mni-prot-rout    3764/udp
+rtraceroute      3765/tcp
+rtraceroute      3765/udp
+sitewatch-s      3766/tcp
+listmgr-port     3767/tcp
+listmgr-port     3767/udp
+rblcheckd        3768/tcp
+rblcheckd        3768/udp
+haipe-otnk       3769/tcp
+haipe-otnk       3769/udp
+cindycollab      3770/tcp
+cindycollab      3770/udp
+paging-port      3771/tcp
+paging-port      3771/udp
+ctp              3772/tcp
+ctp              3772/udp
+ctdhercules      3773/tcp
+ctdhercules      3773/udp
+zicom            3774/tcp
+zicom            3774/udp
+ispmmgr          3775/tcp
+ispmmgr          3775/udp
+dvcprov-port     3776/tcp
+dvcprov-port     3776/udp
+jibe-eb          3777/tcp
+jibe-eb          3777/udp
+c-h-it-port      3778/tcp
+c-h-it-port      3778/udp
+cognima          3779/tcp
+cognima          3779/udp
+nnp              3780/tcp
+nnp              3780/udp
+abcvoice-port    3781/tcp
+abcvoice-port    3781/udp
+iso-tp0s         3782/tcp
+iso-tp0s         3782/udp
+bim-pem          3783/tcp
+bim-pem          3783/udp
+bfd-control      3784/tcp
+bfd-control      3784/udp
+bfd-echo         3785/tcp
+bfd-echo         3785/udp
+upstriggervsw    3786/tcp
+upstriggervsw    3786/udp
+fintrx           3787/tcp
+fintrx           3787/udp
+isrp-port        3788/tcp
+isrp-port        3788/udp
+remotedeploy     3789/tcp
+remotedeploy     3789/udp
+quickbooksrds    3790/tcp
+quickbooksrds    3790/udp
+tvnetworkvideo   3791/tcp
+tvnetworkvideo   3791/udp
+sitewatch        3792/tcp
+sitewatch        3792/udp
+dcsoftware       3793/tcp
+dcsoftware       3793/udp
+jaus             3794/tcp
+jaus             3794/udp
+myblast          3795/tcp
+myblast          3795/udp
+spw-dialer       3796/tcp
+spw-dialer       3796/udp
+idps             3797/tcp
+idps             3797/udp
+minilock         3798/tcp
+minilock         3798/udp
+radius-dynauth   3799/tcp
+radius-dynauth   3799/udp
+pwgpsi           3800/tcp
+pwgpsi           3800/udp
+ibm-mgr          3801/tcp
+ibm-mgr          3801/udp
+vhd              3802/tcp
+vhd              3802/udp
+soniqsync        3803/tcp
+soniqsync        3803/udp
+iqnet-port       3804/tcp
+iqnet-port       3804/udp
+tcpdataserver    3805/tcp
+tcpdataserver    3805/udp
+wsmlb            3806/tcp
+wsmlb            3806/udp
+spugna           3807/tcp
+spugna           3807/udp
+sun-as-iiops-ca  3808/tcp
+sun-as-iiops-ca  3808/udp
+apocd            3809/tcp
+apocd            3809/udp
+wlanauth         3810/tcp
+wlanauth         3810/udp
+amp              3811/tcp
+amp              3811/udp
+neto-wol-server  3812/tcp
+neto-wol-server  3812/udp
+rap-ip           3813/tcp
+rap-ip           3813/udp
+neto-dcs         3814/tcp
+neto-dcs         3814/udp
+lansurveyorxml   3815/tcp
+lansurveyorxml   3815/udp
+sunlps-http      3816/tcp
+sunlps-http      3816/udp
+tapeware         3817/tcp
+tapeware         3817/udp
+crinis-hb        3818/tcp
+crinis-hb        3818/udp
+epl-slp          3819/tcp
+epl-slp          3819/udp
+scp              3820/tcp
+scp              3820/udp
+pmcp             3821/tcp
+pmcp             3821/udp
+acp-discovery    3822/tcp
+acp-discovery    3822/udp
+acp-conduit      3823/tcp
+acp-conduit      3823/udp
+acp-policy       3824/tcp
+acp-policy       3824/udp
+ffserver         3825/tcp
+ffserver         3825/udp
+warmux           3826/tcp
+warmux           3826/udp
+netmpi           3827/tcp
+netmpi           3827/udp
+neteh            3828/tcp
+neteh            3828/udp
+neteh-ext        3829/tcp
+neteh-ext        3829/udp
+cernsysmgmtagt   3830/tcp
+cernsysmgmtagt   3830/udp
+dvapps           3831/tcp
+dvapps           3831/udp
+xxnetserver      3832/tcp
+xxnetserver      3832/udp
+aipn-auth        3833/tcp
+aipn-auth        3833/udp
+spectardata      3834/tcp
+spectardata      3834/udp
+spectardb        3835/tcp
+spectardb        3835/udp
+markem-dcp       3836/tcp
+markem-dcp       3836/udp
+mkm-discovery    3837/tcp
+mkm-discovery    3837/udp
+sos              3838/tcp
+sos              3838/udp
+amx-rms          3839/tcp
+amx-rms          3839/udp
+flirtmitmir      3840/tcp
+flirtmitmir      3840/udp
+shiprush-db-svr  3841/tcp
+nhci             3842/tcp
+nhci             3842/udp
+quest-agent      3843/tcp
+quest-agent      3843/udp
+rnm              3844/tcp
+rnm              3844/udp
+v-one-spp        3845/tcp
+v-one-spp        3845/udp
+an-pcp           3846/tcp
+an-pcp           3846/udp
+msfw-control     3847/tcp
+msfw-control     3847/udp
+item             3848/tcp
+item             3848/udp
+spw-dnspreload   3849/tcp
+spw-dnspreload   3849/udp
+qtms-bootstrap   3850/tcp
+qtms-bootstrap   3850/udp
+spectraport      3851/tcp
+spectraport      3851/udp
+sse-app-config   3852/tcp
+sse-app-config   3852/udp
+sscan            3853/tcp
+sscan            3853/udp
+stryker-com      3854/tcp
+stryker-com      3854/udp
+opentrac         3855/tcp
+opentrac         3855/udp
+informer         3856/tcp
+informer         3856/udp
+trap-port        3857/tcp
+trap-port        3857/udp
+trap-port-mom    3858/tcp
+trap-port-mom    3858/udp
+nav-port         3859/tcp
+nav-port         3859/udp
+sasp             3860/tcp
+sasp             3860/udp
+winshadow-hd     3861/tcp
+winshadow-hd     3861/udp
+giga-pocket      3862/tcp
+giga-pocket      3862/udp
+asap-tcp         3863/tcp
+asap-udp         3863/udp
+asap-sctp        3863/sctp
+asap-tcp-tls     3864/tcp
+asap-sctp-tls    3864/sctp
+xpl              3865/tcp
+xpl              3865/udp
+dzdaemon         3866/tcp
+dzdaemon         3866/udp
+dzoglserver      3867/tcp
+dzoglserver      3867/udp
+diameter         3868/tcp
+diameter         3868/sctp
+ovsam-mgmt       3869/tcp
+ovsam-mgmt       3869/udp
+ovsam-d-agent    3870/tcp
+ovsam-d-agent    3870/udp
+avocent-adsap    3871/tcp
+avocent-adsap    3871/udp
+oem-agent        3872/tcp
+oem-agent        3872/udp
+fagordnc         3873/tcp
+fagordnc         3873/udp
+sixxsconfig      3874/tcp
+sixxsconfig      3874/udp
+pnbscada         3875/tcp
+pnbscada         3875/udp
+dl-agent         3876/tcp
+dl-agent         3876/udp
+xmpcr-interface  3877/tcp
+xmpcr-interface  3877/udp
+fotogcad         3878/tcp
+fotogcad         3878/udp
+appss-lm         3879/tcp
+appss-lm         3879/udp
+igrs             3880/tcp
+igrs             3880/udp
+idac             3881/tcp
+idac             3881/udp
+msdts1           3882/tcp
+msdts1           3882/udp
+vrpn             3883/tcp
+vrpn             3883/udp
+softrack-meter   3884/tcp
+softrack-meter   3884/udp
+topflow-ssl      3885/tcp
+topflow-ssl      3885/udp
+nei-management   3886/tcp
+nei-management   3886/udp
+ciphire-data     3887/tcp
+ciphire-data     3887/udp
+ciphire-serv     3888/tcp
+ciphire-serv     3888/udp
+dandv-tester     3889/tcp
+dandv-tester     3889/udp
+ndsconnect       3890/tcp
+ndsconnect       3890/udp
+rtc-pm-port      3891/tcp
+rtc-pm-port      3891/udp
+pcc-image-port   3892/tcp
+pcc-image-port   3892/udp
+cgi-starapi      3893/tcp
+cgi-starapi      3893/udp
+syam-agent       3894/tcp
+syam-agent       3894/udp
+syam-smc         3895/tcp
+syam-smc         3895/udp
+sdo-tls          3896/tcp
+sdo-tls          3896/udp
+sdo-ssh          3897/tcp
+sdo-ssh          3897/udp
+senip            3898/tcp
+senip            3898/udp
+itv-control      3899/tcp
+itv-control      3899/udp
+udt-os           3900/tcp
+udt-os           3900/udp
+nimsh            3901/tcp
+nimsh            3901/udp
+nimaux           3902/tcp
+nimaux           3902/udp
+charsetmgr       3903/tcp
+charsetmgr       3903/udp
+omnilink-port    3904/tcp
+omnilink-port    3904/udp
+mupdate          3905/tcp
+mupdate          3905/udp
+topovista-data   3906/tcp
+topovista-data   3906/udp
+imoguia-port     3907/tcp
+imoguia-port     3907/udp
+hppronetman      3908/tcp
+hppronetman      3908/udp
+surfcontrolcpa   3909/tcp
+surfcontrolcpa   3909/udp
+prnrequest       3910/tcp
+prnrequest       3910/udp
+prnstatus        3911/tcp
+prnstatus        3911/udp
+gbmt-stars       3912/tcp
+gbmt-stars       3912/udp
+listcrt-port     3913/tcp
+listcrt-port     3913/udp
+listcrt-port-2   3914/tcp
+listcrt-port-2   3914/udp
+agcat            3915/tcp
+agcat            3915/udp
+wysdmc           3916/tcp
+wysdmc           3916/udp
+aftmux           3917/tcp
+aftmux           3917/udp
+pktcablemmcops   3918/tcp
+pktcablemmcops   3918/udp
+hyperip          3919/tcp
+hyperip          3919/udp
+exasoftport1     3920/tcp
+exasoftport1     3920/udp
+herodotus-net    3921/tcp
+herodotus-net    3921/udp
+sor-update       3922/tcp
+sor-update       3922/udp
+symb-sb-port     3923/tcp
+symb-sb-port     3923/udp
+mpl-gprs-port    3924/tcp
+mpl-gprs-port    3924/udp
+zmp              3925/tcp
+zmp              3925/udp
+winport          3926/tcp
+winport          3926/udp
+natdataservice   3927/tcp
+natdataservice   3927/udp
+netboot-pxe      3928/tcp
+netboot-pxe      3928/udp
+smauth-port      3929/tcp
+smauth-port      3929/udp
+syam-webserver   3930/tcp
+syam-webserver   3930/udp
+msr-plugin-port  3931/tcp
+msr-plugin-port  3931/udp
+dyn-site         3932/tcp
+dyn-site         3932/udp
+plbserve-port    3933/tcp
+plbserve-port    3933/udp
+sunfm-port       3934/tcp
+sunfm-port       3934/udp
+sdp-portmapper   3935/tcp
+sdp-portmapper   3935/udp
+mailprox         3936/tcp
+mailprox         3936/udp
+dvbservdsc       3937/tcp
+dvbservdsc       3937/udp
+dbcontrol-agent  3938/tcp
+dbcontrol-agent  3938/udp
+aamp             3939/tcp
+aamp             3939/udp
+xecp-node        3940/tcp
+xecp-node        3940/udp
+homeportal-web   3941/tcp
+homeportal-web   3941/udp
+srdp             3942/tcp
+srdp             3942/udp
+tig              3943/tcp
+tig              3943/udp
+sops             3944/tcp
+sops             3944/udp
+emcads           3945/tcp
+emcads           3945/udp
+backupedge       3946/tcp
+backupedge       3946/udp
+ccp              3947/tcp
+ccp              3947/udp
+apdap            3948/tcp
+apdap            3948/udp
+drip             3949/tcp
+drip             3949/udp
+namemunge        3950/tcp
+namemunge        3950/udp
+pwgippfax        3951/tcp
+pwgippfax        3951/udp
+i3-sessionmgr    3952/tcp
+i3-sessionmgr    3952/udp
+xmlink-connect   3953/tcp
+xmlink-connect   3953/udp
+adrep            3954/tcp
+adrep            3954/udp
+p2pcommunity     3955/tcp
+p2pcommunity     3955/udp
+gvcp             3956/tcp
+gvcp             3956/udp
+mqe-broker       3957/tcp
+mqe-broker       3957/udp
+mqe-agent        3958/tcp
+mqe-agent        3958/udp
+treehopper       3959/tcp
+treehopper       3959/udp
+bess             3960/tcp
+bess             3960/udp
+proaxess         3961/tcp
+proaxess         3961/udp
+sbi-agent        3962/tcp
+sbi-agent        3962/udp
+thrp             3963/tcp
+thrp             3963/udp
+sasggprs         3964/tcp
+sasggprs         3964/udp
+ati-ip-to-ncpe   3965/tcp
+ati-ip-to-ncpe   3965/udp
+bflckmgr         3966/tcp
+bflckmgr         3966/udp
+ppsms            3967/tcp
+ppsms            3967/udp
+ianywhere-dbns   3968/tcp
+ianywhere-dbns   3968/udp
+landmarks        3969/tcp
+landmarks        3969/udp
+lanrevagent      3970/tcp
+lanrevagent      3970/udp
+lanrevserver     3971/tcp
+lanrevserver     3971/udp
+iconp            3972/tcp
+iconp            3972/udp
+progistics       3973/tcp
+progistics       3973/udp
+citysearch       3974/tcp
+citysearch       3974/udp
+airshot          3975/tcp
+airshot          3975/udp
+opswagent        3976/tcp
+opswagent        3976/udp
+opswmanager      3977/tcp
+opswmanager      3977/udp
+secure-cfg-svr   3978/tcp
+secure-cfg-svr   3978/udp
+smwan            3979/tcp
+smwan            3979/udp
+acms             3980/tcp
+acms             3980/udp
+starfish         3981/tcp
+starfish         3981/udp
+eis              3982/tcp
+eis              3982/udp
+eisp             3983/tcp
+eisp             3983/udp
+mapper-nodemgr   3984/tcp
+mapper-nodemgr   3984/udp
+mapper-mapethd   3985/tcp
+mapper-mapethd   3985/udp
+mapper-ws-ethd   3986/tcp
+mapper-ws-ethd   3986/udp
+centerline       3987/tcp
+centerline       3987/udp
+dcs-config       3988/tcp
+dcs-config       3988/udp
+bv-queryengine   3989/tcp
+bv-queryengine   3989/udp
+bv-is            3990/tcp
+bv-is            3990/udp
+bv-smcsrv        3991/tcp
+bv-smcsrv        3991/udp
+bv-ds            3992/tcp
+bv-ds            3992/udp
+bv-agent         3993/tcp
+bv-agent         3993/udp
+iss-mgmt-ssl     3995/tcp
+iss-mgmt-ssl     3995/udp
+abcsoftware      3996/tcp
+abcsoftware      3996/udp
+agentsease-db    3997/tcp
+agentsease-db    3997/udp
+dnx              3998/tcp
+dnx              3998/udp
+nvcnet           3999/tcp
+nvcnet           3999/udp
+terabase         4000/tcp
+terabase         4000/udp
+newoak           4001/tcp
+newoak           4001/udp
+pxc-spvr-ft      4002/tcp
+pxc-spvr-ft      4002/udp
+pxc-splr-ft      4003/tcp
+pxc-splr-ft      4003/udp
+pxc-roid         4004/tcp
+pxc-roid         4004/udp
+pxc-pin          4005/tcp
+pxc-pin          4005/udp
+pxc-spvr         4006/tcp
+pxc-spvr         4006/udp
+pxc-splr         4007/tcp
+pxc-splr         4007/udp
+netcheque        4008/tcp
+netcheque        4008/udp
+chimera-hwm      4009/tcp
+chimera-hwm      4009/udp
+samsung-unidex   4010/tcp
+samsung-unidex   4010/udp
+altserviceboot   4011/tcp
+altserviceboot   4011/udp
+pda-gate         4012/tcp
+pda-gate         4012/udp
+acl-manager      4013/tcp
+acl-manager      4013/udp
+taiclock         4014/tcp
+taiclock         4014/udp
+talarian-mcast1  4015/tcp
+talarian-mcast1  4015/udp
+talarian-mcast2  4016/tcp
+talarian-mcast2  4016/udp
+talarian-mcast3  4017/tcp
+talarian-mcast3  4017/udp
+talarian-mcast4  4018/tcp
+talarian-mcast4  4018/udp
+talarian-mcast5  4019/tcp
+talarian-mcast5  4019/udp
+trap             4020/tcp
+trap             4020/udp
+nexus-portal     4021/tcp
+nexus-portal     4021/udp
+dnox             4022/tcp
+dnox             4022/udp
+esnm-zoning      4023/tcp
+esnm-zoning      4023/udp
+tnp1-port        4024/tcp
+tnp1-port        4024/udp
+partimage        4025/tcp
+partimage        4025/udp
+as-debug         4026/tcp
+as-debug         4026/udp
+bxp              4027/tcp
+bxp              4027/udp
+dtserver-port    4028/tcp
+dtserver-port    4028/udp
+ip-qsig          4029/tcp
+ip-qsig          4029/udp
+jdmn-port        4030/tcp
+jdmn-port        4030/udp
+suucp            4031/tcp
+suucp            4031/udp
+vrts-auth-port   4032/tcp
+vrts-auth-port   4032/udp
+sanavigator      4033/tcp
+sanavigator      4033/udp
+ubxd             4034/tcp
+ubxd             4034/udp
+wap-push-http    4035/tcp
+wap-push-http    4035/udp
+wap-push-https   4036/tcp
+wap-push-https   4036/udp
+ravehd           4037/tcp
+ravehd           4037/udp
+fazzt-ptp        4038/tcp
+fazzt-ptp        4038/udp
+fazzt-admin      4039/tcp
+fazzt-admin      4039/udp
+yo-main          4040/tcp
+yo-main          4040/udp
+houston          4041/tcp
+houston          4041/udp
+ldxp             4042/tcp
+ldxp             4042/udp
+nirp             4043/tcp
+nirp             4043/udp
+ltp              4044/tcp
+ltp              4044/udp
+npp              4045/tcp
+npp              4045/udp
+acp-proto        4046/tcp
+acp-proto        4046/udp
+ctp-state        4047/tcp
+ctp-state        4047/udp
+wafs             4049/tcp
+wafs             4049/udp
+cisco-wafs       4050/tcp
+cisco-wafs       4050/udp
+cppdp            4051/tcp
+cppdp            4051/udp
+interact         4052/tcp
+interact         4052/udp
+ccu-comm-1       4053/tcp
+ccu-comm-1       4053/udp
+ccu-comm-2       4054/tcp
+ccu-comm-2       4054/udp
+ccu-comm-3       4055/tcp
+ccu-comm-3       4055/udp
+lms              4056/tcp
+lms              4056/udp
+wfm              4057/tcp
+wfm              4057/udp
+kingfisher       4058/tcp
+kingfisher       4058/udp
+dlms-cosem       4059/tcp
+dlms-cosem       4059/udp
+dsmeter-iatc     4060/tcp
+dsmeter-iatc     4060/udp
+ice-location     4061/tcp
+ice-location     4061/udp
+ice-slocation    4062/tcp
+ice-slocation    4062/udp
+ice-router       4063/tcp
+ice-router       4063/udp
+ice-srouter      4064/tcp
+ice-srouter      4064/udp
+avanti-cdp       4065/tcp
+avanti-cdp       4065/udp
+pmas             4066/tcp
+pmas             4066/udp
+idp              4067/tcp
+idp              4067/udp
+ipfltbcst        4068/tcp
+ipfltbcst        4068/udp
+minger           4069/tcp
+minger           4069/udp
+tripe            4070/tcp
+tripe            4070/udp
+aibkup           4071/tcp
+aibkup           4071/udp
+zieto-sock       4072/tcp
+zieto-sock       4072/udp
+iRAPP            4073/tcp
+iRAPP            4073/udp
+cequint-cityid   4074/tcp
+cequint-cityid   4074/udp
+perimlan         4075/tcp
+perimlan         4075/udp
+seraph           4076/tcp
+seraph           4076/udp
+ascomalarm       4077/udp
+cssp             4078/tcp
+santools         4079/tcp
+santools         4079/udp
+lorica-in        4080/tcp
+lorica-in        4080/udp
+lorica-in-sec    4081/tcp
+lorica-in-sec    4081/udp
+lorica-out       4082/tcp
+lorica-out       4082/udp
+lorica-out-sec   4083/tcp
+lorica-out-sec   4083/udp
+fortisphere-vm   4084/udp
+ezmessagesrv     4085/tcp
+ftsync           4086/udp
+applusservice    4087/tcp
+npsp             4088/tcp
+opencore         4089/tcp
+opencore         4089/udp
+omasgport        4090/tcp
+omasgport        4090/udp
+ewinstaller      4091/tcp
+ewinstaller      4091/udp
+ewdgs            4092/tcp
+ewdgs            4092/udp
+pvxpluscs        4093/tcp
+pvxpluscs        4093/udp
+sysrqd           4094/tcp
+sysrqd           4094/udp
+xtgui            4095/tcp
+xtgui            4095/udp
+bre              4096/tcp
+bre              4096/udp
+patrolview       4097/tcp
+patrolview       4097/udp
+drmsfsd          4098/tcp
+drmsfsd          4098/udp
+dpcp             4099/tcp
+dpcp             4099/udp
+igo-incognito    4100/tcp
+igo-incognito    4100/udp
+brlp-0           4101/tcp
+brlp-0           4101/udp
+brlp-1           4102/tcp
+brlp-1           4102/udp
+brlp-2           4103/tcp
+brlp-2           4103/udp
+brlp-3           4104/tcp
+brlp-3           4104/udp
+shofar           4105/tcp
+shofar           4105/udp
+synchronite      4106/tcp
+synchronite      4106/udp
+j-ac             4107/tcp
+j-ac             4107/udp
+accel            4108/tcp
+accel            4108/udp
+izm              4109/tcp
+izm              4109/udp
+g2tag            4110/tcp
+g2tag            4110/udp
+xgrid            4111/tcp
+xgrid            4111/udp
+apple-vpns-rp    4112/tcp
+apple-vpns-rp    4112/udp
+aipn-reg         4113/tcp
+aipn-reg         4113/udp
+jomamqmonitor    4114/tcp
+jomamqmonitor    4114/udp
+cds              4115/tcp
+cds              4115/udp
+smartcard-tls    4116/tcp
+smartcard-tls    4116/udp
+hillrserv        4117/tcp
+hillrserv        4117/udp
+netscript        4118/tcp
+netscript        4118/udp
+assuria-slm      4119/tcp
+assuria-slm      4119/udp
+minirem          4120/tcp
+e-builder        4121/tcp
+e-builder        4121/udp
+fprams           4122/tcp
+fprams           4122/udp
+z-wave           4123/tcp
+z-wave           4123/udp
+tigv2            4124/tcp
+tigv2            4124/udp
+opsview-envoy    4125/tcp
+opsview-envoy    4125/udp
+ddrepl           4126/tcp
+ddrepl           4126/udp
+unikeypro        4127/tcp
+unikeypro        4127/udp
+nufw             4128/tcp
+nufw             4128/udp
+nuauth           4129/tcp
+nuauth           4129/udp
+fronet           4130/tcp
+fronet           4130/udp
+stars            4131/tcp
+stars            4131/udp
+nuts-dem         4132/tcp
+nuts-dem         4132/udp
+nuts-bootp       4133/tcp
+nuts-bootp       4133/udp
+nifty-hmi        4134/tcp
+nifty-hmi        4134/udp
+cl-db-attach     4135/tcp
+cl-db-attach     4135/udp
+cl-db-request    4136/tcp
+cl-db-request    4136/udp
+cl-db-remote     4137/tcp
+cl-db-remote     4137/udp
+nettest          4138/tcp
+nettest          4138/udp
+thrtx            4139/tcp
+thrtx            4139/udp
+cedros-fds       4140/tcp
+cedros-fds       4140/udp
+oirtgsvc         4141/tcp
+oirtgsvc         4141/udp
+oidocsvc         4142/tcp
+oidocsvc         4142/udp
+oidsr            4143/tcp
+oidsr            4143/udp
+vvr-control      4145/tcp
+vvr-control      4145/udp
+tgcconnect       4146/tcp
+tgcconnect       4146/udp
+vrxpservman      4147/tcp
+vrxpservman      4147/udp
+hhb-handheld     4148/tcp
+hhb-handheld     4148/udp
+agslb            4149/tcp
+agslb            4149/udp
+PowerAlert-nsa   4150/tcp
+PowerAlert-nsa   4150/udp
+menandmice-noh   4151/tcp
+menandmice-noh   4151/udp
+idig-mux         4152/tcp
+idig-mux         4152/udp
+mbl-battd        4153/tcp
+mbl-battd        4153/udp
+atlinks          4154/tcp
+atlinks          4154/udp
+bzr              4155/tcp
+bzr              4155/udp
+stat-results     4156/tcp
+stat-results     4156/udp
+stat-scanner     4157/tcp
+stat-scanner     4157/udp
+stat-cc          4158/tcp
+stat-cc          4158/udp
+nss              4159/tcp
+nss              4159/udp
+jini-discovery   4160/tcp
+jini-discovery   4160/udp
+omscontact       4161/tcp
+omscontact       4161/udp
+omstopology      4162/tcp
+omstopology      4162/udp
+silverpeakpeer   4163/tcp
+silverpeakpeer   4163/udp
+silverpeakcomm   4164/tcp
+silverpeakcomm   4164/udp
+altcp            4165/tcp
+altcp            4165/udp
+joost            4166/tcp
+joost            4166/udp
+ddgn             4167/tcp
+ddgn             4167/udp
+pslicser         4168/tcp
+pslicser         4168/udp
+iadt             4169/tcp
+iadt-disc        4169/udp
+d-cinema-csp     4170/tcp
+ml-svnet         4171/tcp
+pcoip            4172/tcp
+pcoip            4172/udp
+mma-discovery    4173/udp
+smcluster        4174/tcp
+sm-disc          4174/udp
+bccp             4175/tcp
+tl-ipcproxy      4176/tcp
+wello            4177/tcp
+wello            4177/udp
+storman          4178/tcp
+storman          4178/udp
+MaxumSP          4179/tcp
+MaxumSP          4179/udp
+httpx            4180/tcp
+httpx            4180/udp
+macbak           4181/tcp
+macbak           4181/udp
+pcptcpservice    4182/tcp
+pcptcpservice    4182/udp
+cyborgnet        4183/tcp
+cyborgnet        4183/udp
+universe-suite   4184/tcp
+universe-suite   4184/udp
+wcpp             4185/tcp
+wcpp             4185/udp
+boxbackupstore   4186/tcp
+csc-proxy        4187/tcp
+vatata           4188/tcp
+vatata           4188/udp
+pcep             4189/tcp
+sieve            4190/tcp
+dsmipv6          4191/udp
+azeti            4192/tcp
+azeti-bd         4192/udp
+pvxplusio        4193/tcp
+aws-wsp          4195/tcp
+aws-wsp          4195/udp
+aws-wsp          4195/sctp
+aws-wsp          4195/dccp
+hctl             4197/tcp
+hctl             4197/udp
+eims-admin       4199/tcp
+eims-admin       4199/udp
+corelccam        4300/tcp
+corelccam        4300/udp
+d-data           4301/tcp
+d-data           4301/udp
+d-data-control   4302/tcp
+d-data-control   4302/udp
+srcp             4303/tcp
+srcp             4303/udp
+owserver         4304/tcp
+owserver         4304/udp
+batman           4305/tcp
+batman           4305/udp
+pinghgl          4306/tcp
+pinghgl          4306/udp
+trueconf         4307/tcp
+trueconf         4307/udp
+compx-lockview   4308/tcp
+compx-lockview   4308/udp
+dserver          4309/tcp
+dserver          4309/udp
+mirrtex          4310/tcp
+mirrtex          4310/udp
+p6ssmc           4311/tcp
+pscl-mgt         4312/tcp
+perrla           4313/tcp
+choiceview-agt   4314/tcp
+choiceview-clt   4316/tcp
+fdt-rcatp        4320/tcp
+fdt-rcatp        4320/udp
+rwhois           4321/tcp
+rwhois           4321/udp
+trim-event       4322/tcp
+trim-event       4322/udp
+trim-ice         4323/tcp
+trim-ice         4323/udp
+geognosisman     4325/tcp
+geognosisman     4325/udp
+geognosis        4326/tcp
+geognosis        4326/udp
+jaxer-web        4327/tcp
+jaxer-web        4327/udp
+jaxer-manager    4328/tcp
+jaxer-manager    4328/udp
+publiqare-sync   4329/tcp
+dey-sapi         4330/tcp
+ktickets-rest    4331/tcp
+getty-focus      4332/tcp
+ahsp             4333/tcp
+ahsp             4333/udp
+ahsp             4333/sctp
+netconf-ch-ssh   4334/tcp
+netconf-ch-tls   4335/tcp
+restconf-ch-tls  4336/tcp
+gaia             4340/tcp
+gaia             4340/udp
+lisp-data        4341/udp
+lisp-control     4342/udp
+unicall          4343/tcp
+unicall          4343/udp
+vinainstall      4344/tcp
+vinainstall      4344/udp
+m4-network-as    4345/tcp
+m4-network-as    4345/udp
+elanlm           4346/tcp
+elanlm           4346/udp
+lansurveyor      4347/tcp
+lansurveyor      4347/udp
+itose            4348/tcp
+itose            4348/udp
+fsportmap        4349/tcp
+fsportmap        4349/udp
+net-device       4350/tcp
+net-device       4350/udp
+plcy-net-svcs    4351/tcp
+plcy-net-svcs    4351/udp
+pjlink           4352/tcp
+pjlink           4352/udp
+f5-iquery        4353/tcp
+f5-iquery        4353/udp
+qsnet-trans      4354/tcp
+qsnet-trans      4354/udp
+qsnet-workst     4355/tcp
+qsnet-workst     4355/udp
+qsnet-assist     4356/tcp
+qsnet-assist     4356/udp
+qsnet-cond       4357/tcp
+qsnet-cond       4357/udp
+qsnet-nucl       4358/tcp
+qsnet-nucl       4358/udp
+omabcastltkm     4359/tcp
+omabcastltkm     4359/udp
+matrix-vnet      4360/tcp
+nacnl            4361/udp
+afore-vdp-disc   4362/udp
+shadowstream     4366/udp
+wxbrief          4368/tcp
+wxbrief          4368/udp
+epmd             4369/tcp
+epmd             4369/udp
+elpro-tunnel     4370/tcp
+elpro-tunnel     4370/udp
+l2c-control      4371/tcp
+l2c-disc         4371/udp
+l2c-data         4372/tcp
+l2c-data         4372/udp
+remctl           4373/tcp
+remctl           4373/udp
+psi-ptt          4374/tcp
+tolteces         4375/tcp
+tolteces         4375/udp
+bip              4376/tcp
+bip              4376/udp
+cp-spxsvr        4377/tcp
+cp-spxsvr        4377/udp
+cp-spxdpy        4378/tcp
+cp-spxdpy        4378/udp
+ctdb             4379/tcp
+ctdb             4379/udp
+xandros-cms      4389/tcp
+xandros-cms      4389/udp
+wiegand          4390/tcp
+wiegand          4390/udp
+apwi-imserver    4391/tcp
+apwi-rxserver    4392/tcp
+apwi-rxspooler   4393/tcp
+apwi-disc        4394/udp
+omnivisionesx    4395/tcp
+omnivisionesx    4395/udp
+fly              4396/tcp
+ds-srv           4400/tcp
+ds-srv           4400/udp
+ds-srvr          4401/tcp
+ds-srvr          4401/udp
+ds-clnt          4402/tcp
+ds-clnt          4402/udp
+ds-user          4403/tcp
+ds-user          4403/udp
+ds-admin         4404/tcp
+ds-admin         4404/udp
+ds-mail          4405/tcp
+ds-mail          4405/udp
+ds-slp           4406/tcp
+ds-slp           4406/udp
+nacagent         4407/tcp
+slscc            4408/tcp
+netcabinet-com   4409/tcp
+itwo-server      4410/tcp
+found            4411/tcp
+smallchat        4412/udp
+avi-nms          4413/tcp
+avi-nms-disc     4413/udp
+updog            4414/tcp
+brcd-vr-req      4415/tcp
+pjj-player       4416/tcp
+pjj-player-disc  4416/udp
+workflowdir      4417/tcp
+axysbridge       4418/udp
+cbp              4419/tcp
+nvme             4420/tcp
+nvme             4420/udp
+scaleft          4421/tcp
+tsepisp          4422/tcp
+thingkit         4423/tcp
+netrockey6       4425/tcp
+netrockey6       4425/udp
+beacon-port-2    4426/tcp
+beacon-port-2    4426/udp
+drizzle          4427/tcp
+omviserver       4428/tcp
+omviagent        4429/tcp
+rsqlserver       4430/tcp
+rsqlserver       4430/udp
+wspipe           4431/tcp
+l-acoustics      4432/tcp
+l-acoustics      4432/udp
+vop              4433/tcp
+netblox          4441/udp
+saris            4442/tcp
+saris            4442/udp
+pharos           4443/tcp
+pharos           4443/udp
+krb524           4444/tcp
+krb524           4444/udp
+nv-video         4444/tcp
+nv-video         4444/udp
+upnotifyp        4445/tcp
+upnotifyp        4445/udp
+n1-fwp           4446/tcp
+n1-fwp           4446/udp
+n1-rmgmt         4447/tcp
+n1-rmgmt         4447/udp
+asc-slmd         4448/tcp
+asc-slmd         4448/udp
+privatewire      4449/tcp
+privatewire      4449/udp
+camp             4450/tcp
+camp             4450/udp
+ctisystemmsg     4451/tcp
+ctisystemmsg     4451/udp
+ctiprogramload   4452/tcp
+ctiprogramload   4452/udp
+nssalertmgr      4453/tcp
+nssalertmgr      4453/udp
+nssagentmgr      4454/tcp
+nssagentmgr      4454/udp
+prchat-user      4455/tcp
+prchat-user      4455/udp
+prchat-server    4456/tcp
+prchat-server    4456/udp
+prRegister       4457/tcp
+prRegister       4457/udp
+mcp              4458/tcp
+mcp              4458/udp
+ntske            4460/tcp
+hpssmgmt         4484/tcp
+hpssmgmt         4484/udp
+assyst-dr        4485/tcp
+icms             4486/tcp
+icms             4486/udp
+prex-tcp         4487/tcp
+awacs-ice        4488/tcp
+awacs-ice        4488/udp
+ipsec-nat-t      4500/tcp
+ipsec-nat-t      4500/udp
+a25-fap-fgw      4502/sctp
+armagetronad     4534/udp
+ehs              4535/tcp
+ehs              4535/udp
+ehs-ssl          4536/tcp
+ehs-ssl          4536/udp
+wssauthsvc       4537/tcp
+wssauthsvc       4537/udp
+swx-gate         4538/tcp
+swx-gate         4538/udp
+worldscores      4545/tcp
+worldscores      4545/udp
+sf-lm            4546/tcp
+sf-lm            4546/udp
+lanner-lm        4547/tcp
+lanner-lm        4547/udp
+synchromesh      4548/tcp
+synchromesh      4548/udp
+aegate           4549/tcp
+aegate           4549/udp
+gds-adppiw-db    4550/tcp
+gds-adppiw-db    4550/udp
+ieee-mih         4551/tcp
+ieee-mih         4551/udp
+menandmice-mon   4552/tcp
+menandmice-mon   4552/udp
+icshostsvc       4553/tcp
+msfrs            4554/tcp
+msfrs            4554/udp
+rsip             4555/tcp
+rsip             4555/udp
+dtn-bundle       4556/tcp
+dtn-bundle       4556/udp
+dtn-bundle       4556/dccp
+mtcevrunqss      4557/udp
+mtcevrunqman     4558/udp
+hylafax          4559/tcp
+hylafax          4559/udp
+amahi-anywhere   4563/tcp
+kwtc             4566/tcp
+kwtc             4566/udp
+tram             4567/tcp
+tram             4567/udp
+bmc-reporting    4568/tcp
+bmc-reporting    4568/udp
+iax              4569/tcp
+iax              4569/udp
+deploymentmap    4570/tcp
+cardifftec-back  4573/tcp
+rid              4590/tcp
+l3t-at-an        4591/tcp
+l3t-at-an        4591/udp
+hrpd-ith-at-an   4592/udp
+ipt-anri-anri    4593/tcp
+ipt-anri-anri    4593/udp
+ias-session      4594/tcp
+ias-session      4594/udp
+ias-paging       4595/tcp
+ias-paging       4595/udp
+ias-neighbor     4596/tcp
+ias-neighbor     4596/udp
+a21-an-1xbs      4597/tcp
+a21-an-1xbs      4597/udp
+a16-an-an        4598/tcp
+a16-an-an        4598/udp
+a17-an-an        4599/tcp
+a17-an-an        4599/udp
+piranha1         4600/tcp
+piranha1         4600/udp
+piranha2         4601/tcp
+piranha2         4601/udp
+mtsserver        4602/tcp
+menandmice-upg   4603/tcp
+irp              4604/tcp
+sixchat          4605/tcp
+sixid            4606/tcp
+ventoso          4621/udp
+dots-signal      4646/tcp
+dots-signal      4646/udp
+playsta2-app     4658/tcp
+playsta2-app     4658/udp
+playsta2-lob     4659/tcp
+playsta2-lob     4659/udp
+smaclmgr         4660/tcp
+smaclmgr         4660/udp
+kar2ouche        4661/tcp
+kar2ouche        4661/udp
+oms              4662/tcp
+oms              4662/udp
+noteit           4663/tcp
+noteit           4663/udp
+ems              4664/tcp
+ems              4664/udp
+contclientms     4665/tcp
+contclientms     4665/udp
+eportcomm        4666/tcp
+eportcomm        4666/udp
+mmacomm          4667/tcp
+mmacomm          4667/udp
+mmaeds           4668/tcp
+mmaeds           4668/udp
+eportcommdata    4669/tcp
+eportcommdata    4669/udp
+light            4670/tcp
+light            4670/udp
+acter            4671/tcp
+acter            4671/udp
+rfa              4672/tcp
+rfa              4672/udp
+cxws             4673/tcp
+cxws             4673/udp
+appiq-mgmt       4674/tcp
+appiq-mgmt       4674/udp
+dhct-status      4675/tcp
+dhct-status      4675/udp
+dhct-alerts      4676/tcp
+dhct-alerts      4676/udp
+bcs              4677/tcp
+bcs              4677/udp
+traversal        4678/tcp
+traversal        4678/udp
+mgesupervision   4679/tcp
+mgesupervision   4679/udp
+mgemanagement    4680/tcp
+mgemanagement    4680/udp
+parliant         4681/tcp
+parliant         4681/udp
+finisar          4682/tcp
+finisar          4682/udp
+spike            4683/tcp
+spike            4683/udp
+rfid-rp1         4684/tcp
+rfid-rp1         4684/udp
+autopac          4685/tcp
+autopac          4685/udp
+msp-os           4686/tcp
+msp-os           4686/udp
+nst              4687/tcp
+nst              4687/udp
+mobile-p2p       4688/tcp
+mobile-p2p       4688/udp
+altovacentral    4689/tcp
+altovacentral    4689/udp
+prelude          4690/tcp
+prelude          4690/udp
+mtn              4691/tcp
+mtn              4691/udp
+conspiracy       4692/tcp
+conspiracy       4692/udp
+netxms-agent     4700/tcp
+netxms-agent     4700/udp
+netxms-mgmt      4701/tcp
+netxms-mgmt      4701/udp
+netxms-sync      4702/tcp
+netxms-sync      4702/udp
+npqes-test       4703/tcp
+assuria-ins      4704/tcp
+trinity-dist     4711/tcp
+trinity-dist     4711/udp
+trinity-dist     4711/sctp
+truckstar        4725/tcp
+truckstar        4725/udp
+a26-fap-fgw      4726/udp
+fcis             4727/tcp
+fcis-disc        4727/udp
+capmux           4728/tcp
+capmux           4728/udp
+gsmtap           4729/udp
+gearman          4730/tcp
+gearman          4730/udp
+remcap           4731/tcp
+ohmtrigger       4732/udp
+resorcs          4733/tcp
+ipdr-sp          4737/tcp
+ipdr-sp          4737/udp
+solera-lpn       4738/tcp
+solera-lpn       4738/udp
+ipfix            4739/tcp
+ipfix            4739/udp
+ipfix            4739/sctp
+ipfixs           4740/tcp
+ipfixs           4740/sctp
+ipfixs           4740/udp
+lumimgrd         4741/tcp
+lumimgrd         4741/udp
+sicct            4742/tcp
+sicct-sdp        4742/udp
+openhpid         4743/tcp
+openhpid         4743/udp
+ifsp             4744/tcp
+ifsp             4744/udp
+fmp              4745/tcp
+fmp              4745/udp
+intelliadm-disc  4746/udp
+buschtrommel     4747/udp
+profilemac       4749/tcp
+profilemac       4749/udp
+ssad             4750/tcp
+ssad             4750/udp
+spocp            4751/tcp
+spocp            4751/udp
+snap             4752/tcp
+snap             4752/udp
+simon            4753/tcp
+simon-disc       4753/udp
+gre-in-udp       4754/udp
+gre-udp-dtls     4755/udp
+RDCenter         4756/tcp
+converge         4774/tcp
+bfd-multi-ctl    4784/tcp
+bfd-multi-ctl    4784/udp
+cncp             4785/udp
+smart-install    4786/tcp
+sia-ctrl-plane   4787/tcp
+xmcp             4788/tcp
+vxlan            4789/udp
+vxlan-gpe        4790/udp
+roce             4791/udp
+iims             4800/tcp
+iims             4800/udp
+iwec             4801/tcp
+iwec             4801/udp
+ilss             4802/tcp
+ilss             4802/udp
+notateit         4803/tcp
+notateit-disc    4803/udp
+aja-ntv4-disc    4804/udp
+htcp             4827/tcp
+htcp             4827/udp
+varadero-0       4837/tcp
+varadero-0       4837/udp
+varadero-1       4838/tcp
+varadero-1       4838/udp
+varadero-2       4839/tcp
+varadero-2       4839/udp
+opcua-tcp        4840/tcp
+opcua-udp        4840/udp
+quosa            4841/tcp
+quosa            4841/udp
+gw-asv           4842/tcp
+gw-asv           4842/udp
+opcua-tls        4843/tcp
+opcua-tls        4843/udp
+gw-log           4844/tcp
+gw-log           4844/udp
+wcr-remlib       4845/tcp
+wcr-remlib       4845/udp
+contamac-icm     4846/tcp
+contamac-icm     4846/udp
+wfc              4847/tcp
+wfc              4847/udp
+appserv-http     4848/tcp
+appserv-http     4848/udp
+appserv-https    4849/tcp
+appserv-https    4849/udp
+sun-as-nodeagt   4850/tcp
+sun-as-nodeagt   4850/udp
+derby-repli      4851/tcp
+derby-repli      4851/udp
+unify-debug      4867/tcp
+unify-debug      4867/udp
+phrelay          4868/tcp
+phrelay          4868/udp
+phrelaydbg       4869/tcp
+phrelaydbg       4869/udp
+cc-tracking      4870/tcp
+cc-tracking      4870/udp
+wired            4871/tcp
+wired            4871/udp
+tritium-can      4876/tcp
+tritium-can      4876/udp
+lmcs             4877/tcp
+lmcs             4877/udp
+inst-discovery   4878/udp
+wsdl-event       4879/tcp
+hislip           4880/tcp
+socp-t           4881/udp
+socp-c           4882/udp
+wmlserver        4883/tcp
+hivestor         4884/tcp
+hivestor         4884/udp
+abbs             4885/tcp
+abbs             4885/udp
+xcap-portal      4888/tcp
+xcap-control     4889/tcp
+lyskom           4894/tcp
+lyskom           4894/udp
+radmin-port      4899/tcp
+radmin-port      4899/udp
+hfcs             4900/tcp
+hfcs             4900/udp
+flr-agent        4901/tcp
+magiccontrol     4902/tcp
+lutap            4912/tcp
+lutcp            4913/tcp
+bones            4914/tcp
+bones            4914/udp
+frcs             4915/tcp
+an-signaling     4936/udp
+atsc-mh-ssc      4937/udp
+eq-office-4940   4940/tcp
+eq-office-4940   4940/udp
+eq-office-4941   4941/tcp
+eq-office-4941   4941/udp
+eq-office-4942   4942/tcp
+eq-office-4942   4942/udp
+munin            4949/tcp
+munin            4949/udp
+sybasesrvmon     4950/tcp
+sybasesrvmon     4950/udp
+pwgwims          4951/tcp
+pwgwims          4951/udp
+sagxtsds         4952/tcp
+sagxtsds         4952/udp
+dbsyncarbiter    4953/tcp
+ccss-qmm         4969/tcp
+ccss-qmm         4969/udp
+ccss-qsm         4970/tcp
+ccss-qsm         4970/udp
+burp             4971/tcp
+ctxs-vpp         4980/udp
+webyast          4984/tcp
+gerhcs           4985/tcp
+mrip             4986/tcp
+mrip             4986/udp
+smar-se-port1    4987/tcp
+smar-se-port1    4987/udp
+smar-se-port2    4988/tcp
+smar-se-port2    4988/udp
+parallel         4989/tcp
+parallel         4989/udp
+busycal          4990/tcp
+busycal          4990/udp
+vrt              4991/tcp
+vrt              4991/udp
+hfcs-manager     4999/tcp
+hfcs-manager     4999/udp
+commplex-main    5000/tcp
+commplex-main    5000/udp
+commplex-link    5001/tcp
+commplex-link    5001/udp
+rfe              5002/tcp
+rfe              5002/udp
+fmpro-internal   5003/tcp
+fmpro-internal   5003/udp
+avt-profile-1    5004/tcp
+avt-profile-1    5004/udp
+avt-profile-1    5004/dccp
+avt-profile-2    5005/tcp
+avt-profile-2    5005/udp
+avt-profile-2    5005/dccp
+wsm-server       5006/tcp
+wsm-server       5006/udp
+wsm-server-ssl   5007/tcp
+wsm-server-ssl   5007/udp
+synapsis-edge    5008/tcp
+synapsis-edge    5008/udp
+winfs            5009/tcp
+winfs            5009/udp
+telelpathstart   5010/tcp
+telelpathstart   5010/udp
+telelpathattack  5011/tcp
+telelpathattack  5011/udp
+nsp              5012/tcp
+nsp              5012/udp
+fmpro-v6         5013/tcp
+fmpro-v6         5013/udp
+onpsocket        5014/udp
+fmwp             5015/tcp
+zenginkyo-1      5020/tcp
+zenginkyo-1      5020/udp
+zenginkyo-2      5021/tcp
+zenginkyo-2      5021/udp
+mice             5022/tcp
+mice             5022/udp
+htuilsrv         5023/tcp
+htuilsrv         5023/udp
+scpi-telnet      5024/tcp
+scpi-telnet      5024/udp
+scpi-raw         5025/tcp
+scpi-raw         5025/udp
+strexec-d        5026/tcp
+strexec-d        5026/udp
+strexec-s        5027/tcp
+strexec-s        5027/udp
+qvr              5028/tcp
+infobright       5029/tcp
+infobright       5029/udp
+surfpass         5030/tcp
+surfpass         5030/udp
+dmp              5031/udp
+signacert-agent  5032/tcp
+jtnetd-server    5033/tcp
+jtnetd-status    5034/tcp
+asnaacceler8db   5042/tcp
+asnaacceler8db   5042/udp
+swxadmin         5043/tcp
+swxadmin         5043/udp
+lxi-evntsvc      5044/tcp
+lxi-evntsvc      5044/udp
+osp              5045/tcp
+vpm-udp          5046/udp
+iscape           5047/udp
+texai            5048/tcp
+ivocalize        5049/tcp
+ivocalize        5049/udp
+mmcc             5050/tcp
+mmcc             5050/udp
+ita-agent        5051/tcp
+ita-agent        5051/udp
+ita-manager      5052/tcp
+ita-manager      5052/udp
+rlm              5053/tcp
+rlm-disc         5053/udp
+rlm-admin        5054/tcp
+unot             5055/tcp
+unot             5055/udp
+intecom-ps1      5056/tcp
+intecom-ps1      5056/udp
+intecom-ps2      5057/tcp
+intecom-ps2      5057/udp
+locus-disc       5058/udp
+sds              5059/tcp
+sds              5059/udp
+sip              5060/tcp
+sip              5060/udp
+sip              5060/sctp
+sips             5061/tcp
+sips             5061/udp
+sips             5061/sctp
+na-localise      5062/tcp
+na-localise      5062/udp
+csrpc            5063/tcp
+ca-1             5064/tcp
+ca-1             5064/udp
+ca-2             5065/tcp
+ca-2             5065/udp
+stanag-5066      5066/tcp
+stanag-5066      5066/udp
+authentx         5067/tcp
+authentx         5067/udp
+bitforestsrv     5068/tcp
+i-net-2000-npr   5069/tcp
+i-net-2000-npr   5069/udp
+vtsas            5070/tcp
+vtsas            5070/udp
+powerschool      5071/tcp
+powerschool      5071/udp
+ayiya            5072/tcp
+ayiya            5072/udp
+tag-pm           5073/tcp
+tag-pm           5073/udp
+alesquery        5074/tcp
+alesquery        5074/udp
+pvaccess         5075/tcp
+pixelpusher      5078/udp
+cp-spxrpts       5079/udp
+onscreen         5080/tcp
+onscreen         5080/udp
+sdl-ets          5081/tcp
+sdl-ets          5081/udp
+qcp              5082/tcp
+qcp              5082/udp
+qfp              5083/tcp
+qfp              5083/udp
+llrp             5084/tcp
+llrp             5084/udp
+encrypted-llrp   5085/tcp
+encrypted-llrp   5085/udp
+aprigo-cs        5086/tcp
+biotic           5087/tcp
+car              5090/sctp
+cxtp             5091/sctp
+magpie           5092/udp
+sentinel-lm      5093/tcp
+sentinel-lm      5093/udp
+hart-ip          5094/tcp
+hart-ip          5094/udp
+sentlm-srv2srv   5099/tcp
+sentlm-srv2srv   5099/udp
+socalia          5100/tcp
+socalia          5100/udp
+talarian-tcp     5101/tcp
+talarian-udp     5101/udp
+oms-nonsecure    5102/tcp
+oms-nonsecure    5102/udp
+actifio-c2c      5103/tcp
+tinymessage      5104/udp
+hughes-ap        5105/udp
+actifioudsagent  5106/tcp
+actifioreplic    5107/tcp
+taep-as-svc      5111/tcp
+taep-as-svc      5111/udp
+pm-cmdsvr        5112/tcp
+pm-cmdsvr        5112/udp
+ev-services      5114/tcp
+autobuild        5115/tcp
+emb-proj-cmd     5116/udp
+gradecam         5117/tcp
+barracuda-bbs    5120/tcp
+barracuda-bbs    5120/udp
+nbt-pc           5133/tcp
+nbt-pc           5133/udp
+ppactivation     5134/tcp
+erp-scale        5135/tcp
+minotaur-sa      5136/udp
+ctsd             5137/tcp
+ctsd             5137/udp
+rmonitor-secure  5145/tcp
+rmonitor-secure  5145/udp
+social-alarm     5146/tcp
+atmp             5150/tcp
+atmp             5150/udp
+esri-sde         5151/tcp
+esri-sde         5151/udp
+sde-discovery    5152/tcp
+sde-discovery    5152/udp
+bzflag           5154/tcp
+bzflag           5154/udp
+asctrl-agent     5155/tcp
+asctrl-agent     5155/udp
+rugameonline     5156/tcp
+mediat           5157/tcp
+snmpssh          5161/tcp
+snmpssh-trap     5162/tcp
+sbackup          5163/tcp
+vpa              5164/tcp
+vpa-disc         5164/udp
+ife-icorp        5165/tcp
+ife-icorp        5165/udp
+winpcs           5166/tcp
+winpcs           5166/udp
+scte104          5167/tcp
+scte104          5167/udp
+scte30           5168/tcp
+scte30           5168/udp
+pcoip-mgmt       5172/tcp
+aol              5190/tcp
+aol              5190/udp
+aol-1            5191/tcp
+aol-1            5191/udp
+aol-2            5192/tcp
+aol-2            5192/udp
+aol-3            5193/tcp
+aol-3            5193/udp
+cpscomm          5194/tcp
+ampl-lic         5195/tcp
+ampl-tableproxy  5196/tcp
+tunstall-lwp     5197/tcp
+targus-getdata   5200/tcp
+targus-getdata   5200/udp
+targus-getdata1  5201/tcp
+targus-getdata1  5201/udp
+targus-getdata2  5202/tcp
+targus-getdata2  5202/udp
+targus-getdata3  5203/tcp
+targus-getdata3  5203/udp
+nomad            5209/tcp
+noteza           5215/tcp
+noteza           5215/sctp
+3exmp            5221/tcp
+xmpp-client      5222/tcp
+hpvirtgrp        5223/tcp
+hpvirtgrp        5223/udp
+hpvirtctrl       5224/tcp
+hpvirtctrl       5224/udp
+hp-server        5225/tcp
+hp-server        5225/udp
+hp-status        5226/tcp
+hp-status        5226/udp
+perfd            5227/tcp
+perfd            5227/udp
+hpvroom          5228/tcp
+jaxflow          5229/tcp
+jaxflow-data     5230/tcp
+crusecontrol     5231/tcp
+csedaemon        5232/tcp
+enfs             5233/tcp
+eenet            5234/tcp
+eenet            5234/udp
+galaxy-network   5235/tcp
+galaxy-network   5235/udp
+padl2sim         5236/tcp
+padl2sim         5236/udp
+mnet-discovery   5237/tcp
+mnet-discovery   5237/udp
+downtools        5245/tcp
+downtools-disc   5245/udp
+capwap-control   5246/udp
+capwap-data      5247/udp
+caacws           5248/tcp
+caacws           5248/udp
+caaclang2        5249/tcp
+caaclang2        5249/udp
+soagateway       5250/tcp
+soagateway       5250/udp
+caevms           5251/tcp
+caevms           5251/udp
+movaz-ssc        5252/tcp
+movaz-ssc        5252/udp
+kpdp             5253/tcp
+logcabin         5254/tcp
+3com-njack-1     5264/tcp
+3com-njack-1     5264/udp
+3com-njack-2     5265/tcp
+3com-njack-2     5265/udp
+xmpp-server      5269/tcp
+cartographerxmp  5270/tcp
+cartographerxmp  5270/udp
+cuelink          5271/tcp
+cuelink-disc     5271/udp
+pk               5272/tcp
+pk               5272/udp
+xmpp-bosh        5280/tcp
+undo-lm          5281/tcp
+transmit-port    5282/tcp
+transmit-port    5282/udp
+presence         5298/tcp
+presence         5298/udp
+nlg-data         5299/tcp
+nlg-data         5299/udp
+hacl-hb          5300/tcp
+hacl-hb          5300/udp
+hacl-gs          5301/tcp
+hacl-gs          5301/udp
+hacl-cfg         5302/tcp
+hacl-cfg         5302/udp
+hacl-probe       5303/tcp
+hacl-probe       5303/udp
+hacl-local       5304/tcp
+hacl-local       5304/udp
+hacl-test        5305/tcp
+hacl-test        5305/udp
+sun-mc-grp       5306/tcp
+sun-mc-grp       5306/udp
+sco-aip          5307/tcp
+sco-aip          5307/udp
+cfengine         5308/tcp
+cfengine         5308/udp
+jprinter         5309/tcp
+jprinter         5309/udp
+outlaws          5310/tcp
+outlaws          5310/udp
+permabit-cs      5312/tcp
+permabit-cs      5312/udp
+rrdp             5313/tcp
+rrdp             5313/udp
+opalis-rbt-ipc   5314/tcp
+opalis-rbt-ipc   5314/udp
+hacl-poll        5315/tcp
+hacl-poll        5315/udp
+hpbladems        5316/tcp
+hpdevms          5317/tcp
+pkix-cmc         5318/tcp
+bsfserver-zn     5320/tcp
+bsfsvr-zn-ssl    5321/tcp
+kfserver         5343/tcp
+kfserver         5343/udp
+xkotodrcp        5344/tcp
+xkotodrcp        5344/udp
+stuns            5349/tcp
+stuns            5349/udp
+turns            5349/tcp
+turns            5349/udp
+stun-behaviors   5349/tcp
+pcp-multicast    5350/udp
+pcp              5351/udp
+dns-llq          5352/tcp
+dns-llq          5352/udp
+mdns             5353/tcp
+mdns             5353/udp
+mdnsresponder    5354/tcp
+mdnsresponder    5354/udp
+llmnr            5355/tcp
+llmnr            5355/udp
+ms-smlbiz        5356/tcp
+ms-smlbiz        5356/udp
+wsdapi           5357/tcp
+wsdapi           5357/udp
+wsdapi-s         5358/tcp
+wsdapi-s         5358/udp
+ms-alerter       5359/tcp
+ms-alerter       5359/udp
+ms-sideshow      5360/tcp
+ms-sideshow      5360/udp
+ms-s-sideshow    5361/tcp
+ms-s-sideshow    5361/udp
+serverwsd2       5362/tcp
+serverwsd2       5362/udp
+net-projection   5363/tcp
+net-projection   5363/udp
+kdnet            5364/udp
+stresstester     5397/tcp
+stresstester     5397/udp
+elektron-admin   5398/tcp
+elektron-admin   5398/udp
+securitychase    5399/tcp
+securitychase    5399/udp
+excerpt          5400/tcp
+excerpt          5400/udp
+excerpts         5401/tcp
+excerpts         5401/udp
+mftp             5402/tcp
+mftp             5402/udp
+hpoms-ci-lstn    5403/tcp
+hpoms-ci-lstn    5403/udp
+hpoms-dps-lstn   5404/tcp
+hpoms-dps-lstn   5404/udp
+netsupport       5405/tcp
+netsupport       5405/udp
+systemics-sox    5406/tcp
+systemics-sox    5406/udp
+foresyte-clear   5407/tcp
+foresyte-clear   5407/udp
+foresyte-sec     5408/tcp
+foresyte-sec     5408/udp
+salient-dtasrv   5409/tcp
+salient-dtasrv   5409/udp
+salient-usrmgr   5410/tcp
+salient-usrmgr   5410/udp
+actnet           5411/tcp
+actnet           5411/udp
+continuus        5412/tcp
+continuus        5412/udp
+wwiotalk         5413/tcp
+wwiotalk         5413/udp
+statusd          5414/tcp
+statusd          5414/udp
+ns-server        5415/tcp
+ns-server        5415/udp
+sns-gateway      5416/tcp
+sns-gateway      5416/udp
+sns-agent        5417/tcp
+sns-agent        5417/udp
+mcntp            5418/tcp
+mcntp            5418/udp
+dj-ice           5419/tcp
+dj-ice           5419/udp
+cylink-c         5420/tcp
+cylink-c         5420/udp
+netsupport2      5421/tcp
+netsupport2      5421/udp
+salient-mux      5422/tcp
+salient-mux      5422/udp
+virtualuser      5423/tcp
+virtualuser      5423/udp
+beyond-remote    5424/tcp
+beyond-remote    5424/udp
+br-channel       5425/tcp
+br-channel       5425/udp
+devbasic         5426/tcp
+devbasic         5426/udp
+sco-peer-tta     5427/tcp
+sco-peer-tta     5427/udp
+telaconsole      5428/tcp
+telaconsole      5428/udp
+base             5429/tcp
+base             5429/udp
+radec-corp       5430/tcp
+radec-corp       5430/udp
+park-agent       5431/tcp
+park-agent       5431/udp
+postgresql       5432/tcp
+postgresql       5432/udp
+pyrrho           5433/tcp
+pyrrho           5433/udp
+sgi-arrayd       5434/tcp
+sgi-arrayd       5434/udp
+sceanics         5435/tcp
+sceanics         5435/udp
+pmip6-cntl       5436/udp
+pmip6-data       5437/udp
+spss             5443/tcp
+spss             5443/udp
+smbdirect        5445/tcp
+smbdirect        5445/sctp
+tiepie           5450/tcp
+tiepie-disc      5450/udp
+surebox          5453/tcp
+surebox          5453/udp
+apc-5454         5454/tcp
+apc-5454         5454/udp
+apc-5455         5455/tcp
+apc-5455         5455/udp
+apc-5456         5456/tcp
+apc-5456         5456/udp
+silkmeter        5461/tcp
+silkmeter        5461/udp
+ttl-publisher    5462/tcp
+ttl-publisher    5462/udp
+ttlpriceproxy    5463/tcp
+ttlpriceproxy    5463/udp
+quailnet         5464/tcp
+quailnet         5464/udp
+netops-broker    5465/tcp
+netops-broker    5465/udp
+apsolab-col      5470/tcp
+apsolab-cols     5471/tcp
+apsolab-tag      5472/tcp
+apsolab-tags     5473/tcp
+apsolab-rpc      5474/udp
+apsolab-data     5475/tcp
+fcp-addr-srvr1   5500/tcp
+fcp-addr-srvr1   5500/udp
+fcp-addr-srvr2   5501/tcp
+fcp-addr-srvr2   5501/udp
+fcp-srvr-inst1   5502/tcp
+fcp-srvr-inst1   5502/udp
+fcp-srvr-inst2   5503/tcp
+fcp-srvr-inst2   5503/udp
+fcp-cics-gw1     5504/tcp
+fcp-cics-gw1     5504/udp
+checkoutdb       5505/tcp
+checkoutdb       5505/udp
+amc              5506/tcp
+amc              5506/udp
+psl-management   5507/tcp
+cbus             5550/tcp
+sgi-eventmond    5553/tcp
+sgi-eventmond    5553/udp
+sgi-esphttp      5554/tcp
+sgi-esphttp      5554/udp
+personal-agent   5555/tcp
+personal-agent   5555/udp
+freeciv          5556/tcp
+freeciv          5556/udp
+farenet          5557/tcp
+dp-bura          5565/tcp
+westec-connect   5566/tcp
+dof-dps-mc-sec   5567/tcp
+dof-dps-mc-sec   5567/udp
+sdt              5568/tcp
+sdt              5568/udp
+rdmnet-ctrl      5569/tcp
+rdmnet-device    5569/udp
+sdmmp            5573/tcp
+sdmmp            5573/udp
+lsi-bobcat       5574/tcp
+ora-oap          5575/tcp
+fdtracks         5579/tcp
+tmosms0          5580/tcp
+tmosms0          5580/udp
+tmosms1          5581/tcp
+tmosms1          5581/udp
+fac-restore      5582/tcp
+fac-restore      5582/udp
+tmo-icon-sync    5583/tcp
+tmo-icon-sync    5583/udp
+bis-web          5584/tcp
+bis-web          5584/udp
+bis-sync         5585/tcp
+bis-sync         5585/udp
+att-mt-sms       5586/tcp
+ininmessaging    5597/tcp
+ininmessaging    5597/udp
+mctfeed          5598/tcp
+mctfeed          5598/udp
+esinstall        5599/tcp
+esinstall        5599/udp
+esmmanager       5600/tcp
+esmmanager       5600/udp
+esmagent         5601/tcp
+esmagent         5601/udp
+a1-msc           5602/tcp
+a1-msc           5602/udp
+a1-bs            5603/tcp
+a1-bs            5603/udp
+a3-sdunode       5604/tcp
+a3-sdunode       5604/udp
+a4-sdunode       5605/tcp
+a4-sdunode       5605/udp
+efr              5618/tcp
+ninaf            5627/tcp
+ninaf            5627/udp
+htrust           5628/tcp
+htrust           5628/udp
+symantec-sfdb    5629/tcp
+symantec-sfdb    5629/udp
+precise-comm     5630/tcp
+precise-comm     5630/udp
+pcanywheredata   5631/tcp
+pcanywheredata   5631/udp
+pcanywherestat   5632/tcp
+pcanywherestat   5632/udp
+beorl            5633/tcp
+beorl            5633/udp
+xprtld           5634/tcp
+xprtld           5634/udp
+sfmsso           5635/tcp
+sfm-db-server    5636/tcp
+cssc             5637/tcp
+flcrs            5638/tcp
+ics              5639/tcp
+vfmobile         5646/tcp
+nrpe             5666/tcp
+filemq           5670/tcp
+zre-disc         5670/udp
+amqps            5671/tcp
+amqps            5671/udp
+amqp             5672/tcp
+amqp             5672/udp
+amqp             5672/sctp
+jms              5673/tcp
+jms              5673/udp
+hyperscsi-port   5674/tcp
+hyperscsi-port   5674/udp
+v5ua             5675/tcp
+v5ua             5675/udp
+v5ua             5675/sctp
+raadmin          5676/tcp
+raadmin          5676/udp
+questdb2-lnchr   5677/tcp
+questdb2-lnchr   5677/udp
+rrac             5678/tcp
+rrac             5678/udp
+dccm             5679/tcp
+dccm             5679/udp
+auriga-router    5680/tcp
+auriga-router    5680/udp
+ncxcp            5681/tcp
+ncxcp            5681/udp
+brightcore       5682/udp
+coap             5683/tcp
+coap             5683/udp
+coaps            5684/tcp
+coaps            5684/udp
+gog-multiplayer  5687/udp
+ggz              5688/tcp
+ggz              5688/udp
+qmvideo          5689/tcp
+qmvideo          5689/udp
+rbsystem         5693/tcp
+kmip             5696/tcp
+supportassist    5700/tcp
+storageos        5705/tcp
+proshareaudio    5713/tcp
+proshareaudio    5713/udp
+prosharevideo    5714/tcp
+prosharevideo    5714/udp
+prosharedata     5715/tcp
+prosharedata     5715/udp
+prosharerequest  5716/tcp
+prosharerequest  5716/udp
+prosharenotify   5717/tcp
+prosharenotify   5717/udp
+dpm              5718/tcp
+dpm              5718/udp
+dpm-agent        5719/tcp
+dpm-agent        5719/udp
+ms-licensing     5720/tcp
+ms-licensing     5720/udp
+dtpt             5721/tcp
+dtpt             5721/udp
+msdfsr           5722/tcp
+msdfsr           5722/udp
+omhs             5723/tcp
+omhs             5723/udp
+omsdk            5724/tcp
+omsdk            5724/udp
+ms-ilm           5725/tcp
+ms-ilm-sts       5726/tcp
+asgenf           5727/tcp
+io-dist-data     5728/tcp
+io-dist-group    5728/udp
+openmail         5729/tcp
+openmail         5729/udp
+unieng           5730/tcp
+unieng           5730/udp
+ida-discover1    5741/tcp
+ida-discover1    5741/udp
+ida-discover2    5742/tcp
+ida-discover2    5742/udp
+watchdoc-pod     5743/tcp
+watchdoc-pod     5743/udp
+watchdoc         5744/tcp
+watchdoc         5744/udp
+fcopy-server     5745/tcp
+fcopy-server     5745/udp
+fcopys-server    5746/tcp
+fcopys-server    5746/udp
+tunatic          5747/tcp
+tunatic          5747/udp
+tunalyzer        5748/tcp
+tunalyzer        5748/udp
+rscd             5750/tcp
+rscd             5750/udp
+openmailg        5755/tcp
+openmailg        5755/udp
+x500ms           5757/tcp
+x500ms           5757/udp
+openmailns       5766/tcp
+openmailns       5766/udp
+s-openmail       5767/tcp
+s-openmail       5767/udp
+openmailpxy      5768/tcp
+openmailpxy      5768/udp
+spramsca         5769/tcp
+spramsca         5769/udp
+spramsd          5770/tcp
+spramsd          5770/udp
+netagent         5771/tcp
+netagent         5771/udp
+dali-port        5777/tcp
+dali-port        5777/udp
+vts-rpc          5780/tcp
+3par-evts        5781/tcp
+3par-evts        5781/udp
+3par-mgmt        5782/tcp
+3par-mgmt        5782/udp
+3par-mgmt-ssl    5783/tcp
+3par-mgmt-ssl    5783/udp
+ibar             5784/udp
+3par-rcopy       5785/tcp
+3par-rcopy       5785/udp
+cisco-redu       5786/udp
+waascluster      5787/udp
+xtreamx          5793/tcp
+xtreamx          5793/udp
+spdp             5794/udp
+icmpd            5813/tcp
+icmpd            5813/udp
+spt-automation   5814/tcp
+spt-automation   5814/udp
+shiprush-d-ch    5841/tcp
+reversion        5842/tcp
+wherehoo         5859/tcp
+wherehoo         5859/udp
+ppsuitemsg       5863/tcp
+ppsuitemsg       5863/udp
+diameters        5868/tcp
+diameters        5868/sctp
+jute             5883/tcp
+rfb              5900/tcp
+rfb              5900/udp
+cm               5910/tcp
+cm               5910/udp
+cm               5910/sctp
+cpdlc            5911/tcp
+cpdlc            5911/udp
+cpdlc            5911/sctp
+fis              5912/tcp
+fis              5912/udp
+fis              5912/sctp
+ads-c            5913/tcp
+ads-c            5913/udp
+ads-c            5913/sctp
+indy             5963/tcp
+indy             5963/udp
+mppolicy-v5      5968/tcp
+mppolicy-v5      5968/udp
+mppolicy-mgr     5969/tcp
+mppolicy-mgr     5969/udp
+couchdb          5984/tcp
+couchdb          5984/udp
+wsman            5985/tcp
+wsman            5985/udp
+wsmans           5986/tcp
+wsmans           5986/udp
+wbem-rmi         5987/tcp
+wbem-rmi         5987/udp
+wbem-http        5988/tcp
+wbem-http        5988/udp
+wbem-https       5989/tcp
+wbem-https       5989/udp
+wbem-exp-https   5990/tcp
+wbem-exp-https   5990/udp
+nuxsl            5991/tcp
+nuxsl            5991/udp
+consul-insight   5992/tcp
+consul-insight   5992/udp
+cim-rs           5993/tcp
+cvsup            5999/tcp
+cvsup            5999/udp
+x11              6000/tcp
+x11              6000/udp
+ndl-ahp-svc      6064/tcp
+ndl-ahp-svc      6064/udp
+winpharaoh       6065/tcp
+winpharaoh       6065/udp
+ewctsp           6066/tcp
+ewctsp           6066/udp
+gsmp-ancp        6068/tcp
+trip             6069/tcp
+trip             6069/udp
+messageasap      6070/tcp
+messageasap      6070/udp
+ssdtp            6071/tcp
+ssdtp            6071/udp
+diagnose-proc    6072/tcp
+diagnose-proc    6072/udp
+directplay8      6073/tcp
+directplay8      6073/udp
+max              6074/tcp
+max              6074/udp
+dpm-acm          6075/tcp
+msft-dpm-cert    6076/tcp
+iconstructsrv    6077/tcp
+gue              6080/udp
+geneve           6081/udp
+p25cai           6082/udp
+miami-bcast      6083/udp
+reload-config    6084/tcp
+konspire2b       6085/tcp
+konspire2b       6085/udp
+pdtp             6086/tcp
+pdtp             6086/udp
+ldss             6087/tcp
+ldss             6087/udp
+doglms           6088/tcp
+doglms-notify    6088/udp
+raxa-mgmt        6099/tcp
+synchronet-db    6100/tcp
+synchronet-db    6100/udp
+synchronet-rtc   6101/tcp
+synchronet-rtc   6101/udp
+synchronet-upd   6102/tcp
+synchronet-upd   6102/udp
+rets             6103/tcp
+rets             6103/udp
+dbdb             6104/tcp
+dbdb             6104/udp
+primaserver      6105/tcp
+primaserver      6105/udp
+mpsserver        6106/tcp
+mpsserver        6106/udp
+etc-control      6107/tcp
+etc-control      6107/udp
+sercomm-scadmin  6108/tcp
+sercomm-scadmin  6108/udp
+globecast-id     6109/tcp
+globecast-id     6109/udp
+softcm           6110/tcp
+softcm           6110/udp
+spc              6111/tcp
+spc              6111/udp
+dtspcd           6112/tcp
+dtspcd           6112/udp
+dayliteserver    6113/tcp
+wrspice          6114/tcp
+xic              6115/tcp
+xtlserv          6116/tcp
+daylitetouch     6117/tcp
+tipc             6118/udp
+spdy             6121/tcp
+bex-webadmin     6122/tcp
+bex-webadmin     6122/udp
+backup-express   6123/tcp
+backup-express   6123/udp
+pnbs             6124/tcp
+pnbs             6124/udp
+damewaremobgtwy  6130/tcp
+nbt-wol          6133/tcp
+nbt-wol          6133/udp
+pulsonixnls      6140/tcp
+pulsonixnls      6140/udp
+meta-corp        6141/tcp
+meta-corp        6141/udp
+aspentec-lm      6142/tcp
+aspentec-lm      6142/udp
+watershed-lm     6143/tcp
+watershed-lm     6143/udp
+statsci1-lm      6144/tcp
+statsci1-lm      6144/udp
+statsci2-lm      6145/tcp
+statsci2-lm      6145/udp
+lonewolf-lm      6146/tcp
+lonewolf-lm      6146/udp
+montage-lm       6147/tcp
+montage-lm       6147/udp
+ricardo-lm       6148/tcp
+ricardo-lm       6148/udp
+tal-pod          6149/tcp
+tal-pod          6149/udp
+efb-aci          6159/tcp
+ecmp             6160/tcp
+ecmp-data        6160/udp
+patrol-ism       6161/tcp
+patrol-ism       6161/udp
+patrol-coll      6162/tcp
+patrol-coll      6162/udp
+pscribe          6163/tcp
+pscribe          6163/udp
+lm-x             6200/tcp
+lm-x             6200/udp
+thermo-calc      6201/udp
+qmtps            6209/tcp
+qmtps            6209/udp
+radmind          6222/tcp
+radmind          6222/udp
+jeol-nsdtp-1     6241/tcp
+jeol-nsddp-1     6241/udp
+jeol-nsdtp-2     6242/tcp
+jeol-nsddp-2     6242/udp
+jeol-nsdtp-3     6243/tcp
+jeol-nsddp-3     6243/udp
+jeol-nsdtp-4     6244/tcp
+jeol-nsddp-4     6244/udp
+tl1-raw-ssl      6251/tcp
+tl1-raw-ssl      6251/udp
+tl1-ssh          6252/tcp
+tl1-ssh          6252/udp
+crip             6253/tcp
+crip             6253/udp
+gld              6267/tcp
+grid             6268/tcp
+grid             6268/udp
+grid-alt         6269/tcp
+grid-alt         6269/udp
+bmc-grx          6300/tcp
+bmc-grx          6300/udp
+bmc-ctd-ldap     6301/tcp
+bmc-ctd-ldap     6301/udp
+ufmp             6306/tcp
+ufmp             6306/udp
+scup             6315/tcp
+scup-disc        6315/udp
+abb-escp         6316/tcp
+abb-escp         6316/udp
+nav-data-cmd     6317/tcp
+nav-data         6317/udp
+repsvc           6320/tcp
+repsvc           6320/udp
+emp-server1      6321/tcp
+emp-server1      6321/udp
+emp-server2      6322/tcp
+emp-server2      6322/udp
+hrd-ncs          6324/tcp
+hrd-ns-disc      6324/udp
+dt-mgmtsvc       6325/tcp
+dt-vra           6326/tcp
+sflow            6343/tcp
+sflow            6343/udp
+streletz         6344/tcp
+gnutella-svc     6346/tcp
+gnutella-svc     6346/udp
+gnutella-rtr     6347/tcp
+gnutella-rtr     6347/udp
+adap             6350/tcp
+adap             6350/udp
+pmcs             6355/tcp
+pmcs             6355/udp
+metaedit-mu      6360/tcp
+metaedit-mu      6360/udp
+ndn              6363/udp
+metaedit-se      6370/tcp
+metaedit-se      6370/udp
+redis            6379/tcp
+metatude-mds     6382/tcp
+metatude-mds     6382/udp
+clariion-evr01   6389/tcp
+clariion-evr01   6389/udp
+metaedit-ws      6390/tcp
+metaedit-ws      6390/udp
+faxcomservice    6417/tcp
+faxcomservice    6417/udp
+syserverremote   6418/tcp
+svdrp            6419/tcp
+svdrp-disc       6419/udp
+nim-vdrshell     6420/tcp
+nim-vdrshell     6420/udp
+nim-wan          6421/tcp
+nim-wan          6421/udp
+pgbouncer        6432/tcp
+heliosd          6440/tcp
+tarp             6442/tcp
+sun-sr-https     6443/tcp
+sun-sr-https     6443/udp
+sge-qmaster      6444/tcp
+sge-qmaster      6444/udp
+sge-execd        6445/tcp
+sge-execd        6445/udp
+mysql-proxy      6446/tcp
+mysql-proxy      6446/udp
+skip-cert-recv   6455/tcp
+skip-cert-recv   6455/udp
+skip-cert-send   6456/tcp
+skip-cert-send   6456/udp
+ieee11073-20701  6464/tcp
+ieee11073-20701  6464/udp
+lvision-lm       6471/tcp
+lvision-lm       6471/udp
+sun-sr-http      6480/tcp
+sun-sr-http      6480/udp
+servicetags      6481/tcp
+servicetags      6481/udp
+ldoms-mgmt       6482/tcp
+ldoms-mgmt       6482/udp
+SunVTS-RMI       6483/tcp
+SunVTS-RMI       6483/udp
+sun-sr-jms       6484/tcp
+sun-sr-jms       6484/udp
+sun-sr-iiop      6485/tcp
+sun-sr-iiop      6485/udp
+sun-sr-iiops     6486/tcp
+sun-sr-iiops     6486/udp
+sun-sr-iiop-aut  6487/tcp
+sun-sr-iiop-aut  6487/udp
+sun-sr-jmx       6488/tcp
+sun-sr-jmx       6488/udp
+sun-sr-admin     6489/tcp
+sun-sr-admin     6489/udp
+boks             6500/tcp
+boks             6500/udp
+boks-servc       6501/tcp
+boks-servc       6501/udp
+boks-servm       6502/tcp
+boks-servm       6502/udp
+boks-clntd       6503/tcp
+boks-clntd       6503/udp
+badm-priv        6505/tcp
+badm-priv        6505/udp
+badm-pub         6506/tcp
+badm-pub         6506/udp
+bdir-priv        6507/tcp
+bdir-priv        6507/udp
+bdir-pub         6508/tcp
+bdir-pub         6508/udp
+mgcs-mfp-port    6509/tcp
+mgcs-mfp-port    6509/udp
+mcer-port        6510/tcp
+mcer-port        6510/udp
+dccp-udp         6511/udp
+netconf-tls      6513/tcp
+syslog-tls       6514/tcp
+syslog-tls       6514/udp
+syslog-tls       6514/dccp
+elipse-rec       6515/tcp
+elipse-rec       6515/udp
+lds-distrib      6543/tcp
+lds-distrib      6543/udp
+lds-dump         6544/tcp
+lds-dump         6544/udp
+apc-6547         6547/tcp
+apc-6547         6547/udp
+apc-6548         6548/tcp
+apc-6548         6548/udp
+apc-6549         6549/tcp
+apc-6549         6549/udp
+fg-sysupdate     6550/tcp
+fg-sysupdate     6550/udp
+sum              6551/tcp
+sum              6551/udp
+checkmk-agent    6556/tcp
+xdsxdm           6558/tcp
+xdsxdm           6558/udp
+sane-port        6566/tcp
+sane-port        6566/udp
+canit-store      6568/tcp
+rp-reputation    6568/udp
+affiliate        6579/tcp
+affiliate        6579/udp
+parsec-master    6580/tcp
+parsec-master    6580/udp
+parsec-peer      6581/tcp
+parsec-peer      6581/udp
+parsec-game      6582/tcp
+parsec-game      6582/udp
+joaJewelSuite    6583/tcp
+joaJewelSuite    6583/udp
+mshvlm           6600/tcp
+mstmg-sstp       6601/tcp
+wsscomfrmwk      6602/tcp
+odette-ftps      6619/tcp
+odette-ftps      6619/udp
+kftp-data        6620/tcp
+kftp-data        6620/udp
+kftp             6621/tcp
+kftp             6621/udp
+mcftp            6622/tcp
+mcftp            6622/udp
+ktelnet          6623/tcp
+ktelnet          6623/udp
+datascaler-db    6624/tcp
+datascaler-ctl   6625/tcp
+wago-service     6626/tcp
+wago-service     6626/udp
+nexgen           6627/tcp
+nexgen           6627/udp
+afesc-mc         6628/tcp
+afesc-mc         6628/udp
+nexgen-aux       6629/tcp
+nexgen-aux       6629/udp
+mxodbc-connect   6632/tcp
+cisco-vpath-tun  6633/udp
+mpls-pm          6634/udp
+mpls-udp         6635/udp
+mpls-udp-dtls    6636/udp
+ovsdb            6640/tcp
+openflow         6653/tcp
+openflow         6653/udp
+pcs-sf-ui-man    6655/tcp
+emgmsg           6656/tcp
+palcom-disc      6657/udp
+ircu             6665/tcp
+vocaltec-gold    6670/tcp
+vocaltec-gold    6670/udp
+p4p-portal       6671/tcp
+p4p-portal       6671/udp
+vision-server    6672/tcp
+vision-server    6672/udp
+vision-elmd      6673/tcp
+vision-elmd      6673/udp
+vfbp             6678/tcp
+vfbp-disc        6678/udp
+osaut            6679/tcp
+osaut            6679/udp
+clever-ctrace    6687/tcp
+clever-tcpip     6688/tcp
+tsa              6689/tcp
+tsa              6689/udp
+cleverdetect     6690/tcp
+babel            6696/udp
+ircs-u           6697/tcp
+babel-dtls       6699/udp
+kti-icad-srvr    6701/tcp
+kti-icad-srvr    6701/udp
+e-design-net     6702/tcp
+e-design-net     6702/udp
+e-design-web     6703/tcp
+e-design-web     6703/udp
+frc-hp           6704/sctp
+frc-mp           6705/sctp
+frc-lp           6706/sctp
+ibprotocol       6714/tcp
+ibprotocol       6714/udp
+fibotrader-com   6715/tcp
+fibotrader-com   6715/udp
+princity-agent   6716/tcp
+bmc-perf-agent   6767/tcp
+bmc-perf-agent   6767/udp
+bmc-perf-mgrd    6768/tcp
+bmc-perf-mgrd    6768/udp
+adi-gxp-srvprt   6769/tcp
+adi-gxp-srvprt   6769/udp
+plysrv-http      6770/tcp
+plysrv-http      6770/udp
+plysrv-https     6771/tcp
+plysrv-https     6771/udp
+ntz-tracker      6777/tcp
+ntz-p2p-storage  6778/tcp
+bfd-lag          6784/udp
+dgpf-exchg       6785/tcp
+dgpf-exchg       6785/udp
+smc-jmx          6786/tcp
+smc-jmx          6786/udp
+smc-admin        6787/tcp
+smc-admin        6787/udp
+smc-http         6788/tcp
+smc-http         6788/udp
+radg             6789/tcp
+hnmp             6790/tcp
+hnmp             6790/udp
+hnm              6791/tcp
+hnm              6791/udp
+acnet            6801/tcp
+acnet            6801/udp
+pentbox-sim      6817/tcp
+ambit-lm         6831/tcp
+ambit-lm         6831/udp
+netmo-default    6841/tcp
+netmo-default    6841/udp
+netmo-http       6842/tcp
+netmo-http       6842/udp
+iccrushmore      6850/tcp
+iccrushmore      6850/udp
+acctopus-cc      6868/tcp
+acctopus-st      6868/udp
+muse             6888/tcp
+muse             6888/udp
+rtimeviewer      6900/tcp
+jetstream        6901/tcp
+split-ping       6924/tcp
+split-ping       6924/udp
+ethoscan         6935/tcp
+ethoscan         6935/udp
+xsmsvc           6936/tcp
+xsmsvc           6936/udp
+bioserver        6946/tcp
+bioserver        6946/udp
+otlp             6951/tcp
+otlp             6951/udp
+jmact3           6961/tcp
+jmact3           6961/udp
+jmevt2           6962/tcp
+jmevt2           6962/udp
+swismgr1         6963/tcp
+swismgr1         6963/udp
+swismgr2         6964/tcp
+swismgr2         6964/udp
+swistrap         6965/tcp
+swistrap         6965/udp
+swispol          6966/tcp
+swispol          6966/udp
+acmsoda          6969/tcp
+acmsoda          6969/udp
+conductor        6970/tcp
+conductor-mpx    6970/sctp
+MobilitySrv      6997/tcp
+MobilitySrv      6997/udp
+iatp-highpri     6998/tcp
+iatp-highpri     6998/udp
+iatp-normalpri   6999/tcp
+iatp-normalpri   6999/udp
+afs3-fileserver  7000/tcp
+afs3-fileserver  7000/udp
+afs3-callback    7001/tcp
+afs3-callback    7001/udp
+afs3-prserver    7002/tcp
+afs3-prserver    7002/udp
+afs3-vlserver    7003/tcp
+afs3-vlserver    7003/udp
+afs3-kaserver    7004/tcp
+afs3-kaserver    7004/udp
+afs3-volser      7005/tcp
+afs3-volser      7005/udp
+afs3-errors      7006/tcp
+afs3-errors      7006/udp
+afs3-bos         7007/tcp
+afs3-bos         7007/udp
+afs3-update      7008/tcp
+afs3-update      7008/udp
+afs3-rmtsys      7009/tcp
+afs3-rmtsys      7009/udp
+ups-onlinet      7010/tcp
+ups-onlinet      7010/udp
+talon-disc       7011/tcp
+talon-disc       7011/udp
+talon-engine     7012/tcp
+talon-engine     7012/udp
+microtalon-dis   7013/tcp
+microtalon-dis   7013/udp
+microtalon-com   7014/tcp
+microtalon-com   7014/udp
+talon-webserver  7015/tcp
+talon-webserver  7015/udp
+spg              7016/tcp
+spg              7016/udp
+grasp            7017/tcp
+grasp            7017/udp
+fisa-svc         7018/tcp
+doceri-ctl       7019/tcp
+doceri-view      7019/udp
+dpserve          7020/tcp
+dpserve          7020/udp
+dpserveadmin     7021/tcp
+dpserveadmin     7021/udp
+ctdp             7022/tcp
+ctdp             7022/udp
+ct2nmcs          7023/tcp
+ct2nmcs          7023/udp
+vmsvc            7024/tcp
+vmsvc            7024/udp
+vmsvc-2          7025/tcp
+vmsvc-2          7025/udp
+loreji-panel     7026/tcp
+op-probe         7030/tcp
+op-probe         7030/udp
+iposplanet       7031/tcp
+quest-disc       7040/udp
+arcp             7070/tcp
+arcp             7070/udp
+iwg1             7071/tcp
+iwg1             7071/udp
+iba-cfg          7072/tcp
+iba-cfg-disc     7072/udp
+martalk          7073/tcp
+empowerid        7080/tcp
+empowerid        7080/udp
+zixi-transport   7088/udp
+jdp-disc         7095/udp
+lazy-ptop        7099/tcp
+lazy-ptop        7099/udp
+font-service     7100/tcp
+font-service     7100/udp
+elcn             7101/tcp
+elcn             7101/udp
+aes-x170         7107/udp
+rothaga          7117/tcp
+virprot-lm       7121/tcp
+virprot-lm       7121/udp
+scenidm          7128/tcp
+scenidm          7128/udp
+scenccs          7129/tcp
+scenccs          7129/udp
+cabsm-comm       7161/tcp
+cabsm-comm       7161/udp
+caistoragemgr    7162/tcp
+caistoragemgr    7162/udp
+cacsambroker     7163/tcp
+cacsambroker     7163/udp
+fsr              7164/tcp
+fsr              7164/udp
+doc-server       7165/tcp
+doc-server       7165/udp
+aruba-server     7166/tcp
+aruba-server     7166/udp
+casrmagent       7167/tcp
+cnckadserver     7168/tcp
+ccag-pib         7169/tcp
+ccag-pib         7169/udp
+nsrp             7170/tcp
+nsrp             7170/udp
+drm-production   7171/tcp
+drm-production   7171/udp
+metalbend        7172/tcp
+zsecure          7173/tcp
+clutild          7174/tcp
+clutild          7174/udp
+janus-disc       7181/udp
+fodms            7200/tcp
+fodms            7200/udp
+dlip             7201/tcp
+dlip             7201/udp
+pon-ictp         7202/tcp
+PS-Server        7215/tcp
+PS-Capture-Pro   7216/tcp
+ramp             7227/tcp
+ramp             7227/udp
+citrixupp        7228/tcp
+citrixuppg       7229/tcp
+asa-gateways     7234/tcp
+aspcoordination  7235/udp
+display          7236/tcp
+pads             7237/tcp
+frc-hicp         7244/tcp
+frc-hicp-disc    7244/udp
+cnap             7262/tcp
+cnap             7262/udp
+watchme-7272     7272/tcp
+watchme-7272     7272/udp
+oma-rlp          7273/tcp
+oma-rlp          7273/udp
+oma-rlp-s        7274/tcp
+oma-rlp-s        7274/udp
+oma-ulp          7275/tcp
+oma-ulp          7275/udp
+oma-ilp          7276/tcp
+oma-ilp          7276/udp
+oma-ilp-s        7277/tcp
+oma-ilp-s        7277/udp
+oma-dcdocbs      7278/tcp
+oma-dcdocbs      7278/udp
+ctxlic           7279/tcp
+ctxlic           7279/udp
+itactionserver1  7280/tcp
+itactionserver1  7280/udp
+itactionserver2  7281/tcp
+itactionserver2  7281/udp
+mzca-action      7282/tcp
+mzca-alert       7282/udp
+genstat          7283/tcp
+lcm-server       7365/tcp
+lcm-server       7365/udp
+mindfilesys      7391/tcp
+mindfilesys      7391/udp
+mrssrendezvous   7392/tcp
+mrssrendezvous   7392/udp
+nfoldman         7393/tcp
+nfoldman         7393/udp
+fse              7394/tcp
+fse              7394/udp
+winqedit         7395/tcp
+winqedit         7395/udp
+hexarc           7397/tcp
+hexarc           7397/udp
+rtps-discovery   7400/tcp
+rtps-discovery   7400/udp
+rtps-dd-ut       7401/tcp
+rtps-dd-ut       7401/udp
+rtps-dd-mt       7402/tcp
+rtps-dd-mt       7402/udp
+ionixnetmon      7410/tcp
+ionixnetmon      7410/udp
+daqstream        7411/tcp
+daqstream        7411/udp
+ipluminary       7420/udp
+mtportmon        7421/tcp
+mtportmon        7421/udp
+pmdmgr           7426/tcp
+pmdmgr           7426/udp
+oveadmgr         7427/tcp
+oveadmgr         7427/udp
+ovladmgr         7428/tcp
+ovladmgr         7428/udp
+opi-sock         7429/tcp
+opi-sock         7429/udp
+xmpv7            7430/tcp
+xmpv7            7430/udp
+pmd              7431/tcp
+pmd              7431/udp
+faximum          7437/tcp
+faximum          7437/udp
+oracleas-https   7443/tcp
+oracleas-https   7443/udp
+sttunnel         7471/tcp
+rise             7473/tcp
+rise             7473/udp
+neo4j            7474/tcp
+openit           7478/tcp
+telops-lmd       7491/tcp
+telops-lmd       7491/udp
+silhouette       7500/tcp
+silhouette       7500/udp
+ovbus            7501/tcp
+ovbus            7501/udp
+adcp             7508/tcp
+acplt            7509/tcp
+ovhpas           7510/tcp
+ovhpas           7510/udp
+pafec-lm         7511/tcp
+pafec-lm         7511/udp
+saratoga         7542/tcp
+saratoga         7542/udp
+atul             7543/tcp
+atul             7543/udp
+nta-ds           7544/tcp
+nta-ds           7544/udp
+nta-us           7545/tcp
+nta-us           7545/udp
+cfs              7546/tcp
+cfs              7546/udp
+cwmp             7547/tcp
+cwmp             7547/udp
+tidp             7548/tcp
+tidp             7548/udp
+nls-tl           7549/tcp
+nls-tl           7549/udp
+cloudsignaling   7550/udp
+controlone-con   7551/tcp
+sncp             7560/tcp
+sncp             7560/udp
+cfw              7563/tcp
+vsi-omega        7566/tcp
+vsi-omega        7566/udp
+dell-eql-asm     7569/tcp
+aries-kfinder    7570/tcp
+aries-kfinder    7570/udp
+coherence        7574/tcp
+coherence-disc   7574/udp
+sun-lm           7588/tcp
+sun-lm           7588/udp
+mipi-debug       7606/tcp
+mipi-debug       7606/udp
+indi             7624/tcp
+indi             7624/udp
+simco            7626/tcp
+simco            7626/sctp
+soap-http        7627/tcp
+soap-http        7627/udp
+zen-pawn         7628/tcp
+zen-pawn         7628/udp
+xdas             7629/tcp
+xdas             7629/udp
+hawk             7630/tcp
+tesla-sys-msg    7631/tcp
+pmdfmgt          7633/tcp
+pmdfmgt          7633/udp
+cuseeme          7648/tcp
+cuseeme          7648/udp
+rome             7663/tcp
+rome             7663/udp
+imqstomp         7672/tcp
+imqstomps        7673/tcp
+imqtunnels       7674/tcp
+imqtunnels       7674/udp
+imqtunnel        7675/tcp
+imqtunnel        7675/udp
+imqbrokerd       7676/tcp
+imqbrokerd       7676/udp
+sun-user-https   7677/tcp
+sun-user-https   7677/udp
+pando-pub        7680/tcp
+pando-pub        7680/udp
+dmt              7683/tcp
+bolt             7687/tcp
+collaber         7689/tcp
+collaber         7689/udp
+klio             7697/tcp
+klio             7697/udp
+em7-secom        7700/tcp
+nfapi            7701/sctp
+sync-em7         7707/tcp
+sync-em7         7707/udp
+scinet           7708/tcp
+scinet           7708/udp
+medimageportal   7720/tcp
+medimageportal   7720/udp
+nsdeepfreezectl  7724/tcp
+nsdeepfreezectl  7724/udp
+nitrogen         7725/tcp
+nitrogen         7725/udp
+freezexservice   7726/tcp
+freezexservice   7726/udp
+trident-data     7727/tcp
+trident-data     7727/udp
+osvr             7728/tcp
+osvr             7728/udp
+osvr             7728/sctp
+smip             7734/tcp
+smip             7734/udp
+aiagent          7738/tcp
+aiagent          7738/udp
+scriptview       7741/tcp
+scriptview       7741/udp
+msss             7742/tcp
+sstp-1           7743/tcp
+sstp-1           7743/udp
+raqmon-pdu       7744/tcp
+raqmon-pdu       7744/udp
+prgp             7747/tcp
+prgp             7747/udp
+inetfs           7775/tcp
+cbt              7777/tcp
+cbt              7777/udp
+interwise        7778/tcp
+interwise        7778/udp
+vstat            7779/tcp
+vstat            7779/udp
+accu-lmgr        7781/tcp
+accu-lmgr        7781/udp
+s-bfd            7784/udp
+minivend         7786/tcp
+minivend         7786/udp
+popup-reminders  7787/tcp
+popup-reminders  7787/udp
+office-tools     7789/tcp
+office-tools     7789/udp
+q3ade            7794/tcp
+q3ade            7794/udp
+pnet-conn        7797/tcp
+pnet-conn        7797/udp
+pnet-enc         7798/tcp
+pnet-enc         7798/udp
+altbsdp          7799/tcp
+altbsdp          7799/udp
+asr              7800/tcp
+asr              7800/udp
+ssp-client       7801/tcp
+ssp-client       7801/udp
+vns-tp           7802/udp
+rbt-wanopt       7810/tcp
+rbt-wanopt       7810/udp
+apc-7845         7845/tcp
+apc-7845         7845/udp
+apc-7846         7846/tcp
+apc-7846         7846/udp
+csoauth          7847/tcp
+mobileanalyzer   7869/tcp
+rbt-smc          7870/tcp
+mdm              7871/tcp
+mipv6tls         7872/udp
+owms             7878/tcp
+pss              7880/tcp
+pss              7880/udp
+ubroker          7887/tcp
+ubroker          7887/udp
+mevent           7900/tcp
+mevent           7900/udp
+tnos-sp          7901/tcp
+tnos-sp          7901/udp
+tnos-dp          7902/tcp
+tnos-dp          7902/udp
+tnos-dps         7903/tcp
+tnos-dps         7903/udp
+qo-secure        7913/tcp
+qo-secure        7913/udp
+t2-drm           7932/tcp
+t2-drm           7932/udp
+t2-brm           7933/tcp
+t2-brm           7933/udp
+generalsync      7962/tcp
+generalsync      7962/udp
+supercell        7967/tcp
+supercell        7967/udp
+micromuse-ncps   7979/tcp
+micromuse-ncps   7979/udp
+quest-vista      7980/tcp
+quest-vista      7980/udp
+sossd-collect    7981/tcp
+sossd-agent      7982/tcp
+sossd-disc       7982/udp
+pushns           7997/tcp
+usicontentpush   7998/udp
+irdmi2           7999/tcp
+irdmi2           7999/udp
+irdmi            8000/tcp
+irdmi            8000/udp
+vcom-tunnel      8001/tcp
+vcom-tunnel      8001/udp
+teradataordbms   8002/tcp
+teradataordbms   8002/udp
+mcreport         8003/tcp
+mcreport         8003/udp
+p2pevolvenet     8004/tcp
+mxi              8005/tcp
+mxi              8005/udp
+wpl-analytics    8006/tcp
+wpl-disc         8006/udp
+warppipe         8007/tcp
+warppipe         8007/udp
+http-alt         8008/tcp
+http-alt         8008/udp
+nvme-disc        8009/tcp
+cfg-cloud        8015/tcp
+ads-s            8016/tcp
+qbdb             8019/tcp
+qbdb             8019/udp
+intu-ec-svcdisc  8020/tcp
+intu-ec-svcdisc  8020/udp
+intu-ec-client   8021/tcp
+intu-ec-client   8021/udp
+oa-system        8022/tcp
+oa-system        8022/udp
+arca-api         8023/tcp
+arca-api         8023/udp
+ca-audit-da      8025/tcp
+ca-audit-da      8025/udp
+ca-audit-ds      8026/tcp
+ca-audit-ds      8026/udp
+pro-ed           8032/tcp
+pro-ed           8032/udp
+mindprint        8033/tcp
+mindprint        8033/udp
+vantronix-mgmt   8034/tcp
+vantronix-mgmt   8034/udp
+ampify           8040/tcp
+ampify           8040/udp
+enguity-xccetp   8041/tcp
+enguity-xccetp   8041/udp
+fs-agent         8042/tcp
+fs-server        8043/tcp
+fs-mgmt          8044/tcp
+rocrail          8051/tcp
+senomix01        8052/tcp
+senomix01        8052/udp
+senomix02        8053/tcp
+senomix02        8053/udp
+senomix03        8054/tcp
+senomix03        8054/udp
+senomix04        8055/tcp
+senomix04        8055/udp
+senomix05        8056/tcp
+senomix05        8056/udp
+senomix06        8057/tcp
+senomix06        8057/udp
+senomix07        8058/tcp
+senomix07        8058/udp
+senomix08        8059/tcp
+senomix08        8059/udp
+aero             8060/udp
+toad-bi-appsrvr  8066/tcp
+infi-async       8067/tcp
+ucs-isc          8070/tcp
+gadugadu         8074/tcp
+gadugadu         8074/udp
+mles             8077/tcp
+http-alt         8080/tcp
+http-alt         8080/udp
+sunproxyadmin    8081/tcp
+sunproxyadmin    8081/udp
+us-cli           8082/tcp
+us-cli           8082/udp
+us-srv           8083/tcp
+us-srv           8083/udp
+websnp           8084/tcp
+d-s-n            8086/tcp
+d-s-n            8086/udp
+simplifymedia    8087/tcp
+simplifymedia    8087/udp
+radan-http       8088/tcp
+radan-http       8088/udp
+opsmessaging     8090/tcp
+jamlink          8091/tcp
+sac              8097/tcp
+sac              8097/udp
+xprint-server    8100/tcp
+xprint-server    8100/udp
+ldoms-migr       8101/tcp
+kz-migr          8102/tcp
+skynetflow       8111/udp
+mtl8000-matrix   8115/tcp
+mtl8000-matrix   8115/udp
+cp-cluster       8116/tcp
+cp-cluster       8116/udp
+purityrpc        8117/tcp
+privoxy          8118/tcp
+privoxy          8118/udp
+apollo-data      8121/tcp
+apollo-data      8121/udp
+apollo-admin     8122/tcp
+apollo-admin     8122/udp
+paycash-online   8128/tcp
+paycash-online   8128/udp
+paycash-wbp      8129/tcp
+paycash-wbp      8129/udp
+indigo-vrmi      8130/tcp
+indigo-vrmi      8130/udp
+indigo-vbcp      8131/tcp
+indigo-vbcp      8131/udp
+dbabble          8132/tcp
+dbabble          8132/udp
+puppet           8140/tcp
+isdd             8148/tcp
+isdd             8148/udp
+eor-game         8149/udp
+quantastor       8153/tcp
+patrol           8160/tcp
+patrol           8160/udp
+patrol-snmp      8161/tcp
+patrol-snmp      8161/udp
+lpar2rrd         8162/tcp
+intermapper      8181/tcp
+vmware-fdm       8182/tcp
+vmware-fdm       8182/udp
+proremote        8183/tcp
+itach            8184/tcp
+itach            8184/udp
+gcp-rphy         8190/tcp
+limnerpressure   8191/tcp
+spytechphone     8192/tcp
+spytechphone     8192/udp
+blp1             8194/tcp
+blp1             8194/udp
+blp2             8195/tcp
+blp2             8195/udp
+vvr-data         8199/tcp
+vvr-data         8199/udp
+trivnet1         8200/tcp
+trivnet1         8200/udp
+trivnet2         8201/tcp
+trivnet2         8201/udp
+aesop            8202/udp
+lm-perfworks     8204/tcp
+lm-perfworks     8204/udp
+lm-instmgr       8205/tcp
+lm-instmgr       8205/udp
+lm-dta           8206/tcp
+lm-dta           8206/udp
+lm-sserver       8207/tcp
+lm-sserver       8207/udp
+lm-webwatcher    8208/tcp
+lm-webwatcher    8208/udp
+aruba-papi       8211/udp
+rexecj           8230/tcp
+rexecj           8230/udp
+hncp-udp-port    8231/udp
+hncp-dtls-port   8232/udp
+synapse-nhttps   8243/tcp
+synapse-nhttps   8243/udp
+espeasy-p2p      8266/udp
+robot-remote     8270/tcp
+pando-sec        8276/tcp
+pando-sec        8276/udp
+synapse-nhttp    8280/tcp
+synapse-nhttp    8280/udp
+libelle          8282/tcp
+libelle-disc     8282/udp
+blp3             8292/tcp
+blp3             8292/udp
+hiperscan-id     8293/tcp
+blp4             8294/tcp
+blp4             8294/udp
+tmi              8300/tcp
+tmi              8300/udp
+amberon          8301/tcp
+amberon          8301/udp
+hub-open-net     8313/tcp
+tnp-discover     8320/tcp
+tnp-discover     8320/udp
+tnp              8321/tcp
+tnp              8321/udp
+garmin-marine    8322/tcp
+garmin-marine    8322/udp
+server-find      8351/tcp
+server-find      8351/udp
+cruise-enum      8376/tcp
+cruise-enum      8376/udp
+cruise-swroute   8377/tcp
+cruise-swroute   8377/udp
+cruise-config    8378/tcp
+cruise-config    8378/udp
+cruise-diags     8379/tcp
+cruise-diags     8379/udp
+cruise-update    8380/tcp
+cruise-update    8380/udp
+m2mservices      8383/tcp
+m2mservices      8383/udp
+marathontp       8384/udp
+cvd              8400/tcp
+cvd              8400/udp
+sabarsd          8401/tcp
+sabarsd          8401/udp
+abarsd           8402/tcp
+abarsd           8402/udp
+admind           8403/tcp
+admind           8403/udp
+svcloud          8404/tcp
+svbackup         8405/tcp
+dlpx-sp          8415/tcp
+espeech          8416/tcp
+espeech          8416/udp
+espeech-rtp      8417/tcp
+espeech-rtp      8417/udp
+aritts           8423/tcp
+cybro-a-bus      8442/tcp
+cybro-a-bus      8442/udp
+pcsync-https     8443/tcp
+pcsync-https     8443/udp
+pcsync-http      8444/tcp
+pcsync-http      8444/udp
+copy             8445/tcp
+copy-disc        8445/udp
+npmp             8450/tcp
+npmp             8450/udp
+nexentamv        8457/tcp
+cisco-avp        8470/tcp
+pim-port         8471/tcp
+pim-port         8471/sctp
+otv              8472/tcp
+otv              8472/udp
+vp2p             8473/tcp
+vp2p             8473/udp
+noteshare        8474/tcp
+noteshare        8474/udp
+fmtp             8500/tcp
+fmtp             8500/udp
+cmtp-mgt         8501/tcp
+cmtp-av          8501/udp
+ftnmtp           8502/tcp
+lsp-self-ping    8503/udp
+rtsp-alt         8554/tcp
+rtsp-alt         8554/udp
+d-fence          8555/tcp
+d-fence          8555/udp
+dof-tunnel       8567/tcp
+dof-tunnel       8567/udp
+asterix          8600/tcp
+asterix          8600/udp
+canon-cpp-disc   8609/udp
+canon-mfnp       8610/tcp
+canon-mfnp       8610/udp
+canon-bjnp1      8611/tcp
+canon-bjnp1      8611/udp
+canon-bjnp2      8612/tcp
+canon-bjnp2      8612/udp
+canon-bjnp3      8613/tcp
+canon-bjnp3      8613/udp
+canon-bjnp4      8614/tcp
+canon-bjnp4      8614/udp
+imink            8615/tcp
+monetra          8665/tcp
+monetra-admin    8666/tcp
+msi-cps-rm       8675/tcp
+msi-cps-rm-disc  8675/udp
+sun-as-jmxrmi    8686/tcp
+sun-as-jmxrmi    8686/udp
+openremote-ctrl  8688/tcp
+vnyx             8699/tcp
+semi-grpc        8710/tcp
+nvc              8711/tcp
+dtp-net          8732/udp
+ibus             8733/tcp
+ibus             8733/udp
+dey-keyneg       8750/tcp
+mc-appserver     8763/tcp
+mc-appserver     8763/udp
+openqueue        8764/tcp
+openqueue        8764/udp
+ultraseek-http   8765/tcp
+ultraseek-http   8765/udp
+amcs             8766/tcp
+amcs             8766/udp
+core-of-source   8767/tcp
+sandpolis        8768/tcp
+oktaauthenticat  8769/tcp
+dpap             8770/tcp
+dpap             8770/udp
+uec              8778/tcp
+msgclnt          8786/tcp
+msgclnt          8786/udp
+msgsrvr          8787/tcp
+msgsrvr          8787/udp
+acd-pm           8793/tcp
+acd-pm           8793/udp
+sunwebadmin      8800/tcp
+sunwebadmin      8800/udp
+truecm           8804/tcp
+truecm           8804/udp
+pfcp             8805/udp
+hes-clip         8807/udp
+ssports-bcast    8808/udp
+3gpp-monp        8809/udp
+dxspider         8873/tcp
+dxspider         8873/udp
+cddbp-alt        8880/tcp
+cddbp-alt        8880/udp
+galaxy4d         8881/tcp
+secure-mqtt      8883/tcp
+secure-mqtt      8883/udp
+ddi-tcp-1        8888/tcp
+ddi-udp-1        8888/udp
+ddi-tcp-2        8889/tcp
+ddi-udp-2        8889/udp
+ddi-tcp-3        8890/tcp
+ddi-udp-3        8890/udp
+ddi-tcp-4        8891/tcp
+ddi-udp-4        8891/udp
+ddi-tcp-5        8892/tcp
+ddi-udp-5        8892/udp
+ddi-tcp-6        8893/tcp
+ddi-udp-6        8893/udp
+ddi-tcp-7        8894/tcp
+ddi-udp-7        8894/udp
+ospf-lite        8899/tcp
+ospf-lite        8899/udp
+jmb-cds1         8900/tcp
+jmb-cds1         8900/udp
+jmb-cds2         8901/tcp
+jmb-cds2         8901/udp
+manyone-http     8910/tcp
+manyone-http     8910/udp
+manyone-xml      8911/tcp
+manyone-xml      8911/udp
+wcbackup         8912/tcp
+wcbackup         8912/udp
+dragonfly        8913/tcp
+dragonfly        8913/udp
+twds             8937/tcp
+ub-dns-control   8953/tcp
+cumulus-admin    8954/tcp
+cumulus-admin    8954/udp
+nod-provider     8980/tcp
+nod-provider     8980/udp
+nod-client       8981/udp
+sunwebadmins     8989/tcp
+sunwebadmins     8989/udp
+http-wmap        8990/tcp
+http-wmap        8990/udp
+https-wmap       8991/tcp
+https-wmap       8991/udp
+oracle-ms-ens    8997/tcp
+canto-roboflow   8998/tcp
+bctp             8999/tcp
+bctp             8999/udp
+cslistener       9000/tcp
+cslistener       9000/udp
+etlservicemgr    9001/tcp
+etlservicemgr    9001/udp
+dynamid          9002/tcp
+dynamid          9002/udp
+golem            9005/tcp
+ogs-client       9007/udp
+ogs-server       9008/tcp
+pichat           9009/tcp
+pichat           9009/udp
+sdr              9010/tcp
+d-star           9011/udp
+tambora          9020/tcp
+tambora          9020/udp
+panagolin-ident  9021/tcp
+panagolin-ident  9021/udp
+paragent         9022/tcp
+paragent         9022/udp
+swa-1            9023/tcp
+swa-1            9023/udp
+swa-2            9024/tcp
+swa-2            9024/udp
+swa-3            9025/tcp
+swa-3            9025/udp
+swa-4            9026/tcp
+swa-4            9026/udp
+versiera         9050/tcp
+fio-cmgmt        9051/tcp
+CardWeb-IO       9060/tcp
+CardWeb-RT       9060/udp
+glrpc            9080/tcp
+glrpc            9080/udp
+cisco-aqos       9081/udp
+lcs-ap           9082/sctp
+emc-pp-mgmtsvc   9083/tcp
+aurora           9084/tcp
+aurora           9084/udp
+aurora           9084/sctp
+ibm-rsyscon      9085/tcp
+ibm-rsyscon      9085/udp
+net2display      9086/tcp
+net2display      9086/udp
+classic          9087/tcp
+classic          9087/udp
+sqlexec          9088/tcp
+sqlexec          9088/udp
+sqlexec-ssl      9089/tcp
+sqlexec-ssl      9089/udp
+websm            9090/tcp
+websm            9090/udp
+xmltec-xmlmail   9091/tcp
+xmltec-xmlmail   9091/udp
+XmlIpcRegSvc     9092/tcp
+XmlIpcRegSvc     9092/udp
+copycat          9093/tcp
+hp-pdl-datastr   9100/tcp
+hp-pdl-datastr   9100/udp
+pdl-datastream   9100/tcp
+pdl-datastream   9100/udp
+bacula-dir       9101/tcp
+bacula-dir       9101/udp
+bacula-fd        9102/tcp
+bacula-fd        9102/udp
+bacula-sd        9103/tcp
+bacula-sd        9103/udp
+peerwire         9104/tcp
+peerwire         9104/udp
+xadmin           9105/tcp
+xadmin           9105/udp
+astergate        9106/tcp
+astergate-disc   9106/udp
+astergatefax     9107/tcp
+hexxorecore      9111/tcp
+hexxorecore      9111/udp
+mxit             9119/tcp
+mxit             9119/udp
+grcmp            9122/tcp
+grcp             9123/tcp
+dddp             9131/tcp
+dddp             9131/udp
+apani1           9160/tcp
+apani1           9160/udp
+apani2           9161/tcp
+apani2           9161/udp
+apani3           9162/tcp
+apani3           9162/udp
+apani4           9163/tcp
+apani4           9163/udp
+apani5           9164/tcp
+apani5           9164/udp
+sun-as-jpda      9191/tcp
+sun-as-jpda      9191/udp
+wap-wsp          9200/tcp
+wap-wsp          9200/udp
+wap-wsp-wtp      9201/tcp
+wap-wsp-wtp      9201/udp
+wap-wsp-s        9202/tcp
+wap-wsp-s        9202/udp
+wap-wsp-wtp-s    9203/tcp
+wap-wsp-wtp-s    9203/udp
+wap-vcard        9204/tcp
+wap-vcard        9204/udp
+wap-vcal         9205/tcp
+wap-vcal         9205/udp
+wap-vcard-s      9206/tcp
+wap-vcard-s      9206/udp
+wap-vcal-s       9207/tcp
+wap-vcal-s       9207/udp
+rjcdb-vcards     9208/tcp
+rjcdb-vcards     9208/udp
+almobile-system  9209/tcp
+almobile-system  9209/udp
+oma-mlp          9210/tcp
+oma-mlp          9210/udp
+oma-mlp-s        9211/tcp
+oma-mlp-s        9211/udp
+serverviewdbms   9212/tcp
+serverviewdbms   9212/udp
+serverstart      9213/tcp
+serverstart      9213/udp
+ipdcesgbs        9214/tcp
+ipdcesgbs        9214/udp
+insis            9215/tcp
+insis            9215/udp
+acme             9216/tcp
+acme             9216/udp
+fsc-port         9217/tcp
+fsc-port         9217/udp
+teamcoherence    9222/tcp
+teamcoherence    9222/udp
+mon              9255/tcp
+mon              9255/udp
+traingpsdata     9277/udp
+pegasus          9278/tcp
+pegasus          9278/udp
+pegasus-ctl      9279/tcp
+pegasus-ctl      9279/udp
+pgps             9280/tcp
+pgps             9280/udp
+swtp-port1       9281/tcp
+swtp-port1       9281/udp
+swtp-port2       9282/tcp
+swtp-port2       9282/udp
+callwaveiam      9283/tcp
+callwaveiam      9283/udp
+visd             9284/tcp
+visd             9284/udp
+n2h2server       9285/tcp
+n2h2server       9285/udp
+n2receive        9286/udp
+cumulus          9287/tcp
+cumulus          9287/udp
+armtechdaemon    9292/tcp
+armtechdaemon    9292/udp
+storview         9293/tcp
+storview         9293/udp
+armcenterhttp    9294/tcp
+armcenterhttp    9294/udp
+armcenterhttps   9295/tcp
+armcenterhttps   9295/udp
+vrace            9300/tcp
+vrace            9300/udp
+sphinxql         9306/tcp
+sapms            9310/tcp
+sphinxapi        9312/tcp
+secure-ts        9318/tcp
+secure-ts        9318/udp
+guibase          9321/tcp
+guibase          9321/udp
+gnmi-gnoi        9339/tcp
+mpidcmgr         9343/tcp
+mpidcmgr         9343/udp
+mphlpdmc         9344/tcp
+mphlpdmc         9344/udp
+rancher          9345/tcp
+ctechlicensing   9346/tcp
+ctechlicensing   9346/udp
+fjdmimgr         9374/tcp
+fjdmimgr         9374/udp
+boxp             9380/tcp
+boxp             9380/udp
+d2dconfig        9387/tcp
+d2ddatatrans     9388/tcp
+adws             9389/tcp
+otp              9390/tcp
+fjinvmgr         9396/tcp
+fjinvmgr         9396/udp
+mpidcagt         9397/tcp
+mpidcagt         9397/udp
+sec-t4net-srv    9400/tcp
+sec-t4net-srv    9400/udp
+sec-t4net-clt    9401/tcp
+sec-t4net-clt    9401/udp
+sec-pc2fax-srv   9402/tcp
+sec-pc2fax-srv   9402/udp
+git              9418/tcp
+git              9418/udp
+tungsten-https   9443/tcp
+tungsten-https   9443/udp
+wso2esb-console  9444/tcp
+wso2esb-console  9444/udp
+mindarray-ca     9445/tcp
+sntlkeyssrvr     9450/tcp
+sntlkeyssrvr     9450/udp
+ismserver        9500/tcp
+ismserver        9500/udp
+sma-spw          9522/udp
+mngsuite         9535/tcp
+mngsuite         9535/udp
+laes-bf          9536/tcp
+laes-bf          9536/udp
+trispen-sra      9555/tcp
+trispen-sra      9555/udp
+ldgateway        9592/tcp
+ldgateway        9592/udp
+cba8             9593/tcp
+cba8             9593/udp
+msgsys           9594/tcp
+msgsys           9594/udp
+pds              9595/tcp
+pds              9595/udp
+mercury-disc     9596/tcp
+mercury-disc     9596/udp
+pd-admin         9597/tcp
+pd-admin         9597/udp
+vscp             9598/tcp
+vscp             9598/udp
+robix            9599/tcp
+robix            9599/udp
+micromuse-ncpw   9600/tcp
+micromuse-ncpw   9600/udp
+streamcomm-ds    9612/tcp
+streamcomm-ds    9612/udp
+iadt-tls         9614/tcp
+erunbook-agent   9616/tcp
+erunbook-server  9617/tcp
+condor           9618/tcp
+condor           9618/udp
+odbcpathway      9628/tcp
+odbcpathway      9628/udp
+uniport          9629/tcp
+uniport          9629/udp
+peoctlr          9630/tcp
+peocoll          9631/tcp
+mc-comm          9632/udp
+pqsflows         9640/tcp
+zoomcp           9666/tcp
+xmms2            9667/tcp
+xmms2            9667/udp
+tec5-sdctp       9668/tcp
+tec5-sdctp       9668/udp
+client-wakeup    9694/tcp
+client-wakeup    9694/udp
+ccnx             9695/tcp
+ccnx             9695/udp
+board-roar       9700/tcp
+board-roar       9700/udp
+l5nas-parchan    9747/tcp
+l5nas-parchan    9747/udp
+board-voip       9750/tcp
+board-voip       9750/udp
+rasadv           9753/tcp
+rasadv           9753/udp
+tungsten-http    9762/tcp
+tungsten-http    9762/udp
+davsrc           9800/tcp
+davsrc           9800/udp
+sstp-2           9801/tcp
+sstp-2           9801/udp
+davsrcs          9802/tcp
+davsrcs          9802/udp
+sapv1            9875/tcp
+sapv1            9875/udp
+sd               9876/tcp
+x510             9877/tcp
+kca-service      9878/udp
+cyborg-systems   9888/tcp
+cyborg-systems   9888/udp
+gt-proxy         9889/tcp
+gt-proxy         9889/udp
+monkeycom        9898/tcp
+monkeycom        9898/udp
+sctp-tunneling   9899/udp
+iua              9900/tcp
+iua              9900/udp
+iua              9900/sctp
+enrp             9901/udp
+enrp-sctp        9901/sctp
+enrp-sctp-tls    9902/sctp
+multicast-ping   9903/udp
+domaintime       9909/tcp
+domaintime       9909/udp
+sype-transport   9911/tcp
+sype-transport   9911/udp
+xybrid-cloud     9925/tcp
+apc-9950         9950/tcp
+apc-9950         9950/udp
+apc-9951         9951/tcp
+apc-9951         9951/udp
+apc-9952         9952/tcp
+apc-9952         9952/udp
+acis             9953/tcp
+acis             9953/udp
+hinp             9954/tcp
+alljoyn-stm      9955/tcp
+alljoyn-mcm      9955/udp
+alljoyn          9956/udp
+odnsp            9966/tcp
+odnsp            9966/udp
+xybrid-rt        9978/tcp
+visweather       9979/tcp
+pumpkindb        9981/tcp
+dsm-scm-target   9987/tcp
+dsm-scm-target   9987/udp
+nsesrvr          9988/tcp
+osm-appsrvr      9990/tcp
+osm-appsrvr      9990/udp
+osm-oev          9991/tcp
+osm-oev          9991/udp
+palace-1         9992/tcp
+palace-1         9992/udp
+palace-2         9993/tcp
+palace-2         9993/udp
+palace-3         9994/tcp
+palace-3         9994/udp
+palace-4         9995/tcp
+palace-4         9995/udp
+palace-5         9996/tcp
+palace-5         9996/udp
+palace-6         9997/tcp
+palace-6         9997/udp
+distinct32       9998/tcp
+distinct32       9998/udp
+distinct         9999/tcp
+distinct         9999/udp
+ndmp            10000/tcp
+ndmp            10000/udp
+scp-config      10001/tcp
+scp-config      10001/udp
+documentum      10002/tcp
+documentum      10002/udp
+documentum-s    10003/tcp
+documentum-s    10003/udp
+emcrmirccd      10004/tcp
+emcrmird        10005/tcp
+netapp-sync     10006/tcp
+mvs-capacity    10007/tcp
+mvs-capacity    10007/udp
+octopus         10008/tcp
+octopus         10008/udp
+swdtp-sv        10009/tcp
+swdtp-sv        10009/udp
+rxapi           10010/tcp
+abb-hw          10020/tcp
+cefd-vmp        10023/udp
+zabbix-agent    10050/tcp
+zabbix-agent    10050/udp
+zabbix-trapper  10051/tcp
+zabbix-trapper  10051/udp
+qptlmd          10055/tcp
+amanda          10080/tcp
+amanda          10080/udp
+famdc           10081/tcp
+famdc           10081/udp
+itap-ddtp       10100/tcp
+itap-ddtp       10100/udp
+ezmeeting-2     10101/tcp
+ezmeeting-2     10101/udp
+ezproxy-2       10102/tcp
+ezproxy-2       10102/udp
+ezrelay         10103/tcp
+ezrelay         10103/udp
+swdtp           10104/tcp
+swdtp           10104/udp
+bctp-server     10107/tcp
+bctp-server     10107/udp
+nmea-0183       10110/tcp
+nmea-0183       10110/udp
+nmea-onenet     10111/udp
+netiq-endpoint  10113/tcp
+netiq-endpoint  10113/udp
+netiq-qcheck    10114/tcp
+netiq-qcheck    10114/udp
+netiq-endpt     10115/tcp
+netiq-endpt     10115/udp
+netiq-voipa     10116/tcp
+netiq-voipa     10116/udp
+iqrm            10117/tcp
+iqrm            10117/udp
+cimple          10125/tcp
+bmc-perf-sd     10128/tcp
+bmc-perf-sd     10128/udp
+bmc-gms         10129/tcp
+qb-db-server    10160/tcp
+qb-db-server    10160/udp
+snmptls         10161/tcp
+snmpdtls        10161/udp
+snmptls-trap    10162/tcp
+snmpdtls-trap   10162/udp
+trisoap         10200/tcp
+trisoap         10200/udp
+rsms            10201/tcp
+rscs            10201/udp
+apollo-relay    10252/tcp
+apollo-relay    10252/udp
+eapol-relay     10253/udp
+axis-wimp-port  10260/tcp
+axis-wimp-port  10260/udp
+tile-ml         10261/tcp
+blocks          10288/tcp
+blocks          10288/udp
+cosir           10321/tcp
+bngsync         10439/udp
+cirrossp        10443/tcp
+hip-nat-t       10500/udp
+MOS-lower       10540/tcp
+MOS-lower       10540/udp
+MOS-upper       10541/tcp
+MOS-upper       10541/udp
+MOS-aux         10542/tcp
+MOS-aux         10542/udp
+MOS-soap        10543/tcp
+MOS-soap        10543/udp
+MOS-soap-opt    10544/tcp
+MOS-soap-opt    10544/udp
+serverdocs      10548/tcp
+printopia       10631/tcp
+gap             10800/tcp
+gap             10800/udp
+lpdg            10805/tcp
+lpdg            10805/udp
+nbd             10809/tcp
+nmc-disc        10810/udp
+helix           10860/tcp
+helix           10860/udp
+bveapi          10880/tcp
+bveapi          10880/udp
+octopustentacle 10933/tcp
+rmiaux          10990/tcp
+rmiaux          10990/udp
+irisa           11000/tcp
+irisa           11000/udp
+metasys         11001/tcp
+metasys         11001/udp
+weave           11095/tcp
+weave           11095/udp
+origo-sync      11103/tcp
+netapp-icmgmt   11104/tcp
+netapp-icdata   11105/tcp
+sgi-lk          11106/tcp
+sgi-lk          11106/udp
+myq-termlink    11108/udp
+sgi-dmfmgr      11109/tcp
+sgi-soap        11110/tcp
+vce             11111/tcp
+vce             11111/udp
+dicom           11112/tcp
+dicom           11112/udp
+suncacao-snmp   11161/tcp
+suncacao-snmp   11161/udp
+suncacao-jmxmp  11162/tcp
+suncacao-jmxmp  11162/udp
+suncacao-rmi    11163/tcp
+suncacao-rmi    11163/udp
+suncacao-csa    11164/tcp
+suncacao-csa    11164/udp
+suncacao-websvc 11165/tcp
+suncacao-websvc 11165/udp
+snss            11171/udp
+oemcacao-jmxmp  11172/tcp
+t5-straton      11173/tcp
+oemcacao-rmi    11174/tcp
+oemcacao-websvc 11175/tcp
+smsqp           11201/tcp
+smsqp           11201/udp
+dcsl-backup     11202/tcp
+wifree          11208/tcp
+wifree          11208/udp
+memcache        11211/tcp
+memcache        11211/udp
+imip            11319/tcp
+imip            11319/udp
+imip-channels   11320/tcp
+imip-channels   11320/udp
+arena-server    11321/tcp
+arena-server    11321/udp
+atm-uhas        11367/tcp
+atm-uhas        11367/udp
+hkp             11371/tcp
+hkp             11371/udp
+lsdp            11430/udp
+asgcypresstcps  11489/tcp
+tempest-port    11600/tcp
+tempest-port    11600/udp
+emc-xsw-dconfig 11623/tcp
+h323callsigalt  11720/tcp
+h323callsigalt  11720/udp
+emc-xsw-dcache  11723/tcp
+emc-xsw-dcache  11723/udp
+intrepid-ssl    11751/tcp
+intrepid-ssl    11751/udp
+lanschool       11796/tcp
+lanschool-mpt   11796/udp
+xoraya          11876/tcp
+xoraya          11876/udp
+x2e-disc        11877/udp
+sysinfo-sp      11967/tcp
+sysinfo-sp      11967/udp
+tibsd           11971/tcp
+wmereceiving    11997/sctp
+wmedistribution 11998/sctp
+wmereporting    11999/sctp
+entextxid       12000/tcp
+entextxid       12000/udp
+entextnetwk     12001/tcp
+entextnetwk     12001/udp
+entexthigh      12002/tcp
+entexthigh      12002/udp
+entextmed       12003/tcp
+entextmed       12003/udp
+entextlow       12004/tcp
+entextlow       12004/udp
+dbisamserver1   12005/tcp
+dbisamserver1   12005/udp
+dbisamserver2   12006/tcp
+dbisamserver2   12006/udp
+accuracer       12007/tcp
+accuracer       12007/udp
+accuracer-dbms  12008/tcp
+accuracer-dbms  12008/udp
+ghvpn           12009/udp
+edbsrvr         12010/tcp
+vipera          12012/tcp
+vipera          12012/udp
+vipera-ssl      12013/tcp
+vipera-ssl      12013/udp
+rets-ssl        12109/tcp
+rets-ssl        12109/udp
+nupaper-ss      12121/tcp
+nupaper-ss      12121/udp
+cawas           12168/tcp
+cawas           12168/udp
+hivep           12172/tcp
+hivep           12172/udp
+linogridengine  12300/tcp
+linogridengine  12300/udp
+rads            12302/tcp
+warehouse-sss   12321/tcp
+warehouse-sss   12321/udp
+warehouse       12322/tcp
+warehouse       12322/udp
+italk           12345/tcp
+italk           12345/udp
+tsaf            12753/tcp
+tsaf            12753/udp
+netperf         12865/tcp
+i-zipqd         13160/tcp
+i-zipqd         13160/udp
+bcslogc         13216/tcp
+bcslogc         13216/udp
+rs-pias         13217/tcp
+rs-pias         13217/udp
+emc-vcas-tcp    13218/tcp
+emc-vcas-udp    13218/udp
+powwow-client   13223/tcp
+powwow-client   13223/udp
+powwow-server   13224/tcp
+powwow-server   13224/udp
+doip-data       13400/tcp
+doip-disc       13400/udp
+bprd            13720/tcp
+bprd            13720/udp
+bpdbm           13721/tcp
+bpdbm           13721/udp
+bpjava-msvc     13722/tcp
+bpjava-msvc     13722/udp
+vnetd           13724/tcp
+vnetd           13724/udp
+bpcd            13782/tcp
+bpcd            13782/udp
+vopied          13783/tcp
+vopied          13783/udp
+nbdb            13785/tcp
+nbdb            13785/udp
+nomdb           13786/tcp
+nomdb           13786/udp
+dsmcc-config    13818/tcp
+dsmcc-config    13818/udp
+dsmcc-session   13819/tcp
+dsmcc-session   13819/udp
+dsmcc-passthru  13820/tcp
+dsmcc-passthru  13820/udp
+dsmcc-download  13821/tcp
+dsmcc-download  13821/udp
+dsmcc-ccp       13822/tcp
+dsmcc-ccp       13822/udp
+bmdss           13823/tcp
+ucontrol        13894/tcp
+ucontrol        13894/udp
+dta-systems     13929/tcp
+dta-systems     13929/udp
+medevolve       13930/tcp
+scotty-ft       14000/tcp
+scotty-ft       14000/udp
+sua             14001/tcp
+sua             14001/udp
+sua             14001/sctp
+scotty-disc     14002/udp
+sage-best-com1  14033/tcp
+sage-best-com1  14033/udp
+sage-best-com2  14034/tcp
+sage-best-com2  14034/udp
+vcs-app         14141/tcp
+vcs-app         14141/udp
+icpp            14142/tcp
+icpp            14142/udp
+icpps           14143/tcp
+gcm-app         14145/tcp
+gcm-app         14145/udp
+vrts-tdd        14149/tcp
+vrts-tdd        14149/udp
+vcscmd          14150/tcp
+vad             14154/tcp
+vad             14154/udp
+cps             14250/tcp
+cps             14250/udp
+ca-web-update   14414/tcp
+ca-web-update   14414/udp
+xpra            14500/tcp
+hde-lcesrvr-1   14936/tcp
+hde-lcesrvr-1   14936/udp
+hde-lcesrvr-2   14937/tcp
+hde-lcesrvr-2   14937/udp
+hydap           15000/tcp
+hydap           15000/udp
+onep-tls        15002/tcp
+v2g-secc        15118/udp
+xpilot          15345/tcp
+xpilot          15345/udp
+3link           15363/tcp
+3link           15363/udp
+cisco-snat      15555/tcp
+cisco-snat      15555/udp
+bex-xr          15660/tcp
+bex-xr          15660/udp
+ptp             15740/tcp
+ptp             15740/udp
+2ping           15998/udp
+programmar      15999/tcp
+fmsas           16000/tcp
+fmsascon        16001/tcp
+gsms            16002/tcp
+alfin           16003/udp
+jwpc            16020/tcp
+jwpc-bin        16021/tcp
+sun-sea-port    16161/tcp
+sun-sea-port    16161/udp
+solaris-audit   16162/tcp
+etb4j           16309/tcp
+etb4j           16309/udp
+pduncs          16310/tcp
+pduncs          16310/udp
+pdefmns         16311/tcp
+pdefmns         16311/udp
+netserialext1   16360/tcp
+netserialext1   16360/udp
+netserialext2   16361/tcp
+netserialext2   16361/udp
+netserialext3   16367/tcp
+netserialext3   16367/udp
+netserialext4   16368/tcp
+netserialext4   16368/udp
+connected       16384/tcp
+connected       16384/udp
+rdgs            16385/tcp
+xoms            16619/tcp
+axon-tunnel     16665/tcp
+vtp             16666/udp
+cadsisvr        16789/tcp
+newbay-snc-mc   16900/tcp
+newbay-snc-mc   16900/udp
+sgcip           16950/tcp
+sgcip           16950/udp
+intel-rci-mp    16991/tcp
+intel-rci-mp    16991/udp
+amt-soap-http   16992/tcp
+amt-soap-http   16992/udp
+amt-soap-https  16993/tcp
+amt-soap-https  16993/udp
+amt-redir-tcp   16994/tcp
+amt-redir-tcp   16994/udp
+amt-redir-tls   16995/tcp
+amt-redir-tls   16995/udp
+isode-dua       17007/tcp
+isode-dua       17007/udp
+vestasdlp       17184/tcp
+soundsvirtual   17185/tcp
+soundsvirtual   17185/udp
+chipper         17219/tcp
+chipper         17219/udp
+avtp            17220/tcp
+avtp            17220/udp
+avdecc          17221/tcp
+avdecc          17221/udp
+cpsp            17222/udp
+isa100-gci      17223/tcp
+trdp-pd         17224/udp
+trdp-md         17225/tcp
+trdp-md         17225/udp
+integrius-stp   17234/tcp
+integrius-stp   17234/udp
+ssh-mgmt        17235/tcp
+ssh-mgmt        17235/udp
+db-lsp          17500/tcp
+db-lsp-disc     17500/udp
+ailith          17555/tcp
+ea              17729/tcp
+ea              17729/udp
+zep             17754/tcp
+zep             17754/udp
+zigbee-ip       17755/tcp
+zigbee-ip       17755/udp
+zigbee-ips      17756/tcp
+zigbee-ips      17756/udp
+sw-orion        17777/tcp
+biimenu         18000/tcp
+biimenu         18000/udp
+radpdf          18104/tcp
+racf            18136/tcp
+opsec-cvp       18181/tcp
+opsec-cvp       18181/udp
+opsec-ufp       18182/tcp
+opsec-ufp       18182/udp
+opsec-sam       18183/tcp
+opsec-sam       18183/udp
+opsec-lea       18184/tcp
+opsec-lea       18184/udp
+opsec-omi       18185/tcp
+opsec-omi       18185/udp
+ohsc            18186/tcp
+ohsc            18186/udp
+opsec-ela       18187/tcp
+opsec-ela       18187/udp
+checkpoint-rtm  18241/tcp
+checkpoint-rtm  18241/udp
+iclid           18242/tcp
+clusterxl       18243/tcp
+gv-pf           18262/tcp
+gv-pf           18262/udp
+ac-cluster      18463/tcp
+ac-cluster      18463/udp
+heythings       18516/udp
+rds-ib          18634/tcp
+rds-ib          18634/udp
+rds-ip          18635/tcp
+rds-ip          18635/udp
+vdmmesh         18668/tcp
+vdmmesh-disc    18668/udp
+ique            18769/tcp
+ique            18769/udp
+infotos         18881/tcp
+infotos         18881/udp
+apc-necmp       18888/tcp
+apc-necmp       18888/udp
+igrid           19000/tcp
+igrid           19000/udp
+scintilla       19007/tcp
+scintilla       19007/udp
+j-link          19020/tcp
+opsec-uaa       19191/tcp
+opsec-uaa       19191/udp
+ua-secureagent  19194/tcp
+ua-secureagent  19194/udp
+cora            19220/tcp
+cora-disc       19220/udp
+keysrvr         19283/tcp
+keysrvr         19283/udp
+keyshadow       19315/tcp
+keyshadow       19315/udp
+mtrgtrans       19398/tcp
+mtrgtrans       19398/udp
+hp-sco          19410/tcp
+hp-sco          19410/udp
+hp-sca          19411/tcp
+hp-sca          19411/udp
+hp-sessmon      19412/tcp
+hp-sessmon      19412/udp
+fxuptp          19539/tcp
+fxuptp          19539/udp
+sxuptp          19540/tcp
+sxuptp          19540/udp
+jcp             19541/tcp
+jcp             19541/udp
+mle             19788/udp
+iec-104-sec     19998/tcp
+dnp-sec         19999/tcp
+dnp-sec         19999/udp
+dnp             20000/tcp
+dnp             20000/udp
+microsan        20001/tcp
+microsan        20001/udp
+commtact-http   20002/tcp
+commtact-http   20002/udp
+commtact-https  20003/tcp
+commtact-https  20003/udp
+openwebnet      20005/tcp
+openwebnet      20005/udp
+ss-idi-disc     20012/udp
+ss-idi          20013/tcp
+opendeploy      20014/tcp
+opendeploy      20014/udp
+nburn-id        20034/tcp
+nburn-id        20034/udp
+tmophl7mts      20046/tcp
+tmophl7mts      20046/udp
+mountd          20048/tcp
+mountd          20048/udp
+nfsrdma         20049/tcp
+nfsrdma         20049/udp
+nfsrdma         20049/sctp
+avesterra       20057/tcp
+tolfab          20167/tcp
+tolfab          20167/udp
+ipdtp-port      20202/tcp
+ipdtp-port      20202/udp
+ipulse-ics      20222/tcp
+ipulse-ics      20222/udp
+emwavemsg       20480/tcp
+emwavemsg       20480/udp
+track           20670/tcp
+track           20670/udp
+athand-mmp      20999/tcp
+athand-mmp      20999/udp
+irtrans         21000/tcp
+irtrans         21000/udp
+notezilla-lan   21010/tcp
+trinket-agent   21212/tcp
+cohesity-agent  21213/tcp
+aigairserver    21221/tcp
+rdm-tfs         21553/tcp
+dfserver        21554/tcp
+dfserver        21554/udp
+vofr-gateway    21590/tcp
+vofr-gateway    21590/udp
+tvpm            21800/tcp
+tvpm            21800/udp
+webphone        21845/tcp
+webphone        21845/udp
+netspeak-is     21846/tcp
+netspeak-is     21846/udp
+netspeak-cs     21847/tcp
+netspeak-cs     21847/udp
+netspeak-acd    21848/tcp
+netspeak-acd    21848/udp
+netspeak-cps    21849/tcp
+netspeak-cps    21849/udp
+snapenetio      22000/tcp
+snapenetio      22000/udp
+optocontrol     22001/tcp
+optocontrol     22001/udp
+optohost002     22002/tcp
+optohost002     22002/udp
+optohost003     22003/tcp
+optohost003     22003/udp
+optohost004     22004/tcp
+optohost004     22004/udp
+optohost004     22005/tcp
+optohost004     22005/udp
+dcap            22125/tcp
+gsidcap         22128/tcp
+easyengine      22222/tcp
+wnn6            22273/tcp
+wnn6            22273/udp
+cis             22305/tcp
+cis             22305/udp
+shrewd-control  22335/tcp
+shrewd-stream   22335/udp
+cis-secure      22343/tcp
+cis-secure      22343/udp
+wibukey         22347/tcp
+wibukey         22347/udp
+codemeter       22350/tcp
+codemeter       22350/udp
+codemeter-cmwan 22351/tcp
+caldsoft-backup 22537/tcp
+vocaltec-wconf  22555/tcp
+vocaltec-phone  22555/udp
+talikaserver    22763/tcp
+talikaserver    22763/udp
+aws-brf         22800/tcp
+aws-brf         22800/udp
+brf-gw          22951/tcp
+brf-gw          22951/udp
+inovaport1      23000/tcp
+inovaport1      23000/udp
+inovaport2      23001/tcp
+inovaport2      23001/udp
+inovaport3      23002/tcp
+inovaport3      23002/udp
+inovaport4      23003/tcp
+inovaport4      23003/udp
+inovaport5      23004/tcp
+inovaport5      23004/udp
+inovaport6      23005/tcp
+inovaport6      23005/udp
+gntp            23053/tcp
+s102            23272/udp
+5afe-dir        23294/tcp
+5afe-disc       23294/udp
+elxmgmt         23333/tcp
+elxmgmt         23333/udp
+novar-dbase     23400/tcp
+novar-dbase     23400/udp
+novar-alarm     23401/tcp
+novar-alarm     23401/udp
+novar-global    23402/tcp
+novar-global    23402/udp
+aequus          23456/tcp
+aequus-alt      23457/tcp
+areaguard-neo   23546/tcp
+med-ltp         24000/tcp
+med-ltp         24000/udp
+med-fsp-rx      24001/tcp
+med-fsp-rx      24001/udp
+med-fsp-tx      24002/tcp
+med-fsp-tx      24002/udp
+med-supp        24003/tcp
+med-supp        24003/udp
+med-ovw         24004/tcp
+med-ovw         24004/udp
+med-ci          24005/tcp
+med-ci          24005/udp
+med-net-svc     24006/tcp
+med-net-svc     24006/udp
+filesphere      24242/tcp
+filesphere      24242/udp
+vista-4gl       24249/tcp
+vista-4gl       24249/udp
+ild             24321/tcp
+ild             24321/udp
+hid             24322/udp
+vrmg-ip         24323/tcp
+intel-rci       24386/tcp
+intel-rci       24386/udp
+tonidods        24465/tcp
+tonidods        24465/udp
+binkp           24554/tcp
+binkp           24554/udp
+bilobit         24577/tcp
+bilobit-update  24577/udp
+sdtvwcam        24666/tcp
+canditv         24676/tcp
+canditv         24676/udp
+flashfiler      24677/tcp
+flashfiler      24677/udp
+proactivate     24678/tcp
+proactivate     24678/udp
+tcc-http        24680/tcp
+tcc-http        24680/udp
+cslg            24754/tcp
+assoc-disc      24850/udp
+find            24922/tcp
+find            24922/udp
+icl-twobase1    25000/tcp
+icl-twobase1    25000/udp
+icl-twobase2    25001/tcp
+icl-twobase2    25001/udp
+icl-twobase3    25002/tcp
+icl-twobase3    25002/udp
+icl-twobase4    25003/tcp
+icl-twobase4    25003/udp
+icl-twobase5    25004/tcp
+icl-twobase5    25004/udp
+icl-twobase6    25005/tcp
+icl-twobase6    25005/udp
+icl-twobase7    25006/tcp
+icl-twobase7    25006/udp
+icl-twobase8    25007/tcp
+icl-twobase8    25007/udp
+icl-twobase9    25008/tcp
+icl-twobase9    25008/udp
+icl-twobase10   25009/tcp
+icl-twobase10   25009/udp
+rna             25471/sctp
+sauterdongle    25576/tcp
+idtp            25604/tcp
+vocaltec-hos    25793/tcp
+vocaltec-hos    25793/udp
+tasp-net        25900/tcp
+tasp-net        25900/udp
+niobserver      25901/tcp
+niobserver      25901/udp
+nilinkanalyst   25902/tcp
+nilinkanalyst   25902/udp
+niprobe         25903/tcp
+niprobe         25903/udp
+bf-game         25954/udp
+bf-master       25955/udp
+quake           26000/tcp
+quake           26000/udp
+scscp           26133/tcp
+scscp           26133/udp
+wnn6-ds         26208/tcp
+wnn6-ds         26208/udp
+cockroach       26257/tcp
+ezproxy         26260/tcp
+ezproxy         26260/udp
+ezmeeting       26261/tcp
+ezmeeting       26261/udp
+k3software-svr  26262/tcp
+k3software-svr  26262/udp
+k3software-cli  26263/tcp
+k3software-cli  26263/udp
+exoline-tcp     26486/tcp
+exoline-udp     26486/udp
+exoconfig       26487/tcp
+exoconfig       26487/udp
+exonet          26489/tcp
+exonet          26489/udp
+flex-lmadmin    27010/tcp
+mongodb         27017/tcp
+imagepump       27345/tcp
+imagepump       27345/udp
+jesmsjc         27442/tcp
+jesmsjc         27442/udp
+kopek-httphead  27504/tcp
+kopek-httphead  27504/udp
+ars-vista       27782/tcp
+ars-vista       27782/udp
+astrolink       27876/tcp
+tw-auth-key     27999/tcp
+tw-auth-key     27999/udp
+nxlmd           28000/tcp
+nxlmd           28000/udp
+pqsp            28001/tcp
+gruber-cashreg  28010/tcp
+a27-ran-ran     28119/udp
+voxelstorm      28200/tcp
+voxelstorm      28200/udp
+siemensgsm      28240/tcp
+siemensgsm      28240/udp
+bosswave        28589/tcp
+saltd-licensing 29000/tcp
+sgsap           29118/sctp
+otmp            29167/tcp
+otmp            29167/udp
+sbcap           29168/sctp
+iuhsctpassoc    29169/sctp
+bingbang        29999/tcp
+ndmps           30000/tcp
+pago-services1  30001/tcp
+pago-services1  30001/udp
+pago-services2  30002/tcp
+pago-services2  30002/udp
+amicon-fpsu-ra  30003/tcp
+amicon-fpsu-ra  30003/udp
+amicon-fpsu-s   30004/udp
+rwp             30100/tcp
+rwp             30100/sctp
+kingdomsonline  30260/tcp
+kingdomsonline  30260/udp
+gs-realtime     30400/tcp
+samsung-disc    30832/udp
+ovobs           30999/tcp
+ovobs           30999/udp
+ka-sddp         31016/tcp
+ka-kdp          31016/udp
+autotrac-acp    31020/tcp
+yawn            31029/udp
+pace-licensed   31400/tcp
+xqosd           31416/tcp
+xqosd           31416/udp
+tetrinet        31457/tcp
+tetrinet        31457/udp
+lm-mon          31620/tcp
+lm-mon          31620/udp
+dsx-monitor     31685/tcp
+gamesmith-port  31765/tcp
+gamesmith-port  31765/udp
+iceedcp-tx      31948/tcp
+iceedcp-tx      31948/udp
+iceedcp-rx      31949/tcp
+iceedcp-rx      31949/udp
+iracinghelper   32034/tcp
+iracinghelper   32034/udp
+t1distproc60    32249/tcp
+t1distproc60    32249/udp
+plex            32400/tcp
+apm-link        32483/tcp
+apm-link        32483/udp
+sec-ntb-clnt    32635/tcp
+sec-ntb-clnt    32635/udp
+DMExpress       32636/tcp
+DMExpress       32636/udp
+filenet-powsrm  32767/tcp
+filenet-powsrm  32767/udp
+filenet-tms     32768/tcp
+filenet-tms     32768/udp
+filenet-rpc     32769/tcp
+filenet-rpc     32769/udp
+filenet-nch     32770/tcp
+filenet-nch     32770/udp
+filenet-rmi     32771/tcp
+filenet-rmi     32771/udp
+filenet-pa      32772/tcp
+filenet-pa      32772/udp
+filenet-cm      32773/tcp
+filenet-cm      32773/udp
+filenet-re      32774/tcp
+filenet-re      32774/udp
+filenet-pch     32775/tcp
+filenet-pch     32775/udp
+filenet-peior   32776/tcp
+filenet-peior   32776/udp
+filenet-obrok   32777/tcp
+filenet-obrok   32777/udp
+mlsn            32801/tcp
+mlsn            32801/udp
+retp            32811/tcp
+idmgratm        32896/tcp
+idmgratm        32896/udp
+wg-endpt-comms  33000/tcp
+mysqlx          33060/tcp
+aurora-balaena  33123/tcp
+aurora-balaena  33123/udp
+diamondport     33331/tcp
+diamondport     33331/udp
+dgi-serv        33333/tcp
+speedtrace      33334/tcp
+speedtrace-disc 33334/udp
+traceroute      33434/tcp
+traceroute      33434/udp
+mtrace          33435/udp
+snip-slave      33656/tcp
+snip-slave      33656/udp
+digilent-adept  33890/tcp
+turbonote-2     34249/tcp
+turbonote-2     34249/udp
+p-net-local     34378/tcp
+p-net-local     34378/udp
+p-net-remote    34379/tcp
+p-net-remote    34379/udp
+dhanalakshmi    34567/tcp
+edi_service     34567/udp
+profinet-rt     34962/tcp
+profinet-rt     34962/udp
+profinet-rtm    34963/tcp
+profinet-rtm    34963/udp
+profinet-cm     34964/tcp
+profinet-cm     34964/udp
+ethercat        34980/tcp
+ethercat        34980/udp
+heathview       35000/tcp
+rt-viewer       35001/tcp
+rt-viewer       35001/udp
+rt-sound        35002/tcp
+rt-devicemapper 35003/tcp
+rt-classmanager 35004/tcp
+rt-classmanager 35004/udp
+rt-labtracker   35005/tcp
+rt-helper       35006/tcp
+axio-disc       35100/tcp
+axio-disc       35100/udp
+kitim           35354/tcp
+altova-lm       35355/tcp
+altova-lm-disc  35355/udp
+guttersnex      35356/tcp
+openstack-id    35357/tcp
+allpeers        36001/tcp
+allpeers        36001/udp
+wlcp            36411/udp
+s1-control      36412/sctp
+x2-control      36422/sctp
+slmap           36423/sctp
+nq-ap           36424/sctp
+m2ap            36443/sctp
+m3ap            36444/sctp
+xw-control      36462/sctp
+febooti-aw      36524/tcp
+observium-agent 36602/tcp
+mapx            36700/tcp
+kastenxpipe     36865/tcp
+kastenxpipe     36865/udp
+3gpp-w1ap       37472/sctp
+neckar          37475/tcp
+neckar          37475/udp
+gdrive-sync     37483/tcp
+eftp            37601/tcp
+unisys-eportal  37654/tcp
+unisys-eportal  37654/udp
+ivs-database    38000/tcp
+ivs-insertion   38001/tcp
+cresco-control  38002/tcp
+crescoctrl-disc 38002/udp
+galaxy7-data    38201/tcp
+galaxy7-data    38201/udp
+fairview        38202/tcp
+fairview        38202/udp
+agpolicy        38203/tcp
+agpolicy        38203/udp
+ng-control      38412/sctp
+xn-control      38422/sctp
+e1-interface    38462/sctp
+f1-control      38472/sctp
+sruth           38800/tcp
+secrmmsafecopya 38865/tcp
+turbonote-1     39681/tcp
+turbonote-1     39681/udp
+safetynetp      40000/tcp
+safetynetp      40000/udp
+k-patentssensor 40023/udp
+sptx            40404/tcp
+cscp            40841/tcp
+cscp            40841/udp
+csccredir       40842/tcp
+csccredir       40842/udp
+csccfirewall    40843/tcp
+csccfirewall    40843/udp
+ortec-disc      40853/udp
+fs-qos          41111/tcp
+fs-qos          41111/udp
+tentacle        41121/tcp
+z-wave-s        41230/tcp
+z-wave-s        41230/udp
+crestron-cip    41794/tcp
+crestron-cip    41794/udp
+crestron-ctp    41795/tcp
+crestron-ctp    41795/udp
+crestron-cips   41796/tcp
+crestron-ctps   41797/tcp
+candp           42508/tcp
+candp           42508/udp
+candrp          42509/tcp
+candrp          42509/udp
+caerpc          42510/tcp
+caerpc          42510/udp
+recvr-rc        43000/tcp
+recvr-rc-disc   43000/udp
+reachout        43188/tcp
+reachout        43188/udp
+ndm-agent-port  43189/tcp
+ndm-agent-port  43189/udp
+ip-provision    43190/tcp
+ip-provision    43190/udp
+noit-transport  43191/tcp
+shaperai        43210/tcp
+shaperai-disc   43210/udp
+hmip-routing    43438/udp
+eq3-update      43439/tcp
+eq3-config      43439/udp
+ew-mgmt         43440/tcp
+ew-disc-cmd     43440/udp
+ciscocsdb       43441/tcp
+ciscocsdb       43441/udp
+z-wave-tunnel   44123/tcp
+pmcd            44321/tcp
+pmcd            44321/udp
+pmcdproxy       44322/tcp
+pmcdproxy       44322/udp
+pmwebapi        44323/tcp
+cognex-dataman  44444/tcp
+acronis-backup  44445/tcp
+domiq           44544/udp
+rbr-debug       44553/tcp
+rbr-debug       44553/udp
+asihpi          44600/udp
+EtherNet-IP-2   44818/tcp
+EtherNet-IP-2   44818/udp
+m3da            44900/tcp
+m3da-disc       44900/udp
+asmp            45000/tcp
+asmp-mon        45000/udp
+asmps           45001/tcp
+rs-status       45002/tcp
+synctest        45045/tcp
+invision-ag     45054/tcp
+invision-ag     45054/udp
+cloudcheck      45514/tcp
+cloudcheck-ping 45514/udp
+eba             45678/tcp
+eba             45678/udp
+dai-shell       45824/tcp
+qdb2service     45825/tcp
+qdb2service     45825/udp
+ssr-servermgr   45966/tcp
+ssr-servermgr   45966/udp
+inedo           46336/tcp
+spremotetablet  46998/tcp
+mediabox        46999/tcp
+mediabox        46999/udp
+mbus            47000/tcp
+mbus            47000/udp
+winrm           47001/tcp
+jvl-mactalk     47100/udp
+dbbrowse        47557/tcp
+dbbrowse        47557/udp
+directplaysrvr  47624/tcp
+directplaysrvr  47624/udp
+ap              47806/tcp
+ap              47806/udp
+bacnet          47808/tcp
+bacnet          47808/udp
+presonus-ucnet  47809/udp
+nimcontroller   48000/tcp
+nimcontroller   48000/udp
+nimspooler      48001/tcp
+nimspooler      48001/udp
+nimhub          48002/tcp
+nimhub          48002/udp
+nimgtw          48003/tcp
+nimgtw          48003/udp
+nimbusdb        48004/tcp
+nimbusdbctrl    48005/tcp
+juka            48048/tcp
+3gpp-cbsp       48049/tcp
+weandsf         48050/tcp
+isnetserv       48128/tcp
+isnetserv       48128/udp
+blp5            48129/tcp
+blp5            48129/udp
+com-bardac-dw   48556/tcp
+com-bardac-dw   48556/udp
+iqobject        48619/tcp
+iqobject        48619/udp
+robotraconteur  48653/tcp
+robotraconteur  48653/udp
+matahari        49000/tcp
+nusrp           49001/tcp
+nusdp-disc      49001/udp
+inspider        49150/tcp
diff --git a/community-mod/iana-etc/sources b/community-mod/iana-etc/sources
new file mode 100644
index 0000000..1a193ec
--- /dev/null
+++ b/community-mod/iana-etc/sources
@@ -0,0 +1,2 @@
+files/protocols
+files/services
diff --git a/community-mod/iana-etc/version b/community-mod/iana-etc/version
new file mode 100644
index 0000000..38c50e8
--- /dev/null
+++ b/community-mod/iana-etc/version
@@ -0,0 +1 @@
+20200910 1
diff --git a/community-mod/icu/build b/community-mod/icu/build
new file mode 100755
index 0000000..39bb094
--- /dev/null
+++ b/community-mod/icu/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+# Change the order for checking installed compilers as
+# the ccache clang symlink might exist, but clang might not be installed.
+sed -i 's/clang gcc cc/cc clang gcc/g'       source/configure
+sed -i 's/clang++ g++ c++/c++ clang++ g++/g' source/configure
+
+source/configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/icu/checksums b/community-mod/icu/checksums
new file mode 100644
index 0000000..0127fd6
--- /dev/null
+++ b/community-mod/icu/checksums
@@ -0,0 +1 @@
+4cba7b7acd1d3c42c44bb0c14be6637098c7faf2b330ce876bc5f3b915d09745
diff --git a/community-mod/icu/sources b/community-mod/icu/sources
new file mode 100644
index 0000000..86d8a44
--- /dev/null
+++ b/community-mod/icu/sources
@@ -0,0 +1 @@
+https://github.com/unicode-org/icu/releases/download/release-69-1/icu4c-69_1-src.tgz
diff --git a/community-mod/icu/version b/community-mod/icu/version
new file mode 100644
index 0000000..4156826
--- /dev/null
+++ b/community-mod/icu/version
@@ -0,0 +1 @@
+69.1 1
diff --git a/community-mod/ii/build b/community-mod/ii/build
new file mode 100755
index 0000000..254cbe4
--- /dev/null
+++ b/community-mod/ii/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+sed -i 's/775/755/g' Makefile
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/ii/checksums b/community-mod/ii/checksums
new file mode 100644
index 0000000..9ae3ec4
--- /dev/null
+++ b/community-mod/ii/checksums
@@ -0,0 +1 @@
+b9d9e1eae25e63071960e921af8b217ab1abe64210bd290994aca178a8dc68d2  ii-1.8.tar.gz
diff --git a/community-mod/ii/sources b/community-mod/ii/sources
new file mode 100644
index 0000000..3ef7697
--- /dev/null
+++ b/community-mod/ii/sources
@@ -0,0 +1 @@
+https://dl.suckless.org/tools/ii-1.8.tar.gz
diff --git a/community-mod/ii/version b/community-mod/ii/version
new file mode 100644
index 0000000..33fba2c
--- /dev/null
+++ b/community-mod/ii/version
@@ -0,0 +1 @@
+1.8 1
diff --git a/community-mod/imagemagick/build b/community-mod/imagemagick/build
new file mode 100755
index 0000000..86d7859
--- /dev/null
+++ b/community-mod/imagemagick/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --disable-shared \
+    --disable-nls \
+    --without-modules \
+    --without-magick-plus-plus \
+    --without-perl \
+    --without-xml
+
+make
+make DESTDIR="$1" install-binPROGRAMS install-exec-local
+
+# Remove the rarely used library.
+rm -rf "$1/usr/lib"
diff --git a/community-mod/imagemagick/checksums b/community-mod/imagemagick/checksums
new file mode 100644
index 0000000..82cd6af
--- /dev/null
+++ b/community-mod/imagemagick/checksums
@@ -0,0 +1 @@
+7150558c6936367e745614c1a570fa24608ff779818fd5c03630cb10f7096d03
diff --git a/community-mod/imagemagick/depends b/community-mod/imagemagick/depends
new file mode 100644
index 0000000..3cbcf24
--- /dev/null
+++ b/community-mod/imagemagick/depends
@@ -0,0 +1,5 @@
+fontconfig
+libjpeg-turbo
+libpng
+libwebp
+pkgconf make
diff --git a/community-mod/imagemagick/sources b/community-mod/imagemagick/sources
new file mode 100644
index 0000000..2b031e3
--- /dev/null
+++ b/community-mod/imagemagick/sources
@@ -0,0 +1 @@
+https://download.imagemagick.org/ImageMagick/download/releases/ImageMagick-7.1.0-0.tar.xz
diff --git a/community-mod/imagemagick/version b/community-mod/imagemagick/version
new file mode 100644
index 0000000..09de5b3
--- /dev/null
+++ b/community-mod/imagemagick/version
@@ -0,0 +1 @@
+7.1.0-0 1
diff --git a/community-mod/imlib2/build b/community-mod/imlib2/build
new file mode 100755
index 0000000..bea0bc3
--- /dev/null
+++ b/community-mod/imlib2/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc/imlib2 \
+    --enable-visibility-hiding
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/imlib2/checksums b/community-mod/imlib2/checksums
new file mode 100644
index 0000000..36736d4
--- /dev/null
+++ b/community-mod/imlib2/checksums
@@ -0,0 +1 @@
+af30cf36e956febf18f9d33a81a4b43fea8f761ce74a67715d2ad157bb92c090
diff --git a/community-mod/imlib2/depends b/community-mod/imlib2/depends
new file mode 100644
index 0000000..97e0df8
--- /dev/null
+++ b/community-mod/imlib2/depends
@@ -0,0 +1,9 @@
+freetype-harfbuzz
+libXext
+
+# By default, gif and tiff are commented. You can enable support for
+# both formats by uncommenting giflib and tiff.
+# giflib
+libjpeg-turbo
+libpng
+# tiff
diff --git a/community-mod/imlib2/sources b/community-mod/imlib2/sources
new file mode 100644
index 0000000..6400eef
--- /dev/null
+++ b/community-mod/imlib2/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/enlightenment/imlib2-src/imlib2-1.7.1.tar.gz
diff --git a/community-mod/imlib2/version b/community-mod/imlib2/version
new file mode 100644
index 0000000..2817085
--- /dev/null
+++ b/community-mod/imlib2/version
@@ -0,0 +1 @@
+1.7.1 1
diff --git a/community-mod/intel-media-driver/build b/community-mod/intel-media-driver/build
new file mode 100755
index 0000000..2fa64ab
--- /dev/null
+++ b/community-mod/intel-media-driver/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+sed -i 's/SHARED/STATIC/' gmmlib/Source/GmmLib/CMakeLists.txt
+
+cd media
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+    -DBS_DIR_GMMLIB="$OLDPWD/gmmlib/Source/GmmLib" \
+    -DINSTALL_DRIVER_SYSCONF=OFF \
+    -DRUN_TEST_SUITE=OFF
+
+cmake --build   build
+cmake --install build
+
+rm -rf "$1/usr/include/igdgmm" \
+       "$1/usr/lib/pkgconfig/igdgmm.pc"
diff --git a/community-mod/intel-media-driver/checksums b/community-mod/intel-media-driver/checksums
new file mode 100644
index 0000000..7fdc8cf
--- /dev/null
+++ b/community-mod/intel-media-driver/checksums
@@ -0,0 +1,2 @@
+f2374c29bc46dab73e0ab78c86620a2b644bd6989d33327fe3ba36c4b9d0f82f
+d54d547f9f9e74196dead6a338923039ea10c859f1f693f33f10be1562b81d6d
diff --git a/community-mod/intel-media-driver/depends b/community-mod/intel-media-driver/depends
new file mode 100644
index 0000000..fe1f7b3
--- /dev/null
+++ b/community-mod/intel-media-driver/depends
@@ -0,0 +1,3 @@
+cmake make
+libpciaccess
+libva 
diff --git a/community-mod/intel-media-driver/sources b/community-mod/intel-media-driver/sources
new file mode 100644
index 0000000..e6349f1
--- /dev/null
+++ b/community-mod/intel-media-driver/sources
@@ -0,0 +1,2 @@
+https://github.com/intel/media-driver/archive/intel-media-21.1.2.tar.gz  media
+https://github.com/intel/gmmlib/archive/intel-gmmlib-20.4.1.tar.gz       gmmlib
diff --git a/community-mod/intel-media-driver/version b/community-mod/intel-media-driver/version
new file mode 100644
index 0000000..7cf5aa8
--- /dev/null
+++ b/community-mod/intel-media-driver/version
@@ -0,0 +1 @@
+21.1.2 1
diff --git a/community-mod/ioping/build b/community-mod/ioping/build
new file mode 100755
index 0000000..e34b16a
--- /dev/null
+++ b/community-mod/ioping/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make PREFIX="$1/usr" install
diff --git a/community-mod/ioping/checksums b/community-mod/ioping/checksums
new file mode 100644
index 0000000..c2e5029
--- /dev/null
+++ b/community-mod/ioping/checksums
@@ -0,0 +1 @@
+d3e4497c653a1e96df67c72ce2b70da18e9f5e3b93179a5bb57a6e30ceacfa75
diff --git a/community-mod/ioping/sources b/community-mod/ioping/sources
new file mode 100644
index 0000000..77d47bd
--- /dev/null
+++ b/community-mod/ioping/sources
@@ -0,0 +1 @@
+https://github.com/koct9i/ioping/archive/v1.2.tar.gz
diff --git a/community-mod/ioping/version b/community-mod/ioping/version
new file mode 100644
index 0000000..f76d834
--- /dev/null
+++ b/community-mod/ioping/version
@@ -0,0 +1 @@
+1.2 1
diff --git a/community-mod/iosevka-nerd-fonts/build b/community-mod/iosevka-nerd-fonts/build
new file mode 100755
index 0000000..c750bf6
--- /dev/null
+++ b/community-mod/iosevka-nerd-fonts/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+find ./ -name '*Windows*' -exec rm -rf {} +
+
+install -dm755          "$1/usr/share/fonts/TTF"
+install -Dm644 -- *.ttf "$1/usr/share/fonts/TTF"
diff --git a/community-mod/iosevka-nerd-fonts/checksums b/community-mod/iosevka-nerd-fonts/checksums
new file mode 100644
index 0000000..6f75a7e
--- /dev/null
+++ b/community-mod/iosevka-nerd-fonts/checksums
@@ -0,0 +1 @@
+6bd29ef886b808d1d76dd85f82b8823452265fda582801734aab6f9460270de3  Iosevka.zip
diff --git a/community-mod/iosevka-nerd-fonts/sources b/community-mod/iosevka-nerd-fonts/sources
new file mode 100644
index 0000000..7c0e50b
--- /dev/null
+++ b/community-mod/iosevka-nerd-fonts/sources
@@ -0,0 +1 @@
+https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/Iosevka.zip
diff --git a/community-mod/iosevka-nerd-fonts/version b/community-mod/iosevka-nerd-fonts/version
new file mode 100644
index 0000000..628fcde
--- /dev/null
+++ b/community-mod/iosevka-nerd-fonts/version
@@ -0,0 +1 @@
+2.1.0 2
diff --git a/community-mod/iproute2/build b/community-mod/iproute2/build
new file mode 100755
index 0000000..3a8f75b
--- /dev/null
+++ b/community-mod/iproute2/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+patch -p1 < 0001-make-iproute2-fhs-compliant.patch
+
+# Fix hardcoded `gcc` ( there is HOST_CC := $(CC) on line after this,
+# but upstream seems to use it inconsistently ). Otherwise build fails on
+# `clang` based systems with no `gcc` installed.
+sed -i 's/CC := gcc/CC ?= gcc/' Makefile
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" SBINDIR="/usr/bin" install
+
+install -Dm0644 include/libnetlink.h "$1/usr/include/libnetlink.h"
+install -Dm0644 lib/libnetlink.a "$1/usr/lib/libnetlink.a"
diff --git a/community-mod/iproute2/checksums b/community-mod/iproute2/checksums
new file mode 100644
index 0000000..f066b17
--- /dev/null
+++ b/community-mod/iproute2/checksums
@@ -0,0 +1,2 @@
+72a2e53774cac9e65f7b617deebb2059f87e8960d6e9713e4d788cea966f1b36
+f60fefe4c17d3b768824bb50ae6416292bcebba06d73452e23f4147b46b827d3
diff --git a/community-mod/iproute2/depends b/community-mod/iproute2/depends
new file mode 100644
index 0000000..7babf53
--- /dev/null
+++ b/community-mod/iproute2/depends
@@ -0,0 +1,2 @@
+iptables
+libelf
diff --git a/community-mod/iproute2/patches/0001-make-iproute2-fhs-compliant.patch b/community-mod/iproute2/patches/0001-make-iproute2-fhs-compliant.patch
new file mode 100644
index 0000000..ef6a077
--- /dev/null
+++ b/community-mod/iproute2/patches/0001-make-iproute2-fhs-compliant.patch
@@ -0,0 +1,101 @@
+From f0624f6cc656cb177b64e2664f2a806221bfab58 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Thu, 28 Jul 2016 08:49:20 +0200
+Subject: [PATCH 1/1] make iproute2 fhs compliant
+
+Signed-off-by: Christian Hesse <mail@eworm.de>
+---
+ Makefile       |  2 +-
+ netem/Makefile |  4 ++--
+ tc/q_netem.c   |  2 +-
+ tc/tc_util.c   | 15 +++++++++++++++
+ tc/tc_util.h   |  1 +
+ 5 files changed, 20 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index eb571a5..db0a04c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,7 +14,7 @@ DBM_INCLUDE:=$(DESTDIR)/usr/include
+ 
+ SHARED_LIBS = y
+ 
+-DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\"
++DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" -DDATADIR=\"$(DATADIR)\"
+ ifneq ($(SHARED_LIBS),y)
+ DEFINES+= -DNO_SHARED_LIBS
+ endif
+diff --git a/netem/Makefile b/netem/Makefile
+index e52e125..5b4d283 100644
+--- a/netem/Makefile
++++ b/netem/Makefile
+@@ -20,9 +20,9 @@ stats: stats.c
+ 	$(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm
+ 
+ install: all
+-	mkdir -p $(DESTDIR)$(LIBDIR)/tc
++	mkdir -p $(DESTDIR)$(DATADIR)/tc
+ 	for i in $(DISTDATA); \
+-	do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \
++	do install -m 644 $$i $(DESTDIR)$(DATADIR)/tc; \
+ 	done
+ 
+ clean:
+diff --git a/tc/q_netem.c b/tc/q_netem.c
+index 8fe2204..a15a5c7 100644
+--- a/tc/q_netem.c
++++ b/tc/q_netem.c
+@@ -113,7 +113,7 @@ static int get_distribution(const char *type, __s16 *data, int maxdata)
+ 	char *line = NULL;
+ 	char name[128];
+ 
+-	snprintf(name, sizeof(name), "%s/%s.dist", get_tc_lib(), type);
++	snprintf(name, sizeof(name), "%s/%s.dist", get_tc_datadir(), type);
+ 	if ((f = fopen(name, "r")) == NULL) {
+ 		fprintf(stderr, "No distribution data for %s (%s: %s)\n",
+ 			type, name, strerror(errno));
+diff --git a/tc/tc_util.c b/tc/tc_util.c
+index afc4cf5..728b854 100644
+--- a/tc/tc_util.c
++++ b/tc/tc_util.c
+@@ -32,6 +32,10 @@
+ #define LIBDIR "/usr/lib"
+ #endif
+ 
++#ifndef DATADIR
++#define DATADIR "/usr/share"
++#endif
++
+ static struct db_names *cls_names;
+ 
+ #define NAMES_DB "/etc/iproute2/tc_cls"
+@@ -73,6 +77,17 @@ const char *get_tc_lib(void)
+ 	return lib_dir;
+ }
+ 
++const char *get_tc_datadir(void)
++{
++	const char *data_dir;
++
++	data_dir = getenv("TC_DATA_DIR");
++	if (!data_dir)
++		data_dir = DATADIR "/tc/";
++
++	return data_dir;
++}
++
+ int get_qdisc_handle(__u32 *h, const char *str)
+ {
+ 	__u32 maj;
+diff --git a/tc/tc_util.h b/tc/tc_util.h
+index 61e60b1..6d448de 100644
+--- a/tc/tc_util.h
++++ b/tc/tc_util.h
+@@ -55,6 +55,7 @@ struct exec_util {
+ };
+ 
+ const char *get_tc_lib(void);
++const char *get_tc_datadir(void);
+ 
+ struct qdisc_util *get_qdisc_kind(const char *str);
+ struct filter_util *get_filter_kind(const char *str);
diff --git a/community-mod/iproute2/sources b/community-mod/iproute2/sources
new file mode 100644
index 0000000..31c676d
--- /dev/null
+++ b/community-mod/iproute2/sources
@@ -0,0 +1,2 @@
+https://www.kernel.org/pub/linux/utils/net/iproute2/iproute2-5.13.0.tar.xz
+patches/0001-make-iproute2-fhs-compliant.patch
diff --git a/community-mod/iproute2/version b/community-mod/iproute2/version
new file mode 100644
index 0000000..5967235
--- /dev/null
+++ b/community-mod/iproute2/version
@@ -0,0 +1 @@
+5.13.0 1 
diff --git a/community-mod/iptables/build b/community-mod/iptables/build
new file mode 100755
index 0000000..68ed828
--- /dev/null
+++ b/community-mod/iptables/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/sbin \
+    --enable-libipq \
+    --with-xtlibdir=/lib/xtables \
+    --disable-nftables
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/iptables/checksums b/community-mod/iptables/checksums
new file mode 100644
index 0000000..ecfb259
--- /dev/null
+++ b/community-mod/iptables/checksums
@@ -0,0 +1 @@
+c109c96bb04998cd44156622d36f8e04b140701ec60531a10668cfdff5e8d8f0
diff --git a/community-mod/iptables/sources b/community-mod/iptables/sources
new file mode 100644
index 0000000..3c2e40f
--- /dev/null
+++ b/community-mod/iptables/sources
@@ -0,0 +1 @@
+https://www.netfilter.org/projects/iptables/files/iptables-1.8.7.tar.bz2
diff --git a/community-mod/iptables/version b/community-mod/iptables/version
new file mode 100644
index 0000000..6b7ba1c
--- /dev/null
+++ b/community-mod/iptables/version
@@ -0,0 +1 @@
+1.8.7 1 
diff --git a/community-mod/iputils/build b/community-mod/iputils/build
new file mode 100755
index 0000000..0cbc6ed
--- /dev/null
+++ b/community-mod/iputils/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+sed -i 's/cap_setuid/cap_setuserid/g' ninfod/ninfod.c
+
+meson \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    -DUSE_CAP=true \
+    -DNO_SETCAP_OR_SUID=true \
+    -DBUILD_MANS=false \
+    -Duse_gettext=false \
+    . output
+
+ninja -C output
+ninja -C output install
+
+ln -s tracepath "$1/usr/bin/tracepath6"
+ln -s ping      "$1/usr/bin/ping6"
diff --git a/community-mod/iputils/checksums b/community-mod/iputils/checksums
new file mode 100644
index 0000000..2e594b4
--- /dev/null
+++ b/community-mod/iputils/checksums
@@ -0,0 +1 @@
+3f557ecfd2ace873801231d2c1f42de73ced9fbc1ef3a438d847688b5fb0e8ab
diff --git a/community-mod/iputils/depends b/community-mod/iputils/depends
new file mode 100644
index 0000000..fb25d87
--- /dev/null
+++ b/community-mod/iputils/depends
@@ -0,0 +1,2 @@
+libcap
+meson make
diff --git a/community-mod/iputils/post-install b/community-mod/iputils/post-install
new file mode 100755
index 0000000..c9a6976
--- /dev/null
+++ b/community-mod/iputils/post-install
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+setcap cap_net_raw+p /usr/bin/ping
+setcap cap_net_raw+p /usr/bin/clockdiff
+setcap cap_net_raw+p /usr/bin/arping
diff --git a/community-mod/iputils/sources b/community-mod/iputils/sources
new file mode 100644
index 0000000..64a5945
--- /dev/null
+++ b/community-mod/iputils/sources
@@ -0,0 +1 @@
+https://github.com/iputils/iputils/archive/20210202.tar.gz
diff --git a/community-mod/iputils/version b/community-mod/iputils/version
new file mode 100644
index 0000000..8f874ba
--- /dev/null
+++ b/community-mod/iputils/version
@@ -0,0 +1 @@
+20210202 1
diff --git a/community-mod/irssi/build b/community-mod/irssi/build
new file mode 100755
index 0000000..89969dc
--- /dev/null
+++ b/community-mod/irssi/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --with-perl=module \
+    --with-otr=no \
+    --with-proxy \
+    --enable-true-color
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/irssi/checksums b/community-mod/irssi/checksums
new file mode 100644
index 0000000..c7963d6
--- /dev/null
+++ b/community-mod/irssi/checksums
@@ -0,0 +1 @@
+29cbb746d7e57591d8fcf799406fb28cb7c2d734bc4288cbb8b4c4e05cf99c25
diff --git a/community-mod/irssi/depends b/community-mod/irssi/depends
new file mode 100644
index 0000000..3466754
--- /dev/null
+++ b/community-mod/irssi/depends
@@ -0,0 +1,4 @@
+glib
+libressl
+ncurses
+perl
diff --git a/community-mod/irssi/sources b/community-mod/irssi/sources
new file mode 100644
index 0000000..aaa99ab
--- /dev/null
+++ b/community-mod/irssi/sources
@@ -0,0 +1 @@
+https://github.com/irssi/irssi/releases/download/1.2.3/irssi-1.2.3.tar.gz
diff --git a/community-mod/irssi/version b/community-mod/irssi/version
new file mode 100644
index 0000000..883a7ec
--- /dev/null
+++ b/community-mod/irssi/version
@@ -0,0 +1 @@
+1.2.3 1
diff --git a/community-mod/jansson/build b/community-mod/jansson/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/community-mod/jansson/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/jansson/checksums b/community-mod/jansson/checksums
new file mode 100644
index 0000000..e5f59ca
--- /dev/null
+++ b/community-mod/jansson/checksums
@@ -0,0 +1 @@
+f4f377da17b10201a60c1108613e78ee15df6b12016b116b6de42209f47a474f
diff --git a/community-mod/jansson/sources b/community-mod/jansson/sources
new file mode 100644
index 0000000..c99a294
--- /dev/null
+++ b/community-mod/jansson/sources
@@ -0,0 +1 @@
+https://digip.org/jansson/releases/jansson-2.13.1.tar.gz
diff --git a/community-mod/jansson/version b/community-mod/jansson/version
new file mode 100644
index 0000000..002c2af
--- /dev/null
+++ b/community-mod/jansson/version
@@ -0,0 +1 @@
+2.13.1 1
diff --git a/community-mod/jbig2dec/build b/community-mod/jbig2dec/build
new file mode 100755
index 0000000..0195925
--- /dev/null
+++ b/community-mod/jbig2dec/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+autoreconf -fi
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/jbig2dec/checksums b/community-mod/jbig2dec/checksums
new file mode 100644
index 0000000..b0b56ff
--- /dev/null
+++ b/community-mod/jbig2dec/checksums
@@ -0,0 +1 @@
+279476695b38f04939aa59d041be56f6bade3422003a406a85e9792c27118a37
diff --git a/community-mod/jbig2dec/depends b/community-mod/jbig2dec/depends
new file mode 100644
index 0000000..e46c350
--- /dev/null
+++ b/community-mod/jbig2dec/depends
@@ -0,0 +1,4 @@
+autoconf make
+automake make
+libpng
+libtool make
diff --git a/community-mod/jbig2dec/sources b/community-mod/jbig2dec/sources
new file mode 100644
index 0000000..4576386
--- /dev/null
+++ b/community-mod/jbig2dec/sources
@@ -0,0 +1 @@
+https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9531/jbig2dec-0.19.tar.gz
diff --git a/community-mod/jbig2dec/version b/community-mod/jbig2dec/version
new file mode 100644
index 0000000..002b377
--- /dev/null
+++ b/community-mod/jbig2dec/version
@@ -0,0 +1 @@
+0.19 1
diff --git a/community-mod/jq/build b/community-mod/jq/build
new file mode 100755
index 0000000..8bfadcd
--- /dev/null
+++ b/community-mod/jq/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-maintainer-mode \
+    --with-oniguruma=no
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/jq/checksums b/community-mod/jq/checksums
new file mode 100644
index 0000000..66fd482
--- /dev/null
+++ b/community-mod/jq/checksums
@@ -0,0 +1 @@
+5de8c8e29aaa3fb9cc6b47bb27299f271354ebb72514e3accadc7d38b5bbaa72  jq-1.6.tar.gz
diff --git a/community-mod/jq/sources b/community-mod/jq/sources
new file mode 100644
index 0000000..f081d4d
--- /dev/null
+++ b/community-mod/jq/sources
@@ -0,0 +1 @@
+https://github.com/stedolan/jq/releases/download/jq-1.6/jq-1.6.tar.gz
diff --git a/community-mod/jq/version b/community-mod/jq/version
new file mode 100644
index 0000000..1b2c330
--- /dev/null
+++ b/community-mod/jq/version
@@ -0,0 +1 @@
+1.6 2 
diff --git a/community-mod/json-c/build b/community-mod/json-c/build
new file mode 100755
index 0000000..7f4f480
--- /dev/null
+++ b/community-mod/json-c/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=lib \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DBUILD_TESTING=OFF
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/json-c/checksums b/community-mod/json-c/checksums
new file mode 100644
index 0000000..7f35ddc
--- /dev/null
+++ b/community-mod/json-c/checksums
@@ -0,0 +1 @@
+4ba9a090a42cf1e12b84c64e4464bb6fb893666841d5843cc5bef90774028882  json-c-0.15-20200726.tar.gz
diff --git a/community-mod/json-c/depends b/community-mod/json-c/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/json-c/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/json-c/sources b/community-mod/json-c/sources
new file mode 100644
index 0000000..d72f151
--- /dev/null
+++ b/community-mod/json-c/sources
@@ -0,0 +1 @@
+https://github.com/json-c/json-c/archive/json-c-0.15-20200726.tar.gz
diff --git a/community-mod/json-c/version b/community-mod/json-c/version
new file mode 100644
index 0000000..a78cbfc
--- /dev/null
+++ b/community-mod/json-c/version
@@ -0,0 +1 @@
+0.15 1
diff --git a/community-mod/keyutils/build b/community-mod/keyutils/build
new file mode 100755
index 0000000..1243a93
--- /dev/null
+++ b/community-mod/keyutils/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+make \
+    CPPFLAGS="$CPPFLAGS -I." \
+    CFLAGS="$CFLAGS" \
+    LDFLAGS="$LDFLAGS"
+
+make \
+    DESTDIR="$1" \
+    BINDIR=/usr/bin \
+    SBINDIR=/usr/bin \
+    LIBDIR=/usr/lib \
+    install
diff --git a/community-mod/keyutils/checksums b/community-mod/keyutils/checksums
new file mode 100644
index 0000000..663e472
--- /dev/null
+++ b/community-mod/keyutils/checksums
@@ -0,0 +1 @@
+a61d5706136ae4c05bd48f86186bcfdbd88dd8bd5107e3e195c924cfc1b39bb4
diff --git a/community-mod/keyutils/sources b/community-mod/keyutils/sources
new file mode 100644
index 0000000..11d6f9d
--- /dev/null
+++ b/community-mod/keyutils/sources
@@ -0,0 +1 @@
+https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/keyutils-1.6.3.tar.gz
diff --git a/community-mod/keyutils/version b/community-mod/keyutils/version
new file mode 100644
index 0000000..05465e0
--- /dev/null
+++ b/community-mod/keyutils/version
@@ -0,0 +1 @@
+1.6.3 1
diff --git a/community-mod/kirc/build b/community-mod/kirc/build
new file mode 100755
index 0000000..458a119
--- /dev/null
+++ b/community-mod/kirc/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make 
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/kirc/checksums b/community-mod/kirc/checksums
new file mode 100644
index 0000000..5b58e2f
--- /dev/null
+++ b/community-mod/kirc/checksums
@@ -0,0 +1 @@
+ed189f0553c148c4fff9a43b4433d861d2fde9b53c7b96eb9b29ef6b07229720
diff --git a/community-mod/kirc/patches/channel.patch b/community-mod/kirc/patches/channel.patch
new file mode 100644
index 0000000..3f42e1b
--- /dev/null
+++ b/community-mod/kirc/patches/channel.patch
@@ -0,0 +1,13 @@
+diff --git a/kirc.c b/kirc.c
+index 3396610..0fc28b5 100644
+--- a/kirc.c
++++ b/kirc.c
+@@ -19,7 +19,7 @@
+ #define CHA_MAX              200                 /* max channel length */
+ 
+ static int            conn;                      /* connection socket */
+-static char           chan_default[MSG_MAX];     /* default PRIVMSG channel */
++static char           chan_default[MSG_MAX] = "kisslinux";     /* default PRIVMSG channel */
+ static int            verb = 0;                  /* verbose output */
+ static int            sasl = 0;                  /* SASL method */
+ static size_t         gutl = 20;                 /* max printed nick chars */
diff --git a/community-mod/kirc/sources b/community-mod/kirc/sources
new file mode 100644
index 0000000..105133e
--- /dev/null
+++ b/community-mod/kirc/sources
@@ -0,0 +1 @@
+https://github.com/mcpcpc/kirc/archive/0.2.6.tar.gz
diff --git a/community-mod/kirc/version b/community-mod/kirc/version
new file mode 100644
index 0000000..193c903
--- /dev/null
+++ b/community-mod/kirc/version
@@ -0,0 +1 @@
+0.2.6 1
diff --git a/community-mod/kiss-encryption/build b/community-mod/kiss-encryption/build
new file mode 100755
index 0000000..d5f438d
--- /dev/null
+++ b/community-mod/kiss-encryption/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" install
diff --git a/community-mod/kiss-encryption/checksums b/community-mod/kiss-encryption/checksums
new file mode 100644
index 0000000..c6bacb4
--- /dev/null
+++ b/community-mod/kiss-encryption/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/illiliti/kiss-encryption
diff --git a/community-mod/kiss-encryption/sources b/community-mod/kiss-encryption/sources
new file mode 100644
index 0000000..a381a33
--- /dev/null
+++ b/community-mod/kiss-encryption/sources
@@ -0,0 +1 @@
+git+https://github.com/illiliti/kiss-encryption
diff --git a/community-mod/kiss-encryption/version b/community-mod/kiss-encryption/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/kiss-encryption/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/kmod/build b/community-mod/kmod/build
new file mode 100755
index 0000000..63b378a
--- /dev/null
+++ b/community-mod/kmod/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --with-xz \
+    --with-zlib
+
+make
+make DESTDIR="$1" install
+
+for tool in lsmod insmod rmmod depmod modinfo modprobe; do
+    ln -s kmod "$1/usr/bin/$tool"
+done
diff --git a/community-mod/kmod/checksums b/community-mod/kmod/checksums
new file mode 100644
index 0000000..4e041ad
--- /dev/null
+++ b/community-mod/kmod/checksums
@@ -0,0 +1 @@
+0b80eea7aa184ac6fd20cafa2a1fdf290ffecc70869a797079e2cc5c6225a52a
diff --git a/community-mod/kmod/depends b/community-mod/kmod/depends
new file mode 100644
index 0000000..dd4b081
--- /dev/null
+++ b/community-mod/kmod/depends
@@ -0,0 +1,3 @@
+pkgconf make
+xz
+zlib
diff --git a/community-mod/kmod/sources b/community-mod/kmod/sources
new file mode 100644
index 0000000..0c77e47
--- /dev/null
+++ b/community-mod/kmod/sources
@@ -0,0 +1 @@
+https://www.kernel.org/pub/linux/utils/kernel/kmod/kmod-29.tar.xz
diff --git a/community-mod/kmod/version b/community-mod/kmod/version
new file mode 100644
index 0000000..f80f8f9
--- /dev/null
+++ b/community-mod/kmod/version
@@ -0,0 +1 @@
+29 1
diff --git a/community-mod/lagrange/build b/community-mod/lagrange/build
new file mode 100755
index 0000000..57f2f07
--- /dev/null
+++ b/community-mod/lagrange/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/lagrange/checksums b/community-mod/lagrange/checksums
new file mode 100644
index 0000000..dda7601
--- /dev/null
+++ b/community-mod/lagrange/checksums
@@ -0,0 +1 @@
+3be4d5b383726f725301bf757e06dcd2d30de1aa50431943387c9aa0df8d0a3f
diff --git a/community-mod/lagrange/depends b/community-mod/lagrange/depends
new file mode 100644
index 0000000..56c25f5
--- /dev/null
+++ b/community-mod/lagrange/depends
@@ -0,0 +1,5 @@
+cmake make
+libressl
+libunistring
+pcre
+sdl2
diff --git a/community-mod/lagrange/sources b/community-mod/lagrange/sources
new file mode 100644
index 0000000..9152193
--- /dev/null
+++ b/community-mod/lagrange/sources
@@ -0,0 +1 @@
+https://github.com/skyjake/lagrange/releases/download/v1.5.2/lagrange-1.5.2.tar.gz
diff --git a/community-mod/lagrange/version b/community-mod/lagrange/version
new file mode 100644
index 0000000..5b702ae
--- /dev/null
+++ b/community-mod/lagrange/version
@@ -0,0 +1 @@
+1.5.2 1
diff --git a/community-mod/lariza/build b/community-mod/lariza/build
new file mode 100755
index 0000000..8e14c95
--- /dev/null
+++ b/community-mod/lariza/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" prefix=/usr install
diff --git a/community-mod/lariza/checksums b/community-mod/lariza/checksums
new file mode 100644
index 0000000..cd79198
--- /dev/null
+++ b/community-mod/lariza/checksums
@@ -0,0 +1 @@
+9faf06a8f4d87b3a63eb3c1e22dcbc7d8361c054357637ae7e870b9212372a13
diff --git a/community-mod/lariza/depends b/community-mod/lariza/depends
new file mode 100644
index 0000000..d5d0765
--- /dev/null
+++ b/community-mod/lariza/depends
@@ -0,0 +1 @@
+webkit2gtk
diff --git a/community-mod/lariza/sources b/community-mod/lariza/sources
new file mode 100644
index 0000000..9f4fb96
--- /dev/null
+++ b/community-mod/lariza/sources
@@ -0,0 +1 @@
+https://www.uninformativ.de/git/lariza/archives/lariza-v21.06.tar.gz
diff --git a/community-mod/lariza/version b/community-mod/lariza/version
new file mode 100644
index 0000000..5afa71a
--- /dev/null
+++ b/community-mod/lariza/version
@@ -0,0 +1 @@
+21.06 1
diff --git a/community-mod/less/build b/community-mod/less/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/less/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/less/checksums b/community-mod/less/checksums
new file mode 100644
index 0000000..a6ae059
--- /dev/null
+++ b/community-mod/less/checksums
@@ -0,0 +1 @@
+ce5b6d2b9fc4442d7a07c93ab128d2dff2ce09a1d4f2d055b95cf28dd0dc9a9a
diff --git a/community-mod/less/depends b/community-mod/less/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/less/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/less/sources b/community-mod/less/sources
new file mode 100644
index 0000000..53b3990
--- /dev/null
+++ b/community-mod/less/sources
@@ -0,0 +1 @@
+https://www.greenwoodsoftware.com/less/less-563.tar.gz
diff --git a/community-mod/less/version b/community-mod/less/version
new file mode 100644
index 0000000..3402310
--- /dev/null
+++ b/community-mod/less/version
@@ -0,0 +1 @@
+563 1 
diff --git a/community-mod/lesstif/build b/community-mod/lesstif/build
new file mode 100755
index 0000000..b3f02a1
--- /dev/null
+++ b/community-mod/lesstif/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+
+make
+make DESTDIR="$1" install
+
+rm -rf "$1/usr/LessTif"
diff --git a/community-mod/lesstif/checksums b/community-mod/lesstif/checksums
new file mode 100644
index 0000000..daffb56
--- /dev/null
+++ b/community-mod/lesstif/checksums
@@ -0,0 +1 @@
+eb4aa38858c29a4a3bcf605cfe7d91ca41f4522d78d770f69721e6e3a4ecf7e3
diff --git a/community-mod/lesstif/depends b/community-mod/lesstif/depends
new file mode 100644
index 0000000..ca8a23c
--- /dev/null
+++ b/community-mod/lesstif/depends
@@ -0,0 +1,6 @@
+freetype-harfbuzz
+libICE
+libSM
+libX11
+libXext
+libXt
diff --git a/community-mod/lesstif/sources b/community-mod/lesstif/sources
new file mode 100644
index 0000000..38f7399
--- /dev/null
+++ b/community-mod/lesstif/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/lesstif/lesstif-0.95.2.tar.bz2
diff --git a/community-mod/lesstif/version b/community-mod/lesstif/version
new file mode 100644
index 0000000..22e5d0a
--- /dev/null
+++ b/community-mod/lesstif/version
@@ -0,0 +1 @@
+0.95.2 1
diff --git a/community-mod/libXslt/build b/community-mod/libXslt/build
new file mode 100755
index 0000000..270ae64
--- /dev/null
+++ b/community-mod/libXslt/build
@@ -0,0 +1 @@
+#!/bin/sh -e
diff --git a/community-mod/libXslt/post-install b/community-mod/libXslt/post-install
new file mode 100755
index 0000000..6af3fe4
--- /dev/null
+++ b/community-mod/libXslt/post-install
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+cat <<EOF
+NOTE: The 'libXslt' package has been renamed to 'libxslt'. 'libxslt' must be \
+built and this stub package be removed by running the following command:
+'kiss b libxslt && KISS_FORCE=1 kiss r libXslt'
+EOF
diff --git a/community-mod/libXslt/version b/community-mod/libXslt/version
new file mode 100644
index 0000000..081b3eb
--- /dev/null
+++ b/community-mod/libXslt/version
@@ -0,0 +1 @@
+1.1.34 2
diff --git a/community-mod/libaio/build b/community-mod/libaio/build
new file mode 100755
index 0000000..133d511
--- /dev/null
+++ b/community-mod/libaio/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make prefix="$1/usr" install
diff --git a/community-mod/libaio/checksums b/community-mod/libaio/checksums
new file mode 100644
index 0000000..8494bb9
--- /dev/null
+++ b/community-mod/libaio/checksums
@@ -0,0 +1 @@
+ab0462f2c9d546683e5147b1ce9c195fe95d07fac5bf362f6c01637955c3b492  libaio-0.3.112.tar.gz
diff --git a/community-mod/libaio/sources b/community-mod/libaio/sources
new file mode 100644
index 0000000..08e538e
--- /dev/null
+++ b/community-mod/libaio/sources
@@ -0,0 +1 @@
+https://releases.pagure.org/libaio/libaio-0.3.112.tar.gz
diff --git a/community-mod/libaio/version b/community-mod/libaio/version
new file mode 100644
index 0000000..ba67d19
--- /dev/null
+++ b/community-mod/libaio/version
@@ -0,0 +1 @@
+0.3.112 1 
diff --git a/community-mod/libarchive/build b/community-mod/libarchive/build
new file mode 100755
index 0000000..6e30984
--- /dev/null
+++ b/community-mod/libarchive/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --without-nettle \
+    --without-openssl \
+    --without-xml2 \
+    --without-expat
+
+make
+make DESTDIR="$1" install
+
+ln -s bsdcat  "$1/usr/bin/cat"
+ln -s bsdcpio "$1/usr/bin/cpio"
+ln -s bsdtar  "$1/usr/bin/tar"
diff --git a/community-mod/libarchive/checksums b/community-mod/libarchive/checksums
new file mode 100644
index 0000000..c5ca63f
--- /dev/null
+++ b/community-mod/libarchive/checksums
@@ -0,0 +1 @@
+0e17d3a8d0b206018693b27f08029b598f6ef03600c2b5d10c94ce58692e299b
diff --git a/community-mod/libarchive/depends b/community-mod/libarchive/depends
new file mode 100644
index 0000000..e57c894
--- /dev/null
+++ b/community-mod/libarchive/depends
@@ -0,0 +1,3 @@
+bzip2
+xz
+zlib
diff --git a/community-mod/libarchive/sources b/community-mod/libarchive/sources
new file mode 100644
index 0000000..294adc8
--- /dev/null
+++ b/community-mod/libarchive/sources
@@ -0,0 +1 @@
+https://github.com/libarchive/libarchive/releases/download/3.5.1/libarchive-3.5.1.tar.xz
diff --git a/community-mod/libarchive/version b/community-mod/libarchive/version
new file mode 100644
index 0000000..591d5e4
--- /dev/null
+++ b/community-mod/libarchive/version
@@ -0,0 +1 @@
+3.5.1 1
diff --git a/community-mod/libassuan/build b/community-mod/libassuan/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libassuan/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libassuan/checksums b/community-mod/libassuan/checksums
new file mode 100644
index 0000000..919aae4
--- /dev/null
+++ b/community-mod/libassuan/checksums
@@ -0,0 +1 @@
+8e8c2fcc982f9ca67dcbb1d95e2dc746b1739a4668bc20b3a3c5be632edb34e4
diff --git a/community-mod/libassuan/depends b/community-mod/libassuan/depends
new file mode 100644
index 0000000..546d074
--- /dev/null
+++ b/community-mod/libassuan/depends
@@ -0,0 +1 @@
+libgpg-error
diff --git a/community-mod/libassuan/sources b/community-mod/libassuan/sources
new file mode 100644
index 0000000..f9faaa1
--- /dev/null
+++ b/community-mod/libassuan/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.5.5.tar.bz2
diff --git a/community-mod/libassuan/version b/community-mod/libassuan/version
new file mode 100644
index 0000000..5bda085
--- /dev/null
+++ b/community-mod/libassuan/version
@@ -0,0 +1 @@
+2.5.5 1 
diff --git a/community-mod/libburn/build b/community-mod/libburn/build
new file mode 100755
index 0000000..6e50d46
--- /dev/null
+++ b/community-mod/libburn/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make -j1 DESTDIR="$1" install
diff --git a/community-mod/libburn/checksums b/community-mod/libburn/checksums
new file mode 100644
index 0000000..8eac158
--- /dev/null
+++ b/community-mod/libburn/checksums
@@ -0,0 +1 @@
+525059d10759c5cb8148eebc863bb510e311c663603da7bd2d21c46b7cf63b54
diff --git a/community-mod/libburn/depends b/community-mod/libburn/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/community-mod/libburn/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/community-mod/libburn/sources b/community-mod/libburn/sources
new file mode 100644
index 0000000..1f17ed2
--- /dev/null
+++ b/community-mod/libburn/sources
@@ -0,0 +1 @@
+https://files.libburnia-project.org/releases/libburn-1.5.4.tar.gz
diff --git a/community-mod/libburn/version b/community-mod/libburn/version
new file mode 100644
index 0000000..de75e7c
--- /dev/null
+++ b/community-mod/libburn/version
@@ -0,0 +1 @@
+1.5.4 1
diff --git a/community-mod/libcap/build b/community-mod/libcap/build
new file mode 100755
index 0000000..e0037cd
--- /dev/null
+++ b/community-mod/libcap/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+mk() {
+    make \
+        GOLANG=no \
+        PREFIX=/usr \
+        SBINDIR=/usr/bin \
+        LIBDIR=/usr/lib \
+        PKGCONFIGDIR=/usr/lib/pkgconfig \
+        RAISE_SETFCAP=no \
+        INDENT=" " \
+        "$@"
+}
+
+mk
+mk DESTDIR="$1" install
diff --git a/community-mod/libcap/checksums b/community-mod/libcap/checksums
new file mode 100644
index 0000000..36b26c4
--- /dev/null
+++ b/community-mod/libcap/checksums
@@ -0,0 +1 @@
+e98bc4d93645082ec787730b0fd1a712b38882465c505777de17c338831ee181
diff --git a/community-mod/libcap/depends b/community-mod/libcap/depends
new file mode 100644
index 0000000..3afdb48
--- /dev/null
+++ b/community-mod/libcap/depends
@@ -0,0 +1 @@
+perl make 
diff --git a/community-mod/libcap/sources b/community-mod/libcap/sources
new file mode 100644
index 0000000..b229efc
--- /dev/null
+++ b/community-mod/libcap/sources
@@ -0,0 +1 @@
+https://kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.49.tar.xz
diff --git a/community-mod/libcap/version b/community-mod/libcap/version
new file mode 100644
index 0000000..007d513
--- /dev/null
+++ b/community-mod/libcap/version
@@ -0,0 +1 @@
+2.49 1 
diff --git a/community-mod/libconfig/build b/community-mod/libconfig/build
new file mode 100755
index 0000000..ef25517
--- /dev/null
+++ b/community-mod/libconfig/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-cxx
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libconfig/checksums b/community-mod/libconfig/checksums
new file mode 100644
index 0000000..efde609
--- /dev/null
+++ b/community-mod/libconfig/checksums
@@ -0,0 +1 @@
+545166d6cac037744381d1e9cc5a5405094e7bfad16a411699bcff40bbb31ee7
diff --git a/community-mod/libconfig/sources b/community-mod/libconfig/sources
new file mode 100644
index 0000000..b0a759a
--- /dev/null
+++ b/community-mod/libconfig/sources
@@ -0,0 +1 @@
+https://hyperrealm.github.io/libconfig/dist/libconfig-1.7.3.tar.gz
diff --git a/community-mod/libconfig/version b/community-mod/libconfig/version
new file mode 100644
index 0000000..8dca855
--- /dev/null
+++ b/community-mod/libconfig/version
@@ -0,0 +1 @@
+1.7.3 1
diff --git a/community-mod/libdvdcss/build b/community-mod/libdvdcss/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libdvdcss/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libdvdcss/checksums b/community-mod/libdvdcss/checksums
new file mode 100644
index 0000000..e733f1f
--- /dev/null
+++ b/community-mod/libdvdcss/checksums
@@ -0,0 +1 @@
+233cc92f5dc01c5d3a96f5b3582be7d5cee5a35a52d3a08158745d3d86070079
diff --git a/community-mod/libdvdcss/sources b/community-mod/libdvdcss/sources
new file mode 100644
index 0000000..deda00f
--- /dev/null
+++ b/community-mod/libdvdcss/sources
@@ -0,0 +1 @@
+https://download.videolan.org/pub/libdvdcss/1.4.3/libdvdcss-1.4.3.tar.bz2
diff --git a/community-mod/libdvdcss/version b/community-mod/libdvdcss/version
new file mode 100644
index 0000000..f995c26
--- /dev/null
+++ b/community-mod/libdvdcss/version
@@ -0,0 +1 @@
+1.4.3 1
diff --git a/community-mod/libdvdread/build b/community-mod/libdvdread/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libdvdread/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libdvdread/checksums b/community-mod/libdvdread/checksums
new file mode 100644
index 0000000..dfddbb6
--- /dev/null
+++ b/community-mod/libdvdread/checksums
@@ -0,0 +1 @@
+cc190f553758ced7571859e301f802cb4821f164d02bfacfd320c14a4e0da763
diff --git a/community-mod/libdvdread/sources b/community-mod/libdvdread/sources
new file mode 100644
index 0000000..c0e3540
--- /dev/null
+++ b/community-mod/libdvdread/sources
@@ -0,0 +1 @@
+https://download.videolan.org/pub/videolan/libdvdread/6.1.2/libdvdread-6.1.2.tar.bz2
diff --git a/community-mod/libdvdread/version b/community-mod/libdvdread/version
new file mode 100644
index 0000000..49f323b
--- /dev/null
+++ b/community-mod/libdvdread/version
@@ -0,0 +1 @@
+6.1.2 1
diff --git a/community-mod/libedit/build b/community-mod/libedit/build
new file mode 100755
index 0000000..eab227f
--- /dev/null
+++ b/community-mod/libedit/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+# Fixes building with clang when clang doesn't include stdc-predef.h by default,
+# which is where the required macro __STDC_ISO_10646__ is defined.
+sed -i '31 a #include <stdc-predef.h>' src/chartype.h
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libedit/checksums b/community-mod/libedit/checksums
new file mode 100644
index 0000000..34960ac
--- /dev/null
+++ b/community-mod/libedit/checksums
@@ -0,0 +1 @@
+0220bc2047e927c0c1984ef5f7b4eb2a9469a5b7bf12ba573ca3b23ca02bbb6f
diff --git a/community-mod/libedit/depends b/community-mod/libedit/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/libedit/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/libedit/sources b/community-mod/libedit/sources
new file mode 100644
index 0000000..e1ed04f
--- /dev/null
+++ b/community-mod/libedit/sources
@@ -0,0 +1 @@
+https://www.thrysoee.dk/editline/libedit-20210522-3.1.tar.gz
diff --git a/community-mod/libedit/version b/community-mod/libedit/version
new file mode 100644
index 0000000..ddf1c9b
--- /dev/null
+++ b/community-mod/libedit/version
@@ -0,0 +1 @@
+20210522-3.1 1
diff --git a/community-mod/libev/build b/community-mod/libev/build
new file mode 100755
index 0000000..2a87b6d
--- /dev/null
+++ b/community-mod/libev/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
+
+# Remove compatibility header which conflicts with 'libevent'.
+rm -f "$1/usr/include/event.h"
diff --git a/community-mod/libev/checksums b/community-mod/libev/checksums
new file mode 100644
index 0000000..ce2a108
--- /dev/null
+++ b/community-mod/libev/checksums
@@ -0,0 +1 @@
+507eb7b8d1015fbec5b935f34ebed15bf346bed04a11ab82b8eee848c4205aea
diff --git a/community-mod/libev/sources b/community-mod/libev/sources
new file mode 100644
index 0000000..2395ec2
--- /dev/null
+++ b/community-mod/libev/sources
@@ -0,0 +1 @@
+https://deb.debian.org/debian/pool/main/libe/libev/libev_4.33.orig.tar.gz
diff --git a/community-mod/libev/version b/community-mod/libev/version
new file mode 100644
index 0000000..68b185d
--- /dev/null
+++ b/community-mod/libev/version
@@ -0,0 +1 @@
+4.33 1
diff --git a/community-mod/libevent/build b/community-mod/libevent/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/community-mod/libevent/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libevent/checksums b/community-mod/libevent/checksums
new file mode 100644
index 0000000..dc8fe3c
--- /dev/null
+++ b/community-mod/libevent/checksums
@@ -0,0 +1 @@
+92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb  libevent-2.1.12-stable.tar.gz
diff --git a/community-mod/libevent/sources b/community-mod/libevent/sources
new file mode 100644
index 0000000..ab57f04
--- /dev/null
+++ b/community-mod/libevent/sources
@@ -0,0 +1 @@
+https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
diff --git a/community-mod/libevent/version b/community-mod/libevent/version
new file mode 100644
index 0000000..19d8e60
--- /dev/null
+++ b/community-mod/libevent/version
@@ -0,0 +1 @@
+2.1.12 1
diff --git a/community-mod/libexif/build b/community-mod/libexif/build
new file mode 100755
index 0000000..dd147fb
--- /dev/null
+++ b/community-mod/libexif/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-nls \
+    ac_cv_path_DOXYGEN=false
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libexif/checksums b/community-mod/libexif/checksums
new file mode 100644
index 0000000..1724924
--- /dev/null
+++ b/community-mod/libexif/checksums
@@ -0,0 +1 @@
+5048f1c8fc509cc636c2f97f4b40c293338b6041a5652082d5ee2cf54b530c56  libexif-0.6.22.tar.xz
diff --git a/community-mod/libexif/sources b/community-mod/libexif/sources
new file mode 100644
index 0000000..1ac73b4
--- /dev/null
+++ b/community-mod/libexif/sources
@@ -0,0 +1 @@
+https://github.com/libexif/libexif/releases/download/libexif-0_6_22-release/libexif-0.6.22.tar.xz
diff --git a/community-mod/libexif/version b/community-mod/libexif/version
new file mode 100644
index 0000000..4da7a56
--- /dev/null
+++ b/community-mod/libexif/version
@@ -0,0 +1 @@
+0.6.22 1
diff --git a/community-mod/libgcrypt/build b/community-mod/libgcrypt/build
new file mode 100755
index 0000000..80ce93e
--- /dev/null
+++ b/community-mod/libgcrypt/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libgcrypt/checksums b/community-mod/libgcrypt/checksums
new file mode 100644
index 0000000..b0b3958
--- /dev/null
+++ b/community-mod/libgcrypt/checksums
@@ -0,0 +1 @@
+97ebe4f94e2f7e35b752194ce15a0f3c66324e0ff6af26659bbfb5ff2ec328fd
diff --git a/community-mod/libgcrypt/depends b/community-mod/libgcrypt/depends
new file mode 100644
index 0000000..546d074
--- /dev/null
+++ b/community-mod/libgcrypt/depends
@@ -0,0 +1 @@
+libgpg-error
diff --git a/community-mod/libgcrypt/sources b/community-mod/libgcrypt/sources
new file mode 100644
index 0000000..dcf4bee
--- /dev/null
+++ b/community-mod/libgcrypt/sources
@@ -0,0 +1 @@
+https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.9.3.tar.bz2
diff --git a/community-mod/libgcrypt/version b/community-mod/libgcrypt/version
new file mode 100644
index 0000000..c82debe
--- /dev/null
+++ b/community-mod/libgcrypt/version
@@ -0,0 +1 @@
+1.9.3 1
diff --git a/community-mod/libgmp/build b/community-mod/libgmp/build
new file mode 100755
index 0000000..412be89
--- /dev/null
+++ b/community-mod/libgmp/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var/state/gmp \
+    --enable-cxx \
+    --enable-fat \
+    --with-pic
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libgmp/checksums b/community-mod/libgmp/checksums
new file mode 100644
index 0000000..1335f73
--- /dev/null
+++ b/community-mod/libgmp/checksums
@@ -0,0 +1 @@
+fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2
diff --git a/community-mod/libgmp/depends b/community-mod/libgmp/depends
new file mode 100644
index 0000000..e8fb4a1
--- /dev/null
+++ b/community-mod/libgmp/depends
@@ -0,0 +1 @@
+m4 make
diff --git a/community-mod/libgmp/sources b/community-mod/libgmp/sources
new file mode 100644
index 0000000..0fad815
--- /dev/null
+++ b/community-mod/libgmp/sources
@@ -0,0 +1 @@
+https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz
diff --git a/community-mod/libgmp/version b/community-mod/libgmp/version
new file mode 100644
index 0000000..eeb874a
--- /dev/null
+++ b/community-mod/libgmp/version
@@ -0,0 +1 @@
+6.2.1 1
diff --git a/community-mod/libgpg-error/build b/community-mod/libgpg-error/build
new file mode 100755
index 0000000..80ce93e
--- /dev/null
+++ b/community-mod/libgpg-error/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libgpg-error/checksums b/community-mod/libgpg-error/checksums
new file mode 100644
index 0000000..4a11e12
--- /dev/null
+++ b/community-mod/libgpg-error/checksums
@@ -0,0 +1 @@
+fc07e70f6c615f8c4f590a8e37a9b8dd2e2ca1e9408f8e60459c67452b925e23
diff --git a/community-mod/libgpg-error/sources b/community-mod/libgpg-error/sources
new file mode 100644
index 0000000..2be693a
--- /dev/null
+++ b/community-mod/libgpg-error/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.42.tar.bz2
diff --git a/community-mod/libgpg-error/version b/community-mod/libgpg-error/version
new file mode 100644
index 0000000..8fce8e6
--- /dev/null
+++ b/community-mod/libgpg-error/version
@@ -0,0 +1 @@
+1.42 1
diff --git a/community-mod/libisoburn/build b/community-mod/libisoburn/build
new file mode 100755
index 0000000..e762a0f
--- /dev/null
+++ b/community-mod/libisoburn/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var \
+    --disable-libreadline \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libisoburn/checksums b/community-mod/libisoburn/checksums
new file mode 100644
index 0000000..19382fc
--- /dev/null
+++ b/community-mod/libisoburn/checksums
@@ -0,0 +1 @@
+2d89846d43880f17fa591c53b3bea42ffb803628e4e630c680fc2c9184f79132
diff --git a/community-mod/libisoburn/depends b/community-mod/libisoburn/depends
new file mode 100644
index 0000000..77fddc8
--- /dev/null
+++ b/community-mod/libisoburn/depends
@@ -0,0 +1,4 @@
+libburn
+libisofs
+ncurses
+zlib
diff --git a/community-mod/libisoburn/sources b/community-mod/libisoburn/sources
new file mode 100644
index 0000000..4269f44
--- /dev/null
+++ b/community-mod/libisoburn/sources
@@ -0,0 +1 @@
+https://files.libburnia-project.org/releases/libisoburn-1.5.4.tar.gz
diff --git a/community-mod/libisoburn/version b/community-mod/libisoburn/version
new file mode 100644
index 0000000..de75e7c
--- /dev/null
+++ b/community-mod/libisoburn/version
@@ -0,0 +1 @@
+1.5.4 1
diff --git a/community-mod/libisofs/build b/community-mod/libisofs/build
new file mode 100755
index 0000000..bee3865
--- /dev/null
+++ b/community-mod/libisofs/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-libacl \
+    --enable-xattr \
+    --disable-static
+
+make
+make -j1 DESTDIR="$1" install
diff --git a/community-mod/libisofs/checksums b/community-mod/libisofs/checksums
new file mode 100644
index 0000000..b480db2
--- /dev/null
+++ b/community-mod/libisofs/checksums
@@ -0,0 +1 @@
+aaa0ed80a7501979316f505b0b017f29cba0ea5463b751143bad2c360215a88e
diff --git a/community-mod/libisofs/depends b/community-mod/libisofs/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/community-mod/libisofs/depends
@@ -0,0 +1 @@
+zlib
diff --git a/community-mod/libisofs/sources b/community-mod/libisofs/sources
new file mode 100644
index 0000000..86cfdfe
--- /dev/null
+++ b/community-mod/libisofs/sources
@@ -0,0 +1 @@
+https://files.libburnia-project.org/releases/libisofs-1.5.4.tar.gz
diff --git a/community-mod/libisofs/version b/community-mod/libisofs/version
new file mode 100644
index 0000000..de75e7c
--- /dev/null
+++ b/community-mod/libisofs/version
@@ -0,0 +1 @@
+1.5.4 1
diff --git a/community-mod/libjpeg/build b/community-mod/libjpeg/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libjpeg/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libjpeg/checksums b/community-mod/libjpeg/checksums
new file mode 100644
index 0000000..3b038d8
--- /dev/null
+++ b/community-mod/libjpeg/checksums
@@ -0,0 +1 @@
+6c434a3be59f8f62425b2e3c077e785c9ce30ee5874ea1c270e843f273ba71ee
diff --git a/community-mod/libjpeg/sources b/community-mod/libjpeg/sources
new file mode 100644
index 0000000..1c4664e
--- /dev/null
+++ b/community-mod/libjpeg/sources
@@ -0,0 +1 @@
+https://www.ijg.org/files/jpegsrc.v9d.tar.gz
diff --git a/community-mod/libjpeg/version b/community-mod/libjpeg/version
new file mode 100644
index 0000000..781a245
--- /dev/null
+++ b/community-mod/libjpeg/version
@@ -0,0 +1 @@
+9 1
diff --git a/community-mod/libksba/build b/community-mod/libksba/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libksba/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libksba/checksums b/community-mod/libksba/checksums
new file mode 100644
index 0000000..dabd54a
--- /dev/null
+++ b/community-mod/libksba/checksums
@@ -0,0 +1 @@
+dad683e6f2d915d880aa4bed5cea9a115690b8935b78a1bbe01669189307a48b
diff --git a/community-mod/libksba/sources b/community-mod/libksba/sources
new file mode 100644
index 0000000..b6811a0
--- /dev/null
+++ b/community-mod/libksba/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/libksba/libksba-1.6.0.tar.bz2
diff --git a/community-mod/libksba/version b/community-mod/libksba/version
new file mode 100644
index 0000000..bfa5a6a
--- /dev/null
+++ b/community-mod/libksba/version
@@ -0,0 +1 @@
+1.6.0 1
diff --git a/community-mod/libmad/build b/community-mod/libmad/build
new file mode 100755
index 0000000..e4f1730
--- /dev/null
+++ b/community-mod/libmad/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+sed -i'' '/ -fforce-mem/d' configure
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libmad/checksums b/community-mod/libmad/checksums
new file mode 100644
index 0000000..a4b9c3c
--- /dev/null
+++ b/community-mod/libmad/checksums
@@ -0,0 +1 @@
+bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690  libmad-0.15.1b.tar.gz
diff --git a/community-mod/libmad/sources b/community-mod/libmad/sources
new file mode 100755
index 0000000..21d3185
--- /dev/null
+++ b/community-mod/libmad/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/mad/libmad-0.15.1b.tar.gz
diff --git a/community-mod/libmad/version b/community-mod/libmad/version
new file mode 100755
index 0000000..81a8958
--- /dev/null
+++ b/community-mod/libmad/version
@@ -0,0 +1 @@
+0.15.1b 1
diff --git a/community-mod/libmediainfo/build b/community-mod/libmediainfo/build
new file mode 100755
index 0000000..a98d436
--- /dev/null
+++ b/community-mod/libmediainfo/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+cd Project/GNU/Library
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr \
+    --enable-shared \
+    --disable-static \
+    --with-libcurl \
+    --with-libmms 
+	
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libmediainfo/checksums b/community-mod/libmediainfo/checksums
new file mode 100644
index 0000000..0286140
--- /dev/null
+++ b/community-mod/libmediainfo/checksums
@@ -0,0 +1 @@
+56b7e9abf80cba48032165cd7a46fd8d43dd63e3af35765f66c3f134caaca4ca
diff --git a/community-mod/libmediainfo/depends b/community-mod/libmediainfo/depends
new file mode 100644
index 0000000..177d9bf
--- /dev/null
+++ b/community-mod/libmediainfo/depends
@@ -0,0 +1,2 @@
+libzen
+pkgconf make
diff --git a/community-mod/libmediainfo/sources b/community-mod/libmediainfo/sources
new file mode 100644
index 0000000..8c6c593
--- /dev/null
+++ b/community-mod/libmediainfo/sources
@@ -0,0 +1 @@
+https://mediaarea.net/download/source/libmediainfo/21.03/libmediainfo_21.03.tar.xz
diff --git a/community-mod/libmediainfo/version b/community-mod/libmediainfo/version
new file mode 100644
index 0000000..7ead539
--- /dev/null
+++ b/community-mod/libmediainfo/version
@@ -0,0 +1 @@
+21.03 1 
diff --git a/community-mod/libmpc/build b/community-mod/libmpc/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libmpc/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libmpc/checksums b/community-mod/libmpc/checksums
new file mode 100644
index 0000000..0a104ca
--- /dev/null
+++ b/community-mod/libmpc/checksums
@@ -0,0 +1 @@
+17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459
diff --git a/community-mod/libmpc/depends b/community-mod/libmpc/depends
new file mode 100644
index 0000000..a3822e2
--- /dev/null
+++ b/community-mod/libmpc/depends
@@ -0,0 +1 @@
+libmpfr
diff --git a/community-mod/libmpc/sources b/community-mod/libmpc/sources
new file mode 100644
index 0000000..c4f29c2
--- /dev/null
+++ b/community-mod/libmpc/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz
diff --git a/community-mod/libmpc/version b/community-mod/libmpc/version
new file mode 100644
index 0000000..cd3d02b
--- /dev/null
+++ b/community-mod/libmpc/version
@@ -0,0 +1 @@
+1.2.1 1
diff --git a/community-mod/libmpfr/build b/community-mod/libmpfr/build
new file mode 100755
index 0000000..9e85cfc
--- /dev/null
+++ b/community-mod/libmpfr/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libmpfr/checksums b/community-mod/libmpfr/checksums
new file mode 100644
index 0000000..fe27d86
--- /dev/null
+++ b/community-mod/libmpfr/checksums
@@ -0,0 +1 @@
+0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f  mpfr-4.1.0.tar.xz
diff --git a/community-mod/libmpfr/depends b/community-mod/libmpfr/depends
new file mode 100644
index 0000000..17ca61b
--- /dev/null
+++ b/community-mod/libmpfr/depends
@@ -0,0 +1 @@
+libgmp
diff --git a/community-mod/libmpfr/sources b/community-mod/libmpfr/sources
new file mode 100644
index 0000000..a68892a
--- /dev/null
+++ b/community-mod/libmpfr/sources
@@ -0,0 +1 @@
+https://www.mpfr.org/mpfr-current/mpfr-4.1.0.tar.xz
diff --git a/community-mod/libmpfr/version b/community-mod/libmpfr/version
new file mode 100644
index 0000000..1bc2766
--- /dev/null
+++ b/community-mod/libmpfr/version
@@ -0,0 +1 @@
+4.1.0 1
diff --git a/community-mod/libnghttp2/build b/community-mod/libnghttp2/build
new file mode 100755
index 0000000..c196215
--- /dev/null
+++ b/community-mod/libnghttp2/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-examples \
+    --disable-python-bindings \
+    --enable-lib-only
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libnghttp2/checksums b/community-mod/libnghttp2/checksums
new file mode 100644
index 0000000..61675a6
--- /dev/null
+++ b/community-mod/libnghttp2/checksums
@@ -0,0 +1 @@
+f7d54fa6f8aed29f695ca44612136fa2359013547394d5dffeffca9e01a26b0f
diff --git a/community-mod/libnghttp2/sources b/community-mod/libnghttp2/sources
new file mode 100644
index 0000000..5a3be4a
--- /dev/null
+++ b/community-mod/libnghttp2/sources
@@ -0,0 +1 @@
+https://github.com/nghttp2/nghttp2/releases/download/v1.43.0/nghttp2-1.43.0.tar.xz
diff --git a/community-mod/libnghttp2/version b/community-mod/libnghttp2/version
new file mode 100644
index 0000000..57b0488
--- /dev/null
+++ b/community-mod/libnghttp2/version
@@ -0,0 +1 @@
+1.43.0 1
diff --git a/community-mod/libnl/build b/community-mod/libnl/build
new file mode 100755
index 0000000..105b0ee
--- /dev/null
+++ b/community-mod/libnl/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libnl/checksums b/community-mod/libnl/checksums
new file mode 100644
index 0000000..44ea30a
--- /dev/null
+++ b/community-mod/libnl/checksums
@@ -0,0 +1 @@
+352133ec9545da76f77e70ccb48c9d7e5324d67f6474744647a7ed382b5e05fa  libnl-3.5.0.tar.gz
diff --git a/community-mod/libnl/sources b/community-mod/libnl/sources
new file mode 100644
index 0000000..47e8b9d
--- /dev/null
+++ b/community-mod/libnl/sources
@@ -0,0 +1 @@
+https://github.com/thom311/libnl/releases/download/libnl3_5_0/libnl-3.5.0.tar.gz
diff --git a/community-mod/libnl/version b/community-mod/libnl/version
new file mode 100644
index 0000000..ad1efe9
--- /dev/null
+++ b/community-mod/libnl/version
@@ -0,0 +1 @@
+3.5.0 1
diff --git a/community-mod/libnpth/build b/community-mod/libnpth/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libnpth/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libnpth/checksums b/community-mod/libnpth/checksums
new file mode 100644
index 0000000..22a525b
--- /dev/null
+++ b/community-mod/libnpth/checksums
@@ -0,0 +1 @@
+1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1  npth-1.6.tar.bz2
diff --git a/community-mod/libnpth/sources b/community-mod/libnpth/sources
new file mode 100644
index 0000000..1ed1414
--- /dev/null
+++ b/community-mod/libnpth/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/npth/npth-1.6.tar.bz2
diff --git a/community-mod/libnpth/version b/community-mod/libnpth/version
new file mode 100644
index 0000000..14aaeb3
--- /dev/null
+++ b/community-mod/libnpth/version
@@ -0,0 +1 @@
+1.6 1 
diff --git a/community-mod/libpcap/build b/community-mod/libpcap/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libpcap/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libpcap/checksums b/community-mod/libpcap/checksums
new file mode 100644
index 0000000..edc9c97
--- /dev/null
+++ b/community-mod/libpcap/checksums
@@ -0,0 +1 @@
+8d12b42623eeefee872f123bd0dc85d535b00df4d42e865f993c40f7bfc92b1e
diff --git a/community-mod/libpcap/sources b/community-mod/libpcap/sources
new file mode 100644
index 0000000..ef130b3
--- /dev/null
+++ b/community-mod/libpcap/sources
@@ -0,0 +1 @@
+https://www.tcpdump.org/release/libpcap-1.10.0.tar.gz
diff --git a/community-mod/libpcap/version b/community-mod/libpcap/version
new file mode 100644
index 0000000..ac83b38
--- /dev/null
+++ b/community-mod/libpcap/version
@@ -0,0 +1 @@
+1.10.0 1
diff --git a/community-mod/libpsl/build b/community-mod/libpsl/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libpsl/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libpsl/checksums b/community-mod/libpsl/checksums
new file mode 100644
index 0000000..e46c48d
--- /dev/null
+++ b/community-mod/libpsl/checksums
@@ -0,0 +1 @@
+ac6ce1e1fbd4d0254c4ddb9d37f1fa99dec83619c1253328155206b896210d4c
diff --git a/community-mod/libpsl/depends b/community-mod/libpsl/depends
new file mode 100644
index 0000000..29c6b76
--- /dev/null
+++ b/community-mod/libpsl/depends
@@ -0,0 +1,2 @@
+icu
+python make
diff --git a/community-mod/libpsl/sources b/community-mod/libpsl/sources
new file mode 100644
index 0000000..57a914d
--- /dev/null
+++ b/community-mod/libpsl/sources
@@ -0,0 +1 @@
+https://github.com/rockdaboot/libpsl/releases/download/0.21.1/libpsl-0.21.1.tar.gz
diff --git a/community-mod/libpsl/version b/community-mod/libpsl/version
new file mode 100644
index 0000000..e54d47e
--- /dev/null
+++ b/community-mod/libpsl/version
@@ -0,0 +1 @@
+0.21.1 3
diff --git a/community-mod/libseccomp/build b/community-mod/libseccomp/build
new file mode 100755
index 0000000..1534d15
--- /dev/null
+++ b/community-mod/libseccomp/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+sed -i '/<linux\/prctl.h>/d' src/system.h
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libseccomp/checksums b/community-mod/libseccomp/checksums
new file mode 100644
index 0000000..42d64b5
--- /dev/null
+++ b/community-mod/libseccomp/checksums
@@ -0,0 +1 @@
+ee307e383c77aa7995abc5ada544d51c9723ae399768a97667d4cdb3c3a30d55
diff --git a/community-mod/libseccomp/depends b/community-mod/libseccomp/depends
new file mode 100644
index 0000000..4a6884f
--- /dev/null
+++ b/community-mod/libseccomp/depends
@@ -0,0 +1 @@
+gperf make
diff --git a/community-mod/libseccomp/sources b/community-mod/libseccomp/sources
new file mode 100644
index 0000000..85c3b9f
--- /dev/null
+++ b/community-mod/libseccomp/sources
@@ -0,0 +1 @@
+https://github.com/seccomp/libseccomp/releases/download/v2.5.1/libseccomp-2.5.1.tar.gz
diff --git a/community-mod/libseccomp/version b/community-mod/libseccomp/version
new file mode 100644
index 0000000..0a50c00
--- /dev/null
+++ b/community-mod/libseccomp/version
@@ -0,0 +1 @@
+2.5.1 1
diff --git a/community-mod/libsixel/build b/community-mod/libsixel/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libsixel/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libsixel/checksums b/community-mod/libsixel/checksums
new file mode 100644
index 0000000..f840224
--- /dev/null
+++ b/community-mod/libsixel/checksums
@@ -0,0 +1 @@
+9f6dcaf40d250614ce0121b153949c327c46a958cfd2e47750d8788b7ed28e6a
diff --git a/community-mod/libsixel/depends b/community-mod/libsixel/depends
new file mode 100644
index 0000000..55a2fa3
--- /dev/null
+++ b/community-mod/libsixel/depends
@@ -0,0 +1,2 @@
+libjpeg-turbo
+libpng
diff --git a/community-mod/libsixel/sources b/community-mod/libsixel/sources
new file mode 100644
index 0000000..921fd64
--- /dev/null
+++ b/community-mod/libsixel/sources
@@ -0,0 +1 @@
+https://github.com/saitoha/libsixel/releases/download/v1.8.6/libsixel-1.8.6.tar.gz
diff --git a/community-mod/libsixel/version b/community-mod/libsixel/version
new file mode 100644
index 0000000..1cb00c8
--- /dev/null
+++ b/community-mod/libsixel/version
@@ -0,0 +1 @@
+1.8.6 1
diff --git a/community-mod/libsodium/build b/community-mod/libsodium/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libsodium/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libsodium/checksums b/community-mod/libsodium/checksums
new file mode 100644
index 0000000..6156ee3
--- /dev/null
+++ b/community-mod/libsodium/checksums
@@ -0,0 +1 @@
+6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1  libsodium-1.0.18.tar.gz
diff --git a/community-mod/libsodium/sources b/community-mod/libsodium/sources
new file mode 100644
index 0000000..d1d7b4c
--- /dev/null
+++ b/community-mod/libsodium/sources
@@ -0,0 +1 @@
+https://github.com/jedisct1/libsodium/releases/download/1.0.18-RELEASE/libsodium-1.0.18.tar.gz
diff --git a/community-mod/libsodium/version b/community-mod/libsodium/version
new file mode 100644
index 0000000..dd3ab87
--- /dev/null
+++ b/community-mod/libsodium/version
@@ -0,0 +1 @@
+1.0.18 1
diff --git a/community-mod/libsoup/build b/community-mod/libsoup/build
new file mode 100755
index 0000000..334686c
--- /dev/null
+++ b/community-mod/libsoup/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    -Dtls_check=false \
+    -Dvapi=disabled \
+    -Dgssapi=disabled \
+    -Dbrotli=disabled \
+    -Dsysprof=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/community-mod/libsoup/checksums b/community-mod/libsoup/checksums
new file mode 100644
index 0000000..6216aaf
--- /dev/null
+++ b/community-mod/libsoup/checksums
@@ -0,0 +1 @@
+170c3f8446b0f65f8e4b93603349172b1085fb8917c181d10962f02bb85f5387  libsoup-2.72.0.tar.xz
diff --git a/community-mod/libsoup/depends b/community-mod/libsoup/depends
new file mode 100644
index 0000000..dba55b4
--- /dev/null
+++ b/community-mod/libsoup/depends
@@ -0,0 +1,8 @@
+glib
+glib-networking
+libpsl
+libxml2
+meson make
+pkgconf make
+sqlite
+zlib
diff --git a/community-mod/libsoup/sources b/community-mod/libsoup/sources
new file mode 100644
index 0000000..c350cd2
--- /dev/null
+++ b/community-mod/libsoup/sources
@@ -0,0 +1 @@
+https://download.gnome.org/sources/libsoup/2.72/libsoup-2.72.0.tar.xz
diff --git a/community-mod/libsoup/version b/community-mod/libsoup/version
new file mode 100644
index 0000000..84ab5da
--- /dev/null
+++ b/community-mod/libsoup/version
@@ -0,0 +1 @@
+2.72.0 1
diff --git a/community-mod/libtasn1/build b/community-mod/libtasn1/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libtasn1/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libtasn1/checksums b/community-mod/libtasn1/checksums
new file mode 100644
index 0000000..208a370
--- /dev/null
+++ b/community-mod/libtasn1/checksums
@@ -0,0 +1 @@
+0e0fb0903839117cb6e3b56e68222771bebf22ad7fc2295a0ed7d576e8d4329d
diff --git a/community-mod/libtasn1/sources b/community-mod/libtasn1/sources
new file mode 100644
index 0000000..66a5930
--- /dev/null
+++ b/community-mod/libtasn1/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/libtasn1/libtasn1-4.16.0.tar.gz
diff --git a/community-mod/libtasn1/version b/community-mod/libtasn1/version
new file mode 100644
index 0000000..5695e87
--- /dev/null
+++ b/community-mod/libtasn1/version
@@ -0,0 +1 @@
+4.16.0 1
diff --git a/community-mod/libtermkey/build b/community-mod/libtermkey/build
new file mode 100755
index 0000000..a40ac6b
--- /dev/null
+++ b/community-mod/libtermkey/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+patch -p1 < static-no-libtool.patch
+
+make libtermkey.a
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/libtermkey/checksums b/community-mod/libtermkey/checksums
new file mode 100644
index 0000000..992b7ca
--- /dev/null
+++ b/community-mod/libtermkey/checksums
@@ -0,0 +1,2 @@
+3bf45d27e0eed46f1ff1b9faccefee927617cb5aabaec73a7c896553ba55894c
+3f3a6099d90569671034d2d1a8817522933f24f875112a6f4fc6af96de96ab7a
diff --git a/community-mod/libtermkey/depends b/community-mod/libtermkey/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/libtermkey/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/libtermkey/patches/static-no-libtool.patch b/community-mod/libtermkey/patches/static-no-libtool.patch
new file mode 100644
index 0000000..248937d
--- /dev/null
+++ b/community-mod/libtermkey/patches/static-no-libtool.patch
@@ -0,0 +1,40 @@
+diff --git a/Makefile b/Makefile
+index 199f143..b413b36 100644
+--- a/Makefile
++++ b/Makefile
+@@ -67,11 +67,14 @@ MAN7DIR=$(MANDIR)/man7
+ all: $(LIBRARY) $(DEMOS)
+ 
+ %.lo: %.c termkey.h termkey-internal.h
+-	$(LIBTOOL) --mode=compile --tag=CC $(CC) $(CFLAGS) -o $@ -c $<
++	$(CC) $(CFLAGS) -fPIC -o $@ -c $<
+ 
+ $(LIBRARY): $(OBJECTS)
+ 	$(LIBTOOL) --mode=link --tag=CC $(CC) -rpath $(LIBDIR) -version-info $(VERSION_CURRENT):$(VERSION_REVISION):$(VERSION_AGE) $(LDFLAGS) -o $@ $^
+ 
++libtermkey.a: $(OBJECTS)
++	$(AR) rc $@ $^
++
+ demo: $(LIBRARY) demo.lo
+ 	$(LIBTOOL) --mode=link --tag=CC $(CC) -o $@ $^
+ 
+@@ -106,7 +109,6 @@ clean: clean-test
+ 
+ .PHONY: install
+ install: install-inc install-lib install-man
+-	$(LIBTOOL) --mode=finish $(DESTDIR)$(LIBDIR)
+ 
+ install-inc: termkey.h
+ 	install -d $(DESTDIR)$(INCDIR)
+@@ -114,9 +116,9 @@ install-inc: termkey.h
+ 	install -d $(DESTDIR)$(LIBDIR)/pkgconfig
+ 	LIBDIR=$(LIBDIR) INCDIR=$(INCDIR) VERSION=$(VERSION) sh termkey.pc.sh >$(DESTDIR)$(LIBDIR)/pkgconfig/termkey.pc
+ 
+-install-lib: $(LIBRARY)
++install-lib: libtermkey.a
+ 	install -d $(DESTDIR)$(LIBDIR)
+-	$(LIBTOOL) --mode=install install libtermkey.la $(DESTDIR)$(LIBDIR)/libtermkey.la
++	install libtermkey.a $(DESTDIR)$(LIBDIR)/libtermkey.a
+ 
+ install-man:
+ 	install -d $(DESTDIR)$(MAN3DIR)
diff --git a/community-mod/libtermkey/sources b/community-mod/libtermkey/sources
new file mode 100644
index 0000000..b6e2878
--- /dev/null
+++ b/community-mod/libtermkey/sources
@@ -0,0 +1,2 @@
+https://github.com/unofficial-mirror/libtermkey/archive/refs/tags/v0.22.tar.gz
+patches/static-no-libtool.patch
diff --git a/community-mod/libtermkey/version b/community-mod/libtermkey/version
new file mode 100644
index 0000000..4a159ec
--- /dev/null
+++ b/community-mod/libtermkey/version
@@ -0,0 +1 @@
+0.22 2
diff --git a/community-mod/libtirpc/build b/community-mod/libtirpc/build
new file mode 100755
index 0000000..cd73e35
--- /dev/null
+++ b/community-mod/libtirpc/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --disable-static \
+    --disable-gssapi
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libtirpc/checksums b/community-mod/libtirpc/checksums
new file mode 100644
index 0000000..6663fa0
--- /dev/null
+++ b/community-mod/libtirpc/checksums
@@ -0,0 +1 @@
+e24eb88b8ce7db3b7ca6eb80115dd1284abc5ec32a8deccfed2224fc2532b9fd
diff --git a/community-mod/libtirpc/sources b/community-mod/libtirpc/sources
new file mode 100644
index 0000000..2b5f041
--- /dev/null
+++ b/community-mod/libtirpc/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/libtirpc/libtirpc-1.3.2.tar.bz2
diff --git a/community-mod/libtirpc/version b/community-mod/libtirpc/version
new file mode 100644
index 0000000..a8cebfe
--- /dev/null
+++ b/community-mod/libtirpc/version
@@ -0,0 +1 @@
+1.3.2 1
diff --git a/community-mod/libtool/build b/community-mod/libtool/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libtool/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libtool/checksums b/community-mod/libtool/checksums
new file mode 100644
index 0000000..238a49a
--- /dev/null
+++ b/community-mod/libtool/checksums
@@ -0,0 +1 @@
+7c87a8c2c8c0fc9cd5019e402bed4292462d00a718a7cd5f11218153bf28b26f  libtool-2.4.6.tar.xz
diff --git a/community-mod/libtool/depends b/community-mod/libtool/depends
new file mode 100644
index 0000000..8fd1a89
--- /dev/null
+++ b/community-mod/libtool/depends
@@ -0,0 +1,2 @@
+m4
+perl
diff --git a/community-mod/libtool/sources b/community-mod/libtool/sources
new file mode 100644
index 0000000..5f32de1
--- /dev/null
+++ b/community-mod/libtool/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/libtool/libtool-2.4.6.tar.xz
diff --git a/community-mod/libtool/version b/community-mod/libtool/version
new file mode 100644
index 0000000..dd1cfc6
--- /dev/null
+++ b/community-mod/libtool/version
@@ -0,0 +1 @@
+2.4.6 1 
diff --git a/community-mod/libtorrent/build b/community-mod/libtorrent/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libtorrent/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libtorrent/checksums b/community-mod/libtorrent/checksums
new file mode 100644
index 0000000..46eb8a5
--- /dev/null
+++ b/community-mod/libtorrent/checksums
@@ -0,0 +1 @@
+ed115a28f4ae8cfcd33b94a597c076ca74fd549867a26e4fac9505c27288e983  libtorrent-0.13.8.tar.gz
diff --git a/community-mod/libtorrent/depends b/community-mod/libtorrent/depends
new file mode 100644
index 0000000..5e737b4
--- /dev/null
+++ b/community-mod/libtorrent/depends
@@ -0,0 +1 @@
+pkgconf make
diff --git a/community-mod/libtorrent/sources b/community-mod/libtorrent/sources
new file mode 100644
index 0000000..731e791
--- /dev/null
+++ b/community-mod/libtorrent/sources
@@ -0,0 +1 @@
+https://rtorrent.net/downloads/libtorrent-0.13.8.tar.gz
diff --git a/community-mod/libtorrent/version b/community-mod/libtorrent/version
new file mode 100644
index 0000000..a66148b
--- /dev/null
+++ b/community-mod/libtorrent/version
@@ -0,0 +1 @@
+0.13.8 1
diff --git a/community-mod/libunistring/build b/community-mod/libunistring/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libunistring/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libunistring/checksums b/community-mod/libunistring/checksums
new file mode 100644
index 0000000..9995e42
--- /dev/null
+++ b/community-mod/libunistring/checksums
@@ -0,0 +1 @@
+eb8fb2c3e4b6e2d336608377050892b54c3c983b646c561836550863003c05d7
diff --git a/community-mod/libunistring/sources b/community-mod/libunistring/sources
new file mode 100644
index 0000000..5e2e2b1
--- /dev/null
+++ b/community-mod/libunistring/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/libunistring/libunistring-0.9.10.tar.xz
diff --git a/community-mod/libunistring/version b/community-mod/libunistring/version
new file mode 100644
index 0000000..b1465b7
--- /dev/null
+++ b/community-mod/libunistring/version
@@ -0,0 +1 @@
+0.9.10 1
diff --git a/community-mod/libusb/build b/community-mod/libusb/build
new file mode 100755
index 0000000..b207bcb
--- /dev/null
+++ b/community-mod/libusb/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-udev
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libusb/checksums b/community-mod/libusb/checksums
new file mode 100644
index 0000000..c0a38c3
--- /dev/null
+++ b/community-mod/libusb/checksums
@@ -0,0 +1 @@
+7efd2685f7b327326dcfb85cee426d9b871fd70e22caa15bb68d595ce2a2b12a
diff --git a/community-mod/libusb/sources b/community-mod/libusb/sources
new file mode 100644
index 0000000..89167de
--- /dev/null
+++ b/community-mod/libusb/sources
@@ -0,0 +1 @@
+https://github.com/libusb/libusb/releases/download/v1.0.24/libusb-1.0.24.tar.bz2
diff --git a/community-mod/libusb/version b/community-mod/libusb/version
new file mode 100644
index 0000000..163aac1
--- /dev/null
+++ b/community-mod/libusb/version
@@ -0,0 +1 @@
+1.0.24 1
diff --git a/community-mod/libuv/build b/community-mod/libuv/build
new file mode 100755
index 0000000..65a28cd
--- /dev/null
+++ b/community-mod/libuv/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/libuv/checksums b/community-mod/libuv/checksums
new file mode 100644
index 0000000..126be5a
--- /dev/null
+++ b/community-mod/libuv/checksums
@@ -0,0 +1 @@
+1184533907e1ddad9c0dcd30a5abb0fe25288c287ff7fee303fff7b9b2d6eb6e
diff --git a/community-mod/libuv/depends b/community-mod/libuv/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/libuv/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/libuv/sources b/community-mod/libuv/sources
new file mode 100644
index 0000000..009a398
--- /dev/null
+++ b/community-mod/libuv/sources
@@ -0,0 +1 @@
+https://dist.libuv.org/dist/v1.41.0/libuv-v1.41.0.tar.gz
diff --git a/community-mod/libuv/version b/community-mod/libuv/version
new file mode 100644
index 0000000..bab56fd
--- /dev/null
+++ b/community-mod/libuv/version
@@ -0,0 +1 @@
+1.41.0 1
diff --git a/community-mod/libvncserver/build b/community-mod/libvncserver/build
new file mode 100755
index 0000000..62a16b0
--- /dev/null
+++ b/community-mod/libvncserver/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+	-DCMAKE_INSTALL_PREFIX=/usr \
+	-DCMAKE_INSTALL_LIBDIR=lib \
+	-DWITH_OPENSSL=ON
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/libvncserver/checksums b/community-mod/libvncserver/checksums
new file mode 100644
index 0000000..c7e5431
--- /dev/null
+++ b/community-mod/libvncserver/checksums
@@ -0,0 +1 @@
+0ae5bb9175dc0a602fe85c1cf591ac47ee5247b87f2bf164c16b05f87cbfa81a  LibVNCServer-0.9.13.tar.gz
diff --git a/community-mod/libvncserver/depends b/community-mod/libvncserver/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/libvncserver/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/libvncserver/sources b/community-mod/libvncserver/sources
new file mode 100644
index 0000000..034d5e0
--- /dev/null
+++ b/community-mod/libvncserver/sources
@@ -0,0 +1 @@
+https://github.com/LibVNC/libvncserver/archive/LibVNCServer-0.9.13.tar.gz
diff --git a/community-mod/libvncserver/version b/community-mod/libvncserver/version
new file mode 100644
index 0000000..592eccd
--- /dev/null
+++ b/community-mod/libvncserver/version
@@ -0,0 +1 @@
+0.9.13 1
diff --git a/community-mod/libxml2/build b/community-mod/libxml2/build
new file mode 100755
index 0000000..a568fbd
--- /dev/null
+++ b/community-mod/libxml2/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-threads \
+    --with-history \
+    --without-python \
+    --without-icu
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libxml2/checksums b/community-mod/libxml2/checksums
new file mode 100644
index 0000000..28697ab
--- /dev/null
+++ b/community-mod/libxml2/checksums
@@ -0,0 +1 @@
+65ee7a2f5e100c64ddf7beb92297c9b2a30b994a76cd1fab67470cf22db6b7d0
diff --git a/community-mod/libxml2/depends b/community-mod/libxml2/depends
new file mode 100644
index 0000000..8c24938
--- /dev/null
+++ b/community-mod/libxml2/depends
@@ -0,0 +1,2 @@
+xz
+zlib
diff --git a/community-mod/libxml2/sources b/community-mod/libxml2/sources
new file mode 100644
index 0000000..215b240
--- /dev/null
+++ b/community-mod/libxml2/sources
@@ -0,0 +1 @@
+https://deb.debian.org/debian/pool/main/libx/libxml2/libxml2_2.9.10+dfsg.orig.tar.xz
diff --git a/community-mod/libxml2/version b/community-mod/libxml2/version
new file mode 100644
index 0000000..af4c1a1
--- /dev/null
+++ b/community-mod/libxml2/version
@@ -0,0 +1 @@
+2.9.10 1
diff --git a/community-mod/libxslt/build b/community-mod/libxslt/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/libxslt/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libxslt/checksums b/community-mod/libxslt/checksums
new file mode 100644
index 0000000..e648f35
--- /dev/null
+++ b/community-mod/libxslt/checksums
@@ -0,0 +1 @@
+98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f
diff --git a/community-mod/libxslt/depends b/community-mod/libxslt/depends
new file mode 100644
index 0000000..e62d874
--- /dev/null
+++ b/community-mod/libxslt/depends
@@ -0,0 +1,2 @@
+libxml2
+pkgconf make
diff --git a/community-mod/libxslt/sources b/community-mod/libxslt/sources
new file mode 100644
index 0000000..a25df5f
--- /dev/null
+++ b/community-mod/libxslt/sources
@@ -0,0 +1 @@
+https://fossies.org/linux/www/libxslt-1.1.34.tar.gz
diff --git a/community-mod/libxslt/version b/community-mod/libxslt/version
new file mode 100644
index 0000000..6364ddb
--- /dev/null
+++ b/community-mod/libxslt/version
@@ -0,0 +1 @@
+1.1.34 1 
diff --git a/community-mod/libyajl/build b/community-mod/libyajl/build
new file mode 100755
index 0000000..3243d7f
--- /dev/null
+++ b/community-mod/libyajl/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    -p /usr
+
+make -j1
+make DESTDIR="$1" install
diff --git a/community-mod/libyajl/checksums b/community-mod/libyajl/checksums
new file mode 100644
index 0000000..99479ef
--- /dev/null
+++ b/community-mod/libyajl/checksums
@@ -0,0 +1 @@
+3fb73364a5a30efe615046d07e6db9d09fd2b41c763c5f7d3bfb121cd5c5ac5a  2.1.0.tar.gz
diff --git a/community-mod/libyajl/sources b/community-mod/libyajl/sources
new file mode 100644
index 0000000..d57773c
--- /dev/null
+++ b/community-mod/libyajl/sources
@@ -0,0 +1 @@
+https://github.com/lloyd/yajl/archive/2.1.0.tar.gz
diff --git a/community-mod/libyajl/version b/community-mod/libyajl/version
new file mode 100644
index 0000000..c7e6491
--- /dev/null
+++ b/community-mod/libyajl/version
@@ -0,0 +1 @@
+2.1.0 1 
diff --git a/community-mod/libzen/build b/community-mod/libzen/build
new file mode 100755
index 0000000..54ea2d1
--- /dev/null
+++ b/community-mod/libzen/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+cd Project/GNU/Library
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+	
+make
+make DESTDIR="$1" install
diff --git a/community-mod/libzen/checksums b/community-mod/libzen/checksums
new file mode 100644
index 0000000..15ba2f5
--- /dev/null
+++ b/community-mod/libzen/checksums
@@ -0,0 +1 @@
+bd2772ab1ae4e375cdbbbdd114ad8471ebe67bf78c76e3812d66c7d462ed8ae7
diff --git a/community-mod/libzen/depends b/community-mod/libzen/depends
new file mode 100644
index 0000000..71f2bb8
--- /dev/null
+++ b/community-mod/libzen/depends
@@ -0,0 +1,2 @@
+automake make
+libtool make
diff --git a/community-mod/libzen/sources b/community-mod/libzen/sources
new file mode 100644
index 0000000..968efdf
--- /dev/null
+++ b/community-mod/libzen/sources
@@ -0,0 +1 @@
+https://mediaarea.net/download/source/libzen/0.4.39/libzen_0.4.39.tar.bz2
diff --git a/community-mod/libzen/version b/community-mod/libzen/version
new file mode 100644
index 0000000..b286a86
--- /dev/null
+++ b/community-mod/libzen/version
@@ -0,0 +1 @@
+0.4.39 1 
diff --git a/community-mod/lilo/build b/community-mod/lilo/build
new file mode 100755
index 0000000..74bb5a1
--- /dev/null
+++ b/community-mod/lilo/build
@@ -0,0 +1,34 @@
+#!/bin/sh -e
+
+(
+    cd bin86
+
+    patch -p1 < ../x86_64.patch
+
+    make -j1 CFLAGS="$CFLAGS -D_POSIX_SOURCE" PREFIX="$PWD/../bin86"
+    make install
+)
+
+export PATH=$PWD/bin86/bin:$PATH
+
+patch -p1 < musl.patch
+
+# shellcheck disable=2016,2016
+sed -i '/strip/d;s|^	make|	$(MAKE)|g' Makefile src/Makefile
+sed -i "/images install/d"                 Makefile src/Makefile
+sed -i "/images all/d"                     Makefile src/Makefile
+
+export LC_ALL=C
+
+make CFLAGS="-fcommon" all
+make DESTDIR="$1" install
+
+install -Dm 644 lilo.conf "$1/etc/lilo.conf"
+
+mv "$1/usr/sbin/" "$1/usr/bin/"
+mv "$1/sbin/lilo" "$1/usr/bin/lilo"
+rmdir "$1/sbin"
+
+rm -rf "$1/etc/initramfs"
+rm -rf "$1/etc/kernel"
+rm -rf "$1/etc/lilo.conf_example"
diff --git a/community-mod/lilo/checksums b/community-mod/lilo/checksums
new file mode 100644
index 0000000..e9c5f13
--- /dev/null
+++ b/community-mod/lilo/checksums
@@ -0,0 +1,5 @@
+021e37cde3a20632c4c9000993cb4aa9f58cb82b1d3c26b9aeb62d6566925738  bin86-0.16.21.tar.gz
+e158f19de4560c935ebe0507c21b79bff17618b9230d8076fe8c5fff9fdbd5b1  lilo-24.2.tar.gz
+270971e830ae4a0729a86ce2cfc05b7c9b4cba10aec6d555e62e2cd7b176887d  lilo.conf
+bf2173fb2d31749387c85da810ca103bc17e77c4c8361a2b7b9c6992ac0f2063  musl.patch
+f69599d1f5cf57fc3eb4d4be5d5253f4189292afe70b20c8000dc95d121d555d  x86_64.patch
diff --git a/community-mod/lilo/depends b/community-mod/lilo/depends
new file mode 100644
index 0000000..6f88eb9
--- /dev/null
+++ b/community-mod/lilo/depends
@@ -0,0 +1 @@
+lvm2
diff --git a/community-mod/lilo/files/lilo.conf b/community-mod/lilo/files/lilo.conf
new file mode 100644
index 0000000..7587f35
--- /dev/null
+++ b/community-mod/lilo/files/lilo.conf
@@ -0,0 +1,19 @@
+#
+# /etc/lilo.conf: lilo configuration
+#
+
+boot=/dev/sda
+# This line often fixes L40 errors on bootup
+# disk=/dev/sda bios=0x80
+
+default=KISS
+timeout=50
+lba32
+compact
+
+image=/boot/vmlinuz
+	label=KISS
+	root=/dev/sda3
+	read-only
+
+# End of file
diff --git a/community-mod/lilo/patches/musl.patch b/community-mod/lilo/patches/musl.patch
new file mode 100644
index 0000000..541c1dd
--- /dev/null
+++ b/community-mod/lilo/patches/musl.patch
@@ -0,0 +1,26 @@
+--- a/src/lilo.c
++++ b/src/lilo.c
+@@ -182,7 +182,6 @@ extern int has_partitions_beta(dev_t dev);	/* defined in geometry.c */
+                 printf("Without");
+ #endif
+                 printf(" device-mapper\n");
+-		printf("\nglibc version %d.%d\n", __GLIBC__, __GLIBC_MINOR__);
+ 		printf("Kernel Headers included from  %d.%d.%d\n",
+ 			LINUX_VERSION_CODE>>16,
+ 			LINUX_VERSION_CODE>>8 & 255,
+--- a/src/common.h	2011-06-22 03:13:27.000000000 -0400
++++ b/src/common.h	2015-07-22 19:27:06.272990549 -0400
+@@ -23,12 +23,7 @@
+ # define PAGE_SIZE 4096U
+ #endif
+ 
+-#ifdef O_ACCMODE
+-# define O_NOACCESS O_ACCMODE
+-#else
+-/* open a file for "no access" */
+-# define O_NOACCESS 3
+-#endif
++#define O_NOACCESS O_RDONLY
+ 
+ /* special for LILO, bypass the actual open in  dev_open( , ,-1)   */
+ #define O_BYPASS -1
diff --git a/community-mod/lilo/patches/x86_64.patch b/community-mod/lilo/patches/x86_64.patch
new file mode 100644
index 0000000..b1553ff
--- /dev/null
+++ b/community-mod/lilo/patches/x86_64.patch
@@ -0,0 +1,44 @@
+Submitted By: Ken Moffat <ken@kenmoffat.uklinux.net>
+Date: 2005-06-28
+Initial Package Version: 0.16.14
+Upstream Status: Submitted Upstream
+Origin: from ROCK Linux
+Description: Allows bin86 to compile on x86_64, which permits lilo to
+ be used in a 64-bit system.  I'm dubious about ROCK's attempts to
+ automatically add dual-licensing to all their patches, but bin86 is
+ already GPL'd.  I've heard from the maintainer that this will be
+ included in the next upload.
+
+
+# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
+# 
+# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
+# Please add additional copyright information _after_ the line containing
+# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
+# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
+# 
+# ROCK Linux: rock-src/package/x86/bin86/x86_64.patch
+# ROCK Linux is Copyright (C) 1998 - 2005 Clifford Wolf
+# 
+# This patch file is dual-licensed. It is available under the license the
+# patched project is licensed under, as long as it is an OpenSource license
+# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
+# of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+# 
+# --- ROCK-COPYRIGHT-NOTE-END ---
+
+diff -urN bin86-0.16.14-orig/ld/x86_aout.h bin86-0.16.14/ld/x86_aout.h
+--- bin86-0.16.14-orig/ld/x86_aout.h	2004-11-07 20:07:31.506442000 +0100
++++ bin86-0.16.14/ld/x86_aout.h	2004-11-07 20:07:41.106982496 +0100
+@@ -12,6 +12,9 @@
+ #if defined(i386) || defined(__BCC__) || defined(MSDOS)
+ typedef long Long;
+ #define __OUT_OK 1
++#elif defined(__x86_64__)
++typedef int Long;
++#define __OUT_OK 1
+ #else
+ /* Beware: this will probably allow some BE hosts to generate broken files. */
+ #ifdef INT32_MAX
diff --git a/community-mod/lilo/sources b/community-mod/lilo/sources
new file mode 100644
index 0000000..564908a
--- /dev/null
+++ b/community-mod/lilo/sources
@@ -0,0 +1,5 @@
+https://mirror.netcologne.de/gentoo/distfiles/bin86-0.16.21.tar.gz bin86
+https://www.joonet.de/lilo/ftp/sources/lilo-24.2.tar.gz
+files/lilo.conf
+patches/musl.patch
+patches/x86_64.patch
diff --git a/community-mod/lilo/version b/community-mod/lilo/version
new file mode 100644
index 0000000..7326077
--- /dev/null
+++ b/community-mod/lilo/version
@@ -0,0 +1 @@
+24.2 2
diff --git a/community-mod/lld/build b/community-mod/lld/build
new file mode 100755
index 0000000..367d771
--- /dev/null
+++ b/community-mod/lld/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+install -Dm644 libunwind/include/mach-o/compact_unwind_encoding.h include/mach-o/compact_unwind_encoding.h
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -Wno-dev
+
+cmake --build   build
+cmake --install build
+
+ln -s lld "$1/usr/bin/ld"
diff --git a/community-mod/lld/checksums b/community-mod/lld/checksums
new file mode 100644
index 0000000..9b3ae27
--- /dev/null
+++ b/community-mod/lld/checksums
@@ -0,0 +1,2 @@
+2cb7d497f3ce33ce8a2c50ad26ec93a8c45f57268d4d96953cd0f25566f753fd
+9ed2a5b28853f7f58be9d04836ff43d6e4132df5a2c058b690dc3e9d75bd1cf5
diff --git a/community-mod/lld/depends b/community-mod/lld/depends
new file mode 100644
index 0000000..453889a
--- /dev/null
+++ b/community-mod/lld/depends
@@ -0,0 +1 @@
+llvm
diff --git a/community-mod/lld/sources b/community-mod/lld/sources
new file mode 100644
index 0000000..7b5b367
--- /dev/null
+++ b/community-mod/lld/sources
@@ -0,0 +1,2 @@
+https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.0/lld-12.0.0.src.tar.xz
+https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.0/libunwind-12.0.0.src.tar.xz libunwind
diff --git a/community-mod/lld/version b/community-mod/lld/version
new file mode 100644
index 0000000..1284e40
--- /dev/null
+++ b/community-mod/lld/version
@@ -0,0 +1 @@
+12.0.0 1
diff --git a/community-mod/lm-sensors/build b/community-mod/lm-sensors/build
new file mode 100755
index 0000000..220fdb6
--- /dev/null
+++ b/community-mod/lm-sensors/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make
+make \
+    DESTDIR="$1" \
+    PREFIX=/usr \
+    SBINDIR=/usr/bin \
+    MANDIR=/usr/share/man \
+    install
diff --git a/community-mod/lm-sensors/checksums b/community-mod/lm-sensors/checksums
new file mode 100644
index 0000000..124fbbf
--- /dev/null
+++ b/community-mod/lm-sensors/checksums
@@ -0,0 +1 @@
+0591f9fa0339f0d15e75326d0365871c2d4e2ed8aa1ff759b3a55d3734b7d197
diff --git a/community-mod/lm-sensors/depends b/community-mod/lm-sensors/depends
new file mode 100644
index 0000000..706d0b0
--- /dev/null
+++ b/community-mod/lm-sensors/depends
@@ -0,0 +1,2 @@
+bison make
+flex make
diff --git a/community-mod/lm-sensors/sources b/community-mod/lm-sensors/sources
new file mode 100644
index 0000000..c432cd8
--- /dev/null
+++ b/community-mod/lm-sensors/sources
@@ -0,0 +1 @@
+https://github.com/lm-sensors/lm-sensors/archive/V3-6-0.tar.gz
diff --git a/community-mod/lm-sensors/version b/community-mod/lm-sensors/version
new file mode 100644
index 0000000..46df76b
--- /dev/null
+++ b/community-mod/lm-sensors/version
@@ -0,0 +1 @@
+3.6.0 1
diff --git a/community-mod/lmdb/build b/community-mod/lmdb/build
new file mode 100755
index 0000000..f18163c
--- /dev/null
+++ b/community-mod/lmdb/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+cd libraries/liblmdb
+
+make CC="${CC:-cc}"
+make DESTDIR="$1" prefix=/usr install
diff --git a/community-mod/lmdb/checksums b/community-mod/lmdb/checksums
new file mode 100644
index 0000000..3b01ae3
--- /dev/null
+++ b/community-mod/lmdb/checksums
@@ -0,0 +1 @@
+22054926b426c66d8f2bc22071365df6e35f3aacf19ad943bc6167d4cae3bebb
diff --git a/community-mod/lmdb/sources b/community-mod/lmdb/sources
new file mode 100644
index 0000000..1a90528
--- /dev/null
+++ b/community-mod/lmdb/sources
@@ -0,0 +1 @@
+https://github.com/LMDB/lmdb/archive/refs/tags/LMDB_0.9.29.tar.gz
diff --git a/community-mod/lmdb/version b/community-mod/lmdb/version
new file mode 100644
index 0000000..658e6cf
--- /dev/null
+++ b/community-mod/lmdb/version
@@ -0,0 +1 @@
+0.9.29 1
diff --git a/community-mod/lsof/build b/community-mod/lsof/build
new file mode 100755
index 0000000..4b0e14d
--- /dev/null
+++ b/community-mod/lsof/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+export LSOF_CC="$CC"
+export LSOF_CFGF="$CFLAGS"
+export LSOF_CFGL="$LDFLAGS"
+
+# Uncomment 'HASSECURITY' to non-root user may list only files whose processes
+# have the same user ID as the real user ID of the 'lsof' process.
+sed 's|/\* \(#define\tHASSECURITY\t1\) \*/|\1|' -i dialects/linux/machine.h
+
+./Configure -n linux
+
+make
+install -Dm755 lsof   "$1/usr/bin/lsof"
+install -Dm644 Lsof.8 "$1/usr/share/man/man1/lsof.8"
diff --git a/community-mod/lsof/checksums b/community-mod/lsof/checksums
new file mode 100644
index 0000000..d50d88b
--- /dev/null
+++ b/community-mod/lsof/checksums
@@ -0,0 +1 @@
+a9865eeb581c3abaac7426962ddb112ecfd86a5ae93086eb4581ce100f8fa8f4
diff --git a/community-mod/lsof/sources b/community-mod/lsof/sources
new file mode 100644
index 0000000..e3edc13
--- /dev/null
+++ b/community-mod/lsof/sources
@@ -0,0 +1 @@
+https://github.com/lsof-org/lsof/archive/4.94.0.tar.gz
diff --git a/community-mod/lsof/version b/community-mod/lsof/version
new file mode 100644
index 0000000..75e17f9
--- /dev/null
+++ b/community-mod/lsof/version
@@ -0,0 +1 @@
+4.94.0 1
diff --git a/community-mod/lua/build b/community-mod/lua/build
new file mode 100755
index 0000000..a6626b8
--- /dev/null
+++ b/community-mod/lua/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+make MYCFLAGS="$CFLAGS -fPIC" \
+     MYLDFLAGS="$LDFLAGS" \
+     posix
+
+make INSTALL_TOP="$1/usr" \
+     INSTALL_MAN="$1/usr/share/man/man1" \
+     INSTALL_DATA="cp -d" \
+     install
+
+install -Dm 644 lua.pc "$1/usr/lib/pkgconfig/lua.pc"
diff --git a/community-mod/lua/checksums b/community-mod/lua/checksums
new file mode 100644
index 0000000..820c2ae
--- /dev/null
+++ b/community-mod/lua/checksums
@@ -0,0 +1,2 @@
+f8612276169e3bfcbcfb8f226195bfc6e466fe13042f1076cbde92b7ec96bbfb
+c58f3ff3aecd07fc409486e31e65461eb10a919c0ee225836c88d5558933b3b5
diff --git a/community-mod/lua/files/lua.pc b/community-mod/lua/files/lua.pc
new file mode 100644
index 0000000..7c8da4a
--- /dev/null
+++ b/community-mod/lua/files/lua.pc
@@ -0,0 +1,20 @@
+V=5.3
+R=5.3.5
+
+prefix=/usr
+INSTALL_BIN=${prefix}/bin
+INSTALL_INC=${prefix}/include
+INSTALL_LIB=${prefix}/lib
+INSTALL_MAN=${prefix}/man/man1
+INSTALL_LMOD=${prefix}/share/lua/${V}
+INSTALL_CMOD=${prefix}/lib/lua/${V}
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: Lua
+Description: An Extensible Extension Language
+Version: ${R}
+Requires: 
+Libs: -L${libdir} -llua -lm
+Cflags: -I${includedir}
diff --git a/community-mod/lua/sources b/community-mod/lua/sources
new file mode 100644
index 0000000..af66093
--- /dev/null
+++ b/community-mod/lua/sources
@@ -0,0 +1,2 @@
+https://www.lua.org/ftp/lua-5.4.3.tar.gz
+files/lua.pc
diff --git a/community-mod/lua/version b/community-mod/lua/version
new file mode 100644
index 0000000..52dd1df
--- /dev/null
+++ b/community-mod/lua/version
@@ -0,0 +1 @@
+5.4.3 1 
diff --git a/community-mod/luajit/build b/community-mod/luajit/build
new file mode 100755
index 0000000..438683b
--- /dev/null
+++ b/community-mod/luajit/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make amalg   PREFIX=/usr
+make install PREFIX=/usr DESTDIR="$1"
+
+# Create these symlinks ourselves as luajit relies
+# on ldconfig to do so and musl does not provide it.
+ln -s libluajit-5.1.so.2.0.5 "$1/usr/lib/libluajit-5.1.so"
+ln -s libluajit-5.1.so.2.0.5 "$1/usr/lib/libluajit-5.1.so.2"
diff --git a/community-mod/luajit/checksums b/community-mod/luajit/checksums
new file mode 100644
index 0000000..838d79c
--- /dev/null
+++ b/community-mod/luajit/checksums
@@ -0,0 +1 @@
+874b1f8297c697821f561f9b73b57ffd419ed8f4278c82e05b48806d30c1e979  LuaJIT-2.0.5.tar.gz
diff --git a/community-mod/luajit/sources b/community-mod/luajit/sources
new file mode 100644
index 0000000..8c8381c
--- /dev/null
+++ b/community-mod/luajit/sources
@@ -0,0 +1 @@
+https://luajit.org/download/LuaJIT-2.0.5.tar.gz
diff --git a/community-mod/luajit/version b/community-mod/luajit/version
new file mode 100644
index 0000000..336bb83
--- /dev/null
+++ b/community-mod/luajit/version
@@ -0,0 +1 @@
+2.0.5 2 
diff --git a/community-mod/lxappearance/build b/community-mod/lxappearance/build
new file mode 100755
index 0000000..9bbfb31
--- /dev/null
+++ b/community-mod/lxappearance/build
@@ -0,0 +1,24 @@
+#!/bin/sh -e
+
+sed -i '/INTLTOOL_APPLIED_VERSION=/d' configure
+sed -i "/version|grep '(GNU/d"        configure
+
+export MSGFMT=/usr/bin/true
+export MSGMERGE=/usr/bin/true
+export XGETTEXT=/usr/bin/true
+export mfversion=9.99.99
+export mmversion=9.99.99
+export xgversion=9.99.99
+export INTLTOOL_MERGE=/usr/bin/true
+export INTLTOOL_UPDATE=/usr/bin/true
+export INTLTOOL_EXTRACT=/usr/bin/true
+export INTLTOOL_PERL=/usr/bin/true
+export INTLTOOL_APPLIED_VERSION=9.99.99
+
+./configure \
+    --prefix=/usr \
+    --enable-gtk3
+
+for target in data src; do
+    make -C "$target" && make -C "$target" DESTDIR="$1" install
+done
diff --git a/community-mod/lxappearance/checksums b/community-mod/lxappearance/checksums
new file mode 100644
index 0000000..d52f11a
--- /dev/null
+++ b/community-mod/lxappearance/checksums
@@ -0,0 +1 @@
+7222d858b8fef4b7967c42142d61e82ded6dd42dc5ef1d59caad775795928b38
diff --git a/community-mod/lxappearance/depends b/community-mod/lxappearance/depends
new file mode 100644
index 0000000..03db788
--- /dev/null
+++ b/community-mod/lxappearance/depends
@@ -0,0 +1,2 @@
+gtk+3
+perl make
diff --git a/community-mod/lxappearance/sources b/community-mod/lxappearance/sources
new file mode 100644
index 0000000..151f9be
--- /dev/null
+++ b/community-mod/lxappearance/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/sourceforge/lxde/lxappearance-0.6.3.tar.xz
diff --git a/community-mod/lxappearance/version b/community-mod/lxappearance/version
new file mode 100644
index 0000000..8d54380
--- /dev/null
+++ b/community-mod/lxappearance/version
@@ -0,0 +1 @@
+0.6.3 1
diff --git a/community-mod/lynx/build b/community-mod/lynx/build
new file mode 100755
index 0000000..3fbc0ee
--- /dev/null
+++ b/community-mod/lynx/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --with-screen=ncursesw \
+    --with-ssl \
+    --with-zlib \
+    --enable-ipv6
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/lynx/checksums b/community-mod/lynx/checksums
new file mode 100644
index 0000000..23d5935
--- /dev/null
+++ b/community-mod/lynx/checksums
@@ -0,0 +1 @@
+387f193d7792f9cfada14c60b0e5c0bff18f227d9257a39483e14fa1aaf79595  lynx2.8.9rel.1.tar.bz2
diff --git a/community-mod/lynx/depends b/community-mod/lynx/depends
new file mode 100644
index 0000000..c375091
--- /dev/null
+++ b/community-mod/lynx/depends
@@ -0,0 +1,3 @@
+libressl
+ncurses
+zlib
diff --git a/community-mod/lynx/sources b/community-mod/lynx/sources
new file mode 100644
index 0000000..194dbd4
--- /dev/null
+++ b/community-mod/lynx/sources
@@ -0,0 +1 @@
+https://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.9rel.1.tar.bz2
diff --git a/community-mod/lynx/version b/community-mod/lynx/version
new file mode 100644
index 0000000..6e8389b
--- /dev/null
+++ b/community-mod/lynx/version
@@ -0,0 +1 @@
+2.8.9rel1 1 
diff --git a/community-mod/lz4/build b/community-mod/lz4/build
new file mode 100755
index 0000000..ba87937
--- /dev/null
+++ b/community-mod/lz4/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+make -C lib PREFIX=/usr
+make -C programs PREFIX=/usr lz4 lz4c
+
+make install PREFIX=/usr DESTDIR="$1"
diff --git a/community-mod/lz4/checksums b/community-mod/lz4/checksums
new file mode 100644
index 0000000..e080901
--- /dev/null
+++ b/community-mod/lz4/checksums
@@ -0,0 +1 @@
+030644df4611007ff7dc962d981f390361e6c97a34e5cbc393ddfbe019ffe2c1
diff --git a/community-mod/lz4/sources b/community-mod/lz4/sources
new file mode 100644
index 0000000..1cf4f0a
--- /dev/null
+++ b/community-mod/lz4/sources
@@ -0,0 +1 @@
+https://github.com/lz4/lz4/archive/v1.9.3.tar.gz
diff --git a/community-mod/lz4/version b/community-mod/lz4/version
new file mode 100644
index 0000000..c82debe
--- /dev/null
+++ b/community-mod/lz4/version
@@ -0,0 +1 @@
+1.9.3 1
diff --git a/community-mod/lzo/build b/community-mod/lzo/build
new file mode 100755
index 0000000..c647b8e
--- /dev/null
+++ b/community-mod/lzo/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make DESTDIR="$1" install
diff --git a/community-mod/lzo/checksums b/community-mod/lzo/checksums
new file mode 100644
index 0000000..0bbe965
--- /dev/null
+++ b/community-mod/lzo/checksums
@@ -0,0 +1 @@
+c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072
diff --git a/community-mod/lzo/sources b/community-mod/lzo/sources
new file mode 100644
index 0000000..539f839
--- /dev/null
+++ b/community-mod/lzo/sources
@@ -0,0 +1 @@
+https://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
diff --git a/community-mod/lzo/version b/community-mod/lzo/version
new file mode 100644
index 0000000..c815e91
--- /dev/null
+++ b/community-mod/lzo/version
@@ -0,0 +1 @@
+2.10 1  
diff --git a/community-mod/maim/build b/community-mod/maim/build
new file mode 100755
index 0000000..9dacb82
--- /dev/null
+++ b/community-mod/maim/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+# Use local glm headers.
+sed -i 's|<glm/glm\.hpp>|"../glm/glm/glm.hpp"|' src/*.?pp
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/maim/checksums b/community-mod/maim/checksums
new file mode 100644
index 0000000..3d2043f
--- /dev/null
+++ b/community-mod/maim/checksums
@@ -0,0 +1 @@
+b4f9381ec66ce0bd35d7a4f2d83439b253d573a50881c213cacf63b0c00b0863  v5.6.3.tar.gz
diff --git a/community-mod/maim/depends b/community-mod/maim/depends
new file mode 100644
index 0000000..6979a1e
--- /dev/null
+++ b/community-mod/maim/depends
@@ -0,0 +1,5 @@
+cmake make
+libjpeg-turbo
+libpng
+libXcomposite
+slop
diff --git a/community-mod/maim/sources b/community-mod/maim/sources
new file mode 100644
index 0000000..71fee5a
--- /dev/null
+++ b/community-mod/maim/sources
@@ -0,0 +1,2 @@
+https://github.com/naelstrof/maim/archive/v5.6.3.tar.gz
+https://github.com/g-truc/glm/archive/0.9.9.5.tar.gz glm
diff --git a/community-mod/maim/version b/community-mod/maim/version
new file mode 100644
index 0000000..ec69dd6
--- /dev/null
+++ b/community-mod/maim/version
@@ -0,0 +1 @@
+5.6.3 1
diff --git a/community-mod/man-pages-posix/build b/community-mod/man-pages-posix/build
new file mode 100755
index 0000000..0fa9b71
--- /dev/null
+++ b/community-mod/man-pages-posix/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make prefix=/usr DESTDIR="$1" install
diff --git a/community-mod/man-pages-posix/checksums b/community-mod/man-pages-posix/checksums
new file mode 100644
index 0000000..1061c42
--- /dev/null
+++ b/community-mod/man-pages-posix/checksums
@@ -0,0 +1 @@
+ce67bb25b5048b20dad772e405a83f4bc70faf051afa289361c81f9660318bc3
diff --git a/community-mod/man-pages-posix/sources b/community-mod/man-pages-posix/sources
new file mode 100644
index 0000000..6dc7ad7
--- /dev/null
+++ b/community-mod/man-pages-posix/sources
@@ -0,0 +1 @@
+https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/man-pages-posix/man-pages-posix-2017-a.tar.xz
diff --git a/community-mod/man-pages-posix/version b/community-mod/man-pages-posix/version
new file mode 100644
index 0000000..77d4274
--- /dev/null
+++ b/community-mod/man-pages-posix/version
@@ -0,0 +1 @@
+2017a 1 
diff --git a/community-mod/man-pages/build b/community-mod/man-pages/build
new file mode 100755
index 0000000..0fa9b71
--- /dev/null
+++ b/community-mod/man-pages/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make prefix=/usr DESTDIR="$1" install
diff --git a/community-mod/man-pages/checksums b/community-mod/man-pages/checksums
new file mode 100644
index 0000000..809ce7a
--- /dev/null
+++ b/community-mod/man-pages/checksums
@@ -0,0 +1 @@
+3eda5dce5184599ec37dae3494cf964c550362e9a41fb724792da610bdb13caa
diff --git a/community-mod/man-pages/sources b/community-mod/man-pages/sources
new file mode 100644
index 0000000..e946ede
--- /dev/null
+++ b/community-mod/man-pages/sources
@@ -0,0 +1 @@
+https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/man-pages-5.11.tar.xz
diff --git a/community-mod/man-pages/version b/community-mod/man-pages/version
new file mode 100644
index 0000000..2058461
--- /dev/null
+++ b/community-mod/man-pages/version
@@ -0,0 +1 @@
+5.11 1
diff --git a/community-mod/mawk/build b/community-mod/mawk/build
new file mode 100755
index 0000000..9b1ef84
--- /dev/null
+++ b/community-mod/mawk/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
+
+# Enable alternatives.
+ln -s mawk   "$1/usr/bin/awk"
+ln -s mawk.1 "$1/usr/share/man/man1/awk.1"
diff --git a/community-mod/mawk/checksums b/community-mod/mawk/checksums
new file mode 100644
index 0000000..114b0f3
--- /dev/null
+++ b/community-mod/mawk/checksums
@@ -0,0 +1 @@
+7fd4cd1e1fae9290fe089171181bbc6291dfd9bca939ca804f0ddb851c8b8237
diff --git a/community-mod/mawk/sources b/community-mod/mawk/sources
new file mode 100644
index 0000000..81000a4
--- /dev/null
+++ b/community-mod/mawk/sources
@@ -0,0 +1 @@
+https://invisible-mirror.net/archives/mawk/mawk-1.3.4-20200120.tgz
diff --git a/community-mod/mawk/version b/community-mod/mawk/version
new file mode 100644
index 0000000..77ddbf9
--- /dev/null
+++ b/community-mod/mawk/version
@@ -0,0 +1 @@
+1.3.4-20200120 1
diff --git a/community-mod/mblaze/build b/community-mod/mblaze/build
new file mode 100755
index 0000000..3dad5ee
--- /dev/null
+++ b/community-mod/mblaze/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make all
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/mblaze/checksums b/community-mod/mblaze/checksums
new file mode 100644
index 0000000..aa0d10b
--- /dev/null
+++ b/community-mod/mblaze/checksums
@@ -0,0 +1 @@
+edd8cb86f667543e703dee58263b81c7e47744339d23ebbb6a43e75059ba93b1
diff --git a/community-mod/mblaze/sources b/community-mod/mblaze/sources
new file mode 100644
index 0000000..5e748e1
--- /dev/null
+++ b/community-mod/mblaze/sources
@@ -0,0 +1 @@
+https://github.com/leahneukirchen/mblaze/archive/v1.1.tar.gz
diff --git a/community-mod/mblaze/version b/community-mod/mblaze/version
new file mode 100644
index 0000000..f8b0b37
--- /dev/null
+++ b/community-mod/mblaze/version
@@ -0,0 +1 @@
+1.1 1
diff --git a/community-mod/mdadm/build b/community-mod/mdadm/build
new file mode 100755
index 0000000..be00a1e
--- /dev/null
+++ b/community-mod/mdadm/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+sed -i '/<sys\/types.h>/a #include <sys\/sysmacros.h>' mdadm.h
+sed 's@-Werror@@' -i Makefile
+
+make BINDIR=/usr/bin UDEVDIR=/usr/lib
+make DESTDIR="$1" BINDIR=/usr/bin UDEVDIR=/usr/lib install
diff --git a/community-mod/mdadm/checksums b/community-mod/mdadm/checksums
new file mode 100644
index 0000000..f9c1e7b
--- /dev/null
+++ b/community-mod/mdadm/checksums
@@ -0,0 +1 @@
+ab7688842908d3583a704d491956f31324c3a5fc9f6a04653cb75d19f1934f4a
diff --git a/community-mod/mdadm/sources b/community-mod/mdadm/sources
new file mode 100644
index 0000000..13e802b
--- /dev/null
+++ b/community-mod/mdadm/sources
@@ -0,0 +1 @@
+https://kernel.org/pub/linux/utils/raid/mdadm/mdadm-4.1.tar.xz
diff --git a/community-mod/mdadm/version b/community-mod/mdadm/version
new file mode 100644
index 0000000..60d2ac6
--- /dev/null
+++ b/community-mod/mdadm/version
@@ -0,0 +1 @@
+4.1 1
diff --git a/community-mod/mediainfo/build b/community-mod/mediainfo/build
new file mode 100755
index 0000000..8251ddf
--- /dev/null
+++ b/community-mod/mediainfo/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+cd Project/GNU/CLI
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/mediainfo/checksums b/community-mod/mediainfo/checksums
new file mode 100644
index 0000000..879198a
--- /dev/null
+++ b/community-mod/mediainfo/checksums
@@ -0,0 +1 @@
+de50ca0b2c607b8999d3c9e542d27c97030a59f31859b612335315be6850021e
diff --git a/community-mod/mediainfo/depends b/community-mod/mediainfo/depends
new file mode 100644
index 0000000..e05376f
--- /dev/null
+++ b/community-mod/mediainfo/depends
@@ -0,0 +1 @@
+libmediainfo
diff --git a/community-mod/mediainfo/sources b/community-mod/mediainfo/sources
new file mode 100644
index 0000000..80ee1ef
--- /dev/null
+++ b/community-mod/mediainfo/sources
@@ -0,0 +1 @@
+https://mediaarea.net/download/source/mediainfo/21.03/mediainfo_21.03.tar.xz
diff --git a/community-mod/mediainfo/version b/community-mod/mediainfo/version
new file mode 100644
index 0000000..32f1651
--- /dev/null
+++ b/community-mod/mediainfo/version
@@ -0,0 +1 @@
+21.03 1
diff --git a/community-mod/mg/build b/community-mod/mg/build
new file mode 100755
index 0000000..66703fd
--- /dev/null
+++ b/community-mod/mg/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+	--prefix=/usr \
+	--mandir=/usr/share/man
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/mg/checksums b/community-mod/mg/checksums
new file mode 100644
index 0000000..413c2c7
--- /dev/null
+++ b/community-mod/mg/checksums
@@ -0,0 +1 @@
+3d66079d6a9a2bfba414260f6afd5de5eb148406782772e84850b8585e901925
diff --git a/community-mod/mg/depends b/community-mod/mg/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/mg/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/mg/sources b/community-mod/mg/sources
new file mode 100644
index 0000000..9863a50
--- /dev/null
+++ b/community-mod/mg/sources
@@ -0,0 +1 @@
+https://github.com/ibara/mg/releases/download/mg-6.9/mg-6.9.tar.gz
diff --git a/community-mod/mg/version b/community-mod/mg/version
new file mode 100644
index 0000000..3957d4e
--- /dev/null
+++ b/community-mod/mg/version
@@ -0,0 +1 @@
+6.9 1
diff --git a/community-mod/mksh/build b/community-mod/mksh/build
new file mode 100755
index 0000000..4cfabaa
--- /dev/null
+++ b/community-mod/mksh/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+CFLAGS="$CFLAGS -static" sh Build.sh
+
+install -Dm755 "mksh" "$1/usr/bin/mksh"
diff --git a/community-mod/mksh/checksums b/community-mod/mksh/checksums
new file mode 100644
index 0000000..b8b6bb9
--- /dev/null
+++ b/community-mod/mksh/checksums
@@ -0,0 +1 @@
+e5942607eb930ba6ce3303c4a0db0733371f210c9ce6d5d4b9cc202c76360343
diff --git a/community-mod/mksh/sources b/community-mod/mksh/sources
new file mode 100644
index 0000000..3b27f40
--- /dev/null
+++ b/community-mod/mksh/sources
@@ -0,0 +1 @@
+https://github.com/MirBSD/mksh/archive/mksh-R59c.tar.gz
diff --git a/community-mod/mksh/version b/community-mod/mksh/version
new file mode 100644
index 0000000..2f97b95
--- /dev/null
+++ b/community-mod/mksh/version
@@ -0,0 +1 @@
+59c 1 
diff --git a/community-mod/most/build b/community-mod/most/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/community-mod/most/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/most/checksums b/community-mod/most/checksums
new file mode 100644
index 0000000..ae52e71
--- /dev/null
+++ b/community-mod/most/checksums
@@ -0,0 +1 @@
+db805d1ffad3e85890802061ac8c90e3c89e25afb184a794e03715a3ed190501
diff --git a/community-mod/most/depends b/community-mod/most/depends
new file mode 100644
index 0000000..9ff94a9
--- /dev/null
+++ b/community-mod/most/depends
@@ -0,0 +1 @@
+slang
diff --git a/community-mod/most/sources b/community-mod/most/sources
new file mode 100644
index 0000000..3ff06b8
--- /dev/null
+++ b/community-mod/most/sources
@@ -0,0 +1 @@
+https://www.jedsoft.org/releases/most/most-5.1.0.tar.gz
diff --git a/community-mod/most/version b/community-mod/most/version
new file mode 100644
index 0000000..8f0e326
--- /dev/null
+++ b/community-mod/most/version
@@ -0,0 +1 @@
+5.1.0 1
diff --git a/community-mod/msmtp/build b/community-mod/msmtp/build
new file mode 100755
index 0000000..de15017
--- /dev/null
+++ b/community-mod/msmtp/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-tls=libtls \
+    --disable-nls
+    
+make
+make DESTDIR="$1" install
diff --git a/community-mod/msmtp/checksums b/community-mod/msmtp/checksums
new file mode 100644
index 0000000..0a7805d
--- /dev/null
+++ b/community-mod/msmtp/checksums
@@ -0,0 +1 @@
+2265dc639ebf2edf3069fffe0a3bd76749f8b58f4001d5cdeae19873949099ce
diff --git a/community-mod/msmtp/depends b/community-mod/msmtp/depends
new file mode 100644
index 0000000..b176ac7
--- /dev/null
+++ b/community-mod/msmtp/depends
@@ -0,0 +1,2 @@
+libressl
+pkgconf make
diff --git a/community-mod/msmtp/sources b/community-mod/msmtp/sources
new file mode 100644
index 0000000..5c792de
--- /dev/null
+++ b/community-mod/msmtp/sources
@@ -0,0 +1 @@
+https://marlam.de/msmtp/releases/msmtp-1.8.15.tar.xz
diff --git a/community-mod/msmtp/version b/community-mod/msmtp/version
new file mode 100644
index 0000000..d6216e8
--- /dev/null
+++ b/community-mod/msmtp/version
@@ -0,0 +1 @@
+1.8.15 1
diff --git a/community-mod/mutt/build b/community-mod/mutt/build
new file mode 100755
index 0000000..5585f1d
--- /dev/null
+++ b/community-mod/mutt/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --enable-pop \
+    --enable-imap \
+    --enable-smtp \
+    --with-ssl \
+    --with-sasl
+
+make
+make DESTDIR="$1" install
+
+rm -f "$1/etc/mime.types"
diff --git a/community-mod/mutt/checksums b/community-mod/mutt/checksums
new file mode 100644
index 0000000..9468631
--- /dev/null
+++ b/community-mod/mutt/checksums
@@ -0,0 +1 @@
+80835bbcce920bccf4fc99676eda9e83f03a929b4022eada931d721ede330d37
diff --git a/community-mod/mutt/depends b/community-mod/mutt/depends
new file mode 100644
index 0000000..daa48eb
--- /dev/null
+++ b/community-mod/mutt/depends
@@ -0,0 +1,4 @@
+cyrus-sasl
+ncurses
+perl make
+zlib
diff --git a/community-mod/mutt/sources b/community-mod/mutt/sources
new file mode 100644
index 0000000..e850b21
--- /dev/null
+++ b/community-mod/mutt/sources
@@ -0,0 +1 @@
+https://bitbucket.org/mutt/mutt/downloads/mutt-2.1.0.tar.gz
diff --git a/community-mod/mutt/version b/community-mod/mutt/version
new file mode 100644
index 0000000..ef86239
--- /dev/null
+++ b/community-mod/mutt/version
@@ -0,0 +1 @@
+2.1.0 1
diff --git a/community-mod/nano/build b/community-mod/nano/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/community-mod/nano/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/nano/checksums b/community-mod/nano/checksums
new file mode 100644
index 0000000..5f6626c
--- /dev/null
+++ b/community-mod/nano/checksums
@@ -0,0 +1 @@
+f47c7407d4d7b780c4a8fa20706ebf5740c0df41dc0e521a536916660bc18ec4
diff --git a/community-mod/nano/depends b/community-mod/nano/depends
new file mode 100644
index 0000000..82e5165
--- /dev/null
+++ b/community-mod/nano/depends
@@ -0,0 +1,3 @@
+linux-headers make
+ncurses
+zlib
diff --git a/community-mod/nano/sources b/community-mod/nano/sources
new file mode 100644
index 0000000..853639b
--- /dev/null
+++ b/community-mod/nano/sources
@@ -0,0 +1 @@
+https://www.nano-editor.org/dist/v5/nano-5.8.tar.gz
diff --git a/community-mod/nano/version b/community-mod/nano/version
new file mode 100644
index 0000000..bcbc4c2
--- /dev/null
+++ b/community-mod/nano/version
@@ -0,0 +1 @@
+5.8 1 
diff --git a/community-mod/nawk-git/build b/community-mod/nawk-git/build
new file mode 100755
index 0000000..09ea9cb
--- /dev/null
+++ b/community-mod/nawk-git/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+make CFLAGS="$CFLAGS -static"
+
+install -Dm755 "a.out" "$1/usr/bin/nawk"
+
+ln -s /usr/bin/nawk "$1/usr/bin/awk"
diff --git a/community-mod/nawk-git/checksums b/community-mod/nawk-git/checksums
new file mode 100644
index 0000000..9ee531e
--- /dev/null
+++ b/community-mod/nawk-git/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/onetrueawk/awk
diff --git a/community-mod/nawk-git/sources b/community-mod/nawk-git/sources
new file mode 100644
index 0000000..dd50916
--- /dev/null
+++ b/community-mod/nawk-git/sources
@@ -0,0 +1 @@
+git+https://github.com/onetrueawk/awk
diff --git a/community-mod/nawk-git/version b/community-mod/nawk-git/version
new file mode 100644
index 0000000..75e7ae6
--- /dev/null
+++ b/community-mod/nawk-git/version
@@ -0,0 +1 @@
+20180827 1 
diff --git a/community-mod/ncdu/build b/community-mod/ncdu/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/ncdu/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/ncdu/checksums b/community-mod/ncdu/checksums
new file mode 100644
index 0000000..6d64fe7
--- /dev/null
+++ b/community-mod/ncdu/checksums
@@ -0,0 +1 @@
+2b915752a183fae014b5e5b1f0a135b4b408de7488c716e325217c2513980fd4
diff --git a/community-mod/ncdu/depends b/community-mod/ncdu/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/ncdu/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/ncdu/sources b/community-mod/ncdu/sources
new file mode 100644
index 0000000..6da91c3
--- /dev/null
+++ b/community-mod/ncdu/sources
@@ -0,0 +1 @@
+https://dev.yorhel.nl/download/ncdu-1.16.tar.gz
diff --git a/community-mod/ncdu/version b/community-mod/ncdu/version
new file mode 100644
index 0000000..d1d913e
--- /dev/null
+++ b/community-mod/ncdu/version
@@ -0,0 +1 @@
+1.16 1
diff --git a/community-mod/neofetch/build b/community-mod/neofetch/build
new file mode 100755
index 0000000..d5f438d
--- /dev/null
+++ b/community-mod/neofetch/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" install
diff --git a/community-mod/neofetch/checksums b/community-mod/neofetch/checksums
new file mode 100644
index 0000000..ceca3b5
--- /dev/null
+++ b/community-mod/neofetch/checksums
@@ -0,0 +1 @@
+58a95e6b714e41efc804eca389a223309169b2def35e57fa934482a6b47c27e7  7.1.0.tar.gz
diff --git a/community-mod/neofetch/depends b/community-mod/neofetch/depends
new file mode 100644
index 0000000..705963a
--- /dev/null
+++ b/community-mod/neofetch/depends
@@ -0,0 +1 @@
+bash
diff --git a/community-mod/neofetch/sources b/community-mod/neofetch/sources
new file mode 100644
index 0000000..e6c89e8
--- /dev/null
+++ b/community-mod/neofetch/sources
@@ -0,0 +1 @@
+https://github.com/dylanaraps/neofetch/archive/7.1.0.tar.gz
diff --git a/community-mod/neofetch/version b/community-mod/neofetch/version
new file mode 100644
index 0000000..452f8a8
--- /dev/null
+++ b/community-mod/neofetch/version
@@ -0,0 +1 @@
+7.1.0 1
diff --git a/community-mod/neomutt/build b/community-mod/neomutt/build
new file mode 100755
index 0000000..6a55df7
--- /dev/null
+++ b/community-mod/neomutt/build
@@ -0,0 +1,29 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --ssl \
+    --sasl \
+    --gnutls \
+    --disable-nls \
+    --disable-idn \
+    --disable-doc \
+    --zlib
+
+make
+make DESTDIR="$1" install
+
+# Install the man pages.
+# The neomutt.1 and neomuttrc.5 are usually generated (when running
+# ./configure without --disable-doc) but this requires an internet
+# connection (!?), so I've included them as local sources. The other
+# ones are provided in the tarball.
+install -Dm644 -t "$1/usr/share/man/man1/" \
+    docs/neomutt.1 \
+    docs/pgpewrap.1 \
+    docs/smime_keys.1
+install -Dm644 -t "$1/usr/share/man/man5/" \
+    docs/neomuttrc.5 \
+    docs/mbox.5 \
+    docs/mmdf.5
diff --git a/community-mod/neomutt/checksums b/community-mod/neomutt/checksums
new file mode 100644
index 0000000..66fc4b1
--- /dev/null
+++ b/community-mod/neomutt/checksums
@@ -0,0 +1,3 @@
+77e177780fc2d8abb475d9cac4342c7e61d53c243f6ce2f9bc86d819fc962cdb
+90f180684dd3a0a30738fd2fa3c571a30999d5d4a01aa5632310a5692260b4df
+7401991898d187e26729cf8df1ccd671572da6830f318444da0644e6cab5fc2c
diff --git a/community-mod/neomutt/depends b/community-mod/neomutt/depends
new file mode 100644
index 0000000..d17eb73
--- /dev/null
+++ b/community-mod/neomutt/depends
@@ -0,0 +1,4 @@
+cyrus-sasl
+gnutls
+ncurses
+zlib
diff --git a/community-mod/neomutt/files/neomutt.1 b/community-mod/neomutt/files/neomutt.1
new file mode 100644
index 0000000..0cc4ef8
--- /dev/null
+++ b/community-mod/neomutt/files/neomutt.1
@@ -0,0 +1,589 @@
+'\" t
+.\" -*- nroff -*-
+.\"
+.\"
+.\"     Copyright (C) 1996-2020 Michael R. Elkins <me@cs.hmc.edu>
+.\"
+.\"     This program is free software; you can redistribute it and/or modify
+.\"     it under the terms of the GNU General Public License as published by
+.\"     the Free Software Foundation; either version 2 of the License, or
+.\"     (at your option) any later version.
+.\"
+.\"     This program is distributed in the hope that it will be useful,
+.\"     but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\"     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+.\"     GNU General Public License for more details.
+.\"
+.\"     You should have received a copy of the GNU General Public License
+.\"     along with this program; if not, write to the Free Software
+.\"     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+.\"
+.TH neomutt 1 "2021-02-05" Unix "User Manuals"
+.\" --------------------------------------------------------------------
+.SH NAME
+.\" --------------------------------------------------------------------
+neomutt \- The NeoMutt Mail User Agent (MUA)
+.
+.\" --------------------------------------------------------------------
+.SH SYNTAX
+.\" --------------------------------------------------------------------
+.SY neomutt
+.OP \-Enx
+.OP \-e command
+.OP \-F config
+.OP \-H draft
+.OP \-i include
+.br
+.OP \-b address
+.OP \-c address
+.OP \-s subject
+.RB [ \-a
+.IR file " [" .\|.\|.\& ]
+.BR \-\- ]
+.IR address " [" .\|.\|.\& ]
+.YS
+.
+.SY neomutt
+.OP \-nx
+.OP \-e command
+.OP \-F config
+.OP \-b address
+.OP \-c address
+.br
+.OP \-s subject
+.RB [ \-a
+.IR file " [" .\|.\|.\& ]
+.BR \-\- ]
+.IR address " [" .\|.\|.\& "] < message"
+.YS
+.
+.SY neomutt
+.OP \-nRy
+.OP \-e command
+.OP \-F config
+.OP \-f mailbox
+.OP \-m type
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-A " alias"
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BR \-B
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BR \-D " [" \-S ] " [" \-O ]
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-d " level"
+.BI \-l " file"
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-G
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-g " server"
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-p
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-Q " variable [" \-O ]
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-Z
+.YS
+.
+.SY neomutt
+.OP \-n
+.OP \-e command
+.OP \-F config
+.BI \-z
+.OP \-f mailbox
+.YS
+.
+.SY neomutt
+.BR \-v [ v ]
+.YS
+.
+.\" --------------------------------------------------------------------
+.SH DESCRIPTION
+.\" --------------------------------------------------------------------
+.PP
+NeoMutt is a small but very powerful text based program for reading and sending
+electronic mail under Unix operating systems, including support for color
+terminals, MIME, OpenPGP, and a threaded sorting mode.
+.
+.PP
+.B Note:
+This manual page gives a brief overview of NeoMutt's command line options. You
+should find a copy of the full manual in \fI/usr/share/doc/neomutt\fP, in plain text,
+HTML, and/or PDF format.
+.
+.\" --------------------------------------------------------------------
+.SH OPTIONS
+.\" --------------------------------------------------------------------
+.TP
+.BI \-\-
+Special argument forces NeoMutt to stop option parsing and treat remaining
+arguments as \fIaddress\fPes even if they start with a dash
+.
+.TP
+.BI \-A " alias"
+Print an expanded version of the given \fIalias\fP to stdout and exit
+.
+.TP
+.BI \-a " file"
+Attach one or more \fIfile\fPs to a message (must be the last option). Add any
+addresses after the \(aq\fB\-\-\fP\(aq argument, e.g.:
+.RS
+.IP
+.EX
+.BI "neomutt \-a " "image.jpg " "\-\- " "address1 "
+.BI "neomutt \-a " "image.jpg *.png " "\-\- " "address1 address2 "
+.EE
+.RE
+.IP
+.
+.TP
+.BI \-B
+Run in batch mode (do not start the ncurses UI)
+.
+.TP
+.BI \-b " address"
+Specify a blind carbon copy (Bcc) recipient
+.
+.TP
+.BI \-c " address"
+Specify a carbon copy (Cc) recipient
+.
+.TP
+.BI \-D
+Dump all configuration variables as
+.RB \(aq name = value \(aq
+pairs to stdout
+.
+.TP
+.BI \-D\ \-O
+Like \fB\-D\fP, but show one-liner documentation
+.
+.TP
+.BI \-D\ \-S
+Like \fB\-D\fP, but hide the value of sensitive variables
+.
+.TP
+.BI \-d " level"
+Log debugging output to a file (default is \(dq\fI~/.neomuttdebug0\fP\(dq).
+The \fIlevel\fP can range from 1\(en5 and affects verbosity (a value of 2 is
+recommended)
+.IP
+Using this option along with \fB\-l\fP is useful to log the early startup
+process (before reading any configuration and hence $debug_level and
+$debug_file)
+.
+.TP
+.BI \-E
+Edit \fIdraft\fP (\fB\-H\fP) or \fIinclude\fP (\fB\-i\fP) file during message
+composition
+.
+.TP
+.BI \-e " command"
+Specify a \fIcommand\fP to be run after reading the config files
+.
+.TP
+.BI \-F " config"
+Specify an alternative initialization file to read, see \fIFILES\fP section
+below for a list of regular configuration files
+.
+.TP
+.BI \-f " mailbox"
+Specify a \fImailbox\fP (as defined with \fBmailboxes\fP command) to load
+.
+.TP
+.BI \-G
+Start NeoMutt with a listing of subscribed newsgroups
+.
+.TP
+.BI \-g " server"
+Like \fB\-G\fP, but start at specified news \fIserver\fP
+.
+.BI \-H " draft"
+Specify a \fIdraft\fP file which contains header and body to use to send a
+message.
+If \fIdraft\fP is \*(lq\fB\-\fP\*(rq, then data is read from stdin.
+The draft file is expected to contain just an RFC822 email \(em headers and a body.
+Although it is not an mbox file, if an mbox "\fBFrom\~\fP" line is present,
+it will be silently discarded.
+.
+.TP
+.BI \-h
+Print this help message and exit
+.
+.TP
+.BI \-i " include"
+Specify an \fIinclude\fP file to be embedded in the body of a message
+.
+.TP
+.BI \-l " file"
+Specify a \fIfile\fP for debugging output (default
+\(dq\fI~/.neomuttdebug0\fP\(dq)
+.IP
+This overrules $debug_file setting and NeoMutt keeps up to five debug logs
+.RI "({ " file " | $debug_file | " ~/.neomuttdebug " }[" 0 - 4 ])
+before override the oldest file
+.
+.TP
+.BI \-m " type"
+Specify a default mailbox format \fItype\fP for newly created folders
+.IP
+The \fItype\fP is either MH, MMDF, Maildir or mbox (case-insensitive)
+.
+.TP
+.BI \-n
+Do not read the system-wide configuration file
+.
+.TP
+.BI \-p
+Resume a prior postponed message, if any
+.
+.TP
+.BI \-Q " variable"
+Query a configuration \fIvariable\fP and print its value to stdout (after the
+config has been read and any commands executed).
+Add -O for one-liner documentation.
+.
+.TP
+.BI \-R
+Open mailbox in read-only mode
+.
+.TP
+.BI \-s " subject"
+Specify a \fIsubject\fP (must be enclosed in quotes if it has spaces)
+.
+.TP
+.BI \-v
+Print the NeoMutt version and compile-time definitions and exit
+.
+.TP
+.BI \-vv
+Print the NeoMutt license and copyright information and exit
+.
+.TP
+.BI \-y
+Start NeoMutt with a listing of all defined mailboxes
+.
+.TP
+.BI \-Z
+Open the first mailbox with new message or exit immediately with exit code 1 if
+none is found in all defined mailboxes
+.
+.TP
+.BI \-z
+Open the first or specified (\fB\-f\fP) mailbox if it holds any message or exit
+immediately with exit code 1 otherwise
+.
+.\" --------------------------------------------------------------------
+.SH ENVIRONMENT
+.\" --------------------------------------------------------------------
+.TP
+.SM
+.B EDITOR
+Specifies the editor to use if \fIVISUAL\fP is unset. Defaults to the \fBVi\fP
+editor if unset.
+.
+.TP
+.SM
+.B EGDSOCKET
+For OpenSSL since version 0.9.5, files, mentioned at \fIRANDFILE\fP below, can
+be Entropy Gathering Daemon (EGD) sockets. Also, and if exists,
+\fI~/.entropy\fP and \fI/tmp/entropy\fP will be used to initialize SSL library
+functions. Specified sockets must be owned by the user and have permission of
+600 (octal number representing).
+.
+.TP
+.SM
+.B EMAIL
+The user's email address.
+.
+.TP
+.SM
+.B HOME
+Full path of the user's home directory.
+.
+.TP
+.SM
+.B MAIL
+Full path of the user's spool mailbox.
+.
+.TP
+.SM
+.B MAILCAPS
+Path to search for mailcap files. If unset, a RFC1524 compliant search path
+that is extended with NeoMutt related paths (at position two and three):
+.\" .RS
+.\" .IP
+.RI \(dq \
+"$HOME/\:.mailcap" \:: \
+"/usr/share/neomutt/\:mailcap" \:: \
+"/etc/\:mailcap" \:: \
+"/etc/\:mailcap" \:: \
+"/usr/\:etc/\:mailcap" \:: \
+"/usr/\:local/\:etc/\:mailcap" \(dq
+.\" .RE
+.\" .IP
+will be used instead.
+.
+.TP
+.SM
+.B MAILDIR
+Full path of the user's spool mailbox if \fIMAIL\fP is unset. Commonly used
+when the spool mailbox is a
+.BR maildir (5)
+folder.
+.
+.TP
+.SM
+.B MM_NOASK
+If this variable is set, mailcap are always used without prompting first.
+.
+.TP
+.SM
+.B NNTPSERVER
+Similar to configuration variable $news_server, specifies the domain name or
+address of the default NNTP server to connect. If unset,
+\fI/etc/nntpserver\fP is used but can be overridden by command line
+option \fB\-g\fP.
+.
+.TP
+.SM
+.B RANDFILE
+Like configuration variable $entropy_file, defines a path to a file which
+includes random data that is used to initialize SSL library functions. If
+unset, \fI~/.rnd\fP is used. DO NOT store important data in the specified file.
+.
+.TP
+.SM
+.B REPLYTO
+When set, specifies the default Reply-To address.
+.
+.TP
+.SM
+.B TEXTDOMAINDIR
+Defines an absolute path corresponding to \fI/usr/share/locale\fP that will
+be recognised by GNU
+.BR gettext (1)
+and used for Native Language Support (NLS) if enabled.
+.
+.TP
+.SM
+.B TMPDIR
+Directory in which temporary files are created. Defaults to \fI/tmp\fP if
+unset. Configuration variable $tmpdir takes precedence over this one.
+.
+.TP
+.SM
+.B VISUAL
+Specifies the editor to use when composing messages.
+.
+.TP
+.SM
+.B XDG_CONFIG_DIRS
+Specifies a X Desktop Group (XDG) compliant location for the system-wide
+configuration file, as described in \fIFILES\fP section below. This variable
+defaults to \fI/etc/xdg\fP. Bypass loading with command line option \fB\-n\fP.
+.
+.TP
+.SM
+.B XDG_CONFIG_HOME
+Specifies a XDG compliant location for the user-specific configuration file, as
+described in \fIFILES\fP section below. This variable defaults to
+\fI$HOME/.config\fP. Can be overridden by command line option \fB\-F\fP.
+.
+.\" --------------------------------------------------------------------
+.SH FILES
+.\" --------------------------------------------------------------------
+.SS "\s-1Configuration files\s0"
+.\" --------------------------------------------------------------------
+.PP
+NeoMutt will read just the first found configuration file of system-wide and
+user-specific category, from the list below and in that order.
+.
+.PP
+But it allows building of a recursive configuration by using the \fBsource\fP
+command.
+.
+.PP
+.na
+.TS
+allbox tab(|);
+cb cb cb
+r lxi lxi .
+\0#N|system-wide|user-specific
+1|T{
+\%$XDG_CONFIG_DIRS/\:neomutt/\:neomuttrc
+T}|T{
+\%$XDG_CONFIG_HOME/\:neomutt/\:neomuttrc
+T}
+2|T{
+\%$XDG_CONFIG_DIRS/\:neomutt/\:Muttrc \fB*\fP\fR)\fP
+T}|T{
+\%$XDG_CONFIG_HOME/\:neomutt/\:muttrc
+T}
+3|T{
+\%/etc/\:neomuttrc
+T}|T{
+\%$XDG_CONFIG_HOME/\:mutt/\:neomuttrc
+T}
+4|T{
+\%/etc/\:Muttrc \fB*\fP\fR)\fP
+T}|T{
+\%$XDG_CONFIG_HOME/\:mutt/\:muttrc
+T}
+5|T{
+\%/usr/share/neomutt/\:neomuttrc
+T}|T{
+\%~/\:.neomutt/\:neomuttrc
+T}
+6|T{
+\%/usr/share/neomutt/\:Muttrc \fB*\fP\fR)\fP
+T}|T{
+\%~/\:.neomutt/\:muttrc
+T}
+.T&
+r c li .
+7|\(em|~/.mutt/neomuttrc
+8|\(em|~/.mutt/muttrc
+9|\(em|~/.neomuttrc
+10|\(em|~/.muttrc
+.T&
+l s s .
+\0\fB*\fP) Note the case of the filename
+.TE
+.PP
+.ad
+.
+.SS "\s-1Other relevant files\s0"
+.\" --------------------------------------------------------------------
+.PP
+Unless otherwise stated, NeoMutt will process all grouped files in the order
+(from top to bottom) as they are specified in that listing.
+.
+.TP
+.IR "~/.mailcap"
+.TQ
+.IR "/etc/mailcap"
+User-specific and system-wide definitions for handling non-text MIME types,
+look at environment variable \fBMAILCAPS\fP above for additional search
+locations.
+.
+.TP
+.IR "~/.neomuttdebug0"
+User's default debug log file. For further details or customising file path see
+command line options \fB\-d\fP and \fB\-l\fP above.
+.
+.TP
+.IR "/etc/mime.types"
+.TQ
+.IR "/etc/mime.types"
+.TQ
+.IR "/usr/share/neomutt/mime.types"
+.TQ
+.IR "~/.mime.types"
+Description files for simple plain text mapping between MIME types and filename
+extensions. NeoMutt parses these files in the stated order while processing
+attachments to determine their MIME type.
+.
+.TP
+.IR "/usr/share/doc/neomutt/manual." { html , pdf , txt }
+The full NeoMutt manual in HTML, PDF or plain text format.
+.
+.TP
+.IR "/tmp/neomutt-XXXX-XXXX-XXXX"
+Temporary files created by NeoMutt. For custom locations look at description of
+the environment variable \fBTMPDIR\fP above. Notice that the suffix
+\fI-XXXX-XXXX-XXXX\fP is just a placeholder for, e.g. hostname, user name/ID,
+process ID and/or other random data.
+.
+.\" --------------------------------------------------------------------
+.SH BUGS
+.\" --------------------------------------------------------------------
+.PP
+See issue tracker at <https://github.com/neomutt/neomutt/issues>.
+.
+.\" --------------------------------------------------------------------
+.SH NO WARRANTIES
+.\" --------------------------------------------------------------------
+.PP
+This program is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+.
+.\" --------------------------------------------------------------------
+.SH SEE ALSO
+.\" --------------------------------------------------------------------
+.PP
+.\" sorted by category and name
+.BR gettext (1),
+.BR msmtp (1),
+.BR notmuch (1),
+.BR sendmail (1),
+.BR smail (1),
+.BR RAND_egd (3),
+.BR curses (3),
+.BR ncurses (3),
+.BR mailcap (5),
+.BR maildir (5),
+.BR mbox (5),
+.BR neomuttrc (5).
+.
+.PP
+For further NeoMutt information:
+.RS 4
+.TP
+\(bu the full manual, see \fIFILES\fP section above
+.TQ
+\(bu the home page, <https://neomutt.org>
+.RE
+.
+.\" --------------------------------------------------------------------
+.SH AUTHOR
+.\" --------------------------------------------------------------------
+.PP
+Michael Elkins, and others. Use <neomutt-devel@\:neomutt.org> to contact the
+developers.
+.
diff --git a/community-mod/neomutt/files/neomuttrc.5 b/community-mod/neomutt/files/neomuttrc.5
new file mode 100644
index 0000000..829aecc
--- /dev/null
+++ b/community-mod/neomutt/files/neomuttrc.5
@@ -0,0 +1,9330 @@
+'\" t
+.\" -*- nroff -*-
+.\"
+.\"     Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu>
+.\"     Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org>
+.\"
+.\"     This program is free software; you can redistribute it and/or modify
+.\"     it under the terms of the GNU General Public License as published by
+.\"     the Free Software Foundation; either version 2 of the License, or
+.\"     (at your option) any later version.
+.\"
+.\"     This program is distributed in the hope that it will be useful,
+.\"     but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\"     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+.\"     GNU General Public License for more details.
+.\"
+.\"     You should have received a copy of the GNU General Public License
+.\"     along with this program; if not, write to the Free Software
+.\"     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+.\"
+.de EX
+.nf
+.ft CW
+..
+.de EE
+.ft
+.fi
+..
+.TH neomuttrc 5 "2021-02-05" Unix "User Manuals"
+.\" --------------------------------------------------------------------
+.SH NAME
+.\" --------------------------------------------------------------------
+neomuttrc \- Configuration file for the NeoMutt Mail User Agent (MUA)
+.
+.\" --------------------------------------------------------------------
+.SH DESCRIPTION
+.\" --------------------------------------------------------------------
+.PP
+A NeoMutt configuration file consists of a series of \(lqcommands\(rq. Each
+line of the file may contain one or more commands. When multiple commands are
+used, they must be separated by a semicolon (\(lq\fB;\fP\(rq).
+.
+.PP
+The hash mark, or pound sign (\(lq\fB#\fP\(rq), is used as a \(lqcomment\(rq
+character. You can use it to annotate your initialization file. All text after
+the comment character to the end of the line is ignored.
+.
+.PP
+Single quotes (\(lq\fB\(aq\fP\(rq) and double quotes (\(lq\fB\(dq\fP\(rq) can
+be used to quote strings which contain spaces or other special characters. The
+difference between the two types of quotes is similar to that of many popular
+shell programs, namely that a single quote is used to specify a literal string
+(one that is not interpreted for shell variables or quoting with a backslash
+[see next paragraph]), while double quotes indicate a string which should be
+evaluated. For example, backticks are evaluated inside of double quotes, but
+not single quotes.
+.
+.PP
+\(lq\fB\(rs\fP\(rq quotes the next character, just as in shells such as Bash
+and Zsh. For example, if you want to put quotes (\(lq\fB\(dq\fP\(rq) inside of
+a string, you can use \(lq\fB\(rs\fP\(rq to force the next character to be
+a literal instead of interpreted character.
+.
+.PP
+\(lq\fB\(rs\(rs\fP\(rq means to insert a literal \(lq\fB\(rs\fP\(rq into the
+line. \(lq\fB\(rsn\fP\(rq and \(lq\fB\(rsr\fP\(rq have their usual C meanings
+of line feed (LF) and carriage return (CR), respectively.
+.
+.PP
+A \(lq\fB\(rs\fP\(rq at the end of a line can be used to split commands over
+multiple lines, provided that the split points don't appear in the middle of
+command names.
+.
+.PP
+It is also possible to substitute the output of a Unix command in an
+initialization file. This is accomplished by enclosing the command in backticks
+(\fB\(ga\fP\fIcommand\fP\fB\(ga\fP).
+.
+.PP
+Unix environment variables can be accessed like the way it is done in shells
+like sh and Bash: Prepend the name of the variable by a dollar
+(\(lq\fB\(Do\fP\(rq) sign.
+.
+.\" --------------------------------------------------------------------
+.SH COMMANDS
+.\" --------------------------------------------------------------------
+.SS "\s-1Configuration Commands\s0"
+.\" --------------------------------------------------------------------
+.PP
+The following are the commands understood by NeoMutt:
+.
+.PP
+.nf
+\fBaccount-hook\fP \fIregex\fP \fIcommand\fP
+.fi
+.IP
+This hook is executed whenever you access a remote mailbox. Useful to adjust
+configuration settings to different IMAP or POP servers.
+.
+.PP
+.nf
+\fBalias\fP [ \fB\-group\fP \fIname\fP ... ] \fIkey\fP \fIaddress\fP [\fB,\fP \fIaddress\fP ... ]
+\fBunalias\fP [ \fB\-group\fP \fIname\fP ... ] { \fB*\fP | \fIkey\fP ... }
+.fi
+.IP
+\fBalias\fP defines a surrogate \fIkey\fP for the given address(es). Each
+\fIaddress\fP will be resolved into either an email address
+(user@\:example.com) or a named email address (User Name <user@\:example.com>).
+The address may be specified in either format, or in the format
+\(lquser@\:example.com (User Name)\(rq.
+.IP
+\fBNote\fP: If you want to create an alias for more than one address, you
+\fBmust\fP separate the addresses with a comma (\(lq\fB,\fP\(rq).
+.IP
+\fBunalias\fP removes the alias corresponding to the given \fIkey\fP or all
+aliases when \(lq\fB*\fP\(rq is used as an argument.
+.IP
+The optional \fB\-group\fP flag causes the address(es) to be added to or
+removed from the \fIname\fPd group.
+.
+.PP
+.nf
+\fBalternates\fP [ \fB\-group\fP \fIname\fP ... ] \fIregex\fP [ \fIregex\fP ... ]
+\fBunalternates\fP [ \fB\-group\fP \fIname\fP ... ] { \fB*\fP | \fIregex\fP ... }
+.fi
+.IP
+\fBalternates\fP is used to inform NeoMutt about alternate addresses where you
+receive mail; you can use regular expressions (\fIregex\fP) to specify
+alternate addresses. This affects NeoMutt's idea about messages from you, and
+messages addressed to you.
+.IP
+\fBunalternates\fP can be used to write exceptions to alternates patterns. To
+remove a regular expression from the alternates list, use the unalternates
+command with exactly the same \fIregex\fP or use \(lq\fB*\fP\(rq to remove all
+entries.
+.IP
+The optional \fB\-group\fP flag causes all of the subsequent regular expressions
+to be added to or removed from the \fIname\fPd group.
+.
+.PP
+.nf
+\fBalternative_order\fP \fImime-type\fP[/\fImime-subtype\fP] [ \fImime-type\fP[/\fImime-subtype\fP] ... ]
+\fBunalternative_order\fP { \fB*\fP | \fImime-type\fP[/\fImime-subtype\fP] ... }
+.fi
+.IP
+\fBalternative_order\fP command permits you to define an order of preference
+that is used by NeoMutt to determine which part of
+a \fBmultipart/\:alternative\fP body to display. A \fImime-subtype\fP of
+\(lq\fB*\fP\(rq matches any \fBmultipart/\:alternative\fP subtype, as does an
+empty \fImime-subtype\fP.
+.IP
+\fBunalternative_order\fP removes entries from the ordered list or deletes the
+entire list when \(lq\fB*\fP\(rq is used as an argument.
+.
+.PP
+.nf
+\fBattachments\fP { \fB+\fP | \fB\-\fP }\fIdisposition\fP \fImime-type\fP
+\fBunattachments\fP { \fB+\fP | \fB\-\fP }\fIdisposition\fP \fImime-type\fP
+.fi
+.IP
+You can make your message index display the number of qualifying attachments in
+each message, or search for messages by attachment count. You also can
+configure what kinds of attachments qualify for this feature with the
+\fBattachments\fP and \fBunattachments\fP commands.
+.IP
+\fIdisposition\fP is the attachment's Content-Disposition type \(em either
+inline or attachment. You can abbreviate this to \fBI\fP or \fBA\fP.
+.IP
+\fImime-type\fP is the MIME type of the attachment you want the command to
+affect. A MIME type is always of the format \fBmajor/minor\fP. The major part
+of \fImime-type\fP must be literal text (or the special token \(lq\fB*\fP\(rq,
+but the minor part may be a regular expression. Therefore, \(lq\fB*/.*\fP\(rq
+matches any MIME type.
+.
+.PP
+.nf
+\fBauto_view\fP \fImime-type\fP[\fB/\fP\fImime-subtype\fP] [ \fImime-type\fP[\fB/\fP\fImime-subtype\fP] ... ]
+\fBunauto_view\fP { \fB*\fP | \fImime-type\fP[\fB/\fP\fImime-subtype\fP] ... }
+.fi
+.IP
+This commands permits you to specify that NeoMutt should automatically convert
+the given \fImime-type\fPs to text/plain when displaying messages. For this to work,
+there must be a
+.BR mailcap (5)
+entry for the given \fImime-type\fP with the \fBcopiousoutput\fP option set.
+A \fImime-subtype\fP of \(lq\fB*\fP\(rq matches any
+\fBmultipart/\:alternative\fP subtype, as does an empty \fImime-subtype\fP.
+.
+.PP
+.nf
+\fBbind\fP \fImap\fP[\fB,\fP\fImap\fP ... ] \fIkey\fP \fIfunction\fP
+\fBunbind\fP { \fB*\fP | \fImap\fP | [\fB,\fP\fImap\fP...]} [ \fIkey\fP ]
+.fi
+.IP
+This command allows you to change the default or define additional key bindings
+(operation invoked when pressing a key).
+.IP
+\fImap\fP specifies in which menu the binding belongs. Multiple \fImap\fPs may
+be specified by separating them with commas (no additional whitespace is
+allowed). The currently defined \fImap\fPs are:
+.BR alias ", " attach ", " browser ", " compose ", " editor ", " generic ", "
+.BR index ", " mix ", " pager ", " pgp ", " postpone ", " query " and " smime "."
+.IP
+\fIkey\fP is the key (or key sequence) you wish to bind, e.g.
+\(lq\fB\(rsCa\fP\(rq for control-A. In addition, \fIkey\fP may be specified as
+a three digit octal number prefixed with a \(lq\fB\(rs\fP\(rq or as a symbolic
+name. The \fB<what-key>\fP function can be used to explore keycode and
+symbolic names for the keys on your keyboard.
+.IP
+\fIfunction\fP specifies which action to take when key is pressed. Note that
+the function name is to be specified without angle brackets.
+.IP
+Missing key sequence in \fBunbind\fP command means unbind all bindings in menus given in \fImap\fP .
+.IP
+For more information on keys and functions, please consult the NeoMutt manual.
+.
+.PP
+.nf
+\fBcharset-hook\fP \fIalias\fP \fIcharset\fP
+\fBiconv-hook\fP \fIcharset\fP \fIlocal-charset\fP
+.fi
+.IP
+\fBcharset-hook\fP defines an \fIalias\fP for a character set. This is useful to
+properly display messages which are tagged with a character set name not known
+to NeoMutt.
+.IP
+\fBiconv-hook\fP defines a system-specific name for a character set. This is
+useful when your system's
+.BR iconv (3)
+implementation does not understand MIME character set names (such as
+\fBiso-8859-1\fP), but instead insists on being fed with
+implementation-specific character set names (such as \fB8859-1\fP). In this
+specific case, you'd put \(lq\fBiconv-hook\fP\~iso-8859-1\~8859-1\(rq into your
+configuration file.
+.
+.PP
+.nf
+\fBcolor\fP \fIobject\fP [ \fIattribute\fP ... ] \fIforeground\fP \fIbackground\fP
+\fBcolor\fP { header | body } [ \fIattribute\fP ... ] \fIforeground\fP \fIbackground\fP \fIregex\fP
+\fBcolor\fP index-object [ \fIattribute\fP ... ] \fIforeground\fP \fIbackground\fP \fIpattern\fP
+\fBcolor\fP compose \fIcomposeobject\fP \fIforeground\fP \fIbackground\fP
+\fBcolor\fP compose \fIcomposeobject\fP [ \fIattribute\fP ... ] \fIforeground\fP \fIbackground\fP
+\fBuncolor\fP { index-object | header | body } { \fB*\fP | \fIpattern\fP ... }
+.fi
+.IP
+If your terminal supports color, these commands can be used to assign
+\fIforeground\fP/\:\fIbackground\fP combinations to certain \fIobject\fPs. The
+currently defined \fIobject\fPs are:
+.BR attach_\:headers ", "
+.BR attachment ", "
+.BR body ", "
+.BR bold ", "
+.BR error ", "
+.BR hdrdefault ", "
+.BR header ", "
+.BR index ", "
+.BR index_\:author ", "
+.BR index_\:collapsed ", "
+.BR index_\:date ", "
+.BR index_\:flags ", "
+.BR index_\:label ", "
+.BR index_\:number ", "
+.BR index_\:size ", "
+.BR index_\:subject ", "
+.BR index_\:tag ", "
+.BR index_\:tags ", "
+.BR indicator ", "
+.BR markers ", "
+.BR message ", "
+.BR normal ", "
+.BR progress ", "
+.BR prompt ", "
+.BR quoted ", "
+.BR quoted\fIN\fP ", "
+.BR search ", "
+.BR signature ", "
+.BR status ", "
+.BR tilde ", "
+.BR tree ", "
+.BR underline "."
+.IP
+If the sidebar is enabled the following \fIobject\fPs are also valid:
+.BR sidebar_\:divider ", "
+.BR sidebar_\:flagged ", "
+.BR sidebar_\:highlight ", "
+.BR sidebar_\:indicator ", "
+.BR sidebar_\:new ", "
+.BR sidebar_\:ordinary ", "
+.BR sidebar_\:spoolfile "."
+.IP
+The \fBbody\fP and \fBheader\fP objects allow you to restrict the colorization
+to a regular expression. The \fBindex-object\fP permits you to select colored
+messages by pattern.
+.IP
+The \fBheader\fP and \fBbody\fP match \fIregex\fP in the header/body of
+a message, \fBindex-object\fP can match \fIpattern\fP in the message index.
+Note that IMAP server-side searches (=b, =B, =h) are not supported for color
+index patterns.
+.IP
+Valid composeobjects include
+.BR header ", " security_encrypt ", " security_sign ", "
+.BR security_both ", " security_none .
+.IP
+Valid colors include:
+.BR default ", "
+.BR black ", "
+.BR red ", "
+.BR green ", "
+.BR yellow ", "
+.BR blue ", "
+.BR magenta ", "
+.BR cyan ", "
+.BR white ", "
+.BR color\fIN\fP "."
+.IP
+Valid attributes include:
+.BR none ", " bold ", " underline ", "
+.BR reverse ", and " standout .
+IP
+The \fBuncolor\fP command can be applied to the index, header and body objects
+only. It removes entries from the list. You must specify the same \fIpattern\fP
+specified in the \fBcolor\fP command for it to be removed. The pattern
+\(lq\fB*\fP\(rq is a special token which means to clear the color list of all
+entries.
+.IP
+For further information on colorization, please consult the NeoMutt manual.
+.
+.PP
+.nf
+\fBcrypt-hook\fP \fIregex\fP \fIkeyid\fP
+.fi
+.IP
+The crypt-hook command provides a method by which you can specify the ID of the
+public key to be used when encrypting messages to a certain recipient. The
+meaning of \fIkeyid\fP is to be taken broadly: This can be a different email
+address, a numerical \fIkeyid\fP, or even just an arbitrary search string. You
+may use multiple \fBcrypt-hook\fPs with the same \fIregex\fP; multiple matching
+\fBcrypt-hook\fPs result in the use of multiple \fIkeyid\fPs for a recipient.
+.TP
+\fBindex-format-hook\fP \fIname\fP [\fB!\fP]\fIpattern\fP \fIformat-string\fP
+This command is used to inject format strings dynamically into
+$index_format based on pattern matching against the current message.
+.IP
+The $index_format expando \fI%@name@\fP specifies a placeholder for
+the injection. Index-format-hooks with the same \fIname\fP are matched
+using \fIpattern\fP against the current message. Matching is done in
+the order specified in the .neomuttrc, with the first match being
+used. The hook's \fIformat-string\fP is then substituted and evaluated.
+.
+.PP
+.nf
+\fBexec\fP \fIfunction\fP [ \fIfunction\fP ... ]
+.fi
+.IP
+This command can be used to execute any \fIfunction\fP. Functions are listed in
+the function reference. \(lq\fBexec\fP \fIfunction\fP\(rq is equivalent to
+\(lq\fBpush\fP <\fIfunction\fP>\(rq.
+.
+.PP
+.nf
+\fBfcc-save-hook\fP \fIpattern\fP \fImailbox\fP
+\fBfcc-hook\fP \fIpattern\fP \fImailbox\fP
+\fBsave-hook\fP \fIpattern\fP \fImailbox\fP
+.fi
+.IP
+\fBfcc-save-hook\fP is a shortcut, equivalent to doing both a \fBfcc-hook\fP
+and a \fBsave-hook\fP with its arguments, including %-expansion on
+\fImailbox\fP according to $index_format.
+.IP
+\fBfcc-hook\fP is used to save outgoing mail in a mailbox other than $record.
+NeoMutt searches the initial list of message recipients for the first matching
+\fIpattern\fP and uses \fImailbox\fP as the default \(lqFcc:\(rq mailbox. If no
+match is found the message will be saved to $record mailbox.
+.IP
+\fBsave-hook\fP is used to override the default mailbox used when saving
+messages. \fImailbox\fP will be used as the default if the message matches
+\fIpattern\fP.
+.IP
+To provide more flexibility and good defaults, NeoMutt applies the expandos of
+$index_format to \fImailbox\fP after it was expanded. See \fIPATTERNS\fP
+section below or consult section \(lq\fBMessage Matching in Hooks\fP\(rq in
+NeoMutt manual for information on the exact format of \fIpattern\fP.
+.
+.PP
+.nf
+\fBfolder-hook\fP \fIregex\fP \fIcommand\fP
+.fi
+.IP
+When NeoMutt enters a folder which matches \fIregex\fP (or, when \fIregex\fP is
+preceded by an exclamation mark, does not match \fIregex\fP), the given
+\fIcommand\fP is executed.
+.IP
+When several \fBfolder-hook\fPs match a given mail folder, they are executed in
+the order given in the configuration file.
+.
+.PP
+.nf
+\fBgroup\fP [ \fB\-group\fP \fIname\fP ... ] { \fB\-rx\fP \fIexpr\fP ... | \fB\-addr\fP \fIaddress\fP ... }
+\fBungroup\fP [ \fB\-group\fP \fIname\fP ... ] { \fB*\fP | \fB\-rx\fP \fIexpr\fP ... | \fB\-addr\fP \fIaddress\fP ... }
+.fi
+.IP
+\fBgroup\fP is used to directly add either addresses or regular expressions to
+the specified group or groups. The different categories of arguments to the
+\fBgroup\fP command can be in any order. The flags \fB\-rx\fP and \fB\-addr\fP
+specify what the following strings (that cannot begin with a hyphen) should be
+interpreted as: either a regular expression or an email address, respectively.
+.IP
+\fBungroup\fP is used to remove addresses or regular expressions from the
+specified group or groups. The syntax is similar to the \fBgroup\fP command,
+however the special character \(lq\fB*\fP\(rq can be used to empty a group of
+all of its contents.
+.IP
+These address groups can also be created implicitly by the \fBalias\fP,
+\fBlists\fP, \fBsubscribe\fP and \fBalternates\fP commands by specifying the
+optional \fB\-group\fP option.
+.IP
+Once defined, these address groups can be used in patterns to search for and
+limit the display to messages matching a group.
+.
+.PP
+.nf
+\fBhdr_order\fP \fIheader\fP [ \fIheader\fP ... ]
+\fBunhdr_order\fP { \fB*\fP | \fIheader\fP ... }
+.fi
+.IP
+With the \fBhdr_order\fP command you can specify an order in which NeoMutt will
+attempt to present these headers to you when viewing messages.
+.IP
+\(lq\fBunhdr_order\~*\fP\(rq will clear all previous headers from the order
+list, thus removing the header order effects set by the system-wide startup
+file.
+.
+.PP
+.nf
+\fBifdef\fP \fIsymbol\fP "\fIconfig-command\fP [ \fIargs\fP ... ]"
+\fBifndef\fP \fIsymbol\fP "\fIconfig-command\fP [ \fIargs\fP ... ]"
+\fBfinish\fP
+.fi
+.IP
+The \fBifdef\fP feature introduces three new commands to NeoMutt and allow you
+to share one config file between versions of NeoMutt that may have different
+features compiled in.
+.IP
+Here a \fIsymbol\fP can be a
+.BR $variable ", <" function ">, " command " or " "compile-time symbol" ", "
+such as \(lq\fBimap\fP\(rq. A list of compile-time \fIsymbol\fPs can be seen in
+the output of the command \(lq\fBneomutt\~\-v\fP\(rq (in the
+\(lq\fBCompile options\fP\(rq section).
+.IP
+\fBfinish\fP is particularly useful when combined with \fBifndef\fP.
+.
+.PP
+.nf
+\fBignore\fP \fIpattern\fP [ \fIpattern\fP ... ]
+\fBunignore\fP { \fB*\fP | \fIpattern\fP ... }
+.fi
+.IP
+The \fBignore\fP command allows you to specify header fields which you don't
+normally want to see in the pager. You do not need to specify the full header
+field name. For example, \(lq\fBignore\fP content-\(rq will ignore all header
+fields that begin with the pattern \(lqcontent-\(rq, \(lq\fBignore\fP\~*\(rq
+will ignore all headers.
+.IP
+To remove a previously added token from the list, use the \fBunignore\fP
+command. For example, \(lq\fBunignore\fP\~*\(rq will remove all tokens from the
+ignore list.
+.
+.PP
+.nf
+\fBlists\fP [ \fB\-group\fP \fIname\fP ... ] \fIregex\fP [ \fIregex\fP ... ]
+\fBunlists\fP [ \fB\-group\fP \fIname\fP ... ] { \fB*\fP | \fIregex\fP ... }
+\fBsubscribe\fP [ \fB\-group\fP \fIname\fP ... ] \fIregex\fP [ \fIregex\fP ... ]
+\fBunsubscribe\fP [ \fB\-group\fP \fIname\fP ... ] { \fB*\fP | \fIregex\fP ... }
+.fi
+.IP
+NeoMutt maintains two lists of mailing list address patterns, a list of
+subscribed mailing lists, and a list of known mailing lists. All subscribed
+mailing lists are known. Patterns use regular expressions.
+.IP
+The \fBlists\fP command adds a mailing list address to the list of known
+mailing lists. The \fBunlists\fP command removes a mailing list from the lists
+of known and subscribed mailing lists.
+.IP
+The \fBsubscribe\fP command adds a mailing list to the lists of known and
+subscribed mailing lists. The \fBunsubscribe\fP command removes it from the
+list of subscribed mailing lists.
+.IP
+The \fB\-group\fP flag adds all of the subsequent regular expressions to the
+\fIname\fPd group.
+.
+.PP
+.nf
+\fBmacro\fP \fImenu\fP[\fB,\fP\fImenu\fP ... ] \fIkey\fP \fIsequence\fP [ \fIdescription\fP ]
+\fBunmacro\fP { \fB*\fP | \fImenu\fP | [\fB,\fP\fImenu\fP...]} [ \fIkey\fP ]
+.fi
+.IP
+This command binds the given \fIsequence\fP of keys to the given \fIkey\fP in
+the given \fImenu\fP or menus. For currently defined menus, see \fBbind\fP
+command above. To specify multiple menus, put only a comma between the menus.
+.IP
+Optionally you can specify a descriptive text after \fIsequence\fP, which is
+shown in the help screens if they contain a \fIdescription\fP.
+.IP
+Missing key sequence in \fBunmacro\fP command means unmacro all macros in menus given in \fImenu\fP.
+.
+.PP
+.nf
+\fBmailboxes\fP \fImailbox\fP [ \fImailbox\fP ... ]
+\fBnamed-mailboxes\fP \fIdescription\fP \fImailbox\fP [\fIdescription\fP \fImailbox\fP ... ]
+\fBunmailboxes\fP { \fB*\fP | \fImailbox\fP ... }
+.fi
+.IP
+The \fBmailboxes\fP specifies folders which can receive mail and which will be
+checked for new messages. When changing folders, pressing space will cycle
+through folders with new mail.
+.IP
+The \fBnamed-mailboxes\fP is an alternative to \fBmailboxes\fP that allows
+adding a description for a mailbox. NeoMutt can be configured to display the
+description instead of the mailbox path.
+.IP
+The \fBunmailboxes\fP command is used to remove a file name from the list of
+folders which can receive mail. If \(lq\fB*\fP\(rq is specified as the file
+name, the list is emptied.
+.
+.PP
+.nf
+\fBmailto_allow\fP { \fB*\fP | \fIheader-field\fP ... }
+\fBunmailto_allow\fP { \fB*\fP | \fIheader-field\fP ... }
+.fi
+.IP
+As a security measure, NeoMutt will only add user-approved \fIheader-field\fPs
+from a \fImailto:\fP URL. This is necessary since NeoMutt will handle certain
+\fIheader-field\fPs, such as \fBAttach\fP, in a special way. The
+\fBmailto_allow\fP and \fBunmailto_allow\fP commands allow the user to modify
+the list of approved headers.
+.IP
+NeoMutt initializes the default list to contain only the \fBSubject\fP and
+\fBBody\fP \fIheader-field\fPs, which are the only requirement specified by the
+\fImailto:\fP specification in RFC2368, and the \fBCc\fP, \fBIn-Reply-To\fP,
+\fBReferences\fP headers to aid with replies to mailing lists.
+.TP
+\fBecho\fP \fImessage\fP
+Prints \fImessage\fP to the message window. After printing the
+message, echo will pause for the number of seconds specified by
+$sleep_time.
+.TP
+\fBcd\fP \fIdirectory\fP
+Changes the current working directory.
+.
+.PP
+.nf
+\fBmbox-hook\fP \fIregex\fP \fImailbox\fP
+.fi
+.IP
+When NeoMutt changes to a mail folder which matches \fIregex\fP, \fImailbox\fP
+will be used as the \(lqmbox\(rq folder, i.e. read messages will be moved to
+that folder when the mail folder is left.
+.IP
+Note that execution of \fBmbox-hook\fPs is dependent on the $move configuration
+variable. If set to \(lqno\(rq (the default), \fBmbox-hook\fPs will not be
+executed.
+.IP
+The first matching \fBmbox-hook\fP applies.
+.
+.PP
+.nf
+\fBmessage-hook\fP \fIpattern\fP \fIcommand\fP
+.fi
+.IP
+Before NeoMutt displays (or formats for replying or forwarding) a message which
+matches the given \fIpattern\fP (or, when it is preceded by an exclamation
+mark, does not match the \fIpattern\fP), the given \fIcommand\fP is executed.
+When multiple \fBmessage-hook\fPs match, they are executed in the order in
+which they occur in the configuration file.
+.
+.PP
+.nf
+\fBmime_lookup\fP \fImime-type\fP[\fB/\fP\fImime-subtype\fP] [ \fImime-type\fP[\fB/\fP\fImime-subtype\fP] ... ]
+\fBunmime_lookup\fP { \fB*\fP | \fImime-type\fP[\fB/\fP\fImime-subtype\fP] ... }
+.fi
+.IP
+This command permits you to define a list of \(lqdata\(rq MIME content types
+for which NeoMutt will try to determine the actual file type from the file
+name, and not use a
+.BR mailcap (5)
+entry given for the original MIME type. For instance, you may add the
+\fBapplication/\:octet-stream\fP MIME type to this list.
+.IP
+In addition, the \fBunmime_lookup\fP command may be used to disable this
+feature for any particular MIME type if it had been set, for example in
+a global \fIneomuttrc\fP.
+.
+.PP
+.nf
+\fBmono\fP \fIobject\fP \fIattribute\fP
+\fBmono\fP { header | body } \fIattribute\fP \fIregex\fP
+\fBmono\fP index-object \fIattribute\fP \fIpattern\fP
+\fBunmono\fP { index-object | header | body } { \fB*\fP | \fIpattern\fP ... }
+.fi
+.IP
+For terminals which don't support color, you can still assign
+attributes to objects.
+.
+.PP
+.nf
+\fBmy_hdr\fP \fIstring\fP
+\fBunmy_hdr\fP { \fB*\fP | \fIfield\fP ... }
+.fi
+.IP
+Using \fBmy_hdr\fP, you can define headers which will be added to the messages
+you compose. \fBunmy_hdr\fP will remove the given user-defined headers.
+.
+.PP
+.nf
+\fBopen-hook\fP \fIregex\fP "\fIshell-command\fP"
+\fBclose-hook\fP \fIregex\fP "\fIshell-command\fP"
+\fBappend-hook\fP \fIregex\fP "\fIshell-command\fP"
+.fi
+.IP
+These commands provide a way to handle compressed folders. The given
+\fIregex\fP specifies which folders are taken as compressed (e.g.
+\(dq\fB\(rs.gz$\fP\(dq). The commands tell NeoMutt how to uncompress a folder
+(\fBopen-hook\fP), compress a folder (\fBclose-hook\fP) or append a compressed
+mail to a compressed folder (\fBappend-hook\fP). The \fIshell-command\fP is a
+.BR printf (3)
+like format string and must contain two placeholders for from (\fB%f\fP) and to
+(\fB%t\fP) filenames which should be placed inside single-quotes to prevent
+unintended shell expansions. Examples:
+.RS
+.IP
+.EX
+.BR append-hook " \(aq" "\(rs.gz$" "\(aq \(dqgzip \-\-stdout \(aq" "%t" "\(aq >> \(aq" "%f" "\(aq\(dq"
+.BR close-hook " \(aq" "\(rs.gz$" "\(aq \(dqgzip \-\-stdout \(aq" "%t" "\(aq > \(aq" "%f" "\(aq\(dq"
+.BR open-hook " \(aq" "\(rs.gz$" "\(aq \(dqgzip \-\-stdout \-\-decompress \(aq" "%f" "\(aq > \(aq" "%t" "\(aq\(dq"
+.EE
+.RE
+.
+.PP
+.nf
+\fBpush\fP \fIstring\fP
+.fi
+.IP
+This command adds the named \fIstring\fP to the beginning of the keyboard
+buffer. The string may contain control characters, key names and function names
+like the sequence string in the \fBmacro\fP command. You may use it to
+automatically run a sequence of commands at startup, or when entering certain
+folders.
+.IP
+For using functions, it's important to use angle brackets (\(lq<\(rq and
+\(lq>\(rq) to make NeoMutt recognize the input as a function name. Otherwise
+it will simulate individual just keystrokes.
+.
+.
+.PP
+.nf
+\fBreply-hook\fP \fIpattern\fP \fIcommand\fP
+\fBsend-hook\fP \fIpattern\fP \fIcommand\fP
+\fBsend2-hook\fP \fIpattern\fP \fIcommand\fP
+.fi
+.IP
+These commands can be used to execute arbitrary configuration commands based
+upon recipients of the message. \fIpattern\fP is used to match the message, see
+section \(lq\fBMessage Matching in Hooks\fP\(rq in manual for details.
+\fIcommand\fP is executed when \fIpattern\fP matches.
+.IP
+\fBreply-hook\fP is matched against the message you are replying to, instead of
+the message you are sending. \fBsend-hook\fP is matched against all messages,
+both new and replies. \fBNote\fP, \fBreply-hook\fPs are matched before the
+\fBsend-hook\fP, regardless of the order specified in the user's configuration
+file.
+.IP
+\fBsend2-hook\fP is matched every time a message is changed, either by editing
+it, or by using the compose menu to change its recipients or subject.
+\fBsend2-hook\fP is executed after \fBsend-hook\fP, and can, e.g., be used to
+set parameters such as the $sendmail variable depending on the message's sender
+address. \fBNote\fP, \fBsend-hook\fPs are only executed once after getting the
+initial list of recipients.
+.
+.PP
+.nf
+\fBscore\fP \fIpattern\fP \fIvalue\fP
+\fBunscore\fP { \fB*\fP | \fIpattern\fP ... }
+.fi
+.IP
+The \fBscore\fP command adds \fIvalue\fP to a message's score if \fIpattern\fP
+matches it. \fIpattern\fP is a string in the format described in the
+\fIPATTERNS\fP section below. \fIvalue\fP is a positive or negative integer.
+A message's final score is the sum total of all matching score entries.
+.IP
+The \fBunscore\fP command removes score entries from the list. You must specify
+the same \fIpattern\fP specified in the \fBscore\fP command for it to be
+removed. The pattern \(lq\fB*\fP\(rq is a special token which means to clear
+the list of all score entries.
+.
+.PP
+.nf
+\fBset\fP { [ \fBno\fP | \fBinv\fP | \fB&\fP | \fB?\fP ]\fIvariable\fP } [ ... ]
+\fBset\fP { \fIvariable\fP=\fIvalue\fP | \fIvariable+=increment\fP | \fIvariable-=decrement\fP } [ ... ]
+\fBunset\fP \fIvariable\fP  [ \fIvariable\fP ... ]
+\fBreset\fP \fIvariable\fP  [ \fIvariable\fP ... ]
+\fBtoggle\fP \fIvariable\fP [ \fIvariable\fP ... ]
+.fi
+.IP
+These commands are used to set and manipulate configuration \fIvariable\fPs.
+.IP
+NeoMutt knows four basic types of \fIvariable\fPs: boolean, number, string, string
+list and quadoption. Boolean \fIvariable\fPs can be \fBset\fP (true), \fBunset\fP
+(false), or \fBtoggle\fPd. Number \fIvariable\fPs can be assigned a positive
+integer \fIvalue\fP. Value of number \fIvariable\fPs can be incremented "\fB+=\fP"
+and decremented "\fB-=\fP". String list \fIvariable\fPs use "\fB+=\fP" for
+appending increment to the string list and "\fB-=\fP" for removal decrement from
+the string list.
+.IP
+String \fIvariable\fPs consist of any number of printable characters and must
+be enclosed in quotes if they contain spaces or tabs. You may also use the
+escape sequences \(lq\fB\(rsn\fP\(rq and \(lq\fB\(rst\fP\(rq for newline and
+tab, respectively. Content of a string \fIvariable\fPs can be extended using
+"\fB+=\fP"
+.IP
+Quadoption \fIvariable\fPs are used to control whether or not to be prompted
+for certain actions, or to specify a default action. A \fIvalue\fP of \fByes\fP
+will cause the action to be carried out automatically as if you had answered
+\(lqyes\(rq to the question. Similarly, a \fIvalue\fP of \fBno\fP will cause
+the action to be carried out as if you had answered \(lqno\(rq.  A \fIvalue\fP
+of \fBask-yes\fP will cause a prompt with a default answer of \(lqyes\(rq and
+\fBask-no\fP will provide a default answer of \(lqno\(rq.
+.IP
+The \fBtoggle\fP command automatically prepends the \(lq\fBinv\fP\(rq prefix to
+all specified \fIvariable\fPs. The \fBunset\fP command automatically prepends
+the \(lq\fBno\fP\(rq prefix to all specified \fIvariable\fPs. If you use the
+command \fBset\fP and prefix the \fIvariable\fP with \(lq\fB&\fP\(rq this has
+the same behavior as the \fBreset\fP command.
+.IP
+The \fBreset\fP command resets all given \fIvariable\fPs to the compile time
+defaults. With the \fBreset\fP command there exists the special \fIvariable\fP
+\fBall\fP, which allows you to reset all \fIvariable\fPs to their system
+defaults.
+.IP
+Using the <\fBenter-command\fP> function, you can query the \fIvalue\fP of
+a \fIvariable\fP by prefixing the name of the \fIvariable\fP with a question
+mark: \(dq:\fBset\~?\fPallow_8bit\(dq.
+.
+.PP
+.nf
+\fBsetenv\fP { \fB?\fP\fIvariable\fP | \fIvariable\fP \fIvalue\fP }
+\fBunsetenv\fP \fIvariable\fP
+.fi
+.IP
+You can alter the environment that NeoMutt passes on to its child processes
+using the \fBsetenv\fP and \fBunsetenv\fP operators.
+.IP
+You can also query current environment \fIvalue\fPs by prefixing a
+\(lq\fB?\fP\(rq character.
+.
+.PP
+.nf
+\fBsidebar_whitelist\fP \fImailbox\fP [ \fImailbox\fP ...]
+\fBunsidebar_whitelist\fP { \fB*\fP | \fImailbox\fP ... }
+.fi
+.IP
+The \fBsidebar_whitelist\fP command specifies \fImailbox\fPes that will always
+be displayed in the sidebar, even if $sidebar_new_mail_only is set and the
+\fImailbox\fP does not contain new mail.
+.IP
+The \fBunsidebar_whitelist\fP command is used to remove a \fImailbox\fP from
+the list of whitelisted \fImailbox\fPes. Use
+\(lq\fBunsidebar_whitelist\~*\fP\(rq to remove all \fImailbox\fPes.
+.
+.PP
+.nf
+\fBsource\fP \fIfilename\fP
+.fi
+.IP
+This command allows the inclusion of initialization commands from other files.
+If the \fIfilename\fP begins with a tilde (\(lq~\(rq), it will be expanded to
+the path of your home directory.
+.IP
+If the \fIfilename\fP ends with a vertical bar (\(lq|\(rq), then \fIfilename\fP
+is considered to be an executable program from which to read input, (e.g.
+\(lq\fBsource\fP\~\fI~/\:bin/\:myscript\fP|\(rq).
+.
+.PP
+.nf
+\fBspam\fP \fIpattern\fP \fIformat\fP
+\fBnospam\fP { \fB*\fP | \fIpattern\fP }
+.fi
+.IP
+NeoMutt has generalized support for external spam-scoring filters. By defining
+your spam \fIpattern\fPs with the \fBspam\fP and \fBnospam\fP commands, you can
+limit, search, and sort your mail based on its spam attributes, as determined
+by the external filter. You also can display the spam attributes in your index
+display using the %H selector in the $index_format variable. (Tip: try
+\(dq%?H?[%H]\~?\(dq to display spam tags only when they are defined for a given
+message).
+.IP
+For further information on spam-scoring filters, please consult the
+section \(lq\fBSpam Detection\fP\(rq in the NeoMutt manual.
+.
+.PP
+.nf
+\fBsubjectrx\fP \fIpattern\fP \fIreplacement\fP
+\fBunsubjectrx\fP { \fB*\fP | \fIpattern\fP }
+.fi
+.IP
+The \fBsubjectrx\fP command specifies a regular expression \fIpattern\fP which,
+if detected in a message subject, causes the subject to be replaced with the
+\fIreplacement\fP value. The \fIreplacement\fP is subject to substitutions in
+the same way as for the \fBspam\fP command: %L for the text to the left of the
+match, %R for text to the right of the match, and %1 for the first subgroup in
+the match (etc). If you simply want to erase the match, set it to \(lq%L%R\(rq.
+Any number of \fBsubjectrx\fP commands may coexist.
+.IP
+Note this well: the \fIreplacement\fP value replaces the entire subject, not
+just the match!
+.IP
+\fBunsubjectrx\fP removes a given \fBsubjectrx\fP from the substitution list.
+If \(lq\fB*\fP\(rq is used as the pattern, all substitutions will be removed.
+.
+.PP
+.nf
+\fBtimeout-hook\fP \fIcommand\fP
+\fBstartup-hook\fP \fIcommand\fP
+\fBshutdown-hook\fP \fIcommand\fP
+.fi
+.IP
+The \fBGlobal Hooks\fP feature introduces these hooks to NeoMutt. They are
+called when global events take place in NeoMutt. \fBstartup-hook\fP and
+\fBshutdown-hook\fP are most likely to be useful to users of
+.BR notmuch (1).
+.IP
+\fBtimeout-hook\fP runs a \fIcommand\fP periodically when NeoMutt checks for
+new mail. This hook is called every $timeout seconds.
+.IP
+Before NeoMutt opens the first mailbox when first starting, NeoMutt will run
+the \fBstartup-hook\fP for the given \fIcommand\fP.
+.IP
+Before NeoMutt is about to exit, and before the mailbox is closed, NeoMutt will
+run the \fBshutdown-hook\fP for the given \fIcommand\fP.
+.
+.PP
+.nf
+\fBunhook\fP { \fB*\fP | \fIhook-type\fP }
+.fi
+.IP
+This command permits you to flush hooks you have previously defined. You can
+either remove all hooks by giving the \(lq\fB*\fP\(rq character as an argument,
+or you can remove all hooks of a specific \fIhook-type\fP by saying something
+like \(lq\fBunhook\fP\~\fIsend-hook\fP\(rq.
+.
+.\" --------------------------------------------------------------------
+.SH PATTERNS
+.\" --------------------------------------------------------------------
+.SS "\s-1Pattern Modifier\s0"
+.\" --------------------------------------------------------------------
+.PP
+Many of NeoMutt's commands allow you to specify a pattern to match messages
+.RB ( limit ", " tag-pattern ", " delete-pattern ", the above mentioned " hook
+commands etc.). The table \(lq\fBPattern modifiers\fP\(rq shows several ways to
+select messages.
+.
+.na
+.TS
+box tab(|);
+lb s | lb
+l s | lx
+.
+\0Pattern|Description
+_
+\0~A|T{
+all messages
+T}
+_
+\0=B \fISTRING\fP|T{
+messages which contain \fISTRING\fP in the whole message. If IMAP is enabled,
+searches for \fISTRING\fP on the server, rather than downloading each message
+and searching it locally.
+T}
+_
+\0=b \fISTRING\fP|T{
+messages which contain \fISTRING\fP in the message body. If IMAP is enabled,
+searches for \fISTRING\fP on the server, rather than downloading each message
+and searching it locally.
+T}
+_
+\0~B \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in the whole message
+T}
+_
+\0~b \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in the message body
+T}
+_
+\0%C \fIGROUP\fP|T{
+messages either \(lqTo:\(rq or \(lqCc:\(rq to any member of \fIGROUP\fP
+T}
+_
+\0%c \fIGROUP\fP|T{
+messages carbon-copied to any member of \fIGROUP\fP
+T}
+_
+\0~C \fIEXPR\fP|T{
+messages either \(lqTo:\(rq or \(lqCc:\(rq \fIEXPR\fP
+T}
+_
+\0~c \fIEXPR\fP|T{
+messages carbon-copied to \fIEXPR\fP
+T}
+_
+\0~D|T{
+deleted messages
+T}
+_
+\0~d \fIMIN\fP-\fIMAX\fP|T{
+messages with \(lqdate-sent\(rq in a date range
+T}
+_
+\0%e \fIGROUP\fP|T{
+messages which contain a member of \fIGROUP\fP in the \(lqSender:\(rq field
+T}
+_
+\0~E|T{
+expired messages
+T}
+_
+\0~e \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in the \(lqSender:\(rq field
+T}
+_
+\0%f \fIGROUP\fP|T{
+messages originating from any member of \fIGROUP\fP
+T}
+_
+\0~F|T{
+flagged messages
+T}
+_
+\0~f \fIEXPR\fP|T{
+messages originating from \fIEXPR\fP
+T}
+_
+\0~G|T{
+cryptographically encrypted messages
+T}
+_
+\0~g|T{
+cryptographically signed messages
+T}
+_
+\0=h \fISTRING\fP|T{
+messages which contain \fISTRING\fP in the message header. If IMAP is enabled,
+searches for \fISTRING\fP on the server, rather than downloading each message
+and searching it locally; \fISTRING\fP must be of the form \(lqHeader:
+substring\(rq (see below).
+T}
+_
+\0~H \fIEXPR\fP|T{
+messages with spam attribute matching \fIEXPR\fP
+T}
+_
+\0~h \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in the message header
+T}
+_
+\0~i \fIEXPR\fP|T{
+messages which match \fIEXPR\fP in the \(lqMessage-ID:\(rq field
+T}
+_
+\0~k|T{
+messages containing PGP key material
+T}
+_
+\0%L \fIGROUP\fP|T{
+messages either originated or received by any member of \fIGROUP\fP
+T}
+_
+\0~L \fIEXPR\fP|T{
+messages either originated or received by \fIEXPR\fP
+T}
+_
+\0~l|T{
+messages addressed to a known mailing list
+T}
+_
+\0~m <\fIMAX\fP|T{
+messages with numbers less than \fIMAX\fP \fB*\fP)
+T}
+_
+\0~m >\fIMIN\fP|T{
+messages with numbers greater than \fIMIN\fP \fB*\fP)
+T}
+_
+\0~m \fIMIN\fP,\fIMAX\fP|T{
+messages with offsets (from selected message) in the range \fIMIN\fP to
+\fIMAX\fP \fB*\fP)
+T}
+_
+\0~m \fIMIN\fP-\fIMAX\fP|T{
+message in the range \fIMIN\fP to \fIMAX\fP \fB*\fP)
+T}
+_
+\0~m \fIN\fP|T{
+just message number \fIN\fP \fB*\fP)
+T}
+_
+\0~N|T{
+new messages
+T}
+_
+\0~n \fIMIN\fP-\fIMAX\fP|T{
+messages with a score in the range \fIMIN\fP to \fIMAX\fP \fB**\fP)
+T}
+_
+\0~O|T{
+old messages
+T}
+_
+\0~P|T{
+messages from you (consults $from, \fBalternates\fP, and local account/hostname information)
+T}
+_
+\0~p|T{
+messages addressed to you (consults $from, \fBalternates\fP, and local account/hostname information)
+T}
+_
+\0~Q|T{
+messages which have been replied to
+T}
+_
+\0~R|T{
+read messages
+T}
+_
+\0~r \fIMIN\fP-\fIMAX\fP|T{
+messages with \(lqdate-received\(rq in a date range
+T}
+_
+\0~S|T{
+superseded messages
+T}
+_
+\0~s \fIEXPR\fP|T{
+messages having \fIEXPR\fP in the \(lqSubject:\(rq field
+T}
+_
+\0~T|T{
+tagged messages
+T}
+_
+\0~t \fIEXPR\fP|T{
+messages addressed to \fIEXPR\fP
+T}
+_
+\0~U|T{
+unread messages
+T}
+_
+\0~u|T{
+messages addressed to a subscribed mailing list
+T}
+_
+\0~V|T{
+cryptographically verified messages
+T}
+_
+\0~v|T{
+message is part of a collapsed thread.
+T}
+_
+\0~X \fIMIN\fP-\fIMAX\fP|T{
+messages with \fIMIN\fP to \fIMAX\fP attachments \fB**\fP)
+T}
+_
+\0~x \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in the \(lqReferences:\(rq or
+\(lqIn-Reply-To:\(rq field
+T}
+_
+\0~y \fIEXPR\fP|T{
+messages which contain \fIEXPR\fP in their keywords
+T}
+_
+\0~Y \fIEXPR\fP|T{
+messages whose tags match \fIEXPR\fP
+T}
+_
+\0~z \fIMIN\fP-\fIMAX\fP|T{
+messages with a size in the range \fIMIN\fP to \fIMAX\fP \fB**\fP) \fB***\fP)
+T}
+_
+\0=/ \fISTRING\fP|T{
+IMAP custom server-side search for \fISTRING\fP. Currently only defined for
+Gmail. See section \(lq\fBGmail Patterns\fP\(rq in NeoMutt manual.
+T}
+_
+\0~=|T{
+duplicated messages (see $duplicate_threads)
+T}
+_
+\0~#|T{
+broken threads (see $strict_threads)
+T}
+_
+\0~$|T{
+unreferenced message (requires threaded view)
+T}
+_
+\0~(\fIPATTERN\fP)|T{
+messages in threads containing messages matching \fIPATTERN\fP, e.g. all
+threads containing messages from you: ~(~P)
+T}
+_
+\0~<(\fIPATTERN\fP)|T{
+messages whose immediate parent matches \fIPATTERN\fP, e.g. replies to your
+messages: ~<(~P)
+T}
+_
+\0~>(\fIPATTERN\fP)|T{
+messages having an immediate child matching \fIPATTERN\fP, e.g. messages you
+replied to: ~>(~P)
+T}
+_
+.T&
+l s s .
+T{
+\0Where \fIEXPR\fP is a regular expression, and \fIGROUP\fP is an address group.
+T}
+.T&
+l l s .
+.PP
+\0\fB*\fP)|T{
+The message number ranges (introduced by \(lq\fB~m\fP\(rq) are even
+more general and powerful than the other types of ranges. Read on and see
+section \(lq\fBMessage Ranges\fP\(rq in manual.
+T}
+\0\fB**\fP)|T{
+The forms \(lq<\fIMAX\fP\(rq, \(lq>\fIMIN\fP\(rq, \(lq\fIMIN\fP-\(rq and
+\(lq-\fIMAX\fP\(rq are allowed, too.
+T}
+\0\fB***\fP)|T{
+The suffixes \(lqK\(rq and \(lqM\(rq are allowed to specify
+kilobyte and megabyte respectively.
+T}
+.TE
+.PP
+.ad
+.
+.PP
+Special attention has to be paid when using regular expressions inside of
+patterns. Specifically, NeoMutt's parser for these patterns will strip one
+level of backslash (\(lq\fB\(rs\fP\(rq), which is normally used for quoting. If
+it is your intention to use a backslash in the regular expression, you will
+need to use two backslashes (\(lq\fB\(rs\(rs\fP\(rq) instead.
+.
+.PP
+You can force NeoMutt to treat \fIEXPR\fP as a simple \fISTRING\fP instead of
+a regular expression by using \(lq\fB=\fP\(rq instead of \(lq\fB~\fP\(rq in the
+pattern name. For example, \(lq\fB=b\~*.*\fP\(rq will find all messages that
+contain the literal \fISTRING\fP \(lq\fB*.*\fP\(rq. Simple substring matches
+are less powerful than regular expressions but can be considerably faster. This
+is especially true for IMAP folders, because substring matches can be performed
+on the server instead of by fetching every message. IMAP treats
+\(lq\fB=h\fP\(rq specially: it must be of the form
+\(lqHeader:\~\fIsubstring\fP\(rq and will \fBnot\fP partially match header
+names. The \fIsubstring\fP part may be omitted if you simply wish to find
+messages containing a particular header without regard to its value.
+.
+.PP
+Patterns matching lists of addresses (notably
+.BR c ", " C ", " p ", " P " and " t )
+match if there is at least one match in the whole list. If you want to make
+sure that all elements of that list match, you need to prefix your pattern with
+\(lq\fB^\fP\(rq.
+.
+.PP
+This example matches all mails which only has recipients from Germany.
+.IP
+Matching all addresses in address lists:
+.BI ^~C\~ \(rs.de$
+.
+.PP
+You can restrict address pattern matching to aliases that you have defined with
+the \(lq\fB@\fP\(rq modifier. This example matches messages whose recipients
+are all from Germany \fBand\fP who are known to your alias list.
+.
+.IP
+Matching restricted to aliases:
+.BI ^@~C\~ \(rs.de$
+.
+.PP
+To match any defined alias, use a regular expression that matches \fBany\fP
+string. This example matches messages whose senders are known aliases.
+.
+.IP
+Matching any defined alias:
+.BI @~f\~ .
+.
+.SS "\s-1Nesting and Boolean Operators\s0"
+.\" --------------------------------------------------------------------
+.PP
+Logical AND is performed by specifying more than one criterion.
+.IP
+For example:
+.BI ~t\~ work " ~f\~" elkins
+.
+.PP
+would select messages which contain the word \(lqwork\(rq in the list of
+recipients \fBand\fP that have the word \(lqelkins\(rq in the \(lqFrom:\(rq
+header field.
+.
+.PP
+NeoMutt also recognizes the following operators to create more complex
+search patterns:
+.
+.RS
+.TP 4
+\(bu \(lq\fB!\fP\(rq \(em logical NOT operator
+.TQ
+\(bu \(lq\fB|\fP\(rq \(em logical OR operator
+.TQ
+\(bu \(lq\fB()\fP\(rq \(em logical grouping operator
+.RE
+.
+.PP
+Here is an example illustrating a complex search pattern. This pattern will
+select all messages which do \fBnot\fP contain \(lqwork\(rq in the \(lqTo:\(rq
+\fBor\fP \(lqCc:\(rq field \fBand\fP which are from \(lqelkins\(rq.
+.
+.IP
+Using boolean operators in patterns:
+.BI !(~t\~ work |~c\~ work ") ~f\~" elkins
+.
+.PP
+Here is an example using white space in the regular expression (note the
+\(lq\fB\(aq\fP\(rq and \(lq\fB\(dq\fP\(rq delimiters). For this to match, the
+mail's subject must match the \(lq^Junk +From +Me$\(rq \fBand\fP it must be
+from either \(lqJim +Somebody\(rq \fBor\fP \(lqEd +SomeoneElse\(rq:
+.
+.IP
+Quoting regex:
+.na
+.IB \(aq ~s\~ "\(dq^Junk +From +Me$\(dq"
+.BI ~f\~( "\(dqJim +Somebody\(dq" | "\(dqEd +SomeoneElse\(dq" ) \(aq
+.ad
+.
+.PP
+\fBNote\fP: If a regular expression contains parenthesis, or a vertical bar
+(\(lq\fB|\fP\(rq), you must enclose the expression in double or single quotes
+since those characters are also used to separate different parts of NeoMutt's
+pattern language.
+.
+.IP
+For example:
+.BI ~f \~\(dquser@ ( home\(rs.org | work\(rs.com ) \(dq
+.
+.PP
+Without the quotes, the parenthesis wouldn't end. This would be separated to
+two OR'd patterns:
+.BI ~f \~user@(home\(rs.org
+.RI "and " work\(rs.com) ". They are never what you want."
+.
+.SS "\s-1Searching by Date\s0"
+.\" --------------------------------------------------------------------
+.PP
+NeoMutt supports two types of dates, \fBabsolute\fP and \fBrelative\fP for
+the \(lq\fB~d\fP\(rq and \(lq\fB~r\fP\(rq pattern.
+.
+.PP
+.nf
+.B Absolute Dates
+.fi
+Dates must be in
+.IR dd [/ mm [/[ CC ] YY ]]
+format (day, month, century and year \(em all parts, with the exception of day,
+are optional, defaulting to the current month and year). An example of a valid
+range of dates is:
+.
+.IP
+Limit to messages matching:
+.IR \fB~d\fP\~20 / 1 / 95 - 31 / 10
+.
+.PP
+Alternatively, you may use \fIYYYYMMDD\fP to specify a date.
+.PP
+When given a two-digit year, NeoMutt will interpret values less than \(lq70\(rq
+as lying in the 21st century (i.e., \(lq38\(rq means 2038 and not 1938, and
+\(lq00\(rq is interpreted as 2000), and values greater than or equal to
+\(lq70\(rq as lying in the 20th century.
+.
+.PP
+If you omit the \fIMIN\fPimum (first) date, and just specify
+.RI - dd / mm / YY ,
+all messages before the given date will be selected. If you omit the
+\fIMAX\fPimum (second) date, and specify
+.IR dd / mm / YY -,
+all messages after the given date will be selected. If you specify a single
+date with no dash (\(lq\fB-\fP\(rq), only messages sent/received on the given
+date will be selected.
+.
+.PP
+You can add error margins to absolute dates. An error margin is a sign
+(\(lq\fB+\fP\(rq or \(lq\fB-\fP\(rq), followed by a digit, followed by one of
+the units in table \(lq\fBDate units\fP\(rq below. As a special case, you can
+replace the sign by a \(lq\fB*\fP\(rq character, which is equivalent to giving
+identical plus and minus error margins.
+.
+.\".TS
+.\"allbox tab(|);
+.\"cb cb
+.\"c l .
+.\"\0Unit|Description
+.\"\0d|Days
+.\"\0w|Weeks
+.\"\0m|Months
+.\"\0y|Years
+.\".TE
+.\".PP
+.\".
+.TS
+allbox center tab(|);
+lb c c c c
+lb l l l l .
+\0Date Unit|S|M|H|d|w|m|y
+\0Description|Seconds|Minutes|Hours|Days|Weeks|Months|Years
+.TE
+.PP
+.
+.PP
+\fBExample\fP: To select any messages two weeks around January 15, 2001, you'd
+use the following pattern:
+.
+.IP
+Limit to messages matching:
+.IR \fB~d\fP\~15 / 1 / 2001 \fB*\fP 2 \fBw\fP
+.
+.PP
+It is possible to give multiple error margins:
+.
+.IP
+which cumulate:
+.IR \fB~d\fP\~1 / 1 / 2001 \fB-\fP 1 \fBw+\fP 2 \fBw*\fP 3 \fBd\fP
+.
+.PP
+.nf
+.B Relative Dates
+.fi
+This type of date is relative to the current date, and may be specified as:
+.
+.RS
+.TP 4
+\(bu \(lq\fB<\fP\fIoffset\fP\(rq for messages newer than \fIoffset\fP units
+.TQ
+\(bu \(lq\fB=\fP\fIoffset\fP\(rq for messages exactly \fIoffset\fP units old
+.TQ
+\(bu \(lq\fB>\fP\fIoffset\fP\(rq for messages older than \fIoffset\fP units
+.RE
+.
+.PP
+\fIoffset\fP is specified as a positive number with one of the units from table
+\(lq\fBDate units\fP\(rq.
+.
+.PP
+\fBExample\fP: To select messages less than 1 month old, you would use:
+.
+.IP
+Limit to messages matching:
+.BI ~d\~< 1 m
+.
+.PP
+\fBNote\fP: All dates used when searching are relative to the \fBlocal\fP time
+zone, so unless you change the setting of your $index_format to include
+a \(lq\fB%[...]\fP\(rq format, these are \fBnot\fP the dates shown in the main
+index.
+.
+.\" --------------------------------------------------------------------
+.SH CONFIGURATION VARIABLES
+.\" --------------------------------------------------------------------
+
+.TP
+.B abort_backspace
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, hitting backspace against an empty prompt aborts the
+prompt.
+
+
+.TP
+.B abort_key
+.nf
+Type: string
+Default: "007"
+.fi
+.IP
+Specifies the key that can be used to abort prompts.  The format is the
+same as used in "bind" commands.  The default is equivalent to "\\G".
+Note that the specified key should not be used in other bindings, as the
+abort operation has higher precedence and the binding will not have the
+desired effect.
+.IP
+Example:
+
+.IP
+.EX
+set abort_key = "<Esc>"
+
+.EE
+.IP
+Please note that when using <Esc> as the abort key, you may also want to
+set the environment variable ESCDELAY to a low value or even 0 which will
+reduce the time that ncurses waits to distinguish singular <Esc> key
+presses from the start of a terminal escape sequence. The default time is
+1000 milliseconds and thus quite noticeable.
+
+
+.TP
+.B abort_noattach
+.nf
+Type: quadoption
+Default: no
+.fi
+.IP
+If set to \fIyes\fP, when composing messages containing the regular
+expression specified by $abort_noattach_regex and no attachments are
+given, composition will be aborted. If set to \fIno\fP, composing messages
+as such will never be aborted.
+.IP
+Example:
+
+.IP
+.EX
+set abort_noattach_regex = "\\\\<attach(|ed|ments?)\\\\>"
+
+.EE
+
+
+.TP
+.B abort_noattach_regex
+.nf
+Type: regular expression
+Default: "\\<(attach|attached|attachments?)\\>"
+.fi
+.IP
+Specifies a regular expression to match against the body of the message, to
+determine if an attachment was mentioned but mistakenly forgotten.  If it
+matches, $abort_noattach will be consulted to determine if message sending
+will be aborted.
+.IP
+Like other regular expressions in NeoMutt, the search is case sensitive
+if the pattern contains at least one upper case letter, and case
+insensitive otherwise.
+
+
+.TP
+.B abort_nosubject
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+If set to \fIyes\fP, when composing messages and no subject is given
+at the subject prompt, composition will be aborted.  If set to
+\fIno\fP, composing messages with no subject given at the subject
+prompt will never be aborted.
+
+
+.TP
+.B abort_unmodified
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+If set to \fIyes\fP, composition will automatically abort after
+editing the message body if no changes are made to the file (this
+check only happens after the \fIfirst\fP edit of the file).  When set
+to \fIno\fP, composition will never be aborted.
+
+
+.TP
+.B alias_file
+.nf
+Type: path
+Default: "~/.neomuttrc"
+.fi
+.IP
+The default file in which to save aliases created by the
+\fC<create-alias>\fP function. Entries added to this file are
+encoded in the character set specified by $config_charset if it
+is \fIset\fP or the current character set otherwise.
+.IP
+\fBNote:\fP NeoMutt will not automatically source this file; you must
+explicitly use the "source" command for it to be executed in case
+this option points to a dedicated alias file.
+.IP
+The default for this option is the currently used neomuttrc file, or
+"~/.neomuttrc" if no user neomuttrc was found.
+
+
+.TP
+.B alias_format
+.nf
+Type: string
+Default: "%3n %f%t %\-15a %\-56r | %c"
+.fi
+.IP
+Specifies the format of the data displayed for the "alias" menu.  The
+following \fCprintf(3)\fP\-style sequences are available:
+.RS
+.PD 0
+.TP
+%a  
+Alias name
+.TP
+%c  
+Comment
+.TP
+%f  
+Flags \- currently, a "d" for an alias marked for deletion
+.TP
+%n  
+Index number
+.TP
+%r  
+Address which alias expands to
+.TP
+%t  
+Character which indicates if the alias is tagged for inclusion
+.TP
+%>X 
+right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+pad to the end of the line with character "X"
+.TP
+%*X 
+soft\-fill with character "X" as pad
+.RE
+.PD 1
+
+.TP
+.B allow_8bit
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls whether 8\-bit data is converted to 7\-bit using either Quoted\-
+Printable or Base64 encoding when sending mail.
+
+
+.TP
+.B allow_ansi
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether ANSI color codes in messages (and color tags in
+rich text messages) are to be interpreted.
+Messages containing these codes are rare, but if this option is \fIset\fP,
+their text will be colored accordingly. Note that this may override
+your color choices, and even present a security problem, since a
+message could include a line like
+
+.IP
+.EX
+[\-\- PGP output follows ...
+
+.EE
+.IP
+and give it the same color as your attachment color (see also
+$crypt_timestamp).
+
+
+.TP
+.B arrow_cursor
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, an arrow ("\->") will be used to indicate the current entry
+in menus instead of highlighting the whole line.  On slow network or modem
+links this will make response faster because there is less that has to
+be redrawn on the screen when moving to the next or previous entries
+in the menu.
+
+
+.TP
+.B arrow_string
+.nf
+Type: string
+Default: "\->"
+.fi
+.IP
+Specifies the string of arrow_cursor when arrow_cursor enabled.
+
+
+.TP
+.B ascii_chars
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will use plain ASCII characters when displaying thread
+and attachment trees, instead of the default \fIACS\fP characters.
+
+
+.TP
+.B ask_follow_up
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If set, NeoMutt will prompt you for follow\-up groups before editing
+the body of an outgoing message.
+
+
+.TP
+.B ask_x_comment_to
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If set, NeoMutt will prompt you for x\-comment\-to field before editing
+the body of an outgoing message.
+
+
+.TP
+.B askbcc
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will prompt you for blind\-carbon\-copy (Bcc) recipients
+before editing an outgoing message.
+
+
+.TP
+.B askcc
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will prompt you for carbon\-copy (Cc) recipients before
+editing the body of an outgoing message.
+
+
+.TP
+.B assumed_charset
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable is a colon\-separated list of character encoding
+schemes for messages without character encoding indication.
+Header field values and message body content without character encoding
+indication would be assumed that they are written in one of this list.
+By default, all the header fields and message body without any charset
+indication are assumed to be in "us\-ascii".
+.IP
+For example, Japanese users might prefer this:
+
+.IP
+.EX
+set assumed_charset="iso\-2022\-jp:euc\-jp:shift_jis:utf\-8"
+
+.EE
+.IP
+However, only the first content is valid for the message body.
+
+
+.TP
+.B attach_charset
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable is a colon\-separated list of character encoding
+schemes for text file attachments. NeoMutt uses this setting to guess
+which encoding files being attached are encoded in to convert them to
+a proper character set given in $send_charset.
+.IP
+If \fIunset\fP, the value of $charset will be used instead.
+For example, the following configuration would work for Japanese
+text handling:
+
+.IP
+.EX
+set attach_charset="iso\-2022\-jp:euc\-jp:shift_jis:utf\-8"
+
+.EE
+.IP
+Note: for Japanese users, "iso\-2022\-*" must be put at the head
+of the value as shown above if included.
+
+
+.TP
+.B attach_format
+.nf
+Type: string
+Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
+.fi
+.IP
+This variable describes the format of the "attachment" menu.  The
+following \fCprintf(3)\fP\-style sequences are understood:
+.RS
+.PD 0
+.TP
+%C  
+Charset
+.TP
+%c  
+Requires charset conversion ("n" or "c")
+.TP
+%D  
+Deleted flag
+.TP
+%d  
+Description (if none, falls back to %F)
+.TP
+%e  
+MIME content\-transfer\-encoding
+.TP
+%f  
+Filename
+.TP
+%F  
+Filename in content\-disposition header (if none, falls back to %f)
+.TP
+%I  
+Disposition ("I" for inline, "A" for attachment)
+.TP
+%m  
+Major MIME type
+.TP
+%M  
+MIME subtype
+.TP
+%n  
+Attachment number
+.TP
+%Q  
+"Q", if MIME part qualifies for attachment counting
+.TP
+%s  
+Size (see formatstrings-size)
+.TP
+%T  
+Graphic tree characters
+.TP
+%t  
+Tagged flag
+.TP
+%u  
+Unlink (=to delete) flag
+.TP
+%X  
+Number of qualifying MIME parts in this part and its children
+(please see the "attachments" section for possible speed effects)
+.TP
+%>X 
+Right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+Pad to the end of the line with character "X"
+.TP
+%*X 
+Soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+For an explanation of "soft\-fill", see the $index_format documentation.
+
+
+.TP
+.B attach_save_dir
+.nf
+Type: path
+Default: "./"
+.fi
+.IP
+The directory where attachments are saved.
+
+
+.TP
+.B attach_save_without_prompting
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable, when set to true, will cause attachments to be saved to
+the 'attach_save_dir' location without prompting the user for the filename.
+.IP
+
+
+.TP
+.B attach_sep
+.nf
+Type: string
+Default: "\\n"
+.fi
+.IP
+The separator to add between attachments when operating (saving,
+printing, piping, etc) on a list of tagged attachments.
+
+
+.TP
+.B attach_split
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If this variable is \fIunset\fP, when operating (saving, printing, piping,
+etc) on a list of tagged attachments, NeoMutt will concatenate the
+attachments and will operate on them as a single attachment. The
+$attach_sep separator is added after each attachment. When \fIset\fP,
+NeoMutt will operate on the attachments one by one.
+
+
+.TP
+.B attribution
+.nf
+Type: string
+Default: "On %d, %n wrote:"
+.fi
+.IP
+This is the string that will precede a message which has been included
+in a reply.  For a full listing of defined \fCprintf(3)\fP\-like sequences see
+the section on $index_format.
+
+
+.TP
+.B attribution_locale
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+The locale used by \fCstrftime(3)\fP to format dates in the
+attribution string.  Legal values are the strings your system
+accepts for the locale environment variable \fC$LC_TIME\fP.
+.IP
+This variable is to allow the attribution date format to be
+customized by recipient or folder using hooks.  By default, NeoMutt
+will use your locale environment, so there is no need to set
+this except to override that default.
+
+
+.TP
+.B auto_subscribe
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt assumes the presence of a List\-Post header
+means the recipient is subscribed to the list.  Unless the mailing list
+is in the "unsubscribe" or "unlist" lists, it will be added
+to the "subscribe" list.  Parsing and checking these things slows
+header reading down, so this option is disabled by default.
+
+
+.TP
+.B auto_tag
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, functions in the \fIindex\fP menu which affect a message
+will be applied to all tagged messages (if there are any).  When
+unset, you must first use the \fC<tag\-prefix>\fP function (bound to ";"
+by default) to make the next function apply to all tagged messages.
+
+
+.TP
+.B autocrypt
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, enables autocrypt, which provides
+passive encryption protection with keys exchanged via headers.
+See "autocryptdoc" for more details.
+(Autocrypt only)
+
+
+.TP
+.B autocrypt_acct_format
+.nf
+Type: string
+Default: "%4n %\-30a %20p %10s"
+.fi
+.IP
+This variable describes the format of the "autocrypt account" menu.
+The following \fCprintf(3)\fP\-style sequences are understood
+.RS
+.PD 0
+.TP
+%a  
+email address
+.TP
+%k  
+gpg keyid
+.TP
+%n  
+current entry number
+.TP
+%p  
+prefer\-encrypt flag
+.TP
+%s  
+status flag (active/inactive)
+.RE
+.PD 1
+.IP
+(Autocrypt only)
+
+
+.TP
+.B autocrypt_dir
+.nf
+Type: path
+Default: "~/.mutt/autocrypt"
+.fi
+.IP
+This variable sets where autocrypt files are stored, including the GPG
+keyring and SQLite database.  See "autocryptdoc" for more details.
+(Autocrypt only)
+
+
+.TP
+.B autocrypt_reply
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, replying to an autocrypt email automatically
+enables autocrypt in the reply.  You may want to unset this if you're using
+the same key for autocrypt as normal web\-of\-trust, so that autocrypt
+isn't forced on for all encrypted replies.
+(Autocrypt only)
+
+
+.TP
+.B autoedit
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP along with $edit_headers, NeoMutt will skip the initial
+send\-menu (prompting for subject and recipients) and allow you to
+immediately begin editing the body of your
+message.  The send\-menu may still be accessed once you have finished
+editing the body of your message.
+.IP
+\fBNote:\fP when this option is \fIset\fP, you can't use send\-hooks that depend
+on the recipients when composing a new (non\-reply) message, as the initial
+list of recipients is empty.
+.IP
+Also see $fast_reply.
+
+
+.TP
+.B beep
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will beep when an error occurs.
+
+
+.TP
+.B beep_new
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will beep whenever it prints a message
+notifying you of new mail.  This is independent of the setting of the
+$beep variable.
+
+
+.TP
+.B bounce
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether you will be asked to confirm bouncing messages.
+If set to \fIyes\fP you don't get asked if you want to bounce a
+message. Setting this variable to \fIno\fP is not generally useful,
+and thus not recommended, because you are unable to bounce messages.
+
+
+.TP
+.B bounce_delivered
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will include Delivered\-To headers when
+bouncing messages.  Postfix users may wish to \fIunset\fP this variable.
+
+
+.TP
+.B braille_friendly
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will place the cursor at the beginning
+of the current line in menus, even when the $arrow_cursor variable
+is \fIunset\fP, making it easier for blind persons using Braille displays to
+follow these menus.  The option is \fIunset\fP by default because many
+visual terminals don't permit making the cursor invisible.
+
+
+.TP
+.B browser_abbreviate_mailboxes
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will abbreviate mailbox
+names in the browser mailbox list, using '~' and '='
+shortcuts.
+.IP
+The default \fC"alpha"\fP setting of $sort_browser uses
+locale\-based sorting (using \fCstrcoll(3)\fP), which ignores some
+punctuation.  This can lead to some situations where the order
+doesn't make intuitive sense.  In those cases, it may be
+desirable to \fIunset\fP this variable.
+
+
+.TP
+.B catchup_newsgroup
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+If this variable is \fIset\fP, NeoMutt will mark all articles in newsgroup
+as read when you quit the newsgroup (catchup newsgroup).
+
+
+.TP
+.B certificate_file
+.nf
+Type: path
+Default: "~/.mutt_certificates"
+.fi
+.IP
+This variable specifies the file where the certificates you trust
+are saved. When an unknown certificate is encountered, you are asked
+if you accept it or not. If you accept it, the certificate can also
+be saved in this file and further connections are automatically
+accepted.
+.IP
+You can also manually add CA certificates in this file. Any server
+certificate that is signed with one of these CA certificates is
+also automatically accepted.
+.IP
+Example:
+
+.IP
+.EX
+set certificate_file=~/.neomutt/certificates
+
+.EE
+
+
+.TP
+.B change_folder_next
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, the \fC<change\-folder>\fP function
+mailbox suggestion will start at the next folder in your "mailboxes"
+list, instead of starting at the first folder in the list.
+
+
+.TP
+.B charset
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Character set your terminal uses to display and enter textual data.
+It is also the fallback for $send_charset.
+.IP
+Upon startup NeoMutt tries to derive this value from environment variables
+such as \fC$LC_CTYPE\fP or \fC$LANG\fP.
+.IP
+\fBNote:\fP It should only be set in case NeoMutt isn't able to determine the
+character set used correctly.
+
+
+.TP
+.B check_mbox_size
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will use file size attribute instead of
+access time when checking for new mail in mbox and mmdf folders.
+.IP
+This variable is \fIunset\fP by default and should only be enabled when
+new mail detection for these folder types is unreliable or doesn't work.
+.IP
+Note that enabling this variable should happen before any "mailboxes"
+directives occur in configuration files regarding mbox or mmdf folders
+because NeoMutt needs to determine the initial new mail status of such a
+mailbox by performing a fast mailbox scan when it is defined.
+Afterwards the new mail status is tracked by file size changes.
+
+
+.TP
+.B check_new
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+\fBNote:\fP this option only affects \fImaildir\fP and \fIMH\fP style
+mailboxes.
+.IP
+When \fIset\fP, NeoMutt will check for new mail delivered while the
+mailbox is open.  Especially with MH mailboxes, this operation can
+take quite some time since it involves scanning the directory and
+checking each file to see if it has already been looked at.  If
+this variable is \fIunset\fP, no check for new mail is performed
+while the mailbox is open.
+
+
+.TP
+.B collapse_all
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will collapse all threads when entering a folder.
+
+
+.TP
+.B collapse_flagged
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
+flagged messages.
+
+
+.TP
+.B collapse_unread
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
+unread messages.
+
+
+.TP
+.B compose_format
+.nf
+Type: string
+Default: "\-\- NeoMutt: Compose  [Approx. msg size: %l   Atts: %a]%>\-"
+.fi
+.IP
+Controls the format of the status line displayed in the "compose"
+menu.  This string is similar to $status_format, but has its own
+set of \fCprintf(3)\fP\-like sequences:
+.RS
+.PD 0
+.TP
+%a  
+Total number of attachments
+.TP
+%h  
+Local hostname
+.TP
+%l  
+Approximate size (in bytes) of the current message (see formatstrings-size)
+.TP
+%v  
+NeoMutt version string
+.TP
+%>X 
+right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+pad to the end of the line with character "X"
+.TP
+%*X 
+soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+See the text describing the $status_format option for more
+information on how to set $compose_format.
+
+
+.TP
+.B compose_show_user_headers
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, Neomutt will display user\-defined headers (set via my_hdr
+or from editing with edit\-headers).
+
+
+.TP
+.B config_charset
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+When defined, NeoMutt will recode commands in rc files from this
+encoding to the current character set as specified by $charset
+and aliases written to $alias_file from the current character set.
+.IP
+Please note that if setting $charset it must be done before
+setting $config_charset.
+.IP
+Recoding should be avoided as it may render unconvertable
+characters as question marks which can lead to undesired
+side effects (for example in regular expressions).
+
+
+.TP
+.B confirmappend
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will prompt for confirmation when appending messages to
+an existing mailbox.
+
+
+.TP
+.B confirmcreate
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will prompt for confirmation when saving messages to a
+mailbox which does not yet exist before creating it.
+
+
+.TP
+.B connect_timeout
+.nf
+Type: number
+Default: 30
+.fi
+.IP
+Causes NeoMutt to timeout a network connection (for IMAP, POP or SMTP) after this
+many seconds if the connection is not able to be established.  A negative
+value causes NeoMutt to wait indefinitely for the connection attempt to succeed.
+
+
+.TP
+.B content_type
+.nf
+Type: string
+Default: "text/plain"
+.fi
+.IP
+Sets the default Content\-Type for the body of newly composed messages.
+
+
+.TP
+.B copy
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+This variable controls whether or not copies of your outgoing messages
+will be saved for later references.  Also see $record,
+$save_name, $force_name and "fcc-hook".
+
+
+.TP
+.B copy_decode_weed
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether NeoMutt will weed headers when invoking the
+\fC<decode\-copy>\fP or \fC<decode\-save>\fP functions.
+
+
+.TP
+.B count_alternatives
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, Mutt will recurse inside multipart/alternatives while
+performing attachment searching and counting(see attachments).
+.IP
+Traditionally, multipart/alternative parts have simply represented
+different encodings of the main content of the email.  Unfortunately,
+some mail clients have started to place email attachments inside
+one of alternatives.  Setting this will allow Mutt to find
+and count matching attachments hidden there, and include them
+in the index via %X or through ~X pattern matching.
+
+
+.TP
+.B crypt_autoencrypt
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Setting this variable will cause NeoMutt to always attempt to PGP
+encrypt outgoing messages.  This is probably only useful in
+connection to the "send-hook" command.  It can be overridden
+by use of the pgp menu, when encryption is not required or
+signing is requested as well.  If $smime_is_default is \fIset\fP,
+then OpenSSL is used instead to create S/MIME messages and
+settings can be overridden by use of the smime menu instead.
+(Crypto only)
+
+
+.TP
+.B crypt_autopgp
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls whether or not NeoMutt may automatically enable
+PGP encryption/signing for messages.  See also $crypt_autoencrypt,
+$crypt_replyencrypt,
+$crypt_autosign, $crypt_replysign and $smime_is_default.
+
+
+.TP
+.B crypt_autosign
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Setting this variable will cause NeoMutt to always attempt to
+cryptographically sign outgoing messages.  This can be overridden
+by use of the pgp menu, when signing is not required or
+encryption is requested as well. If $smime_is_default is \fIset\fP,
+then OpenSSL is used instead to create S/MIME messages and settings can
+be overridden by use of the smime menu instead of the pgp menu.
+(Crypto only)
+
+
+.TP
+.B crypt_autosmime
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls whether or not NeoMutt may automatically enable
+S/MIME encryption/signing for messages. See also $crypt_autoencrypt,
+$crypt_replyencrypt,
+$crypt_autosign, $crypt_replysign and $smime_is_default.
+
+
+.TP
+.B crypt_chars
+.nf
+Type: character string
+Default: "SPsK "
+.fi
+.IP
+Controls the characters used in cryptography flags.
+.RS
+.PD 0
+.TP
+\fBCharacter\fP 
+\fBDefault\fP 
+\fBDescription\fP
+.TP
+1 
+S 
+The mail is signed, and the signature is successfully verified.
+.TP
+2 
+P 
+The mail is PGP encrypted.
+.TP
+3 
+s 
+The mail is signed.
+.TP
+4 
+K 
+The mail contains a PGP public key.
+.TP
+5 
+<space> 
+The mail has no crypto info.
+.RE
+.PD 1
+
+.TP
+.B crypt_confirmhook
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If set, then you will be prompted for confirmation of keys when using
+the \fIcrypt\-hook\fP command.  If unset, no such confirmation prompt will
+be presented.  This is generally considered unsafe, especially where
+typos are concerned.
+
+
+.TP
+.B crypt_opportunistic_encrypt
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Setting this variable will cause NeoMutt to automatically enable and
+disable encryption, based on whether all message recipient keys
+can be located by NeoMutt.
+.IP
+When this option is enabled, NeoMutt will enable/disable encryption
+each time the TO, CC, and BCC lists are edited.  If
+$edit_headers is set, NeoMutt will also do so each time the message
+is edited.
+.IP
+While this is set, encryption can't be manually enabled/disabled.
+The pgp or smime menus provide a selection to temporarily disable
+this option for the current message.
+.IP
+If $crypt_autoencrypt or $crypt_replyencrypt enable encryption for
+a message, this option will be disabled for that message.  It can
+be manually re\-enabled in the pgp or smime menus.
+(Crypto only)
+
+
+.TP
+.B crypt_opportunistic_encrypt_strong_keys
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, this modifies the behavior of $crypt_opportunistic_encrypt
+to only search for "strong keys", that is, keys with full validity
+according to the web\-of\-trust algorithm.  A key with marginal or no
+validity will not enable opportunistic encryption.
+.IP
+For S/MIME, the behavior depends on the backend.  Classic S/MIME will
+filter for certificates with the 't'(trusted) flag in the .index file.
+The GPGME backend will use the same filters as with OpenPGP, and depends
+on GPGME's logic for assigning the GPGME_VALIDITY_FULL and
+GPGME_VALIDITY_ULTIMATE validity flag.
+
+
+.TP
+.B crypt_protected_headers_read
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When set, NeoMutt will display protected headers ("Memory Hole") in the pager,
+When set, NeoMutt will display protected headers in the pager,
+and will update the index and header cache with revised headers.
+.IP
+Protected headers are stored inside the encrypted or signed part of an
+an email, to prevent disclosure or tampering.
+For more information see https://github.com/autocrypt/protected\-headers
+Currently NeoMutt only supports the Subject header.
+.IP
+Encrypted messages using protected headers often substitute the exposed
+Subject header with a dummy value (see $crypt_protected_headers_subject).
+NeoMutt will update its concept of the correct subject \fBafter\fP the
+message is opened, i.e. via the \fC<display\-message>\fP function.
+If you reply to a message before opening it, NeoMutt will end up using
+the dummy Subject header, so be sure to open such a message first.
+(Crypto only)
+
+
+.TP
+.B crypt_protected_headers_save
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When $crypt_protected_headers_read is set, and a message with a
+protected Subject is opened, NeoMutt will save the updated Subject
+into the header cache by default.  This allows searching/limiting
+based on the protected Subject header if the mailbox is
+re\-opened, without having to re\-open the message each time.
+However, for mbox/mh mailbox types, or if header caching is not
+set up, you would need to re\-open the message each time the
+mailbox was reopened before you could see or search/limit on the
+protected subject again.
+.IP
+When this variable is set, NeoMutt additionally saves the protected
+Subject back \fBin the clear\-text message headers\fP.  This
+provides better usability, but with the tradeoff of reduced
+security.  The protected Subject header, which may have
+previously been encrypted, is now stored in clear\-text in the
+message headers.  Copying the message elsewhere, via NeoMutt or
+external tools, could expose this previously encrypted data.
+Please make sure you understand the consequences of this before
+you enable this variable.
+(Crypto only)
+
+
+.TP
+.B crypt_protected_headers_subject
+.nf
+Type: string
+Default: "..."
+.fi
+.IP
+When $crypt_protected_headers_write is set, and the message is marked
+for encryption, this will be substituted into the Subject field in the
+message headers.
+.IP
+To prevent a subject from being substituted, unset this variable, or set it
+to the empty string.
+(Crypto only)
+
+
+.TP
+.B crypt_protected_headers_write
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, NeoMutt will generate protected headers for signed and encrypted
+emails.
+.IP
+Protected headers are stored inside the encrypted or signed part of an
+an email, to prevent disclosure or tampering.
+For more information see https://github.com/autocrypt/protected\-headers
+.IP
+Currently NeoMutt only supports the Subject header.
+(Crypto only)
+
+
+.TP
+.B crypt_replyencrypt
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, automatically PGP or OpenSSL encrypt replies to messages which are
+encrypted.
+(Crypto only)
+
+
+.TP
+.B crypt_replysign
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, automatically PGP or OpenSSL sign replies to messages which are
+signed.
+.IP
+\fBNote:\fP this does not work on messages that are encrypted
+\fIand\fP signed!
+(Crypto only)
+
+
+.TP
+.B crypt_replysignencrypted
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, automatically PGP or OpenSSL sign replies to messages
+which are encrypted. This makes sense in combination with
+$crypt_replyencrypt, because it allows you to sign all
+messages which are automatically encrypted.  This works around
+the problem noted in $crypt_replysign, that NeoMutt is not able
+to find out whether an encrypted message is also signed.
+(Crypto only)
+
+
+.TP
+.B crypt_timestamp
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will include a time stamp in the lines surrounding
+PGP or S/MIME output, so spoofing such lines is more difficult.
+If you are using colors to mark these lines, and rely on these,
+you may \fIunset\fP this setting.
+(Crypto only)
+
+
+.TP
+.B crypt_use_gpgme
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls the use of the GPGME\-enabled crypto backends.
+If it is \fIset\fP and NeoMutt was built with GPGME support, the gpgme code for
+S/MIME and PGP will be used instead of the classic code.  Note that
+you need to set this option in .neomuttrc; it won't have any effect when
+used interactively.
+.IP
+Note that the GPGME backend does not support creating old\-style inline
+(traditional) PGP encrypted or signed messages (see $pgp_autoinline).
+
+
+.TP
+.B crypt_use_pka
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether NeoMutt uses PKA
+(see http://www.g10code.de/docs/pka\-intro.de.pdf) during signature
+verification (only supported by the GPGME backend).
+
+
+.TP
+.B crypt_verify_sig
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+If \fI"yes"\fP, always attempt to verify PGP or S/MIME signatures.
+If \fI"ask\-*"\fP, ask whether or not to verify the signature.
+If \fI"no"\fP, never attempt to verify cryptographic signatures.
+(Crypto only)
+
+
+.TP
+.B date_format
+.nf
+Type: string
+Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
+.fi
+.IP
+This variable controls the format of the date printed by the "%d"
+sequence in $index_format.  This is passed to the \fCstrftime(3)\fP
+function to process the date, see the man page for the proper syntax.
+.IP
+Unless the first character in the string is a bang ("!"), the month
+and week day names are expanded according to the locale.
+If the first character in the string is a
+bang, the bang is discarded, and the month and week day names in the
+rest of the string are expanded in the \fIC\fP locale (that is in US
+English).
+
+
+.TP
+.B debug_file
+.nf
+Type: path
+Default: "~/.neomuttdebug"
+.fi
+.IP
+Debug logging is controlled by the variables \fC$debug_file\fP and \fC$debug_level\fP.
+\fC$debug_file\fP specifies the root of the filename.  NeoMutt will add "0" to the end.
+Each time NeoMutt is run with logging enabled, the log files are rotated.
+A maximum of five log files are kept, numbered 0 (most recent) to 4 (oldest).
+.IP
+This option can be enabled on the command line, "neomutt \-l mylog"
+.IP
+See also: \fC$debug_level\fP
+
+
+.TP
+.B debug_level
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Debug logging is controlled by the variables \fC$debug_file\fP and \fC$debug_level\fP.
+.IP
+The debug level controls how much information is saved to the log file.
+If you have a problem with NeoMutt, then enabling logging may help find the cause.
+Levels 1\-3 will usually provide enough information for writing a bug report.
+Levels 4,5 will be extremely verbose.
+.IP
+Warning: Logging at high levels may save private information to the file.
+.IP
+This option can be enabled on the command line, "neomutt \-d 2"
+.IP
+See also: \fC$debug_file\fP
+
+
+.TP
+.B default_hook
+.nf
+Type: string
+Default: "~f %s !~P | (~P ~C %s)"
+.fi
+.IP
+This variable controls how "message-hook", "reply-hook", "send-hook",
+"send2-hook", "save-hook", and "fcc-hook" will
+be interpreted if they are specified with only a simple regex,
+instead of a matching pattern.  The hooks are expanded when they are
+declared, so a hook will be interpreted according to the value of this
+variable at the time the hook is declared.
+.IP
+The default value matches
+if the message is either from a user matching the regular expression
+given, or if it is from you (if the from address matches
+"alternates") and is to or cc'ed to a user matching the given
+regular expression.
+
+
+.TP
+.B delete
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether or not messages are really deleted when closing or
+synchronizing a mailbox.  If set to \fIyes\fP, messages marked for
+deleting will automatically be purged without prompting.  If set to
+\fIno\fP, messages marked for deletion will be kept in the mailbox.
+
+
+.TP
+.B delete_untag
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If this option is \fIset\fP, NeoMutt will untag messages when marking them
+for deletion.  This applies when you either explicitly delete a message,
+or when you save it to another folder.
+
+
+.TP
+.B digest_collapse
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If this option is \fIset\fP, NeoMutt's received\-attachments menu will not show the subparts of
+individual messages in a multipart/digest.  To see these subparts, press "v" on that menu.
+
+
+.TP
+.B display_filter
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+When set, specifies a command used to filter messages.  When a message
+is viewed it is passed as standard input to $display_filter, and the
+filtered message is read from the standard output.
+.IP
+When preparing the message, NeoMutt inserts some escape sequences into the
+text.  They are of the form: \fC<esc>]9;XXX<bel>\fP where "XXX" is a random
+64\-bit number.
+.IP
+If these escape sequences interfere with your filter, they can be removed
+using a tool like \fCansifilter\fP or \fCsed 's/^\\x1b]9;[0\-9]\\+\\x7//'\fP
+.IP
+If they are removed, then PGP and MIME headers will no longer be coloured.
+This can be fixed by adding this to your config:
+\fCcolor body magenta default '^\\[\-\- .* \-\-\\]$'\fP.
+
+
+.TP
+.B dsn_notify
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable sets the request for when notification is returned.  The
+string consists of a comma separated list (no spaces!) of one or more
+of the following: \fInever\fP, to never request notification,
+\fIfailure\fP, to request notification on transmission failure,
+\fIdelay\fP, to be notified of message delays, \fIsuccess\fP, to be
+notified of successful transmission.
+.IP
+Example:
+
+.IP
+.EX
+set dsn_notify="failure,delay"
+
+.EE
+.IP
+\fBNote:\fP when using $sendmail for delivery, you should not enable
+this unless you are either using Sendmail 8.8.x or greater or a MTA
+providing a \fCsendmail(1)\fP\-compatible interface supporting the \fC\-N\fP option
+for DSN. For SMTP delivery, DSN support is auto\-detected so that it
+depends on the server whether DSN will be used or not.
+
+
+.TP
+.B dsn_return
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable controls how much of your message is returned in DSN
+messages.  It may be set to either \fIhdrs\fP to return just the
+message header, or \fIfull\fP to return the full message.
+.IP
+Example:
+
+.IP
+.EX
+set dsn_return=hdrs
+
+.EE
+.IP
+\fBNote:\fP when using $sendmail for delivery, you should not enable
+this unless you are either using Sendmail 8.8.x or greater or a MTA
+providing a \fCsendmail(1)\fP\-compatible interface supporting the \fC\-R\fP option
+for DSN. For SMTP delivery, DSN support is auto\-detected so that it
+depends on the server whether DSN will be used or not.
+
+
+.TP
+.B duplicate_threads
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls whether NeoMutt, when $sort is set to \fIthreads\fP, threads
+messages with the same Message\-Id together.  If it is \fIset\fP, it will indicate
+that it thinks they are duplicates of each other with an equals sign
+in the thread tree.
+
+
+.TP
+.B edit_headers
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This option allows you to edit the header of your outgoing messages
+along with the body of your message.
+.IP
+Although the compose menu may have localized header labels, the
+labels passed to your editor will be standard RFC2822 headers,
+(e.g. To:, Cc:, Subject:).  Headers added in your editor must
+also be RFC2822 headers, or one of the pseudo headers listed in
+"edit-header".  NeoMutt will not understand localized header
+labels, just as it would not when parsing an actual email.
+.IP
+\fBNote\fP that changes made to the References: and Date: headers are
+ignored for interoperability reasons.
+
+
+.TP
+.B editor
+.nf
+Type: command
+Default: "vi"
+.fi
+.IP
+This variable specifies which editor is used by NeoMutt.
+It defaults to the value of the \fC$VISUAL\fP, or \fC$EDITOR\fP, environment
+variable, or to the string "vi" if neither of those are set.
+.IP
+The \fC$editor\fP string may contain a \fI%s\fP escape, which will be replaced by the name
+of the file to be edited.  If the \fI%s\fP escape does not appear in \fC$editor\fP, a
+space and the name to be edited are appended.
+.IP
+The resulting string is then executed by running
+
+.IP
+.EX
+sh \-c 'string'
+
+.EE
+.IP
+where \fIstring\fP is the expansion of \fC$editor\fP described above.
+
+
+.TP
+.B empty_subject
+.nf
+Type: string
+Default: "Re: your mail"
+.fi
+.IP
+This variable specifies the subject to be used when replying to an email
+with an empty subject.  It defaults to "Re: your mail".
+
+
+.TP
+.B encode_from
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will quoted\-printable encode messages when
+they contain the string "From " (note the trailing space) in the beginning of a line.
+This is useful to avoid the tampering certain mail delivery and transport
+agents tend to do with messages (in order to prevent tools from
+misinterpreting the line as a mbox message separator).
+
+
+.TP
+.B entropy_file
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+The file which includes random data that is used to initialize SSL
+library functions.
+
+
+.TP
+.B envelope_from_address
+.nf
+Type: e-mail address
+Default: ""
+.fi
+.IP
+Manually sets the \fIenvelope\fP sender for outgoing messages.
+This value is ignored if $use_envelope_from is \fIunset\fP.
+
+
+.TP
+.B external_search_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+If set, contains the name of the external program used by "~I" patterns.
+This will usually be a wrapper script around mairix, mu, or similar
+indexers other than notmuch (for which there is optional special support).
+.IP
+Here is an example how it works.  Let's assume $external_search_command
+is set to "mairix_filter", and mairix_filter is a script which
+runs the old but well loved mairix indexer with the arguments
+given to mairix_filter, in the "raw" mode of mairix, producing
+on the standard output a list of Message\-IDs, one per line.
+.IP
+If possible, it also filters down the results coming from mairix
+such that only messages in the current folder remain.  It can do
+this because it gets a hidden first argument which is the path
+to the folder.
+(This can be the type of clean and simple script called a \fIone\-liner\fP.)
+.IP
+Now if NeoMutt gets a limit or tag command followed by the pattern
+"~I '\-t s:bleeping='", mairix_filter runs mairix with the
+arguments from inside the quotes (the quotes are needed because
+of the space after "\-t"), mairix finds all messages with
+"bleeping" in the Subject plus all messages sharing threads
+with these and outputs their file names, and mairix_filter
+translates the file names into Message\-IDs.  Finally, NeoMutt
+reads the Message\-IDs and targets the matching messages with the
+command given to it.
+.IP
+You, the user, still have to rewrite the mairix_filter script to
+match the behavior of your indexer, but this should help users
+of indexers other than notmuch to integrate them cleanly with NeoMutt.
+
+
+.TP
+.B fast_reply
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, the initial prompt for recipients and subject are skipped
+when replying to messages, and the initial prompt for subject is
+skipped when forwarding messages.
+.IP
+\fBNote:\fP this variable has no effect when the $autoedit
+variable is \fIset\fP.
+
+
+.TP
+.B fcc_attach
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+This variable controls whether or not attachments on outgoing messages
+are saved along with the main body of your message.
+
+
+.TP
+.B fcc_before_send
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, FCCs will occur before sending
+the message.  Before sending, the message cannot be manipulated,
+so it will be stored the exact same as sent:
+$fcc_attach and $fcc_clear will be ignored (using their default
+values).
+.IP
+When \fIunset\fP, the default, FCCs will occur after sending.
+Variables $fcc_attach and $fcc_clear will be respected, allowing
+it to be stored without attachments or encryption/signing if
+desired.
+
+
+.TP
+.B fcc_clear
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, FCCs will be stored unencrypted and
+unsigned, even when the actual message is encrypted and/or
+signed.
+(PGP only)
+
+
+.TP
+.B flag_chars
+.nf
+Type: character string
+Default: "*!DdrONon\- "
+.fi
+.IP
+Controls the characters used in several flags.
+.RS
+.PD 0
+.TP
+\fBCharacter\fP 
+\fBDefault\fP 
+\fBDescription\fP
+.TP
+1 
+* 
+The mail is tagged.
+.TP
+2 
+! 
+The mail is flagged as important.
+.TP
+3 
+D 
+The mail is marked for deletion.
+.TP
+4 
+d 
+The mail has attachments marked for deletion.
+.TP
+5 
+r 
+The mail has been replied to.
+.TP
+6 
+O 
+The mail is Old (Unread but seen).
+.TP
+7 
+N 
+The mail is New (Unread but not seen).
+.TP
+8 
+o 
+The mail thread is Old (Unread but seen).
+.TP
+9 
+n 
+The mail thread is New (Unread but not seen).
+.TP
+10 
+\- 
+The mail is read \- %S expando.
+.TP
+11 
+<space> 
+The mail is read \- %Z expando.
+.RE
+.PD 1
+
+.TP
+.B flag_safe
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If set, flagged messages can't be deleted.
+
+
+.TP
+.B folder
+.nf
+Type: mailbox
+Default: "~/Mail"
+.fi
+.IP
+Specifies the default location of your mailboxes.  A "+" or "=" at the
+beginning of a pathname will be expanded to the value of this
+variable.  Note that if you change this variable (from the default)
+value you need to make sure that the assignment occurs \fIbefore\fP
+you use "+" or "=" for any other variables since expansion takes place
+when handling the "mailboxes" command.
+
+
+.TP
+.B folder_format
+.nf
+Type: string
+Default: "%2C %t %N %F %2l %\-8.8u %\-8.8g %8s %d %i"
+.fi
+.IP
+This variable allows you to customize the file browser display to your
+personal taste.  This string is similar to $index_format, but has
+its own set of \fCprintf(3)\fP\-like sequences:
+.RS
+.PD 0
+.TP
+%C  
+  
+Current file number
+.TP
+%d  
+  
+Date/time folder was last modified
+.TP
+%D  
+  
+Date/time folder was last modified using $date_format.
+.TP
+%f  
+  
+Filename ("/" is appended to directory names,
+"@" to symbolic links and "*" to executable files)
+.TP
+%F  
+  
+File permissions
+.TP
+%g  
+  
+Group name (or numeric gid, if missing)
+.TP
+%i  
+  
+Description of the folder
+.TP
+%l  
+  
+Number of hard links
+.TP
+%m  
+* 
+Number of messages in the mailbox
+.TP
+%n  
+* 
+Number of unread messages in the mailbox
+.TP
+%N  
+  
+"N" if mailbox has new mail, blank otherwise
+.TP
+%s  
+  
+Size in bytes (see formatstrings-size)
+.TP
+%t  
+  
+"*" if the file is tagged, blank otherwise
+.TP
+%u  
+  
+Owner name (or numeric uid, if missing)
+.TP
+%>X 
+  
+Right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+  
+Pad to the end of the line with character "X"
+.TP
+%*X 
+  
+Soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+For an explanation of "soft\-fill", see the $index_format documentation.
+.IP
+* = can be optionally printed if nonzero
+.IP
+%m, %n, and %N only work for monitored mailboxes.
+%m requires $mail_check_stats to be set.
+%n requires $mail_check_stats to be set (except for IMAP mailboxes).
+
+
+.TP
+.B followup_to
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls whether or not the "Mail\-Followup\-To:" header field is
+generated when sending mail.  When \fIset\fP, NeoMutt will generate this
+field when you are replying to a known mailing list, specified with
+the "subscribe" or "lists" commands.
+.IP
+This field has two purposes.  First, preventing you from
+receiving duplicate copies of replies to messages which you send
+to mailing lists, and second, ensuring that you do get a reply
+separately for any messages sent to known lists to which you are
+not subscribed.
+.IP
+The header will contain only the list's address
+for subscribed lists, and both the list address and your own
+email address for unsubscribed lists.  Without this header, a
+group reply to your message sent to a subscribed list will be
+sent to both the list and your address, resulting in two copies
+of the same email for you.
+
+
+.TP
+.B followup_to_poster
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+If this variable is \fIset\fP and the keyword "poster" is present in
+\fIFollowup\-To\fP header, follow\-up to newsgroup function is not
+permitted.  The message will be mailed to the submitter of the
+message via mail.
+
+
+.TP
+.B force_name
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable is similar to $save_name, except that NeoMutt will
+store a copy of your outgoing message by the username of the address
+you are sending to even if that mailbox does not exist.
+.IP
+Also see the $record variable.
+
+
+.TP
+.B forward_attachments
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+When forwarding inline (i.e. $mime_forward \fIunset\fP or
+answered with "no" and $forward_decode \fIset\fP), attachments
+which cannot be decoded in a reasonable manner will be attached
+to the newly composed message if this quadoption is \fIset\fP or
+answered with "yes".
+
+
+.TP
+.B forward_attribution_intro
+.nf
+Type: string
+Default: "\-\-\-\-\- Forwarded message from %f \-\-\-\-\-"
+.fi
+.IP
+This is the string that will precede a message which has been forwarded
+in the main body of a message (when $mime_forward is unset).
+For a full listing of defined \fCprintf(3)\fP\-like sequences see
+the section on $index_format.  See also $attribution_locale.
+
+
+.TP
+.B forward_attribution_trailer
+.nf
+Type: string
+Default: "\-\-\-\-\- End forwarded message \-\-\-\-\-"
+.fi
+.IP
+This is the string that will follow a message which has been forwarded
+in the main body of a message (when $mime_forward is unset).
+For a full listing of defined \fCprintf(3)\fP\-like sequences see
+the section on $index_format.  See also $attribution_locale.
+
+
+.TP
+.B forward_decode
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls the decoding of complex MIME messages into \fCtext/plain\fP when
+forwarding a message.  The message header is also RFC2047 decoded.
+This variable is only used, if $mime_forward is \fIunset\fP,
+otherwise $mime_forward_decode is used instead.
+
+
+.TP
+.B forward_decrypt
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls the handling of encrypted messages when forwarding a message.
+When \fIset\fP, the outer layer of encryption is stripped off.  This
+variable is only used if $mime_forward is \fIset\fP and
+$mime_forward_decode is \fIunset\fP.
+(PGP only)
+
+
+.TP
+.B forward_edit
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+This quadoption controls whether or not the user is automatically
+placed in the editor when forwarding messages.  For those who always want
+to forward with no modification, use a setting of "no".
+
+
+.TP
+.B forward_format
+.nf
+Type: string
+Default: "[%a: %s]"
+.fi
+.IP
+This variable controls the default subject when forwarding a message.
+It uses the same format sequences as the $index_format variable.
+
+
+.TP
+.B forward_quote
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, forwarded messages included in the main body of the
+message (when $mime_forward is \fIunset\fP) will be quoted using
+$indent_string.
+
+
+.TP
+.B forward_references
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, forwarded messages set the "In\-Reply\-To:" and
+"References:" headers in the same way as normal replies would. Hence the
+forwarded message becomes part of the original thread instead of starting
+a new one.
+
+
+.TP
+.B from
+.nf
+Type: e-mail address
+Default: ""
+.fi
+.IP
+When \fIset\fP, this variable contains a default "from" address.  It
+can be overridden using "my_hdr" (including from a "send-hook") and
+$reverse_name.  This variable is ignored if $use_from is \fIunset\fP.
+.IP
+If not specified, then it may be read from the environment variable \fC$EMAIL\fP.
+
+
+.TP
+.B from_chars
+.nf
+Type: character string
+Default: ""
+.fi
+.IP
+Controls the character used to prefix the %F and %L fields in the
+index.
+.RS
+.PD 0
+.TP
+\fBCharacter\fP 
+\fBDescription\fP
+.TP
+1 
+Mail is written by you and has a To address, or has a known mailing list in the To address.
+.TP
+2 
+Mail is written by you and has a Cc address, or has a known mailing list in the Cc address.
+.TP
+3 
+Mail is written by you and has a Bcc address.
+.TP
+4 
+All remaining cases.
+.RE
+.PD 1
+.IP
+If this is empty or unset (default), the traditional long "To ",
+"Cc " and "Bcc " prefixes are used.  If set but too short to
+include a character for a particular case, a single space will be
+prepended to the field.  To prevent any prefix at all from being
+added in a particular case, use the special value CR (aka ^M)
+for the corresponding character.
+.IP
+This slightly odd interface is necessitated by NeoMutt's handling of
+string variables; one can't tell a variable that is unset from one
+that is set to the empty string.
+
+
+.TP
+.B gecos_mask
+.nf
+Type: regular expression
+Default: "^[^,]*"
+.fi
+.IP
+A regular expression used by NeoMutt to parse the GECOS field of a password
+entry when expanding the alias.  The default value
+will return the string up to the first "," encountered.
+If the GECOS field contains a string like "lastname, firstname" then you
+should set it to "\fC.*\fP".
+.IP
+This can be useful if you see the following behavior: you address an e\-mail
+to user ID "stevef" whose full name is "Steve Franklin".  If NeoMutt expands
+"stevef" to '"Franklin" stevef@foo.bar' then you should set the $gecos_mask to
+a regular expression that will match the whole name so NeoMutt will expand
+"Franklin" to "Franklin, Steve".
+
+
+.TP
+.B group_index_format
+.nf
+Type: string
+Default: "%4C %M%N %5s  %\-45.45f %d"
+.fi
+.IP
+This variable allows you to customize the newsgroup browser display to
+your personal taste.  This string is similar to "index_format", but
+has its own set of printf()\-like sequences:
+.RS
+.PD 0
+.TP
+%C  
+Current newsgroup number
+.TP
+%d  
+Description of newsgroup (becomes from server)
+.TP
+%f  
+Newsgroup name
+.TP
+%M  
+\- if newsgroup not allowed for direct post (moderated for example)
+.TP
+%N  
+N if newsgroup is new, u if unsubscribed, blank otherwise
+.TP
+%n  
+Number of new articles in newsgroup
+.TP
+%s  
+Number of unread articles in newsgroup
+.TP
+%>X 
+Right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+Pad to the end of the line with character "X"
+.RE
+.PD 1
+
+.TP
+.B hdrs
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, the header fields normally added by the "my_hdr"
+command are not created.  This variable \fImust\fP be unset before
+composing a new message or replying in order to take effect.  If \fIset\fP,
+the user defined header fields are added to every new message.
+
+
+.TP
+.B header
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, this variable causes NeoMutt to include the header
+of the message you are replying to into the edit buffer.
+The $weed setting applies.
+
+
+.TP
+.B header_cache
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+This variable points to the header cache database. If the path points to
+an existing directory, NeoMutt will create a dedicated header cache
+database per folder. Otherwise, the path points to a regular file, which
+will be created as needed and used as a shared global header cache for
+all folders.
+By default it is \fIunset\fP so no header caching will be used.
+.IP
+Header caching can greatly improve speed when opening POP, IMAP
+MH or Maildir folders, see "caching" for details.
+
+
+.TP
+.B header_cache_backend
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable specifies the header cache backend.  By default it is
+\fIunset\fP so no header caching will be used.
+
+
+.TP
+.B header_cache_compress_level
+.nf
+Type: number
+Default: 1
+.fi
+.IP
+When NeoMutt is compiled with lz4, zstd or zlib, this option can be used
+to setup the compression level.
+
+
+.TP
+.B header_cache_compress_method
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+When NeoMutt is compiled with lz4, zstd or zlib, the header cache backend
+can use these compression methods for compressing the cache files.
+This results in much smaller cache file sizes and may even improve speed.
+
+
+.TP
+.B header_color_partial
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, color header regexes behave like color body regexes:
+color is applied to the exact text matched by the regex.  When
+\fIunset\fP, color is applied to the entire header.
+.IP
+One use of this option might be to apply color to just the header labels.
+.IP
+See "color" for more details.
+
+
+.TP
+.B help
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, help lines describing the bindings for the major functions
+provided by each menu are displayed on the first line of the screen.
+.IP
+\fBNote:\fP The binding will not be displayed correctly if the
+function is bound to a sequence rather than a single keystroke.  Also,
+the help line may not be updated if a binding is changed while NeoMutt is
+running.  Since this variable is primarily aimed at new users, neither
+of these should present a major problem.
+
+
+.TP
+.B hidden_host
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will skip the host name part of $hostname variable
+when adding the domain part to addresses.  This variable does not
+affect the generation of Message\-IDs, and it will not lead to the
+cut\-off of first\-level domains.
+
+
+.TP
+.B hidden_tags
+.nf
+Type: string list
+Default: "unread,draft,flagged,passed,replied,attachment,signed,encrypted"
+.fi
+.IP
+This variable specifies private notmuch/imap tags which should not be printed
+on screen.
+
+
+.TP
+.B hide_limited
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
+by limiting, in the thread tree.
+
+
+.TP
+.B hide_missing
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will not show the presence of missing messages in the
+thread tree.
+
+
+.TP
+.B hide_thread_subject
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will not show the subject of messages in the thread
+tree that have the same subject as their parent or closest previously
+displayed sibling.
+
+
+.TP
+.B hide_top_limited
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
+by limiting, at the top of threads in the thread tree.  Note that when
+$hide_limited is \fIset\fP, this option will have no effect.
+
+
+.TP
+.B hide_top_missing
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will not show the presence of missing messages at the
+top of threads in the thread tree.  Note that when $hide_missing is
+\fIset\fP, this option will have no effect.
+
+
+.TP
+.B history
+.nf
+Type: number
+Default: 10
+.fi
+.IP
+This variable controls the size (in number of strings remembered) of
+the string history buffer per category. The buffer is cleared each time the
+variable is set.
+
+
+.TP
+.B history_file
+.nf
+Type: path
+Default: "~/.mutthistory"
+.fi
+.IP
+The file in which NeoMutt will save its history.
+.IP
+Also see $save_history.
+
+
+.TP
+.B history_remove_dups
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, all of the string history will be scanned for duplicates
+when a new entry is added.  Duplicate entries in the $history_file will
+also be removed when it is periodically compacted.
+
+
+.TP
+.B honor_disposition
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will not display attachments with a
+disposition of "attachment" inline even if it could
+render the part to plain text. These MIME parts can only
+be viewed from the attachment menu.
+.IP
+If \fIunset\fP, NeoMutt will render all MIME parts it can
+properly transform to plain text.
+
+
+.TP
+.B honor_followup_to
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+This variable controls whether or not a Mail\-Followup\-To header is
+honored when group\-replying to a message.
+
+
+.TP
+.B hostname
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Specifies the fully\-qualified hostname of the system NeoMutt is running on
+containing the host's name and the DNS domain it belongs to. It is used
+as the domain part (after "@") for local email addresses as well as
+Message\-Id headers.
+.IP
+If not specified in a config file, then NeoMutt will try to determine the hostname itself.
+.IP
+Optionally, NeoMutt can be compiled with a fixed domain name.
+.IP
+Also see $use_domain and $hidden_host.
+
+
+.TP
+.B idn_decode
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will show you international domain names decoded.
+Note: You can use IDNs for addresses even if this is \fIunset\fP.
+This variable only affects decoding. (IDN only)
+
+
+.TP
+.B idn_encode
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will encode international domain names using
+IDN.  Unset this if your SMTP server can handle newer (RFC6531)
+UTF\-8 encoded domains. (IDN only)
+
+
+.TP
+.B ignore_list_reply_to
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Affects the behavior of the \fC<reply>\fP function when replying to
+messages from mailing lists (as defined by the "subscribe" or
+"lists" commands).  When \fIset\fP, if the "Reply\-To:" field is
+set to the same value as the "To:" field, NeoMutt assumes that the
+"Reply\-To:" field was set by the mailing list to automate responses
+to the list, and will ignore this field.  To direct a response to the
+mailing list when this option is \fIset\fP, use the \fC<list-reply>\fP
+function; \fC<group\-reply>\fP will reply to both the sender and the
+list.
+
+
+.TP
+.B imap_authenticators
+.nf
+Type: string list
+Default: ""
+.fi
+.IP
+This is a colon\-delimited list of authentication methods NeoMutt may
+attempt to use to log in to an IMAP server, in the order NeoMutt should
+try them.  Authentication methods are either "login" or the right
+side of an IMAP "AUTH=xxx" capability string, e.g. "digest\-md5", "gssapi"
+or "cram\-md5". This option is case\-insensitive. If it's
+\fIunset\fP (the default) NeoMutt will try all available methods,
+in order from most\-secure to least\-secure.
+.IP
+Example:
+
+.IP
+.EX
+set imap_authenticators="gssapi:cram\-md5:login"
+
+.EE
+.IP
+\fBNote:\fP NeoMutt will only fall back to other authentication methods if
+the previous methods are unavailable. If a method is available but
+authentication fails, NeoMutt will not connect to the IMAP server.
+
+
+.TP
+.B imap_check_subscribed
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will fetch the set of subscribed folders from
+your server whenever a mailbox is \fBselected\fP, and add them to the set
+of mailboxes it polls for new mail just as if you had issued individual
+"mailboxes" commands.
+
+
+.TP
+.B imap_condstore
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will use the CONDSTORE extension (RFC7162)
+if advertised by the server.  NeoMutt's current implementation is basic,
+used only for initial message fetching and flag updates.
+.IP
+For some IMAP servers, enabling this will slightly speed up
+downloading initial messages.  Unfortunately, Gmail is not one
+those, and displays worse performance when enabled.  Your
+mileage may vary.
+
+
+.TP
+.B imap_deflate
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will use the COMPRESS=DEFLATE extension (RFC4978)
+if advertised by the server.
+.IP
+In general a good compression efficiency can be achieved, which
+speeds up reading large mailboxes also on fairly good connections.
+
+
+.TP
+.B imap_delim_chars
+.nf
+Type: string
+Default: "/."
+.fi
+.IP
+This contains the list of characters that NeoMutt will use as folder
+separators for IMAP paths, when no separator is provided on the IMAP
+connection.
+
+
+.TP
+.B imap_fetch_chunk_size
+.nf
+Type: number (long)
+Default: 0
+.fi
+.IP
+When set to a value greater than 0, new headers will be
+downloaded in groups of this many headers per request.  If you
+have a very large mailbox, this might prevent a timeout and
+disconnect when opening the mailbox, by sending a FETCH per set
+of this many headers, instead of a single FETCH for all new
+headers.
+
+
+.TP
+.B imap_headers
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+NeoMutt requests these header fields in addition to the default headers
+("Date:", "From:", "Sender:", "Subject:", "To:", "Cc:", "Message\-Id:",
+"References:", "Content\-Type:", "Content\-Description:", "In\-Reply\-To:",
+"Reply\-To:", "Lines:", "List\-Post:", "X\-Label:") from IMAP
+servers before displaying the index menu. You may want to add more
+headers for spam detection.
+.IP
+\fBNote:\fP This is a space separated list, items should be uppercase
+and not contain the colon, e.g. "X\-BOGOSITY X\-SPAM\-STATUS" for the
+"X\-Bogosity:" and "X\-Spam\-Status:" header fields.
+
+
+.TP
+.B imap_idle
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will attempt to use the IMAP IDLE extension
+to check for new mail in the current mailbox. Some servers
+(dovecot was the inspiration for this option) react badly
+to NeoMutt's implementation. If your connection seems to freeze
+up periodically, try unsetting this.
+
+
+.TP
+.B imap_keepalive
+.nf
+Type: number
+Default: 300
+.fi
+.IP
+This variable specifies the maximum amount of time in seconds that NeoMutt
+will wait before polling open IMAP connections, to prevent the server
+from closing them before NeoMutt has finished with them. The default is
+well within the RFC\-specified minimum amount of time (30 minutes) before
+a server is allowed to do this, but in practice the RFC does get
+violated every now and then. Reduce this number if you find yourself
+getting disconnected from your IMAP server due to inactivity.
+
+
+.TP
+.B imap_list_subscribed
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable configures whether IMAP folder browsing will look for
+only subscribed folders or all folders.  This can be toggled in the
+IMAP browser with the \fC<toggle\-subscribed>\fP function.
+
+
+.TP
+.B imap_login
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Your login name on the IMAP server.
+.IP
+This variable defaults to the value of $imap_user.
+
+
+.TP
+.B imap_oauth_refresh_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+The command to run to generate an OAUTH refresh token for
+authorizing your connection to your IMAP server.  This command will be
+run on every connection attempt that uses the OAUTHBEARER authentication
+mechanism.  See "oauth" for details.
+
+
+.TP
+.B imap_pass
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Specifies the password for your IMAP account.  If \fIunset\fP, NeoMutt will
+prompt you for your password when you invoke the \fC<imap\-fetch\-mail>\fP function
+or try to open an IMAP folder.
+.IP
+\fBWarning\fP: you should only use this option when you are on a
+fairly secure machine, because the superuser can read your neomuttrc even
+if you are the only one who can read the file.
+
+
+.TP
+.B imap_passive
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will not open new IMAP connections to check for new
+mail.  NeoMutt will only check for new mail over existing IMAP
+connections.  This is useful if you don't want to be prompted for
+user/password pairs on NeoMutt invocation, or if opening the connection
+is slow.
+
+
+.TP
+.B imap_peek
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will avoid implicitly marking your mail as read whenever
+you fetch a message from the server. This is generally a good thing,
+but can make closing an IMAP folder somewhat slower. This option
+exists to appease speed freaks.
+
+
+.TP
+.B imap_pipeline_depth
+.nf
+Type: number
+Default: 15
+.fi
+.IP
+Controls the number of IMAP commands that may be queued up before they
+are sent to the server. A deeper pipeline reduces the amount of time
+NeoMutt must wait for the server, and can make IMAP servers feel much
+more responsive. But not all servers correctly handle pipelined commands,
+so if you have problems you might want to try setting this variable to 0.
+.IP
+\fBNote:\fP Changes to this variable have no effect on open connections.
+
+
+.TP
+.B imap_poll_timeout
+.nf
+Type: number
+Default: 15
+.fi
+.IP
+This variable specifies the maximum amount of time in seconds
+that NeoMutt will wait for a response when polling IMAP connections
+for new mail, before timing out and closing the connection.  Set
+to 0 to disable timing out.
+
+
+.TP
+.B imap_qresync
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will use the QRESYNC extension (RFC7162)
+if advertised by the server.  NeoMutt's current implementation is basic,
+used only for initial message fetching and flag updates.
+.IP
+Note: this feature is currently experimental.  If you experience
+strange behavior, such as duplicate or missing messages please
+file a bug report to let us know.
+
+
+.TP
+.B imap_rfc5161
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will use the IMAP ENABLE extension (RFC5161) to
+select CAPABILITIES. Some servers (notably Coremail System IMap Server) do
+not properly respond to ENABLE commands, which might cause NeoMutt to hang.
+If your connection seems to freeze at login, try unsetting this. See also
+https://github.com/neomutt/neomutt/issues/1689
+
+
+.TP
+.B imap_servernoise
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will display warning messages from the IMAP
+server as error messages. Since these messages are often
+harmless, or generated due to configuration problems on the
+server which are out of the users' hands, you may wish to suppress
+them at some point.
+
+
+.TP
+.B imap_user
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+The name of the user whose mail you intend to access on the IMAP
+server.
+.IP
+This variable defaults to your user name on the local machine.
+
+
+.TP
+.B implicit_autoview
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If set to "yes", NeoMutt will look for a mailcap entry with the
+"\fCcopiousoutput\fP" flag set for \fIevery\fP MIME attachment it doesn't have
+an internal viewer defined for.  If such an entry is found, NeoMutt will
+use the viewer defined in that entry to convert the body part to text
+form.
+
+
+.TP
+.B include
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether or not a copy of the message(s) you are replying to
+is included in your reply.
+
+
+.TP
+.B include_encrypted
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether or not NeoMutt includes separately encrypted attachment
+contents when replying.
+.IP
+This variable was added to prevent accidental exposure of encrypted
+contents when replying to an attacker.  If a previously encrypted message
+were attached by the attacker, they could trick an unwary recipient into
+decrypting and including the message in their reply.
+
+
+.TP
+.B include_onlyfirst
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether or not NeoMutt includes only the first attachment
+of the message you are replying.
+
+
+.TP
+.B indent_string
+.nf
+Type: string
+Default: "> "
+.fi
+.IP
+Specifies the string to prepend to each line of text quoted in a
+message to which you are replying.  You are strongly encouraged not to
+change this value, as it tends to agitate the more fanatical netizens.
+.IP
+The value of this option is ignored if $text_flowed is set, because
+the quoting mechanism is strictly defined for format=flowed.
+.IP
+This option is a format string, please see the description of
+$index_format for supported \fCprintf(3)\fP\-style sequences.
+
+
+.TP
+.B index_format
+.nf
+Type: string
+Default: "%4C %Z %{%b %d} %\-15.15L (%?l?%4l&%4c?) %s"
+.fi
+.IP
+This variable allows you to customize the message index display to
+your personal taste.
+.IP
+"Format strings" are similar to the strings used in the C
+function \fCprintf(3)\fP to format output (see the man page for more details).
+For an explanation of the %? construct, see the status_format description.
+The following sequences are defined in NeoMutt:
+.RS
+.PD 0
+.TP
+%a 
+Address of the author
+.TP
+%A 
+Reply\-to address (if present; otherwise: address of author)
+.TP
+%b 
+Filename of the original message folder (think mailbox)
+.TP
+%B 
+The list to which the letter was sent, or else the folder name (%b).
+.TP
+%C 
+Current message number
+.TP
+%c 
+Number of characters (bytes) in the body of the message (see formatstrings-size)
+.TP
+%cr 
+Number of characters (bytes) in the raw message, including the header (see formatstrings-size)
+.TP
+%D 
+Date and time of message using date_format and local timezone
+.TP
+%d 
+Date and time of message using date_format and sender's timezone
+.TP
+%e 
+Current message number in thread
+.TP
+%E 
+Number of messages in current thread
+.TP
+%F 
+Author name, or recipient name if the message is from you
+.TP
+%Fp 
+Like %F, but plain. No contextual formatting is applied to recipient name
+.TP
+%f 
+Sender (address + real name), either From: or Return\-Path:
+.TP
+%g 
+Newsgroup name (if compiled with NNTP support)
+.TP
+%g 
+Message tags (e.g. notmuch tags/imap flags)
+.TP
+%Gx 
+Individual message tag (e.g. notmuch tags/imap flags)
+.TP
+%H 
+Spam attribute(s) of this message
+.TP
+%I 
+Initials of author
+.TP
+%i 
+Message\-id of the current message
+.TP
+%J 
+Message tags (if present, tree unfolded, and != parent's tags)
+.TP
+%K 
+The list to which the letter was sent (if any; otherwise: empty)
+.TP
+%L 
+If an address in the "To:" or "Cc:" header field matches an address
+Defined by the user's "subscribe" command, this displays
+"To <list\-name>", otherwise the same as %F
+.TP
+%l 
+number of lines in the unprocessed message (may not work with
+maildir, mh, and IMAP folders)
+.TP
+%M 
+Number of hidden messages if the thread is collapsed
+.TP
+%m 
+Total number of message in the mailbox
+.TP
+%N 
+Message score
+.TP
+%n 
+Author's real name (or address if missing)
+.TP
+%O 
+Original save folder where NeoMutt would formerly have
+Stashed the message: list name or recipient name
+If not sent to a list
+.TP
+%P 
+Progress indicator for the built\-in pager (how much of the file has been displayed)
+.TP
+%q 
+Newsgroup name (if compiled with NNTP support)
+.TP
+%R 
+Comma separated list of "Cc:" recipients
+.TP
+%r 
+Comma separated list of "To:" recipients
+.TP
+%S 
+Single character status of the message ("N"/"O"/"D"/"d"/"!"/"r"/"*")
+.TP
+%s 
+Subject of the message
+.TP
+%T 
+The appropriate character from the $to_chars string
+.TP
+%t 
+"To:" field (recipients)
+.TP
+%u 
+User (login) name of the author
+.TP
+%v 
+First name of the author, or the recipient if the message is from you
+.TP
+%W 
+Name of organization of author ("Organization:" field)
+.TP
+%x 
+"X\-Comment\-To:" field (if present and compiled with NNTP support)
+.TP
+%X 
+Number of MIME attachments
+(please see the "attachments" section for possible speed effects)
+.TP
+%Y 
+"X\-Label:" field, if present, and \fI(1)\fP not at part of a thread tree,
+\fI(2)\fP at the top of a thread, or \fI(3)\fP "X\-Label:" is different from
+Preceding message's "X\-Label:"
+.TP
+%y 
+"X\-Label:" field, if present
+.TP
+%Z 
+A three character set of message status flags.
+The first character is new/read/replied flags ("n"/"o"/"r"/"O"/"N").
+The second is deleted or encryption flags ("D"/"d"/"S"/"P"/"s"/"K").
+The third is either tagged/flagged ("*"/"!"), or one of the characters
+Listed in $to_chars.
+.TP
+%zc 
+Message crypto flags
+.TP
+%zs 
+Message status flags
+.TP
+%zt 
+Message tag flags
+.TP
+%@name@ 
+insert and evaluate format\-string from the matching
+"index-format-hook" command
+.TP
+%{fmt} 
+the date and time of the message is converted to sender's
+time zone, and "fmt" is expanded by the library function
+\fCstrftime(3)\fP; a leading bang disables locales
+.TP
+%[fmt] 
+the date and time of the message is converted to the local
+time zone, and "fmt" is expanded by the library function
+\fCstrftime(3)\fP; a leading bang disables locales
+.TP
+%(fmt) 
+the local date and time when the message was received.
+"fmt" is expanded by the library function \fCstrftime(3)\fP;
+a leading bang disables locales
+.TP
+%>X    
+right justify the rest of the string and pad with character "X"
+.TP
+%|X    
+pad to the end of the line with character "X"
+.TP
+%*X    
+soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+Date format expressions can be constructed based on relative dates. Using
+the date formatting operators along with nested conditionals, the date
+format can be modified based on how old a message is.  See the section on
+"Conditional Dates" for an explanation and examples
+.IP
+Note that for mbox/mmdf, "%l" applies to the unprocessed message, and
+for maildir/mh, the value comes from the "Lines:" header field when
+present (the meaning is normally the same). Thus the value depends on
+the encodings used in the different parts of the message and has little
+meaning in practice.
+.IP
+"Soft\-fill" deserves some explanation: Normal right\-justification
+will print everything to the left of the "%>", displaying padding and
+whatever lies to the right only if there's room. By contrast,
+soft\-fill gives priority to the right\-hand side, guaranteeing space
+to display it and showing padding only if there's still room. If
+necessary, soft\-fill will eat text leftwards to make room for
+rightward text.
+.IP
+Note that these expandos are supported in
+"save-hook", "fcc-hook" and "fcc-save-hook", too.
+
+
+.TP
+.B inews
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+If set, specifies the program and arguments used to deliver news posted
+by NeoMutt.  Otherwise, NeoMutt posts article using current connection to
+news server.  The following printf\-style sequence is understood:
+.RS
+.PD 0
+.TP
+%a 
+account url
+.TP
+%p 
+port
+.TP
+%P 
+port if specified
+.TP
+%s 
+news server name
+.TP
+%S 
+url schema
+.TP
+%u 
+username
+.RE
+.PD 1
+.IP
+Example:
+
+.IP
+.EX
+set inews="/usr/local/bin/inews \-hS"
+
+.EE
+
+
+.TP
+.B ispell
+.nf
+Type: command
+Default: "ispell"
+.fi
+.IP
+How to invoke ispell (GNU's spell\-checking software).
+
+
+.TP
+.B keep_flagged
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, read messages marked as flagged will not be moved
+from your spool mailbox to your $mbox mailbox, or as a result of
+a "mbox-hook" command.
+
+
+.TP
+.B mail_check
+.nf
+Type: number
+Default: 5
+.fi
+.IP
+This variable configures how often (in seconds) NeoMutt should look for
+new mail. Also see the $timeout variable.
+
+
+.TP
+.B mail_check_recent
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will only notify you about new mail that has been received
+since the last time you opened the mailbox.  When \fIunset\fP, NeoMutt will notify you
+if any new mail exists in the mailbox, regardless of whether you have visited it
+recently.
+.IP
+When \fI$mark_old\fP is set, NeoMutt does not consider the mailbox to contain new
+mail if only old messages exist.
+
+
+.TP
+.B mail_check_stats
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will periodically calculate message
+statistics of a mailbox while polling for new mail.  It will
+check for unread, flagged, and total message counts.  Because
+this operation is more performance intensive, it defaults to
+\fIunset\fP, and has a separate option, $mail_check_stats_interval, to
+control how often to update these counts.
+.IP
+Message statistics can also be explicitly calculated by invoking the
+\fC<check\-stats>\fP function.
+
+
+.TP
+.B mail_check_stats_interval
+.nf
+Type: number
+Default: 60
+.fi
+.IP
+When $mail_check_stats is \fIset\fP, this variable configures
+how often (in seconds) NeoMutt will update message counts.
+
+
+.TP
+.B mailcap_path
+.nf
+Type: string list
+Default: "~/.mailcap:/usr/share/neomutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap"
+.fi
+.IP
+This variable specifies which files to consult when attempting to
+display MIME bodies not directly supported by NeoMutt.  The default value
+is generated during startup: see the "mailcap" section of the manual.
+.IP
+$mailcap_path is overridden by the environment variable \fC$MAILCAPS\fP.
+.IP
+The default search path is from RFC1524.
+
+
+.TP
+.B mailcap_sanitize
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will restrict possible characters in mailcap % expandos
+to a well\-defined set of safe characters.  This is the safe setting,
+but we are not sure it doesn't break some more advanced MIME stuff.
+.IP
+\fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
+DOING!\fP
+
+
+.TP
+.B maildir_check_cur
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will poll both the new and cur directories of
+a maildir folder for new messages.  This might be useful if other
+programs interacting with the folder (e.g. dovecot) are moving new
+messages to the cur directory.  Note that setting this option may
+slow down polling for new messages in large folders, since NeoMutt has
+to scan all cur messages.
+
+
+.TP
+.B maildir_header_cache_verify
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Check for Maildir unaware programs other than NeoMutt having modified maildir
+files when the header cache is in use.  This incurs one \fCstat(2)\fP per
+message every time the folder is opened (which can be very slow for NFS
+folders).
+
+
+.TP
+.B maildir_trash
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, messages marked as deleted will be saved with the maildir
+trashed flag instead of unlinked.  \fBNote:\fP this only applies
+to maildir\-style mailboxes.  Setting it will have no effect on other
+mailbox types.
+
+
+.TP
+.B mark_macro_prefix
+.nf
+Type: string
+Default: "'"
+.fi
+.IP
+Prefix for macros created using mark\-message.  A new macro
+automatically generated with \fI<mark\-message>a\fP will be composed
+from this prefix and the letter \fIa\fP.
+
+
+.TP
+.B mark_old
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls whether or not NeoMutt marks \fInew\fP \fBunread\fP
+messages as \fIold\fP if you exit a mailbox without reading them.
+With this option \fIset\fP, the next time you start NeoMutt, the messages
+will show up with an "O" next to them in the index menu,
+indicating that they are old.
+
+
+.TP
+.B markers
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls the display of wrapped lines in the internal pager. If set, a
+"+" marker is displayed at the beginning of wrapped lines.
+.IP
+Also see the $smart_wrap variable.
+
+
+.TP
+.B mask
+.nf
+Type: regular expression
+Default: "!^\\.[^.]"
+.fi
+.IP
+A regular expression used in the file browser, optionally preceded by
+the \fInot\fP operator "!".  Only files whose names match this mask
+will be shown. The match is always case\-sensitive.
+
+
+.TP
+.B mbox
+.nf
+Type: mailbox
+Default: "~/mbox"
+.fi
+.IP
+This specifies the folder into which read mail in your $spoolfile
+folder will be appended.
+.IP
+Also see the $move variable.
+
+
+.TP
+.B mbox_type
+.nf
+Type: enumeration
+Default: mbox
+.fi
+.IP
+The default mailbox type used when creating new folders. May be any of
+"mbox", "MMDF", "MH" or "Maildir".
+.IP
+This can also be set using the \fC\-m\fP command\-line option.
+
+
+.TP
+.B menu_context
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable controls the number of lines of context that are given
+when scrolling through menus. (Similar to $pager_context.)
+
+
+.TP
+.B menu_move_off
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, the bottom entry of menus will never scroll up past
+the bottom of the screen, unless there are less entries than lines.
+When \fIset\fP, the bottom entry may move off the bottom.
+
+
+.TP
+.B menu_scroll
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, menus will be scrolled up or down one line when you
+attempt to move across a screen boundary.  If \fIunset\fP, the screen
+is cleared and the next or previous page of the menu is displayed
+(useful for slow links to avoid many redraws).
+
+
+.TP
+.B message_cache_clean
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will clean out obsolete entries from the message cache when
+the mailbox is synchronized. You probably only want to set it
+every once in a while, since it can be a little slow
+(especially for large folders).
+
+
+.TP
+.B message_cachedir
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+Set this to a directory and NeoMutt will cache copies of messages from
+your IMAP and POP servers here. You are free to remove entries at any
+time.
+.IP
+When setting this variable to a directory, NeoMutt needs to fetch every
+remote message only once and can perform regular expression searches
+as fast as for local folders.
+.IP
+Also see the $message_cache_clean variable.
+
+
+.TP
+.B message_format
+.nf
+Type: string
+Default: "%s"
+.fi
+.IP
+This is the string displayed in the "attachment" menu for
+attachments of type \fCmessage/rfc822\fP.  For a full listing of defined
+\fCprintf(3)\fP\-like sequences see the section on $index_format.
+
+
+.TP
+.B meta_key
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, forces NeoMutt to interpret keystrokes with the high bit (bit 8)
+set as if the user had pressed the Esc key and whatever key remains
+after having the high bit removed.  For example, if the key pressed
+has an ASCII value of \fC0xf8\fP, then this is treated as if the user had
+pressed Esc then "x".  This is because the result of removing the
+high bit from \fC0xf8\fP is \fC0x78\fP, which is the ASCII character
+"x".
+
+
+.TP
+.B metoo
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIunset\fP, NeoMutt will remove your address (see the "alternates"
+command) from the list of recipients when replying to a message.
+
+
+.TP
+.B mh_purge
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIunset\fP, NeoMutt will mimic mh's behavior and rename deleted messages
+to \fI,<old file name>\fP in mh folders instead of really deleting
+them. This leaves the message on disk but makes programs reading the folder
+ignore it. If the variable is \fIset\fP, the message files will simply be
+deleted.
+.IP
+This option is similar to $maildir_trash for Maildir folders.
+
+
+.TP
+.B mh_seq_flagged
+.nf
+Type: string
+Default: "flagged"
+.fi
+.IP
+The name of the MH sequence used for flagged messages.
+
+
+.TP
+.B mh_seq_replied
+.nf
+Type: string
+Default: "replied"
+.fi
+.IP
+The name of the MH sequence used to tag replied messages.
+
+
+.TP
+.B mh_seq_unseen
+.nf
+Type: string
+Default: "unseen"
+.fi
+.IP
+The name of the MH sequence used for unseen messages.
+
+
+.TP
+.B mime_forward
+.nf
+Type: quadoption
+Default: no
+.fi
+.IP
+When \fIset\fP, the message you are forwarding will be attached as a
+separate \fCmessage/rfc822\fP MIME part instead of included in the main body of the
+message.  This is useful for forwarding MIME messages so the receiver
+can properly view the message as it was delivered to you. If you like
+to switch between MIME and not MIME from mail to mail, set this
+variable to "ask\-no" or "ask\-yes".
+.IP
+Also see $forward_decode and $mime_forward_decode.
+
+
+.TP
+.B mime_forward_decode
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls the decoding of complex MIME messages into \fCtext/plain\fP when
+forwarding a message while $mime_forward is \fIset\fP. Otherwise
+$forward_decode is used instead.
+
+
+.TP
+.B mime_forward_rest
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+When forwarding multiple attachments of a MIME message from the attachment
+menu, attachments which can't be decoded in a reasonable manner will
+be attached to the newly composed message if this option is \fIset\fP.
+
+
+.TP
+.B mime_subject
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIunset\fP, 8\-bit "subject:" line in article header will not be
+encoded according to RFC2047 to base64.  This is useful when message
+is Usenet article, because MIME for news is nonstandard feature.
+
+
+.TP
+.B mime_type_query_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This specifies a command to run, to determine the mime type of a
+new attachment when composing a message.  Unless
+$mime_type_query_first is set, this will only be run if the
+attachment's extension is not found in the mime.types file.
+.IP
+The string may contain a "%s", which will be substituted with the
+attachment filename.  NeoMutt will add quotes around the string substituted
+for "%s" automatically according to shell quoting rules, so you should
+avoid adding your own.  If no "%s" is found in the string, NeoMutt will
+append the attachment filename to the end of the string.
+.IP
+The command should output a single line containing the
+attachment's mime type.
+.IP
+Suggested values are "xdg\-mime query filetype" or
+"file \-bi".
+
+
+.TP
+.B mime_type_query_first
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, the $mime_type_query_command will be run before the
+mime.types lookup.
+
+
+.TP
+.B mix_entry_format
+.nf
+Type: string
+Default: "%4n %c %\-16s %a"
+.fi
+.IP
+This variable describes the format of a remailer line on the mixmaster
+chain selection screen.  The following \fCprintf(3)\fP\-like sequences are
+supported:
+.RS
+.PD 0
+.TP
+%a  
+The remailer's e\-mail address
+.TP
+%c  
+Remailer capabilities
+.TP
+%n  
+The running number on the menu
+.TP
+%s  
+The remailer's short name
+.TP
+%>X 
+right justify the rest of the string and pad with character "X"
+.TP
+%|X 
+pad to the end of the line with character "X"
+.TP
+%*X 
+soft\-fill with character "X" as pad
+.RE
+.PD 1
+
+.TP
+.B mixmaster
+.nf
+Type: command
+Default: "mixmaster"
+.fi
+.IP
+This variable contains the path to the Mixmaster binary on your
+system.  It is used with various sets of parameters to gather the
+list of known remailers, and to finally send a message through the
+mixmaster chain.
+
+
+.TP
+.B move
+.nf
+Type: quadoption
+Default: no
+.fi
+.IP
+Controls whether or not NeoMutt will move read messages
+from your spool mailbox to your $mbox mailbox, or as a result of
+a "mbox-hook" command.
+
+
+.TP
+.B narrow_tree
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable, when \fIset\fP, makes the thread tree narrower, allowing
+deeper threads to fit on the screen.
+
+
+.TP
+.B net_inc
+.nf
+Type: number
+Default: 10
+.fi
+.IP
+Operations that expect to transfer a large amount of data over the
+network will update their progress every $net_inc kilobytes.
+If set to 0, no progress messages will be displayed.
+.IP
+See also $read_inc, $write_inc and $net_inc.
+
+
+.TP
+.B new_mail_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+If \fIset\fP, NeoMutt will call this command after a new message is received.
+See the $status_format documentation for the values that can be formatted
+into this command.
+
+
+.TP
+.B news_cache_dir
+.nf
+Type: path
+Default: "~/.neomutt"
+.fi
+.IP
+This variable pointing to directory where NeoMutt will save cached news
+articles and headers in. If \fIunset\fP, articles and headers will not be
+saved at all and will be reloaded from the server each time.
+
+
+.TP
+.B news_server
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable specifies domain name or address of NNTP server.
+.IP
+You can also specify username and an alternative port for each news server,
+e.g. \fC[[s]news://][username[:password]@]server[:port]\fP
+.IP
+This option can also be set using the command line option "\-g", the
+environment variable \fC$NNTPSERVER\fP, or putting the server name in the
+file "/etc/nntpserver".
+
+
+.TP
+.B newsgroups_charset
+.nf
+Type: string
+Default: "utf\-8"
+.fi
+.IP
+Character set of newsgroups descriptions.
+
+
+.TP
+.B newsrc
+.nf
+Type: path
+Default: "~/.newsrc"
+.fi
+.IP
+The file, containing info about subscribed newsgroups \- names and
+indexes of read articles.  The following printf\-style sequence
+is understood:
+.RS
+.PD 0
+.TP
+\fBExpando\fP 
+\fBDescription\fP 
+\fBExample\fP
+.TP
+%a 
+Account url       
+\fCnews:news.gmane.org\fP
+.TP
+%p 
+Port              
+\fC119\fP
+.TP
+%P 
+Port if specified 
+\fC10119\fP
+.TP
+%s 
+News server name  
+\fCnews.gmane.org\fP
+.TP
+%S 
+Url schema        
+\fCnews\fP
+.TP
+%u 
+Username          
+\fCusername\fP
+.RE
+.PD 1
+
+.TP
+.B nm_db_limit
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable specifies the default limit used in notmuch queries.
+
+
+.TP
+.B nm_default_url
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable specifies the default Notmuch database in format
+notmuch://<absolute path>.
+
+
+.TP
+.B nm_exclude_tags
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+The messages tagged with these tags are excluded and not loaded
+from notmuch DB to NeoMutt unless specified explicitly.
+
+
+.TP
+.B nm_flagged_tag
+.nf
+Type: string
+Default: "flagged"
+.fi
+.IP
+This variable specifies notmuch tag which is used for flagged messages. The
+variable is used to count flagged messages in DB and set the flagged flag when
+modifying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
+
+
+.TP
+.B nm_open_timeout
+.nf
+Type: number
+Default: 5
+.fi
+.IP
+This variable specifies the timeout for database open in seconds.
+
+
+.TP
+.B nm_query_type
+.nf
+Type: string
+Default: "messages"
+.fi
+.IP
+This variable specifies the default query type (threads or messages) used in notmuch queries.
+
+
+.TP
+.B nm_query_window_current_position
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable contains the position of the current search for window based vfolder.
+
+
+.TP
+.B nm_query_window_current_search
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable contains the currently setup notmuch search for window based vfolder.
+
+
+.TP
+.B nm_query_window_duration
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable sets the time duration of a windowed notmuch query.
+Accepted values all non negative integers. A value of 0 disables the feature.
+
+
+.TP
+.B nm_query_window_timebase
+.nf
+Type: string
+Default: "week"
+.fi
+.IP
+This variable sets the time base of a windowed notmuch query.
+Accepted values are 'minute', 'hour', 'day', 'week', 'month', 'year'
+
+
+.TP
+.B nm_record
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable specifies if the NeoMutt record should indexed by notmuch.
+
+
+.TP
+.B nm_record_tags
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable specifies the default tags applied to messages stored to the NeoMutt record.
+When set to 0 this variable disable the window feature.
+
+
+.TP
+.B nm_replied_tag
+.nf
+Type: string
+Default: "replied"
+.fi
+.IP
+This variable specifies notmuch tag which is used for replied messages. The
+variable is used to set the replied flag when modifiying tags. All other NeoMutt
+commands use standard (e.g. maildir) flags.
+
+
+.TP
+.B nm_unread_tag
+.nf
+Type: string
+Default: "unread"
+.fi
+.IP
+This variable specifies notmuch tag which is used for unread messages. The
+variable is used to count unread messages in DB and set the unread flag when
+modifiying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
+
+
+.TP
+.B nntp_authenticators
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This is a colon\-delimited list of authentication methods NeoMutt may
+attempt to use to log in to a news server, in the order NeoMutt should
+try them.  Authentication methods are either "user" or any
+SASL mechanism, e.g. "digest\-md5", "gssapi" or "cram\-md5".
+This option is case\-insensitive.  If it's \fIunset\fP (the default)
+NeoMutt will try all available methods, in order from most\-secure to
+least\-secure.
+.IP
+Example:
+
+.IP
+.EX
+set nntp_authenticators="digest\-md5:user"
+
+.EE
+.IP
+\fBNote:\fP NeoMutt will only fall back to other authentication methods if
+the previous methods are unavailable. If a method is available but
+authentication fails, NeoMutt will not connect to the IMAP server.
+
+
+.TP
+.B nntp_context
+.nf
+Type: number
+Default: 1000
+.fi
+.IP
+This variable defines number of articles which will be in index when
+newsgroup entered.  If active newsgroup have more articles than this
+number, oldest articles will be ignored.  Also controls how many
+articles headers will be saved in cache when you quit newsgroup.
+
+
+.TP
+.B nntp_listgroup
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls whether or not existence of each article is
+checked when newsgroup is entered.
+
+
+.TP
+.B nntp_load_description
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable controls whether or not descriptions for each newsgroup
+must be loaded when newsgroup is added to list (first time list
+loading or new newsgroup adding).
+
+
+.TP
+.B nntp_pass
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Your password for NNTP account.
+
+
+.TP
+.B nntp_poll
+.nf
+Type: number
+Default: 60
+.fi
+.IP
+The time in seconds until any operations on newsgroup except post new
+article will cause recheck for new news.  If set to 0, NeoMutt will
+recheck newsgroup on each operation in index (stepping, read article,
+etc.).
+
+
+.TP
+.B nntp_user
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Your login name on the NNTP server.  If \fIunset\fP and NNTP server requires
+authentication, NeoMutt will prompt you for your account name when you
+connect to news server.
+
+
+.TP
+.B pager
+.nf
+Type: command
+Default: "builtin"
+.fi
+.IP
+This variable specifies which pager you would like to use to view
+messages. The value "builtin" means to use the built\-in pager, otherwise this
+variable should specify the pathname of the external pager you would
+like to use.
+.IP
+Using an external pager may have some disadvantages: Additional
+keystrokes are necessary because you can't call NeoMutt functions
+directly from the pager, and screen resizes cause lines longer than
+the screen width to be badly formatted in the help menu.
+
+
+.TP
+.B pager_context
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable controls the number of lines of context that are given
+when displaying the next or previous page in the internal pager.  By
+default, NeoMutt will display the line after the last one on the screen
+at the top of the next page (0 lines of context).
+.IP
+This variable also specifies the amount of context given for search
+results. If positive, this many lines will be given before a match,
+if 0, the match will be top\-aligned.
+
+
+.TP
+.B pager_format
+.nf
+Type: string
+Default: "\-%Z\- %C/%m: %\-20.20n   %s%*  \-\- (%P)"
+.fi
+.IP
+This variable controls the format of the one\-line message "status"
+displayed before each message in either the internal or an external
+pager.  The valid sequences are listed in the $index_format
+section.
+
+
+.TP
+.B pager_index_lines
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Determines the number of lines of a mini\-index which is shown when in
+the pager.  The current message, unless near the top or bottom of the
+folder, will be roughly one third of the way down this mini\-index,
+giving the reader the context of a few messages before and after the
+message.  This is useful, for example, to determine how many messages
+remain to be read in the current thread.  A value of 0 results in no index
+being shown.  If the number of messages in the current folder is less than
+$pager_index_lines, then the index will only use as many lines as it needs.
+
+
+.TP
+.B pager_stop
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, the internal\-pager will \fBnot\fP move to the next message
+when you are at the end of a message and invoke the \fC<next\-page>\fP
+function.
+
+
+.TP
+.B pattern_format
+.nf
+Type: string
+Default: "%2n %\-15e  %d"
+.fi
+.IP
+This variable describes the format of the "pattern completion" menu. The
+following \fCprintf(3)\fP\-style sequences are understood:
+.RS
+.PD 0
+.TP
+%d  
+pattern description
+.TP
+%e  
+pattern expression
+.TP
+%n  
+index number
+.RE
+.PD 1
+.IP
+
+
+.TP
+.B pgp_auto_decode
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will automatically attempt to decrypt traditional PGP
+messages whenever the user performs an operation which ordinarily would
+result in the contents of the message being operated on.  For example,
+if the user displays a pgp\-traditional message which has not been manually
+checked with the \fC<check-traditional-pgp>\fP function, NeoMutt will automatically
+check the message for traditional pgp.
+
+
+.TP
+.B pgp_autoinline
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This option controls whether NeoMutt generates old\-style inline
+(traditional) PGP encrypted or signed messages under certain
+circumstances.  This can be overridden by use of the pgp menu,
+when inline is not required.  The GPGME backend does not support
+this option.
+.IP
+Note that NeoMutt might automatically use PGP/MIME for messages
+which consist of more than a single MIME part.  NeoMutt can be
+configured to ask before sending PGP/MIME messages when inline
+(traditional) would not work.
+.IP
+Also see the $pgp_mime_auto variable.
+.IP
+Also note that using the old\-style PGP message format is \fBstrongly\fP
+\fBdeprecated\fP.
+(PGP only)
+
+
+.TP
+.B pgp_check_exit
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will check the exit code of the PGP subprocess when
+signing or encrypting.  A non\-zero exit code means that the
+subprocess failed.
+(PGP only)
+
+
+.TP
+.B pgp_check_gpg_decrypt_status_fd
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will check the status file descriptor output
+of $pgp_decrypt_command and $pgp_decode_command for GnuPG status codes
+indicating successful decryption.  This will check for the presence of
+DECRYPTION_OKAY, absence of DECRYPTION_FAILED, and that all
+PLAINTEXT occurs between the BEGIN_DECRYPTION and END_DECRYPTION
+status codes.
+.IP
+If \fIunset\fP, NeoMutt will instead match the status fd output
+against $pgp_decryption_okay.
+(PGP only)
+
+
+.TP
+.B pgp_clearsign_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This format is used to create an old\-style "clearsigned" PGP
+message.  Note that the use of this format is \fBstrongly\fP
+\fBdeprecated\fP.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+Note that in this case, %r expands to the search string, which is a list of
+one or more quoted values such as email address, name, or keyid.
+(PGP only)
+
+
+.TP
+.B pgp_decode_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This format strings specifies a command which is used to decode
+application/pgp attachments.
+.IP
+The PGP command formats have their own set of \fCprintf(3)\fP\-like sequences:
+.RS
+.PD 0
+.TP
+%a 
+The value of $pgp_sign_as if set, otherwise the value
+of $pgp_default_key.
+.TP
+%f 
+Expands to the name of a file containing a message.
+.TP
+%p 
+Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
+string otherwise. Note: This may be used with a %? construct.
+.TP
+%r 
+One or more key IDs (or fingerprints if available).
+.TP
+%s 
+Expands to the name of a file containing the signature part
+of a \fCmultipart/signed\fP attachment when verifying it.
+.RE
+.PD 1
+.IP
+For examples on how to configure these formats for the various versions
+of PGP which are floating around, see the pgp and gpg sample configuration files in
+the \fCsamples/\fP subdirectory which has been installed on your system
+alongside the documentation.
+(PGP only)
+
+
+.TP
+.B pgp_decrypt_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to decrypt a PGP encrypted message.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+.IP
+Note: When decrypting messages using \fCgpg\fP, a pinentry program needs to
+be invoked unless the password is cached within \fCgpg\-agent\fP.
+Currently, the \fCpinentry\-tty\fP program (usually distributed with
+\fCgpg\fP) isn't suitable for being invoked by NeoMutt.  You are encouraged
+to use a different pinentry\-program when running NeoMutt in order to avoid
+problems.
+.IP
+See also: https://github.com/neomutt/neomutt/issues/1014
+
+
+.TP
+.B pgp_decryption_okay
+.nf
+Type: regular expression
+Default: ""
+.fi
+.IP
+If you assign text to this variable, then an encrypted PGP
+message is only considered successfully decrypted if the output
+from $pgp_decrypt_command contains the text.  This is used to
+protect against a spoofed encrypted message, with multipart/encrypted
+headers but containing a block that is not actually encrypted.
+(e.g. simply signed and ascii armored text).
+.IP
+Note that if $pgp_check_gpg_decrypt_status_fd is set, this variable
+is ignored.
+(PGP only)
+
+
+.TP
+.B pgp_default_key
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This is the default key\-pair to use for PGP operations.  It will be
+used for encryption (see $postpone_encrypt and $pgp_self_encrypt).
+.IP
+It will also be used for signing unless $pgp_sign_as is set.
+.IP
+The (now deprecated) \fIpgp_self_encrypt_as\fP is an alias for this
+variable, and should no longer be used.
+(PGP only)
+
+
+.TP
+.B pgp_encrypt_only_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to encrypt a body part without signing it.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+Note that in this case, %r expands to the search string, which is a list of
+one or more quoted values such as email address, name, or keyid.
+(PGP only)
+
+
+.TP
+.B pgp_encrypt_sign_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to both sign and encrypt a body part.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_entry_format
+.nf
+Type: string
+Default: "%4n %t%f %4l/0x%k %\-4a %2c %u"
+.fi
+.IP
+This variable allows you to customize the PGP key selection menu to
+your personal taste. If $crypt_use_gpgme is \fIset\fP, then it applies
+to S/MIME key selection menu also. This string is similar to $index_format,
+but has its own set of \fCprintf(3)\fP\-like sequences:
+.RS
+.PD 0
+.TP
+%a     
+Algorithm
+.TP
+%c     
+Capabilities
+.TP
+%f     
+Flags
+.TP
+%k     
+Key id
+.TP
+%l     
+Key length
+.TP
+%n     
+Number
+.TP
+%p     
+Protocol
+.TP
+%t     
+Trust/validity of the key\-uid association
+.TP
+%u     
+User id
+.TP
+%[<s>] 
+Date of the key where <s> is an \fCstrftime(3)\fP expression
+.RE
+.PD 1
+.IP
+(Crypto only) or (PGP only when GPGME disabled)
+
+
+.TP
+.B pgp_export_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to export a public key from the user's
+key ring.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_getkeys_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is invoked whenever NeoMutt needs to fetch the public key associated with
+an email address.  Of the sequences supported by $pgp_decode_command, %r is
+the only \fCprintf(3)\fP\-like sequence used with this format.  Note that
+in this case, %r expands to the email address, not the public key ID (the key ID is
+unknown, which is why NeoMutt is invoking this command).
+(PGP only)
+
+
+.TP
+.B pgp_good_sign
+.nf
+Type: regular expression
+Default: ""
+.fi
+.IP
+If you assign a text to this variable, then a PGP signature is only
+considered verified if the output from $pgp_verify_command contains
+the text. Use this variable if the exit code from the command is 0
+even for bad signatures.
+(PGP only)
+
+
+.TP
+.B pgp_ignore_subkeys
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Setting this variable will cause NeoMutt to ignore OpenPGP subkeys. Instead,
+the principal key will inherit the subkeys' capabilities.  \fIUnset\fP this
+if you want to play interesting key selection games.
+(PGP only)
+
+
+.TP
+.B pgp_import_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to import a key from a message into
+the user's public key ring.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_list_pubring_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to list the public key ring's contents.  The
+output format must be analogous to the one used by
+
+.IP
+.EX
+gpg \-\-list\-keys \-\-with\-colons \-\-with\-fingerprint
+
+.EE
+.IP
+Note: gpg's \fCfixed\-list\-mode\fP option should not be used.  It
+produces a different date format which may result in NeoMutt showing
+incorrect key generation dates.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_list_secring_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to list the secret key ring's contents.  The
+output format must be analogous to the one used by:
+
+.IP
+.EX
+gpg \-\-list\-keys \-\-with\-colons \-\-with\-fingerprint
+
+.EE
+.IP
+Note: gpg's \fCfixed\-list\-mode\fP option should not be used.  It
+produces a different date format which may result in NeoMutt showing
+incorrect key generation dates.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_long_ids
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, use 64 bit PGP key IDs, if \fIunset\fP use the normal 32 bit key IDs.
+NOTE: Internally, NeoMutt has transitioned to using fingerprints (or long key IDs
+as a fallback).  This option now only controls the display of key IDs
+in the key selection menu and a few other places.
+(PGP only)
+
+
+.TP
+.B pgp_mime_auto
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+This option controls whether NeoMutt will prompt you for
+automatically sending a (signed/encrypted) message using
+PGP/MIME when inline (traditional) fails (for any reason).
+.IP
+Also note that using the old\-style PGP message format is \fBstrongly\fP
+\fBdeprecated\fP.
+(PGP only)
+
+
+.TP
+.B pgp_replyinline
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Setting this variable will cause NeoMutt to always attempt to
+create an inline (traditional) message when replying to a
+message which is PGP encrypted/signed inline.  This can be
+overridden by use of the pgp menu, when inline is not
+required.  This option does not automatically detect if the
+(replied\-to) message is inline; instead it relies on NeoMutt
+internals for previously checked/flagged messages.
+.IP
+Note that NeoMutt might automatically use PGP/MIME for messages
+which consist of more than a single MIME part.  NeoMutt can be
+configured to ask before sending PGP/MIME messages when inline
+(traditional) would not work.
+.IP
+Also see the $pgp_mime_auto variable.
+.IP
+Also note that using the old\-style PGP message format is \fBstrongly\fP
+\fBdeprecated\fP.
+(PGP only)
+
+
+.TP
+.B pgp_retainable_sigs
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, signed and encrypted messages will consist of nested
+\fCmultipart/signed\fP and \fCmultipart/encrypted\fP body parts.
+.IP
+This is useful for applications like encrypted and signed mailing
+lists, where the outer layer (\fCmultipart/encrypted\fP) can be easily
+removed, while the inner \fCmultipart/signed\fP part is retained.
+(PGP only)
+
+
+.TP
+.B pgp_self_encrypt
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, PGP encrypted messages will also be encrypted
+using the key in $pgp_default_key.
+(PGP only)
+
+
+.TP
+.B pgp_show_unusable
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will display non\-usable keys on the PGP key selection
+menu.  This includes keys which have been revoked, have expired, or
+have been marked as "disabled" by the user.
+(PGP only)
+
+
+.TP
+.B pgp_sign_as
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+If you have a different key pair to use for signing, you should
+set this to the signing key.  Most people will only need to set
+$pgp_default_key.  It is recommended that you use the keyid form
+to specify your key (e.g. \fC0x00112233\fP).
+(PGP only)
+
+
+.TP
+.B pgp_sign_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to create the detached PGP signature for a
+\fCmultipart/signed\fP PGP/MIME body part.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_sort_keys
+.nf
+Type: sort order
+Default: address
+.fi
+.IP
+Specifies how the entries in the pgp menu are sorted. The
+following are legal values:
+.RS
+.PD 0
+.TP
+address 
+sort alphabetically by user id
+.TP
+keyid   
+sort alphabetically by key id
+.TP
+date    
+sort by key creation date
+.TP
+trust   
+sort by the trust of the key
+.RE
+.PD 1
+.IP
+If you prefer reverse order of the above values, prefix it with
+"reverse\-".
+(PGP only)
+
+
+.TP
+.B pgp_strict_enc
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will automatically encode PGP/MIME signed messages as
+quoted\-printable.  Please note that unsetting this variable may
+lead to problems with non\-verifyable PGP signatures, so only change
+this if you know what you are doing.
+(PGP only)
+
+
+.TP
+.B pgp_timeout
+.nf
+Type: number (long)
+Default: 300
+.fi
+.IP
+The number of seconds after which a cached passphrase will expire if
+not used.
+(PGP only)
+
+
+.TP
+.B pgp_use_gpg_agent
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt expects a \fCgpg\-agent(1)\fP process will handle
+private key passphrase prompts.  If \fIunset\fP, NeoMutt will prompt
+for the passphrase and pass it via stdin to the pgp command.
+.IP
+Note that as of version 2.1, GnuPG automatically spawns an agent
+and requires the agent be used for passphrase management.  Since
+that version is increasingly prevalent, this variable now
+defaults \fIset\fP.
+.IP
+NeoMutt works with a GUI or curses pinentry program.  A TTY pinentry
+should not be used.
+.IP
+If you are using an older version of GnuPG without an agent running,
+or another encryption program without an agent, you will need to
+\fIunset\fP this variable.
+(PGP only)
+
+
+.TP
+.B pgp_verify_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to verify PGP signatures.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pgp_verify_key_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to verify key information from the key selection
+menu.
+.IP
+This is a format string, see the $pgp_decode_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(PGP only)
+
+
+.TP
+.B pipe_decode
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Used in connection with the \fC<pipe\-message>\fP function.  When \fIunset\fP,
+NeoMutt will pipe the messages without any preprocessing. When \fIset\fP, NeoMutt
+will attempt to decode the messages first.
+.IP
+Also see $pipe_decode_weed, which controls whether headers will
+be weeded when this is \fIset\fP.
+
+
+.TP
+.B pipe_decode_weed
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+For \fC<pipe\-message>\fP, when $pipe_decode is set, this further
+controls whether NeoMutt will weed headers.
+
+
+.TP
+.B pipe_sep
+.nf
+Type: string
+Default: "\\n"
+.fi
+.IP
+The separator to add between messages when piping a list of tagged
+messages to an external Unix command.
+
+
+.TP
+.B pipe_split
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Used in connection with the \fC<pipe\-message>\fP function following
+\fC<tag\-prefix>\fP.  If this variable is \fIunset\fP, when piping a list of
+tagged messages NeoMutt will concatenate the messages and will pipe them
+all concatenated.  When \fIset\fP, NeoMutt will pipe the messages one by one.
+In both cases the messages are piped in the current sorted order,
+and the $pipe_sep separator is added after each message.
+
+
+.TP
+.B pop_auth_try_all
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, NeoMutt will try all available authentication methods.
+When \fIunset\fP, NeoMutt will only fall back to other authentication
+methods if the previous methods are unavailable. If a method is
+available but authentication fails, NeoMutt will not connect to the POP server.
+
+
+.TP
+.B pop_authenticators
+.nf
+Type: string list
+Default: ""
+.fi
+.IP
+This is a colon\-delimited list of authentication methods NeoMutt may
+attempt to use to log in to an POP server, in the order NeoMutt should
+try them.  Authentication methods are either "user", "apop" or any
+SASL mechanism, e.g. "digest\-md5", "gssapi" or "cram\-md5".
+This option is case\-insensitive. If this option is \fIunset\fP
+(the default) NeoMutt will try all available methods, in order from
+most\-secure to least\-secure.
+.IP
+Example:
+
+.IP
+.EX
+set pop_authenticators="digest\-md5:apop:user"
+
+.EE
+
+
+.TP
+.B pop_checkinterval
+.nf
+Type: number
+Default: 60
+.fi
+.IP
+This variable configures how often (in seconds) NeoMutt should look for
+new mail in the currently selected mailbox if it is a POP mailbox.
+
+
+.TP
+.B pop_delete
+.nf
+Type: quadoption
+Default: ask\-no
+.fi
+.IP
+If \fIset\fP, NeoMutt will delete successfully downloaded messages from the POP
+server when using the \fC<fetch-mail>\fP function.  When \fIunset\fP, NeoMutt will
+download messages but also leave them on the POP server.
+
+
+.TP
+.B pop_host
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+The name of your POP server for the \fC<fetch-mail>\fP function.  You
+can also specify an alternative port, username and password, i.e.:
+
+.IP
+.EX
+[pop[s]://][username[:password]@]popserver[:port]
+
+.EE
+.IP
+where "[...]" denotes an optional part.
+
+
+.TP
+.B pop_last
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If this variable is \fIset\fP, NeoMutt will try to use the "\fCLAST\fP" POP command
+for retrieving only unread messages from the POP server when using
+the \fC<fetch-mail>\fP function.
+
+
+.TP
+.B pop_oauth_refresh_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+The command to run to generate an OAUTH refresh token for
+authorizing your connection to your POP server.  This command will be
+run on every connection attempt that uses the OAUTHBEARER authentication
+mechanism.  See "oauth" for details.
+
+
+.TP
+.B pop_pass
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Specifies the password for your POP account.  If \fIunset\fP, NeoMutt will
+prompt you for your password when you open a POP mailbox.
+.IP
+\fBWarning\fP: you should only use this option when you are on a
+fairly secure machine, because the superuser can read your neomuttrc
+even if you are the only one who can read the file.
+
+
+.TP
+.B pop_reconnect
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether or not NeoMutt will try to reconnect to the POP server if
+the connection is lost.
+
+
+.TP
+.B pop_user
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Your login name on the POP server.
+.IP
+This variable defaults to your user name on the local machine.
+
+
+.TP
+.B post_indent_string
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Similar to the $attribution variable, NeoMutt will append this
+string after the inclusion of a message which is being replied to.
+
+
+.TP
+.B post_moderated
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+If set to \fIyes\fP, NeoMutt will post article to newsgroup that have
+not permissions to posting (e.g. moderated).  \fBNote:\fP if news server
+does not support posting to that newsgroup or totally read\-only, that
+posting will not have an effect.
+
+
+.TP
+.B postpone
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether or not messages are saved in the $postponed
+mailbox when you elect not to send immediately. If set to
+\fIask\-yes\fP or \fIask\-no\fP, you will be prompted with "Save
+(postpone) draft message?" when quitting from the "compose"
+screen.
+.IP
+Also see the $recall variable.
+
+
+.TP
+.B postpone_encrypt
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, postponed messages that are marked for encryption will be
+self\-encrypted.  NeoMutt will first try to encrypt using the value specified
+in $pgp_default_key or $smime_default_key.  If those are not
+set, it will try the deprecated $postpone_encrypt_as.
+(Crypto only)
+
+
+.TP
+.B postpone_encrypt_as
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This is a deprecated fall\-back variable for $postpone_encrypt.
+Please use $pgp_default_key or $smime_default_key.
+(Crypto only)
+
+
+.TP
+.B postponed
+.nf
+Type: mailbox
+Default: "~/postponed"
+.fi
+.IP
+NeoMutt allows you to indefinitely "postpone sending a message" which
+you are editing.  When you choose to postpone a message, NeoMutt saves it
+in the mailbox specified by this variable.
+.IP
+Also see the $postpone variable.
+
+
+.TP
+.B preconnect
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+If \fIset\fP, a shell command to be executed if NeoMutt fails to establish
+a connection to the server. This is useful for setting up secure
+connections, e.g. with \fCssh(1)\fP. If the command returns a  nonzero
+status, NeoMutt gives up opening the server. Example:
+
+.IP
+.EX
+set preconnect="ssh \-f \-q \-L 1234:mailhost.net:143 mailhost.net \\
+sleep 20 < /dev/null > /dev/null"
+
+.EE
+.IP
+Mailbox "foo" on "mailhost.net" can now be reached
+as "{localhost:1234}foo".
+.IP
+Note: For this example to work, you must be able to log in to the
+remote machine without having to enter a password.
+
+
+.TP
+.B preferred_languages
+.nf
+Type: string list
+Default: ""
+.fi
+.IP
+RFC8255 : user preferred languages to be search in parts and display
+Ex. : set preferred_languages="en,fr,de"
+
+
+.TP
+.B print
+.nf
+Type: quadoption
+Default: ask\-no
+.fi
+.IP
+Controls whether or not NeoMutt really prints messages.
+This is set to "ask\-no" by default, because some people
+accidentally hit "p" often.
+
+
+.TP
+.B print_command
+.nf
+Type: command
+Default: "lpr"
+.fi
+.IP
+This specifies the command pipe that should be used to print messages.
+
+
+.TP
+.B print_decode
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Used in connection with the \fC<print\-message>\fP function.  If this
+option is \fIset\fP, the message is decoded before it is passed to the
+external command specified by $print_command.  If this option
+is \fIunset\fP, no processing will be applied to the message when
+printing it.  The latter setting may be useful if you are using
+some advanced printer filter which is able to properly format
+e\-mail messages for printing.
+.IP
+Also see $print_decode_weed, which controls whether headers will
+be weeded when this is \fIset\fP.
+
+
+.TP
+.B print_decode_weed
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+For \fC<print\-message>\fP, when $print_decode is set, this
+further controls whether NeoMutt will weed headers.
+
+
+.TP
+.B print_split
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Used in connection with the \fC<print\-message>\fP function.  If this option
+is \fIset\fP, the command specified by $print_command is executed once for
+each message which is to be printed.  If this option is \fIunset\fP,
+the command specified by $print_command is executed only once, and
+all the messages are concatenated, with a form feed as the message
+separator.
+.IP
+Those who use the \fCenscript\fP(1) program's mail\-printing mode will
+most likely want to \fIset\fP this option.
+
+
+.TP
+.B prompt_after
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If you use an \fIexternal\fP $pager, setting this variable will
+cause NeoMutt to prompt you for a command when the pager exits rather
+than returning to the index menu.  If \fIunset\fP, NeoMutt will return to the
+index menu when the external pager exits.
+
+
+.TP
+.B query_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This specifies the command NeoMutt will use to make external address
+queries.  The string may contain a "%s", which will be substituted
+with the query string the user types.  NeoMutt will add quotes around the
+string substituted for "%s" automatically according to shell quoting
+rules, so you should avoid adding your own.  If no "%s" is found in
+the string, NeoMutt will append the user's query to the end of the string.
+See "query" for more information.
+
+
+.TP
+.B query_format
+.nf
+Type: string
+Default: "%3c %t %\-25.25n %\-25.25a | %e"
+.fi
+.IP
+This variable describes the format of the "query" menu. The
+following \fCprintf(3)\fP\-style sequences are understood:
+.RS
+.PD 0
+.TP
+%a  
+  
+Destination address
+.TP
+%c  
+  
+Current entry number
+.TP
+%e  
+* 
+Extra information
+.TP
+%n  
+  
+Destination name
+.TP
+%t  
+  
+"*" if current entry is tagged, a space otherwise
+.TP
+%>X 
+  
+Right justify the rest of the string and pad with "X"
+.TP
+%|X 
+  
+Pad to the end of the line with "X"
+.TP
+%*X 
+  
+Soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+For an explanation of "soft\-fill", see the $index_format documentation.
+.IP
+* = can be optionally printed if nonzero, see the $status_format documentation.
+
+
+.TP
+.B quit
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+This variable controls whether "quit" and "exit" actually quit
+from NeoMutt.  If this option is \fIset\fP, they do quit, if it is \fIunset\fP, they
+have no effect, and if it is set to \fIask\-yes\fP or \fIask\-no\fP, you are
+prompted for confirmation when you try to quit.
+
+
+.TP
+.B quote_regex
+.nf
+Type: regular expression
+Default: "^([ \\t]*[|>:}#])+"
+.fi
+.IP
+A regular expression used in the internal pager to determine quoted
+sections of text in the body of a message. Quoted text may be filtered
+out using the \fC<toggle\-quoted>\fP command, or colored according to the
+"color quoted" family of directives.
+.IP
+Higher levels of quoting may be colored differently ("color quoted1",
+"color quoted2", etc.). The quoting level is determined by removing
+the last character from the matched text and recursively reapplying
+the regular expression until it fails to produce a match.
+.IP
+Match detection may be overridden by the $smileys regular expression.
+
+
+.TP
+.B read_inc
+.nf
+Type: number
+Default: 10
+.fi
+.IP
+If set to a value greater than 0, NeoMutt will display which message it
+is currently on when reading a mailbox or when performing search actions
+such as search and limit. The message is printed after
+this many messages have been read or searched (e.g., if set to 25, NeoMutt will
+print a message when it is at message 25, and then again when it gets
+to message 50).  This variable is meant to indicate progress when
+reading or searching large mailboxes which may take some time.
+When set to 0, only a single message will appear before the reading
+the mailbox.
+.IP
+Also see the $write_inc, $net_inc and $time_inc variables and the
+"tuning" section of the manual for performance considerations.
+
+
+.TP
+.B read_only
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, all folders are opened in read\-only mode.
+
+
+.TP
+.B realname
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This variable specifies what "real" or "personal" name should be used
+when sending messages.
+.IP
+If not specified, then the user's "real name" will be read from \fC/etc/passwd\fP.
+This option will not be used, if "$from" is set.
+
+
+.TP
+.B recall
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+Controls whether or not NeoMutt recalls postponed messages
+when composing a new message.
+.IP
+Setting this variable to \fIyes\fP is not generally useful, and thus not
+recommended.  Note that the \fC<recall\-message>\fP function can be used
+to manually recall postponed messages.
+.IP
+Also see $postponed variable.
+
+
+.TP
+.B record
+.nf
+Type: mailbox
+Default: "~/sent"
+.fi
+.IP
+This specifies the file into which your outgoing messages should be
+appended.  (This is meant as the primary method for saving a copy of
+your messages, but another way to do this is using the "my_hdr"
+command to create a "Bcc:" field with your email address in it.)
+.IP
+The value of \fI$record\fP is overridden by the $force_name and
+$save_name variables, and the "fcc-hook" command.  Also see $copy
+and $write_bcc.
+
+
+.TP
+.B reflow_space_quotes
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This option controls how quotes from format=flowed messages are displayed
+in the pager and when replying (with $text_flowed \fIunset\fP).
+When set, this option adds spaces after each level of quote marks, turning
+">>>foo" into "> > > foo".
+.IP
+\fBNote:\fP If $reflow_text is \fIunset\fP, this option has no effect.
+Also, this option does not affect replies when $text_flowed is \fIset\fP.
+
+
+.TP
+.B reflow_text
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will reformat paragraphs in text/plain
+parts marked format=flowed.  If \fIunset\fP, NeoMutt will display paragraphs
+unaltered from how they appear in the message body.  See RFC3676 for
+details on the \fIformat=flowed\fP format.
+.IP
+Also see $reflow_wrap, and $wrap.
+
+
+.TP
+.B reflow_wrap
+.nf
+Type: number
+Default: 78
+.fi
+.IP
+This variable controls the maximum paragraph width when reformatting text/plain
+parts when $reflow_text is \fIset\fP.  When the value is 0, paragraphs will
+be wrapped at the terminal's right margin.  A positive value sets the
+paragraph width relative to the left margin.  A negative value set the
+paragraph width relative to the right margin.
+.IP
+Also see $wrap.
+
+
+.TP
+.B reply_regex
+.nf
+Type: regular expression
+Default: "^((re|aw|sv)(\\[[0\-9]+\\])*:[ \\t]*)*"
+.fi
+.IP
+A regular expression used to recognize reply messages when threading
+and replying. The default value corresponds to the English "Re:", the
+German "Aw:" and the Swedish "Sv:".
+
+
+.TP
+.B reply_self
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIunset\fP and you are replying to a message sent by you, NeoMutt will
+assume that you want to reply to the recipients of that message rather
+than to yourself.
+.IP
+Also see the "alternates" command.
+
+
+.TP
+.B reply_to
+.nf
+Type: quadoption
+Default: ask\-yes
+.fi
+.IP
+If \fIset\fP, when replying to a message, NeoMutt will use the address listed
+in the Reply\-to: header as the recipient of the reply.  If \fIunset\fP,
+it will use the address in the From: header field instead.  This
+option is useful for reading a mailing list that sets the Reply\-To:
+header field to the list address and you want to send a private
+message to the author of a message.
+
+
+.TP
+.B reply_with_xorig
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable provides a toggle. When active, the From: header will be
+extracted from the current mail's 'X\-Original\-To:' header. This setting
+does not have precedence over "reverse_realname".
+.IP
+Assuming 'fast_reply' is disabled, this option will prompt the user with a
+prefilled From: header.
+
+
+.TP
+.B resolve
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, the cursor will be automatically advanced to the next
+(possibly undeleted) message whenever a command that modifies the
+current message is executed.
+
+
+.TP
+.B resume_draft_files
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, draft files (specified by \fC\-H\fP on the command
+line) are processed similarly to when resuming a postponed
+message.  Recipients are not prompted for; send\-hooks are not
+evaluated; no alias expansion takes place; user\-defined headers
+and signatures are not added to the message.
+
+
+.TP
+.B resume_edited_draft_files
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, draft files previously edited (via \fC\-E \-H\fP on
+the command line) will have $resume_draft_files automatically
+set when they are used as a draft file again.
+.IP
+The first time a draft file is saved, NeoMutt will add a header,
+X\-Mutt\-Resume\-Draft to the saved file.  The next time the draft
+file is read in, if NeoMutt sees the header, it will set
+$resume_draft_files.
+.IP
+This option is designed to prevent multiple signatures,
+user\-defined headers, and other processing effects from being
+made multiple times to the draft file.
+
+
+.TP
+.B reverse_alias
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable controls whether or not NeoMutt will display the "personal"
+name from your aliases in the index menu if it finds an alias that
+matches the message's sender.  For example, if you have the following
+alias:
+
+.IP
+.EX
+alias juser abd30425@somewhere.net (Joe User)
+
+.EE
+.IP
+and then you receive mail which contains the following header:
+
+.IP
+.EX
+From: abd30425@somewhere.net
+
+.EE
+.IP
+It would be displayed in the index menu as "Joe User" instead of
+"abd30425@somewhere.net."  This is useful when the person's e\-mail
+address is not human friendly.
+
+
+.TP
+.B reverse_name
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+It may sometimes arrive that you receive mail to a certain machine,
+move the messages to another machine, and reply to some the messages
+from there.  If this variable is \fIset\fP, the default \fIFrom:\fP line of
+the reply messages is built using the address where you received the
+messages you are replying to \fBif\fP that address matches your
+"alternates".  If the variable is \fIunset\fP, or the address that would be
+used doesn't match your "alternates", the \fIFrom:\fP line will use
+your address on the current machine.
+.IP
+Also see the "alternates" command and $reverse_realname.
+
+
+.TP
+.B reverse_realname
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable fine\-tunes the behavior of the $reverse_name feature.
+.IP
+When it is \fIunset\fP, NeoMutt will remove the real name part of a
+matching address.  This allows the use of the email address
+without having to also use what the sender put in the real name
+field.
+.IP
+When it is \fIset\fP, NeoMutt will use the matching address as\-is.
+.IP
+In either case, a missing real name will be filled in afterwards
+using the value of $realname.
+
+
+.TP
+.B rfc2047_parameters
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When this variable is \fIset\fP, NeoMutt will decode RFC2047\-encoded MIME
+parameters. You want to set this variable when NeoMutt suggests you
+to save attachments to files named like:
+
+.IP
+.EX
+=?iso\-8859\-1?Q?file=5F=E4=5F991116=2Ezip?=
+=?utf\-8?Q?z=C4=99ta.png?=
+
+.EE
+.IP
+When this variable is \fIset\fP interactively, the change won't be
+active until you change folders.
+.IP
+Note that this use of RFC2047's encoding is explicitly
+prohibited by the standard, but nevertheless encountered in the
+wild and produced by, e.g., Outlook.
+.IP
+Also note that setting this parameter will \fInot\fP have the effect
+that NeoMutt \fIgenerates\fP this kind of encoding.  Instead, NeoMutt will
+unconditionally use the encoding specified in RFC2231.
+
+
+.TP
+.B save_address
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will take the sender's full address when choosing a
+default folder for saving a mail. If $save_name or $force_name
+is \fIset\fP too, the selection of the Fcc folder will be changed as well.
+
+
+.TP
+.B save_empty
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, mailboxes which contain no saved messages will be removed
+when closed (the exception is $spoolfile which is never removed).
+If \fIset\fP, mailboxes are never removed.
+.IP
+\fBNote:\fP This only applies to mbox and MMDF folders, NeoMutt does not
+delete MH and Maildir directories.
+
+
+.TP
+.B save_history
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable controls the size of the history (per category) saved in the
+$history_file file.
+
+
+.TP
+.B save_name
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This variable controls how copies of outgoing messages are saved.
+When \fIset\fP, a check is made to see if a mailbox specified by the
+recipient address exists (this is done by searching for a mailbox in
+the $folder directory with the \fIusername\fP part of the
+recipient address).  If the mailbox exists, the outgoing message will
+be saved to that mailbox, otherwise the message is saved to the
+$record mailbox.
+.IP
+Also see the $force_name variable.
+
+
+.TP
+.B save_unsubscribed
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, info about unsubscribed newsgroups will be saved into
+"newsrc" file and into cache.
+
+
+.TP
+.B score
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When this variable is \fIunset\fP, scoring is turned off.  This can
+be useful to selectively disable scoring for certain folders when the
+$score_threshold_delete variable and related are used.
+
+
+.TP
+.B score_threshold_delete
+.nf
+Type: number
+Default: \-1
+.fi
+.IP
+Messages which have been assigned a score equal to or lower than the value
+of this variable are automatically marked for deletion by NeoMutt.  Since
+NeoMutt scores are always greater than or equal to zero, the default setting
+of this variable will never mark a message for deletion.
+
+
+.TP
+.B score_threshold_flag
+.nf
+Type: number
+Default: 9999
+.fi
+.IP
+Messages which have been assigned a score greater than or equal to this
+variable's value are automatically marked "flagged".
+
+
+.TP
+.B score_threshold_read
+.nf
+Type: number
+Default: \-1
+.fi
+.IP
+Messages which have been assigned a score equal to or lower than the value
+of this variable are automatically marked as read by NeoMutt.  Since
+NeoMutt scores are always greater than or equal to zero, the default setting
+of this variable will never mark a message read.
+
+
+.TP
+.B search_context
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+For the pager, this variable specifies the number of lines shown
+before search results. By default, search results will be top\-aligned.
+
+
+.TP
+.B send_charset
+.nf
+Type: string
+Default: "us\-ascii:iso\-8859\-1:utf\-8"
+.fi
+.IP
+A colon\-delimited list of character sets for outgoing messages. NeoMutt will use the
+first character set into which the text can be converted exactly.
+If your $charset is not "iso\-8859\-1" and recipients may not
+understand "UTF\-8", it is advisable to include in the list an
+appropriate widely used standard character set (such as
+"iso\-8859\-2", "koi8\-r" or "iso\-2022\-jp") either instead of or after
+"iso\-8859\-1".
+.IP
+In case the text can't be converted into one of these exactly,
+NeoMutt uses $charset as a fallback.
+
+
+.TP
+.B sendmail
+.nf
+Type: command
+Default: "/usr/sbin/sendmail \-oem \-oi"
+.fi
+.IP
+Specifies the program and arguments used to deliver mail sent by NeoMutt.
+NeoMutt expects that the specified program interprets additional
+arguments as recipient addresses.  NeoMutt appends all recipients after
+adding a \fC\-\-\fP delimiter (if not already present).  Additional
+flags, such as for $use_8bitmime, $use_envelope_from,
+$dsn_notify, or $dsn_return will be added before the delimiter.
+.IP
+\fBSee also:\fP $write_bcc.
+
+
+.TP
+.B sendmail_wait
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Specifies the number of seconds to wait for the $sendmail process
+to finish before giving up and putting delivery in the background.
+.IP
+NeoMutt interprets the value of this variable as follows:
+.RS
+.PD 0
+.TP
+>0 
+number of seconds to wait for sendmail to finish before continuing
+.TP
+0  
+wait forever for sendmail to finish
+.TP
+<0 
+always put sendmail in the background without waiting
+.RE
+.PD 1
+.IP
+Note that if you specify a value other than 0, the output of the child
+process will be put in a temporary file.  If there is some error, you
+will be informed as to where to find the output.
+
+
+.TP
+.B shell
+.nf
+Type: command
+Default: "/bin/sh"
+.fi
+.IP
+Command to use when spawning a subshell.
+If not specified, then the user's login shell from \fC/etc/passwd\fP is used.
+
+
+.TP
+.B show_multipart_alternative
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+When \fIset\fP to \fCinfo\fP, the multipart/alternative information is shown.
+When \fIset\fP to \fCinline\fP, all of the alternatives are displayed.
+When not set, the default behavior is to show only the chosen alternative.
+
+
+.TP
+.B show_new_news
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, news server will be asked for new newsgroups on entering
+the browser.  Otherwise, it will be done only once for a news server.
+Also controls whether or not number of new articles of subscribed
+newsgroups will be then checked.
+
+
+.TP
+.B show_only_unread
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, only subscribed newsgroups that contain unread articles
+will be displayed in browser.
+
+
+.TP
+.B sidebar_component_depth
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+By default the sidebar will show the mailbox's path, relative to the
+$folder variable. This specifies the number of parent directories to hide
+from display in the sidebar. For example: If a maildir is normally
+displayed in the sidebar as dir1/dir2/dir3/maildir, setting
+\fCsidebar_component_depth=2\fP will display it as dir3/maildir, having
+truncated the 2 highest directories.
+.IP
+\fBSee also:\fP $sidebar_short_path
+
+
+.TP
+.B sidebar_delim_chars
+.nf
+Type: string
+Default: "/."
+.fi
+.IP
+This contains the list of characters which you would like to treat
+as folder separators for displaying paths in the sidebar.
+.IP
+Local mail is often arranged in directories: 'dir1/dir2/mailbox'.
+
+.IP
+.EX
+set sidebar_delim_chars='/'
+
+.EE
+.IP
+IMAP mailboxes are often named: 'folder1.folder2.mailbox'.
+
+.IP
+.EX
+set sidebar_delim_chars='.'
+
+.EE
+.IP
+\fBSee also:\fP $sidebar_short_path, $sidebar_folder_indent, $sidebar_indent_string.
+
+
+.TP
+.B sidebar_divider_char
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This specifies the characters to be drawn between the sidebar (when
+visible) and the other NeoMutt panels. ASCII and Unicode line\-drawing
+characters are supported.
+
+
+.TP
+.B sidebar_folder_indent
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Set this to indent mailboxes in the sidebar.
+.IP
+\fBSee also:\fP $sidebar_short_path, $sidebar_indent_string, $sidebar_delim_chars.
+
+
+.TP
+.B sidebar_format
+.nf
+Type: string
+Default: "%D%*  %n"
+.fi
+.IP
+This variable allows you to customize the sidebar display. This string is
+similar to $index_format, but has its own set of \fCprintf(3)\fP\-like
+sequences:
+.RS
+.PD 0
+.TP
+%B 
+    
+Name of the mailbox
+.TP
+%d 
+* @ 
+Number of deleted messages in the mailbox
+.TP
+%D 
+    
+Descriptive name of the mailbox
+.TP
+%F 
+*   
+Number of flagged messages in the mailbox
+.TP
+%L 
+* @ 
+Number of messages after limiting
+.TP
+%n 
+    
+'N' if mailbox has new mail, ' ' (space) otherwise
+.TP
+%N 
+*   
+Number of unread messages in the mailbox (seen or unseen)
+.TP
+%o 
+*   
+Number of old messages in the mailbox (unread, seen)
+.TP
+%r 
+*   
+Number of read messages in the mailbox (read, seen)
+.TP
+%S 
+*   
+Size of mailbox (total number of messages)
+.TP
+%t 
+* @ 
+Number of tagged messages in the mailbox
+.TP
+%Z 
+*   
+Number of new messages in the mailbox (unread, unseen)
+.TP
+%! 
+    
+"!" : one flagged message;
+"!!" : two flagged messages;
+"n!" : n flagged messages (for n > 2).
+Otherwise prints nothing.
+.TP
+%>X 
+
+Right justify the rest of the string and pad with "X"
+.TP
+%|X 
+
+Pad to the end of the line with "X"
+.TP
+%*X 
+
+Soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+* = Can be optionally printed if nonzero
+.IP
+@ = Only applicable to the current folder
+.IP
+In order to use %S, %N, %F, and %!, $mail_check_stats must
+be \fIset\fP.  When thus set, a suggested value for this option is
+"%B%?F? [%F]?%* %?N?%N/?%S".
+
+
+.TP
+.B sidebar_indent_string
+.nf
+Type: string
+Default: "  "
+.fi
+.IP
+This specifies the string that is used to indent mailboxes in the sidebar.
+It defaults to two spaces.
+.IP
+\fBSee also:\fP $sidebar_short_path, $sidebar_folder_indent, $sidebar_delim_chars.
+
+
+.TP
+.B sidebar_new_mail_only
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, the sidebar will only display mailboxes containing new, or
+flagged, mail.
+.IP
+\fBSee also:\fP $sidebar_whitelist, $sidebar_non_empty_mailbox_only.
+
+
+.TP
+.B sidebar_next_new_wrap
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, the \fC<sidebar\-next\-new>\fP command will not stop and the end of
+the list of mailboxes, but wrap around to the beginning. The
+\fC<sidebar\-prev\-new>\fP command is similarly affected, wrapping around to
+the end of the list.
+
+
+.TP
+.B sidebar_non_empty_mailbox_only
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, the sidebar will only display mailboxes that contain one or more mails.
+.IP
+\fBSee also:\fP $sidebar_new_mail_only, $sidebar_whitelist.
+
+
+.TP
+.B sidebar_on_right
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When set, the sidebar will appear on the right\-hand side of the screen.
+
+
+.TP
+.B sidebar_short_path
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+By default the sidebar will show the mailbox's path, relative to the
+$folder variable. Setting \fCsidebar_shortpath=yes\fP will shorten the
+names relative to the previous name. Here's an example:
+.RS
+.PD 0
+.TP
+\fBshortpath=no\fP 
+\fBshortpath=yes\fP 
+\fBshortpath=yes, folderindent=yes, indentstr=".."\fP
+.TP
+\fCfruit\fP        
+\fCfruit\fP         
+\fCfruit\fP
+.TP
+\fCfruit.apple\fP  
+\fCapple\fP         
+\fC..apple\fP
+.TP
+\fCfruit.banana\fP 
+\fCbanana\fP        
+\fC..banana\fP
+.TP
+\fCfruit.cherry\fP 
+\fCcherry\fP        
+\fC..cherry\fP
+.RE
+.PD 1
+.IP
+\fBSee also:\fP $sidebar_delim_chars, $sidebar_folder_indent,
+$sidebar_indent_string, $sidebar_component_depth.
+
+
+.TP
+.B sidebar_sort_method
+.nf
+Type: sort order
+Default: order
+.fi
+.IP
+Specifies how to sort mailbox entries in the sidebar.  By default, the
+entries are sorted alphabetically.  Valid values:
+.RS
+.PD 0
+.TP
+\(hy path (alphabetically)
+.TP
+\(hy count (all message count)
+.TP
+\(hy flagged (flagged message count)
+.TP
+\(hy new (unread message count)
+.TP
+\(hy unread (unread message count)
+.TP
+\(hy unsorted
+.RE
+.PD 1
+.IP
+You may optionally use the "reverse\-" prefix to specify reverse sorting
+order (example: "\fCset sidebar_sort_method=reverse\-alpha\fP").
+.IP
+The "alpha" and "name" values are synonyms for "path".
+
+
+.TP
+.B sidebar_visible
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This specifies whether or not to show sidebar. The sidebar shows a list of
+all your mailboxes.
+.IP
+\fBSee also:\fP $sidebar_format, $sidebar_width
+
+
+.TP
+.B sidebar_width
+.nf
+Type: number
+Default: 30
+.fi
+.IP
+This controls the width of the sidebar.  It is measured in screen columns.
+For example: sidebar_width=20 could display 20 ASCII characters, or 10
+Chinese characters.
+
+
+.TP
+.B sig_dashes
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, a line containing "\-\- " (note the trailing space) will be inserted before your
+$signature.  It is \fBstrongly\fP recommended that you not \fIunset\fP
+this variable unless your signature contains just your name.  The
+reason for this is because many software packages use "\-\- \\n" to
+detect your signature.  For example, NeoMutt has the ability to highlight
+the signature in a different color in the built\-in pager.
+
+
+.TP
+.B sig_on_top
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, the signature will be included before any quoted or forwarded
+text.  It is \fBstrongly\fP recommended that you do not set this variable
+unless you really know what you are doing, and are prepared to take
+some heat from netiquette guardians.
+
+
+.TP
+.B signature
+.nf
+Type: path
+Default: "~/.signature"
+.fi
+.IP
+Specifies the filename of your signature, which is appended to all
+outgoing messages.   If the filename ends with a pipe ("|"), it is
+assumed that filename is a shell command and input should be read from
+its standard output.
+
+
+.TP
+.B simple_search
+.nf
+Type: string
+Default: "~f %s | ~s %s"
+.fi
+.IP
+Specifies how NeoMutt should expand a simple search into a real search
+pattern.  A simple search is one that does not contain any of the "~" pattern
+operators.  See "patterns" for more information on search patterns.
+.IP
+For example, if you simply type "joe" at a search or limit prompt, NeoMutt
+will automatically expand it to the value specified by this variable by
+replacing "%s" with the supplied string.
+For the default value, "joe" would be expanded to: "~f joe | ~s joe".
+
+
+.TP
+.B size_show_bytes
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, message sizes will display bytes for values less than
+1 kilobyte.  See formatstrings-size.
+
+
+.TP
+.B size_show_fractions
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, message sizes will be displayed with a single decimal value
+for sizes from 0 to 10 kilobytes and 1 to 10 megabytes.
+See formatstrings-size.
+
+
+.TP
+.B size_show_mb
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP, message sizes will display megabytes for values greater than
+or equal to 1 megabyte.  See formatstrings-size.
+
+
+.TP
+.B size_units_on_left
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, message sizes units will be displayed to the left of the number.
+See formatstrings-size.
+
+
+.TP
+.B skip_quoted_offset
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Lines of quoted text that are displayed before the unquoted text after
+"skip to quoted" command (S)
+
+
+.TP
+.B sleep_time
+.nf
+Type: number
+Default: 1
+.fi
+.IP
+Specifies time, in seconds, to pause while displaying certain informational
+messages, while moving from folder to folder and after expunging
+messages from the current folder.  The default is to pause one second, so
+a value of zero for this option suppresses the pause.
+
+
+.TP
+.B smart_wrap
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls the display of lines longer than the screen width in the
+internal pager. If \fIset\fP, long lines are wrapped at a word boundary.  If
+\fIunset\fP, lines are simply wrapped at the screen edge. Also see the
+$markers variable.
+
+
+.TP
+.B smileys
+.nf
+Type: regular expression
+Default: "(>From )|(:[\-^]?[][)(><}{|/DP])"
+.fi
+.IP
+The \fIpager\fP uses this variable to catch some common false
+positives of $quote_regex, most notably smileys and not consider
+a line quoted text if it also matches $smileys. This mostly
+happens at the beginning of a line.
+
+
+.TP
+.B smime_ask_cert_label
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This flag controls whether you want to be asked to enter a label
+for a certificate about to be added to the database or not. It is
+\fIset\fP by default.
+(S/MIME only)
+
+
+.TP
+.B smime_ca_location
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+This variable contains the name of either a directory, or a file which
+contains trusted certificates for use with OpenSSL.
+(S/MIME only)
+
+
+.TP
+.B smime_certificates
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
+storage and retrieval of keys by itself. This is very basic right
+now, and keys and certificates are stored in two different
+directories, both named as the hash\-value retrieved from
+OpenSSL. There is an index file which contains mailbox\-address
+keyid pairs, and which can be manually edited. This option points to
+the location of the certificates.
+(S/MIME only)
+
+
+.TP
+.B smime_decrypt_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This format string specifies a command which is used to decrypt
+\fCapplication/x\-pkcs7\-mime\fP attachments.
+.IP
+The OpenSSL command formats have their own set of \fCprintf(3)\fP\-like sequences
+similar to PGP's:
+.RS
+.PD 0
+.TP
+%f 
+Expands to the name of a file containing a message.
+.TP
+%s 
+Expands to the name of a file containing the signature part
+of a \fCmultipart/signed\fP attachment when verifying it.
+.TP
+%k 
+The key\-pair specified with $smime_default_key
+.TP
+%i 
+Intermediate certificates
+.TP
+%c 
+One or more certificate IDs.
+.TP
+%a 
+The algorithm used for encryption.
+.TP
+%d 
+The message digest algorithm specified with $smime_sign_digest_alg.
+.TP
+%C 
+CA location:  Depending on whether $smime_ca_location
+points to a directory or file, this expands to
+"\-CApath $smime_ca_location" or "\-CAfile $smime_ca_location".
+.RE
+.PD 1
+.IP
+For examples on how to configure these formats, see the \fCsmime.rc\fP in
+the \fCsamples/\fP subdirectory which has been installed on your system
+alongside the documentation.
+(S/MIME only)
+
+
+.TP
+.B smime_decrypt_use_default_key
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP (default) this tells NeoMutt to use the default key for decryption. Otherwise,
+if managing multiple certificate\-key\-pairs, NeoMutt will try to use the mailbox\-address
+to determine the key to use. It will ask you to supply a key, if it can't find one.
+(S/MIME only)
+
+
+.TP
+.B smime_default_key
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+This is the default key\-pair to use for S/MIME operations, and must be
+set to the keyid (the hash\-value that OpenSSL generates) to work properly.
+.IP
+It will be used for encryption (see $postpone_encrypt and
+$smime_self_encrypt).
+.IP
+It will be used for decryption unless $smime_decrypt_use_default_key
+is \fIunset\fP.
+.IP
+It will also be used for signing unless $smime_sign_as is set.
+.IP
+The (now deprecated) \fIsmime_self_encrypt_as\fP is an alias for this
+variable, and should no longer be used.
+(S/MIME only)
+
+
+.TP
+.B smime_encrypt_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to create encrypted S/MIME messages.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+.IP
+Encrypt the message to $smime_default_key too.
+(S/MIME only)
+
+
+.TP
+.B smime_encrypt_with
+.nf
+Type: string
+Default: "aes256"
+.fi
+.IP
+This sets the algorithm that should be used for encryption.
+Valid choices are "aes128", "aes192", "aes256", "des", "des3", "rc2\-40", "rc2\-64", "rc2\-128".
+(S/MIME only)
+
+
+.TP
+.B smime_get_cert_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to extract X509 certificates from a PKCS7 structure.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_get_cert_email_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to extract the mail address(es) used for storing
+X509 certificates, and for verification purposes (to check whether the
+certificate was issued for the sender's mailbox).
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_get_signer_cert_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to extract only the signers X509 certificate from a S/MIME
+signature, so that the certificate's owner may get compared to the
+email's "From:" field.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_import_cert_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to import a certificate via smime_keys.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.  NOTE: %c and %k will default
+to $smime_sign_as if set, otherwise $smime_default_key.
+(S/MIME only)
+
+
+.TP
+.B smime_is_default
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+The default behavior of NeoMutt is to use PGP on all auto\-sign/encryption
+operations. To override and to use OpenSSL instead this must be \fIset\fP.
+However, this has no effect while replying, since NeoMutt will automatically
+select the same application that was used to sign/encrypt the original
+message.  (Note that this variable can be overridden by unsetting $crypt_autosmime.)
+(S/MIME only)
+
+
+.TP
+.B smime_keys
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
+storage and retrieval of keys/certs by itself. This is very basic right now,
+and stores keys and certificates in two different directories, both
+named as the hash\-value retrieved from OpenSSL. There is an index file
+which contains mailbox\-address keyid pair, and which can be manually
+edited. This option points to the location of the private keys.
+(S/MIME only)
+
+
+.TP
+.B smime_pk7out_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to extract PKCS7 structures of S/MIME signatures,
+in order to extract the public X509 certificate(s).
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_self_encrypt
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, S/MIME encrypted messages will also be encrypted
+using the certificate in $smime_default_key.
+(S/MIME only)
+
+
+.TP
+.B smime_sign_as
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+If you have a separate key to use for signing, you should set this
+to the signing key. Most people will only need to set $smime_default_key.
+(S/MIME only)
+
+
+.TP
+.B smime_sign_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to created S/MIME signatures of type
+\fCmultipart/signed\fP, which can be read by all mail clients.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_sign_digest_alg
+.nf
+Type: string
+Default: "sha256"
+.fi
+.IP
+This sets the algorithm that should be used for the signature message digest.
+Valid choices are "md5", "sha1", "sha224", "sha256", "sha384", "sha512".
+(S/MIME only)
+
+
+.TP
+.B smime_timeout
+.nf
+Type: number
+Default: 300
+.fi
+.IP
+The number of seconds after which a cached passphrase will expire if
+not used.
+(S/MIME only)
+
+
+.TP
+.B smime_verify_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to verify S/MIME signatures of type \fCmultipart/signed\fP.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smime_verify_opaque_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+This command is used to verify S/MIME signatures of type
+\fCapplication/x\-pkcs7\-mime\fP.
+.IP
+This is a format string, see the $smime_decrypt_command command for
+possible \fCprintf(3)\fP\-like sequences.
+(S/MIME only)
+
+
+.TP
+.B smtp_authenticators
+.nf
+Type: string list
+Default: ""
+.fi
+.IP
+This is a colon\-delimited list of authentication methods NeoMutt may
+attempt to use to log in to an SMTP server, in the order NeoMutt should
+try them.  Authentication methods are any SASL mechanism, e.g. "plain",
+"digest\-md5", "gssapi" or "cram\-md5".
+This option is case\-insensitive. If it is "unset"
+(the default) NeoMutt will try all available methods, in order from
+most\-secure to least\-secure. Support for the "plain" mechanism is
+bundled; other mechanisms are provided by an external SASL library (look
+for +USE_SASL in the output of neomutt \-v).
+.IP
+Example:
+
+.IP
+.EX
+set smtp_authenticators="digest\-md5:cram\-md5"
+
+.EE
+
+
+.TP
+.B smtp_oauth_refresh_command
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+The command to run to generate an OAUTH refresh token for
+authorizing your connection to your SMTP server.  This command will be
+run on every connection attempt that uses the OAUTHBEARER authentication
+mechanism.  See "oauth" for details.
+
+
+.TP
+.B smtp_pass
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Specifies the password for your SMTP account.  If \fIunset\fP, NeoMutt will
+prompt you for your password when you first send mail via SMTP.
+See $smtp_url to configure NeoMutt to send mail via SMTP.
+.IP
+\fBWarning\fP: you should only use this option when you are on a
+fairly secure machine, because the superuser can read your neomuttrc even
+if you are the only one who can read the file.
+
+
+.TP
+.B smtp_url
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Defines the SMTP smarthost where sent messages should relayed for
+delivery. This should take the form of an SMTP URL, e.g.:
+
+.IP
+.EX
+smtp[s]://[user[:pass]@]host[:port]
+
+.EE
+.IP
+where "[...]" denotes an optional part.
+Setting this variable overrides the value of the $sendmail
+variable.
+.IP
+Also see $write_bcc.
+
+
+.TP
+.B smtp_user
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+The username for the SMTP server.
+.IP
+This variable defaults to your user name on the local machine.
+
+
+.TP
+.B sort
+.nf
+Type: sort order
+Default: date
+.fi
+.IP
+Specifies how to sort messages in the "index" menu.  Valid values
+are:
+.RS
+.PD 0
+.TP
+\(hy date
+.TP
+\(hy date\-received
+.TP
+\(hy from
+.TP
+\(hy score
+.TP
+\(hy size
+.TP
+\(hy spam
+.TP
+\(hy subject
+.TP
+\(hy threads
+.TP
+\(hy to
+.TP
+\(hy unsorted
+.RE
+.PD 1
+.IP
+You may optionally use the "reverse\-" prefix to specify reverse sorting
+order.
+.IP
+The "date\-sent" value is a synonym for "date". The "mailbox\-order" value is
+a synonym for "unsorted".
+.IP
+Example:
+
+.IP
+.EX
+set sort=reverse\-date\-sent
+
+.EE
+
+
+.TP
+.B sort_alias
+.nf
+Type: sort order
+Default: alias
+.fi
+.IP
+Specifies how the entries in the "alias" menu are sorted.  The
+following are legal values:
+.RS
+.PD 0
+.TP
+\(hy address (sort alphabetically by email address)
+.TP
+\(hy alias (sort alphabetically by alias name)
+.TP
+\(hy unsorted (leave in order specified in .neomuttrc)
+.RE
+.PD 1
+.IP
+Note: This also affects the entries of the address query menu, thus
+potentially overruling the order of entries as generated by $query_command.
+
+
+.TP
+.B sort_aux
+.nf
+Type: sort order
+Default: date
+.fi
+.IP
+This provides a secondary sort for messages in the "index" menu, used
+when the $sort value is equal for two messages.
+.IP
+When sorting by threads, this variable controls how threads are sorted
+in relation to other threads, and how the branches of the thread trees
+are sorted.  This can be set to any value that $sort can, except
+"threads" (in that case, NeoMutt will just use "date").  You can also
+specify the "last\-" prefix in addition to the "reverse\-" prefix, but "last\-"
+must come after "reverse\-".  The "last\-" prefix causes messages to be
+sorted against its siblings by which has the last descendant, using
+the rest of $sort_aux as an ordering.  For instance,
+
+.IP
+.EX
+set sort_aux=last\-date\-received
+
+.EE
+.IP
+would mean that if a new message is received in a
+thread, that thread becomes the last one displayed (or the first, if
+you have "\fCset sort=reverse\-threads\fP".)
+.IP
+Note: For reversed\-threads $sort
+order, $sort_aux is reversed again (which is not the right thing to do,
+but kept to not break any existing configuration setting).
+
+
+.TP
+.B sort_browser
+.nf
+Type: sort order
+Default: alpha
+.fi
+.IP
+Specifies how to sort entries in the file browser.  By default, the
+entries are sorted alphabetically.  Valid values:
+.RS
+.PD 0
+.TP
+\(hy alpha (alphabetically)
+.TP
+\(hy count (all message count)
+.TP
+\(hy date
+.TP
+\(hy desc (description)
+.TP
+\(hy new (new message count)
+.TP
+\(hy size
+.TP
+\(hy unsorted
+.RE
+.PD 1
+.IP
+You may optionally use the "reverse\-" prefix to specify reverse sorting
+order (example: "\fCset sort_browser=reverse\-date\fP").
+.IP
+The "unread" value is a synonym for "new".
+
+
+.TP
+.B sort_re
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+This variable is only useful when sorting by threads with
+$strict_threads \fIunset\fP.  In that case, it changes the heuristic
+mutt uses to thread messages by subject.  With $sort_re \fIset\fP, mutt will
+only attach a message as the child of another message by subject if
+the subject of the child message starts with a substring matching the
+setting of $reply_regex.  With $sort_re \fIunset\fP, mutt will attach
+the message whether or not this is the case, as long as the
+non\-$reply_regex parts of both messages are identical.
+
+
+.TP
+.B spam_separator
+.nf
+Type: string
+Default: ","
+.fi
+.IP
+This variable controls what happens when multiple spam headers
+are matched: if \fIunset\fP, each successive header will overwrite any
+previous matches value for the spam label. If \fIset\fP, each successive
+match will append to the previous, using this variable's value as a
+separator.
+
+
+.TP
+.B spoolfile
+.nf
+Type: mailbox
+Default: ""
+.fi
+.IP
+If your spool mailbox is in a non\-default place where NeoMutt can't find
+it, you can specify its location with this variable. The description from
+"named\-mailboxes" or "virtual\-mailboxes" may be used for the spoolfile.
+.IP
+If not specified, then the environment variables \fC$MAIL\fP and
+\fC$MAILDIR\fP will be checked.
+
+
+.TP
+.B ssl_ca_certificates_file
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+This variable specifies a file containing trusted CA certificates.
+Any server certificate that is signed with one of these CA
+certificates is also automatically accepted. (GnuTLS only)
+.IP
+Example:
+
+.IP
+.EX
+set ssl_ca_certificates_file=/etc/ssl/certs/ca\-certificates.crt
+
+.EE
+
+
+.TP
+.B ssl_ciphers
+.nf
+Type: string
+Default: ""
+.fi
+.IP
+Contains a colon\-separated list of ciphers to use when using SSL.
+For OpenSSL, see ciphers(1) for the syntax of the string.
+.IP
+For GnuTLS, this option will be used in place of "NORMAL" at the
+start of the priority string.  See gnutls_priority_init(3) for the
+syntax and more details. (Note: GnuTLS version 2.1.7 or higher is
+required.)
+
+
+.TP
+.B ssl_client_cert
+.nf
+Type: path
+Default: ""
+.fi
+.IP
+The file containing a client certificate and its associated private
+key.
+
+
+.TP
+.B ssl_force_tls
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If this variable is \fIset\fP, NeoMutt will require that all connections
+to remote servers be encrypted. Furthermore it will attempt to
+negotiate TLS even if the server does not advertise the capability,
+since it would otherwise have to abort the connection anyway. This
+option supersedes $ssl_starttls.
+
+
+.TP
+.B ssl_min_dh_prime_bits
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+This variable specifies the minimum acceptable prime size (in bits)
+for use in any Diffie\-Hellman key exchange. A value of 0 will use
+the default from the GNUTLS library. (GnuTLS only)
+
+
+.TP
+.B ssl_starttls
+.nf
+Type: quadoption
+Default: yes
+.fi
+.IP
+If \fIset\fP (the default), NeoMutt will attempt to use \fCSTARTTLS\fP on servers
+advertising the capability. When \fIunset\fP, NeoMutt will not attempt to
+use \fCSTARTTLS\fP regardless of the server's capabilities.
+.IP
+\fBNote\fP that \fCSTARTTLS\fP is subject to many kinds of
+attacks, including the ability of a machine\-in\-the\-middle to
+suppress the advertising of support.  Setting $ssl_force_tls is
+recommended if you rely on \fCSTARTTLS\fP.
+
+
+.TP
+.B ssl_use_sslv2
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP , NeoMutt will use SSLv2 when communicating with servers that
+request it. \fBN.B. As of 2011, SSLv2 is considered insecure, and using
+is inadvisable. See https://tools.ietf.org/html/rfc6176 .\fP
+(OpenSSL only)
+
+
+.TP
+.B ssl_use_sslv3
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP , NeoMutt will use SSLv3 when communicating with servers that
+request it. \fBN.B. As of 2015, SSLv3 is considered insecure, and using
+it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+
+
+.TP
+.B ssl_use_tlsv1
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP , NeoMutt will use TLSv1.0 when communicating with servers that
+request it. \fBN.B. As of 2015, TLSv1.0 is considered insecure, and using
+it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+
+
+.TP
+.B ssl_use_tlsv1_1
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP , NeoMutt will use TLSv1.1 when communicating with servers that
+request it. \fBN.B. As of 2015, TLSv1.1 is considered insecure, and using
+it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+
+
+.TP
+.B ssl_use_tlsv1_2
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP , NeoMutt will use TLSv1.2 when communicating with servers that
+request it.
+
+
+.TP
+.B ssl_use_tlsv1_3
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP , NeoMutt will use TLSv1.3 when communicating with servers that
+request it.
+
+
+.TP
+.B ssl_usesystemcerts
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If set to \fIyes\fP, NeoMutt will use CA certificates in the
+system\-wide certificate store when checking if a server certificate
+is signed by a trusted CA. (OpenSSL only)
+
+
+.TP
+.B ssl_verify_dates
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP (the default), NeoMutt will not automatically accept a server
+certificate that is either not yet valid or already expired. You should
+only unset this for particular known hosts, using the
+\fC<account-hook>\fP function.
+
+
+.TP
+.B ssl_verify_host
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+If \fIset\fP (the default), NeoMutt will not automatically accept a server
+certificate whose host name does not match the host used in your folder
+URL. You should only unset this for particular known hosts, using
+the \fC<account-hook>\fP function.
+
+
+.TP
+.B ssl_verify_partial_chains
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+This option should not be changed from the default unless you understand
+what you are doing.
+.IP
+Setting this variable to \fIyes\fP will permit verifying partial
+certification chains, i. e. a certificate chain where not the root,
+but an intermediate certificate CA, or the host certificate, are
+marked trusted (in $certificate_file), without marking the root
+signing CA as trusted.
+.IP
+(OpenSSL 1.0.2b and newer only).
+
+
+.TP
+.B status_chars
+.nf
+Type: character string
+Default: "\-*%A"
+.fi
+.IP
+Controls the characters used by the "%r" indicator in $status_format.
+.RS
+.PD 0
+.TP
+\fBCharacter\fP 
+\fBDefault\fP 
+\fBDescription\fP
+.TP
+1 
+\- 
+Mailbox is unchanged
+.TP
+2 
+* 
+Mailbox has been changed and needs to be resynchronized
+.TP
+3 
+% 
+Mailbox is read\-only, or will not be written when exiting.
+(You can toggle whether to write changes to a mailbox
+with the \fC<toggle\-write>\fP operation, bound by default
+to "%")
+.TP
+4 
+A 
+Folder opened in attach\-message mode.
+(Certain operations like composing a new mail, replying,
+forwarding, etc. are not permitted in this mode)
+.RE
+.PD 1
+
+.TP
+.B status_format
+.nf
+Type: string
+Default: "\-%r\-NeoMutt: %D [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]\-\-\-(%s/%S)\-%>\-(%P)\-\-\-"
+.fi
+.IP
+Controls the format of the status line displayed in the "index"
+menu.  This string is similar to $index_format, but has its own
+set of \fCprintf(3)\fP\-like sequences:
+.RS
+.PD 0
+.TP
+%b  
+* 
+Number of mailboxes with new mail
+.TP
+%d  
+* 
+Number of deleted messages
+.TP
+%D  
+  
+Description of the mailbox
+.TP
+%f  
+  
+The full pathname of the current mailbox
+.TP
+%F  
+* 
+Number of flagged messages
+.TP
+%h  
+  
+Local hostname
+.TP
+%l  
+* 
+Size (in bytes) of the current mailbox (see formatstrings-size)
+.TP
+%L  
+* 
+Size (in bytes) of the messages shown
+(i.e., which match the current limit) (see formatstrings-size)
+.TP
+%m  
+* 
+The number of messages in the mailbox
+.TP
+%M  
+* 
+The number of messages shown (i.e., which match the current limit)
+.TP
+%n  
+* 
+Number of new messages in the mailbox (unread, unseen)
+.TP
+%o  
+* 
+Number of old messages in the mailbox (unread, seen)
+.TP
+%p  
+* 
+Number of postponed messages
+.TP
+%P  
+  
+Percentage of the way through the index
+.TP
+%r  
+  
+Modified/read\-only/won't\-write/attach\-message indicator,
+According to $status_chars
+.TP
+%R  
+* 
+Number of read messages in the mailbox (read, seen)
+.TP
+%s  
+  
+Current sorting mode ($sort)
+.TP
+%S  
+  
+Current aux sorting method ($sort_aux)
+.TP
+%t  
+* 
+Number of tagged messages in the mailbox
+.TP
+%u  
+* 
+Number of unread messages in the mailbox (seen or unseen)
+.TP
+%v  
+  
+NeoMutt version string
+.TP
+%V  
+* 
+Currently active limit pattern, if any
+.TP
+%>X 
+  
+Right justify the rest of the string and pad with "X"
+.TP
+%|X 
+  
+Pad to the end of the line with "X"
+.TP
+%*X 
+  
+Soft\-fill with character "X" as pad
+.RE
+.PD 1
+.IP
+For an explanation of "soft\-fill", see the $index_format documentation.
+.IP
+* = can be optionally printed if nonzero
+.IP
+Some of the above sequences can be used to optionally print a string
+if their value is nonzero.  For example, you may only want to see the
+number of flagged messages if such messages exist, since zero is not
+particularly meaningful.  To optionally print a string based upon one
+of the above sequences, the following construct is used:
+.IP
+\fC%?<sequence_char>?<optional_string>?\fP
+.IP
+where \fIsequence_char\fP is a character from the table above, and
+\fIoptional_string\fP is the string you would like printed if
+\fIsequence_char\fP is nonzero.  \fIoptional_string\fP \fBmay\fP contain
+other sequences as well as normal text, but you may \fBnot\fP nest
+optional strings.
+.IP
+Here is an example illustrating how to optionally print the number of
+new messages in a mailbox:
+.IP
+\fC%?n?%n new messages.?\fP
+.IP
+You can also switch between two strings using the following construct:
+.IP
+\fC%?<sequence_char>?<if_string>&<else_string>?\fP
+.IP
+If the value of \fIsequence_char\fP is non\-zero, \fIif_string\fP will
+be expanded, otherwise \fIelse_string\fP will be expanded.
+.IP
+You can force the result of any \fCprintf(3)\fP\-like sequence to be lowercase
+by prefixing the sequence character with an underscore ("_") sign.
+For example, if you want to display the local hostname in lowercase,
+you would use: "\fC%_h\fP".
+.IP
+If you prefix the sequence character with a colon (":") character, NeoMutt
+will replace any dots in the expansion by underscores. This might be helpful
+with IMAP folders that don't like dots in folder names.
+
+
+.TP
+.B status_on_top
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Setting this variable causes the "status bar" to be displayed on
+the first line of the screen rather than near the bottom. If $help
+is \fIset\fP, too it'll be placed at the bottom.
+
+
+.TP
+.B strict_threads
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, threading will only make use of the "In\-Reply\-To" and
+"References:" fields when you $sort by message threads.  By
+default, messages with the same subject are grouped together in
+"pseudo threads.". This may not always be desirable, such as in a
+personal mailbox where you might have several unrelated messages with
+the subjects like "hi" which will get grouped together. See also
+$sort_re for a less drastic way of controlling this
+behavior.
+
+
+.TP
+.B suspend
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIunset\fP, NeoMutt won't stop when the user presses the terminal's
+\fIsusp\fP key, usually "^Z". This is useful if you run NeoMutt
+inside an xterm using a command like "\fCxterm \-e neomutt\fP".
+
+
+.TP
+.B text_flowed
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will generate "format=flowed" bodies with a content type
+of "\fCtext/plain; format=flowed\fP".
+This format is easier to handle for some mailing software, and generally
+just looks like ordinary text.  To actually make use of this format's
+features, you'll need support in your editor.
+.IP
+The option only controls newly composed messages.  Postponed messages,
+resent messages, and draft messages (via \-H on the command line) will
+use the content\-type of the source message.
+.IP
+Note that $indent_string is ignored when this option is \fIset\fP.
+
+
+.TP
+.B thorough_search
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Affects the \fC~b\fP and \fC~h\fP search operations described in
+section "patterns".  If \fIset\fP, the headers and body/attachments of
+messages to be searched are decoded before searching. If \fIunset\fP,
+messages are searched as they appear in the folder.
+.IP
+Users searching attachments or for non\-ASCII characters should \fIset\fP
+this value because decoding also includes MIME parsing/decoding and possible
+character set conversions. Otherwise NeoMutt will attempt to match against the
+raw message received (for example quoted\-printable encoded or with encoded
+headers) which may lead to incorrect search results.
+
+
+.TP
+.B thread_received
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt uses the date received rather than the date sent
+to thread messages by subject.
+
+
+.TP
+.B tilde
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, the internal\-pager will pad blank lines to the bottom of the
+screen with a tilde ("~").
+
+
+.TP
+.B time_inc
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Along with $read_inc, $write_inc, and $net_inc, this
+variable controls the frequency with which progress updates are
+displayed. It suppresses updates less than $time_inc milliseconds
+apart. This can improve throughput on systems with slow terminals,
+or when running NeoMutt on a remote system.
+.IP
+Also see the "tuning" section of the manual for performance considerations.
+
+
+.TP
+.B timeout
+.nf
+Type: number
+Default: 600
+.fi
+.IP
+When NeoMutt is waiting for user input either idling in menus or
+in an interactive prompt, NeoMutt would block until input is
+present. Depending on the context, this would prevent certain
+operations from working, like checking for new mail or keeping
+an IMAP connection alive.
+.IP
+This variable controls how many seconds NeoMutt will at most wait
+until it aborts waiting for input, performs these operations and
+continues to wait for input.
+.IP
+A value of zero or less will cause NeoMutt to never time out.
+
+
+.TP
+.B tmpdir
+.nf
+Type: path
+Default: "/tmp"
+.fi
+.IP
+This variable allows you to specify where NeoMutt will place its
+temporary files needed for displaying and composing messages.
+.IP
+If this variable is not set, the environment variable \fC$TMPDIR\fP is
+used.  Failing that, then "\fC/tmp\fP" is used.
+
+
+.TP
+.B to_chars
+.nf
+Type: character string
+Default: " +TCFLR"
+.fi
+.IP
+Controls the character used to indicate mail addressed to you.
+.RS
+.PD 0
+.TP
+\fBCharacter\fP 
+\fBDefault\fP 
+\fBDescription\fP
+.TP
+1 
+<space> 
+The mail is \fInot\fP addressed to your address.
+.TP
+2 
++ 
+You are the only recipient of the message.
+.TP
+3 
+T 
+Your address appears in the "To:" header field, but you are not the only recipient of the message.
+.TP
+4 
+C 
+Your address is specified in the "Cc:" header field, but you are not the only recipient.
+.TP
+5 
+F 
+Indicates the mail that was sent by \fIyou\fP.
+.TP
+6 
+L 
+Indicates the mail was sent to a mailing\-list you subscribe to.
+.TP
+7 
+R 
+Your address appears in the "Reply\-To:" header field but none of the above applies.
+.RE
+.PD 1
+
+.TP
+.B toggle_quoted_show_levels
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+Quoted text may be filtered out using the \fC<toggle\-quoted>\fP command.
+If set to a number greater than 0, then the \fC<toggle\-quoted>\fP
+command will only filter out quote levels above this number.
+
+
+.TP
+.B trash
+.nf
+Type: mailbox
+Default: ""
+.fi
+.IP
+If set, this variable specifies the path of the trash folder where the
+mails marked for deletion will be moved, instead of being irremediably
+purged.
+.IP
+NOTE: When you delete a message in the trash folder, it is really
+deleted, so that you have a way to clean the trash.
+
+
+.TP
+.B ts_enabled
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether NeoMutt tries to set the terminal status line and icon name.
+Most terminal emulators emulate the status line in the window title.
+
+
+.TP
+.B ts_icon_format
+.nf
+Type: string
+Default: "M%?n?AIL&ail?"
+.fi
+.IP
+Controls the format of the icon title, as long as "$ts_enabled" is set.
+This string is identical in formatting to the one used by
+"$status_format".
+
+
+.TP
+.B ts_status_format
+.nf
+Type: string
+Default: "NeoMutt with %?m?%m messages&no messages?%?n? [%n NEW]?"
+.fi
+.IP
+Controls the format of the terminal status line (or window title),
+provided that "$ts_enabled" has been set. This string is identical in
+formatting to the one used by "$status_format".
+
+
+.TP
+.B tunnel
+.nf
+Type: command
+Default: ""
+.fi
+.IP
+Setting this variable will cause NeoMutt to open a pipe to a command
+instead of a raw socket. You may be able to use this to set up
+preauthenticated connections to your IMAP/POP3/SMTP server. Example:
+
+.IP
+.EX
+set tunnel="ssh \-q mailhost.net /usr/local/libexec/imapd"
+
+.EE
+.IP
+Note: For this example to work you must be able to log in to the remote
+machine without having to enter a password.
+.IP
+When set, NeoMutt uses the tunnel for all remote connections.
+Please see "account-hook" in the manual for how to use different
+tunnel commands per connection.
+
+
+.TP
+.B tunnel_is_secure
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will assume the $tunnel connection does not need
+STARTTLS to be enabled.  It will also allow IMAP PREAUTH server
+responses inside a tunnel to proceed.  This is appropriate if $tunnel
+uses ssh or directly invokes the server locally.
+.IP
+When \fIunset\fP, NeoMutt will negotiate STARTTLS according to the
+ssl_starttls and ssl_force_tls variables.  If ssl_force_tls is
+set, NeoMutt will abort connecting if an IMAP server responds with PREAUTH.
+This setting is appropriate if $tunnel does not provide security and
+could be tampered with by attackers.
+
+
+.TP
+.B uncollapse_jump
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will jump to the next unread message, if any,
+when the current thread is \fIun\fPcollapsed.
+
+
+.TP
+.B uncollapse_new
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will automatically uncollapse any collapsed thread
+that receives a new message. When \fIunset\fP, collapsed threads will
+remain collapsed. the presence of the new message will still affect
+index sorting, though.
+
+
+.TP
+.B use_8bitmime
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+\fBWarning:\fP do not set this variable unless you are using a version
+of sendmail which supports the \fC\-B8BITMIME\fP flag (such as sendmail
+8.8.x) or you may not be able to send mail.
+.IP
+When \fIset\fP, NeoMutt will invoke $sendmail with the \fC\-B8BITMIME\fP
+flag when sending 8\-bit messages to enable ESMTP negotiation.
+
+
+.TP
+.B use_domain
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will qualify all local addresses (ones without the
+"@host" portion) with the value of $hostname.  If \fIunset\fP, no
+addresses will be qualified.
+
+
+.TP
+.B use_envelope_from
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will set the \fIenvelope\fP sender of the message.
+If $envelope_from_address is \fIset\fP, it will be used as the sender
+address. If \fIunset\fP, NeoMutt will attempt to derive the sender from the
+"From:" header.
+.IP
+Note that this information is passed to sendmail command using the
+\fC\-f\fP command line switch. Therefore setting this option is not useful
+if the $sendmail variable already contains \fC\-f\fP or if the
+executable pointed to by $sendmail doesn't support the \fC\-f\fP switch.
+
+
+.TP
+.B use_from
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will generate the "From:" header field when
+sending messages.  If \fIunset\fP, no "From:" header field will be
+generated unless the user explicitly sets one using the "my_hdr"
+command.
+
+
+.TP
+.B use_ipv6
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will look for IPv6 addresses of hosts it tries to
+contact.  If this option is \fIunset\fP, NeoMutt will restrict itself to IPv4 addresses.
+Normally, the default should work.
+
+
+.TP
+.B user_agent
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will add a "User\-Agent:" header to outgoing
+messages, indicating which version of NeoMutt was used for composing
+them.
+
+
+.TP
+.B vfolder_format
+.nf
+Type: string
+Default: "%2C %?n?%4n/&     ?%4m %f"
+.fi
+.IP
+This variable allows you to customize the file browser display for virtual
+folders to your personal taste.  This string uses many of the same
+expandos as $folder_format.
+
+
+.TP
+.B virtual_spoolfile
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+When \fIset\fP, NeoMutt will use the first defined virtual mailbox (see
+virtual\-mailboxes) as a spool file.
+.IP
+This command is now unnecessary. $spoolfile has been extended to support
+mailbox descriptions as a value.
+
+
+.TP
+.B visual
+.nf
+Type: command
+Default: "vi"
+.fi
+.IP
+Specifies the visual editor to invoke when the "\fC~v\fP" command is
+given in the built\-in editor.
+.IP
+$visual is overridden by the environment variable \fC$VISUAL\fP or \fC$EDITOR\fP.
+
+
+.TP
+.B wait_key
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls whether NeoMutt will ask you to press a key after an external command
+has been invoked by these functions: \fC<shell\-escape>\fP,
+\fC<pipe\-message>\fP, \fC<pipe\-entry>\fP, \fC<print\-message>\fP,
+and \fC<print\-entry>\fP commands.
+.IP
+It is also used when viewing attachments with "auto_view", provided
+that the corresponding mailcap entry has a \fIneedsterminal\fP flag,
+and the external program is interactive.
+.IP
+When \fIset\fP, NeoMutt will always ask for a key. When \fIunset\fP, NeoMutt will wait
+for a key only if the external command returned a non\-zero status.
+
+
+.TP
+.B weed
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+When \fIset\fP, NeoMutt will weed headers when displaying, forwarding,
+or replying to messages.
+.IP
+Also see $copy_decode_weed, $pipe_decode_weed, $print_decode_weed.
+
+
+.TP
+.B wrap
+.nf
+Type: number
+Default: 0
+.fi
+.IP
+When set to a positive value, NeoMutt will wrap text at $wrap characters.
+When set to a negative value, NeoMutt will wrap text so that there are $wrap
+characters of empty space on the right side of the terminal. Setting it
+to zero makes NeoMutt wrap at the terminal width.
+.IP
+Also see $reflow_wrap.
+
+
+.TP
+.B wrap_headers
+.nf
+Type: number
+Default: 78
+.fi
+.IP
+This option specifies the number of characters to use for wrapping
+an outgoing message's headers. Allowed values are between 78 and 998
+inclusive.
+.IP
+\fBNote:\fP This option usually shouldn't be changed. RFC5233
+recommends a line length of 78 (the default), so \fBplease only change
+this setting when you know what you're doing\fP.
+
+
+.TP
+.B wrap_search
+.nf
+Type: boolean
+Default: yes
+.fi
+.IP
+Controls whether searches wrap around the end.
+.IP
+When \fIset\fP, searches will wrap around the first (or last) item. When
+\fIunset\fP, incremental searches will not wrap.
+
+
+.TP
+.B write_bcc
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+Controls whether NeoMutt writes out the "Bcc:" header when
+preparing messages to be sent.  Some MTAs, such as Exim and
+Courier, do not strip the "Bcc:" header; so it is advisable to
+leave this unset unless you have a particular need for the header
+to be in the sent message.
+.IP
+If NeoMutt is set to deliver directly via SMTP(see $smtp_url),
+this option does nothing: NeoMutt will never write out the "Bcc:"
+header in this case.
+.IP
+Note this option only affects the sending of messages.  Fcc'ed
+copies of a message will always contain the "Bcc:" header if
+one exists.
+
+
+.TP
+.B write_inc
+.nf
+Type: number
+Default: 10
+.fi
+.IP
+When writing a mailbox, a message will be printed every
+$write_inc messages to indicate progress.  If set to 0, only a
+single message will be displayed before writing a mailbox.
+.IP
+Also see the $read_inc, $net_inc and $time_inc variables and the
+"tuning" section of the manual for performance considerations.
+
+
+.TP
+.B x_comment_to
+.nf
+Type: boolean
+Default: no
+.fi
+.IP
+If \fIset\fP, NeoMutt will add "X\-Comment\-To:" field (that contains full
+name of original article author) to article that followuped to newsgroup.
+
+
+.\" -*- nroff -*-
+.\" --------------------------------------------------------------------
+.SH SEE ALSO
+.\" --------------------------------------------------------------------
+.PP
+.\" sorted by category and name
+.BR iconv (1),
+.BR neomutt (1),
+.BR notmuch (1),
+.BR iconv (3),
+.BR printf (3),
+.BR strftime (3),
+.BR mailcap (5),
+.BR maildir (5),
+.BR mbox (5),
+.BR regex (7).
+.
+.PP
+For further NeoMutt information:
+.RS 4
+.TP
+.RI "\(bu the full manual, " "/usr/share/doc/neomutt/manual." { html , pdf , txt }
+.TQ
+\(bu the home page, <https://neomutt.org>
+.RE
+.
+.\" --------------------------------------------------------------------
+.SH AUTHOR
+.\" --------------------------------------------------------------------
+.PP
+Michael Elkins, and others. Use <neomutt-devel@\:neomutt.org> to contact the
+developers.
+.
diff --git a/community-mod/neomutt/post-install b/community-mod/neomutt/post-install
new file mode 100755
index 0000000..f185a00
--- /dev/null
+++ b/community-mod/neomutt/post-install
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+cat << EOF
+You can find some sample neomuttrc files in /usr/share/doc/neomutt/samples.
+EOF
diff --git a/community-mod/neomutt/sources b/community-mod/neomutt/sources
new file mode 100644
index 0000000..d073487
--- /dev/null
+++ b/community-mod/neomutt/sources
@@ -0,0 +1,3 @@
+https://github.com/neomutt/neomutt/archive/refs/tags/20210205.tar.gz
+files/neomutt.1   docs/
+files/neomuttrc.5 docs/
diff --git a/community-mod/neomutt/version b/community-mod/neomutt/version
new file mode 100644
index 0000000..5773bfe
--- /dev/null
+++ b/community-mod/neomutt/version
@@ -0,0 +1 @@
+20210205 1
diff --git a/community-mod/neovim/build b/community-mod/neovim/build
new file mode 100755
index 0000000..7ccd374
--- /dev/null
+++ b/community-mod/neovim/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+# Remove mandatory gettext dependency.
+sed -i 's/^/#/' src/nvim/po/CMakeLists.txt
+
+make \
+    CMAKE_BUILD_TYPE=Release \
+    CMAKE_INSTALL_PREFIX=/usr \
+    CMAKE_INSTALL_LIBDIR=lib \
+    -Wno-dev
+
+make DESTDIR="$1" install
diff --git a/community-mod/neovim/checksums b/community-mod/neovim/checksums
new file mode 100644
index 0000000..b3b9fb5
--- /dev/null
+++ b/community-mod/neovim/checksums
@@ -0,0 +1 @@
+2294caa9d2011996499fbd70e4006e4ef55db75b99b6719154c09262e23764ef
diff --git a/community-mod/neovim/depends b/community-mod/neovim/depends
new file mode 100644
index 0000000..4c9b17b
--- /dev/null
+++ b/community-mod/neovim/depends
@@ -0,0 +1,3 @@
+automake make
+cmake    make
+libtool  make
diff --git a/community-mod/neovim/sources b/community-mod/neovim/sources
new file mode 100644
index 0000000..d76aa6d
--- /dev/null
+++ b/community-mod/neovim/sources
@@ -0,0 +1 @@
+https://github.com/neovim/neovim/archive/refs/tags/v0.5.0.tar.gz
diff --git a/community-mod/neovim/version b/community-mod/neovim/version
new file mode 100644
index 0000000..0c9ae2a
--- /dev/null
+++ b/community-mod/neovim/version
@@ -0,0 +1 @@
+0.5.0 1
diff --git a/community-mod/nettle/build b/community-mod/nettle/build
new file mode 100755
index 0000000..32a7795
--- /dev/null
+++ b/community-mod/nettle/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared \
+    --enable-static \
+    --enable-mini-gmp \
+    --disable-documentation
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/nettle/checksums b/community-mod/nettle/checksums
new file mode 100644
index 0000000..fc61251
--- /dev/null
+++ b/community-mod/nettle/checksums
@@ -0,0 +1 @@
+661f5eb03f048a3b924c3a8ad2515d4068e40f67e774e8a26827658007e3bcf0
diff --git a/community-mod/nettle/sources b/community-mod/nettle/sources
new file mode 100644
index 0000000..67ee87d
--- /dev/null
+++ b/community-mod/nettle/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/nettle/nettle-3.7.3.tar.gz
diff --git a/community-mod/nettle/version b/community-mod/nettle/version
new file mode 100644
index 0000000..3f0b66c
--- /dev/null
+++ b/community-mod/nettle/version
@@ -0,0 +1 @@
+3.7.3 1
diff --git a/community-mod/nfs-utils/build b/community-mod/nfs-utils/build
new file mode 100755
index 0000000..f213af7
--- /dev/null
+++ b/community-mod/nfs-utils/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --disable-nfsv4 \
+    --disable-gss \
+    --disable-uuid \
+    --sbindir=/usr/bin
+
+sed -i "s|sbindir = /sbin|sbindir = /usr/bin|" ./utils/mount/Makefile
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/nfs-utils/checksums b/community-mod/nfs-utils/checksums
new file mode 100644
index 0000000..e77c48c
--- /dev/null
+++ b/community-mod/nfs-utils/checksums
@@ -0,0 +1 @@
+b54d6d8ea2ee62d64111278301ba4631b7bb19174e7f717a724fe5d463900c80
diff --git a/community-mod/nfs-utils/depends b/community-mod/nfs-utils/depends
new file mode 100644
index 0000000..9cfea4b
--- /dev/null
+++ b/community-mod/nfs-utils/depends
@@ -0,0 +1,2 @@
+libtirpc
+rpcsvc-proto
diff --git a/community-mod/nfs-utils/sources b/community-mod/nfs-utils/sources
new file mode 100644
index 0000000..6e6441b
--- /dev/null
+++ b/community-mod/nfs-utils/sources
@@ -0,0 +1 @@
+https://www.kernel.org/pub/linux/utils/nfs-utils/2.5.3/nfs-utils-2.5.3.tar.xz
diff --git a/community-mod/nfs-utils/version b/community-mod/nfs-utils/version
new file mode 100644
index 0000000..6a63654
--- /dev/null
+++ b/community-mod/nfs-utils/version
@@ -0,0 +1 @@
+2.5.3 1
diff --git a/community-mod/nmap/build b/community-mod/nmap/build
new file mode 100755
index 0000000..148d62c
--- /dev/null
+++ b/community-mod/nmap/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --without-zenmap
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/nmap/checksums b/community-mod/nmap/checksums
new file mode 100644
index 0000000..dc2836b
--- /dev/null
+++ b/community-mod/nmap/checksums
@@ -0,0 +1 @@
+18cc4b5070511c51eb243cdd2b0b30ff9b2c4dc4544c6312f75ce3a67a593300  nmap-7.91.tar.bz2
diff --git a/community-mod/nmap/sources b/community-mod/nmap/sources
new file mode 100644
index 0000000..40fc760
--- /dev/null
+++ b/community-mod/nmap/sources
@@ -0,0 +1 @@
+https://nmap.org/dist/nmap-7.91.tar.bz2
diff --git a/community-mod/nmap/version b/community-mod/nmap/version
new file mode 100644
index 0000000..f6d2f1b
--- /dev/null
+++ b/community-mod/nmap/version
@@ -0,0 +1 @@
+7.91 1 
diff --git a/community-mod/nss/build b/community-mod/nss/build
new file mode 100755
index 0000000..2524795
--- /dev/null
+++ b/community-mod/nss/build
@@ -0,0 +1,49 @@
+#!/bin/sh -e
+
+export NSS_USE_SYSTEM_SQLITE=1
+export NSS_ENABLE_WERROR=0
+export USE_64=1
+export BUILD_OPT=1
+export CC="${CC:-cc}"
+export CCC="${CXX:-c++}"
+export CXX="${CXX:-c++}"
+
+make -j1 -C nss nss_build_all
+
+# TODO: Maybe install the NSS binaries. They're uneeded
+#       right now as we handle certs differently.
+#
+# TODO: Maybe install nss-config. Nothing uses it yet
+#       and this build system is terrible so shhh.
+install -Dt "$1/usr/include/nss" -m644 dist/public/nss/*.h
+install -Dt "$1/usr/include/nss" -m644 dist/Linux*/include/*.h
+install -Dt "$1/usr/lib"               dist/Linux*/lib/*.so
+install -Dt "$1/usr/lib"         -m644 dist/Linux*/lib/*.chk
+
+# Yucky. This is needed by qtwebengine.
+install -Dt "$1/usr/include/nss/obsolete" \
+    -m644 dist/Linux*/include/obsolete/*.h
+
+# Install the NSPR files. This is a joint package as I'd
+# rather not juggle which version of NSPR works best with NSS.
+install -Dt "$1/usr/include/nspr" -m644 nspr/pr/include/*.h
+install -Dt "$1/usr/include/nspr" -m644 nspr/lib/*/*.h
+
+# Disgusting. Disgusting. Disgusting. Disgusting. Disgusting.
+find nspr/Linux* -name \*.so \
+    -exec install -Dt "$1/usr/lib" {} \;
+
+# This is disgusting and I hate this package with a passion.
+sed nss/pkg/pkg-config/nss.pc.in \
+    -e "s,%libdir%,/usr/lib,g" \
+    -e "s,%prefix%,/usr,g" \
+    -e "s,%exec_prefix%,/usr/bin,g" \
+    -e "s,%includedir%,/usr/include/nss,g" \
+    -e "s,%NSPR_VERSION%,4.29,g" \
+    -e "s,%NSS_VERSION%,3.67,g" |
+install -Dm644 /dev/stdin "$1/usr/lib/pkgconfig/nss.pc"
+
+# This is disgusting and I hate this package with a passion.
+sed nspr/Linux*/config/nspr.pc \
+    -e "s,/usr/local,/usr,g" |
+install -Dm644 /dev/stdin "$1/usr/lib/pkgconfig/nspr.pc"
diff --git a/community-mod/nss/checksums b/community-mod/nss/checksums
new file mode 100644
index 0000000..fde61a7
--- /dev/null
+++ b/community-mod/nss/checksums
@@ -0,0 +1 @@
+683a4fc92aad224fde8ba18d49bdbc6ef93716731167d4e85d5654765162f042
diff --git a/community-mod/nss/depends b/community-mod/nss/depends
new file mode 100644
index 0000000..48065a6
--- /dev/null
+++ b/community-mod/nss/depends
@@ -0,0 +1,4 @@
+linux-headers make
+perl          make
+sqlite
+zlib
diff --git a/community-mod/nss/sources b/community-mod/nss/sources
new file mode 100644
index 0000000..d8d1de1
--- /dev/null
+++ b/community-mod/nss/sources
@@ -0,0 +1 @@
+https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_67_RTM/src/nss-3.67-with-nspr-4.29.tar.gz
diff --git a/community-mod/nss/version b/community-mod/nss/version
new file mode 100644
index 0000000..abac1f1
--- /dev/null
+++ b/community-mod/nss/version
@@ -0,0 +1 @@
+3.67 1
diff --git a/community-mod/nvme-cli/build b/community-mod/nvme-cli/build
new file mode 100755
index 0000000..89fdd15
--- /dev/null
+++ b/community-mod/nvme-cli/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+# Makefile uses a flag which is incompatible with busybox.
+sed -i 's/644 -T/644 /g'                   Makefile
+
+# Build is broken with GCC 11
+sed -i '/<dirent.h>/a #include <limits.h>' nvme.h
+
+make
+make PREFIX=/usr SBINDIR=/usr/bin DESTDIR="$1" install
+
+# Remove systemd, dracut and autocompletion files
+rm -rf "$1/usr/lib"
+rm -rf "$1/etc/udev"
+rm -rf "$1/usr/share/zsh"
+rm -rf "$1/usr/share/bash-completion"
diff --git a/community-mod/nvme-cli/checksums b/community-mod/nvme-cli/checksums
new file mode 100644
index 0000000..72f3507
--- /dev/null
+++ b/community-mod/nvme-cli/checksums
@@ -0,0 +1 @@
+07ead5e006212310c424526c84b2ea2822677225e030a75ca96a7f8b48d786bb
diff --git a/community-mod/nvme-cli/depends b/community-mod/nvme-cli/depends
new file mode 100644
index 0000000..c4f3a54
--- /dev/null
+++ b/community-mod/nvme-cli/depends
@@ -0,0 +1,2 @@
+pkgconf make
+util-linux
diff --git a/community-mod/nvme-cli/sources b/community-mod/nvme-cli/sources
new file mode 100644
index 0000000..f3eda48
--- /dev/null
+++ b/community-mod/nvme-cli/sources
@@ -0,0 +1 @@
+https://github.com/linux-nvme/nvme-cli/archive/v1.14.tar.gz
diff --git a/community-mod/nvme-cli/version b/community-mod/nvme-cli/version
new file mode 100644
index 0000000..cfaaf4d
--- /dev/null
+++ b/community-mod/nvme-cli/version
@@ -0,0 +1 @@
+1.14 1
diff --git a/community-mod/oath-toolkit/build b/community-mod/oath-toolkit/build
new file mode 100755
index 0000000..4a259bc
--- /dev/null
+++ b/community-mod/oath-toolkit/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-pam
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/oath-toolkit/checksums b/community-mod/oath-toolkit/checksums
new file mode 100644
index 0000000..dad3aa4
--- /dev/null
+++ b/community-mod/oath-toolkit/checksums
@@ -0,0 +1 @@
+36eddfce8f2f36347fb257dbf878ba0303a2eaafe24eaa071d5cd302261046a9
diff --git a/community-mod/oath-toolkit/depends b/community-mod/oath-toolkit/depends
new file mode 100644
index 0000000..a7a81b1
--- /dev/null
+++ b/community-mod/oath-toolkit/depends
@@ -0,0 +1,2 @@
+libtool make
+xmlsec1
diff --git a/community-mod/oath-toolkit/sources b/community-mod/oath-toolkit/sources
new file mode 100644
index 0000000..e0161dc
--- /dev/null
+++ b/community-mod/oath-toolkit/sources
@@ -0,0 +1 @@
+https://download.savannah.nongnu.org/releases/oath-toolkit/oath-toolkit-2.6.7.tar.gz
diff --git a/community-mod/oath-toolkit/version b/community-mod/oath-toolkit/version
new file mode 100644
index 0000000..71897f1
--- /dev/null
+++ b/community-mod/oath-toolkit/version
@@ -0,0 +1 @@
+2.6.7 1
diff --git a/community-mod/oed/build b/community-mod/oed/build
new file mode 100755
index 0000000..c477e86
--- /dev/null
+++ b/community-mod/oed/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --mandir=/usr/share/man \
+    --prefix=/usr \
+    --program-name=ed
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/oed/checksums b/community-mod/oed/checksums
new file mode 100644
index 0000000..f094672
--- /dev/null
+++ b/community-mod/oed/checksums
@@ -0,0 +1 @@
+ce9bffe0c500015ef1b9745897c2e94fb65105b7ff0258d0dd362e994fea2a85  oed-6.7.tar.gz
diff --git a/community-mod/oed/sources b/community-mod/oed/sources
new file mode 100644
index 0000000..356369c
--- /dev/null
+++ b/community-mod/oed/sources
@@ -0,0 +1 @@
+https://github.com/ibara/oed/releases/download/oed-6.7/oed-6.7.tar.gz
diff --git a/community-mod/oed/version b/community-mod/oed/version
new file mode 100644
index 0000000..7662cc8
--- /dev/null
+++ b/community-mod/oed/version
@@ -0,0 +1 @@
+6.7 1 
diff --git a/community-mod/oksh/build b/community-mod/oksh/build
new file mode 100755
index 0000000..9cbf8f3
--- /dev/null
+++ b/community-mod/oksh/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+# We have an alternative system, use "ksh" and "sh" as binary names. 
+./configure \
+    --prefix=/usr \
+    --bindir=/usr/bin \
+    --mandir=/usr/share/man \
+    --enable-ksh \
+    --enable-sh
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/oksh/checksums b/community-mod/oksh/checksums
new file mode 100644
index 0000000..9e3d1ce
--- /dev/null
+++ b/community-mod/oksh/checksums
@@ -0,0 +1 @@
+c08d97b2ac9ee5d88e9e508d27c75502b2d06c20d4c5ab87b496cb3b9951bd35
diff --git a/community-mod/oksh/depends b/community-mod/oksh/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/oksh/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/oksh/post-install b/community-mod/oksh/post-install
new file mode 100755
index 0000000..6d77721
--- /dev/null
+++ b/community-mod/oksh/post-install
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+grep -qFx /usr/bin/ksh /etc/shells ||
+    printf /usr/bin/ksh\\n >>/etc/shells
diff --git a/community-mod/oksh/sources b/community-mod/oksh/sources
new file mode 100644
index 0000000..67e2b3a
--- /dev/null
+++ b/community-mod/oksh/sources
@@ -0,0 +1 @@
+https://github.com/ibara/oksh/releases/download/oksh-6.9/oksh-6.9.tar.gz
diff --git a/community-mod/oksh/version b/community-mod/oksh/version
new file mode 100644
index 0000000..3957d4e
--- /dev/null
+++ b/community-mod/oksh/version
@@ -0,0 +1 @@
+6.9 1
diff --git a/community-mod/openjpeg2/build b/community-mod/openjpeg2/build
new file mode 100755
index 0000000..5332ac4
--- /dev/null
+++ b/community-mod/openjpeg2/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+    -DCMAKE_SHARED_LIBS=True \
+    -DCMAKE_BUILD_TYPE=Release
+
+cmake --build build
+cmake --install build
diff --git a/community-mod/openjpeg2/checksums b/community-mod/openjpeg2/checksums
new file mode 100644
index 0000000..0c8061d
--- /dev/null
+++ b/community-mod/openjpeg2/checksums
@@ -0,0 +1 @@
+8702ba68b442657f11aaeb2b338443ca8d5fb95b0d845757968a7be31ef7f16d
diff --git a/community-mod/openjpeg2/depends b/community-mod/openjpeg2/depends
new file mode 100644
index 0000000..385f4dd
--- /dev/null
+++ b/community-mod/openjpeg2/depends
@@ -0,0 +1,5 @@
+libpng
+tiff
+lcms
+cmake make
+zlib
diff --git a/community-mod/openjpeg2/sources b/community-mod/openjpeg2/sources
new file mode 100644
index 0000000..027f57e
--- /dev/null
+++ b/community-mod/openjpeg2/sources
@@ -0,0 +1 @@
+https://github.com/uclouvain/openjpeg/archive/v2.4.0.tar.gz
diff --git a/community-mod/openjpeg2/version b/community-mod/openjpeg2/version
new file mode 100644
index 0000000..36c97d9
--- /dev/null
+++ b/community-mod/openjpeg2/version
@@ -0,0 +1 @@
+2.4.0 1 
diff --git a/community-mod/openvpn/build b/community-mod/openvpn/build
new file mode 100755
index 0000000..d7d4abe
--- /dev/null
+++ b/community-mod/openvpn/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --enable-iproute2 \
+    --enable-pkcs11 \
+    --enable-plugins \
+    --enable-password-save \
+    --enable-x509-alt-username \
+    --disable-plugin-auth-pam
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/openvpn/checksums b/community-mod/openvpn/checksums
new file mode 100644
index 0000000..a909813
--- /dev/null
+++ b/community-mod/openvpn/checksums
@@ -0,0 +1 @@
+40930489c837c05f6153f38e1ebaec244431ef1a034e4846ff732d71d59ff194
diff --git a/community-mod/openvpn/depends b/community-mod/openvpn/depends
new file mode 100644
index 0000000..73cd55c
--- /dev/null
+++ b/community-mod/openvpn/depends
@@ -0,0 +1,2 @@
+lzo
+pkcs11-helper
diff --git a/community-mod/openvpn/sources b/community-mod/openvpn/sources
new file mode 100644
index 0000000..a55a5c9
--- /dev/null
+++ b/community-mod/openvpn/sources
@@ -0,0 +1 @@
+https://swupdate.openvpn.org/community/releases/openvpn-2.5.1.tar.xz
diff --git a/community-mod/openvpn/version b/community-mod/openvpn/version
new file mode 100644
index 0000000..9ba16f5
--- /dev/null
+++ b/community-mod/openvpn/version
@@ -0,0 +1 @@
+2.5.1 1 
diff --git a/community-mod/optipng/build b/community-mod/optipng/build
new file mode 100755
index 0000000..5fcf83e
--- /dev/null
+++ b/community-mod/optipng/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --with-system-libs
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/optipng/checksums b/community-mod/optipng/checksums
new file mode 100644
index 0000000..a896211
--- /dev/null
+++ b/community-mod/optipng/checksums
@@ -0,0 +1 @@
+4f32f233cef870b3f95d3ad6428bfe4224ef34908f1b42b0badf858216654452
diff --git a/community-mod/optipng/depends b/community-mod/optipng/depends
new file mode 100644
index 0000000..071aca2
--- /dev/null
+++ b/community-mod/optipng/depends
@@ -0,0 +1,2 @@
+libpng
+zlib
diff --git a/community-mod/optipng/sources b/community-mod/optipng/sources
new file mode 100644
index 0000000..5fad921
--- /dev/null
+++ b/community-mod/optipng/sources
@@ -0,0 +1 @@
+https://prdownloads.sourceforge.net/optipng/optipng-0.7.7.tar.gz
diff --git a/community-mod/optipng/version b/community-mod/optipng/version
new file mode 100644
index 0000000..543d7ac
--- /dev/null
+++ b/community-mod/optipng/version
@@ -0,0 +1 @@
+0.7.7 1
diff --git a/community-mod/p11-kit/build b/community-mod/p11-kit/build
new file mode 100755
index 0000000..9374807
--- /dev/null
+++ b/community-mod/p11-kit/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/community-mod/p11-kit/checksums b/community-mod/p11-kit/checksums
new file mode 100644
index 0000000..c1ef7c0
--- /dev/null
+++ b/community-mod/p11-kit/checksums
@@ -0,0 +1 @@
+81e6140584f635e4e956a1b93a32239acf3811ff5b2d3a5c6094e94e99d2c685
diff --git a/community-mod/p11-kit/depends b/community-mod/p11-kit/depends
new file mode 100644
index 0000000..1c6c245
--- /dev/null
+++ b/community-mod/p11-kit/depends
@@ -0,0 +1,2 @@
+libffi
+meson make
diff --git a/community-mod/p11-kit/sources b/community-mod/p11-kit/sources
new file mode 100644
index 0000000..f27b748
--- /dev/null
+++ b/community-mod/p11-kit/sources
@@ -0,0 +1 @@
+https://github.com/p11-glue/p11-kit/releases/download/0.24.0/p11-kit-0.24.0.tar.xz
diff --git a/community-mod/p11-kit/version b/community-mod/p11-kit/version
new file mode 100644
index 0000000..f5001f0
--- /dev/null
+++ b/community-mod/p11-kit/version
@@ -0,0 +1 @@
+0.24.0 1
diff --git a/community-mod/patch/build b/community-mod/patch/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/community-mod/patch/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/patch/checksums b/community-mod/patch/checksums
new file mode 100644
index 0000000..584ddee
--- /dev/null
+++ b/community-mod/patch/checksums
@@ -0,0 +1 @@
+ac610bda97abe0d9f6b7c963255a11dcb196c25e337c61f94e4778d632f1d8fd  patch-2.7.6.tar.xz
diff --git a/community-mod/patch/sources b/community-mod/patch/sources
new file mode 100644
index 0000000..4587831
--- /dev/null
+++ b/community-mod/patch/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/patch/patch-2.7.6.tar.xz
diff --git a/community-mod/patch/version b/community-mod/patch/version
new file mode 100644
index 0000000..6f36a2e
--- /dev/null
+++ b/community-mod/patch/version
@@ -0,0 +1 @@
+2.7.6 1 
diff --git a/community-mod/pciutils/build b/community-mod/pciutils/build
new file mode 100755
index 0000000..6bc921d
--- /dev/null
+++ b/community-mod/pciutils/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+mk() {
+    make \
+        CC="${CC:-cc}" \
+        OPT="$CFLAGS -fPIC" \
+        ZLIB=yes \
+        PREFIX=/usr \
+        SBINDIR=/usr/bin \
+        SHAREDIR=/usr/share/hwdata \
+        "$@"
+}
+
+
+for shared in yes no; do (
+    cd "$shared"
+
+    mk SHARED="$shared"
+    mk SHARED="$shared" DESTDIR="$1" install install-lib
+) done
diff --git a/community-mod/pciutils/checksums b/community-mod/pciutils/checksums
new file mode 100644
index 0000000..415a88c
--- /dev/null
+++ b/community-mod/pciutils/checksums
@@ -0,0 +1,2 @@
+2432e7a2e12000502d36cf769ab6e5a0cf4931e5050ccaf8b02984b2d3cb0948  pciutils-3.7.0.tar.gz
+2432e7a2e12000502d36cf769ab6e5a0cf4931e5050ccaf8b02984b2d3cb0948  pciutils-3.7.0.tar.gz
diff --git a/community-mod/pciutils/depends b/community-mod/pciutils/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/community-mod/pciutils/depends
@@ -0,0 +1 @@
+zlib
diff --git a/community-mod/pciutils/sources b/community-mod/pciutils/sources
new file mode 100644
index 0000000..d098e75
--- /dev/null
+++ b/community-mod/pciutils/sources
@@ -0,0 +1,2 @@
+https://www.kernel.org/pub/software/utils/pciutils/pciutils-3.7.0.tar.gz yes
+https://www.kernel.org/pub/software/utils/pciutils/pciutils-3.7.0.tar.gz no
diff --git a/community-mod/pciutils/version b/community-mod/pciutils/version
new file mode 100644
index 0000000..ffa17dd
--- /dev/null
+++ b/community-mod/pciutils/version
@@ -0,0 +1 @@
+3.7.0 1 
diff --git a/community-mod/pcre/build b/community-mod/pcre/build
new file mode 100755
index 0000000..9e66a4b
--- /dev/null
+++ b/community-mod/pcre/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-utf8 \
+    --enable-unicode-properties
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/pcre/checksums b/community-mod/pcre/checksums
new file mode 100644
index 0000000..9d61417
--- /dev/null
+++ b/community-mod/pcre/checksums
@@ -0,0 +1 @@
+aecafd4af3bd0f3935721af77b889d9024b2e01d96b58471bd91a3063fb47728  pcre-8.44.tar.gz
diff --git a/community-mod/pcre/sources b/community-mod/pcre/sources
new file mode 100644
index 0000000..3824807
--- /dev/null
+++ b/community-mod/pcre/sources
@@ -0,0 +1 @@
+https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
diff --git a/community-mod/pcre/version b/community-mod/pcre/version
new file mode 100644
index 0000000..7c59171
--- /dev/null
+++ b/community-mod/pcre/version
@@ -0,0 +1 @@
+8.44 1 
diff --git a/community-mod/pcre2/build b/community-mod/pcre2/build
new file mode 100755
index 0000000..f086ea7
--- /dev/null
+++ b/community-mod/pcre2/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-pcre2-16 \
+    --enable-pcre2-32 \
+    --enable-pcre2grep-libz \
+    --enable-pcre2grep-libbz2 \
+    --enable-jit
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/pcre2/checksums b/community-mod/pcre2/checksums
new file mode 100644
index 0000000..9794f48
--- /dev/null
+++ b/community-mod/pcre2/checksums
@@ -0,0 +1 @@
+a9ef39278113542968c7c73a31cfcb81aca1faa64690f400b907e8ab6b4a665c
diff --git a/community-mod/pcre2/sources b/community-mod/pcre2/sources
new file mode 100644
index 0000000..2958d81
--- /dev/null
+++ b/community-mod/pcre2/sources
@@ -0,0 +1 @@
+https://ftp.pcre.org/pub/pcre/pcre2-10.36.tar.bz2
diff --git a/community-mod/pcre2/version b/community-mod/pcre2/version
new file mode 100644
index 0000000..825cf77
--- /dev/null
+++ b/community-mod/pcre2/version
@@ -0,0 +1 @@
+10.36 1 
diff --git a/community-mod/pfetch/build b/community-mod/pfetch/build
new file mode 100755
index 0000000..d033dd4
--- /dev/null
+++ b/community-mod/pfetch/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+install -Dm 755 pfetch "$1/usr/bin/pfetch"
diff --git a/community-mod/pfetch/checksums b/community-mod/pfetch/checksums
new file mode 100644
index 0000000..61c6944
--- /dev/null
+++ b/community-mod/pfetch/checksums
@@ -0,0 +1 @@
+d1f611e61c1f8ae55bd14f8f6054d06fcb9a2d973095367c1626842db66b3182  0.6.0.tar.gz
diff --git a/community-mod/pfetch/sources b/community-mod/pfetch/sources
new file mode 100644
index 0000000..f2c2556
--- /dev/null
+++ b/community-mod/pfetch/sources
@@ -0,0 +1 @@
+https://github.com/dylanaraps/pfetch/archive/0.6.0.tar.gz
diff --git a/community-mod/pfetch/version b/community-mod/pfetch/version
new file mode 100644
index 0000000..eb13fd2
--- /dev/null
+++ b/community-mod/pfetch/version
@@ -0,0 +1 @@
+0.6.0 1
diff --git a/community-mod/picom/build b/community-mod/picom/build
new file mode 100755
index 0000000..39599ad
--- /dev/null
+++ b/community-mod/picom/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    -Ddbus=false \
+    -Dregex=false \
+    . build
+
+ninja -C build
+ninja -C build install
diff --git a/community-mod/picom/checksums b/community-mod/picom/checksums
new file mode 100644
index 0000000..d44e355
--- /dev/null
+++ b/community-mod/picom/checksums
@@ -0,0 +1 @@
+9d0c2533985e9670ff175e717a42b5bf1a2a00ccde5cac1e1009f5d6ee7912ec
diff --git a/community-mod/picom/depends b/community-mod/picom/depends
new file mode 100644
index 0000000..a6bdc60
--- /dev/null
+++ b/community-mod/picom/depends
@@ -0,0 +1,8 @@
+libconfig
+libev
+meson   make
+pixman
+pkgconf make
+uthash  make
+xcb-util-image
+xcb-util-renderutil
diff --git a/community-mod/picom/sources b/community-mod/picom/sources
new file mode 100644
index 0000000..3039165
--- /dev/null
+++ b/community-mod/picom/sources
@@ -0,0 +1 @@
+https://github.com/yshui/picom/archive/v8.2.tar.gz
diff --git a/community-mod/picom/version b/community-mod/picom/version
new file mode 100644
index 0000000..2ca496f
--- /dev/null
+++ b/community-mod/picom/version
@@ -0,0 +1 @@
+8.2 1
diff --git a/community-mod/pkcs11-helper/build b/community-mod/pkcs11-helper/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/pkcs11-helper/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/pkcs11-helper/checksums b/community-mod/pkcs11-helper/checksums
new file mode 100644
index 0000000..a8e60e7
--- /dev/null
+++ b/community-mod/pkcs11-helper/checksums
@@ -0,0 +1 @@
+653730f0c561bbf5941754c0783976113589b2dc64a0661c908dc878bfa4e58b
diff --git a/community-mod/pkcs11-helper/depends b/community-mod/pkcs11-helper/depends
new file mode 100644
index 0000000..2996edd
--- /dev/null
+++ b/community-mod/pkcs11-helper/depends
@@ -0,0 +1 @@
+lzo
diff --git a/community-mod/pkcs11-helper/sources b/community-mod/pkcs11-helper/sources
new file mode 100644
index 0000000..70f5e65
--- /dev/null
+++ b/community-mod/pkcs11-helper/sources
@@ -0,0 +1 @@
+https://github.com/OpenSC/pkcs11-helper/releases/download/pkcs11-helper-1.27/pkcs11-helper-1.27.0.tar.bz2
diff --git a/community-mod/pkcs11-helper/version b/community-mod/pkcs11-helper/version
new file mode 100644
index 0000000..6a78dc9
--- /dev/null
+++ b/community-mod/pkcs11-helper/version
@@ -0,0 +1 @@
+1.27.0 1 
diff --git a/community-mod/poppler-data/build b/community-mod/poppler-data/build
new file mode 100755
index 0000000..0fa9b71
--- /dev/null
+++ b/community-mod/poppler-data/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make prefix=/usr DESTDIR="$1" install
diff --git a/community-mod/poppler-data/checksums b/community-mod/poppler-data/checksums
new file mode 100644
index 0000000..bf31b19
--- /dev/null
+++ b/community-mod/poppler-data/checksums
@@ -0,0 +1 @@
+6e2fcef66ec8c44625f94292ccf8af9f1d918b410d5aa69c274ce67387967b30
diff --git a/community-mod/poppler-data/sources b/community-mod/poppler-data/sources
new file mode 100644
index 0000000..6697a5f
--- /dev/null
+++ b/community-mod/poppler-data/sources
@@ -0,0 +1 @@
+https://poppler.freedesktop.org/poppler-data-0.4.10.tar.gz
diff --git a/community-mod/poppler-data/version b/community-mod/poppler-data/version
new file mode 100644
index 0000000..4c12412
--- /dev/null
+++ b/community-mod/poppler-data/version
@@ -0,0 +1 @@
+0.4.10 1
diff --git a/community-mod/poppler/build b/community-mod/poppler/build
new file mode 100755
index 0000000..2c2e2ad
--- /dev/null
+++ b/community-mod/poppler/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+    -DENABLE_BOOST=OFF \
+    -DENABLE_CPP=ON \
+    -DENABLE_QT5=OFF \
+    -DWITH_NSS3=OFF
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/poppler/checksums b/community-mod/poppler/checksums
new file mode 100644
index 0000000..d2ba713
--- /dev/null
+++ b/community-mod/poppler/checksums
@@ -0,0 +1 @@
+e26ab29f68065de4d6562f0a3e2b5435a83ca92be573b99a1c81998fa286a4d4
diff --git a/community-mod/poppler/depends b/community-mod/poppler/depends
new file mode 100644
index 0000000..4443109
--- /dev/null
+++ b/community-mod/poppler/depends
@@ -0,0 +1,4 @@
+cmake make
+fontconfig
+openjpeg2
+pkgconf make
diff --git a/community-mod/poppler/sources b/community-mod/poppler/sources
new file mode 100644
index 0000000..6d2b854
--- /dev/null
+++ b/community-mod/poppler/sources
@@ -0,0 +1 @@
+https://poppler.freedesktop.org/poppler-21.07.0.tar.xz
diff --git a/community-mod/poppler/version b/community-mod/poppler/version
new file mode 100644
index 0000000..683d00a
--- /dev/null
+++ b/community-mod/poppler/version
@@ -0,0 +1 @@
+21.07.0 1
diff --git a/community-mod/popt/build b/community-mod/popt/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/popt/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/popt/checksums b/community-mod/popt/checksums
new file mode 100644
index 0000000..2c445fa
--- /dev/null
+++ b/community-mod/popt/checksums
@@ -0,0 +1 @@
+5159bc03a20b28ce363aa96765f37df99ea4d8850b1ece17d1e6ad5c24fdc5d1  popt-1.18.tar.gz
diff --git a/community-mod/popt/sources b/community-mod/popt/sources
new file mode 100644
index 0000000..b3f0814
--- /dev/null
+++ b/community-mod/popt/sources
@@ -0,0 +1 @@
+https://fossies.org/linux/misc/popt-1.18.tar.gz
diff --git a/community-mod/popt/version b/community-mod/popt/version
new file mode 100644
index 0000000..4fd73f1
--- /dev/null
+++ b/community-mod/popt/version
@@ -0,0 +1 @@
+1.18 1
diff --git a/community-mod/postgresql/build b/community-mod/postgresql/build
new file mode 100755
index 0000000..0b4124d
--- /dev/null
+++ b/community-mod/postgresql/build
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --enable-thread-safety \
+    --with-libedit-preferred \
+    --with-openssl \
+    --with-uuid=e2fs \
+    --with-llvm
+
+make world
+make DESTDIR="$1" install
+
+install -Dm644 postgresqld.conf "$1/etc/default/postgresql"
+
+install -Dm644 "$1/usr/share/postgresql/postgresql.conf.sample" \
+    "$1/etc/postgresql/postgresql.conf"
+
+install -Dm755 postgresql.run         "$1/etc/sv/postgresql/run"
+ln -s /run/runit/supervise.postgresql "$1/etc/sv/postgresql/supervise"
diff --git a/community-mod/postgresql/checksums b/community-mod/postgresql/checksums
new file mode 100644
index 0000000..e70ef3e
--- /dev/null
+++ b/community-mod/postgresql/checksums
@@ -0,0 +1,3 @@
+0b54a8a68dbfaf5dcddd89eb3922740143df50fbea02fefda8de743d8af99516
+5f7540549d92d9579f3e2e1e09e8b47b51c62964ab67e7cf90c3fdc28f92d65f
+e75f6bb86488cbf2e2efcf91f753cae1d7f9879d5687bfe954ffed52338dd580
diff --git a/community-mod/postgresql/depends b/community-mod/postgresql/depends
new file mode 100644
index 0000000..991a1b6
--- /dev/null
+++ b/community-mod/postgresql/depends
@@ -0,0 +1,5 @@
+clang make
+libedit
+llvm
+python
+zlib
diff --git a/community-mod/postgresql/files/postgresql.run b/community-mod/postgresql/files/postgresql.run
new file mode 100755
index 0000000..2b721ba
--- /dev/null
+++ b/community-mod/postgresql/files/postgresql.run
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+. /etc/default/postgresql
+
+PGDATA="${PGDATA:-"$PGROOT/data"}"
+
+if [ "$PGROOT" != "/var/lib/postgresql" ]; then
+    # Remove /var/lib/postgres if empty dir, but not if symlink
+    if [ ! -L /var/lib/postgres ] && [ -d /var/lib/postgres ]; then
+        rmdir /var/lib/postgres
+    fi
+
+    ln -sf "$PGROOT" /var/lib/postgresql
+fi
+
+if [ ! -d "$PGDATA" ]; then
+    mkdir -p "$PGDATA"
+    chown -R postgres:postgres "$PGDATA"
+    chmod 0700 "$PGDATA"
+    su - postgres -c "/usr/bin/initdb $INITOPTS -D '$PGDATA'" >/dev/null
+
+    if [ -f /etc/postgresql/postgresql.conf ]; then
+        ln -sf /etc/postgresql/postgresql.conf "$PGDATA/postgresql.conf"
+    fi
+fi
+
+exec chpst -u postgres:postgres postgres -D "$PGDATA" $PGOPTS
diff --git a/community-mod/postgresql/files/postgresqld.conf b/community-mod/postgresql/files/postgresqld.conf
new file mode 100644
index 0000000..2a3cd14
--- /dev/null
+++ b/community-mod/postgresql/files/postgresqld.conf
@@ -0,0 +1,17 @@
+# Configuration file for the PostgreSQL server.
+
+# PostgreSQL's database directory
+PGROOT="/var/lib/postgresql"
+
+# PostgreSQL's log file.
+PGLOG="/var/log/postgresql.log"
+
+# Passed to initdb if necessary
+INITOPTS="-A peer --auth-host=md5 --auth-local=peer --locale en_US.UTF-8"
+
+# Extra options to run postmaster with, e.g.:
+# -N is the maximal number of client connections
+# -B is the number of shared buffers and has to be at least 2x the value for -N
+# Please read the man-page to postmaster for more options. Many of these options
+# can be set directly in the configuration-file.
+#PGOPTS="-N 512 -B 1024"
diff --git a/community-mod/postgresql/post-install b/community-mod/postgresql/post-install
new file mode 100755
index 0000000..0d80598
--- /dev/null
+++ b/community-mod/postgresql/post-install
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+cat <<EOF
+NOTE: postgresql needs it's own user for security reasons which can be
+      created by running the following command:
+# adduser postgres
+EOF
diff --git a/community-mod/postgresql/sources b/community-mod/postgresql/sources
new file mode 100644
index 0000000..09a7a63
--- /dev/null
+++ b/community-mod/postgresql/sources
@@ -0,0 +1,3 @@
+https://ftp.postgresql.org/pub/source/v13.3/postgresql-13.3.tar.gz
+files/postgresql.run
+files/postgresqld.conf
diff --git a/community-mod/postgresql/version b/community-mod/postgresql/version
new file mode 100644
index 0000000..ad0638b
--- /dev/null
+++ b/community-mod/postgresql/version
@@ -0,0 +1 @@
+13.3 1
diff --git a/community-mod/procps-ng/build b/community-mod/procps-ng/build
new file mode 100755
index 0000000..99f9abe
--- /dev/null
+++ b/community-mod/procps-ng/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+# Fix includes for w.c
+sed -i 's|HAVE_UTMPX_H|NO|g' w.c
+
+# Fix includes for proc/escape.c
+sed -i '/\#endif/a #include <langinfo.h>' proc/escape.c
+
+make CCLD="${CC:-cc} -all-static"
+make DESTDIR="$1" install
diff --git a/community-mod/procps-ng/checksums b/community-mod/procps-ng/checksums
new file mode 100644
index 0000000..f0d4ffa
--- /dev/null
+++ b/community-mod/procps-ng/checksums
@@ -0,0 +1 @@
+4518b3e7aafd34ec07d0063d250fd474999b20b200218c3ae56f5d2113f141b4
diff --git a/community-mod/procps-ng/depends b/community-mod/procps-ng/depends
new file mode 100644
index 0000000..2392c85
--- /dev/null
+++ b/community-mod/procps-ng/depends
@@ -0,0 +1 @@
+ncurses make
diff --git a/community-mod/procps-ng/sources b/community-mod/procps-ng/sources
new file mode 100644
index 0000000..7af0ea7
--- /dev/null
+++ b/community-mod/procps-ng/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/project/procps-ng/Production/procps-ng-3.3.17.tar.xz
diff --git a/community-mod/procps-ng/version b/community-mod/procps-ng/version
new file mode 100644
index 0000000..18737f8
--- /dev/null
+++ b/community-mod/procps-ng/version
@@ -0,0 +1 @@
+3.3.17 1
diff --git a/community-mod/python2/build b/community-mod/python2/build
new file mode 100755
index 0000000..ae85513
--- /dev/null
+++ b/community-mod/python2/build
@@ -0,0 +1,28 @@
+#!/bin/sh -e
+
+patch -p1 < python2-always-pip.patch
+
+./configure \
+    --prefix=/usr \
+    --with-ensurepip=yes
+
+make
+make DESTDIR="$1" install
+
+# Make static library writable.
+chmod u+w "$1/usr/lib/libpython"*.a
+
+# Let's make some kind of effort to reduce the overall
+# size of Python by removing a bunch of rarely used and
+# otherwise useless components.
+#
+# This can't be done via ./configure as the build system
+# doesn't give you this much control over the process.
+{
+    cd "$1/usr/lib/python"*
+    rm -rf test ./*/test ./*/tests
+    rm -rf lib2to3 pydoc* idlelib turtle* ensurepip lib-tk config
+
+    cd "$1/usr/bin"
+    rm -f 2to3* pydoc* idle* python pip
+}
diff --git a/community-mod/python2/checksums b/community-mod/python2/checksums
new file mode 100644
index 0000000..353fcb4
--- /dev/null
+++ b/community-mod/python2/checksums
@@ -0,0 +1,2 @@
+b62c0e7937551d0cc02b8fd5cb0f544f9405bafc9a54d3808ed4594812edef43  Python-2.7.18.tar.xz
+1a184c64f85d7a2fb57642135ea298ddd005684c5bd3e601b932cf31b82b9417  python2-always-pip.patch
diff --git a/community-mod/python2/depends b/community-mod/python2/depends
new file mode 100644
index 0000000..4711f7d
--- /dev/null
+++ b/community-mod/python2/depends
@@ -0,0 +1,3 @@
+bzip2
+sqlite
+zlib
diff --git a/community-mod/python2/patches/python2-always-pip.patch b/community-mod/python2/patches/python2-always-pip.patch
new file mode 100644
index 0000000..91789c9
--- /dev/null
+++ b/community-mod/python2/patches/python2-always-pip.patch
@@ -0,0 +1,13 @@
+diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py
+index 526dfd0..d85dc33 100644
+--- a/Lib/ensurepip/__init__.py
++++ b/Lib/ensurepip/__init__.py
+@@ -104,7 +104,7 @@ def _bootstrap(*, root=None, upgrade=False, user=False,
+             additional_paths.append(os.path.join(tmpdir, wheel_name))
+ 
+         # Construct the arguments to be passed to the pip command
+-        args = ["install", "--no-index", "--find-links", tmpdir]
++        args = ["install", "-I", "--no-index", "--find-links", tmpdir]
+         if root:
+             args += ["--root", root]
+         if upgrade:
diff --git a/community-mod/python2/sources b/community-mod/python2/sources
new file mode 100644
index 0000000..4a76f24
--- /dev/null
+++ b/community-mod/python2/sources
@@ -0,0 +1,2 @@
+https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tar.xz
+patches/python2-always-pip.patch
diff --git a/community-mod/python2/version b/community-mod/python2/version
new file mode 100644
index 0000000..63e5489
--- /dev/null
+++ b/community-mod/python2/version
@@ -0,0 +1 @@
+2.7.18 3
diff --git a/community-mod/qbe/build b/community-mod/qbe/build
new file mode 100755
index 0000000..52d87a9
--- /dev/null
+++ b/community-mod/qbe/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX="$1/usr" install
diff --git a/community-mod/qbe/sources b/community-mod/qbe/sources
new file mode 100644
index 0000000..fb51685
--- /dev/null
+++ b/community-mod/qbe/sources
@@ -0,0 +1 @@
+git+https://git.sr.ht/~mcf/qbe
diff --git a/community-mod/qbe/version b/community-mod/qbe/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/qbe/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/qemu/build b/community-mod/qemu/build
new file mode 100755
index 0000000..cf706de
--- /dev/null
+++ b/community-mod/qemu/build
@@ -0,0 +1,49 @@
+#!/bin/sh -e
+
+for patch in *.patch; do
+    patch -p1 < "$patch"
+done
+
+# This is required for linux-headers 5.10
+# If you encounter build failures using a later kernel,
+# comment out this line:
+sed -i 's/#include <sys\/sysinfo.h>//' linux-user/syscall.c
+
+# Remove bash dependency
+sed -i 's/env bash/env sh/g' Makefile
+
+# Build qemu-system* binaries dynamically linked
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --sysconfdir=/etc \
+    --disable-debug-info \
+    --disable-gtk \
+    --disable-docs \
+    --enable-sdl \
+    --enable-kvm \
+    --enable-pie \
+    --enable-curses \
+    --disable-user \
+    --disable-linux-user \
+    --enable-system
+
+make
+make DESTDIR="$1" PREFIX=/usr install
+make clean
+
+# Build qemu Linux user binaries statically linked.
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --sysconfdir=/etc \
+    --disable-debug-info \
+    --disable-gtk \
+    --disable-docs \
+    --disable-user \
+    --enable-linux-user \
+    --disable-system \
+    --static
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/qemu/checksums b/community-mod/qemu/checksums
new file mode 100644
index 0000000..62afe4f
--- /dev/null
+++ b/community-mod/qemu/checksums
@@ -0,0 +1,5 @@
+87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9
+9bffbc3b7361ad18886c877bd442e7b20d3939cb610be4126ef64b51129db03a
+263f7d49ce9e51885c4731e6e97228ae1c8892551bf5255eb5836fab8a310e1b
+714411e495bd973aca692a0bd7d56a178bcf3a44beff57bee993d801f7570bb1
+6b7c85cdc736b853731b0b81d22f4a7ea0345a4ed48f842806ee70d6a1501879
diff --git a/community-mod/qemu/depends b/community-mod/qemu/depends
new file mode 100644
index 0000000..9af6cab
--- /dev/null
+++ b/community-mod/qemu/depends
@@ -0,0 +1,9 @@
+glib
+libffi
+ncurses
+perl make
+pixman
+pkgconf make
+python
+samurai make
+sdl2
diff --git a/community-mod/qemu/patches/001-sigtrm-max.patch b/community-mod/qemu/patches/001-sigtrm-max.patch
new file mode 100644
index 0000000..d670008
--- /dev/null
+++ b/community-mod/qemu/patches/001-sigtrm-max.patch
@@ -0,0 +1,37 @@
+From 8fbb4e6797ed67310b74cbaaa061269db45a5b71 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Tue, 29 Apr 2014 15:51:31 +0200
+Subject: [PATCH] linux-user/signal.c: define __SIGRTMIN/MAX for non-GNU
+ platforms
+
+The __SIGRTMIN and __SIGRTMAX are glibc internals and are not available
+on all platforms, so we define those if they are missing.
+
+This is needed for musl libc.
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+---
+ linux-user/signal.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/linux-user/signal.c b/linux-user/signal.c
+index 5ca6d62b15..e917c16d91 100644
+--- a/linux-user/signal.c
++++ a/linux-user/signal.c
+@@ -25,6 +25,13 @@
+ #include "trace.h"
+ #include "signal-common.h"
+ 
++#ifndef __SIGRTMIN
++#define __SIGRTMIN 32
++#endif
++#ifndef __SIGRTMAX
++#define __SIGRTMAX (NSIG-1)
++#endif
++
+ static struct target_sigaction sigact_table[TARGET_NSIG];
+ 
+ static void host_signal_handler(int host_signum, siginfo_t *info,
+-- 
+2.23.0
+
diff --git a/community-mod/qemu/patches/002-syscall.patch b/community-mod/qemu/patches/002-syscall.patch
new file mode 100644
index 0000000..a3dcdf0
--- /dev/null
+++ b/community-mod/qemu/patches/002-syscall.patch
@@ -0,0 +1,28 @@
+--- a/linux-user/syscall.c.orig
++++ a/linux-user/syscall.c
+@@ -81,6 +81,16 @@
+ #include <sys/kcov.h>
+ #endif
+ 
++struct host_sigevent {                                                                                   
++    union sigval sigev_value;                                                                            
++    int sigev_signo;                                                                                     
++    int sigev_notify;                                                                                    
++    union {                                                                                              
++       int _pad[64-sizeof(int) * 2 + sizeof(union sigval)];                                              
++       int _tid;                                                                                         
++    } _sigev_un;                                                                                         
++}; 
++
+ #define termios host_termios
+ #define winsize host_winsize
+ #define termio host_termio
+@@ -7393,7 +7403,7 @@
+ }
+ #endif
+ 
+-static inline abi_long target_to_host_sigevent(struct sigevent *host_sevp,
++static inline abi_long target_to_host_sigevent(struct host_sigevent *host_sevp,
+                                                abi_ulong target_addr)
+ {
+     struct target_sigevent *target_sevp;
diff --git a/community-mod/qemu/patches/CVE-2021-20255.patch b/community-mod/qemu/patches/CVE-2021-20255.patch
new file mode 100644
index 0000000..970c00c
--- /dev/null
+++ b/community-mod/qemu/patches/CVE-2021-20255.patch
@@ -0,0 +1,43 @@
+CVE-2021-20255 patch adapted from QEMU patch by Stefan Weil
+
+Link: https://bugzilla.redhat.com/show_bug.cgi?id=1930646
+
+Signed-off-by: Neha Agarwal <nehaagarwal@microsoft.com>
+---
+diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c
+index 16e95ef9cc..2474cf3dc2 100644
+--- a/hw/net/eepro100.c
++++ b/hw/net/eepro100.c
+@@ -279,6 +279,9 @@ typedef struct {
+     /* Quasi static device properties (no need to save them). */
+     uint16_t stats_size;
+     bool has_extended_tcb_support;
++
++    /* Flag to avoid recursions. */
++    bool busy;
+ } EEPRO100State;
+
+ /* Word indices in EEPROM. */
+@@ -837,6 +840,14 @@ static void action_command(EEPRO100State *s)
+        Therefore we limit the number of iterations. */
+     unsigned max_loop_count = 16;
+
++    if (s->busy) {
++        /* Prevent recursions. */
++        logout("recursion in %s:%u\n", __FILE__, __LINE__);
++        return;
++    }
++
++    s->busy = true;
++
+     for (;;) {
+         bool bit_el;
+         bool bit_s;
+@@ -933,6 +944,7 @@ static void action_command(EEPRO100State *s)
+     }
+     TRACE(OTHER, logout("CU list empty\n"));
+     /* List is empty. Now CU is idle or suspended. */
++    s->busy = false;
+ }
+
+ static void eepro100_cu_command(EEPRO100State * s, uint8_t val)
diff --git a/community-mod/qemu/patches/CVE-2021-3527.patch b/community-mod/qemu/patches/CVE-2021-3527.patch
new file mode 100644
index 0000000..d87e5d8
--- /dev/null
+++ b/community-mod/qemu/patches/CVE-2021-3527.patch
@@ -0,0 +1,205 @@
+From 3f67e2e7f135b8be4117f3c2960e78d894feaa03 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 3 May 2021 15:29:11 +0200
+Subject: usb/hid: avoid dynamic stack allocation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use autofree heap allocation instead.
+
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Message-Id: <20210503132915.2335822-2-kraxel@redhat.com>
+---
+ hw/usb/dev-hid.c   | 2 +-
+ hw/usb/dev-wacom.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/usb/dev-hid.c b/hw/usb/dev-hid.c
+index fc39bab79f..1c7ae97c30 100644
+--- a/hw/usb/dev-hid.c
++++ b/hw/usb/dev-hid.c
+@@ -656,7 +656,7 @@ static void usb_hid_handle_data(USBDevice *dev, USBPacket *p)
+ {
+     USBHIDState *us = USB_HID(dev);
+     HIDState *hs = &us->hid;
+-    uint8_t buf[p->iov.size];
++    g_autofree uint8_t *buf = g_malloc(p->iov.size);
+     int len = 0;
+ 
+     switch (p->pid) {
+diff --git a/hw/usb/dev-wacom.c b/hw/usb/dev-wacom.c
+index b595048635..ed687bc9f1 100644
+--- a/hw/usb/dev-wacom.c
++++ b/hw/usb/dev-wacom.c
+@@ -301,7 +301,7 @@ static void usb_wacom_handle_control(USBDevice *dev, USBPacket *p,
+ static void usb_wacom_handle_data(USBDevice *dev, USBPacket *p)
+ {
+     USBWacomState *s = (USBWacomState *) dev;
+-    uint8_t buf[p->iov.size];
++    g_autofree uint8_t *buf = g_malloc(p->iov.size);
+     int len = 0;
+ 
+     switch (p->pid) {
+-- 
+cgit v1.2.2
+
+From 7ec54f9eb62b5d177e30eb8b1cad795a5f8d8986 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 3 May 2021 15:29:12 +0200
+Subject: usb/redir: avoid dynamic stack allocation (CVE-2021-3527)
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use autofree heap allocation instead.
+
+Fixes: 4f4321c11ff ("usb: use iovecs in USBPacket")
+Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Message-Id: <20210503132915.2335822-3-kraxel@redhat.com>
+---
+ hw/usb/redirect.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
+index 17f06f3417..6a75b0dc4a 100644
+--- a/hw/usb/redirect.c
++++ b/hw/usb/redirect.c
+@@ -620,7 +620,7 @@ static void usbredir_handle_iso_data(USBRedirDevice *dev, USBPacket *p,
+                 .endpoint = ep,
+                 .length = p->iov.size
+             };
+-            uint8_t buf[p->iov.size];
++            g_autofree uint8_t *buf = g_malloc(p->iov.size);
+             /* No id, we look at the ep when receiving a status back */
+             usb_packet_copy(p, buf, p->iov.size);
+             usbredirparser_send_iso_packet(dev->parser, 0, &iso_packet,
+@@ -818,7 +818,7 @@ static void usbredir_handle_bulk_data(USBRedirDevice *dev, USBPacket *p,
+         usbredirparser_send_bulk_packet(dev->parser, p->id,
+                                         &bulk_packet, NULL, 0);
+     } else {
+-        uint8_t buf[size];
++        g_autofree uint8_t *buf = g_malloc(size);
+         usb_packet_copy(p, buf, size);
+         usbredir_log_data(dev, "bulk data out:", buf, size);
+         usbredirparser_send_bulk_packet(dev->parser, p->id,
+@@ -923,7 +923,7 @@ static void usbredir_handle_interrupt_out_data(USBRedirDevice *dev,
+                                                USBPacket *p, uint8_t ep)
+ {
+     struct usb_redir_interrupt_packet_header interrupt_packet;
+-    uint8_t buf[p->iov.size];
++    g_autofree uint8_t *buf = g_malloc(p->iov.size);
+ 
+     DPRINTF("interrupt-out ep %02X len %zd id %"PRIu64"\n", ep,
+             p->iov.size, p->id);
+-- 
+cgit v1.2.2
+
+From 06aa50c06c6392084244f8169d34b8e2d9c43ef2 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 3 May 2021 15:29:13 +0200
+Subject: usb/mtp: avoid dynamic stack allocation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use autofree heap allocation instead.
+
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
+Message-Id: <20210503132915.2335822-4-kraxel@redhat.com>
+---
+ hw/usb/dev-mtp.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
+index bbb8274344..2a895a73b0 100644
+--- a/hw/usb/dev-mtp.c
++++ b/hw/usb/dev-mtp.c
+@@ -907,7 +907,8 @@ static MTPData *usb_mtp_get_object_handles(MTPState *s, MTPControl *c,
+                                            MTPObject *o)
+ {
+     MTPData *d = usb_mtp_data_alloc(c);
+-    uint32_t i = 0, handles[o->nchildren];
++    uint32_t i = 0;
++    g_autofree uint32_t *handles = g_new(uint32_t, o->nchildren);
+     MTPObject *iter;
+ 
+     trace_usb_mtp_op_get_object_handles(s->dev.addr, o->handle, o->path);
+-- 
+cgit v1.2.2
+
+From 3f8e5ae2a0cc0c482718a1c9ea111c94b7321b58 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 3 May 2021 15:29:14 +0200
+Subject: usb/xhci: sanity check packet size (CVE-2021-3527)
+
+Make sure the usb packet size is within the
+bounds of the endpoint configuration.
+
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Message-Id: <20210503132915.2335822-5-kraxel@redhat.com>
+---
+ hw/usb/hcd-xhci.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
+index 46212b1e69..7acfb8137b 100644
+--- a/hw/usb/hcd-xhci.c
++++ b/hw/usb/hcd-xhci.c
+@@ -1568,6 +1568,11 @@ static int xhci_setup_packet(XHCITransfer *xfer)
+         qemu_sglist_destroy(&xfer->sgl);
+         return -1;
+     }
++    if (xfer->packet.iov.size > ep->max_packet_size) {
++        usb_packet_unmap(&xfer->packet, &xfer->sgl);
++        qemu_sglist_destroy(&xfer->sgl);
++        return -1;
++    }
+     DPRINTF("xhci: setup packet pid 0x%x addr %d ep %d\n",
+             xfer->packet.pid, ep->dev->addr, ep->nr);
+     return 0;
+-- 
+cgit v1.2.2
+
+From 6d900b0752a72d1236a37dd31ff4a9e685e5ff56 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Mon, 3 May 2021 15:29:15 +0200
+Subject: usb: limit combined packets to 1 MiB (CVE-2021-3527)
+
+usb-host and usb-redirect try to batch bulk transfers by combining many
+small usb packets into a single, large transfer request, to reduce the
+overhead and improve performance.
+
+This patch adds a size limit of 1 MiB for those combined packets to
+restrict the host resources the guest can bind that way.
+
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Message-Id: <20210503132915.2335822-6-kraxel@redhat.com>
+---
+ hw/usb/combined-packet.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/hw/usb/combined-packet.c b/hw/usb/combined-packet.c
+index 5d57e883dc..e56802f89a 100644
+--- a/hw/usb/combined-packet.c
++++ b/hw/usb/combined-packet.c
+@@ -171,7 +171,9 @@ void usb_ep_combine_input_packets(USBEndpoint *ep)
+         if ((p->iov.size % ep->max_packet_size) != 0 || !p->short_not_ok ||
+                 next == NULL ||
+                 /* Work around for Linux usbfs bulk splitting + migration */
+-                (totalsize == (16 * KiB - 36) && p->int_req)) {
++                (totalsize == (16 * KiB - 36) && p->int_req) ||
++                /* Next package may grow combined package over 1MiB */
++                totalsize > 1 * MiB - ep->max_packet_size) {
+             usb_device_handle_data(ep->dev, first);
+             assert(first->status == USB_RET_ASYNC);
+             if (first->combined) {
+-- 
+cgit v1.2.2
+
diff --git a/community-mod/qemu/sources b/community-mod/qemu/sources
new file mode 100644
index 0000000..5757b60
--- /dev/null
+++ b/community-mod/qemu/sources
@@ -0,0 +1,5 @@
+https://download.qemu.org/qemu-6.0.0.tar.xz
+patches/001-sigtrm-max.patch
+patches/002-syscall.patch
+patches/CVE-2021-3527.patch
+patches/CVE-2021-20255.patch
diff --git a/community-mod/qemu/version b/community-mod/qemu/version
new file mode 100644
index 0000000..dd00d5d
--- /dev/null
+++ b/community-mod/qemu/version
@@ -0,0 +1 @@
+6.0.0 1
diff --git a/community-mod/qpdf/build b/community-mod/qpdf/build
new file mode 100755
index 0000000..7a59a2b
--- /dev/null
+++ b/community-mod/qpdf/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+sed -i 's/bash/sh/' make/libtool.mk
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+	
+make
+make DESTDIR="$1" install
diff --git a/community-mod/qpdf/checksums b/community-mod/qpdf/checksums
new file mode 100644
index 0000000..5725bf8
--- /dev/null
+++ b/community-mod/qpdf/checksums
@@ -0,0 +1 @@
+8f1f42d1c36f62cf5bb4d2511e80e4fc0125093adc7fc444bc96cb7e79e71402
diff --git a/community-mod/qpdf/depends b/community-mod/qpdf/depends
new file mode 100644
index 0000000..5cbbca0
--- /dev/null
+++ b/community-mod/qpdf/depends
@@ -0,0 +1,2 @@
+libjpeg-turbo
+zlib
diff --git a/community-mod/qpdf/sources b/community-mod/qpdf/sources
new file mode 100644
index 0000000..246e6fb
--- /dev/null
+++ b/community-mod/qpdf/sources
@@ -0,0 +1 @@
+https://github.com/qpdf/qpdf/archive/release-qpdf-10.3.2.tar.gz
diff --git a/community-mod/qpdf/version b/community-mod/qpdf/version
new file mode 100644
index 0000000..47efaeb
--- /dev/null
+++ b/community-mod/qpdf/version
@@ -0,0 +1 @@
+10.3.2 1 
diff --git a/community-mod/qrencode/build b/community-mod/qrencode/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/qrencode/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/qrencode/checksums b/community-mod/qrencode/checksums
new file mode 100644
index 0000000..8cb00e6
--- /dev/null
+++ b/community-mod/qrencode/checksums
@@ -0,0 +1 @@
+da448ed4f52aba6bcb0cd48cac0dd51b8692bccc4cd127431402fca6f8171e8e
diff --git a/community-mod/qrencode/depends b/community-mod/qrencode/depends
new file mode 100644
index 0000000..5db9cf2
--- /dev/null
+++ b/community-mod/qrencode/depends
@@ -0,0 +1,2 @@
+libpng
+sdl2
diff --git a/community-mod/qrencode/sources b/community-mod/qrencode/sources
new file mode 100644
index 0000000..53ac208
--- /dev/null
+++ b/community-mod/qrencode/sources
@@ -0,0 +1 @@
+https://fukuchi.org/works/qrencode/qrencode-4.1.1.tar.gz
diff --git a/community-mod/qrencode/version b/community-mod/qrencode/version
new file mode 100644
index 0000000..7b6aadf
--- /dev/null
+++ b/community-mod/qrencode/version
@@ -0,0 +1 @@
+4.1.1 1
diff --git a/community-mod/radare2/build b/community-mod/radare2/build
new file mode 100755
index 0000000..0e9165b
--- /dev/null
+++ b/community-mod/radare2/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/radare2/checksums b/community-mod/radare2/checksums
new file mode 100644
index 0000000..f2229f3
--- /dev/null
+++ b/community-mod/radare2/checksums
@@ -0,0 +1 @@
+f95cbbba27f427bc3da41e9296e632c4bba1c47d107a9c911e82a524c136c406
diff --git a/community-mod/radare2/sources b/community-mod/radare2/sources
new file mode 100644
index 0000000..b081ae7
--- /dev/null
+++ b/community-mod/radare2/sources
@@ -0,0 +1 @@
+https://github.com/radareorg/radare2/archive/refs/tags/5.3.1.tar.gz
diff --git a/community-mod/radare2/version b/community-mod/radare2/version
new file mode 100644
index 0000000..fdacdc0
--- /dev/null
+++ b/community-mod/radare2/version
@@ -0,0 +1 @@
+5.3.1 1
diff --git a/community-mod/rdrview/build b/community-mod/rdrview/build
new file mode 100755
index 0000000..954aa1f
--- /dev/null
+++ b/community-mod/rdrview/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/rdrview/depends b/community-mod/rdrview/depends
new file mode 100644
index 0000000..baf764f
--- /dev/null
+++ b/community-mod/rdrview/depends
@@ -0,0 +1,3 @@
+curl
+libseccomp
+libxml2
diff --git a/community-mod/rdrview/sources b/community-mod/rdrview/sources
new file mode 100644
index 0000000..8632e93
--- /dev/null
+++ b/community-mod/rdrview/sources
@@ -0,0 +1 @@
+git+https://github.com/eafer/rdrview
diff --git a/community-mod/rdrview/version b/community-mod/rdrview/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/rdrview/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/readline/build b/community-mod/readline/build
new file mode 100755
index 0000000..b19251e
--- /dev/null
+++ b/community-mod/readline/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -fPIC"
+
+./configure \
+    --prefix=/usr
+
+make SHLIB_LIBS=-lncurses
+make DESTDIR="$1" install
diff --git a/community-mod/readline/checksums b/community-mod/readline/checksums
new file mode 100644
index 0000000..d3ca8ea
--- /dev/null
+++ b/community-mod/readline/checksums
@@ -0,0 +1 @@
+f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02
diff --git a/community-mod/readline/depends b/community-mod/readline/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/readline/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/readline/sources b/community-mod/readline/sources
new file mode 100644
index 0000000..b66a1b2
--- /dev/null
+++ b/community-mod/readline/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/readline/readline-8.1.tar.gz
diff --git a/community-mod/readline/version b/community-mod/readline/version
new file mode 100644
index 0000000..e2d1666
--- /dev/null
+++ b/community-mod/readline/version
@@ -0,0 +1 @@
+8.1 1
diff --git a/community-mod/retrogram-rtlsdr/build b/community-mod/retrogram-rtlsdr/build
new file mode 100755
index 0000000..3bee14a
--- /dev/null
+++ b/community-mod/retrogram-rtlsdr/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+make
+
+install -Dm755 retrogram-rtlsdr "$1/usr/bin/retrogram-rtlsdr"
diff --git a/community-mod/retrogram-rtlsdr/checksums b/community-mod/retrogram-rtlsdr/checksums
new file mode 100644
index 0000000..761d70f
--- /dev/null
+++ b/community-mod/retrogram-rtlsdr/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/r4d10n/retrogram-rtlsdr.git
diff --git a/community-mod/retrogram-rtlsdr/depends b/community-mod/retrogram-rtlsdr/depends
new file mode 100644
index 0000000..d579dbe
--- /dev/null
+++ b/community-mod/retrogram-rtlsdr/depends
@@ -0,0 +1 @@
+boost
diff --git a/community-mod/retrogram-rtlsdr/sources b/community-mod/retrogram-rtlsdr/sources
new file mode 100644
index 0000000..62ae9b6
--- /dev/null
+++ b/community-mod/retrogram-rtlsdr/sources
@@ -0,0 +1 @@
+git+https://github.com/r4d10n/retrogram-rtlsdr.git
diff --git a/community-mod/retrogram-rtlsdr/version b/community-mod/retrogram-rtlsdr/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/retrogram-rtlsdr/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/rpcsvc-proto/build b/community-mod/rpcsvc-proto/build
new file mode 100755
index 0000000..8427c0c
--- /dev/null
+++ b/community-mod/rpcsvc-proto/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
+
diff --git a/community-mod/rpcsvc-proto/checksums b/community-mod/rpcsvc-proto/checksums
new file mode 100644
index 0000000..4d67e11
--- /dev/null
+++ b/community-mod/rpcsvc-proto/checksums
@@ -0,0 +1 @@
+678851b9f7ddf4410d2859c12016b65a6dd1a0728d478f18aeb54d165352f17c  rpcsvc-proto-1.4.2.tar.xz
diff --git a/community-mod/rpcsvc-proto/sources b/community-mod/rpcsvc-proto/sources
new file mode 100644
index 0000000..26ded5b
--- /dev/null
+++ b/community-mod/rpcsvc-proto/sources
@@ -0,0 +1 @@
+https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4.2/rpcsvc-proto-1.4.2.tar.xz
diff --git a/community-mod/rpcsvc-proto/version b/community-mod/rpcsvc-proto/version
new file mode 100644
index 0000000..4ff136a
--- /dev/null
+++ b/community-mod/rpcsvc-proto/version
@@ -0,0 +1 @@
+1.4.2 1
diff --git a/community-mod/rtorrent/build b/community-mod/rtorrent/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/rtorrent/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/rtorrent/checksums b/community-mod/rtorrent/checksums
new file mode 100644
index 0000000..36231c4
--- /dev/null
+++ b/community-mod/rtorrent/checksums
@@ -0,0 +1 @@
+9edf0304bf142215d3bc85a0771446b6a72d0ad8218efbe184b41e4c9c7542af  rtorrent-0.9.8.tar.gz
diff --git a/community-mod/rtorrent/depends b/community-mod/rtorrent/depends
new file mode 100644
index 0000000..5923a7f
--- /dev/null
+++ b/community-mod/rtorrent/depends
@@ -0,0 +1 @@
+libtorrent
diff --git a/community-mod/rtorrent/sources b/community-mod/rtorrent/sources
new file mode 100644
index 0000000..be07c20
--- /dev/null
+++ b/community-mod/rtorrent/sources
@@ -0,0 +1 @@
+https://rtorrent.net/downloads/rtorrent-0.9.8.tar.gz
diff --git a/community-mod/rtorrent/version b/community-mod/rtorrent/version
new file mode 100644
index 0000000..071d54e
--- /dev/null
+++ b/community-mod/rtorrent/version
@@ -0,0 +1 @@
+0.9.8 1
diff --git a/community-mod/ruby/build b/community-mod/ruby/build
new file mode 100755
index 0000000..276e5c2
--- /dev/null
+++ b/community-mod/ruby/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared \
+    --disable-rpath
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/ruby/checksums b/community-mod/ruby/checksums
new file mode 100644
index 0000000..8988aee
--- /dev/null
+++ b/community-mod/ruby/checksums
@@ -0,0 +1 @@
+369825db2199f6aeef16b408df6a04ebaddb664fb9af0ec8c686b0ce7ab77727
diff --git a/community-mod/ruby/depends b/community-mod/ruby/depends
new file mode 100644
index 0000000..d01671c
--- /dev/null
+++ b/community-mod/ruby/depends
@@ -0,0 +1,2 @@
+libffi
+zlib
diff --git a/community-mod/ruby/sources b/community-mod/ruby/sources
new file mode 100644
index 0000000..09c3345
--- /dev/null
+++ b/community-mod/ruby/sources
@@ -0,0 +1 @@
+https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.1.tar.gz
diff --git a/community-mod/ruby/version b/community-mod/ruby/version
new file mode 100644
index 0000000..51545db
--- /dev/null
+++ b/community-mod/ruby/version
@@ -0,0 +1 @@
+3.0.1 1
diff --git a/community-mod/s6-linux-init/build b/community-mod/s6-linux-init/build
new file mode 100755
index 0000000..83f3954
--- /dev/null
+++ b/community-mod/s6-linux-init/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    --skeldir=/etc/s6-linux-init/skel
+
+make
+make DESTDIR="$1" install
+
+# Create symbolic links so they can be used by kiss alternatives.
+for file in halt poweroff reboot init shutdown telinit; do
+    ln -s "/etc/s6-linux-init/current/bin/$file" "$1/usr/bin"
+done
diff --git a/community-mod/s6-linux-init/checksums b/community-mod/s6-linux-init/checksums
new file mode 100644
index 0000000..da9dfb9
--- /dev/null
+++ b/community-mod/s6-linux-init/checksums
@@ -0,0 +1 @@
+29e368516b1a3c61a6d1f8680645cc122a2e02127debec91738f170a3b93b8c5
diff --git a/community-mod/s6-linux-init/depends b/community-mod/s6-linux-init/depends
new file mode 100644
index 0000000..9f9f4aa
--- /dev/null
+++ b/community-mod/s6-linux-init/depends
@@ -0,0 +1,3 @@
+execline
+s6
+skalibs
diff --git a/community-mod/s6-linux-init/post-install b/community-mod/s6-linux-init/post-install
new file mode 100755
index 0000000..c535ee9
--- /dev/null
+++ b/community-mod/s6-linux-init/post-install
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+if [ ! -e /etc/s6-linux-init/current ]; then
+    s6-linux-init-maker /etc/s6-linux-init/current
+fi
+
+echo 's6-linux-init: Remember to add your service manager in /etc/s6-linux-init/current/scripts/*'
diff --git a/community-mod/s6-linux-init/sources b/community-mod/s6-linux-init/sources
new file mode 100644
index 0000000..be34337
--- /dev/null
+++ b/community-mod/s6-linux-init/sources
@@ -0,0 +1 @@
+https://www.skarnet.org/software/s6-linux-init/s6-linux-init-1.0.6.3.tar.gz
diff --git a/community-mod/s6-linux-init/version b/community-mod/s6-linux-init/version
new file mode 100644
index 0000000..547e339
--- /dev/null
+++ b/community-mod/s6-linux-init/version
@@ -0,0 +1 @@
+1.0.6.3 1
diff --git a/community-mod/s6-rc/build b/community-mod/s6-rc/build
new file mode 100755
index 0000000..1bd73d3
--- /dev/null
+++ b/community-mod/s6-rc/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/s6-rc/checksums b/community-mod/s6-rc/checksums
new file mode 100644
index 0000000..f1e76b1
--- /dev/null
+++ b/community-mod/s6-rc/checksums
@@ -0,0 +1 @@
+2a8d1cd455c05c8502b34517cfe79841aa46d08ad969076b37a15d3910617f89
diff --git a/community-mod/s6-rc/depends b/community-mod/s6-rc/depends
new file mode 100644
index 0000000..9f9f4aa
--- /dev/null
+++ b/community-mod/s6-rc/depends
@@ -0,0 +1,3 @@
+execline
+s6
+skalibs
diff --git a/community-mod/s6-rc/sources b/community-mod/s6-rc/sources
new file mode 100644
index 0000000..e7f0fbe
--- /dev/null
+++ b/community-mod/s6-rc/sources
@@ -0,0 +1 @@
+https://skarnet.org/software/s6-rc/s6-rc-0.5.2.2.tar.gz
diff --git a/community-mod/s6-rc/version b/community-mod/s6-rc/version
new file mode 100644
index 0000000..d325fc7
--- /dev/null
+++ b/community-mod/s6-rc/version
@@ -0,0 +1 @@
+0.5.2.2 1
diff --git a/community-mod/s6/build b/community-mod/s6/build
new file mode 100755
index 0000000..c690010
--- /dev/null
+++ b/community-mod/s6/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/s6/checksums b/community-mod/s6/checksums
new file mode 100644
index 0000000..e8c223d
--- /dev/null
+++ b/community-mod/s6/checksums
@@ -0,0 +1 @@
+1d21373151704150df0e8ed199f097f6ee5d2befb9a68aca4f20f3862e5d8757
diff --git a/community-mod/s6/depends b/community-mod/s6/depends
new file mode 100644
index 0000000..1f57905
--- /dev/null
+++ b/community-mod/s6/depends
@@ -0,0 +1,2 @@
+execline
+skalibs
diff --git a/community-mod/s6/sources b/community-mod/s6/sources
new file mode 100644
index 0000000..c4febc4
--- /dev/null
+++ b/community-mod/s6/sources
@@ -0,0 +1 @@
+https://skarnet.org/software/s6/s6-2.10.0.3.tar.gz
diff --git a/community-mod/s6/version b/community-mod/s6/version
new file mode 100644
index 0000000..498595b
--- /dev/null
+++ b/community-mod/s6/version
@@ -0,0 +1 @@
+2.10.0.3 1
diff --git a/community-mod/sbase/build b/community-mod/sbase/build
new file mode 100755
index 0000000..7febc55
--- /dev/null
+++ b/community-mod/sbase/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+# Make sbase tar accept arguments without dash
+patch -p1 < tar-dash-remove.patch
+
+make LDFLAGS="$LDFLAGS -static" sbase-box
+make DESTDIR="$1" PREFIX=/usr   sbase-box-install
+
+# Unlink sed, because '-i' is widely used
+unlink "$1/usr/bin/sed"
diff --git a/community-mod/sbase/checksums b/community-mod/sbase/checksums
new file mode 100644
index 0000000..87406b3
--- /dev/null
+++ b/community-mod/sbase/checksums
@@ -0,0 +1 @@
+e3db05a871c6344960ed05eb848557937d0f01070833a885eb06113966d74a10
diff --git a/community-mod/sbase/patches/tar-dash-remove.patch b/community-mod/sbase/patches/tar-dash-remove.patch
new file mode 100644
index 0000000..ec498b5
--- /dev/null
+++ b/community-mod/sbase/patches/tar-dash-remove.patch
@@ -0,0 +1,29 @@
+From d50db4931d75ed1c8100f6a933175deb5976a196 Mon Sep 17 00:00:00 2001
+From: Ethan Sommer <e5ten.arch@gmail.com>
+Date: Thu, 14 May 2020 12:02:51 -0400
+Subject: [PATCH] tar: if first argument doesn't have a leading dash, prepend
+ one
+
+this allows tar to be called in the common form "tar <key>" instead of only
+allowing "tar -<key>"
+---
+ tar.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/tar.c b/tar.c
+index 603e544..759402e 100644
+--- a/tar.c
++++ b/tar.c
+@@ -520,6 +520,12 @@ main(int argc, char *argv[])
+ 	char *file = NULL, *dir = ".", mode = '\0';
+ 	int fd;
+ 
++	if (argc >= 2 && argv[1][0] != '-') {
++		char *argv1 = emalloc(strlen(argv[1] + 2));
++		sprintf(argv1, "-%s", argv[1]);
++		argv[1] = argv1;
++	}
++
+ 	ARGBEGIN {
+ 	case 'x':
+ 	case 'c':
diff --git a/community-mod/sbase/sources b/community-mod/sbase/sources
new file mode 100644
index 0000000..d2dd60b
--- /dev/null
+++ b/community-mod/sbase/sources
@@ -0,0 +1,2 @@
+git+git://git.suckless.org/sbase
+patches/tar-dash-remove.patch
diff --git a/community-mod/sbase/version b/community-mod/sbase/version
new file mode 100644
index 0000000..8202611
--- /dev/null
+++ b/community-mod/sbase/version
@@ -0,0 +1 @@
+git 2
diff --git a/community-mod/sc-im/build b/community-mod/sc-im/build
new file mode 100755
index 0000000..c706eec
--- /dev/null
+++ b/community-mod/sc-im/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -fcommon"
+
+make -C src
+make -C src \
+    DESTDIR="$1" \
+    prefix=/usr \
+    install
diff --git a/community-mod/sc-im/checksums b/community-mod/sc-im/checksums
new file mode 100644
index 0000000..1ce390f
--- /dev/null
+++ b/community-mod/sc-im/checksums
@@ -0,0 +1 @@
+7f00c98601e7f7709431fb4cbb83707c87016a3b015d48e5a7c2f018eff4b7f7
diff --git a/community-mod/sc-im/depends b/community-mod/sc-im/depends
new file mode 100644
index 0000000..82c37a6
--- /dev/null
+++ b/community-mod/sc-im/depends
@@ -0,0 +1,2 @@
+bison make
+ncurses
diff --git a/community-mod/sc-im/sources b/community-mod/sc-im/sources
new file mode 100644
index 0000000..58bcc22
--- /dev/null
+++ b/community-mod/sc-im/sources
@@ -0,0 +1 @@
+https://github.com/andmarti1424/sc-im/archive/v0.8.2.tar.gz
diff --git a/community-mod/sc-im/version b/community-mod/sc-im/version
new file mode 100644
index 0000000..10f0f2d
--- /dev/null
+++ b/community-mod/sc-im/version
@@ -0,0 +1 @@
+0.8.2 1 
diff --git a/community-mod/sc/build b/community-mod/sc/build
new file mode 100755
index 0000000..128e754
--- /dev/null
+++ b/community-mod/sc/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure
+
+make
+make \
+    DESTDIR="$1" \
+    EXDIR="$1/usr/bin" \
+    LIBDIR="$1/usr/lib" \
+    MANDIR="$1/usr/share/man" \
+    PREFIX=/usr \
+    install
diff --git a/community-mod/sc/checksums b/community-mod/sc/checksums
new file mode 100644
index 0000000..db200f3
--- /dev/null
+++ b/community-mod/sc/checksums
@@ -0,0 +1 @@
+1802c9d3d60dac85feb783adf967bc0d2fd7e5f592d9d1df15e4e87d83efcf14  7.16_1.1.2.tar.gz
diff --git a/community-mod/sc/depends b/community-mod/sc/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/sc/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/sc/sources b/community-mod/sc/sources
new file mode 100644
index 0000000..0dda239
--- /dev/null
+++ b/community-mod/sc/sources
@@ -0,0 +1 @@
+https://github.com/n-t-roff/sc/archive/7.16_1.1.2.tar.gz
diff --git a/community-mod/sc/version b/community-mod/sc/version
new file mode 100644
index 0000000..aa2a5ba
--- /dev/null
+++ b/community-mod/sc/version
@@ -0,0 +1 @@
+7.16_1.1.2 1 
diff --git a/community-mod/scdoc/build b/community-mod/scdoc/build
new file mode 100755
index 0000000..88032b7
--- /dev/null
+++ b/community-mod/scdoc/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/scdoc/checksums b/community-mod/scdoc/checksums
new file mode 100644
index 0000000..ff3e998
--- /dev/null
+++ b/community-mod/scdoc/checksums
@@ -0,0 +1 @@
+1098a1ed2e087596fc0b3f657c1c8a5e00412267aa4baf3619e36824306645b1
diff --git a/community-mod/scdoc/sources b/community-mod/scdoc/sources
new file mode 100644
index 0000000..5f2684d
--- /dev/null
+++ b/community-mod/scdoc/sources
@@ -0,0 +1 @@
+https://git.sr.ht/~sircmpwn/scdoc/archive/1.11.1.tar.gz
diff --git a/community-mod/scdoc/version b/community-mod/scdoc/version
new file mode 100644
index 0000000..2cfc561
--- /dev/null
+++ b/community-mod/scdoc/version
@@ -0,0 +1 @@
+1.11.1 1
diff --git a/community-mod/screen/build b/community-mod/screen/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/screen/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/screen/checksums b/community-mod/screen/checksums
new file mode 100644
index 0000000..1d6941d
--- /dev/null
+++ b/community-mod/screen/checksums
@@ -0,0 +1 @@
+6e11b13d8489925fde25dfb0935bf6ed71f9eb47eff233a181e078fde5655aa1  screen-4.8.0.tar.gz
diff --git a/community-mod/screen/sources b/community-mod/screen/sources
new file mode 100644
index 0000000..fb4f937
--- /dev/null
+++ b/community-mod/screen/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/screen/screen-4.8.0.tar.gz
diff --git a/community-mod/screen/version b/community-mod/screen/version
new file mode 100644
index 0000000..94f04f6
--- /dev/null
+++ b/community-mod/screen/version
@@ -0,0 +1 @@
+4.8.0 1 
diff --git a/community-mod/scroll/build b/community-mod/scroll/build
new file mode 100755
index 0000000..954aa1f
--- /dev/null
+++ b/community-mod/scroll/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/scroll/checksums b/community-mod/scroll/checksums
new file mode 100644
index 0000000..337b29a
--- /dev/null
+++ b/community-mod/scroll/checksums
@@ -0,0 +1 @@
+git  git+git://git.suckless.org/scroll
diff --git a/community-mod/scroll/sources b/community-mod/scroll/sources
new file mode 100644
index 0000000..4a630e2
--- /dev/null
+++ b/community-mod/scroll/sources
@@ -0,0 +1 @@
+git+git://git.suckless.org/scroll
diff --git a/community-mod/scroll/version b/community-mod/scroll/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/scroll/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/scrot/build b/community-mod/scrot/build
new file mode 100755
index 0000000..13959c4
--- /dev/null
+++ b/community-mod/scrot/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/scrot/checksums b/community-mod/scrot/checksums
new file mode 100644
index 0000000..24aeda4
--- /dev/null
+++ b/community-mod/scrot/checksums
@@ -0,0 +1 @@
+ca9156a06b468334e18220040b2984da60136f6a2e0e979f668eda6e3f1e1c05  scrot-0.8.tar.gz
diff --git a/community-mod/scrot/depends b/community-mod/scrot/depends
new file mode 100644
index 0000000..e8bd8c3
--- /dev/null
+++ b/community-mod/scrot/depends
@@ -0,0 +1 @@
+giblib
diff --git a/community-mod/scrot/sources b/community-mod/scrot/sources
new file mode 100644
index 0000000..5f3150b
--- /dev/null
+++ b/community-mod/scrot/sources
@@ -0,0 +1 @@
+https://github.com/dreamer/scrot/archive/scrot-0.8.tar.gz
diff --git a/community-mod/scrot/version b/community-mod/scrot/version
new file mode 100644
index 0000000..330ad2d
--- /dev/null
+++ b/community-mod/scrot/version
@@ -0,0 +1 @@
+0.8 1
diff --git a/community-mod/sct/build b/community-mod/sct/build
new file mode 100755
index 0000000..ab9d50c
--- /dev/null
+++ b/community-mod/sct/build
@@ -0,0 +1,5 @@
+#!/bin/sh -e
+
+cc -std=c99 -O2 -I /usr/X11R6/include -o sct sct.c -L /usr/X11R6/lib -lm -lX11 -lXrandr
+
+install -Dm755 sct "$1/usr/bin/sct"
diff --git a/community-mod/sct/checksums b/community-mod/sct/checksums
new file mode 100644
index 0000000..e7599cb
--- /dev/null
+++ b/community-mod/sct/checksums
@@ -0,0 +1 @@
+0dda697ec3f4129d793f8896743d82be09934883f5aeda05c4a2193d7ab3c305
diff --git a/community-mod/sct/depends b/community-mod/sct/depends
new file mode 100644
index 0000000..0444ec4
--- /dev/null
+++ b/community-mod/sct/depends
@@ -0,0 +1,6 @@
+libX11
+libXau
+libXext
+libXrandr
+libXrender
+libxcb
diff --git a/community-mod/sct/sources b/community-mod/sct/sources
new file mode 100644
index 0000000..009c620
--- /dev/null
+++ b/community-mod/sct/sources
@@ -0,0 +1 @@
+https://flak.tedunangst.com/files/sct.c
diff --git a/community-mod/sct/version b/community-mod/sct/version
new file mode 100644
index 0000000..95cb2aa
--- /dev/null
+++ b/community-mod/sct/version
@@ -0,0 +1 @@
+2018.12.18 1
diff --git a/community-mod/sdcv/build b/community-mod/sdcv/build
new file mode 100755
index 0000000..c984593
--- /dev/null
+++ b/community-mod/sdcv/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DWITH_READLINE=False \
+    -DENABLE_NLS=False
+
+cmake --build   build
+cmake --install build
+
+# Remove man page translations.
+rm -rf "$1/usr/share/man/uk"
diff --git a/community-mod/sdcv/checksums b/community-mod/sdcv/checksums
new file mode 100644
index 0000000..d09ca48
--- /dev/null
+++ b/community-mod/sdcv/checksums
@@ -0,0 +1 @@
+75fb95b1607fdd2fb9f7795d3432d295904614150575ae539202f680499803c9  v0.5.3.tar.gz
diff --git a/community-mod/sdcv/depends b/community-mod/sdcv/depends
new file mode 100644
index 0000000..d890086
--- /dev/null
+++ b/community-mod/sdcv/depends
@@ -0,0 +1,3 @@
+cmake make
+glib
+zlib
diff --git a/community-mod/sdcv/sources b/community-mod/sdcv/sources
new file mode 100644
index 0000000..ca9fcd4
--- /dev/null
+++ b/community-mod/sdcv/sources
@@ -0,0 +1 @@
+https://github.com/Dushistov/sdcv/archive/v0.5.3.tar.gz
diff --git a/community-mod/sdcv/version b/community-mod/sdcv/version
new file mode 100644
index 0000000..f7c20fa
--- /dev/null
+++ b/community-mod/sdcv/version
@@ -0,0 +1 @@
+0.5.3 1 
diff --git a/community-mod/sdl/build b/community-mod/sdl/build
new file mode 100755
index 0000000..97c691d
--- /dev/null
+++ b/community-mod/sdl/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+# Fixes bug that prevents SDL from building with X11 support
+sed -e '/_XData32/s:register long:register _Xconst long:' \
+    -i src/video/x11/SDL_x11sym.h
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/sdl/checksums b/community-mod/sdl/checksums
new file mode 100644
index 0000000..9ed29f5
--- /dev/null
+++ b/community-mod/sdl/checksums
@@ -0,0 +1 @@
+d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00  SDL-1.2.15.tar.gz
diff --git a/community-mod/sdl/depends b/community-mod/sdl/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/community-mod/sdl/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/community-mod/sdl/sources b/community-mod/sdl/sources
new file mode 100644
index 0000000..373f585
--- /dev/null
+++ b/community-mod/sdl/sources
@@ -0,0 +1 @@
+https://libsdl.org/release/SDL-1.2.15.tar.gz
diff --git a/community-mod/sdl/version b/community-mod/sdl/version
new file mode 100644
index 0000000..75dfb3b
--- /dev/null
+++ b/community-mod/sdl/version
@@ -0,0 +1 @@
+1.2.15 1 
diff --git a/community-mod/sdl2/build b/community-mod/sdl2/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/sdl2/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/sdl2/checksums b/community-mod/sdl2/checksums
new file mode 100644
index 0000000..ff40a88
--- /dev/null
+++ b/community-mod/sdl2/checksums
@@ -0,0 +1 @@
+d8215b571a581be1332d2106f8036fcb03d12a70bae01e20f424976d275432bc
diff --git a/community-mod/sdl2/depends b/community-mod/sdl2/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/community-mod/sdl2/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/community-mod/sdl2/sources b/community-mod/sdl2/sources
new file mode 100644
index 0000000..08a9072
--- /dev/null
+++ b/community-mod/sdl2/sources
@@ -0,0 +1 @@
+https://libsdl.org/release/SDL2-2.0.14.tar.gz
diff --git a/community-mod/sdl2/version b/community-mod/sdl2/version
new file mode 100644
index 0000000..64723c6
--- /dev/null
+++ b/community-mod/sdl2/version
@@ -0,0 +1 @@
+2.0.14 1 
diff --git a/community-mod/seatd/build b/community-mod/seatd/build
new file mode 100755
index 0000000..b209c84
--- /dev/null
+++ b/community-mod/seatd/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+export CFLAGS="-Wno-error"
+
+meson \
+    --prefix=/usr \
+    -Dseatd=enabled \
+    -Dbuiltin=enabled \
+    -Dlogind=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
+
+install -Dm755 run "$1/etc/sv/seatd/run"
diff --git a/community-mod/seatd/checksums b/community-mod/seatd/checksums
new file mode 100644
index 0000000..a6c6c7a
--- /dev/null
+++ b/community-mod/seatd/checksums
@@ -0,0 +1,2 @@
+274b56324fc81ca6002bc1cdd387668dee34a6e1063e5f3896805c3770948988
+7f1833057e00607fbe2479a45e17de2303ca448120f3c51dcd88fa3527189ead
diff --git a/community-mod/seatd/depends b/community-mod/seatd/depends
new file mode 100644
index 0000000..36f6fe6
--- /dev/null
+++ b/community-mod/seatd/depends
@@ -0,0 +1 @@
+meson make
diff --git a/community-mod/seatd/files/run b/community-mod/seatd/files/run
new file mode 100755
index 0000000..ddf7bd9
--- /dev/null
+++ b/community-mod/seatd/files/run
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+export LIBSEAT_BACKEND=seatd
+
+exec seatd -g video
diff --git a/community-mod/seatd/sources b/community-mod/seatd/sources
new file mode 100644
index 0000000..2f88b11
--- /dev/null
+++ b/community-mod/seatd/sources
@@ -0,0 +1,2 @@
+https://git.sr.ht/~kennylevinsen/seatd/archive/0.5.0.tar.gz
+files/run
diff --git a/community-mod/seatd/version b/community-mod/seatd/version
new file mode 100644
index 0000000..4fa7342
--- /dev/null
+++ b/community-mod/seatd/version
@@ -0,0 +1 @@
+0.5.0 1 
diff --git a/community-mod/secret/build b/community-mod/secret/build
new file mode 100755
index 0000000..c01ee5b
--- /dev/null
+++ b/community-mod/secret/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" prefix=/usr install
diff --git a/community-mod/secret/checksums b/community-mod/secret/checksums
new file mode 100644
index 0000000..958defa
--- /dev/null
+++ b/community-mod/secret/checksums
@@ -0,0 +1,3 @@
+392a1cce663aa7cc1a0729304143d6cafe85de423d9120f94cf852f9439870e2  v0.11.tar.gz
+0c836d770453ddd8f740300994909b12ca34f15e38294ea8ee03c359b26198f5  eb8b122247bd48b11984ae4f8755ae6a4059e6c2.tar.gz
+ca35fe558da7a411bde17d6fc6e808e061a76afb4f1d8f4a1f9f9e0fc8747ea9  a4de6e098b5bbbd5389eb8058130f782b53826c3.tar.gz
diff --git a/community-mod/secret/sources b/community-mod/secret/sources
new file mode 100644
index 0000000..4f3aab8
--- /dev/null
+++ b/community-mod/secret/sources
@@ -0,0 +1,3 @@
+https://github.com/angt/secret/archive/v0.11.tar.gz
+https://github.com/angt/argz/archive/eb8b122247bd48b11984ae4f8755ae6a4059e6c2.tar.gz argz
+https://github.com/jedisct1/libhydrogen/archive/a4de6e098b5bbbd5389eb8058130f782b53826c3.tar.gz libhydrogen
diff --git a/community-mod/secret/version b/community-mod/secret/version
new file mode 100644
index 0000000..2311023
--- /dev/null
+++ b/community-mod/secret/version
@@ -0,0 +1 @@
+0.11 2
diff --git a/community-mod/sed-i/build b/community-mod/sed-i/build
new file mode 100755
index 0000000..fbc11f1
--- /dev/null
+++ b/community-mod/sed-i/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" PREFIX="/usr/lib/sed-i/" install
diff --git a/community-mod/sed-i/checksums b/community-mod/sed-i/checksums
new file mode 100644
index 0000000..d722e23
--- /dev/null
+++ b/community-mod/sed-i/checksums
@@ -0,0 +1 @@
+7c7c7ac1809f607bd5fbf97ea23f6209d628454e16641295aa559297ebb7108e
diff --git a/community-mod/sed-i/post-install b/community-mod/sed-i/post-install
new file mode 100755
index 0000000..ecab8c3
--- /dev/null
+++ b/community-mod/sed-i/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+printf '%s\n' "NOTE: add /usr/lib/sed-i/bin to the beginning of your \$PATH"
diff --git a/community-mod/sed-i/sources b/community-mod/sed-i/sources
new file mode 100644
index 0000000..a078f5b
--- /dev/null
+++ b/community-mod/sed-i/sources
@@ -0,0 +1 @@
+https://github.com/aaronNGi/sed-i/archive/refs/tags/0.1.tar.gz
diff --git a/community-mod/sed-i/version b/community-mod/sed-i/version
new file mode 100644
index 0000000..084a74c
--- /dev/null
+++ b/community-mod/sed-i/version
@@ -0,0 +1 @@
+0.1 1
diff --git a/community-mod/setroot/build b/community-mod/setroot/build
new file mode 100755
index 0000000..8e51827
--- /dev/null
+++ b/community-mod/setroot/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr xinerama=1
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/setroot/checksums b/community-mod/setroot/checksums
new file mode 100644
index 0000000..bd99778
--- /dev/null
+++ b/community-mod/setroot/checksums
@@ -0,0 +1 @@
+767c0b63b92562fbe8a0439147a974f678a342d378f287847bbf4cd190418c60  v2.0.2.tar.gz
diff --git a/community-mod/setroot/depends b/community-mod/setroot/depends
new file mode 100644
index 0000000..ed4757c
--- /dev/null
+++ b/community-mod/setroot/depends
@@ -0,0 +1,2 @@
+imlib2
+libXinerama
diff --git a/community-mod/setroot/sources b/community-mod/setroot/sources
new file mode 100644
index 0000000..a3b3e50
--- /dev/null
+++ b/community-mod/setroot/sources
@@ -0,0 +1 @@
+https://github.com/ttzhou/setroot/archive/v2.0.2.tar.gz
diff --git a/community-mod/setroot/version b/community-mod/setroot/version
new file mode 100644
index 0000000..f7a60dc
--- /dev/null
+++ b/community-mod/setroot/version
@@ -0,0 +1 @@
+2.0.2 2 
diff --git a/community-mod/sfeed/build b/community-mod/sfeed/build
new file mode 100755
index 0000000..b1e46ca
--- /dev/null
+++ b/community-mod/sfeed/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+make
+make \
+    DESTDIR="$1" \
+    PREFIX=/usr \
+    MANPREFIX=/usr/share/man \
+    install
diff --git a/community-mod/sfeed/checksums b/community-mod/sfeed/checksums
new file mode 100644
index 0000000..fd0e88b
--- /dev/null
+++ b/community-mod/sfeed/checksums
@@ -0,0 +1 @@
+0d45e2fc62c5bc29b6cfe08eb7f2f08b50039ce38b0bdc3028fb85ff63681060
diff --git a/community-mod/sfeed/depends b/community-mod/sfeed/depends
new file mode 100644
index 0000000..13368f8
--- /dev/null
+++ b/community-mod/sfeed/depends
@@ -0,0 +1 @@
+curl
diff --git a/community-mod/sfeed/sources b/community-mod/sfeed/sources
new file mode 100644
index 0000000..4fd5610
--- /dev/null
+++ b/community-mod/sfeed/sources
@@ -0,0 +1 @@
+https://codemadness.org/releases/sfeed/sfeed-0.9.24.tar.gz
diff --git a/community-mod/sfeed/version b/community-mod/sfeed/version
new file mode 100644
index 0000000..166aa05
--- /dev/null
+++ b/community-mod/sfeed/version
@@ -0,0 +1 @@
+0.9.24 1
diff --git a/community-mod/sfeed_curses/build b/community-mod/sfeed_curses/build
new file mode 100755
index 0000000..b1e46ca
--- /dev/null
+++ b/community-mod/sfeed_curses/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+make
+make \
+    DESTDIR="$1" \
+    PREFIX=/usr \
+    MANPREFIX=/usr/share/man \
+    install
diff --git a/community-mod/sfeed_curses/checksums b/community-mod/sfeed_curses/checksums
new file mode 100644
index 0000000..c8eb7df
--- /dev/null
+++ b/community-mod/sfeed_curses/checksums
@@ -0,0 +1 @@
+d08a481c6a4f74cac3e16bda6c5373fe4ce068afa11a09d75b727e07b739d581
diff --git a/community-mod/sfeed_curses/depends b/community-mod/sfeed_curses/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/sfeed_curses/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/sfeed_curses/sources b/community-mod/sfeed_curses/sources
new file mode 100644
index 0000000..d0cb925
--- /dev/null
+++ b/community-mod/sfeed_curses/sources
@@ -0,0 +1 @@
+https://codemadness.org/releases/sfeed_curses/sfeed_curses-0.9.12.tar.gz
diff --git a/community-mod/sfeed_curses/version b/community-mod/sfeed_curses/version
new file mode 100644
index 0000000..5e4bc9a
--- /dev/null
+++ b/community-mod/sfeed_curses/version
@@ -0,0 +1 @@
+0.9.12 1
diff --git a/community-mod/sgt-puzzles/build b/community-mod/sgt-puzzles/build
new file mode 100755
index 0000000..e8e1f43
--- /dev/null
+++ b/community-mod/sgt-puzzles/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DNAME_PREFIX=sgt-
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/sgt-puzzles/checksums b/community-mod/sgt-puzzles/checksums
new file mode 100644
index 0000000..30ec548
--- /dev/null
+++ b/community-mod/sgt-puzzles/checksums
@@ -0,0 +1 @@
+6c075a6ae2ab4131281fe07278d4daac6e9363142b65325f60cbf0660b532225
diff --git a/community-mod/sgt-puzzles/depends b/community-mod/sgt-puzzles/depends
new file mode 100644
index 0000000..8ce1bbc
--- /dev/null
+++ b/community-mod/sgt-puzzles/depends
@@ -0,0 +1,2 @@
+cmake   make
+gtk+3
diff --git a/community-mod/sgt-puzzles/sources b/community-mod/sgt-puzzles/sources
new file mode 100644
index 0000000..dd8b334
--- /dev/null
+++ b/community-mod/sgt-puzzles/sources
@@ -0,0 +1 @@
+https://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-20210526.8f3413c.tar.gz
diff --git a/community-mod/sgt-puzzles/version b/community-mod/sgt-puzzles/version
new file mode 100644
index 0000000..9b34607
--- /dev/null
+++ b/community-mod/sgt-puzzles/version
@@ -0,0 +1 @@
+20210526 1
diff --git a/community-mod/shadow/build b/community-mod/shadow/build
new file mode 100755
index 0000000..4e550f4
--- /dev/null
+++ b/community-mod/shadow/build
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --bindir=/usr/bin \
+    --sbindir=/usr/bin \
+    --libdir=/usr/lib \
+    --mandir=/usr/share/man \
+    --sysconfdir=/etc \
+    --disable-man \
+    --disable-account-tools-setuid \
+    --with-group-name-max-length=32 \
+    --without-audit \
+    --without-selinux \
+    --without-libpam
+
+make
+make DESTDIR="$1" install
+
+# Fix broken --sbindir.
+mv -f "$1/usr/sbin/"* "$1/usr/bin"
+rmdir "$1/usr/sbin"
diff --git a/community-mod/shadow/checksums b/community-mod/shadow/checksums
new file mode 100644
index 0000000..917abc8
--- /dev/null
+++ b/community-mod/shadow/checksums
@@ -0,0 +1 @@
+a3ad4630bdc41372f02a647278a8c3514844295d36eefe68ece6c3a641c1ae62  shadow-4.8.1.tar.xz
diff --git a/community-mod/shadow/sources b/community-mod/shadow/sources
new file mode 100644
index 0000000..f0d99ec
--- /dev/null
+++ b/community-mod/shadow/sources
@@ -0,0 +1 @@
+https://github.com/shadow-maint/shadow/releases/download/4.8.1/shadow-4.8.1.tar.xz
diff --git a/community-mod/shadow/version b/community-mod/shadow/version
new file mode 100644
index 0000000..e36f878
--- /dev/null
+++ b/community-mod/shadow/version
@@ -0,0 +1 @@
+4.8.1 1 
diff --git a/community-mod/shellcheck-bin/build b/community-mod/shellcheck-bin/build
new file mode 100755
index 0000000..3a6a468
--- /dev/null
+++ b/community-mod/shellcheck-bin/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+install -Dm755 shellcheck "$1/usr/bin/shellcheck"
diff --git a/community-mod/shellcheck-bin/checksums b/community-mod/shellcheck-bin/checksums
new file mode 100644
index 0000000..ae5e4e8
--- /dev/null
+++ b/community-mod/shellcheck-bin/checksums
@@ -0,0 +1 @@
+70423609f27b504d6c0c47e340f33652aea975e45f312324f2dbf91c95a3b188
diff --git a/community-mod/shellcheck-bin/sources b/community-mod/shellcheck-bin/sources
new file mode 100644
index 0000000..9630ebb
--- /dev/null
+++ b/community-mod/shellcheck-bin/sources
@@ -0,0 +1 @@
+https://github.com/koalaman/shellcheck/releases/download/v0.7.2/shellcheck-v0.7.2.linux.x86_64.tar.xz
diff --git a/community-mod/shellcheck-bin/version b/community-mod/shellcheck-bin/version
new file mode 100644
index 0000000..e785eb6
--- /dev/null
+++ b/community-mod/shellcheck-bin/version
@@ -0,0 +1 @@
+0.7.2 1
diff --git a/community-mod/shinit/build b/community-mod/shinit/build
new file mode 100755
index 0000000..0b82a3b
--- /dev/null
+++ b/community-mod/shinit/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+install -Dm755 shinit   "$1/usr/bin/shinit"
+install -Dm755 poweroff "$1/usr/bin/poweroff"
+
+ln -s shinit   "$1/usr/bin/init"
+ln -s poweroff "$1/usr/bin/reboot"
diff --git a/community-mod/shinit/checksums b/community-mod/shinit/checksums
new file mode 100644
index 0000000..b4c85ab
--- /dev/null
+++ b/community-mod/shinit/checksums
@@ -0,0 +1 @@
+7d5d60d5a56532f8cb8a6e227cba1f78fad256c8114e97c91906d9ff7e6ed0e8  1.0.0.tar.gz
diff --git a/community-mod/shinit/sources b/community-mod/shinit/sources
new file mode 100644
index 0000000..8482551
--- /dev/null
+++ b/community-mod/shinit/sources
@@ -0,0 +1 @@
+https://github.com/cemkeylan/shinit/archive/1.0.0.tar.gz
diff --git a/community-mod/shinit/version b/community-mod/shinit/version
new file mode 100644
index 0000000..69c85ee
--- /dev/null
+++ b/community-mod/shinit/version
@@ -0,0 +1 @@
+1.0.0 1 
diff --git a/community-mod/sinit/build b/community-mod/sinit/build
new file mode 100755
index 0000000..e064f02
--- /dev/null
+++ b/community-mod/sinit/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make CFLAGS="$CFLAGS -static" PREFIX=/usr DESTDIR="$1" install
+ln -s sinit "$1/usr/bin/init"
+
+install -Dm755 poweroff "$1/usr/bin/poweroff"
+install -Dm755 reboot "$1/usr/bin/reboot"
+
+install -Dm644 sinit-launch-services.boot "$1/etc/rc.d/sinit-launch-services.boot"
diff --git a/community-mod/sinit/checksums b/community-mod/sinit/checksums
new file mode 100644
index 0000000..136715a
--- /dev/null
+++ b/community-mod/sinit/checksums
@@ -0,0 +1,5 @@
+aaccd0515070545174bf962c462686e7719c02c68004bd0b350b98b4c78a90ba  sinit-1.1.tar.gz
+6f0f1a5f2f43b5bcfd4beaa93e1a49438d398cf758d7813bc6ba86b5156357a8  config.h
+f638aaa23383da584d3a56347a8e279abdc7c9c521661ef54a5bc8b955c5632b  reboot
+4da8b0c2771a9046a7ce2ded49beb5297045e9979796e5e4b390168286f05379  poweroff
+c26e593a3393d3bcb9f7e3237372cd440ec2b873cf91cab2e88a38f231b97771  sinit-launch-services.boot
diff --git a/community-mod/sinit/depends b/community-mod/sinit/depends
new file mode 100644
index 0000000..d34de7b
--- /dev/null
+++ b/community-mod/sinit/depends
@@ -0,0 +1 @@
+baseinit
diff --git a/community-mod/sinit/files/config.h b/community-mod/sinit/files/config.h
new file mode 100644
index 0000000..dca21e3
--- /dev/null
+++ b/community-mod/sinit/files/config.h
@@ -0,0 +1,3 @@
+static char *const rcinitcmd[]     = { "/usr/lib/init/rc.boot", NULL };
+static char *const rcrebootcmd[]   = { "/usr/lib/init/rc.shutdown", "reboot", NULL };
+static char *const rcpoweroffcmd[] = { "/usr/lib/init/rc.shutdown", "poweroff", NULL };
diff --git a/community-mod/sinit/files/poweroff b/community-mod/sinit/files/poweroff
new file mode 100644
index 0000000..69d8731
--- /dev/null
+++ b/community-mod/sinit/files/poweroff
@@ -0,0 +1,2 @@
+#!/bin/sh
+/bin/kill -s USR1 1
diff --git a/community-mod/sinit/files/reboot b/community-mod/sinit/files/reboot
new file mode 100644
index 0000000..266afb9
--- /dev/null
+++ b/community-mod/sinit/files/reboot
@@ -0,0 +1,2 @@
+#!/bin/sh
+/bin/kill -s INT 1
diff --git a/community-mod/sinit/files/sinit-launch-services.boot b/community-mod/sinit/files/sinit-launch-services.boot
new file mode 100644
index 0000000..6b96347
--- /dev/null
+++ b/community-mod/sinit/files/sinit-launch-services.boot
@@ -0,0 +1,10 @@
+# We are going to start runit and getty here
+
+# Uncomment to enable gettys
+# for getty in 1 2 3 4 5 6 ; do
+#     while :; do /sbin/getty tty${getty} 0 linux ; done &  # busybox getty
+# #    while :; do /sbin/getty /dev/tty${getty} linux ; done &   # ubase getty
+# done
+
+# Uncomment enable runit services
+# while :; do /usr/bin/runsvdir -P /var/service ; done &
diff --git a/community-mod/sinit/post-install b/community-mod/sinit/post-install
new file mode 100755
index 0000000..bcf13cb
--- /dev/null
+++ b/community-mod/sinit/post-install
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+cat <<EOF
+
+!! IMPORTANT !!
+
+To start using sinit, edit
+/etc/rc.d/sinit-launch-services.boot
+And uncomment the getty function, and
+Optionally uncomment the runit function
+If you deem necessary.
+
+sinit is installed as /usr/bin/sinit. It
+can fully replace busybox init by running
+the following command.
+
+      kiss a | grep ^sinit | kiss a -
+
+NOTE: If swapping from busybox init on a 
+      running system, shutdown/reboot by 
+      invoking 'busybox poweroff'. sinit's 
+      poweroff/reboot utilities can't be of
+      use until it is actually running.
+
+EOF
diff --git a/community-mod/sinit/sources b/community-mod/sinit/sources
new file mode 100644
index 0000000..67bd0a9
--- /dev/null
+++ b/community-mod/sinit/sources
@@ -0,0 +1,5 @@
+https://dl.carbslinux.org/distfiles/sinit-1.1.tar.gz
+files/config.h
+files/reboot
+files/poweroff
+files/sinit-launch-services.boot
diff --git a/community-mod/sinit/version b/community-mod/sinit/version
new file mode 100644
index 0000000..81ef355
--- /dev/null
+++ b/community-mod/sinit/version
@@ -0,0 +1 @@
+1.1 1 
diff --git a/community-mod/skalibs/build b/community-mod/skalibs/build
new file mode 100755
index 0000000..9e85cfc
--- /dev/null
+++ b/community-mod/skalibs/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/skalibs/checksums b/community-mod/skalibs/checksums
new file mode 100644
index 0000000..1ceeeab
--- /dev/null
+++ b/community-mod/skalibs/checksums
@@ -0,0 +1 @@
+b780b0ae650dda0c3ec5f8975174998af2d24c2a2e2be669b1bab46e73b1464d
diff --git a/community-mod/skalibs/sources b/community-mod/skalibs/sources
new file mode 100644
index 0000000..bc0088a
--- /dev/null
+++ b/community-mod/skalibs/sources
@@ -0,0 +1 @@
+https://www.skarnet.org/software/skalibs/skalibs-2.10.0.3.tar.gz
diff --git a/community-mod/skalibs/version b/community-mod/skalibs/version
new file mode 100644
index 0000000..498595b
--- /dev/null
+++ b/community-mod/skalibs/version
@@ -0,0 +1 @@
+2.10.0.3 1
diff --git a/community-mod/slang/build b/community-mod/slang/build
new file mode 100755
index 0000000..61a3e9a
--- /dev/null
+++ b/community-mod/slang/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make -j1
+make -j1 DESTDIR="$1" install
diff --git a/community-mod/slang/checksums b/community-mod/slang/checksums
new file mode 100644
index 0000000..c300aad
--- /dev/null
+++ b/community-mod/slang/checksums
@@ -0,0 +1 @@
+fc9e3b0fc4f67c3c1f6d43c90c16a5c42d117b8e28457c5b46831b8b5d3ae31a
diff --git a/community-mod/slang/depends b/community-mod/slang/depends
new file mode 100644
index 0000000..2392c85
--- /dev/null
+++ b/community-mod/slang/depends
@@ -0,0 +1 @@
+ncurses make
diff --git a/community-mod/slang/sources b/community-mod/slang/sources
new file mode 100644
index 0000000..89f0980
--- /dev/null
+++ b/community-mod/slang/sources
@@ -0,0 +1 @@
+https://jedsoft.org/releases/slang/slang-2.3.2.tar.bz2
diff --git a/community-mod/slang/version b/community-mod/slang/version
new file mode 100644
index 0000000..56b3f3b
--- /dev/null
+++ b/community-mod/slang/version
@@ -0,0 +1 @@
+2.3.2 1
diff --git a/community-mod/slock/build b/community-mod/slock/build
new file mode 100755
index 0000000..431cc72
--- /dev/null
+++ b/community-mod/slock/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/slock/checksums b/community-mod/slock/checksums
new file mode 100644
index 0000000..8e9f6e5
--- /dev/null
+++ b/community-mod/slock/checksums
@@ -0,0 +1 @@
+b53849dbc60109a987d7a49b8da197305c29307fd74c12dc18af0d3044392e6a  slock-1.4.tar.gz
diff --git a/community-mod/slock/depends b/community-mod/slock/depends
new file mode 100644
index 0000000..1903bba
--- /dev/null
+++ b/community-mod/slock/depends
@@ -0,0 +1 @@
+libX11
diff --git a/community-mod/slock/sources b/community-mod/slock/sources
new file mode 100644
index 0000000..97cb5d7
--- /dev/null
+++ b/community-mod/slock/sources
@@ -0,0 +1 @@
+https://dl.suckless.org/tools/slock-1.4.tar.gz
diff --git a/community-mod/slock/version b/community-mod/slock/version
new file mode 100644
index 0000000..0ab1228
--- /dev/null
+++ b/community-mod/slock/version
@@ -0,0 +1 @@
+1.4 1
diff --git a/community-mod/slop/build b/community-mod/slop/build
new file mode 100755
index 0000000..657c85a
--- /dev/null
+++ b/community-mod/slop/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DGLM_INCLUDE_DIR="$PWD/glm" \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=lib \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DSLOP_OPENGL=False
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/slop/checksums b/community-mod/slop/checksums
new file mode 100644
index 0000000..7b75c56
--- /dev/null
+++ b/community-mod/slop/checksums
@@ -0,0 +1,2 @@
+94d8b6270217cd7f56ce7d4a9a75069025262830a2f91c3239b7fc07da5ea8da  v7.5.tar.gz
+5e33b6131cea6a904339734b015110d4342b7dc02d995164fdb86332d28a5aa4  0.9.9.5.tar.gz
diff --git a/community-mod/slop/depends b/community-mod/slop/depends
new file mode 100644
index 0000000..7d91ec2
--- /dev/null
+++ b/community-mod/slop/depends
@@ -0,0 +1 @@
+cmake make
diff --git a/community-mod/slop/sources b/community-mod/slop/sources
new file mode 100644
index 0000000..d8da946
--- /dev/null
+++ b/community-mod/slop/sources
@@ -0,0 +1,2 @@
+https://github.com/naelstrof/slop/archive/v7.5.tar.gz
+https://github.com/g-truc/glm/archive/0.9.9.5.tar.gz glm
diff --git a/community-mod/slop/version b/community-mod/slop/version
new file mode 100644
index 0000000..94dd5dc
--- /dev/null
+++ b/community-mod/slop/version
@@ -0,0 +1 @@
+7.5 2
diff --git a/community-mod/squashfs-tools/build b/community-mod/squashfs-tools/build
new file mode 100755
index 0000000..bb30243
--- /dev/null
+++ b/community-mod/squashfs-tools/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+cd squashfs-tools
+
+make XZ_SUPPORT=1 LZO_SUPPORT=0 LZ4_SUPPORT=0 ZSTD_SUPPORT=0
+
+install -Dm755 mksquashfs "$1/usr/bin/mksquashfs"
+install -Dm755 unsquashfs "$1/usr/bin/unsquashfs"
diff --git a/community-mod/squashfs-tools/checksums b/community-mod/squashfs-tools/checksums
new file mode 100644
index 0000000..5252ecc
--- /dev/null
+++ b/community-mod/squashfs-tools/checksums
@@ -0,0 +1 @@
+9b89c3d2f0d0456e99fa3dd4429d45044044f0115acb0f15c441a4b9496d25a7
diff --git a/community-mod/squashfs-tools/depends b/community-mod/squashfs-tools/depends
new file mode 100644
index 0000000..d66e95c
--- /dev/null
+++ b/community-mod/squashfs-tools/depends
@@ -0,0 +1 @@
+xz
diff --git a/community-mod/squashfs-tools/sources b/community-mod/squashfs-tools/sources
new file mode 100644
index 0000000..bfbf232
--- /dev/null
+++ b/community-mod/squashfs-tools/sources
@@ -0,0 +1 @@
+https://github.com/plougher/squashfs-tools/archive/4.4-git.1.tar.gz
diff --git a/community-mod/squashfs-tools/version b/community-mod/squashfs-tools/version
new file mode 100644
index 0000000..d299d54
--- /dev/null
+++ b/community-mod/squashfs-tools/version
@@ -0,0 +1 @@
+4.4-git.1 1 
diff --git a/community-mod/sshfs/build b/community-mod/sshfs/build
new file mode 100755
index 0000000..b3f6d4e
--- /dev/null
+++ b/community-mod/sshfs/build
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+# Removes code that creates broken symlinks.
+sed -i '15,19d' utils/install_helper.sh
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    -Dexamples=false \
+    -Dsbindir=bin \
+    . output
+
+ninja -C output
+ninja -C output install
+
+# Properly create the symlinks that the above helper wanted to.
+ln -s /usr/bin/sshfs "$1/usr/bin/mount.sshfs"
+ln -s /usr/bin/sshfs "$1/usr/bin/mount.fuse.sshfs"
diff --git a/community-mod/sshfs/checksums b/community-mod/sshfs/checksums
new file mode 100644
index 0000000..603e1b3
--- /dev/null
+++ b/community-mod/sshfs/checksums
@@ -0,0 +1 @@
+0f0f8f239555effd675d03a3cabfb35ef691a3054c98b62bc28e85620ad9e30d
diff --git a/community-mod/sshfs/depends b/community-mod/sshfs/depends
new file mode 100644
index 0000000..32dbc24
--- /dev/null
+++ b/community-mod/sshfs/depends
@@ -0,0 +1,3 @@
+fuse
+glib
+meson make
diff --git a/community-mod/sshfs/sources b/community-mod/sshfs/sources
new file mode 100644
index 0000000..1790c0f
--- /dev/null
+++ b/community-mod/sshfs/sources
@@ -0,0 +1 @@
+https://github.com/libfuse/sshfs/archive/sshfs-3.7.1.tar.gz
diff --git a/community-mod/sshfs/version b/community-mod/sshfs/version
new file mode 100644
index 0000000..f6cb9b1
--- /dev/null
+++ b/community-mod/sshfs/version
@@ -0,0 +1 @@
+3.7.1 1
diff --git a/community-mod/ssu/build b/community-mod/ssu/build
new file mode 100755
index 0000000..080e99b
--- /dev/null
+++ b/community-mod/ssu/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make
+make \
+    PREFIX=/usr \
+    DESTDIR="$1" \
+    BINOWN="$(id -u)" \
+    BINGRP="$(id -g)" \
+    install
diff --git a/community-mod/ssu/checksums b/community-mod/ssu/checksums
new file mode 100644
index 0000000..3c820bf
--- /dev/null
+++ b/community-mod/ssu/checksums
@@ -0,0 +1 @@
+949bcfc5bd1a9908d1c9ff754bd16d092c9dcfde36e4f5d8785eb47d5baf1cec
diff --git a/community-mod/ssu/post-install b/community-mod/ssu/post-install
new file mode 100755
index 0000000..8cc2524
--- /dev/null
+++ b/community-mod/ssu/post-install
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+chgrp wheel /usr/bin/ssu
+chmod 4754  /usr/bin/ssu
diff --git a/community-mod/ssu/sources b/community-mod/ssu/sources
new file mode 100644
index 0000000..c6875fd
--- /dev/null
+++ b/community-mod/ssu/sources
@@ -0,0 +1 @@
+https://github.com/illiliti/ssu/archive/0.3.2.tar.gz
diff --git a/community-mod/ssu/version b/community-mod/ssu/version
new file mode 100644
index 0000000..ef5b844
--- /dev/null
+++ b/community-mod/ssu/version
@@ -0,0 +1 @@
+0.3.2 1
diff --git a/community-mod/sx/build b/community-mod/sx/build
new file mode 100755
index 0000000..0837405
--- /dev/null
+++ b/community-mod/sx/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/sx/checksums b/community-mod/sx/checksums
new file mode 100644
index 0000000..1a1158f
--- /dev/null
+++ b/community-mod/sx/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/Earnestly/sx
diff --git a/community-mod/sx/depends b/community-mod/sx/depends
new file mode 100644
index 0000000..b856c14
--- /dev/null
+++ b/community-mod/sx/depends
@@ -0,0 +1,2 @@
+xauth
+xorg-server
diff --git a/community-mod/sx/sources b/community-mod/sx/sources
new file mode 100644
index 0000000..72f0dfc
--- /dev/null
+++ b/community-mod/sx/sources
@@ -0,0 +1 @@
+git+https://github.com/Earnestly/sx
diff --git a/community-mod/sx/version b/community-mod/sx/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/sx/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/sxhkd/build b/community-mod/sxhkd/build
new file mode 100755
index 0000000..954aa1f
--- /dev/null
+++ b/community-mod/sxhkd/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/sxhkd/checksums b/community-mod/sxhkd/checksums
new file mode 100644
index 0000000..3a1e64e
--- /dev/null
+++ b/community-mod/sxhkd/checksums
@@ -0,0 +1 @@
+1edc8b1a8b3631c10ba9cb9df1181830dacbbdf77adb558e31d5dd2029637386  0.6.2.tar.gz
diff --git a/community-mod/sxhkd/depends b/community-mod/sxhkd/depends
new file mode 100644
index 0000000..0211009
--- /dev/null
+++ b/community-mod/sxhkd/depends
@@ -0,0 +1,2 @@
+libxcb
+xcb-util-keysyms
diff --git a/community-mod/sxhkd/sources b/community-mod/sxhkd/sources
new file mode 100644
index 0000000..1de0712
--- /dev/null
+++ b/community-mod/sxhkd/sources
@@ -0,0 +1 @@
+https://github.com/baskerville/sxhkd/archive/0.6.2.tar.gz
diff --git a/community-mod/sxhkd/version b/community-mod/sxhkd/version
new file mode 100644
index 0000000..d39cc45
--- /dev/null
+++ b/community-mod/sxhkd/version
@@ -0,0 +1 @@
+0.6.2 1
diff --git a/community-mod/sxiv/build b/community-mod/sxiv/build
new file mode 100755
index 0000000..0837405
--- /dev/null
+++ b/community-mod/sxiv/build
@@ -0,0 +1,3 @@
+#!/bin/sh -e
+
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/sxiv/checksums b/community-mod/sxiv/checksums
new file mode 100644
index 0000000..572005a
--- /dev/null
+++ b/community-mod/sxiv/checksums
@@ -0,0 +1 @@
+a382ad57734243818e828ba161fc0357b48d8f3a7f8c29cac183492b46b58949  v26.tar.gz
diff --git a/community-mod/sxiv/depends b/community-mod/sxiv/depends
new file mode 100644
index 0000000..6360225
--- /dev/null
+++ b/community-mod/sxiv/depends
@@ -0,0 +1,3 @@
+giflib
+imlib2
+libexif
diff --git a/community-mod/sxiv/sources b/community-mod/sxiv/sources
new file mode 100644
index 0000000..4594ac0
--- /dev/null
+++ b/community-mod/sxiv/sources
@@ -0,0 +1 @@
+https://github.com/muennich/sxiv/archive/v26.tar.gz
diff --git a/community-mod/sxiv/version b/community-mod/sxiv/version
new file mode 100644
index 0000000..0bfbf8a
--- /dev/null
+++ b/community-mod/sxiv/version
@@ -0,0 +1 @@
+26 2
diff --git a/community-mod/sysmgr/build b/community-mod/sysmgr/build
new file mode 100755
index 0000000..61f97e6
--- /dev/null
+++ b/community-mod/sysmgr/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
+
+install -Dm644 sysmgr.boot         "$1/etc/rc.d/sysmgr.boot"
+install -Dm644 sysmgr.pre.shutdown "$1/usr/lib/init/rc.d/sysmgr.pre.shutdown"
+install -Dm755 respawn             "$1/usr/bin/respawn"
diff --git a/community-mod/sysmgr/checksums b/community-mod/sysmgr/checksums
new file mode 100644
index 0000000..34fe677
--- /dev/null
+++ b/community-mod/sysmgr/checksums
@@ -0,0 +1,3 @@
+af578fc047555ace2bd315d00a91a001e520c9db68a189a72bf3030074376483
+aa84fc41d182ead50521c62a9738f2246e500d33eb7f5e2487e38ed0bab0e9e4
+8e7b14a821c2584413ab9e3beb09b2c569a3b77c0e3a2dbc922b0eb1ad5510d3
diff --git a/community-mod/sysmgr/files/respawn b/community-mod/sysmgr/files/respawn
new file mode 100644
index 0000000..4126cdb
--- /dev/null
+++ b/community-mod/sysmgr/files/respawn
@@ -0,0 +1,27 @@
+#!/bin/sh -e
+# POSIX shell variant for ubase respawn
+
+usage() {
+    printf 'usage: %s [-d N] cmd [args...]\n' "${0##*/}"
+    exit "${1:-0}"
+}
+
+die() { printf '%s\n' "$@" >&2; exit 1;}
+
+case "$1" in
+    -d) [ "$3" ] || usage 1
+        [ "$2" -gt 0 ] || die "Not a number: $2"
+        delay=$2; shift 2
+        ;;
+    --help|-h|'') usage ;;
+    -*) usage 1
+esac
+
+while :; do
+    "$@" || err=$?
+    case $err in
+        # Usually Ctrl+C interrupt.
+        12[7-9]|130) exit 0
+    esac
+    [ "$delay" ] && sleep "$delay"
+done
diff --git a/community-mod/sysmgr/files/sysmgr.boot b/community-mod/sysmgr/files/sysmgr.boot
new file mode 100644
index 0000000..a8eb842
--- /dev/null
+++ b/community-mod/sysmgr/files/sysmgr.boot
@@ -0,0 +1 @@
+# respawn sysmgr &
diff --git a/community-mod/sysmgr/files/sysmgr.pre.shutdown b/community-mod/sysmgr/files/sysmgr.pre.shutdown
new file mode 100644
index 0000000..d74b4aa
--- /dev/null
+++ b/community-mod/sysmgr/files/sysmgr.pre.shutdown
@@ -0,0 +1,4 @@
+log "Waiting for sysmgr services to stop..."; {
+    svctl stop /var/sysmgr/* >/dev/null 2>&1
+    svctl kill /var/sysmgr/* >/dev/null 2>&1
+}
diff --git a/community-mod/sysmgr/post-install b/community-mod/sysmgr/post-install
new file mode 100755
index 0000000..171973a
--- /dev/null
+++ b/community-mod/sysmgr/post-install
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+cat <<EOF
+IMPORTANT:
+
+  In order to enable sysmgr you need to
+  uncomment the line on '/etc/rc.d/sysmgr.boot'
+
+EOF
diff --git a/community-mod/sysmgr/sources b/community-mod/sysmgr/sources
new file mode 100644
index 0000000..500d424
--- /dev/null
+++ b/community-mod/sysmgr/sources
@@ -0,0 +1,4 @@
+git+git://git.ckyln.com/sm
+files/respawn
+files/sysmgr.boot
+files/sysmgr.pre.shutdown
diff --git a/community-mod/sysmgr/version b/community-mod/sysmgr/version
new file mode 100644
index 0000000..a383ea1
--- /dev/null
+++ b/community-mod/sysmgr/version
@@ -0,0 +1 @@
+git 1
diff --git a/community-mod/tabbed/build b/community-mod/tabbed/build
new file mode 100755
index 0000000..b6c132d
--- /dev/null
+++ b/community-mod/tabbed/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+# Adding this patch forces the libXft
+# dependency, but the upstream (git) already
+# uses it. It is also much better than the ancient
+# logical X font description.
+patch -p1 < tabbed-0.6-xft.diff
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/tabbed/checksums b/community-mod/tabbed/checksums
new file mode 100644
index 0000000..fdefe27
--- /dev/null
+++ b/community-mod/tabbed/checksums
@@ -0,0 +1,2 @@
+7651ea3acbec5d6a25469e8665da7fc70aba2b4fa61a2a6a5449eafdfd641c42  tabbed-0.6.tar.gz
+7f38c0b1b8e30406b87d83f318359e89372b13d59812f55c599323e27a8fb1d3  tabbed-0.6-xft.diff
diff --git a/community-mod/tabbed/depends b/community-mod/tabbed/depends
new file mode 100644
index 0000000..d482a32
--- /dev/null
+++ b/community-mod/tabbed/depends
@@ -0,0 +1,4 @@
+freetype-harfbuzz
+fontconfig
+libX11
+libXft
diff --git a/community-mod/tabbed/files/tabbed-0.6-xft.diff b/community-mod/tabbed/files/tabbed-0.6-xft.diff
new file mode 100644
index 0000000..7ec00fb
--- /dev/null
+++ b/community-mod/tabbed/files/tabbed-0.6-xft.diff
@@ -0,0 +1,233 @@
+diff --git a/config.def.h b/config.def.h
+index ceda9f7..bc7cfe2 100644
+--- a/config.def.h
++++ b/config.def.h
+@@ -1,7 +1,7 @@
+ /* See LICENSE file for copyright and license details. */
+ 
+ /* appearance */
+-static const char font[]        = "-*-*-medium-*-*-*-14-*-*-*-*-*-*-*";
++static const char font[]        = "monospace-9";
+ static const char* normbgcolor  = "#222222";
+ static const char* normfgcolor  = "#cccccc";
+ static const char* selbgcolor   = "#555555";
+diff --git a/config.mk b/config.mk
+index 5279711..037f9d7 100644
+--- a/config.mk
++++ b/config.mk
+@@ -8,8 +8,8 @@ PREFIX = /usr/local
+ MANPREFIX = ${PREFIX}/share/man
+ 
+ # includes and libs
+-INCS = -I. -I/usr/include
+-LIBS = -L/usr/lib -lc -lX11
++INCS = -I. -I/usr/include -I/usr/include/freetype2
++LIBS = -L/usr/lib -lc -lX11 -lfontconfig -lXft
+ 
+ # flags
+ CPPFLAGS = -DVERSION=\"${VERSION}\" -D_BSD_SOURCE
+diff --git a/tabbed.c b/tabbed.c
+index d30206b..d08348c 100644
+--- a/tabbed.c
++++ b/tabbed.c
+@@ -15,6 +15,7 @@
+ #include <X11/Xproto.h>
+ #include <X11/Xutil.h>
+ #include <X11/XKBlib.h>
++#include <X11/Xft/Xft.h>
+ 
+ #include "arg.h"
+ 
+@@ -64,16 +65,15 @@ typedef struct {
+ 
+ typedef struct {
+ 	int x, y, w, h;
+-	unsigned long norm[ColLast];
+-	unsigned long sel[ColLast];
++	XftColor norm[ColLast];
++	XftColor sel[ColLast];
+ 	Drawable drawable;
+ 	GC gc;
+ 	struct {
+ 		int ascent;
+ 		int descent;
+ 		int height;
+-		XFontSet set;
+-		XFontStruct *xfont;
++		XftFont *xfont;
+ 	} font;
+ } DC; /* draw context */
+ 
+@@ -95,7 +95,7 @@ static void createnotify(const XEvent *e);
+ static void destroynotify(const XEvent *e);
+ static void die(const char *errstr, ...);
+ static void drawbar(void);
+-static void drawtext(const char *text, unsigned long col[ColLast]);
++static void drawtext(const char *text, XftColor col[ColLast]);
+ static void *emallocz(size_t size);
+ static void *erealloc(void *o, size_t size);
+ static void expose(const XEvent *e);
+@@ -105,7 +105,7 @@ static void focusonce(const Arg *arg);
+ static void fullscreen(const Arg *arg);
+ static char* getatom(int a);
+ static int getclient(Window w);
+-static unsigned long getcolor(const char *colstr);
++static XftColor getcolor(const char *colstr);
+ static int getfirsttab(void);
+ static Bool gettextprop(Window w, Atom atom, char *text, unsigned int size);
+ static void initfont(const char *fontstr);
+@@ -219,12 +219,6 @@ cleanup(void) {
+ 	free(clients);
+ 	clients = NULL;
+ 
+-	if(dc.font.set) {
+-		XFreeFontSet(dpy, dc.font.set);
+-	} else {
+-		XFreeFont(dpy, dc.font.xfont);
+-	}
+-
+ 	XFreePixmap(dpy, dc.drawable);
+ 	XFreeGC(dpy, dc.gc);
+ 	XDestroyWindow(dpy, win);
+@@ -305,7 +299,7 @@ die(const char *errstr, ...) {
+ 
+ void
+ drawbar(void) {
+-	unsigned long *col;
++	XftColor *col;
+ 	int c, fc, width, n = 0;
+ 	char *name = NULL;
+ 
+@@ -362,12 +356,13 @@ drawbar(void) {
+ }
+ 
+ void
+-drawtext(const char *text, unsigned long col[ColLast]) {
++drawtext(const char *text, XftColor col[ColLast]) {
+ 	int i, x, y, h, len, olen;
+ 	char buf[256];
++	XftDraw *d;
+ 	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
+ 
+-	XSetForeground(dpy, dc.gc, col[ColBG]);
++	XSetForeground(dpy, dc.gc, col[ColBG].pixel);
+ 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
+ 	if(!text)
+ 		return;
+@@ -388,13 +383,10 @@ drawtext(const char *text, unsigned long col[ColLast]) {
+ 		for(i = len; i && i > len - 3; buf[--i] = '.');
+ 	}
+ 
+-	XSetForeground(dpy, dc.gc, col[ColFG]);
+-	if(dc.font.set) {
+-		XmbDrawString(dpy, dc.drawable, dc.font.set,
+-				dc.gc, x, y, buf, len);
+-	} else {
+-		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
+-	}
++	d = XftDrawCreate(dpy, dc.drawable, DefaultVisual(dpy, screen), DefaultColormap(dpy, screen));
++
++	XftDrawStringUtf8(d, &col[ColFG], dc.font.xfont, x, y, (XftChar8 *) buf, len);
++	XftDrawDestroy(d);
+ }
+ 
+ void *
+@@ -524,15 +516,14 @@ getclient(Window w) {
+ 	return -1;
+ }
+ 
+-unsigned long
++XftColor
+ getcolor(const char *colstr) {
+-	Colormap cmap = DefaultColormap(dpy, screen);
+-	XColor color;
++	XftColor color;
+ 
+-	if(!XAllocNamedColor(dpy, cmap, colstr, &color, &color))
++	if(!XftColorAllocName(dpy, DefaultVisual(dpy, screen), DefaultColormap(dpy, screen), colstr, &color))
+ 		die("tabbed: cannot allocate color '%s'\n", colstr);
+ 
+-	return color.pixel;
++	return color;
+ }
+ 
+ int
+@@ -585,41 +576,12 @@ gettextprop(Window w, Atom atom, char *text, unsigned int size) {
+ 
+ void
+ initfont(const char *fontstr) {
+-	char *def, **missing, **font_names;
+-	int i, n;
+-	XFontStruct **xfonts;
+-
+-	missing = NULL;
+-	if(dc.font.set)
+-		XFreeFontSet(dpy, dc.font.set);
+-
+-	dc.font.set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
+-	if(missing) {
+-		while(n--)
+-			fprintf(stderr, "tabbed: missing fontset: %s\n", missing[n]);
+-		XFreeStringList(missing);
+-	}
++	if(!(dc.font.xfont = XftFontOpenName(dpy, screen, fontstr))
++	&& !(dc.font.xfont = XftFontOpenName(dpy, screen, "fixed")))
++		die("error, cannot load font: '%s'\n", fontstr);
+ 
+-	if(dc.font.set) {
+-		dc.font.ascent = dc.font.descent = 0;
+-		n = XFontsOfFontSet(dc.font.set, &xfonts, &font_names);
+-		for(i = 0, dc.font.ascent = 0, dc.font.descent = 0; i < n; i++) {
+-			dc.font.ascent = MAX(dc.font.ascent, (*xfonts)->ascent);
+-			dc.font.descent = MAX(dc.font.descent,(*xfonts)->descent);
+-			xfonts++;
+-		}
+-	} else {
+-		if(dc.font.xfont)
+-			XFreeFont(dpy, dc.font.xfont);
+-		dc.font.xfont = NULL;
+-		if(!(dc.font.xfont = XLoadQueryFont(dpy, fontstr))
+-				&& !(dc.font.xfont = XLoadQueryFont(dpy, "fixed"))) {
+-			die("tabbed: cannot load font: '%s'\n", fontstr);
+-		}
+-
+-		dc.font.ascent = dc.font.xfont->ascent;
+-		dc.font.descent = dc.font.xfont->descent;
+-	}
++	dc.font.ascent = dc.font.xfont->ascent;
++	dc.font.descent = dc.font.xfont->descent;
+ 	dc.font.height = dc.font.ascent + dc.font.descent;
+ }
+ 
+@@ -972,11 +934,9 @@ setup(void) {
+ 	dc.drawable = XCreatePixmap(dpy, root, ww, wh,
+ 			DefaultDepth(dpy, screen));
+ 	dc.gc = XCreateGC(dpy, root, 0, 0);
+-	if(!dc.font.set)
+-		XSetFont(dpy, dc.gc, dc.font.xfont->fid);
+ 
+ 	win = XCreateSimpleWindow(dpy, root, wx, wy, ww, wh, 0,
+-			dc.norm[ColFG], dc.norm[ColBG]);
++			dc.norm[ColFG].pixel, dc.norm[ColBG].pixel);
+ 	XMapRaised(dpy, win);
+ 	XSelectInput(dpy, win, SubstructureNotifyMask|FocusChangeMask|
+ 			ButtonPressMask|ExposureMask|KeyPressMask|PropertyChangeMask|
+@@ -1040,15 +1000,9 @@ spawn(const Arg *arg) {
+ 
+ int
+ textnw(const char *text, unsigned int len) {
+-	XRectangle r;
+-
+-	if(dc.font.set) {
+-		XmbTextExtents(dc.font.set, text, len, NULL, &r);
+-
+-		return r.width;
+-	}
+-
+-	return XTextWidth(dc.font.xfont, text, len);
++	XGlyphInfo ext;
++	XftTextExtentsUtf8(dpy, dc.font.xfont, (XftChar8 *) text, len, &ext);
++	return ext.xOff;
+ }
+ 
+ void
diff --git a/community-mod/tabbed/sources b/community-mod/tabbed/sources
new file mode 100644
index 0000000..283da67
--- /dev/null
+++ b/community-mod/tabbed/sources
@@ -0,0 +1,2 @@
+https://dl.suckless.org/tools/tabbed-0.6.tar.gz
+files/tabbed-0.6-xft.diff
diff --git a/community-mod/tabbed/version b/community-mod/tabbed/version
new file mode 100644
index 0000000..424287d
--- /dev/null
+++ b/community-mod/tabbed/version
@@ -0,0 +1 @@
+0.6 1
diff --git a/community-mod/tcc/build b/community-mod/tcc/build
new file mode 100755
index 0000000..9703991
--- /dev/null
+++ b/community-mod/tcc/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --cc="${CC:-cc}" \
+    --config-musl
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/tcc/checksums b/community-mod/tcc/checksums
new file mode 100644
index 0000000..68580f2
--- /dev/null
+++ b/community-mod/tcc/checksums
@@ -0,0 +1 @@
+git git+git://repo.or.cz/tinycc.git
diff --git a/community-mod/tcc/sources b/community-mod/tcc/sources
new file mode 100644
index 0000000..7e21646
--- /dev/null
+++ b/community-mod/tcc/sources
@@ -0,0 +1 @@
+git+git://repo.or.cz/tinycc.git
diff --git a/community-mod/tcc/version b/community-mod/tcc/version
new file mode 100644
index 0000000..d4ed325
--- /dev/null
+++ b/community-mod/tcc/version
@@ -0,0 +1 @@
+git 1 
diff --git a/community-mod/tcpdump/build b/community-mod/tcpdump/build
new file mode 100755
index 0000000..ae24050
--- /dev/null
+++ b/community-mod/tcpdump/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
+
+rm -f "$1/usr/bin/tcpdump.4.9.3"
diff --git a/community-mod/tcpdump/checksums b/community-mod/tcpdump/checksums
new file mode 100644
index 0000000..60ca5cd
--- /dev/null
+++ b/community-mod/tcpdump/checksums
@@ -0,0 +1 @@
+8cf2f17a9528774a7b41060323be8b73f76024f7778f59c34efa65d49d80b842
diff --git a/community-mod/tcpdump/depends b/community-mod/tcpdump/depends
new file mode 100644
index 0000000..22a1e45
--- /dev/null
+++ b/community-mod/tcpdump/depends
@@ -0,0 +1 @@
+libpcap
diff --git a/community-mod/tcpdump/sources b/community-mod/tcpdump/sources
new file mode 100644
index 0000000..f3611bd
--- /dev/null
+++ b/community-mod/tcpdump/sources
@@ -0,0 +1 @@
+https://www.tcpdump.org/release/tcpdump-4.99.0.tar.gz
diff --git a/community-mod/tcpdump/version b/community-mod/tcpdump/version
new file mode 100644
index 0000000..c5db63a
--- /dev/null
+++ b/community-mod/tcpdump/version
@@ -0,0 +1 @@
+4.99.0 1
diff --git a/community-mod/tdb/build b/community-mod/tdb/build
new file mode 100755
index 0000000..55304f5
--- /dev/null
+++ b/community-mod/tdb/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+	
+make
+make DESTDIR="$1" install
diff --git a/community-mod/tdb/checksums b/community-mod/tdb/checksums
new file mode 100644
index 0000000..477f766
--- /dev/null
+++ b/community-mod/tdb/checksums
@@ -0,0 +1 @@
+c8058393dfa15f47e11ebd2f1d132693f0b3b3b8bf22d0201bfb305026f88a1b  tdb-1.4.3.tar.gz
diff --git a/community-mod/tdb/depends b/community-mod/tdb/depends
new file mode 100644
index 0000000..ecc7772
--- /dev/null
+++ b/community-mod/tdb/depends
@@ -0,0 +1 @@
+python make
diff --git a/community-mod/tdb/sources b/community-mod/tdb/sources
new file mode 100644
index 0000000..522465a
--- /dev/null
+++ b/community-mod/tdb/sources
@@ -0,0 +1 @@
+https://www.samba.org/ftp/tdb/tdb-1.4.3.tar.gz
diff --git a/community-mod/tdb/version b/community-mod/tdb/version
new file mode 100644
index 0000000..7bb1259
--- /dev/null
+++ b/community-mod/tdb/version
@@ -0,0 +1 @@
+1.4.3 1 
diff --git a/community-mod/tig/build b/community-mod/tig/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/community-mod/tig/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/tig/checksums b/community-mod/tig/checksums
new file mode 100644
index 0000000..9d98c01
--- /dev/null
+++ b/community-mod/tig/checksums
@@ -0,0 +1 @@
+c48284d30287a6365f8a4750eb0b122e78689a1aef8ce1d2961b6843ac246aa7
diff --git a/community-mod/tig/depends b/community-mod/tig/depends
new file mode 100644
index 0000000..b598d3d
--- /dev/null
+++ b/community-mod/tig/depends
@@ -0,0 +1,3 @@
+git
+ncurses
+readline
diff --git a/community-mod/tig/sources b/community-mod/tig/sources
new file mode 100644
index 0000000..227f2be
--- /dev/null
+++ b/community-mod/tig/sources
@@ -0,0 +1 @@
+https://github.com/jonas/tig/releases/download/tig-2.5.4/tig-2.5.4.tar.gz
diff --git a/community-mod/tig/version b/community-mod/tig/version
new file mode 100644
index 0000000..919d8f6
--- /dev/null
+++ b/community-mod/tig/version
@@ -0,0 +1 @@
+2.5.4 1
diff --git a/community-mod/tiv/build b/community-mod/tiv/build
new file mode 100755
index 0000000..54b4187
--- /dev/null
+++ b/community-mod/tiv/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+cd src/main/cpp
+
+make
+
+install -Dm755 tiv "$1/usr/bin/tiv"
diff --git a/community-mod/tiv/checksums b/community-mod/tiv/checksums
new file mode 100644
index 0000000..be80288
--- /dev/null
+++ b/community-mod/tiv/checksums
@@ -0,0 +1 @@
+727ddaa048643cb0a13e23bc308415060d99d8b1853883ad339ad7b952050d61
diff --git a/community-mod/tiv/depends b/community-mod/tiv/depends
new file mode 100644
index 0000000..648c253
--- /dev/null
+++ b/community-mod/tiv/depends
@@ -0,0 +1 @@
+imagemagick
diff --git a/community-mod/tiv/sources b/community-mod/tiv/sources
new file mode 100644
index 0000000..581cad1
--- /dev/null
+++ b/community-mod/tiv/sources
@@ -0,0 +1 @@
+https://github.com/stefanhaustein/TerminalImageViewer/archive/v1.1.0.tar.gz
diff --git a/community-mod/tiv/version b/community-mod/tiv/version
new file mode 100644
index 0000000..7281bb5
--- /dev/null
+++ b/community-mod/tiv/version
@@ -0,0 +1 @@
+1.1.0 1
diff --git a/community-mod/tmux/build b/community-mod/tmux/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/tmux/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/tmux/checksums b/community-mod/tmux/checksums
new file mode 100644
index 0000000..2d2f575
--- /dev/null
+++ b/community-mod/tmux/checksums
@@ -0,0 +1 @@
+664d345338c11cbe429d7ff939b92a5191e231a7c1ef42f381cebacb1e08a399
diff --git a/community-mod/tmux/depends b/community-mod/tmux/depends
new file mode 100644
index 0000000..229e963
--- /dev/null
+++ b/community-mod/tmux/depends
@@ -0,0 +1,2 @@
+libevent
+ncurses
diff --git a/community-mod/tmux/sources b/community-mod/tmux/sources
new file mode 100644
index 0000000..e18cc11
--- /dev/null
+++ b/community-mod/tmux/sources
@@ -0,0 +1 @@
+https://github.com/tmux/tmux/releases/download/3.2/tmux-3.2.tar.gz
diff --git a/community-mod/tmux/version b/community-mod/tmux/version
new file mode 100644
index 0000000..0ca6cc9
--- /dev/null
+++ b/community-mod/tmux/version
@@ -0,0 +1 @@
+3.2 1
diff --git a/community-mod/tor/build b/community-mod/tor/build
new file mode 100755
index 0000000..d8808ec
--- /dev/null
+++ b/community-mod/tor/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --sysconfdir=/etc \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
+
+# Install runit service.
+install -Dm755 tor.run         "$1/etc/sv/tor/run"
+ln -s /run/runit/supervise.tor "$1/etc/sv/tor/supervise"
diff --git a/community-mod/tor/checksums b/community-mod/tor/checksums
new file mode 100644
index 0000000..b5e7d85
--- /dev/null
+++ b/community-mod/tor/checksums
@@ -0,0 +1,2 @@
+447fcaaa133e2ef22427e98098a60a9c495edf9ff3e0dd13f484b9ad0185f074
+05a48bf85ace761279ef6e2353bb73e1dd78da8c03c4ae8f9aa91d320f02413d
diff --git a/community-mod/tor/depends b/community-mod/tor/depends
new file mode 100644
index 0000000..840401d
--- /dev/null
+++ b/community-mod/tor/depends
@@ -0,0 +1,3 @@
+libevent
+libressl
+zlib make
diff --git a/community-mod/tor/files/tor.run b/community-mod/tor/files/tor.run
new file mode 100644
index 0000000..b3a8b0b
--- /dev/null
+++ b/community-mod/tor/files/tor.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec tor
diff --git a/community-mod/tor/sources b/community-mod/tor/sources
new file mode 100644
index 0000000..7c705e4
--- /dev/null
+++ b/community-mod/tor/sources
@@ -0,0 +1,2 @@
+https://dist.torproject.org/tor-0.4.5.7.tar.gz
+files/tor.run
diff --git a/community-mod/tor/version b/community-mod/tor/version
new file mode 100644
index 0000000..ab6f118
--- /dev/null
+++ b/community-mod/tor/version
@@ -0,0 +1 @@
+0.4.5.7 1
diff --git a/community-mod/torsocks/build b/community-mod/torsocks/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/community-mod/torsocks/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/torsocks/checksums b/community-mod/torsocks/checksums
new file mode 100644
index 0000000..9861810
--- /dev/null
+++ b/community-mod/torsocks/checksums
@@ -0,0 +1 @@
+b9f1b981d6b3fd4e1820de1eee325f8a7038c84765d5a6cd9af12571d5cc3622  torsocks-2.3.0.tar.xz
diff --git a/community-mod/torsocks/depends b/community-mod/torsocks/depends
new file mode 100644
index 0000000..bf4577a
--- /dev/null
+++ b/community-mod/torsocks/depends
@@ -0,0 +1,3 @@
+autoconf make
+automake make
+libtool
diff --git a/community-mod/torsocks/sources b/community-mod/torsocks/sources
new file mode 100644
index 0000000..a0e23c3
--- /dev/null
+++ b/community-mod/torsocks/sources
@@ -0,0 +1 @@
+https://people.torproject.org/~dgoulet/torsocks/torsocks-2.3.0.tar.xz
diff --git a/community-mod/torsocks/version b/community-mod/torsocks/version
new file mode 100644
index 0000000..fbf7643
--- /dev/null
+++ b/community-mod/torsocks/version
@@ -0,0 +1 @@
+2.3.0 1
diff --git a/community-mod/transmission/build b/community-mod/transmission/build
new file mode 100755
index 0000000..f3b30ec
--- /dev/null
+++ b/community-mod/transmission/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --mandir=/usr/share/man \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    --disable-nls \
+    --enable-daemon \
+    --enable-utp \
+    --without-systemd-daemon \
+    --without-gtk
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/transmission/checksums b/community-mod/transmission/checksums
new file mode 100644
index 0000000..7581ff1
--- /dev/null
+++ b/community-mod/transmission/checksums
@@ -0,0 +1 @@
+423afd8e20912e62ed5e1f81382a12f0e69618930965497f3b3444a0e0e37b3b  transmission-3.00.tar.xz
diff --git a/community-mod/transmission/depends b/community-mod/transmission/depends
new file mode 100644
index 0000000..6c05b42
--- /dev/null
+++ b/community-mod/transmission/depends
@@ -0,0 +1,3 @@
+curl
+pkgconf make
+libevent
diff --git a/community-mod/transmission/sources b/community-mod/transmission/sources
new file mode 100644
index 0000000..fcc7528
--- /dev/null
+++ b/community-mod/transmission/sources
@@ -0,0 +1 @@
+https://github.com/transmission/transmission-releases/raw/c3be26293dc414523391183c03619cd9b0caa69b/transmission-3.00.tar.xz
diff --git a/community-mod/transmission/version b/community-mod/transmission/version
new file mode 100644
index 0000000..620bc34
--- /dev/null
+++ b/community-mod/transmission/version
@@ -0,0 +1 @@
+3.00 1 
diff --git a/community-mod/tree/build b/community-mod/tree/build
new file mode 100755
index 0000000..f68a4a6
--- /dev/null
+++ b/community-mod/tree/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+make
+make \
+    prefix="$1/usr" \
+    MANDIR="$1/usr/share/man/man1" \
+    install
diff --git a/community-mod/tree/checksums b/community-mod/tree/checksums
new file mode 100644
index 0000000..6f21e3e
--- /dev/null
+++ b/community-mod/tree/checksums
@@ -0,0 +1 @@
+715d5d4b434321ce74706d0dd067505bb60c5ea83b5f0b3655dae40aa6f9b7c2  tree-1.8.0.tgz
diff --git a/community-mod/tree/sources b/community-mod/tree/sources
new file mode 100644
index 0000000..0d6c8cc
--- /dev/null
+++ b/community-mod/tree/sources
@@ -0,0 +1 @@
+https://mama.indstate.edu/users/ice/tree/src/tree-1.8.0.tgz
diff --git a/community-mod/tree/version b/community-mod/tree/version
new file mode 100644
index 0000000..b56e3d8
--- /dev/null
+++ b/community-mod/tree/version
@@ -0,0 +1 @@
+1.8.0 2
diff --git a/community-mod/tty-clock/build b/community-mod/tty-clock/build
new file mode 100755
index 0000000..33df24f
--- /dev/null
+++ b/community-mod/tty-clock/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+make
+
+# No 'DESTDIR' because the Makefile doesn't support it.
+make PREFIX="$1/usr" install
diff --git a/community-mod/tty-clock/checksums b/community-mod/tty-clock/checksums
new file mode 100644
index 0000000..bb4cc84
--- /dev/null
+++ b/community-mod/tty-clock/checksums
@@ -0,0 +1 @@
+343e119858db7d5622a545e15a3bbfde65c107440700b62f9df0926db8f57984  v2.3.tar.gz
diff --git a/community-mod/tty-clock/depends b/community-mod/tty-clock/depends
new file mode 100644
index 0000000..6a470ff
--- /dev/null
+++ b/community-mod/tty-clock/depends
@@ -0,0 +1 @@
+ncurses
diff --git a/community-mod/tty-clock/sources b/community-mod/tty-clock/sources
new file mode 100644
index 0000000..137f415
--- /dev/null
+++ b/community-mod/tty-clock/sources
@@ -0,0 +1 @@
+https://github.com/xorg62/tty-clock/archive/v2.3.tar.gz
diff --git a/community-mod/tty-clock/version b/community-mod/tty-clock/version
new file mode 100644
index 0000000..1a5b467
--- /dev/null
+++ b/community-mod/tty-clock/version
@@ -0,0 +1 @@
+2.3 1 
diff --git a/community-mod/ubase/build b/community-mod/ubase/build
new file mode 100755
index 0000000..2adb8cb
--- /dev/null
+++ b/community-mod/ubase/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+for patch in *.patch; do
+    patch -p1 < "$patch"
+done
+
+sed -i \
+    -e "/^CFLAGS/s/=/= $CFLAGS -static/" \
+    -e "/^LDFLAGS/s/=/= $LDFLAGS -static/" \
+    config.mk
+
+make ubase-box
+make DESTDIR="$1" PREFIX=/usr ubase-box-install
+
+# Remove 'su' which doesn't support '-c'.
+unlink "$1/usr/bin/su"
+unlink "$1/usr/bin/stat"
diff --git a/community-mod/ubase/checksums b/community-mod/ubase/checksums
new file mode 100644
index 0000000..6f49547
--- /dev/null
+++ b/community-mod/ubase/checksums
@@ -0,0 +1,2 @@
+714715936ff5e8a3574a41031cfbf05d4b061f19fcc07175e717f5db70b7f8e4
+4b2932a50164230b0defd4de008e423babf053bac823930258378b0efee64065
diff --git a/community-mod/ubase/patches/f3aa4b156360ce4a18e4a3897f883b663771ba24.patch b/community-mod/ubase/patches/f3aa4b156360ce4a18e4a3897f883b663771ba24.patch
new file mode 100644
index 0000000..d998460
--- /dev/null
+++ b/community-mod/ubase/patches/f3aa4b156360ce4a18e4a3897f883b663771ba24.patch
@@ -0,0 +1,70 @@
+From f3aa4b156360ce4a18e4a3897f883b663771ba24 Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Mon, 5 Aug 2019 15:45:17 -0700
+Subject: [PATCH] Include sys/sysmacros.h when major is not defined in
+ sys/types.h
+
+---
+ libutil/tty.c | 5 ++++-
+ mknod.c       | 3 +++
+ mountpoint.c  | 3 +++
+ stat.c        | 3 +++
+ 4 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/libutil/tty.c b/libutil/tty.c
+index bceb01e..f56388e 100644
+--- a/libutil/tty.c
++++ b/libutil/tty.c
+@@ -1,6 +1,9 @@
+ /* See LICENSE file for copyright and license details. */
+-#include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/types.h>
++#ifndef major
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include <fcntl.h>
+ #include <dirent.h>
+diff --git a/mknod.c b/mknod.c
+index 8de35c7..9dbede7 100644
+--- a/mknod.c
++++ b/mknod.c
+@@ -1,6 +1,9 @@
+ /* See LICENSE file for copyright and license details. */
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#ifndef major
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include <fcntl.h>
+ #include <stdio.h>
+diff --git a/mountpoint.c b/mountpoint.c
+index 8f205a2..726cc80 100644
+--- a/mountpoint.c
++++ b/mountpoint.c
+@@ -1,6 +1,9 @@
+ /* See LICENSE file for copyright and license details. */
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#ifndef major
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include <mntent.h>
+ #include <stdio.h>
+diff --git a/stat.c b/stat.c
+index 220a659..3a6569b 100644
+--- a/stat.c
++++ b/stat.c
+@@ -1,6 +1,9 @@
+ /* See LICENSE file for copyright and license details. */
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#ifndef major
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include <inttypes.h>
+ #include <stdio.h>
diff --git a/community-mod/ubase/patches/fix-mount.patch b/community-mod/ubase/patches/fix-mount.patch
new file mode 100644
index 0000000..965b69d
--- /dev/null
+++ b/community-mod/ubase/patches/fix-mount.patch
@@ -0,0 +1,12 @@
+diff --git a/mount.c b/mount.c
+index e3d00b8..172fd05 100644
+--- a/mount.c
++++ b/mount.c
+@@ -36,6 +36,7 @@ struct {
+ 	{ "mand",       "nomand",       MS_MANDLOCK    },
+ 	{ "relatime",   "norelatime",   MS_RELATIME    },
+ 	{ "bind",       NULL,           MS_BIND        },
++	{ "move",       NULL,           MS_MOVE        },
+ 	{ NULL,         NULL,           0              }
+ };
+ 
diff --git a/community-mod/ubase/sources b/community-mod/ubase/sources
new file mode 100644
index 0000000..9ace832
--- /dev/null
+++ b/community-mod/ubase/sources
@@ -0,0 +1,3 @@
+git+git://git.suckless.org/ubase
+patches/f3aa4b156360ce4a18e4a3897f883b663771ba24.patch
+patches/fix-mount.patch
diff --git a/community-mod/ubase/version b/community-mod/ubase/version
new file mode 100644
index 0000000..421ae56
--- /dev/null
+++ b/community-mod/ubase/version
@@ -0,0 +1 @@
+git 4 
diff --git a/community-mod/unifont/build b/community-mod/unifont/build
new file mode 100755
index 0000000..4beac8b
--- /dev/null
+++ b/community-mod/unifont/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make DESTDIR="$1" CC="${CC:-cc}"
+make DESTDIR="$1" install
diff --git a/community-mod/unifont/checksums b/community-mod/unifont/checksums
new file mode 100644
index 0000000..ad4fe5f
--- /dev/null
+++ b/community-mod/unifont/checksums
@@ -0,0 +1 @@
+68def7a46df44241c7bf62de7ce0444e8ee9782f159c4b7553da9cfdc00be925
diff --git a/community-mod/unifont/sources b/community-mod/unifont/sources
new file mode 100644
index 0000000..b5e173f
--- /dev/null
+++ b/community-mod/unifont/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/unifont/unifont-13.0.06/unifont-13.0.06.tar.gz
diff --git a/community-mod/unifont/version b/community-mod/unifont/version
new file mode 100644
index 0000000..9abdb50
--- /dev/null
+++ b/community-mod/unifont/version
@@ -0,0 +1 @@
+13.0.06 1
diff --git a/community-mod/urlview/build b/community-mod/urlview/build
new file mode 100755
index 0000000..67c1f8e
--- /dev/null
+++ b/community-mod/urlview/build
@@ -0,0 +1,34 @@
+#!/bin/sh -e
+
+gunzip urlview_0.9-21.diff.gz
+patch -p1 < urlview_0.9-21.diff
+
+# Move user config to ~/.config/urlview/conf
+sed -i 's|%s/\.urlview|%s/\.config/urlview/conf|' urlview.c
+sed -i 's|~/.urlview|~/.config/urlview/conf|g' urlview.man
+
+# The included url_handler.sh is extremely outdated -- use $BROWSER by default.
+# We don't want $BROWSER to expand.
+# shellcheck disable=SC2016
+sed -i 's|COMMAND url_handler\.sh|COMMAND \$BROWSER %s|' sample.urlview
+
+aclocal
+automake \
+    --foreign \
+    --ignore-deps \
+    --add-missing
+
+./configure \
+    --prefix=/usr
+
+make
+
+# Need to create dirs before `make install`.
+install -d "$1/etc/urlview" "$1/usr/share/man/man1"
+
+make \
+    prefix="$1/usr" \
+    mandir="$1/usr/share/man" \
+    install
+
+install -Dm644 sample.urlview "$1/etc/urlview/system.urlview"
diff --git a/community-mod/urlview/checksums b/community-mod/urlview/checksums
new file mode 100644
index 0000000..539e416
--- /dev/null
+++ b/community-mod/urlview/checksums
@@ -0,0 +1,2 @@
+746ff540ccf601645f500ee7743f443caf987d6380e61e5249fc15f7a455ed42  urlview_0.9.orig.tar.gz
+efdf6a279d123952820dd6185ab9399ee1bf081ea3dd613dc96933cd1827a9e9  urlview_0.9-21.diff.gz
diff --git a/community-mod/urlview/depends b/community-mod/urlview/depends
new file mode 100644
index 0000000..fbabccb
--- /dev/null
+++ b/community-mod/urlview/depends
@@ -0,0 +1,4 @@
+autoconf make
+automake make
+gzip make
+ncurses
diff --git a/community-mod/urlview/sources b/community-mod/urlview/sources
new file mode 100644
index 0000000..f86dd59
--- /dev/null
+++ b/community-mod/urlview/sources
@@ -0,0 +1,2 @@
+https://deb.debian.org/debian/pool/main/u/urlview/urlview_0.9.orig.tar.gz
+https://deb.debian.org/debian/pool/main/u/urlview/urlview_0.9-21.diff.gz
diff --git a/community-mod/urlview/version b/community-mod/urlview/version
new file mode 100644
index 0000000..b7c2dda
--- /dev/null
+++ b/community-mod/urlview/version
@@ -0,0 +1 @@
+0.9-21 1
diff --git a/community-mod/usbutils/build b/community-mod/usbutils/build
new file mode 100755
index 0000000..6184d1d
--- /dev/null
+++ b/community-mod/usbutils/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/usbutils/checksums b/community-mod/usbutils/checksums
new file mode 100644
index 0000000..44514f9
--- /dev/null
+++ b/community-mod/usbutils/checksums
@@ -0,0 +1 @@
+9e23494fcc78b7a80ee29a07dd179c95ae2f71509c35728dbbabc2d1cca41338
diff --git a/community-mod/usbutils/depends b/community-mod/usbutils/depends
new file mode 100644
index 0000000..0bd6d34
--- /dev/null
+++ b/community-mod/usbutils/depends
@@ -0,0 +1,3 @@
+eudev
+libtool make
+libusb
diff --git a/community-mod/usbutils/sources b/community-mod/usbutils/sources
new file mode 100644
index 0000000..002b318
--- /dev/null
+++ b/community-mod/usbutils/sources
@@ -0,0 +1 @@
+https://kernel.org/pub/linux/utils/usb/usbutils/usbutils-013.tar.xz
diff --git a/community-mod/usbutils/version b/community-mod/usbutils/version
new file mode 100644
index 0000000..3a4374f
--- /dev/null
+++ b/community-mod/usbutils/version
@@ -0,0 +1 @@
+013 1
diff --git a/community-mod/uthash/build b/community-mod/uthash/build
new file mode 100755
index 0000000..0cbcef8
--- /dev/null
+++ b/community-mod/uthash/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+install -d "$1/usr/include"
+install -m644 ./include/*.h "$1/usr/include"
diff --git a/community-mod/uthash/checksums b/community-mod/uthash/checksums
new file mode 100644
index 0000000..d8c9cab
--- /dev/null
+++ b/community-mod/uthash/checksums
@@ -0,0 +1 @@
+e10382ab75518bad8319eb922ad04f907cb20cccb451a3aa980c9d005e661acc
diff --git a/community-mod/uthash/sources b/community-mod/uthash/sources
new file mode 100644
index 0000000..347d5e0
--- /dev/null
+++ b/community-mod/uthash/sources
@@ -0,0 +1 @@
+https://github.com/troydhanson/uthash/archive/v2.3.0.tar.gz
diff --git a/community-mod/uthash/version b/community-mod/uthash/version
new file mode 100644
index 0000000..fbf7643
--- /dev/null
+++ b/community-mod/uthash/version
@@ -0,0 +1 @@
+2.3.0 1
diff --git a/community-mod/webkit2gtk/build b/community-mod/webkit2gtk/build
new file mode 100755
index 0000000..bebe756
--- /dev/null
+++ b/community-mod/webkit2gtk/build
@@ -0,0 +1,52 @@
+#!/bin/sh -e
+
+# Enable streaming related options if gstreamer is installed.
+kiss list gst-plugins-base && streaming=ON
+
+# Enable the use of openjpeg if the package is installed.
+kiss list openjpeg2 && jpeg=ON
+
+# Enable WEB_CRYPTO if libtasn1 is installed.
+kiss list libtasn1 && tasn=ON
+
+# Remove gettext requirement.
+sed -i 's/ngettext/printf/g' Tools/MiniBrowser/gtk/BrowserDownloadsBar.c
+sed -i '/po_files \*\.po/d'  Source/WebCore/platform/gtk/po/CMakeLists.txt
+sed -i '/^GETTEXT_C/d'       Source/WebCore/platform/gtk/po/CMakeLists.txt
+
+# Fix clang build.
+sed -i '/LC_ALL/d'       Source/JavaScriptCore/jsc.cpp
+sed -i '/WTFLogAlways/d' Source/JavaScriptCore/jsc.cpp
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib \
+    -DLIB_INSTALL_DIR=/usr/lib \
+    -DPORT=GTK \
+    -DCMAKE_SKIP_RPATH=ON \
+    -DENABLE_BUBBLEWRAP_SANDBOX=OFF \
+    -DENABLE_SAMPLING_PROFILER=OFF \
+    -DENABLE_GAMEPAD=OFF \
+    -DENABLE_GEOLOCATION=OFF \
+    -DENABLE_GLES2=ON \
+    -DENABLE_INTROSPECTION=OFF \
+    -DENABLE_MINIBROWSER=OFF \
+    -DENABLE_SPELLCHECK=OFF \
+    -DUSE_GSTREAMER_GL=OFF \
+    -DUSE_LIBHYPHEN=OFF \
+    -DUSE_LIBNOTIFY=OFF \
+    -DUSE_LIBSECRET=OFF \
+    -DUSE_OPENJPEG=${jpeg:-OFF} \
+    -DUSE_SYSTEMD=OFF \
+    -DUSE_WOFF2=OFF \
+    -DUSE_WPE_RENDERER=OFF \
+    -DENABLE_WEB_CRYPTO=${tasn:-OFF} \
+    -DENABLE_VIDEO=${streaming:-OFF} \
+    -DENABLE_WEB_AUDIO=${streaming:-OFF} \
+    -Wno-dev
+
+cmake --build   build
+cmake --install build
diff --git a/community-mod/webkit2gtk/checksums b/community-mod/webkit2gtk/checksums
new file mode 100644
index 0000000..d54dac3
--- /dev/null
+++ b/community-mod/webkit2gtk/checksums
@@ -0,0 +1 @@
+136117317f70f66486f71b8edf5e46f8776403c5d8a296e914b11a36ef836917
diff --git a/community-mod/webkit2gtk/depends b/community-mod/webkit2gtk/depends
new file mode 100644
index 0000000..b8634fc
--- /dev/null
+++ b/community-mod/webkit2gtk/depends
@@ -0,0 +1,16 @@
+cairo
+cmake  make
+glib-networking
+gperf  make
+gtk+3
+harfbuzz-icu
+libXt
+libgcrypt
+libsoup
+libwebp
+libxslt
+mesa
+perl   make
+python make
+ruby   make
+sqlite
diff --git a/community-mod/webkit2gtk/sources b/community-mod/webkit2gtk/sources
new file mode 100644
index 0000000..44800c4
--- /dev/null
+++ b/community-mod/webkit2gtk/sources
@@ -0,0 +1 @@
+https://webkitgtk.org/releases/webkitgtk-2.32.1.tar.xz
diff --git a/community-mod/webkit2gtk/version b/community-mod/webkit2gtk/version
new file mode 100644
index 0000000..0bada59
--- /dev/null
+++ b/community-mod/webkit2gtk/version
@@ -0,0 +1 @@
+2.32.1 1
diff --git a/community-mod/weechat/build b/community-mod/weechat/build
new file mode 100755
index 0000000..f9aa473
--- /dev/null
+++ b/community-mod/weechat/build
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DENABLE_PYTHON=OFF \
+    -DENABLE_PERL=OFF \
+    -DENABLE_PHP=OFF \
+    -DENABLE_RUBY=OFF \
+    -DENABLE_TCL=OFF \
+    -DENABLE_LUA=OFF \
+    -DENABLE_GUILE=OFF \
+    -DENABLE_SPELL=OFF \
+    -DENABLE_MAN=OFF
+
+cmake --build build
+cmake --install build
diff --git a/community-mod/weechat/checksums b/community-mod/weechat/checksums
new file mode 100644
index 0000000..774241a
--- /dev/null
+++ b/community-mod/weechat/checksums
@@ -0,0 +1 @@
+39a8adf374e80653c9dd2be06870341594ea081b3a9c3690132e556abf9d87a8
diff --git a/community-mod/weechat/depends b/community-mod/weechat/depends
new file mode 100644
index 0000000..d8c73d3
--- /dev/null
+++ b/community-mod/weechat/depends
@@ -0,0 +1,6 @@
+cmake make
+pkgconf make
+gnutls
+ncurses
+libgcrypt
+zlib
diff --git a/community-mod/weechat/sources b/community-mod/weechat/sources
new file mode 100644
index 0000000..4848ff2
--- /dev/null
+++ b/community-mod/weechat/sources
@@ -0,0 +1 @@
+https://weechat.org/files/src/weechat-3.2.tar.xz
diff --git a/community-mod/weechat/version b/community-mod/weechat/version
new file mode 100644
index 0000000..0ca6cc9
--- /dev/null
+++ b/community-mod/weechat/version
@@ -0,0 +1 @@
+3.2 1
diff --git a/community-mod/wget/build b/community-mod/wget/build
new file mode 100755
index 0000000..817eb4c
--- /dev/null
+++ b/community-mod/wget/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --with-ssl=openssl 
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/wget/checksums b/community-mod/wget/checksums
new file mode 100644
index 0000000..86278b0
--- /dev/null
+++ b/community-mod/wget/checksums
@@ -0,0 +1 @@
+59ba0bdade9ad135eda581ae4e59a7a9f25e3a4bde6a5419632b31906120e26e
diff --git a/community-mod/wget/depends b/community-mod/wget/depends
new file mode 100644
index 0000000..75929cf
--- /dev/null
+++ b/community-mod/wget/depends
@@ -0,0 +1 @@
+libressl
diff --git a/community-mod/wget/sources b/community-mod/wget/sources
new file mode 100644
index 0000000..fa08b48
--- /dev/null
+++ b/community-mod/wget/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/wget/wget-1.21.1.tar.gz
diff --git a/community-mod/wget/version b/community-mod/wget/version
new file mode 100644
index 0000000..31e499e
--- /dev/null
+++ b/community-mod/wget/version
@@ -0,0 +1 @@
+1.21.1 1
diff --git a/community-mod/wireguard-tools/build b/community-mod/wireguard-tools/build
new file mode 100755
index 0000000..d4d0613
--- /dev/null
+++ b/community-mod/wireguard-tools/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+cd src
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/wireguard-tools/checksums b/community-mod/wireguard-tools/checksums
new file mode 100644
index 0000000..020400c
--- /dev/null
+++ b/community-mod/wireguard-tools/checksums
@@ -0,0 +1 @@
+b288b0c43871d919629d7e77846ef0b47f8eeaa9ebc9cedeee8233fc6cc376ad
diff --git a/community-mod/wireguard-tools/sources b/community-mod/wireguard-tools/sources
new file mode 100644
index 0000000..bbf0728
--- /dev/null
+++ b/community-mod/wireguard-tools/sources
@@ -0,0 +1 @@
+https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-1.0.20210424.tar.xz
diff --git a/community-mod/wireguard-tools/version b/community-mod/wireguard-tools/version
new file mode 100644
index 0000000..dae32d5
--- /dev/null
+++ b/community-mod/wireguard-tools/version
@@ -0,0 +1 @@
+1.0.20210424 1
diff --git a/community-mod/x11vnc/build b/community-mod/x11vnc/build
new file mode 100755
index 0000000..584aee5
--- /dev/null
+++ b/community-mod/x11vnc/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < bugfixes.patch
+patch -p1 < libressl.patch
+
+./autogen.sh
+
+./configure \
+	--prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/x11vnc/checksums b/community-mod/x11vnc/checksums
new file mode 100644
index 0000000..8576145
--- /dev/null
+++ b/community-mod/x11vnc/checksums
@@ -0,0 +1,3 @@
+885e5b5f5f25eec6f9e4a1e8be3d0ac71a686331ee1cfb442dba391111bd32bd  x11vnc-0.9.16.tar.gz
+456a6919f570e7431c658784ea28b2ede893677ddf687c9b12eb3a91978269f0  bugfixes.patch
+cfeff7fa420e789debc1d12ec288e6122166454a9d37cafb5e1395f5debb9f80  libressl.patch
diff --git a/community-mod/x11vnc/depends b/community-mod/x11vnc/depends
new file mode 100644
index 0000000..beef66b
--- /dev/null
+++ b/community-mod/x11vnc/depends
@@ -0,0 +1,4 @@
+libvncserver
+xrandr
+automake make
+autoconf make
diff --git a/community-mod/x11vnc/patches/bugfixes.patch b/community-mod/x11vnc/patches/bugfixes.patch
new file mode 100644
index 0000000..75a4bcd
--- /dev/null
+++ b/community-mod/x11vnc/patches/bugfixes.patch
@@ -0,0 +1,480 @@
+--- x11vnc-0.9.16/src/cleanup.c
++++ x11vnc/src/cleanup.c
+@@ -492,7 +492,7 @@
+ 		}
+ 
+ 		if (*str == 'q' && *(str+1) == '\0') {
+-			fprintf(stderr, "quiting.\n");
++			fprintf(stderr, "quitting.\n");
+ 			return;
+ 		} else if (*str == 'h' && *(str+1) == '\0') {
+ 			crash_shell_help();
+--- x11vnc-0.9.16/src/cursor.c
++++ x11vnc/src/cursor.c
+@@ -1311,7 +1311,7 @@
+ 
+ 		/* retrieve the cursor info + pixels from server: */
+ 		xfc = XFixesGetCursorImage(dpy);
+-		{
++		if (xfc) {
+ 			/* 2017-07-09, Stephan Fuhrmann: This fixes an implementation flaw for 64 bit systems.
+ 			 * The XFixesCursorImage structure says xfc->pixels is (unsigned long*) in the structure, but
+ 			 * the protocol spec says it's 32 bit per pixel
+--- x11vnc-0.9.16/src/help.c
++++ x11vnc/src/help.c
+@@ -3614,7 +3614,7 @@
+ "-ncache_no_dtchange    In -ncache mode, do not try to guess when the desktop\n"
+ "                       (viewport) changes to another one (i.e. another\n"
+ "                       workarea).  The default is to try to guess and when\n"
+-"                       detected try to make the transistion more smoothly.\n"
++"                       detected try to make the transition more smoothly.\n"
+ "\n"
+ "-ncache_no_rootpixmap  In -ncache mode, do not try to snapshot the desktop\n"
+ "                       background to use in guessing or reconstructing window\n"
+@@ -3716,7 +3716,7 @@
+ "                       \"mode\" can be \"never\" (same as -nowirecopyrect)\n"
+ "                       to never try the copyrect, \"top\" means only do it if\n"
+ "                       the window was not covered by any other windows, and\n"
+-"                       \"always\" means to translate the orginally unobscured\n"
++"                       \"always\" means to translate the originally unobscured\n"
+ "                       region (this may look odd as the remaining pieces come\n"
+ "                       in, but helps on a slow link).  Default: \"%s\"\n"
+ "\n"
+@@ -3990,7 +3990,7 @@
+ "                       to \"eat\" much of that pointer input before re-polling\n"
+ "                       the screen and sending out framebuffer updates. The\n"
+ "                       mode number \"n\" can be 0 to %d and selects one of\n"
+-"                       the schemes desribed below.\n"
++"                       the schemes described below.\n"
+ "\n"
+ "                       Note that the -wireframe and -scrollcopyrect modes\n"
+ "                       complement -pointer_mode by detecting (and improving)\n"
+@@ -4060,7 +4060,7 @@
+ "                       read rate may be much faster.  \"x11perf -getimage500\"\n"
+ "                       can be used to get a lower bound (remember to factor\n"
+ "                       in the bytes per pixel).  It is up to you to estimate\n"
+-"                       the network bandwith and latency to clients.  For the\n"
++"                       the network bandwidth and latency to clients.  For the\n"
+ "                       latency the ping(1) command can be used.\n"
+ "\n"
+ "                       For convenience there are some aliases provided,\n"
+@@ -5776,7 +5776,7 @@
+ "                       you can still specify these parameters on the command\n"
+ "                       line, they just cannot be invoked via remote-control.\n"
+ "-safer                 Equivalent to: -novncconnect -noremote and prohibiting\n"
+-"                       -gui and the -connect file. Shuts off communcation\n"
++"                       -gui and the -connect file. Shuts off communication\n"
+ "                       channels.\n"
+ "-privremote            Perform some sanity checks and disable remote-control\n"
+ "                       commands if it appears that the X DISPLAY and/or\n"
+@@ -6032,7 +6032,7 @@
+ "#@                                                           @#\n"
+ "#@  Or using the x11vnc SSL options: -ssl and -stunnel       @#\n"
+ "#@                                                           @#\n"
+-"#@  Please Read the documention for more info about          @#\n"
++"#@  Please Read the documentation for more info about        @#\n"
+ "#@  passwords, security, and encryption.                     @#\n"
+ "#@                                                           @#\n"
+ "#@    http://www.karlrunge.com/x11vnc/faq.html#faq-passwd    @#\n"
+--- x11vnc-0.9.16/src/inet.c
++++ x11vnc/src/inet.c
+@@ -670,6 +670,10 @@
+ 		return -1;
+ 	}
+ 	saun.sun_family = AF_UNIX;
++	if(strlen(file) + 1 > sizeof(saun.sun_path)) {
++	        rfbLogPerror("listen_unix: socket name too long");
++		return -1;
++	}
+ 	strcpy(saun.sun_path, file);
+ 	unlink(file);
+ 
+--- x11vnc-0.9.16/src/linuxfb.c
++++ x11vnc/src/linuxfb.c
+@@ -53,9 +53,31 @@
+ char *console_guess(char *str, int *fd);
+ void console_key_command(rfbBool down, rfbKeySym keysym, rfbClientPtr client);
+ void console_pointer_command(int mask, int x, int y, rfbClientPtr client);
++void linux_dev_fb_msg(char *);
+ 
++/* Returns offset into fb memory based on yoffset. */
++int rawfb_get_offset(int *fd)
++{
++#if HAVE_LINUX_FB_H
++	int offset;
++	struct fb_var_screeninfo var_info;
++	if (ioctl(*fd, FBIOGET_VSCREENINFO, &var_info)) {
++		perror("ioctl");
++		return 0;
++	}
+ 
+-void linux_dev_fb_msg(char *);
++	/* todo: How should x offset be handled? */
++	if (var_info.xoffset != 0) {
++		rfbLog("rawfb xoffset handling not implemented");
++	}
++
++	if (var_info.yoffset != 0) {
++		offset = main_bytes_per_line * var_info.yoffset;
++		return offset;
++	}
++#endif
++	return 0;
++}
+ 
+ char *console_guess(char *str, int *fd) {
+ 	char *q, *in = strdup(str);
+--- x11vnc-0.9.16/src/linuxfb.h
++++ x11vnc/src/linuxfb.h
+@@ -37,6 +37,7 @@
+ extern char *console_guess(char *str, int *fd);
+ extern void console_key_command(rfbBool down, rfbKeySym keysym, rfbClientPtr client);
+ extern void console_pointer_command(int mask, int x, int y, rfbClientPtr client);
++extern int rawfb_get_offset(int *fd);
+ 
+ 
+ #endif /* _X11VNC_LINUXFB_H */
+--- x11vnc-0.9.16/src/params.h
++++ x11vnc/src/params.h
+@@ -75,7 +75,7 @@
+ #define PIPEINPUT_MACOSX	0x4
+ #define PIPEINPUT_VNC		0x5
+ 
+-#define MAX_BUTTONS 5
++#define MAX_BUTTONS 7
+ 
+ #define ROTATE_NONE		0
+ #define ROTATE_X		1
+--- x11vnc-0.9.16/src/screen.c
++++ x11vnc/src/screen.c
+@@ -109,6 +109,7 @@
+ int rawfb_reset = -1;
+ int rawfb_dev_video = 0;
+ int rawfb_vnc_reflect = 0;
++int rawfb_double_buffer = 0;
+ 
+ /*
+  * X11 and rfb display/screen related routines
+@@ -1942,14 +1943,25 @@
+ 
+ 
+ 	/* +O offset */
++	char *end = NULL;
+ 	if ((q = strrchr(str, '+')) != NULL) {
+-		if (sscanf(q, "+%d", &raw_fb_offset) == 1) {
+-			*q = '\0';
+-		} else {
++		end = q;
++		if (sscanf(q, "+%d", &raw_fb_offset) != 1) {
+ 			raw_fb_offset = 0;
+ 		}
+ 	}
+-	/* :R/G/B masks */
++
++	/* #VWxVH virtual dimensions */
++	if ((q = strrchr(str, '#')) != NULL) {
++		if (q < end) end = q;
++		if (sscanf(q, "#%dx%d", &raw_fb_virt_x, &raw_fb_virt_y) != 2) {
++			raw_fb_virt_x = 0;
++			raw_fb_virt_y = 0;
++		}
++	}
++
++	if (end != NULL) *end = '\0';
++
+ 	if ((q = strrchr(str, ':')) != NULL) {
+ 		if (sscanf(q, ":%lx/%lx/%lx", &rm, &gm, &bm) == 3) {
+ 			*q = '\0';
+@@ -2138,7 +2150,7 @@
+ 	} else if (strstr(str, "map:") == str || strstr(str, "mmap:") == str
+ 	    || strstr(str, "file:") == str) {
+ 		/* map:/path/... or file:/path  */
+-		int fd, do_mmap = 1, size;
++		int fd, do_mmap = 1, size, vsize = 0;
+ 		struct stat sbuf;
+ 
+ 		if (*str == 'f') {
+@@ -2178,9 +2190,15 @@
+ 			size = w*h*raw_fb_native_bpp/8 + raw_fb_offset;
+ 		} else if (xform24to32) {
+ 			size = w*h*24/8 + raw_fb_offset;
++		} else if (raw_fb_virt_x != 0 && raw_fb_virt_y != 0) {
++			size = w*h*b/8;
++			vsize = raw_fb_virt_x*raw_fb_virt_y*b/8;
++			rawfb_double_buffer = 1;
++			rfbLog("virtual size: %d", vsize);
+ 		} else {
+ 			size = w*h*b/8 + raw_fb_offset;
+ 		}
++
+ 		if (fstat(fd, &sbuf) == 0) {
+ 			if (S_ISREG(sbuf.st_mode)) {
+ 				if (0) size = sbuf.st_size;
+@@ -2205,8 +2223,11 @@
+ 
+ 		} else if (do_mmap) {
+ #if LIBVNCSERVER_HAVE_MMAP
+-			raw_fb_addr = mmap(0, size, PROT_READ, MAP_SHARED,
+-			    fd, 0);
++			if (vsize != 0) {
++				raw_fb_addr = mmap(0, vsize, PROT_READ, MAP_SHARED, fd, 0);
++			} else {
++				raw_fb_addr = mmap(0, size, PROT_READ, MAP_SHARED, fd, 0);
++			}
+ 
+ 			if (raw_fb_addr == MAP_FAILED || raw_fb_addr == NULL) {
+ 				rfbLogEnable(1);
+@@ -2223,8 +2244,13 @@
+ 				raw_fb_mmap = size;
+ 
+ 				rfbLog("rawfb: mmap file: %s\n", q);
+-				rfbLog("   w: %d h: %d b: %d addr: %p sz: %d\n", w, h,
+-				    b, raw_fb_addr, size);
++				if (vsize != 0) {
++					rfbLog("   w: %d h: %d b: %d addr: %p sz: %d\n", w, h,
++						b, raw_fb_addr, vsize);
++				} else {
++					rfbLog("   w: %d h: %d b: %d addr: %p sz: %d\n", w, h,
++						b, raw_fb_addr, size);
++				}
+ 				last_mode = RAWFB_MMAP;
+ 			}
+ #else
+@@ -4652,6 +4678,12 @@
+ 			/* Now, for scanning and drawing soft cursors (i.e. writing to the framebuffer),
+ 			   make sure we're not sending any updates to clients (i.e. reading the framebuffer).
+ 			   Otherwise we get flicker! */
++
++			/* Update offset in case local framebuffer is double buffered */
++			if (rawfb_double_buffer) {
++				raw_fb_offset = rawfb_get_offset(&raw_fb_fd);
++			}
++
+ 			if(use_threads){
+ 			  rfbClientPtr cl;
+ 			  rfbClientIteratorPtr iter = rfbGetClientIterator(screen);
+--- x11vnc-0.9.16/src/sslhelper.c
++++ x11vnc/src/sslhelper.c
+@@ -1596,7 +1596,11 @@
+ 	if (ssl_client_mode) {
+ 		return 1;
+ 	}
+-	if (!SSL_CTX_set_cipher_list(ctx, "ADH:@STRENGTH")) {
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++	/* Security level must be set to 0 for unauthenticated suites. */
++	SSL_CTX_set_security_level(ctx, 0);
++#endif
++	if (!SSL_CTX_set_cipher_list(ctx, "ADH:@SECLEVEL=0")) {
+ 		return 0;
+ 	}
+ 	if (!add_anon_dh()) {
+--- x11vnc-0.9.16/src/ssltools.h
++++ x11vnc/src/ssltools.h
+@@ -103,7 +103,7 @@
+ "private_key	= $dir/private/cakey.pem # The private key\n"
+ "RANDFILE	= $dir/private/.rand	# private random number file\n"
+ "\n"
+-"x509_extensions	= usr_cert		# The extentions to add to the cert\n"
++"x509_extensions	= usr_cert		# The extensions to add to the cert\n"
+ "\n"
+ "name_opt 	= ca_default		# Subject Name options\n"
+ "cert_opt 	= ca_default		# Certificate field options\n"
+@@ -139,7 +139,7 @@
+ "default_keyfile 	= privkey.pem\n"
+ "distinguished_name	= req_distinguished_name\n"
+ "attributes		= req_attributes\n"
+-"x509_extensions	= v3_ca	# The extentions to add to the self signed cert\n"
++"x509_extensions	= v3_ca	# The extensions to add to the self signed cert\n"
+ "\n"
+ "string_mask = nombstr\n"
+ "\n"
+--- x11vnc-0.9.16/src/tkx11vnc.h
++++ x11vnc/src/tkx11vnc.h
+@@ -506,7 +506,7 @@
+ "display (VNC_CONNECT rootwin property) being polled by the x11vnc server.\n"
+ "To change or set the X display to use do \\\"Displays -> display\\\".\n"
+ "\n"
+-"Sometimes the \\\"-connect /path/to/filename\\\" is used as the communcation\n"
++"Sometimes the \\\"-connect /path/to/filename\\\" is used as the communication\n"
+ "channel.  The running x11vnc has to know that \\\"/path/to/filename\\\"\n"
+ "is the communication channel (i.e. it is using the same -connect option).\n"
+ "\"\n"
+@@ -1227,7 +1227,7 @@
+ "provides an interface to each of the many x11vnc command line options and\n"
+ "remote control commands.  See \\\"Help -> all\\\" for much info about x11vnc.\n"
+ "\n"
+-"For a simplier gui, run x11vnc in \\\"tray\\\" or \\\"icon\\\" mode such as\n"
++"For a simpler gui, run x11vnc in \\\"tray\\\" or \\\"icon\\\" mode such as\n"
+ "\\\"-gui tray\\\", \\\"-gui icon\\\", or \\\"-gui tray=setpass\\\".  In that\n"
+ "mode the full gui is only available under \\\"Advanced ...\\\".\n"
+ "\n"
+@@ -3366,7 +3366,7 @@
+ "proc menu_help {item} {\n"
+ "	if ![help_win $item] {\n"
+ "		textwin \"nohelp\" \"No help available\" \\\n"
+-"			\"Sorry, no help avaiable for \\\"$item\\\"\"\n"
++"			\"Sorry, no help available for \\\"$item\\\"\"\n"
+ "	}\n"
+ "}\n"
+ "\n"
+--- x11vnc-0.9.16/src/uinput.c
++++ x11vnc/src/uinput.c
+@@ -54,6 +54,11 @@
+ #include <linux/input.h>
+ #include <linux/uinput.h>
+ 
++#ifndef input_event_sec
++#define input_event_sec time.tv_sec
++#define input_event_usec time.tv_usec
++#endif
++
+ #if !defined(EV_SYN) || !defined(SYN_REPORT)
+ #undef UINPUT_OK
+ #endif
+@@ -710,6 +715,7 @@
+ static void ptr_move(int dx, int dy) {
+ #ifdef UINPUT_OK
+ 	struct input_event ev;
++	struct timeval tval;
+ 	int d = direct_rel_fd < 0 ? fd : direct_rel_fd;
+ 
+ 	if (injectable && strchr(injectable, 'M') == NULL) {
+@@ -720,7 +726,9 @@
+ 
+ 	if (db) fprintf(stderr, "ptr_move(%d, %d) fd=%d\n", dx, dy, d);
+ 
+-	gettimeofday(&ev.time, NULL);
++	gettimeofday(&tval, NULL);
++	ev.input_event_sec = tval.tv_sec;
++	ev.input_event_usec = tval.tv_usec;
+ 	ev.type = EV_REL;
+ 	ev.code = REL_Y;
+ 	ev.value = dy;
+@@ -755,6 +763,7 @@
+ static void ptr_abs(int x, int y, int p) {
+ #ifdef UINPUT_OK
+ 	struct input_event ev;
++	struct timeval tval;
+ 	int x0, y0;
+ 	int d = direct_abs_fd < 0 ? fd : direct_abs_fd;
+ 
+@@ -773,7 +782,9 @@
+ 
+ 	if (db) fprintf(stderr, "ptr_abs(%d, %d => %d %d, p=%d) fd=%d\n", x0, y0, x, y, p, d);
+ 
+-	gettimeofday(&ev.time, NULL);
++	gettimeofday(&tval, NULL);
++	ev.input_event_sec = tval.tv_sec;
++	ev.input_event_usec = tval.tv_usec;
+ 	ev.type = EV_ABS;
+ 	ev.code = ABS_Y;
+ 	ev.value = y;
+@@ -950,6 +961,7 @@
+ static void button_click(int down, int btn) {
+ #ifdef UINPUT_OK
+ 	struct input_event ev;
++	struct timeval tval;
+ 	int d = direct_btn_fd < 0 ? fd : direct_btn_fd;
+ 
+ 	if (injectable && strchr(injectable, 'B') == NULL) {
+@@ -959,7 +971,9 @@
+ 	if (db) fprintf(stderr, "button_click: btn %d %s fd=%d\n", btn, down ? "down" : "up", d);
+ 
+ 	memset(&ev, 0, sizeof(ev));
+-	gettimeofday(&ev.time, NULL);
++	gettimeofday(&tval, NULL);
++	ev.input_event_sec = tval.tv_sec;
++	ev.input_event_usec = tval.tv_usec;
+ 	ev.type = EV_KEY;
+ 	ev.value = down;
+ 
+@@ -1230,6 +1244,7 @@
+ void uinput_key_command(int down, int keysym, rfbClientPtr client) {
+ #ifdef UINPUT_OK
+ 	struct input_event ev;
++	struct timeval tval;
+ 	int scancode;
+ 	allowed_input_t input;
+ 	int d = direct_key_fd < 0 ? fd : direct_key_fd;
+@@ -1253,7 +1268,9 @@
+ 	if (db) fprintf(stderr, "uinput_key_command: %d -> %d %s fd=%d\n", keysym, scancode, down ? "down" : "up", d);
+ 
+ 	memset(&ev, 0, sizeof(ev));
+-	gettimeofday(&ev.time, NULL);
++	gettimeofday(&tval, NULL);
++	ev.input_event_sec = tval.tv_sec;
++	ev.input_event_usec = tval.tv_usec;
+ 	ev.type = EV_KEY;
+ 	ev.code = (unsigned char) scancode;
+ 	ev.value = down;
+--- x11vnc-0.9.16/src/unixpw.c
++++ x11vnc/src/unixpw.c
+@@ -757,7 +757,7 @@
+ }
+ 
+ int crypt_verify(char *user, char *pass) {
+-#ifndef UNIXPW_CRYPT
++#if !defined UNIXPW_CRYPT || !defined HAVE_LIBCRYPT
+ 	return 0;
+ #else
+ 	struct passwd *pwd;
+--- x11vnc-0.9.16/src/util.c
++++ x11vnc/src/util.c
+@@ -47,6 +47,9 @@
+ #ifdef LIBVNCSERVER_HAVE_LIBPTHREAD
+ MUTEX(x11Mutex);
+ MUTEX(scrollMutex);
++MUTEX(clientMutex);
++MUTEX(inputMutex);
++MUTEX(pointerMutex);
+ #endif
+ 
+ int nfix(int i, int n);
+--- x11vnc-0.9.16/src/util.h
++++ x11vnc/src/util.h
+@@ -102,9 +102,9 @@
+ #ifdef LIBVNCSERVER_HAVE_LIBPTHREAD
+ extern MUTEX(x11Mutex);
+ extern MUTEX(scrollMutex);
+-MUTEX(clientMutex);
+-MUTEX(inputMutex);
+-MUTEX(pointerMutex);
++extern MUTEX(clientMutex);
++extern MUTEX(inputMutex);
++extern MUTEX(pointerMutex);
+ #endif
+ 
+ #define X_INIT INIT_MUTEX(x11Mutex)
+--- x11vnc-0.9.16/src/v4l.c
++++ x11vnc/src/v4l.c
+@@ -1339,7 +1339,7 @@
+ 		}
+                 if (stat(s, &sbuf) != 0) {
+ 			rfbLogPerror("stat");
+-			rfbLog("You will need to specify the video device more explicity.\n");
++			rfbLog("You will need to specify the video device more explicitly.\n");
+ 		}
+ 
+ 		*dev = s;
+--- x11vnc-0.9.16/src/x11vnc.h
++++ x11vnc/src/x11vnc.h
+@@ -541,6 +541,8 @@
+ extern char *raw_fb;
+ extern char *raw_fb_addr;
+ extern int raw_fb_offset;
++extern int raw_fb_virt_x;
++extern int raw_fb_virt_y;
+ extern int raw_fb_shm;
+ extern int raw_fb_mmap;
+ extern int raw_fb_seek;
+--- x11vnc-0.9.16/src/x11vnc_defs.c
++++ x11vnc/src/x11vnc_defs.c
+@@ -105,6 +105,8 @@
+ char *raw_fb = NULL;		/* when used should be main_fb */
+ char *raw_fb_addr = NULL;
+ int raw_fb_offset = 0;
++int raw_fb_virt_x = 0;
++int raw_fb_virt_y = 0;
+ int raw_fb_shm = 0;
+ int raw_fb_mmap = 0;
+ int raw_fb_seek = 0;
diff --git a/community-mod/x11vnc/patches/libressl.patch b/community-mod/x11vnc/patches/libressl.patch
new file mode 100644
index 0000000..82d0bfb
--- /dev/null
+++ b/community-mod/x11vnc/patches/libressl.patch
@@ -0,0 +1,93 @@
+diff --git a/src/sslhelper.c b/src/sslhelper.c
+index ba680b3..c8e7de8 100644
+--- a/src/sslhelper.c
++++ b/src/sslhelper.c
+@@ -803,7 +803,7 @@ static int pem_passwd_callback(char *buf, int size, int rwflag,
+ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 	const ASN1_INTEGER *revoked_serial;
+ 	X509_STORE_CTX *store_ctx;
+-#if OPENSSL_VERSION_NUMBER > 0x10100000L
++#if OPENSSL_VERSION_NUMBER > 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 	X509_OBJECT *obj;
+ #else
+ 	X509_OBJECT obj;
+@@ -829,7 +829,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 	* the current certificate in order to verify it's integrity. */
+ 	store_ctx = X509_STORE_CTX_new();
+ 	X509_STORE_CTX_init(store_ctx, revocation_store, NULL, NULL);
+-#if OPENSSL_VERSION_NUMBER > 0x10100000L
++#if OPENSSL_VERSION_NUMBER > 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 	obj = X509_OBJECT_new();
+ 	rc=X509_STORE_get_by_subject(store_ctx, X509_LU_CRL, subject, obj);
+ 	crl = X509_OBJECT_get0_X509_CRL(obj);
+@@ -865,7 +865,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 			rfbLog("Invalid signature on CRL\n");
+ 			X509_STORE_CTX_set_error(callback_ctx,
+ 				X509_V_ERR_CRL_SIGNATURE_FAILURE);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 			X509_OBJECT_free(obj);
+ #else
+ 			X509_OBJECT_free_contents(&obj);
+@@ -883,7 +883,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 			rfbLog("Found CRL has invalid nextUpdate field\n");
+ 			X509_STORE_CTX_set_error(callback_ctx,
+ 				X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 			X509_OBJECT_free(obj);
+ #else
+ 			X509_OBJECT_free_contents(&obj);
+@@ -894,14 +894,14 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 			rfbLog("Found CRL is expired - "
+ 				"revoking all certificates until you get updated CRL\n");
+ 			X509_STORE_CTX_set_error(callback_ctx, X509_V_ERR_CRL_HAS_EXPIRED);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 			X509_OBJECT_free(obj);
+ #else
+ 			X509_OBJECT_free_contents(&obj);
+ #endif
+ 			return 0; /* Reject connection */
+ 		}
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 			X509_OBJECT_free(obj);
+ #else
+ 			X509_OBJECT_free_contents(&obj);
+@@ -912,7 +912,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 	 * the current certificate in order to check for revocation. */
+ 	store_ctx = X509_STORE_CTX_new();
+ 	X509_STORE_CTX_init(store_ctx, revocation_store, NULL, NULL);
+-#if OPENSSL_VERSION_NUMBER > 0x10100000L
++#if OPENSSL_VERSION_NUMBER > 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 	obj = X509_OBJECT_new();
+ 	rc=X509_STORE_get_by_subject(store_ctx, X509_LU_CRL, issuer, obj);
+ 	crl = X509_OBJECT_get0_X509_CRL(obj);
+@@ -942,7 +942,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 					"revoked per CRL from issuer %s\n", serial, serial, cp);
+ 				OPENSSL_free(cp);
+ 				X509_STORE_CTX_set_error(callback_ctx, X509_V_ERR_CERT_REVOKED);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 				X509_OBJECT_free(obj);
+ #else
+ 				X509_OBJECT_free_contents(&obj);
+@@ -950,7 +950,7 @@ static int crl_callback(X509_STORE_CTX *callback_ctx) {
+ 				return 0; /* Reject connection */
+ 			}
+ 		}
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 			X509_OBJECT_free(obj);
+ #else
+ 			X509_OBJECT_free_contents(&obj);
+@@ -1596,7 +1596,7 @@ static int switch_to_anon_dh(void) {
+ 	if (ssl_client_mode) {
+ 		return 1;
+ 	}
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ 	/* Security level must be set to 0 for unauthenticated suites. */
+ 	SSL_CTX_set_security_level(ctx, 0);
+ #endif
diff --git a/community-mod/x11vnc/sources b/community-mod/x11vnc/sources
new file mode 100644
index 0000000..99ff036
--- /dev/null
+++ b/community-mod/x11vnc/sources
@@ -0,0 +1,3 @@
+https://fossies.org/linux/privat/x11vnc-0.9.16.tar.gz
+patches/bugfixes.patch
+patches/libressl.patch
diff --git a/community-mod/x11vnc/version b/community-mod/x11vnc/version
new file mode 100644
index 0000000..cb918b2
--- /dev/null
+++ b/community-mod/x11vnc/version
@@ -0,0 +1 @@
+0.9.16 1
diff --git a/community-mod/xbg/build b/community-mod/xbg/build
new file mode 100755
index 0000000..954aa1f
--- /dev/null
+++ b/community-mod/xbg/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/xbg/checksums b/community-mod/xbg/checksums
new file mode 100644
index 0000000..677fc28
--- /dev/null
+++ b/community-mod/xbg/checksums
@@ -0,0 +1 @@
+2ae41cbc55b76b6ccda0de5caa0c7904e1d4dd223ecbd9a9402f4c741a959819
diff --git a/community-mod/xbg/depends b/community-mod/xbg/depends
new file mode 100644
index 0000000..767e2c1
--- /dev/null
+++ b/community-mod/xbg/depends
@@ -0,0 +1,2 @@
+libxcb
+xcb-util
diff --git a/community-mod/xbg/sources b/community-mod/xbg/sources
new file mode 100644
index 0000000..db73183
--- /dev/null
+++ b/community-mod/xbg/sources
@@ -0,0 +1 @@
+https://github.com/mcpcpc/xbg/archive/0.0.2.tar.gz
diff --git a/community-mod/xbg/version b/community-mod/xbg/version
new file mode 100644
index 0000000..4f1b638
--- /dev/null
+++ b/community-mod/xbg/version
@@ -0,0 +1 @@
+0.0.2 1
diff --git a/community-mod/xcb-util-xrm/build b/community-mod/xcb-util-xrm/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/xcb-util-xrm/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xcb-util-xrm/checksums b/community-mod/xcb-util-xrm/checksums
new file mode 100644
index 0000000..01d9813
--- /dev/null
+++ b/community-mod/xcb-util-xrm/checksums
@@ -0,0 +1 @@
+0129f74c327ae65e2f4ad4002f300b4f02c9aff78c00997f1f1c5a430f922f34  xcb-util-xrm-1.3.tar.gz
diff --git a/community-mod/xcb-util-xrm/depends b/community-mod/xcb-util-xrm/depends
new file mode 100644
index 0000000..443be0f
--- /dev/null
+++ b/community-mod/xcb-util-xrm/depends
@@ -0,0 +1,6 @@
+libX11
+libXau
+libxcb
+pkgconf make
+xcb-util
+xorg-util-macros make
diff --git a/community-mod/xcb-util-xrm/sources b/community-mod/xcb-util-xrm/sources
new file mode 100644
index 0000000..cef696a
--- /dev/null
+++ b/community-mod/xcb-util-xrm/sources
@@ -0,0 +1 @@
+https://github.com/Airblader/xcb-util-xrm/releases/download/v1.3/xcb-util-xrm-1.3.tar.gz
diff --git a/community-mod/xcb-util-xrm/version b/community-mod/xcb-util-xrm/version
new file mode 100644
index 0000000..a37a04c
--- /dev/null
+++ b/community-mod/xcb-util-xrm/version
@@ -0,0 +1 @@
+1.3 1
diff --git a/community-mod/xclip/build b/community-mod/xclip/build
new file mode 100755
index 0000000..e6b6156
--- /dev/null
+++ b/community-mod/xclip/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+autoreconf -i
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xclip/checksums b/community-mod/xclip/checksums
new file mode 100644
index 0000000..b4b5db9
--- /dev/null
+++ b/community-mod/xclip/checksums
@@ -0,0 +1 @@
+ca5b8804e3c910a66423a882d79bf3c9450b875ac8528791fb60ec9de667f758  0.13.tar.gz
diff --git a/community-mod/xclip/depends b/community-mod/xclip/depends
new file mode 100644
index 0000000..521ee93
--- /dev/null
+++ b/community-mod/xclip/depends
@@ -0,0 +1,5 @@
+autoconf make
+automake make
+libX11
+libXt
+libXmu
diff --git a/community-mod/xclip/sources b/community-mod/xclip/sources
new file mode 100644
index 0000000..4391a43
--- /dev/null
+++ b/community-mod/xclip/sources
@@ -0,0 +1 @@
+https://github.com/astrand/xclip/archive/0.13.tar.gz
diff --git a/community-mod/xclip/version b/community-mod/xclip/version
new file mode 100644
index 0000000..2b24089
--- /dev/null
+++ b/community-mod/xclip/version
@@ -0,0 +1 @@
+0.13 1
diff --git a/community-mod/xdotool/build b/community-mod/xdotool/build
new file mode 100755
index 0000000..2498fb7
--- /dev/null
+++ b/community-mod/xdotool/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+# Remove compiler debug stuff and post-install message.
+sed -i Makefile \
+    -e '/CFLAGS.*-g/d' \
+    -e '/^install:/s/ post-install$//'
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/community-mod/xdotool/checksums b/community-mod/xdotool/checksums
new file mode 100644
index 0000000..bdeb388
--- /dev/null
+++ b/community-mod/xdotool/checksums
@@ -0,0 +1 @@
+35be5ff6edf0c620a0e16f09ea5e101d5173280161772fca18657d83f20fcca8  xdotool-3.20160805.1.tar.gz
diff --git a/community-mod/xdotool/depends b/community-mod/xdotool/depends
new file mode 100644
index 0000000..5b8e226
--- /dev/null
+++ b/community-mod/xdotool/depends
@@ -0,0 +1,9 @@
+libX11
+libXau
+libXext
+libXi
+libXinerama
+libXtst
+libxcb
+libxkbcommon
+perl make
diff --git a/community-mod/xdotool/sources b/community-mod/xdotool/sources
new file mode 100644
index 0000000..f314b4c
--- /dev/null
+++ b/community-mod/xdotool/sources
@@ -0,0 +1 @@
+https://github.com/jordansissel/xdotool/releases/download/v3.20160805.1/xdotool-3.20160805.1.tar.gz
diff --git a/community-mod/xdotool/version b/community-mod/xdotool/version
new file mode 100644
index 0000000..e283d6d
--- /dev/null
+++ b/community-mod/xdotool/version
@@ -0,0 +1 @@
+3.20160805.1 1
diff --git a/community-mod/xhost/build b/community-mod/xhost/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/xhost/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xhost/checksums b/community-mod/xhost/checksums
new file mode 100644
index 0000000..3147861
--- /dev/null
+++ b/community-mod/xhost/checksums
@@ -0,0 +1 @@
+a2dc3c579e13674947395ef8ccc1b3763f89012a216c2cc6277096489aadc396  xhost-1.0.8.tar.bz2
diff --git a/community-mod/xhost/depends b/community-mod/xhost/depends
new file mode 100644
index 0000000..112279e
--- /dev/null
+++ b/community-mod/xhost/depends
@@ -0,0 +1,4 @@
+libXmu
+libX11
+libXau
+libxcb
diff --git a/community-mod/xhost/sources b/community-mod/xhost/sources
new file mode 100644
index 0000000..f587bc8
--- /dev/null
+++ b/community-mod/xhost/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xhost-1.0.8.tar.bz2
diff --git a/community-mod/xhost/version b/community-mod/xhost/version
new file mode 100644
index 0000000..0bc3d1e
--- /dev/null
+++ b/community-mod/xhost/version
@@ -0,0 +1 @@
+1.0.8 1
diff --git a/community-mod/xkb-switch/build b/community-mod/xkb-switch/build
new file mode 100755
index 0000000..56d0d55
--- /dev/null
+++ b/community-mod/xkb-switch/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr
+
+cmake --build   build
+cmake --install build
+
+# Man page may be compressed, install manually instead.
+rm -rf "$1/usr/share/man"
+install -Dm 0644 man/xkb-switch.1 "$1/usr/share/man/man1/xkb-switch.1"
diff --git a/community-mod/xkb-switch/checksums b/community-mod/xkb-switch/checksums
new file mode 100644
index 0000000..9c44596
--- /dev/null
+++ b/community-mod/xkb-switch/checksums
@@ -0,0 +1 @@
+89e7cc64a3bfc481b0e341b79320de4f0adbdba49b551988fe4bf02f6ae9e003
diff --git a/community-mod/xkb-switch/depends b/community-mod/xkb-switch/depends
new file mode 100644
index 0000000..27c84a1
--- /dev/null
+++ b/community-mod/xkb-switch/depends
@@ -0,0 +1,3 @@
+cmake make
+libX11
+libxkbfile
diff --git a/community-mod/xkb-switch/sources b/community-mod/xkb-switch/sources
new file mode 100644
index 0000000..aff17aa
--- /dev/null
+++ b/community-mod/xkb-switch/sources
@@ -0,0 +1 @@
+https://github.com/ierton/xkb-switch/archive/1.8.5.tar.gz
diff --git a/community-mod/xkb-switch/version b/community-mod/xkb-switch/version
new file mode 100644
index 0000000..3ca77ed
--- /dev/null
+++ b/community-mod/xkb-switch/version
@@ -0,0 +1 @@
+1.8.5 1
diff --git a/community-mod/xmlsec1/build b/community-mod/xmlsec1/build
new file mode 100755
index 0000000..add61ba
--- /dev/null
+++ b/community-mod/xmlsec1/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-default-crypto=openssl \
+    --without-gcrypt \
+    --without-gnutls \
+    --without-nss \
+    --without-libxslt
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xmlsec1/checksums b/community-mod/xmlsec1/checksums
new file mode 100644
index 0000000..d7901ac
--- /dev/null
+++ b/community-mod/xmlsec1/checksums
@@ -0,0 +1 @@
+e383702853236004e5b08e424b8afe9b53fe9f31aaa7a5382f39d9533eb7c043
diff --git a/community-mod/xmlsec1/depends b/community-mod/xmlsec1/depends
new file mode 100644
index 0000000..e5c985c
--- /dev/null
+++ b/community-mod/xmlsec1/depends
@@ -0,0 +1,3 @@
+libressl
+libtool
+libxml2
diff --git a/community-mod/xmlsec1/sources b/community-mod/xmlsec1/sources
new file mode 100644
index 0000000..d5d547f
--- /dev/null
+++ b/community-mod/xmlsec1/sources
@@ -0,0 +1 @@
+https://www.aleksey.com/xmlsec/download/xmlsec1-1.2.32.tar.gz
diff --git a/community-mod/xmlsec1/version b/community-mod/xmlsec1/version
new file mode 100644
index 0000000..c5be8c6
--- /dev/null
+++ b/community-mod/xmlsec1/version
@@ -0,0 +1 @@
+1.2.32 1
diff --git a/community-mod/xmodmap/build b/community-mod/xmodmap/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/community-mod/xmodmap/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xmodmap/checksums b/community-mod/xmodmap/checksums
new file mode 100644
index 0000000..0e86f8b
--- /dev/null
+++ b/community-mod/xmodmap/checksums
@@ -0,0 +1 @@
+473f0941d7439d501bb895ff358832b936ec34c749b9704c37a15e11c318487c  xmodmap-1.0.10.tar.bz2
diff --git a/community-mod/xmodmap/depends b/community-mod/xmodmap/depends
new file mode 100644
index 0000000..1903bba
--- /dev/null
+++ b/community-mod/xmodmap/depends
@@ -0,0 +1 @@
+libX11
diff --git a/community-mod/xmodmap/sources b/community-mod/xmodmap/sources
new file mode 100644
index 0000000..951e808
--- /dev/null
+++ b/community-mod/xmodmap/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/app/xmodmap-1.0.10.tar.bz2
diff --git a/community-mod/xmodmap/version b/community-mod/xmodmap/version
new file mode 100644
index 0000000..2d248d7
--- /dev/null
+++ b/community-mod/xmodmap/version
@@ -0,0 +1 @@
+1.0.10 1
diff --git a/community-mod/xssstate/build b/community-mod/xssstate/build
new file mode 100755
index 0000000..48c3f07
--- /dev/null
+++ b/community-mod/xssstate/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+sed -i 's|PREFIX = /usr/local|PREFIX = /usr|g' config.mk
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xssstate/checksums b/community-mod/xssstate/checksums
new file mode 100644
index 0000000..3006c91
--- /dev/null
+++ b/community-mod/xssstate/checksums
@@ -0,0 +1 @@
+c4b6f504a6a8eb247bc60960bd65cbf9631c008449a1d71ac4c55e34be1c6011  xssstate-1.1.tar.gz
diff --git a/community-mod/xssstate/depends b/community-mod/xssstate/depends
new file mode 100644
index 0000000..98e1cd0
--- /dev/null
+++ b/community-mod/xssstate/depends
@@ -0,0 +1 @@
+libXScrnSaver
diff --git a/community-mod/xssstate/sources b/community-mod/xssstate/sources
new file mode 100644
index 0000000..810f4db
--- /dev/null
+++ b/community-mod/xssstate/sources
@@ -0,0 +1 @@
+https://dl.suckless.org/tools/xssstate-1.1.tar.gz
diff --git a/community-mod/xssstate/version b/community-mod/xssstate/version
new file mode 100644
index 0000000..08ad782
--- /dev/null
+++ b/community-mod/xssstate/version
@@ -0,0 +1 @@
+1.1 2
diff --git a/community-mod/xtrlock/build b/community-mod/xtrlock/build
new file mode 100755
index 0000000..6393d74
--- /dev/null
+++ b/community-mod/xtrlock/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+"${CC:-gcc}" -lX11 -DSHADOW_PWD -o xtrlock xtrlock.c
+
+install -Dm4755 xtrlock     "$1/usr/bin/xtrlock"
+install -Dm644  xtrlock.man "$1/usr/share/man/man1/xtrlock.1"
diff --git a/community-mod/xtrlock/checksums b/community-mod/xtrlock/checksums
new file mode 100644
index 0000000..4ec4bdb
--- /dev/null
+++ b/community-mod/xtrlock/checksums
@@ -0,0 +1 @@
+fcde55d06e6822e9bf1adebe6b251ef78db0ccb390fc6fba81a5ddb897f6f755
diff --git a/community-mod/xtrlock/depends b/community-mod/xtrlock/depends
new file mode 100644
index 0000000..1903bba
--- /dev/null
+++ b/community-mod/xtrlock/depends
@@ -0,0 +1 @@
+libX11
diff --git a/community-mod/xtrlock/sources b/community-mod/xtrlock/sources
new file mode 100644
index 0000000..d4802dc
--- /dev/null
+++ b/community-mod/xtrlock/sources
@@ -0,0 +1 @@
+https://deb.debian.org/debian/pool/main/x/xtrlock/xtrlock_2.15.tar.xz
diff --git a/community-mod/xtrlock/version b/community-mod/xtrlock/version
new file mode 100644
index 0000000..2698b40
--- /dev/null
+++ b/community-mod/xtrlock/version
@@ -0,0 +1 @@
+2.15 1
diff --git a/community-mod/xwallpaper/build b/community-mod/xwallpaper/build
new file mode 100755
index 0000000..eae7a1f
--- /dev/null
+++ b/community-mod/xwallpaper/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --without-seccomp \
+    --without-xpm
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/xwallpaper/checksums b/community-mod/xwallpaper/checksums
new file mode 100644
index 0000000..8a58a35
--- /dev/null
+++ b/community-mod/xwallpaper/checksums
@@ -0,0 +1 @@
+b2c7f0dfafab6cbc63cba2f974d1332072fdb725128d1147126af69fa62c2933
diff --git a/community-mod/xwallpaper/depends b/community-mod/xwallpaper/depends
new file mode 100644
index 0000000..88e226d
--- /dev/null
+++ b/community-mod/xwallpaper/depends
@@ -0,0 +1,4 @@
+libjpeg-turbo
+libpng
+pixman
+xcb-util-image
diff --git a/community-mod/xwallpaper/sources b/community-mod/xwallpaper/sources
new file mode 100644
index 0000000..56c74c9
--- /dev/null
+++ b/community-mod/xwallpaper/sources
@@ -0,0 +1 @@
+https://github.com/stoeckmann/xwallpaper/releases/download/v0.7.1/xwallpaper-0.7.1.tar.xz
diff --git a/community-mod/xwallpaper/version b/community-mod/xwallpaper/version
new file mode 100644
index 0000000..1078b9e
--- /dev/null
+++ b/community-mod/xwallpaper/version
@@ -0,0 +1 @@
+0.7.1 1
diff --git a/community-mod/xwm/build b/community-mod/xwm/build
new file mode 100755
index 0000000..954aa1f
--- /dev/null
+++ b/community-mod/xwm/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make PREFIX=/usr DESTDIR="$1" install
diff --git a/community-mod/xwm/checksums b/community-mod/xwm/checksums
new file mode 100644
index 0000000..b523800
--- /dev/null
+++ b/community-mod/xwm/checksums
@@ -0,0 +1 @@
+135d405f9af5d36a3d7f2311d5db82b3ddddeef5b4162731469c6ce1e14b4c87
diff --git a/community-mod/xwm/depends b/community-mod/xwm/depends
new file mode 100644
index 0000000..ea63bc2
--- /dev/null
+++ b/community-mod/xwm/depends
@@ -0,0 +1,3 @@
+libXau
+libxcb
+xcb-util-keysyms
diff --git a/community-mod/xwm/sources b/community-mod/xwm/sources
new file mode 100644
index 0000000..58921c0
--- /dev/null
+++ b/community-mod/xwm/sources
@@ -0,0 +1 @@
+https://github.com/mcpcpc/xwm/archive/0.1.8.tar.gz
diff --git a/community-mod/xwm/version b/community-mod/xwm/version
new file mode 100644
index 0000000..bfb00d9
--- /dev/null
+++ b/community-mod/xwm/version
@@ -0,0 +1 @@
+0.1.8 1
diff --git a/community-mod/yasm/build b/community-mod/yasm/build
new file mode 100755
index 0000000..9e85cfc
--- /dev/null
+++ b/community-mod/yasm/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/community-mod/yasm/checksums b/community-mod/yasm/checksums
new file mode 100644
index 0000000..3be2df1
--- /dev/null
+++ b/community-mod/yasm/checksums
@@ -0,0 +1 @@
+3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f
diff --git a/community-mod/yasm/sources b/community-mod/yasm/sources
new file mode 100644
index 0000000..f1b23c3
--- /dev/null
+++ b/community-mod/yasm/sources
@@ -0,0 +1 @@
+https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
diff --git a/community-mod/yasm/version b/community-mod/yasm/version
new file mode 100644
index 0000000..0a2d7f2
--- /dev/null
+++ b/community-mod/yasm/version
@@ -0,0 +1 @@
+1.3.0 1
diff --git a/core-mod/core/baseinit/build b/core-mod/core/baseinit/build
new file mode 100755
index 0000000..d8646a8
--- /dev/null
+++ b/core-mod/core/baseinit/build
@@ -0,0 +1,13 @@
+#!/bin/sh -ef
+
+mkdir -p "$1/usr/bin"
+
+cp -R etc "$1"
+cp -R lib "$1/usr/lib"
+
+# Disable warning as CFLAGS must work this way.
+# shellcheck disable=2086
+for bin in kpow kall; do
+    "${CC:-cc}" -o "$1/usr/bin/$bin" "bin/$bin.c" $CFLAGS -static
+    install -Dm644 "bin/$bin.c" "$1/usr/share/doc/kiss/init/$bin.c"
+done
diff --git a/core-mod/core/baseinit/checksums b/core-mod/core/baseinit/checksums
new file mode 100644
index 0000000..67c13be
--- /dev/null
+++ b/core-mod/core/baseinit/checksums
@@ -0,0 +1 @@
+2dbb2141cfd1b24d604ccdac4ee9422987c74efac75c05631bbb66d2d646eb0d
diff --git a/core-mod/core/baseinit/post-install b/core-mod/core/baseinit/post-install
new file mode 100755
index 0000000..468a294
--- /dev/null
+++ b/core-mod/core/baseinit/post-install
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+cat <<EOF
+NOTE: If using encryption you must now install
+      the 'kiss-encryption' package from the
+      Community repository.
+
+SEE:  https://k1sslinux.org/news/20200511a
+EOF
diff --git a/core-mod/core/baseinit/sources b/core-mod/core/baseinit/sources
new file mode 100644
index 0000000..f13d389
--- /dev/null
+++ b/core-mod/core/baseinit/sources
@@ -0,0 +1 @@
+https://github.com/kiss-community/init/archive/1.0.4.tar.gz
diff --git a/core-mod/core/baseinit/version b/core-mod/core/baseinit/version
new file mode 100644
index 0000000..b4b1ce2
--- /dev/null
+++ b/core-mod/core/baseinit/version
@@ -0,0 +1 @@
+1.0.4 1
diff --git a/core-mod/core/baselayout/build b/core-mod/core/baselayout/build
new file mode 100755
index 0000000..69affa9
--- /dev/null
+++ b/core-mod/core/baselayout/build
@@ -0,0 +1,60 @@
+#!/bin/sh -e
+
+# Setup base directories.
+for d in boot dev etc home mnt usr var opt run; do
+    install -dm 755 "$1/$d"
+done
+
+install -dm 555  "$1/proc"
+install -dm 555  "$1/sys"
+install -dm 0750 "$1/root"
+install -dm 1777 "$1/tmp"
+
+# Setup /usr hierarchy.
+for d in bin include lib share src; do
+    install -dm 755 "$1/usr/$d"
+done
+
+# Setup manpages directories.
+for d in 1 2 3 4 5 6 7 8; do
+    install -dm 755 "$1/usr/share/man/man$d"
+done
+
+# Add symlinks.
+ln -s usr/bin "$1/bin"
+ln -s usr/bin "$1/sbin"
+ln -s bin     "$1/usr/sbin"
+ln -s usr/lib "$1/lib"
+ln -s usr/lib "$1/lib64"
+ln -s lib     "$1/usr/lib64"
+
+# Setup /var.
+for d in cache local opt log/old lib/misc empty service; do
+    install -dm 755 "$1/var/$d"
+done
+
+install -dm 1777 "$1/var/tmp"
+install -dm 1777 "$1/var/spool/mail"
+
+ln -s spool/mail  "$1/var/mail"
+ln -s ../run      "$1/var/run"
+ln -s ../run/lock "$1/var/lock"
+
+# Setup /usr/local (usually for any programs installed outside package manager).
+for d in bin etc games include lib man sbin share src; do
+    install -dm 755 "$1/usr/local/$d"
+done
+
+ln -s ../man "$1/usr/local/share/man"
+
+# /etc skeleton files.
+for f in fstab group host.conf hosts issue os-release \
+         passwd profile securetty shells mime.types; do
+    install -m 644 "$f" "$1/etc"
+done
+
+for f in crypttab shadow; do
+    install -m 600 "$f" "$1/etc"
+done
+
+ln -s /proc/self/mounts "$1/etc/mtab"
diff --git a/core-mod/core/baselayout/checksums b/core-mod/core/baselayout/checksums
new file mode 100644
index 0000000..8fdef62
--- /dev/null
+++ b/core-mod/core/baselayout/checksums
@@ -0,0 +1,13 @@
+3698c87cc3af757f0302f6d7f034350b1b22a7f25b2f71944292d0fb3de67cd7
+9cd015d9d28db93412cbb33a24f11c1b4a2655a1c45874d12666674e68cf872a
+38c9f4047ba597248ef199a77afbd36f873cfa4aeb70de90bac7f237faf2ecba
+a0fa9cd303cf7f1718f51e5624a671a418946718b790508b8988bccd542c6451
+eda9afe39a3562406f14cb8a5a142922b63e68467d3ba4821c02eaa142d9c4da
+e82a871a81ef0af4063475064857b884b63ad3bc01470dbb85da64a2f4d5dce4
+0bde8ace73d58897e85c82eb96690bbfd1a4231949d3523d5950ba1910b08892
+4d10630c7bebb0c8a002263ad9ffb429152da8d57153751d0122938be605064b
+7762b65442cd3e930d9b4ec470e01bc53938bc5ed3d7aedeed47977b78f54843
+5aa69b5acea1deb625c46ce481d96e4e21558ae2e39ca74fc5b6a5674329f403
+7e47176cd83b91bdbc3a0b10ae5d5c093b81a9c8c0c1fb714f5438381124c760
+7325a401007ec02596c143788277be46c3e89c98a79cb3f3567d3bef5a9470b0
+8782af2bf81ca1e81b59d1be531565882d4e0c9a89d189706ed358375f67ca04
diff --git a/core-mod/core/baselayout/files/crypttab b/core-mod/core/baselayout/files/crypttab
new file mode 100644
index 0000000..196b0d6
--- /dev/null
+++ b/core-mod/core/baselayout/files/crypttab
@@ -0,0 +1,13 @@
+# crypttab: mappings for encrypted partitions
+#
+# Each mapped device will be created in /dev/mapper, so your /etc/fstab
+# should use the /dev/mapper/<name> paths for encrypted devices.
+#
+# NOTE: Do not list your root (/) partition here.
+
+# <name>       <device>         <password>              <options>
+# home         /dev/hda4        /etc/mypassword1
+# data1        /dev/hda3        /etc/mypassword2
+# data2        /dev/hda5        /etc/cryptfs.key
+# swap         /dev/hdx4        /dev/urandom            swap,cipher=aes-cbc-essiv:sha256,size=256
+# vol          /dev/hdb7        none
diff --git a/core-mod/core/baselayout/files/fstab b/core-mod/core/baselayout/files/fstab
new file mode 100644
index 0000000..14ababb
--- /dev/null
+++ b/core-mod/core/baselayout/files/fstab
@@ -0,0 +1,6 @@
+# Static information about the filesystems.
+# See fstab(5) for details.
+
+# <file system> <dir> <type> <options> <dump> <pass>
+
+tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
diff --git a/core-mod/core/baselayout/files/group b/core-mod/core/baselayout/files/group
new file mode 100644
index 0000000..0797f31
--- /dev/null
+++ b/core-mod/core/baselayout/files/group
@@ -0,0 +1,27 @@
+root:x:0:
+bin:x:1:
+sys:x:2:
+kmem:x:3:
+wheel:x:4:
+tty:x:5:
+tape:x:6:
+daemon:x:7:
+floppy:x:8:
+disk:x:9:
+lp:x:10:
+dialout:x:11:
+audio:x:12:
+video:x:13:
+utmp:x:14:
+adm:x:15:
+cdrom:x:16:
+optical:x:17:
+mail:x:18:
+storage:x:19:
+scanner:x:20:
+network:x:21:
+kvm:x:24:
+input:x:25:
+nogroup:x:99:
+users:x:100:
+xbuilder:x:101:
diff --git a/core-mod/core/baselayout/files/host.conf b/core-mod/core/baselayout/files/host.conf
new file mode 100644
index 0000000..db09a07
--- /dev/null
+++ b/core-mod/core/baselayout/files/host.conf
@@ -0,0 +1,4 @@
+# /etc/host.conf
+# See host.conf(5) for details.
+
+multi on
diff --git a/core-mod/core/baselayout/files/hosts b/core-mod/core/baselayout/files/hosts
new file mode 100644
index 0000000..e08b437
--- /dev/null
+++ b/core-mod/core/baselayout/files/hosts
@@ -0,0 +1,10 @@
+
+#
+# /etc/hosts: static lookup table for host names
+#
+
+#<ip-address>		<hostname.domain.org>	<hostname>
+127.0.0.1		localhost.localdomain	localhost
+::1			localhost.localdomain	localhost ip6-localhost
+
+# EOF
diff --git a/core-mod/core/baselayout/files/issue b/core-mod/core/baselayout/files/issue
new file mode 100644
index 0000000..7304c73
--- /dev/null
+++ b/core-mod/core/baselayout/files/issue
@@ -0,0 +1 @@
+KISS Linux \r (\l)
diff --git a/core-mod/core/baselayout/files/mime.types b/core-mod/core/baselayout/files/mime.types
new file mode 100644
index 0000000..8af0a16
--- /dev/null
+++ b/core-mod/core/baselayout/files/mime.types
@@ -0,0 +1,1918 @@
+application/1d-interleaved-parityfec
+application/3gpp-ims+xml
+application/CSTAdata+xml
+application/EDI-Consent
+application/EDI-X12
+application/EDIFACT
+application/H224
+application/activemessage
+application/andrew-inset									ez
+application/annodex											anx
+application/applefile
+application/applixware										aw
+application/atom+xml										atom
+application/atomcat+xml										atomcat
+application/atomdeleted+xml
+application/atomicmail
+application/atomserv+xml									atomsrv
+application/atomsvc+xml										atomsvc
+application/auth-policy+xml
+application/batch-SMTP
+application/batch-smtp
+application/bbolin											lin
+application/beep+xml
+application/calendar+xml
+application/cals-1840
+application/ccmp+xml
+application/ccxml+xml										ccxml
+application/cdmi-capability									cdmia
+application/cdmi-container									cdmic
+application/cdmi-domain										cdmid
+application/cdmi-object										cdmio
+application/cdmi-queue										cdmiq
+application/cea-2018+xml
+application/cellml+xml
+application/cfw
+application/cnrp+xml
+application/commonground
+application/conference-info+xml
+application/cpl+xml
+application/csta+xml
+application/cstadata+xml
+application/cu-seeme										cu
+application/cybercash
+application/davmount+xml									davmount
+application/dca-rft
+application/dec-dx
+application/dialog-info+xml
+application/dicom											dcm
+application/dns
+application/docbook+xml										dbk
+application/dskpp+xml
+application/dsptype											tsp
+application/dssc+der										dssc
+application/dssc+xml										xdssc
+application/dvcs
+application/ecmascript										ecma es
+application/edi-consent
+application/edi-x12
+application/edifact
+application/emma+xml										emma
+application/epp+xml
+application/epub+zip										epub
+application/eshop
+application/example
+application/exi												exi
+application/fastinfoset
+application/fastsoap
+application/fdt+xml
+application/fits
+application/font-tdpfr										pfr
+application/framework-attributes+xml
+application/futuresplash									spl
+application/ghostview
+application/gml+xml											gml
+application/gpx+xml											gpx
+application/gxf												gxf
+application/gzip
+application/h224
+application/held+xml
+application/hta												hta
+application/http
+application/hyperstudio										stk
+application/ibe-key-request+xml
+application/ibe-pkg-reply+xml
+application/ibe-pp-data
+application/iges
+application/im-iscomposing+xml
+application/index
+application/index.cmd
+application/index.obj
+application/index.response
+application/index.vnd
+application/inkml+xml										ink inkml
+application/iotp
+application/ipfix											ipfix
+application/ipp
+application/isup
+application/java-archive									jar
+application/java-serialized-object							ser
+application/java-vm											class
+application/javascript										js
+application/json											json
+application/jsonml+json										jsonml
+application/kpml-request+xml
+application/kpml-response+xml
+application/link-format
+application/lost+xml										lostxml
+application/lostsync+xml
+application/m3g												m3g
+application/mac-binhex40									hqx
+application/mac-compactpro									cpt
+application/macwriteii
+application/mads+xml										mads
+application/marc											mrc
+application/marcxml+xml										mrcx
+application/mathematica										ma mb nb nbp
+application/mathml+xml										mathml
+application/mathml-content+xml
+application/mathml-presentation+xml
+application/mbms-associated-procedure-description+xml
+application/mbms-deregister+xml
+application/mbms-envelope+xml
+application/mbms-msk+xml
+application/mbms-msk-response+xml
+application/mbms-protection-description+xml
+application/mbms-reception-report+xml
+application/mbms-register+xml
+application/mbms-register-response+xml
+application/mbms-user-service-description+xml
+application/mbox											mbox
+application/media-policy-dataset+xml
+application/media_control+xml
+application/mediaservercontrol+xml							mscml
+application/metalink+xml									metalink
+application/metalink4+xml									meta4
+application/mets+xml										mets
+application/mikey
+application/mods+xml										mods
+application/moss-keys
+application/moss-signature
+application/mosskey-data
+application/mosskey-request
+application/mp21											m21 mp21
+application/mp4												mp4s
+application/mpeg4-generic
+application/mpeg4-iod
+application/mpeg4-iod-xmt
+application/ms-tnef
+application/msaccess										mdb
+application/msc-ivr+xml
+application/msc-mixer+xml
+application/msword											doc dot
+application/mxf												mxf
+application/nasdata
+application/news-checkgroups
+application/news-groupinfo
+application/news-message-id
+application/news-transmission
+application/nlsml+xml
+application/nss
+application/ocsp-request
+application/ocsp-response
+application/octet-stream									bin bpk deploy dist distz dmg dms dump elc iso lha lrf lzh mar pkg so
+application/oda												oda
+application/oebps-package+xml								opf
+application/ogg												ogg ogx
+application/omdoc+xml										omdoc
+application/onenote											one onepkg onetmp onetoc onetoc2
+application/oxps											oxps
+application/parityfec
+application/patch-ops-error+xml								xer
+application/pdf												pdf
+application/pgp-encrypted									asc pgp
+application/pgp-keys										key
+application/pgp-signature									asc pgp sig
+application/pics-rules										prf
+application/pidf+xml
+application/pidf-diff+xml
+application/pkcs10											p10
+application/pkcs7-mime										p7c p7m
+application/pkcs7-signature									p7s
+application/pkcs8											p8
+application/pkix-attr-cert									ac
+application/pkix-cert										cer
+application/pkix-crl										crl
+application/pkix-pkipath									pkipath
+application/pkixcmp											pki
+application/pls+xml											pls
+application/poc-settings+xml
+application/postscript										ai eps eps2 eps3 epsf epsi ps
+application/prs.alvestrand.titrax-sheet
+application/prs.cww											cww
+application/prs.nprend
+application/prs.plucker
+application/prs.rdf-xml-crypt
+application/prs.xsf+xml
+application/pskc+xml										pskcxml
+application/qsig
+application/raptorfec
+application/rar												rar
+application/rdf+xml											rdf
+application/reginfo+xml										rif
+application/relax-ng-compact-syntax							rnc
+application/remote-printing
+application/resource-lists+xml								rl
+application/resource-lists-diff+xml							rld
+application/riscos
+application/rlmi+xml
+application/rls-services+xml								rs
+application/rpki-ghostbusters								gbr
+application/rpki-manifest									mft
+application/rpki-roa										roa
+application/rpki-updown
+application/rsd+xml											rsd
+application/rss+xml											rss
+application/rtf												rtf
+application/rtx
+application/samlassertion+xml
+application/samlmetadata+xml
+application/sbml+xml										sbml
+application/scvp-cv-request									scq
+application/scvp-cv-response								scs
+application/scvp-vp-request									spq
+application/scvp-vp-response								spp
+application/sdp												sdp
+application/sep+xml
+application/set-payment
+application/set-payment-initiation							setpay
+application/set-registration
+application/set-registration-initiation						setreg
+application/sgml
+application/sgml-open-catalog
+application/shf+xml											shf
+application/sieve
+application/simple-filter+xml
+application/simple-message-summary
+application/simpleSymbolContainer
+application/simplesymbolcontainer
+application/sla												stl
+application/slate
+application/smil											smi smil
+application/smil+xml										smi smil
+application/smpte336m
+application/soap+fastinfoset
+application/soap+xml
+application/sparql-query									rq
+application/sparql-results+xml								srx
+application/spirits-event+xml
+application/srgs											gram
+application/srgs+xml										grxml
+application/sru+xml											sru
+application/ssdl+xml										ssdl
+application/ssml+xml										ssml
+application/tamp-apex-update
+application/tamp-apex-update-confirm
+application/tamp-community-update
+application/tamp-community-update-confirm
+application/tamp-error
+application/tamp-sequence-adjust
+application/tamp-sequence-adjust-confirm
+application/tamp-status-query
+application/tamp-status-response
+application/tamp-update
+application/tamp-update-confirm
+application/tei+xml											tei teicorpus
+application/thraud+xml										tfi
+application/timestamp-query
+application/timestamp-reply
+application/timestamped-data								tsd
+application/tve-trigger
+application/ulpfec
+application/vcard+xml
+application/vemmi
+application/vividence.scriptfile
+application/vnd.3M.Post-it-Notes
+application/vnd.3gpp.bsf+xml
+application/vnd.3gpp.pic-bw-large							plb
+application/vnd.3gpp.pic-bw-small							psb
+application/vnd.3gpp.pic-bw-var								pvb
+application/vnd.3gpp.sms
+application/vnd.3gpp2.bcmcsinfo+xml
+application/vnd.3gpp2.sms
+application/vnd.3gpp2.tcap									tcap
+application/vnd.3m.post-it-notes							pwn
+application/vnd.FloGraphIt
+application/vnd.HandHeld-Entertainment+xml
+application/vnd.Kinar
+application/vnd.MFER
+application/vnd.Mobius.DAF
+application/vnd.Mobius.DIS
+application/vnd.Mobius.MBK
+application/vnd.Mobius.MQY
+application/vnd.Mobius.MSL
+application/vnd.Mobius.PLC
+application/vnd.Mobius.TXF
+application/vnd.Quark.QuarkXPress
+application/vnd.RenLearn.rlprint
+application/vnd.SimTech-MindMapper
+application/vnd.accpac.simply.aso							aso
+application/vnd.accpac.simply.imp							imp
+application/vnd.acucobol									acu
+application/vnd.acucorp										acutc atc
+application/vnd.adobe.air-application-installer-package+zip											air
+application/vnd.adobe.formscentral.fcdt						fcdt
+application/vnd.adobe.fxp									fxp fxpl
+application/vnd.adobe.partial-upload
+application/vnd.adobe.xdp+xml								xdp
+application/vnd.adobe.xfdf									xfdf
+application/vnd.aether.imp
+application/vnd.ah-barcode
+application/vnd.ahead.space									ahead
+application/vnd.airzip.filesecure.azf						azf
+application/vnd.airzip.filesecure.azs						azs
+application/vnd.amazon.ebook								azw
+application/vnd.americandynamics.acc						acc
+application/vnd.amiga.ami									ami
+application/vnd.amundsen.maze+xml
+application/vnd.android.package-archive						apk
+application/vnd.anser-web-certificate-issue-initiation		cii
+application/vnd.anser-web-funds-transfer-initiation			fti
+application/vnd.antix.game-component						atx
+application/vnd.apple.installer+xml							mpkg
+application/vnd.apple.mpegurl								m3u8
+application/vnd.arastra.swi									swi
+application/vnd.aristanetworks.swi							swi
+application/vnd.astraea-software.iota						iota
+application/vnd.audiograph									aep
+application/vnd.autopackage
+application/vnd.avistar+xml
+application/vnd.balsamiq.bmml+xml
+application/vnd.blueice.multipass							mpm
+application/vnd.bluetooth.ep.oob
+application/vnd.bmi											bmi
+application/vnd.businessobjects								rep
+application/vnd.cab-jscript
+application/vnd.canon-cpdl
+application/vnd.canon-lips
+application/vnd.cendio.thinlinc.clientconf
+application/vnd.century-systems.tcp_stream
+application/vnd.chemdraw+xml								cdxml
+application/vnd.chipnuts.karaoke-mmd						mmd
+application/vnd.cinderella									cdy
+application/vnd.cirpack.isdn-ext
+application/vnd.claymore									cla
+application/vnd.cloanto.rp9									rp9
+application/vnd.clonk.c4group								c4d c4f c4g c4p c4u
+application/vnd.cluetrust.cartomobile-config				c11amc
+application/vnd.cluetrust.cartomobile-config-pkg			c11amz
+application/vnd.collection+json
+application/vnd.collection.next+json
+application/vnd.commerce-battelle
+application/vnd.commonspace									csp
+application/vnd.comsocaller
+application/vnd.contact.cmsg								cdbcmsg
+application/vnd.cosmocaller									cmc
+application/vnd.crick.clicker								clkx
+application/vnd.crick.clicker.keyboard						clkk
+application/vnd.crick.clicker.palette						clkp
+application/vnd.crick.clicker.template						clkt
+application/vnd.crick.clicker.wordbank						clkw
+application/vnd.criticaltools.wbs+xml						wbs
+application/vnd.ctc-posml									pml
+application/vnd.ctct.ws+xml
+application/vnd.cups-pdf
+application/vnd.cups-postscript
+application/vnd.cups-ppd									ppd
+application/vnd.cups-raster
+application/vnd.cups-raw
+application/vnd.curl
+application/vnd.curl.car									car
+application/vnd.curl.pcurl									pcurl
+application/vnd.cyan.dean.root+xml
+application/vnd.cybank
+application/vnd.dart										dart
+application/vnd.data-vision.rdz								rdz
+application/vnd.dece.data									uvd uvf uvvd uvvf
+application/vnd.dece.ttml+xml								uvt uvvt
+application/vnd.dece.unspecified							uvvx uvx
+application/vnd.dece.zip									uvvz uvz
+application/vnd.denovo.fcselayout-link						fe_launch
+application/vnd.dir-bi.plate-dl-nosuffix
+application/vnd.dm.delegation+xml
+application/vnd.dna											dna
+application/vnd.dolby.mlp									mlp
+application/vnd.dolby.mobile.1
+application/vnd.dolby.mobile.2
+application/vnd.dpgraph										dpg
+application/vnd.dreamfactory								dfac
+application/vnd.ds-keypoint									kpxx
+application/vnd.dtg.local
+application/vnd.dtg.local.flash
+application/vnd.dtg.local.html
+application/vnd.dvb.ait										ait
+application/vnd.dvb.dvbj
+application/vnd.dvb.esgcontainer
+application/vnd.dvb.ipdcdftnotifaccess
+application/vnd.dvb.ipdcesgaccess
+application/vnd.dvb.ipdcesgaccess2
+application/vnd.dvb.ipdcesgpdd
+application/vnd.dvb.ipdcroaming
+application/vnd.dvb.iptv.alfec-base
+application/vnd.dvb.iptv.alfec-enhancement
+application/vnd.dvb.notif-aggregate-root+xml
+application/vnd.dvb.notif-container+xml
+application/vnd.dvb.notif-generic+xml
+application/vnd.dvb.notif-ia-msglist+xml
+application/vnd.dvb.notif-ia-registration-request+xml
+application/vnd.dvb.notif-ia-registration-response+xml
+application/vnd.dvb.notif-init+xml
+application/vnd.dvb.pfr
+application/vnd.dvb.service									svc
+application/vnd.dxr
+application/vnd.dynageo										geo
+application/vnd.easykaraoke.cdgdownload
+application/vnd.ecdis-update
+application/vnd.ecowin.chart								mag
+application/vnd.ecowin.filerequest
+application/vnd.ecowin.fileupdate
+application/vnd.ecowin.series
+application/vnd.ecowin.seriesrequest
+application/vnd.ecowin.seriesupdate
+application/vnd.emclient.accessrequest+xml
+application/vnd.enliven										nml
+application/vnd.eprints.data+xml
+application/vnd.epson.esf									esf
+application/vnd.epson.msf									msf
+application/vnd.epson.quickanime							qam
+application/vnd.epson.salt									slt
+application/vnd.epson.ssf									ssf
+application/vnd.ericsson.quickcall
+application/vnd.eszigno3+xml								es3 et3
+application/vnd.etsi.aoc+xml
+application/vnd.etsi.cug+xml
+application/vnd.etsi.iptvcommand+xml
+application/vnd.etsi.iptvdiscovery+xml
+application/vnd.etsi.iptvprofile+xml
+application/vnd.etsi.iptvsad-bc+xml
+application/vnd.etsi.iptvsad-cod+xml
+application/vnd.etsi.iptvsad-npvr+xml
+application/vnd.etsi.iptvservice+xml
+application/vnd.etsi.iptvsync+xml
+application/vnd.etsi.iptvueprofile+xml
+application/vnd.etsi.mcid+xml
+application/vnd.etsi.overload-control-policy-dataset+xml
+application/vnd.etsi.sci+xml
+application/vnd.etsi.simservs+xml
+application/vnd.etsi.tsl+xml
+application/vnd.etsi.tsl.der
+application/vnd.eudora.data
+application/vnd.ezpix-album									ez2
+application/vnd.ezpix-package								ez3
+application/vnd.f-secure.mobile
+application/vnd.fdf											fdf
+application/vnd.fdsn.mseed									mseed
+application/vnd.fdsn.seed									dataless seed
+application/vnd.ffsns
+application/vnd.fints
+application/vnd.flographit									gph
+application/vnd.fluxtime.clip								ftc
+application/vnd.font-fontforge-sfd
+application/vnd.framemaker									book fm frame maker
+application/vnd.frogans.fnc									fnc
+application/vnd.frogans.ltf									ltf
+application/vnd.fsc.weblaunch								fsc
+application/vnd.fujitsu.oasys								oas
+application/vnd.fujitsu.oasys2								oa2
+application/vnd.fujitsu.oasys3								oa3
+application/vnd.fujitsu.oasysgp								fg5
+application/vnd.fujitsu.oasysprs							bh2
+application/vnd.fujixerox.ART-EX
+application/vnd.fujixerox.ART4
+application/vnd.fujixerox.HBPL
+application/vnd.fujixerox.art-ex
+application/vnd.fujixerox.art4
+application/vnd.fujixerox.ddd								ddd
+application/vnd.fujixerox.docuworks							xdw
+application/vnd.fujixerox.docuworks.binder					xbd
+application/vnd.fujixerox.hbpl
+application/vnd.fut-misnet
+application/vnd.fuzzysheet									fzs
+application/vnd.genomatix.tuxedo							txd
+application/vnd.geocube+xml
+application/vnd.geogebra.file								ggb
+application/vnd.geogebra.tool								ggt
+application/vnd.geometry-explorer							gex gre
+application/vnd.geonext										gxt
+application/vnd.geoplan										g2w
+application/vnd.geospace									g3w
+application/vnd.globalplatform.card-content-mgt
+application/vnd.globalplatform.card-content-mgt-response
+application/vnd.gmx											gmx
+application/vnd.google-earth.kml+xml						kml
+application/vnd.google-earth.kmz							kmz
+application/vnd.grafeq										gqf gqs
+application/vnd.gridmp
+application/vnd.groove-account								gac
+application/vnd.groove-help									ghf
+application/vnd.groove-identity-message						gim
+application/vnd.groove-injector								grv
+application/vnd.groove-tool-message							gtm
+application/vnd.groove-tool-template						tpl
+application/vnd.groove-vcard								vcg
+application/vnd.hal+json
+application/vnd.hal+xml										hal
+application/vnd.handheld-entertainment+xml					zmm
+application/vnd.hbci										hbci
+application/vnd.hcl-bireports
+application/vnd.hhe.lesson-player							les
+application/vnd.hp-HPGL
+application/vnd.hp-PCL
+application/vnd.hp-PCLXL
+application/vnd.hp-hpgl										hpgl
+application/vnd.hp-hpid										hpid
+application/vnd.hp-hps										hps
+application/vnd.hp-jlyt										jlt
+application/vnd.hp-pcl										pcl
+application/vnd.hp-pclxl									pclxl
+application/vnd.httphone
+application/vnd.hydrostatix.sof-data						sfd-hdstx
+application/vnd.hzn-3d-crossword							x3d
+application/vnd.ibm.MiniPay
+application/vnd.ibm.afplinedata
+application/vnd.ibm.electronic-media
+application/vnd.ibm.minipay									mpy
+application/vnd.ibm.modcap									afp list3820 listafp
+application/vnd.ibm.rights-management						irm
+application/vnd.ibm.secure-container						sc
+application/vnd.iccprofile									icc icm
+application/vnd.ieee.1905
+application/vnd.igloader									igl
+application/vnd.immervision-ivp								ivp
+application/vnd.immervision-ivu								ivu
+application/vnd.informedcontrol.rms+xml
+application/vnd.informix-visionary
+application/vnd.infotech.project
+application/vnd.infotech.project+xml
+application/vnd.innopath.wamp.notification
+application/vnd.insors.igm									igm
+application/vnd.intercon.formnet							xpw xpx
+application/vnd.intergeo									i2g
+application/vnd.intertrust.digibox
+application/vnd.intertrust.nncp
+application/vnd.intu.qbo									qbo
+application/vnd.intu.qfx									qfx
+application/vnd.iptc.g2.conceptitem+xml
+application/vnd.iptc.g2.knowledgeitem+xml
+application/vnd.iptc.g2.newsitem+xml
+application/vnd.iptc.g2.newsmessage+xml
+application/vnd.iptc.g2.packageitem+xml
+application/vnd.iptc.g2.planningitem+xml
+application/vnd.ipunplugged.rcprofile						rcprofile
+application/vnd.irepository.package+xml						irp
+application/vnd.is-xpr										xpr
+application/vnd.isac.fcs									fcs
+application/vnd.jam											jam
+application/vnd.japannet-directory-service
+application/vnd.japannet-jpnstore-wakeup
+application/vnd.japannet-payment-wakeup
+application/vnd.japannet-registration
+application/vnd.japannet-registration-wakeup
+application/vnd.japannet-setstore-wakeup
+application/vnd.japannet-verification
+application/vnd.japannet-verification-wakeup
+application/vnd.jcp.javame.midlet-rms						rms
+application/vnd.jisp										jisp
+application/vnd.joost.joda-archive							joda
+application/vnd.jsk.isdn-ngn
+application/vnd.kahootz										ktr ktz
+application/vnd.kde.karbon									karbon
+application/vnd.kde.kchart									chrt
+application/vnd.kde.kformula								kfo
+application/vnd.kde.kivio									flw
+application/vnd.kde.kontour									kon
+application/vnd.kde.kpresenter								kpr kpt
+application/vnd.kde.kspread									ksp
+application/vnd.kde.kword									kwd kwt
+application/vnd.kenameaapp									htke
+application/vnd.kidspiration								kia
+application/vnd.kinar										kne knp
+application/vnd.koan										skd skm skp skt
+application/vnd.kodak-descriptor							sse
+application/vnd.las.las+xml									lasxml
+application/vnd.liberty-request+xml
+application/vnd.llamagraphics.life-balance.desktop			lbd
+application/vnd.llamagraphics.life-balance.exchange+xml		lbe
+application/vnd.lotus-1-2-3									123
+application/vnd.lotus-approach								apr
+application/vnd.lotus-freelance								pre
+application/vnd.lotus-notes									nsf
+application/vnd.lotus-organizer								org
+application/vnd.lotus-screencam								scm
+application/vnd.lotus-wordpro								lwp
+application/vnd.macports.portpkg							portpkg
+application/vnd.marlin.drm.actiontoken+xml
+application/vnd.marlin.drm.conftoken+xml
+application/vnd.marlin.drm.license+xml
+application/vnd.marlin.drm.mdcf
+application/vnd.mcd											mcd
+application/vnd.medcalcdata									mc1
+application/vnd.mediastation.cdkey							cdkey
+application/vnd.meridian-slingshot
+application/vnd.mfer										mwf
+application/vnd.mfmp										mfm
+application/vnd.micrografx.flo								flo
+application/vnd.micrografx.igx								igx
+application/vnd.mif											mif
+application/vnd.minisoft-hp3000-save
+application/vnd.mitsubishi.misty-guard.trustweb
+application/vnd.mobius.daf									daf
+application/vnd.mobius.dis									dis
+application/vnd.mobius.mbk									mbk
+application/vnd.mobius.mqy									mqy
+application/vnd.mobius.msl									msl
+application/vnd.mobius.plc									plc
+application/vnd.mobius.txf									txf
+application/vnd.mophun.application							mpn
+application/vnd.mophun.certificate							mpc
+application/vnd.motorola.flexsuite
+application/vnd.motorola.flexsuite.adsi
+application/vnd.motorola.flexsuite.fis
+application/vnd.motorola.flexsuite.gotap
+application/vnd.motorola.flexsuite.kmr
+application/vnd.motorola.flexsuite.ttc
+application/vnd.motorola.flexsuite.wem
+application/vnd.motorola.iprm
+application/vnd.mozilla.xul+xml								xul
+application/vnd.ms-artgalry									cil
+application/vnd.ms-asf
+application/vnd.ms-cab-compressed							cab
+application/vnd.ms-excel									xla xlb xlc xlm xls xlt xlw
+application/vnd.ms-excel.addin.macroEnabled.12				xlam
+application/vnd.ms-excel.addin.macroenabled.12				xlam
+application/vnd.ms-excel.sheet.binary.macroEnabled.12		xlsb
+application/vnd.ms-excel.sheet.binary.macroenabled.12		xlsb
+application/vnd.ms-excel.sheet.macroEnabled.12				xlsm
+application/vnd.ms-excel.sheet.macroenabled.12				xlsm
+application/vnd.ms-excel.template.macroEnabled.12			xltm
+application/vnd.ms-excel.template.macroenabled.12			xltm
+application/vnd.ms-fontobject								eot
+application/vnd.ms-htmlhelp									chm
+application/vnd.ms-ims										ims
+application/vnd.ms-lrm										lrm
+application/vnd.ms-office.activeX+xml
+application/vnd.ms-officetheme								thmx
+application/vnd.ms-pki.seccat								cat
+application/vnd.ms-pki.stl									stl
+application/vnd.ms-playready.initiator+xml
+application/vnd.ms-powerpoint								pot pps ppt
+application/vnd.ms-powerpoint.addin.macroEnabled.12			ppam
+application/vnd.ms-powerpoint.addin.macroenabled.12			ppam
+application/vnd.ms-powerpoint.presentation.macroEnabled.12											pptm
+application/vnd.ms-powerpoint.presentation.macroenabled.12											pptm
+application/vnd.ms-powerpoint.slide.macroEnabled.12			sldm
+application/vnd.ms-powerpoint.slide.macroenabled.12			sldm
+application/vnd.ms-powerpoint.slideshow.macroEnabled.12		ppsm
+application/vnd.ms-powerpoint.slideshow.macroenabled.12		ppsm
+application/vnd.ms-powerpoint.template.macroEnabled.12		potm
+application/vnd.ms-powerpoint.template.macroenabled.12		potm
+application/vnd.ms-project									mpp mpt
+application/vnd.ms-tnef
+application/vnd.ms-wmdrm.lic-chlg-req
+application/vnd.ms-wmdrm.lic-resp
+application/vnd.ms-wmdrm.meter-chlg-req
+application/vnd.ms-wmdrm.meter-resp
+application/vnd.ms-word.document.macroEnabled.12			docm
+application/vnd.ms-word.document.macroenabled.12			docm
+application/vnd.ms-word.template.macroEnabled.12			dotm
+application/vnd.ms-word.template.macroenabled.12			dotm
+application/vnd.ms-works									wcm wdb wks wps
+application/vnd.ms-wpl										wpl
+application/vnd.ms-xpsdocument								xps
+application/vnd.mseq										mseq
+application/vnd.msign
+application/vnd.multiad.creator
+application/vnd.multiad.creator.cif
+application/vnd.music-niff
+application/vnd.musician									mus
+application/vnd.muvee.style									msty
+application/vnd.mynfc										taglet
+application/vnd.ncd.control
+application/vnd.ncd.reference
+application/vnd.nervana
+application/vnd.netfpx
+application/vnd.neurolanguage.nlu							nlu
+application/vnd.nintendo.nitro.rom
+application/vnd.nitf										nitf ntf
+application/vnd.noblenet-directory							nnd
+application/vnd.noblenet-sealer								nns
+application/vnd.noblenet-web								nnw
+application/vnd.nokia.catalogs
+application/vnd.nokia.conml+wbxml
+application/vnd.nokia.conml+xml
+application/vnd.nokia.iSDS-radio-presets
+application/vnd.nokia.iptv.config+xml
+application/vnd.nokia.isds-radio-presets
+application/vnd.nokia.landmark+wbxml
+application/vnd.nokia.landmark+xml
+application/vnd.nokia.landmarkcollection+xml
+application/vnd.nokia.n-gage.ac+xml
+application/vnd.nokia.n-gage.data							ngdat
+application/vnd.nokia.n-gage.symbian.install				n-gage
+application/vnd.nokia.ncd
+application/vnd.nokia.pcd+wbxml
+application/vnd.nokia.pcd+xml
+application/vnd.nokia.radio-preset							rpst
+application/vnd.nokia.radio-presets							rpss
+application/vnd.novadigm.EDM
+application/vnd.novadigm.EDX
+application/vnd.novadigm.EXT
+application/vnd.novadigm.edm								edm
+application/vnd.novadigm.edx								edx
+application/vnd.novadigm.ext								ext
+application/vnd.ntt-local.content-share
+application/vnd.ntt-local.file-transfer
+application/vnd.ntt-local.sip-ta_remote
+application/vnd.ntt-local.sip-ta_tcp_stream
+application/vnd.oasis.opendocument.chart					odc
+application/vnd.oasis.opendocument.chart-template			otc
+application/vnd.oasis.opendocument.database					odb
+application/vnd.oasis.opendocument.formula					odf
+application/vnd.oasis.opendocument.formula-template			odft
+application/vnd.oasis.opendocument.graphics					odg
+application/vnd.oasis.opendocument.graphics-template		otg
+application/vnd.oasis.opendocument.image					odi
+application/vnd.oasis.opendocument.image-template			oti
+application/vnd.oasis.opendocument.presentation				odp
+application/vnd.oasis.opendocument.presentation-template											otp
+application/vnd.oasis.opendocument.spreadsheet				ods
+application/vnd.oasis.opendocument.spreadsheet-template		ots
+application/vnd.oasis.opendocument.text						odt
+application/vnd.oasis.opendocument.text-master				odm otm
+application/vnd.oasis.opendocument.text-template			ott
+application/vnd.oasis.opendocument.text-web					oth
+application/vnd.obn
+application/vnd.oftn.l10n+json
+application/vnd.oipf.contentaccessdownload+xml
+application/vnd.oipf.contentaccessstreaming+xml
+application/vnd.oipf.cspg-hexbinary
+application/vnd.oipf.dae.svg+xml
+application/vnd.oipf.dae.xhtml+xml
+application/vnd.oipf.mippvcontrolmessage+xml
+application/vnd.oipf.pae.gem
+application/vnd.oipf.spdiscovery+xml
+application/vnd.oipf.spdlist+xml
+application/vnd.oipf.ueprofile+xml
+application/vnd.oipf.userprofile+xml
+application/vnd.olpc-sugar									xo
+application/vnd.oma-scws-config
+application/vnd.oma-scws-http-request
+application/vnd.oma-scws-http-response
+application/vnd.oma.bcast.associated-procedure-parameter+xml
+application/vnd.oma.bcast.drm-trigger+xml
+application/vnd.oma.bcast.imd+xml
+application/vnd.oma.bcast.ltkm
+application/vnd.oma.bcast.notification+xml
+application/vnd.oma.bcast.provisioningtrigger
+application/vnd.oma.bcast.sgboot
+application/vnd.oma.bcast.sgdd+xml
+application/vnd.oma.bcast.sgdu
+application/vnd.oma.bcast.simple-symbol-container
+application/vnd.oma.bcast.smartcard-trigger+xml
+application/vnd.oma.bcast.sprov+xml
+application/vnd.oma.bcast.stkm
+application/vnd.oma.cab-address-book+xml
+application/vnd.oma.cab-pcc+xml
+application/vnd.oma.cab-subs-invite+xml
+application/vnd.oma.cab-user-prefs+xml
+application/vnd.oma.dcd
+application/vnd.oma.dcdc
+application/vnd.oma.dd2+xml									dd2
+application/vnd.oma.drm.risd+xml
+application/vnd.oma.group-usage-list+xml
+application/vnd.oma.pal+xml
+application/vnd.oma.poc.detailed-progress-report+xml
+application/vnd.oma.poc.final-report+xml
+application/vnd.oma.poc.groups+xml
+application/vnd.oma.poc.invocation-descriptor+xml
+application/vnd.oma.poc.optimized-progress-report+xml
+application/vnd.oma.push
+application/vnd.oma.scidm.messages+xml
+application/vnd.oma.xcap-directory+xml
+application/vnd.omads-email+xml
+application/vnd.omads-file+xml
+application/vnd.omads-folder+xml
+application/vnd.omaloc-supl-init
+application/vnd.openofficeorg.extension						oxt
+application/vnd.openxmlformats-officedocument.custom-properties+xml
+application/vnd.openxmlformats-officedocument.customXmlProperties+xml
+application/vnd.openxmlformats-officedocument.drawing+xml
+application/vnd.openxmlformats-officedocument.drawingml.chart+xml
+application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml
+application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml
+application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml
+application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml
+application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml
+application/vnd.openxmlformats-officedocument.extended-properties+xml
+application/vnd.openxmlformats-officedocument.presentationml.commentAuthors+xml
+application/vnd.openxmlformats-officedocument.presentationml.comments+xml
+application/vnd.openxmlformats-officedocument.presentationml.handoutMaster+xml
+application/vnd.openxmlformats-officedocument.presentationml.notesMaster+xml
+application/vnd.openxmlformats-officedocument.presentationml.notesSlide+xml
+application/vnd.openxmlformats-officedocument.presentationml.presProps+xml
+application/vnd.openxmlformats-officedocument.presentationml.presentation							pptx
+application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml
+application/vnd.openxmlformats-officedocument.presentationml.slide									sldx
+application/vnd.openxmlformats-officedocument.presentationml.slide+xml
+application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml
+application/vnd.openxmlformats-officedocument.presentationml.slideMaster+xml
+application/vnd.openxmlformats-officedocument.presentationml.slideUpdateInfo+xml
+application/vnd.openxmlformats-officedocument.presentationml.slideshow								ppsx
+application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml
+application/vnd.openxmlformats-officedocument.presentationml.tableStyles+xml
+application/vnd.openxmlformats-officedocument.presentationml.tags+xml
+application/vnd.openxmlformats-officedocument.presentationml.template								potx
+application/vnd.openxmlformats-officedocument.presentationml.template.main+xml
+application/vnd.openxmlformats-officedocument.presentationml.viewProps+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.sheet									xlsx
+application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.template								xltx
+application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml
+application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml
+application/vnd.openxmlformats-officedocument.theme+xml
+application/vnd.openxmlformats-officedocument.themeOverride+xml
+application/vnd.openxmlformats-officedocument.vmlDrawing
+application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.document								docx
+application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.template								dotx
+application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml
+application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml
+application/vnd.openxmlformats-package.core-properties+xml
+application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml
+application/vnd.openxmlformats-package.relationships+xml
+application/vnd.orange.indata
+application/vnd.osa.netdeploy
+application/vnd.osgeo.mapguide.package						mgp
+application/vnd.osgi.bundle
+application/vnd.osgi.dp										dp
+application/vnd.osgi.subsystem								esa
+application/vnd.otps.ct-kip+xml
+application/vnd.palm										oprc pdb pqa
+application/vnd.paos.xml
+application/vnd.pawaafile									paw
+application/vnd.pg.format									str
+application/vnd.pg.osasli									ei6
+application/vnd.piaccess.application-licence
+application/vnd.picsel										efif
+application/vnd.pmi.widget									wg
+application/vnd.poc.group-advertisement+xml
+application/vnd.pocketlearn									plf
+application/vnd.powerbuilder6								pbd
+application/vnd.powerbuilder6-s
+application/vnd.powerbuilder7
+application/vnd.powerbuilder7-s
+application/vnd.powerbuilder75
+application/vnd.powerbuilder75-s
+application/vnd.preminet
+application/vnd.previewsystems.box							box
+application/vnd.proteus.magazine							mgz
+application/vnd.publishare-delta-tree						qps
+application/vnd.pvi.ptid1									ptid
+application/vnd.pwg-multiplexed
+application/vnd.pwg-xhtml-print+xml
+application/vnd.qualcomm.brew-app-res
+application/vnd.quark.quarkxpress							qwd qwt qxb qxd qxl qxt
+application/vnd.quobject-quoxdocument
+application/vnd.radisys.moml+xml
+application/vnd.radisys.msml+xml
+application/vnd.radisys.msml-audit+xml
+application/vnd.radisys.msml-audit-conf+xml
+application/vnd.radisys.msml-audit-conn+xml
+application/vnd.radisys.msml-audit-dialog+xml
+application/vnd.radisys.msml-audit-stream+xml
+application/vnd.radisys.msml-conf+xml
+application/vnd.radisys.msml-dialog+xml
+application/vnd.radisys.msml-dialog-base+xml
+application/vnd.radisys.msml-dialog-fax-detect+xml
+application/vnd.radisys.msml-dialog-fax-sendrecv+xml
+application/vnd.radisys.msml-dialog-group+xml
+application/vnd.radisys.msml-dialog-speech+xml
+application/vnd.radisys.msml-dialog-transform+xml
+application/vnd.rainstor.data
+application/vnd.rapid
+application/vnd.realvnc.bed									bed
+application/vnd.recordare.musicxml							mxl
+application/vnd.recordare.musicxml+xml						musicxml
+application/vnd.renlearn.rlprint
+application/vnd.rig.cryptonote								cryptonote
+application/vnd.rim.cod										cod
+application/vnd.rn-realmedia								rm
+application/vnd.rn-realmedia-vbr							rmvb
+application/vnd.route66.link66+xml							link66
+application/vnd.rs-274x
+application/vnd.ruckus.download
+application/vnd.s3sms
+application/vnd.sailingtracker.track						st
+application/vnd.sbm.cid
+application/vnd.sbm.mid2
+application/vnd.scribus
+application/vnd.sealed.3df
+application/vnd.sealed.csf
+application/vnd.sealed.doc
+application/vnd.sealed.eml
+application/vnd.sealed.mht
+application/vnd.sealed.net
+application/vnd.sealed.ppt
+application/vnd.sealed.tiff
+application/vnd.sealed.xls
+application/vnd.sealedmedia.softseal.html
+application/vnd.sealedmedia.softseal.pdf
+application/vnd.seemail										see
+application/vnd.sema										sema
+application/vnd.semd										semd
+application/vnd.semf										semf
+application/vnd.shana.informed.formdata						ifm
+application/vnd.shana.informed.formtemplate					itp
+application/vnd.shana.informed.interchange					iif
+application/vnd.shana.informed.package						ipk
+application/vnd.simtech-mindmapper							twd twds
+application/vnd.smaf										mmf
+application/vnd.smart.notebook
+application/vnd.smart.teacher								teacher
+application/vnd.software602.filler.form+xml
+application/vnd.software602.filler.form-xml-zip
+application/vnd.solent.sdkm+xml								sdkd sdkm
+application/vnd.spotfire.dxp								dxp
+application/vnd.spotfire.sfs								sfs
+application/vnd.sss-cod
+application/vnd.sss-dtf
+application/vnd.sss-ntf
+application/vnd.stardivision.calc							sdc
+application/vnd.stardivision.chart							sds
+application/vnd.stardivision.draw							sda
+application/vnd.stardivision.impress						sdd sdp
+application/vnd.stardivision.math							sdf smf
+application/vnd.stardivision.writer							sdw vor
+application/vnd.stardivision.writer-global					sgl
+application/vnd.stepmania.package							smzip
+application/vnd.stepmania.stepchart							sm
+application/vnd.street-stream
+application/vnd.sun.wadl+xml
+application/vnd.sun.xml.calc								sxc
+application/vnd.sun.xml.calc.template						stc
+application/vnd.sun.xml.draw								sxd
+application/vnd.sun.xml.draw.template						std
+application/vnd.sun.xml.impress								sxi
+application/vnd.sun.xml.impress.template					sti
+application/vnd.sun.xml.math								sxm
+application/vnd.sun.xml.writer								sxw
+application/vnd.sun.xml.writer.global						sxg
+application/vnd.sun.xml.writer.template						stw
+application/vnd.sus-calendar								sus susp
+application/vnd.svd											svd
+application/vnd.swiftview-ics
+application/vnd.symbian.install								sis sisx
+application/vnd.syncml+xml									xsm
+application/vnd.syncml.dm+wbxml								bdm
+application/vnd.syncml.dm+xml								xdm
+application/vnd.syncml.dm.notification
+application/vnd.syncml.dmddf+wbxml
+application/vnd.syncml.dmddf+xml
+application/vnd.syncml.dmtnds+wbxml
+application/vnd.syncml.dmtnds+xml
+application/vnd.syncml.ds.notification
+application/vnd.tao.intent-module-archive					tao
+application/vnd.tcpdump.pcap								cap dmp pcap
+application/vnd.tmobile-livetv								tmo
+application/vnd.trid.tpt									tpt
+application/vnd.triscape.mxs								mxs
+application/vnd.trueapp										tra
+application/vnd.truedoc
+application/vnd.tve-trigger
+application/vnd.ubisoft.webplayer
+application/vnd.ufdl										ufd ufdl
+application/vnd.uiq.theme									utz
+application/vnd.umajin										umj
+application/vnd.unity										unityweb
+application/vnd.uoml+xml									uoml
+application/vnd.uplanet.alert
+application/vnd.uplanet.alert-wbxml
+application/vnd.uplanet.bearer-choice
+application/vnd.uplanet.bearer-choice-wbxml
+application/vnd.uplanet.cacheop
+application/vnd.uplanet.cacheop-wbxml
+application/vnd.uplanet.channel
+application/vnd.uplanet.channel-wbxml
+application/vnd.uplanet.list
+application/vnd.uplanet.list-wbxml
+application/vnd.uplanet.listcmd
+application/vnd.uplanet.listcmd-wbxml
+application/vnd.uplanet.signal
+application/vnd.vcx											vcx
+application/vnd.vd-study
+application/vnd.vectorworks
+application/vnd.verimatrix.vcas
+application/vnd.vidsoft.vidconference
+application/vnd.visio										vsd vss vst vsw
+application/vnd.visionary									vis
+application/vnd.vividence.scriptfile
+application/vnd.vsf											vsf
+application/vnd.wap.sic
+application/vnd.wap.slc
+application/vnd.wap.wbxml									wbxml
+application/vnd.wap.wmlc									wmlc
+application/vnd.wap.wmlscriptc								wmlsc
+application/vnd.webturbo									wtb
+application/vnd.wfa.wsc
+application/vnd.wmc
+application/vnd.wmf.bootstrap
+application/vnd.wolfram.mathematica
+application/vnd.wolfram.mathematica.package
+application/vnd.wolfram.player								nbp
+application/vnd.wordperfect									wpd
+application/vnd.wordperfect5.1								wp5
+application/vnd.wqd											wqd
+application/vnd.wrq-hp3000-labelled
+application/vnd.wt.stf										stf
+application/vnd.wv.csp+wbxml
+application/vnd.wv.csp+xml
+application/vnd.wv.ssp+xml
+application/vnd.xara										xar
+application/vnd.xfdl										xfdl
+application/vnd.xfdl.webform
+application/vnd.xmi+xml
+application/vnd.xmpie.cpkg
+application/vnd.xmpie.dpkg
+application/vnd.xmpie.plan
+application/vnd.xmpie.ppkg
+application/vnd.xmpie.xlim
+application/vnd.yamaha.hv-dic								hvd
+application/vnd.yamaha.hv-script							hvs
+application/vnd.yamaha.hv-voice								hvp
+application/vnd.yamaha.openscoreformat						osf
+application/vnd.yamaha.openscoreformat.osfpvg+xml			osfpvg
+application/vnd.yamaha.remote-setup
+application/vnd.yamaha.smaf-audio							saf
+application/vnd.yamaha.smaf-phrase							spf
+application/vnd.yamaha.through-ngn
+application/vnd.yamaha.tunnel-udpencap
+application/vnd.yellowriver-custom-menu						cmp
+application/vnd.zul											zir zirz
+application/vnd.zzazz.deck+xml								zaz
+application/voicexml+xml									vxml
+application/vq-rtcpxr
+application/watcherinfo+xml
+application/whoispp-query
+application/whoispp-response
+application/widget											wgt
+application/winhlp											hlp
+application/wita
+application/wordperfect										wpd
+application/wordperfect5.1									wp5
+application/wsdl+xml										wsdl
+application/wspolicy+xml									wspolicy
+application/x-123											wk
+application/x-7z-compressed									7z
+application/x-abiword										abw
+application/x-ace-compressed								ace
+application/x-apple-diskimage								dmg
+application/x-authorware-bin								aab u32 vox x32
+application/x-authorware-map								aam
+application/x-authorware-seg								aas
+application/x-bcpio											bcpio
+application/x-bittorrent									torrent
+application/x-blorb											blb blorb
+application/x-bzip											bz
+application/x-bzip2											boz bz2
+application/x-cab											cab
+application/x-cbr											cb7 cba cbr cbt cbz
+application/x-cbz											cbz
+application/x-cdf											cda cdf
+application/x-cdlink										vcd
+application/x-cfs-compressed								cfs
+application/x-chat											chat
+application/x-chess-pgn										pgn
+application/x-compress
+application/x-comsol										mph
+application/x-conference									nsc
+application/x-core
+application/x-cpio											cpio
+application/x-csh											csh
+application/x-debian-package								deb udeb
+application/x-dgc-compressed								dgc
+application/x-director										cct cst cxt dcr dir dxr fgd swa w3d
+application/x-dms											dms
+application/x-doom											wad
+application/x-dtbncx+xml									ncx
+application/x-dtbook+xml									dtb
+application/x-dtbresource+xml								res
+application/x-dvi											dvi
+application/x-envoy											evy
+application/x-eva											eva
+application/x-executable
+application/x-flac											flac
+application/x-font											gsf pcf pcf.Z pfa pfb
+application/x-font-bdf										bdf
+application/x-font-dos
+application/x-font-framemaker
+application/x-font-ghostscript								gsf
+application/x-font-libgrx
+application/x-font-linux-psf								psf
+application/x-font-otf										otf
+application/x-font-pcf										pcf
+application/x-font-snf										snf
+application/x-font-speedo
+application/x-font-sunos-news
+application/x-font-ttf										ttc ttf
+application/x-font-type1									afm pfa pfb pfm
+application/x-font-vfont
+application/x-font-woff										woff
+application/x-freearc										arc
+application/x-freemind										mm
+application/x-futuresplash									spl
+application/x-ganttproject									gan
+application/x-gca-compressed								gca
+application/x-glulx											ulx
+application/x-gnumeric										gnumeric
+application/x-go-sgf										sgf
+application/x-gramps-xml									gramps
+application/x-graphing-calculator							gcf
+application/x-gtar											gtar taz tgz
+application/x-gtar-compressed								taz tgz
+application/x-gzip
+application/x-hdf											hdf
+application/x-hwp											hwp
+application/x-ica											ica
+application/x-info											info
+application/x-install-instructions							install
+application/x-internet-signup								ins isp
+application/x-iphone										iii
+application/x-iso9660-image									iso
+application/x-jam											jam
+application/x-java-applet
+application/x-java-bean
+application/x-java-jnlp-file								jnlp
+application/x-javascript									js
+application/x-jmol											jmz
+application/x-kchart										chrt
+application/x-kdelnk
+application/x-killustrator									kil
+application/x-koan											skd skm skp skt
+application/x-kpresenter									kpr kpt
+application/x-kspread										ksp
+application/x-kword											kwd kwt
+application/x-latex											latex
+application/x-lha											lha
+application/x-lyx											lyx
+application/x-lzh											lzh
+application/x-lzh-compressed								lha lzh
+application/x-lzx											lzx
+application/x-maker											book fb fbdoc fm frame frm maker
+application/x-md5											md5
+application/x-mie											mie
+application/x-mif											mif
+application/x-mobipocket-ebook								mobi prc
+application/x-mpegURL										m3u8
+application/x-ms-application								application
+application/x-ms-shortcut									lnk
+application/x-ms-wmd										wmd
+application/x-ms-wmz										wmz
+application/x-ms-xbap										xbap
+application/x-msaccess										mdb
+application/x-msbinder										obd
+application/x-mscardfile									crd
+application/x-msclip										clp
+application/x-msdos-program									bat com dll exe
+application/x-msdownload									bat com dll exe msi
+application/x-msi											msi
+application/x-msmediaview									m13 m14 mvb
+application/x-msmetafile									emf emz wmf wmz
+application/x-msmoney										mny
+application/x-mspublisher									pub
+application/x-msschedule									scd
+application/x-msterminal									trm
+application/x-mswrite										wri
+application/x-netcdf										cdf nc
+application/x-ns-proxy-autoconfig							dat pac
+application/x-nwc											nwc
+application/x-nzb											nzb
+application/x-object										o
+application/x-oz-application								oza
+application/x-pkcs12										p12 pfx
+application/x-pkcs7-certificates							p7b spc
+application/x-pkcs7-certreqresp								p7r
+application/x-pkcs7-crl										crl
+application/x-python-code									pyc pyo
+application/x-qgis											qgs shp shx
+application/x-quicktimeplayer								qtl
+application/x-rar-compressed								rar
+application/x-rdp											rdp
+application/x-redhat-package-manager						rpm
+application/x-research-info-systems							ris
+application/x-rss+xml										rss
+application/x-ruby											rb
+application/x-rx
+application/x-scilab										sce sci
+application/x-scilab-xcos									xcos
+application/x-sh											sh
+application/x-sha1											sha1
+application/x-shar											shar
+application/x-shellscript
+application/x-shockwave-flash								swf swfl
+application/x-silverlight									scr
+application/x-silverlight-app								xap
+application/x-sql											sql
+application/x-stuffit										sit sitx
+application/x-stuffitx										sitx
+application/x-subrip										srt
+application/x-sv4cpio										sv4cpio
+application/x-sv4crc										sv4crc
+application/x-t3vm-image									t3
+application/x-tads											gam
+application/x-tar											tar
+application/x-tcl											tcl
+application/x-tex											tex
+application/x-tex-gf										gf
+application/x-tex-pk										pk
+application/x-tex-tfm										tfm
+application/x-texinfo										texi texinfo
+application/x-tgif											obj
+application/x-trash											% bak old sik ~
+application/x-troff											roff t tr
+application/x-troff-man										man
+application/x-troff-me										me
+application/x-troff-ms										ms
+application/x-ustar											ustar
+application/x-videolan
+application/x-wais-source									src
+application/x-wingz											wz
+application/x-x509-ca-cert									crt der
+application/x-xcf											xcf
+application/x-xfig											fig
+application/x-xliff+xml										xlf
+application/x-xpinstall										xpi
+application/x-xz											xz
+application/x-zmachine										z1 z2 z3 z4 z5 z6 z7 z8
+application/x400-bp
+application/xaml+xml										xaml
+application/xcap-att+xml
+application/xcap-caps+xml
+application/xcap-diff+xml									xdf
+application/xcap-el+xml
+application/xcap-error+xml
+application/xcap-ns+xml
+application/xcon-conference-info+xml
+application/xcon-conference-info-diff+xml
+application/xenc+xml										xenc
+application/xhtml+xml										xht xhtml
+application/xhtml-voice+xml
+application/xml												xml xsd xsl
+application/xml-dtd											dtd
+application/xml-external-parsed-entity
+application/xmpp+xml
+application/xop+xml											xop
+application/xproc+xml										xpl
+application/xslt+xml										xslt
+application/xspf+xml										xspf
+application/xv+xml											mxml xhvml xvm xvml
+application/yang											yang
+application/yin+xml											yin
+application/zip												zip
+application/zlib
+audio/1d-interleaved-parityfec
+audio/32kadpcm
+audio/3gpp
+audio/3gpp2
+audio/AMR
+audio/AMR-WB
+audio/ATRAC-ADVANCED-LOSSLESS
+audio/ATRAC-X
+audio/ATRAC3
+audio/BV16
+audio/BV32
+audio/CN
+audio/DAT12
+audio/DV
+audio/DVI4
+audio/EVRC
+audio/EVRC-QCP
+audio/EVRC0
+audio/EVRC1
+audio/EVRCB
+audio/EVRCB0
+audio/EVRCB1
+audio/EVRCWB
+audio/EVRCWB0
+audio/EVRCWB1
+audio/G719
+audio/G722
+audio/G7221
+audio/G723
+audio/G726-16
+audio/G726-24
+audio/G726-32
+audio/G726-40
+audio/G728
+audio/G729
+audio/G7291
+audio/G729D
+audio/G729E
+audio/GSM
+audio/GSM-EFR
+audio/GSM-HR-08
+audio/L16
+audio/L20
+audio/L24
+audio/L8
+audio/LPC
+audio/MP4A-LATM
+audio/MPA
+audio/PCMA
+audio/PCMA-WB
+audio/PCMU
+audio/PCMU-WB
+audio/QCELP
+audio/RED
+audio/SMV
+audio/SMV-QCP
+audio/SMV0
+audio/UEMCLIP
+audio/VDVI
+audio/VMR-WB
+audio/ac3
+audio/adpcm													adp
+audio/amr													amr
+audio/amr-wb												awb
+audio/amr-wb+
+audio/annodex												axa
+audio/asc
+audio/basic													au snd
+audio/bv16
+audio/bv32
+audio/clearmode
+audio/cn
+audio/csound												csd orc sco
+audio/dat12
+audio/dls
+audio/dsr-es201108
+audio/dsr-es202050
+audio/dsr-es202211
+audio/dsr-es202212
+audio/dvi4
+audio/eac3
+audio/evrc
+audio/evrc-qcp
+audio/evrc0
+audio/evrc1
+audio/evrcb
+audio/evrcb0
+audio/evrcb1
+audio/evrcwb
+audio/evrcwb0
+audio/evrcwb1
+audio/example
+audio/flac													flac
+audio/fwdred
+audio/g.722.1
+audio/g719
+audio/g722
+audio/g7221
+audio/g723
+audio/g726-16
+audio/g726-24
+audio/g726-32
+audio/g726-40
+audio/g728
+audio/g729
+audio/g7291
+audio/g729d
+audio/g729e
+audio/gsm
+audio/gsm-efr
+audio/iLBC
+audio/ilbc
+audio/ip-mr_v2.5
+audio/l16
+audio/l20
+audio/l24
+audio/l8
+audio/lpc
+audio/midi													kar mid midi rmi
+audio/mobile-xmf
+audio/mp4													mp4a
+audio/mp4a-latm
+audio/mpa
+audio/mpa-robust
+audio/mpeg													m2a m3a m4a mp2 mp2a mp3 mpega mpga
+audio/mpeg4-generic
+audio/mpegurl												m3u
+audio/ogg													oga ogg opus spx
+audio/parityfec
+audio/pcma
+audio/pcma-wb
+audio/pcmu
+audio/pcmu-wb
+audio/prs.sid												sid
+audio/qcelp
+audio/raptorfec
+audio/red
+audio/rtp-enc-aescm128
+audio/rtp-midi
+audio/rtx
+audio/s3m													s3m
+audio/silk													sil
+audio/smv
+audio/smv-qcp
+audio/smv0
+audio/sp-midi
+audio/speex
+audio/t140c
+audio/t38
+audio/telephone-event
+audio/tone
+audio/ulpfec
+audio/vdvi
+audio/vmr-wb
+audio/vnd.3gpp.iufp
+audio/vnd.4SB
+audio/vnd.4sb
+audio/vnd.CELP
+audio/vnd.audiokoz
+audio/vnd.celp
+audio/vnd.cisco.nse
+audio/vnd.cmles.radio-events
+audio/vnd.cns.anp1
+audio/vnd.cns.inf1
+audio/vnd.dece.audio										uva uvva
+audio/vnd.digital-winds										eol
+audio/vnd.dlna.adts
+audio/vnd.dolby.heaac.1
+audio/vnd.dolby.heaac.2
+audio/vnd.dolby.mlp
+audio/vnd.dolby.mps
+audio/vnd.dolby.pl2
+audio/vnd.dolby.pl2x
+audio/vnd.dolby.pl2z
+audio/vnd.dolby.pulse.1
+audio/vnd.dra												dra
+audio/vnd.dts												dts
+audio/vnd.dts.hd											dtshd
+audio/vnd.dvb.file
+audio/vnd.everad.plj
+audio/vnd.hns.audio
+audio/vnd.lucent.voice										lvp
+audio/vnd.ms-playready.media.pya							pya
+audio/vnd.nokia.mobile-xmf
+audio/vnd.nortel.vbk
+audio/vnd.nuera.ecelp4800									ecelp4800
+audio/vnd.nuera.ecelp7470									ecelp7470
+audio/vnd.nuera.ecelp9600									ecelp9600
+audio/vnd.octel.sbc
+audio/vnd.qcelp
+audio/vnd.rhetorex.32kadpcm
+audio/vnd.rip												rip
+audio/vnd.sealedmedia.softseal.mpeg
+audio/vnd.vmx.cvsd
+audio/vorbis
+audio/vorbis-config
+audio/webm													weba
+audio/x-aac													aac
+audio/x-aiff												aif aifc aiff
+audio/x-caf													caf
+audio/x-flac												flac
+audio/x-gsm													gsm
+audio/x-matroska											mka
+audio/x-mpegurl												m3u
+audio/x-ms-wax												wax
+audio/x-ms-wma												wma
+audio/x-pn-realaudio										ra ram rm
+audio/x-pn-realaudio-plugin									rmp
+audio/x-realaudio											ra
+audio/x-scpls												pls
+audio/x-sd2													sd2
+audio/x-wav													wav
+audio/xm													xm
+chemical/x-alchemy											alc
+chemical/x-cache											cac cache
+chemical/x-cache-csf										csf
+chemical/x-cactvs-binary									cascii cbin ctab
+chemical/x-cdx												cdx
+chemical/x-cerius											cer
+chemical/x-chem3d											c3d
+chemical/x-chemdraw											chm
+chemical/x-cif												cif
+chemical/x-cmdf												cmdf
+chemical/x-cml												cml
+chemical/x-compass											cpa
+chemical/x-crossfire										bsd
+chemical/x-csml												csm csml
+chemical/x-ctx												ctx
+chemical/x-cxf												cef cxf
+chemical/x-embl-dl-nucleotide								emb embl
+chemical/x-galactic-spc										spc
+chemical/x-gamess-input										gam gamin inp
+chemical/x-gaussian-checkpoint								fch fchk
+chemical/x-gaussian-cube									cub
+chemical/x-gaussian-input									gau gjc gjf
+chemical/x-gaussian-log										gal
+chemical/x-gcg8-sequence									gcg
+chemical/x-genbank											gen
+chemical/x-hin												hin
+chemical/x-isostar											ist istr
+chemical/x-jcamp-dx											dx jdx
+chemical/x-kinemage											kin
+chemical/x-macmolecule										mcm
+chemical/x-macromodel-input									mmd mmod
+chemical/x-mdl-molfile										mol
+chemical/x-mdl-rdfile										rd
+chemical/x-mdl-rxnfile										rxn
+chemical/x-mdl-sdfile										sd sdf
+chemical/x-mdl-tgf											tgf
+chemical/x-mmcif											mcif
+chemical/x-mol2												mol2
+chemical/x-molconn-Z										b
+chemical/x-mopac-graph										gpt
+chemical/x-mopac-input										dat mop mopcrt mpc zmt
+chemical/x-mopac-out										moo
+chemical/x-mopac-vib										mvb
+chemical/x-ncbi-asn1										asn
+chemical/x-ncbi-asn1-ascii									ent prt
+chemical/x-ncbi-asn1-binary									aso val
+chemical/x-ncbi-asn1-spec									asn
+chemical/x-pdb												ent pdb
+chemical/x-rosdal											ros
+chemical/x-swissprot										sw
+chemical/x-vamas-iso14976									vms
+chemical/x-vmd												vmd
+chemical/x-xtel												xtel
+chemical/x-xyz												xyz
+image/bmp													bmp
+image/cgm													cgm
+image/example
+image/fits
+image/g3fax													g3
+image/gif													gif
+image/ief													ief
+image/jp2
+image/jpeg													jpe jpeg jpg
+image/jpm
+image/jpx
+image/ktx													ktx
+image/naplps
+image/pcx													pcx
+image/png													png
+image/prs.btif												btif
+image/prs.pti
+image/pwg-raster
+image/sgi													sgi
+image/svg+xml												svg svgz
+image/t38
+image/tiff													tif tiff
+image/tiff-fx
+image/vnd.adobe.photoshop									psd
+image/vnd.airzip.accelerator.azv
+image/vnd.cns.inf2
+image/vnd.dece.graphic										uvg uvi uvvg uvvi
+image/vnd.djvu												djv djvu
+image/vnd.dvb.subtitle										sub
+image/vnd.dwg												dwg
+image/vnd.dxf												dxf
+image/vnd.fastbidsheet										fbs
+image/vnd.fpx												fpx
+image/vnd.fst												fst
+image/vnd.fujixerox.edmics-mmr								mmr
+image/vnd.fujixerox.edmics-rlc								rlc
+image/vnd.globalgraphics.pgb
+image/vnd.microsoft.icon									ico
+image/vnd.mix
+image/vnd.ms-modi											mdi
+image/vnd.ms-photo											wdp
+image/vnd.net-fpx											npx
+image/vnd.radiance
+image/vnd.sealed.png
+image/vnd.sealedmedia.softseal.gif
+image/vnd.sealedmedia.softseal.jpg
+image/vnd.svf
+image/vnd.wap.wbmp											wbmp
+image/vnd.xiff												xif
+image/webp													webp
+image/x-3ds													3ds
+image/x-canon-cr2											cr2
+image/x-canon-crw											crw
+image/x-cmu-raster											ras
+image/x-cmx													cmx
+image/x-coreldraw											cdr
+image/x-coreldrawpattern									pat
+image/x-coreldrawtemplate									cdt
+image/x-corelphotopaint										cpt
+image/x-epson-erf											erf
+image/x-freehand											fh fh4 fh5 fh7 fhc
+image/x-icon												ico
+image/x-jg													art
+image/x-jng													jng
+image/x-mrsid-image											sid
+image/x-ms-bmp												bmp
+image/x-nikon-nef											nef
+image/x-olympus-orf											orf
+image/x-pcx													pcx
+image/x-photoshop											psd
+image/x-pict												pct pic
+image/x-portable-anymap										pnm
+image/x-portable-bitmap										pbm
+image/x-portable-graymap									pgm
+image/x-portable-pixmap										ppm
+image/x-rgb													rgb
+image/x-tga													tga
+image/x-xbitmap												xbm
+image/x-xpixmap												xpm
+image/x-xwindowdump											xwd
+inode/blockdevice
+inode/chardevice
+inode/directory
+inode/directory-locked
+inode/fifo
+inode/socket
+message/CPIM
+message/cpim
+message/delivery-status
+message/disposition-notification
+message/example
+message/external-body
+message/feedback-report
+message/global
+message/global-delivery-status
+message/global-disposition-notification
+message/global-headers
+message/http
+message/imdn+xml
+message/news
+message/partial
+message/rfc822												eml mime
+message/s-http
+message/sip
+message/sipfrag
+message/tracking-status
+message/vnd.si.simp
+model/example
+model/iges													iges igs
+model/mesh													mesh msh silo
+model/vnd.collada+xml										dae
+model/vnd.dwf												dwf
+model/vnd.flatland.3dml
+model/vnd.gdl												gdl
+model/vnd.gs-gdl
+model/vnd.gs.gdl
+model/vnd.gtw												gtw
+model/vnd.moml+xml
+model/vnd.mts												mts
+model/vnd.parasolid.transmit.binary
+model/vnd.parasolid.transmit.text
+model/vnd.vtu												vtu
+model/vrml													vrml wrl
+model/x3d+binary											x3db x3dbz
+model/x3d+vrml												x3dv x3dvz
+model/x3d+xml												x3d x3dz
+multipart/alternative
+multipart/appledouble
+multipart/byteranges
+multipart/digest
+multipart/encrypted
+multipart/example
+multipart/form-data
+multipart/header-set
+multipart/mixed
+multipart/parallel
+multipart/related
+multipart/report
+multipart/signed
+multipart/voice-message
+text/cache-manifest											appcache
+text/calendar												ics icz ifb
+text/comma-separated-values									csv
+text/css													css
+text/csv													csv
+text/directory
+text/dns
+text/ecmascript
+text/english
+text/enriched
+text/example
+text/h323													323
+text/html													htm html shtml
+text/iuls													uls
+text/javascript
+text/mathml													mml
+text/n3														n3
+text/parityfec
+text/plain													asc brf conf def diff in list log pot srt text txt
+text/prs.fallenstein.rst
+text/prs.lines.tag											dsc
+text/red
+text/rfc822-headers
+text/richtext												rtx
+text/rtf													rtf
+text/rtp-enc-aescm128
+text/rtx
+text/scriptlet												sct wsc
+text/sgml													sgm sgml
+text/t140
+text/tab-separated-values									tsv
+text/texmacs												tm ts
+text/troff													man me ms roff t tr
+text/turtle													ttl
+text/ulpfec
+text/uri-list												uri uris urls
+text/vcard													vcard
+text/vnd.DMClientScript
+text/vnd.IPTC.NITF
+text/vnd.IPTC.NewsML
+text/vnd.abc
+text/vnd.curl												curl
+text/vnd.curl.dcurl											dcurl
+text/vnd.curl.mcurl											mcurl
+text/vnd.curl.scurl											scurl
+text/vnd.dmclientscript
+text/vnd.dvb.subtitle										sub
+text/vnd.esmertec.theme-descriptor
+text/vnd.flatland.3dml
+text/vnd.fly												fly
+text/vnd.fmi.flexstor										flx
+text/vnd.graphviz											gv
+text/vnd.in3d.3dml											3dml
+text/vnd.in3d.spot											spot
+text/vnd.iptc.newsml
+text/vnd.iptc.nitf
+text/vnd.latex-z
+text/vnd.motorola.reflex
+text/vnd.ms-mediapackage
+text/vnd.net2phone.commcenter.command
+text/vnd.si.uricatalogue
+text/vnd.sun.j2me.app-descriptor							jad
+text/vnd.trolltech.linguist
+text/vnd.wap.si
+text/vnd.wap.sl
+text/vnd.wap.wml											wml
+text/vnd.wap.wmlscript										wmls
+text/x-asm													asm s
+text/x-bibtex												bib
+text/x-boo													boo
+text/x-c													c cc cpp cxx dic h hh
+text/x-c++hdr												h++ hh hpp hxx
+text/x-c++src												c++ cc cpp cxx
+text/x-chdr													h
+text/x-component											htc
+text/x-crontab
+text/x-csh													csh
+text/x-csrc													c
+text/x-diff													diff patch
+text/x-dsrc													d
+text/x-fortran												f f77 f90 for
+text/x-haskell												hs
+text/x-java													java
+text/x-java-source											java
+text/x-lilypond												ly
+text/x-literate-haskell										lhs
+text/x-makefile
+text/x-moc													moc
+text/x-nfo													nfo
+text/x-opml													opml
+text/x-pascal												p pas
+text/x-pcs-gcd												gcd
+text/x-perl													pl pm
+text/x-psp													psp
+text/x-python												py
+text/x-scala												scala
+text/x-server-parsed-html
+text/x-setext												etx
+text/x-sfv													sfv
+text/x-sh													sh
+text/x-tcl													tcl tk
+text/x-tex													cls ltx sty tex
+text/x-uuencode												uu
+text/x-vcalendar											vcs
+text/x-vcard												vcf
+text/xml
+text/xml-external-parsed-entity
+video/1d-interleaved-parityfec
+video/3gpp													3gp
+video/3gpp-tt
+video/3gpp2													3g2
+video/BMPEG
+video/BT656
+video/CelB
+video/DV
+video/H261
+video/H263
+video/H263-1998
+video/H263-2000
+video/H264
+video/H264-RCDO
+video/H264-SVC
+video/JPEG
+video/MJ2
+video/MP1S
+video/MP2P
+video/MP2T													ts
+video/MP4V-ES
+video/MPV
+video/SMPTE292M
+video/annodex												axv
+video/bmpeg
+video/bt656
+video/celb
+video/dl													dl
+video/dv													dif dv
+video/example
+video/fli													fli
+video/gl													gl
+video/h261													h261
+video/h263													h263
+video/h263-1998
+video/h263-2000
+video/h264													h264
+video/jpeg													jpgv
+video/jpeg2000
+video/jpm													jpgm jpm
+video/mj2													mj2 mjp2
+video/mp1s
+video/mp2p
+video/mp2t
+video/mp4													mp4 mp4v mpg4
+video/mp4v-es
+video/mpeg													m1v m2v mpe mpeg mpg
+video/mpeg4-generic
+video/mpv
+video/nv
+video/ogg													ogv
+video/parityfec
+video/pointer
+video/quicktime												mov qt
+video/raptorfec
+video/raw
+video/rtp-enc-aescm128
+video/rtx
+video/smpte292m
+video/ulpfec
+video/vc1
+video/vnd.CCTV
+video/vnd.cctv
+video/vnd.dece.hd											uvh uvvh
+video/vnd.dece.mobile										uvm uvvm
+video/vnd.dece.mp4
+video/vnd.dece.pd											uvp uvvp
+video/vnd.dece.sd											uvs uvvs
+video/vnd.dece.video										uvv uvvv
+video/vnd.directv.mpeg
+video/vnd.directv.mpeg-tts
+video/vnd.dlna.mpeg-tts
+video/vnd.dvb.file											dvb
+video/vnd.fvt												fvt
+video/vnd.hns.video
+video/vnd.iptvforum.1dparityfec-1010
+video/vnd.iptvforum.1dparityfec-2005
+video/vnd.iptvforum.2dparityfec-1010
+video/vnd.iptvforum.2dparityfec-2005
+video/vnd.iptvforum.ttsavc
+video/vnd.iptvforum.ttsmpeg2
+video/vnd.motorola.video
+video/vnd.motorola.videop
+video/vnd.mpegurl											m4u mxu
+video/vnd.ms-playready.media.pyv							pyv
+video/vnd.mts
+video/vnd.nokia.interleaved-multimedia
+video/vnd.nokia.videovoip
+video/vnd.objectvideo
+video/vnd.sealed.mpeg1
+video/vnd.sealed.mpeg4
+video/vnd.sealed.swf
+video/vnd.sealedmedia.softseal.mov
+video/vnd.uvvu.mp4											uvu uvvu
+video/vnd.vivo												viv
+video/webm													webm
+video/x-f4v													f4v
+video/x-fli													fli
+video/x-flv													flv
+video/x-la-asf												lsf lsx
+video/x-m4v													m4v
+video/x-matroska											mk3d mks mkv mpv
+video/x-mng													mng
+video/x-ms-asf												asf asx
+video/x-ms-vob												vob
+video/x-ms-wm												wm
+video/x-ms-wmv												wmv
+video/x-ms-wmx												wmx
+video/x-ms-wvx												wvx
+video/x-msvideo												avi
+video/x-sgi-movie											movie
+video/x-smv													smv
+x-conference/x-cooltalk										ice
+x-epoc/x-sisx-app											sisx
+x-world/x-vrml												vrm vrml wrl
diff --git a/core-mod/core/baselayout/files/os-release b/core-mod/core/baselayout/files/os-release
new file mode 100644
index 0000000..e834e93
--- /dev/null
+++ b/core-mod/core/baselayout/files/os-release
@@ -0,0 +1,8 @@
+NAME="KISS Linux"
+PRETTY_NAME="KISS Linux"
+ID=kiss
+BUILD_ID=rolling
+HOME_URL="https://k1sslinux.org"
+DOCUMENTATION_URL="https://k1sslinux.org"
+SUPPORT_URL="https://github.com/kiss-community"
+BUG_REPORT_URL="https://github.com/kiss-community"
diff --git a/core-mod/core/baselayout/files/passwd b/core-mod/core/baselayout/files/passwd
new file mode 100644
index 0000000..1edbef6
--- /dev/null
+++ b/core-mod/core/baselayout/files/passwd
@@ -0,0 +1,2 @@
+root:x:0:0:root:/root:/bin/sh
+nobody:x:99:99:Unprivileged User:/dev/null:/bin/false
diff --git a/core-mod/core/baselayout/files/profile b/core-mod/core/baselayout/files/profile
new file mode 100644
index 0000000..8e5fcd7
--- /dev/null
+++ b/core-mod/core/baselayout/files/profile
@@ -0,0 +1,16 @@
+# /etc/profile
+#
+# System wide environment and startup programs.
+
+# Set default path (/usr/sbin:/sbin:/bin included for non-KISS Linux chroots).
+export PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin
+
+# Set default umask.
+umask 022
+
+# Load profiles from /etc/profile.d
+for file in /etc/profile.d/*.sh; do
+    [ -r "$file" ] && . "$file"
+done
+
+unset file
diff --git a/core-mod/core/baselayout/files/securetty b/core-mod/core/baselayout/files/securetty
new file mode 100644
index 0000000..7014604
--- /dev/null
+++ b/core-mod/core/baselayout/files/securetty
@@ -0,0 +1,26 @@
+console
+vc/1
+vc/2
+vc/3
+vc/4
+vc/5
+vc/6
+vc/7
+vc/8
+vc/9
+vc/10
+vc/11
+tty1
+tty2
+tty3
+tty4
+tty5
+tty6
+tty7
+tty8
+tty9
+tty10
+tty11
+ttyS0
+ttyAMA0
+ttyUSB0
diff --git a/core-mod/core/baselayout/files/shadow b/core-mod/core/baselayout/files/shadow
new file mode 100644
index 0000000..9af03d3
--- /dev/null
+++ b/core-mod/core/baselayout/files/shadow
@@ -0,0 +1 @@
+root:!:14871::::::
diff --git a/core-mod/core/baselayout/files/shells b/core-mod/core/baselayout/files/shells
new file mode 100644
index 0000000..15eb394
--- /dev/null
+++ b/core-mod/core/baselayout/files/shells
@@ -0,0 +1,4 @@
+# Pathnames of valid login shells.
+# See shells(5) for details.
+
+/bin/sh
diff --git a/core-mod/core/baselayout/sources b/core-mod/core/baselayout/sources
new file mode 100644
index 0000000..abe0bf0
--- /dev/null
+++ b/core-mod/core/baselayout/sources
@@ -0,0 +1,13 @@
+files/crypttab
+files/fstab
+files/group
+files/host.conf
+files/hosts
+files/issue
+files/mime.types
+files/os-release
+files/passwd
+files/profile
+files/securetty
+files/shadow
+files/shells
diff --git a/core-mod/core/baselayout/version b/core-mod/core/baselayout/version
new file mode 100644
index 0000000..9ebabbc
--- /dev/null
+++ b/core-mod/core/baselayout/version
@@ -0,0 +1 @@
+1 8
diff --git a/core-mod/core/binutils/build b/core-mod/core/binutils/build
new file mode 100755
index 0000000..0117925
--- /dev/null
+++ b/core-mod/core/binutils/build
@@ -0,0 +1,33 @@
+#!/bin/sh -e
+
+cat > makeinfo <<EOF
+#!/bin/sh
+printf 'makeinfo (GNU texinfo) 5.2\n'
+EOF
+
+chmod +x makeinfo
+export PATH=$PATH:$PWD
+
+./configure \
+    --prefix=/usr \
+    --with-lib-path=/usr/lib:/usr/local/lib \
+    --enable-targets=x86_64-pep \
+    --enable-deterministic-archives \
+    --disable-gold \
+    --enable-lto \
+    --enable-ld=default \
+    --enable-plugins \
+    --disable-multilib \
+    --disable-werror \
+    --disable-gdb \
+    --disable-nls \
+    --disable-readline \
+    --disable-gprof \
+    --with-mmap \
+    --with-system-zlib
+
+make configure-host
+make tooldir=/usr
+make DESTDIR="$1" tooldir=/usr install
+
+ln -sf ld.bfd "$1/usr/bin/ld"
diff --git a/core-mod/core/binutils/checksums b/core-mod/core/binutils/checksums
new file mode 100644
index 0000000..9963524
--- /dev/null
+++ b/core-mod/core/binutils/checksums
@@ -0,0 +1 @@
+e81d9edf373f193af428a0f256674aea62a9d74dfe93f65192d4eae030b0f3b0
diff --git a/core-mod/core/binutils/depends b/core-mod/core/binutils/depends
new file mode 100644
index 0000000..84f56ea
--- /dev/null
+++ b/core-mod/core/binutils/depends
@@ -0,0 +1,2 @@
+flex
+zlib
diff --git a/core-mod/core/binutils/sources b/core-mod/core/binutils/sources
new file mode 100644
index 0000000..bba397f
--- /dev/null
+++ b/core-mod/core/binutils/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/binutils/binutils-2.36.1.tar.xz
diff --git a/core-mod/core/binutils/version b/core-mod/core/binutils/version
new file mode 100644
index 0000000..acefb62
--- /dev/null
+++ b/core-mod/core/binutils/version
@@ -0,0 +1 @@
+2.36.1 1
diff --git a/core-mod/core/bison/build b/core-mod/core/bison/build
new file mode 100755
index 0000000..b0d964c
--- /dev/null
+++ b/core-mod/core/bison/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-nls \
+    --without-libtextstyle-prefix
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/core/bison/checksums b/core-mod/core/bison/checksums
new file mode 100644
index 0000000..1268196
--- /dev/null
+++ b/core-mod/core/bison/checksums
@@ -0,0 +1 @@
+67d68ce1e22192050525643fc0a7a22297576682bef6a5c51446903f5aeef3cf
diff --git a/core-mod/core/bison/depends b/core-mod/core/bison/depends
new file mode 100644
index 0000000..995fb87
--- /dev/null
+++ b/core-mod/core/bison/depends
@@ -0,0 +1 @@
+m4
diff --git a/core-mod/core/bison/sources b/core-mod/core/bison/sources
new file mode 100644
index 0000000..a0f39c9
--- /dev/null
+++ b/core-mod/core/bison/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/bison/bison-3.7.6.tar.xz
diff --git a/core-mod/core/bison/version b/core-mod/core/bison/version
new file mode 100644
index 0000000..d883380
--- /dev/null
+++ b/core-mod/core/bison/version
@@ -0,0 +1 @@
+3.7.6 1
diff --git a/core-mod/core/busybox/build b/core-mod/core/busybox/build
new file mode 100755
index 0000000..a0d907e
--- /dev/null
+++ b/core-mod/core/busybox/build
@@ -0,0 +1,64 @@
+#!/bin/sh -e
+
+for patch in *.patch; do
+    patch -p1 < "$patch"
+done
+
+# Remove forced gcc/g++ usage so builds work on gcc-less systems.
+sed -i "s#= g[c+][c+]#= ${CC:=cc}#g" Makefile
+sed -i "s#\(\$(CROSS_COMPILE)\)gcc#\1${CC}#g" Makefile
+
+# Ensure that busybox's build system is aware that 'cc' may point
+# to clang rather than GCC. This is the case in non-GCC systems.
+case $("$CC" --version) in (*clang*)
+    sed -i "s&\(\$(CC),\)clang&\1${CC}&g" Makefile.flags
+esac
+
+# Build and install regular busybox.
+# This excludes utilities which require 'suid' to function.
+make CC="$CC" HOSTCC="$CC"
+make CONFIG_PREFIX="$1/usr" install
+
+# Rename the binary temporarily.
+mv "$1/usr/bin/busybox" "$1/usr/bin/busybox-nosuid"
+
+# Build and install suid busybox.
+# This _only_ includes utlities which require 'suid' to function.
+cp -f .config-suid .config
+make CC="$CC" HOSTCC="$CC"
+make CONFIG_PREFIX="$1/usr" install
+
+# Aptly name the busybox binaries.
+mv -f "$1/usr/bin/busybox"        "$1/usr/bin/busybox-suid"
+mv -f "$1/usr/bin/busybox-nosuid" "$1/usr/bin/busybox"
+
+# Install the non-suid symlinks.
+"$1/usr/bin/busybox" --list | while read -r bin; do
+    ln -s busybox "$1/usr/bin/$bin"
+done
+
+# Install the suid symlinks.
+"$1/usr/bin/busybox-suid" --list | while read -r bin; do
+    ln -s busybox-suid "$1/usr/bin/$bin"
+done
+
+# Set suid on busybox suid.
+chmod u+s "$1/usr/bin/busybox-suid"
+
+# The acpid command requires that this directory exist
+# and does not automatically create it..
+mkdir -p "$1/etc/acpid"
+
+# Install runit services.
+install -Dm755 acpid.run           "$1/etc/sv/acpid/run"
+install -Dm755 crond.run           "$1/etc/sv/crond/run"
+install -Dm755 syslogd.run         "$1/etc/sv/syslogd/run"
+install -Dm755 mdev.run            "$1/etc/sv/mdev/run"
+install -Dm755 ntpd.run            "$1/etc/sv/ntpd/run"
+ln -s /run/runit/supervise.acpid   "$1/etc/sv/acpid/supervise"
+ln -s /run/runit/supervise.crond   "$1/etc/sv/crond/supervise"
+ln -s /run/runit/supervise.syslogd "$1/etc/sv/syslogd/supervise"
+ln -s /run/runit/supervise.mdev    "$1/etc/sv/mdev/supervise"
+ln -s /run/runit/supervise.ntpd    "$1/etc/sv/ntpd/supervise"
+
+install -Dm644 mdev.conf "$1/etc/mdev.conf"
diff --git a/core-mod/core/busybox/checksums b/core-mod/core/busybox/checksums
new file mode 100644
index 0000000..d680c55
--- /dev/null
+++ b/core-mod/core/busybox/checksums
@@ -0,0 +1,18 @@
+b0409da19243f364e401dc91e345e230dbcb83938a1815a788d0a549f43886d1
+6ccf554008940b00f59a90420a77b95f7c68c5200d90884f2913666b1aa1eb75
+9861c566b3bd9964c265bb4dd5fc86b2ea7eaea7b88d42b26641f1ad27d00da5
+ebd61afac770d3d9cae5c411f44002496fb18b28cf7b77520072a3909852246e
+814dea14ac612125e97dcc1d619219b2c9dfc14850bf48d858421fb2c98eca12
+11fe9cdb031d0c387dfb366dc9cdbabadd129f5bbed34659868914058ada11c7
+f857fea99533df7b780c911bae19b0029a70ee1c8d36b49e7782604fb9cf25f8
+e7db036d8e43bb2511df087342708f5fb51d28a7dff9008a1cf440390870a972
+4a5981f4b0d791fe9b84b0b2e01ae905f6565c8245b3cd603e6decf34ddad71a
+09c2f601fec4e5c10664c22f787dafb9424efe219bf826727c356da90dfd60d5
+c8a6fc95a75fa355d570c14e214d68a618e060a486b824b83b5140b9c6a894a7
+8d84b1719dca2a751c09072c20cd782a3c47f119a68d35316f89d851daf67b88
+f0e17fefc0af6b10205d72b242b6ef7481a58ff07726c62890ebc5893b96a396
+ccb21962eed9ab775e90c9209d17e40d3e6c5a1c4009d27f4c2b875efb04da34
+73be7b16dcff44e88eb48696522794f529beddf9d5a139b8a76cc8685a9f6fc8
+0f54301a73af461e8066bc805b48d991cfed513d08a2f036e015b19f97cb424a
+68e0c7d5e96902d3b890e89d9b018ae11d53ed3104bfedd624a1485df58b11cb
+d70c4cd6381baeb3836c0387f53553021b48bdc851de49f1c86d836f7d0355fc
diff --git a/core-mod/core/busybox/depends b/core-mod/core/busybox/depends
new file mode 100644
index 0000000..49b59d3
--- /dev/null
+++ b/core-mod/core/busybox/depends
@@ -0,0 +1,4 @@
+bzip2
+gzip
+libressl make
+linux-headers make
diff --git a/core-mod/core/busybox/files/.config b/core-mod/core/busybox/files/.config
new file mode 100644
index 0000000..ddf41ba
--- /dev/null
+++ b/core-mod/core/busybox/files/.config
@@ -0,0 +1,1200 @@
+#
+# Automatically generated make config: don't edit
+# Busybox version: 1.33.0
+# Thu Mar 11 14:49:52 2021
+#
+CONFIG_HAVE_DOT_CONFIG=y
+
+#
+# Settings
+#
+CONFIG_DESKTOP=y
+# CONFIG_EXTRA_COMPAT is not set
+# CONFIG_FEDORA_COMPAT is not set
+CONFIG_INCLUDE_SUSv2=y
+CONFIG_LONG_OPTS=y
+CONFIG_SHOW_USAGE=y
+CONFIG_FEATURE_VERBOSE_USAGE=y
+CONFIG_FEATURE_COMPRESS_USAGE=y
+CONFIG_LFS=y
+# CONFIG_PAM is not set
+CONFIG_FEATURE_DEVPTS=y
+CONFIG_FEATURE_UTMP=y
+CONFIG_FEATURE_WTMP=y
+CONFIG_FEATURE_PIDFILE=y
+CONFIG_PID_FILE_PATH="/var/run"
+CONFIG_BUSYBOX=y
+CONFIG_FEATURE_SHOW_SCRIPT=y
+CONFIG_FEATURE_INSTALLER=y
+# CONFIG_INSTALL_NO_USR is not set
+# CONFIG_FEATURE_SUID is not set
+# CONFIG_FEATURE_SUID_CONFIG is not set
+# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
+# CONFIG_FEATURE_PREFER_APPLETS is not set
+CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
+# CONFIG_SELINUX is not set
+# CONFIG_FEATURE_CLEAN_UP is not set
+CONFIG_FEATURE_SYSLOG_INFO=y
+CONFIG_FEATURE_SYSLOG=y
+
+#
+# Build Options
+#
+CONFIG_STATIC=y
+# CONFIG_PIE is not set
+# CONFIG_NOMMU is not set
+# CONFIG_BUILD_LIBBUSYBOX is not set
+# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
+# CONFIG_FEATURE_INDIVIDUAL is not set
+# CONFIG_FEATURE_SHARED_BUSYBOX is not set
+CONFIG_CROSS_COMPILER_PREFIX=""
+CONFIG_SYSROOT=""
+CONFIG_EXTRA_CFLAGS=""
+CONFIG_EXTRA_LDFLAGS=""
+CONFIG_EXTRA_LDLIBS=""
+CONFIG_USE_PORTABLE_CODE=y
+CONFIG_STACK_OPTIMIZATION_386=y
+CONFIG_STATIC_LIBGCC=y
+
+#
+# Installation Options ("make install" behavior)
+#
+# CONFIG_INSTALL_APPLET_SYMLINKS is not set
+# CONFIG_INSTALL_APPLET_HARDLINKS is not set
+# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
+CONFIG_INSTALL_APPLET_DONT=y
+# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
+# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
+# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
+CONFIG_PREFIX="./_install"
+
+#
+# Debugging Options
+#
+# CONFIG_DEBUG is not set
+# CONFIG_DEBUG_PESSIMIZE is not set
+# CONFIG_DEBUG_SANITIZE is not set
+# CONFIG_UNIT_TEST is not set
+# CONFIG_WERROR is not set
+# CONFIG_WARN_SIMPLE_MSG is not set
+CONFIG_NO_DEBUG_LIB=y
+# CONFIG_DMALLOC is not set
+# CONFIG_EFENCE is not set
+
+#
+# Library Tuning
+#
+# CONFIG_FEATURE_USE_BSS_TAIL is not set
+CONFIG_FLOAT_DURATION=y
+CONFIG_FEATURE_RTMINMAX=y
+CONFIG_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS=y
+CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
+# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
+# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
+CONFIG_PASSWORD_MINLEN=6
+CONFIG_MD5_SMALL=1
+CONFIG_SHA3_SMALL=1
+CONFIG_FEATURE_FAST_TOP=y
+# CONFIG_FEATURE_ETC_NETWORKS is not set
+# CONFIG_FEATURE_ETC_SERVICES is not set
+CONFIG_FEATURE_EDITING=y
+CONFIG_FEATURE_EDITING_MAX_LEN=1024
+# CONFIG_FEATURE_EDITING_VI is not set
+CONFIG_FEATURE_EDITING_HISTORY=255
+CONFIG_FEATURE_EDITING_SAVEHISTORY=y
+# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
+CONFIG_FEATURE_REVERSE_SEARCH=y
+CONFIG_FEATURE_TAB_COMPLETION=y
+CONFIG_FEATURE_USERNAME_COMPLETION=y
+CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
+CONFIG_FEATURE_EDITING_WINCH=y
+# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
+# CONFIG_LOCALE_SUPPORT is not set
+CONFIG_UNICODE_SUPPORT=y
+# CONFIG_UNICODE_USING_LOCALE is not set
+CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y
+CONFIG_SUBST_WCHAR=63
+CONFIG_LAST_SUPPORTED_WCHAR=767
+CONFIG_UNICODE_COMBINING_WCHARS=y
+CONFIG_UNICODE_WIDE_WCHARS=y
+# CONFIG_UNICODE_BIDI_SUPPORT is not set
+# CONFIG_UNICODE_NEUTRAL_TABLE is not set
+# CONFIG_UNICODE_PRESERVE_BROKEN is not set
+CONFIG_FEATURE_NON_POSIX_CP=y
+CONFIG_FEATURE_VERBOSE_CP_MESSAGE=y
+CONFIG_FEATURE_USE_SENDFILE=y
+CONFIG_FEATURE_COPYBUF_KB=4
+CONFIG_FEATURE_SKIP_ROOTFS=y
+CONFIG_MONOTONIC_SYSCALL=y
+CONFIG_IOCTL_HEX2STR_ERROR=y
+CONFIG_FEATURE_HWIB=y
+
+#
+# Applets
+#
+
+#
+# Archival Utilities
+#
+CONFIG_FEATURE_SEAMLESS_XZ=y
+CONFIG_FEATURE_SEAMLESS_LZMA=y
+CONFIG_FEATURE_SEAMLESS_BZ2=y
+CONFIG_FEATURE_SEAMLESS_GZ=y
+CONFIG_FEATURE_SEAMLESS_Z=y
+# CONFIG_AR is not set
+# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
+# CONFIG_FEATURE_AR_CREATE is not set
+# CONFIG_UNCOMPRESS is not set
+# CONFIG_GUNZIP is not set
+# CONFIG_ZCAT is not set
+# CONFIG_FEATURE_GUNZIP_LONG_OPTIONS is not set
+# CONFIG_BUNZIP2 is not set
+# CONFIG_BZCAT is not set
+# CONFIG_UNLZMA is not set
+# CONFIG_LZCAT is not set
+# CONFIG_LZMA is not set
+# CONFIG_UNXZ is not set
+# CONFIG_XZCAT is not set
+# CONFIG_XZ is not set
+# CONFIG_BZIP2 is not set
+CONFIG_BZIP2_SMALL=0
+# CONFIG_FEATURE_BZIP2_DECOMPRESS is not set
+CONFIG_CPIO=y
+CONFIG_FEATURE_CPIO_O=y
+CONFIG_FEATURE_CPIO_P=y
+# CONFIG_DPKG is not set
+# CONFIG_DPKG_DEB is not set
+# CONFIG_GZIP is not set
+# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
+CONFIG_GZIP_FAST=0
+# CONFIG_FEATURE_GZIP_LEVELS is not set
+# CONFIG_FEATURE_GZIP_DECOMPRESS is not set
+CONFIG_LZOP=y
+CONFIG_UNLZOP=y
+CONFIG_LZOPCAT=y
+# CONFIG_LZOP_COMPR_HIGH is not set
+# CONFIG_RPM is not set
+# CONFIG_RPM2CPIO is not set
+CONFIG_TAR=y
+CONFIG_FEATURE_TAR_LONG_OPTIONS=y
+CONFIG_FEATURE_TAR_CREATE=y
+CONFIG_FEATURE_TAR_AUTODETECT=y
+CONFIG_FEATURE_TAR_FROM=y
+CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
+CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y
+CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
+CONFIG_FEATURE_TAR_TO_COMMAND=y
+CONFIG_FEATURE_TAR_UNAME_GNAME=y
+CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y
+# CONFIG_FEATURE_TAR_SELINUX is not set
+CONFIG_UNZIP=y
+CONFIG_FEATURE_UNZIP_CDF=y
+CONFIG_FEATURE_UNZIP_BZIP2=y
+CONFIG_FEATURE_UNZIP_LZMA=y
+CONFIG_FEATURE_UNZIP_XZ=y
+CONFIG_FEATURE_LZMA_FAST=y
+
+#
+# Coreutils
+#
+CONFIG_BASENAME=y
+CONFIG_CAT=y
+CONFIG_FEATURE_CATN=y
+CONFIG_FEATURE_CATV=y
+CONFIG_CHGRP=y
+CONFIG_CHMOD=y
+CONFIG_CHOWN=y
+CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y
+CONFIG_CHROOT=y
+CONFIG_CKSUM=y
+CONFIG_COMM=y
+CONFIG_CP=y
+CONFIG_FEATURE_CP_LONG_OPTIONS=y
+CONFIG_FEATURE_CP_REFLINK=y
+CONFIG_CUT=y
+CONFIG_DATE=y
+CONFIG_FEATURE_DATE_ISOFMT=y
+CONFIG_FEATURE_DATE_NANO=y
+CONFIG_FEATURE_DATE_COMPAT=y
+CONFIG_DD=y
+CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
+CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
+CONFIG_FEATURE_DD_IBS_OBS=y
+CONFIG_FEATURE_DD_STATUS=y
+CONFIG_DF=y
+CONFIG_FEATURE_DF_FANCY=y
+CONFIG_DIRNAME=y
+CONFIG_DOS2UNIX=y
+CONFIG_UNIX2DOS=y
+CONFIG_DU=y
+CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
+CONFIG_ECHO=y
+CONFIG_FEATURE_FANCY_ECHO=y
+CONFIG_ENV=y
+CONFIG_EXPAND=y
+CONFIG_UNEXPAND=y
+CONFIG_EXPR=y
+CONFIG_EXPR_MATH_SUPPORT_64=y
+CONFIG_FACTOR=y
+CONFIG_FALSE=y
+CONFIG_FOLD=y
+CONFIG_HEAD=y
+CONFIG_FEATURE_FANCY_HEAD=y
+CONFIG_HOSTID=y
+CONFIG_ID=y
+CONFIG_GROUPS=y
+CONFIG_INSTALL=y
+CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
+CONFIG_LINK=y
+CONFIG_LN=y
+CONFIG_LOGNAME=y
+CONFIG_LS=y
+CONFIG_FEATURE_LS_FILETYPES=y
+CONFIG_FEATURE_LS_FOLLOWLINKS=y
+CONFIG_FEATURE_LS_RECURSIVE=y
+CONFIG_FEATURE_LS_WIDTH=y
+CONFIG_FEATURE_LS_SORTFILES=y
+CONFIG_FEATURE_LS_TIMESTAMPS=y
+CONFIG_FEATURE_LS_USERNAME=y
+CONFIG_FEATURE_LS_COLOR=y
+CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
+CONFIG_MD5SUM=y
+CONFIG_SHA1SUM=y
+CONFIG_SHA256SUM=y
+CONFIG_SHA512SUM=y
+CONFIG_SHA3SUM=y
+
+#
+# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum
+#
+CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
+CONFIG_MKDIR=y
+CONFIG_MKFIFO=y
+CONFIG_MKNOD=y
+CONFIG_MKTEMP=y
+CONFIG_MV=y
+CONFIG_NICE=y
+CONFIG_NL=y
+CONFIG_NOHUP=y
+CONFIG_NPROC=y
+CONFIG_OD=y
+CONFIG_PASTE=y
+CONFIG_PRINTENV=y
+CONFIG_PRINTF=y
+CONFIG_PWD=y
+CONFIG_READLINK=y
+CONFIG_FEATURE_READLINK_FOLLOW=y
+CONFIG_REALPATH=y
+CONFIG_RM=y
+CONFIG_RMDIR=y
+CONFIG_SEQ=y
+CONFIG_SHRED=y
+CONFIG_SHUF=y
+CONFIG_SLEEP=y
+CONFIG_FEATURE_FANCY_SLEEP=y
+CONFIG_SORT=y
+CONFIG_FEATURE_SORT_BIG=y
+# CONFIG_FEATURE_SORT_OPTIMIZE_MEMORY is not set
+CONFIG_SPLIT=y
+CONFIG_FEATURE_SPLIT_FANCY=y
+CONFIG_STAT=y
+CONFIG_FEATURE_STAT_FORMAT=y
+CONFIG_FEATURE_STAT_FILESYSTEM=y
+CONFIG_STTY=y
+CONFIG_SUM=y
+CONFIG_SYNC=y
+CONFIG_FEATURE_SYNC_FANCY=y
+CONFIG_FSYNC=y
+CONFIG_TAC=y
+CONFIG_TAIL=y
+CONFIG_FEATURE_FANCY_TAIL=y
+CONFIG_TEE=y
+CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
+CONFIG_TEST=y
+CONFIG_TEST1=y
+CONFIG_TEST2=y
+CONFIG_FEATURE_TEST_64=y
+CONFIG_TIMEOUT=y
+CONFIG_TOUCH=y
+CONFIG_FEATURE_TOUCH_NODEREF=y
+CONFIG_FEATURE_TOUCH_SUSV3=y
+CONFIG_TR=y
+CONFIG_FEATURE_TR_CLASSES=y
+CONFIG_FEATURE_TR_EQUIV=y
+CONFIG_TRUE=y
+CONFIG_TRUNCATE=y
+CONFIG_TTY=y
+CONFIG_UNAME=y
+CONFIG_UNAME_OSNAME="GNU/Linux"
+CONFIG_BB_ARCH=y
+CONFIG_UNIQ=y
+CONFIG_UNLINK=y
+CONFIG_USLEEP=y
+CONFIG_UUDECODE=y
+# CONFIG_BASE32 is not set
+CONFIG_BASE64=y
+CONFIG_UUENCODE=y
+CONFIG_WC=y
+CONFIG_FEATURE_WC_LARGE=y
+CONFIG_WHO=y
+CONFIG_W=y
+CONFIG_USERS=y
+CONFIG_WHOAMI=y
+CONFIG_YES=y
+
+#
+# Common options
+#
+CONFIG_FEATURE_VERBOSE=y
+
+#
+# Common options for cp and mv
+#
+CONFIG_FEATURE_PRESERVE_HARDLINKS=y
+
+#
+# Common options for df, du, ls
+#
+CONFIG_FEATURE_HUMAN_READABLE=y
+
+#
+# Console Utilities
+#
+# CONFIG_CHVT is not set
+CONFIG_CLEAR=y
+# CONFIG_DEALLOCVT is not set
+CONFIG_DUMPKMAP=y
+# CONFIG_FGCONSOLE is not set
+CONFIG_KBD_MODE=y
+CONFIG_LOADFONT=y
+CONFIG_SETFONT=y
+CONFIG_FEATURE_SETFONT_TEXTUAL_MAP=y
+CONFIG_DEFAULT_SETFONT_DIR=""
+
+#
+# Common options for loadfont and setfont
+#
+CONFIG_FEATURE_LOADFONT_PSF2=y
+CONFIG_FEATURE_LOADFONT_RAW=y
+CONFIG_LOADKMAP=y
+# CONFIG_OPENVT is not set
+CONFIG_RESET=y
+CONFIG_RESIZE=y
+CONFIG_FEATURE_RESIZE_PRINT=y
+CONFIG_SETCONSOLE=y
+CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS=y
+# CONFIG_SETKEYCODES is not set
+CONFIG_SETLOGCONS=y
+# CONFIG_SHOWKEY is not set
+
+#
+# Debian Utilities
+#
+# CONFIG_PIPE_PROGRESS is not set
+# CONFIG_RUN_PARTS is not set
+# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
+# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
+# CONFIG_START_STOP_DAEMON is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set
+CONFIG_WHICH=y
+
+#
+# klibc-utils
+#
+# CONFIG_MINIPS is not set
+# CONFIG_NUKE is not set
+# CONFIG_RESUME is not set
+# CONFIG_RUN_INIT is not set
+
+#
+# Editors
+#
+CONFIG_AWK=y
+CONFIG_FEATURE_AWK_LIBM=y
+CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y
+CONFIG_CMP=y
+CONFIG_DIFF=y
+CONFIG_FEATURE_DIFF_LONG_OPTIONS=y
+CONFIG_FEATURE_DIFF_DIR=y
+CONFIG_ED=y
+CONFIG_PATCH=y
+CONFIG_SED=y
+CONFIG_VI=y
+CONFIG_FEATURE_VI_MAX_LEN=4096
+CONFIG_FEATURE_VI_8BIT=y
+CONFIG_FEATURE_VI_COLON=y
+CONFIG_FEATURE_VI_YANKMARK=y
+CONFIG_FEATURE_VI_SEARCH=y
+# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
+CONFIG_FEATURE_VI_USE_SIGNALS=y
+CONFIG_FEATURE_VI_DOT_CMD=y
+CONFIG_FEATURE_VI_READONLY=y
+CONFIG_FEATURE_VI_SETOPTS=y
+CONFIG_FEATURE_VI_SET=y
+CONFIG_FEATURE_VI_WIN_RESIZE=y
+CONFIG_FEATURE_VI_ASK_TERMINAL=y
+CONFIG_FEATURE_VI_UNDO=y
+CONFIG_FEATURE_VI_UNDO_QUEUE=y
+CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256
+CONFIG_FEATURE_ALLOW_EXEC=y
+
+#
+# Finding Utilities
+#
+CONFIG_FIND=y
+CONFIG_FEATURE_FIND_PRINT0=y
+CONFIG_FEATURE_FIND_MTIME=y
+CONFIG_FEATURE_FIND_MMIN=y
+CONFIG_FEATURE_FIND_PERM=y
+CONFIG_FEATURE_FIND_TYPE=y
+CONFIG_FEATURE_FIND_EXECUTABLE=y
+CONFIG_FEATURE_FIND_XDEV=y
+CONFIG_FEATURE_FIND_MAXDEPTH=y
+CONFIG_FEATURE_FIND_NEWER=y
+CONFIG_FEATURE_FIND_INUM=y
+CONFIG_FEATURE_FIND_EXEC=y
+CONFIG_FEATURE_FIND_EXEC_PLUS=y
+CONFIG_FEATURE_FIND_USER=y
+CONFIG_FEATURE_FIND_GROUP=y
+CONFIG_FEATURE_FIND_NOT=y
+CONFIG_FEATURE_FIND_DEPTH=y
+CONFIG_FEATURE_FIND_PAREN=y
+CONFIG_FEATURE_FIND_SIZE=y
+CONFIG_FEATURE_FIND_PRUNE=y
+CONFIG_FEATURE_FIND_QUIT=y
+CONFIG_FEATURE_FIND_DELETE=y
+CONFIG_FEATURE_FIND_EMPTY=y
+CONFIG_FEATURE_FIND_PATH=y
+CONFIG_FEATURE_FIND_REGEX=y
+# CONFIG_FEATURE_FIND_CONTEXT is not set
+CONFIG_FEATURE_FIND_LINKS=y
+CONFIG_GREP=y
+CONFIG_EGREP=y
+CONFIG_FGREP=y
+CONFIG_FEATURE_GREP_CONTEXT=y
+CONFIG_XARGS=y
+CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
+CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
+CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
+CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
+CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
+CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL=y
+CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y
+
+#
+# Init Utilities
+#
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
+# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
+# CONFIG_HALT is not set
+CONFIG_POWEROFF=y
+CONFIG_REBOOT=y
+CONFIG_FEATURE_WAIT_FOR_INIT=y
+# CONFIG_FEATURE_CALL_TELINIT is not set
+CONFIG_TELINIT_PATH=""
+CONFIG_INIT=y
+# CONFIG_LINUXRC is not set
+CONFIG_FEATURE_USE_INITTAB=y
+# CONFIG_FEATURE_KILL_REMOVED is not set
+CONFIG_FEATURE_KILL_DELAY=0
+CONFIG_FEATURE_INIT_SCTTY=y
+CONFIG_FEATURE_INIT_SYSLOG=y
+CONFIG_FEATURE_INIT_QUIET=y
+# CONFIG_FEATURE_INIT_COREDUMPS is not set
+CONFIG_INIT_TERMINAL_TYPE="linux"
+CONFIG_FEATURE_INIT_MODIFY_CMDLINE=y
+
+#
+# Login/Password Management Utilities
+#
+CONFIG_FEATURE_SHADOWPASSWDS=y
+CONFIG_USE_BB_PWD_GRP=y
+CONFIG_USE_BB_SHADOW=y
+CONFIG_USE_BB_CRYPT=y
+CONFIG_USE_BB_CRYPT_SHA=y
+CONFIG_ADD_SHELL=y
+CONFIG_REMOVE_SHELL=y
+CONFIG_ADDGROUP=y
+CONFIG_FEATURE_ADDUSER_TO_GROUP=y
+CONFIG_ADDUSER=y
+# CONFIG_FEATURE_CHECK_NAMES is not set
+CONFIG_LAST_ID=60000
+CONFIG_FIRST_SYSTEM_ID=100
+CONFIG_LAST_SYSTEM_ID=999
+CONFIG_CHPASSWD=y
+CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des"
+CONFIG_CRYPTPW=y
+CONFIG_MKPASSWD=y
+CONFIG_DELUSER=y
+CONFIG_DELGROUP=y
+CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
+CONFIG_GETTY=y
+# CONFIG_LOGIN is not set
+# CONFIG_LOGIN_SESSION_AS_CHILD is not set
+# CONFIG_LOGIN_SCRIPTS is not set
+# CONFIG_FEATURE_NOLOGIN is not set
+# CONFIG_FEATURE_SECURETTY is not set
+# CONFIG_PASSWD is not set
+# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
+# CONFIG_SU is not set
+# CONFIG_FEATURE_SU_SYSLOG is not set
+# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
+# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set
+CONFIG_SULOGIN=y
+# CONFIG_VLOCK is not set
+
+#
+# Linux Ext2 FS Progs
+#
+# CONFIG_CHATTR is not set
+CONFIG_FSCK=y
+# CONFIG_LSATTR is not set
+# CONFIG_TUNE2FS is not set
+
+#
+# Linux Module Utilities
+#
+# CONFIG_MODPROBE_SMALL is not set
+CONFIG_DEPMOD=y
+CONFIG_INSMOD=y
+CONFIG_LSMOD=y
+# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set
+CONFIG_MODINFO=y
+CONFIG_MODPROBE=y
+# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
+CONFIG_RMMOD=y
+
+#
+# Options common to multiple modutils
+#
+CONFIG_FEATURE_CMDLINE_MODULE_OPTIONS=y
+# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
+# CONFIG_FEATURE_2_4_MODULES is not set
+# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
+# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
+# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
+# CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set
+# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
+CONFIG_FEATURE_MODUTILS_ALIAS=y
+CONFIG_FEATURE_MODUTILS_SYMBOLS=y
+CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
+CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
+
+#
+# Linux System Utilities
+#
+CONFIG_ACPID=y
+CONFIG_FEATURE_ACPID_COMPAT=y
+CONFIG_BLKDISCARD=y
+CONFIG_BLKID=y
+CONFIG_FEATURE_BLKID_TYPE=y
+# CONFIG_BLOCKDEV is not set
+CONFIG_CAL=y
+CONFIG_CHRT=y
+CONFIG_DMESG=y
+CONFIG_FEATURE_DMESG_PRETTY=y
+CONFIG_EJECT=y
+CONFIG_FEATURE_EJECT_SCSI=y
+CONFIG_FALLOCATE=y
+# CONFIG_FATATTR is not set
+# CONFIG_FBSET is not set
+# CONFIG_FEATURE_FBSET_FANCY is not set
+# CONFIG_FEATURE_FBSET_READMODE is not set
+CONFIG_FDFORMAT=y
+CONFIG_FDISK=y
+# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
+CONFIG_FEATURE_FDISK_WRITABLE=y
+# CONFIG_FEATURE_AIX_LABEL is not set
+# CONFIG_FEATURE_SGI_LABEL is not set
+# CONFIG_FEATURE_SUN_LABEL is not set
+# CONFIG_FEATURE_OSF_LABEL is not set
+CONFIG_FEATURE_GPT_LABEL=y
+CONFIG_FEATURE_FDISK_ADVANCED=y
+# CONFIG_FINDFS is not set
+CONFIG_FLOCK=y
+# CONFIG_FDFLUSH is not set
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK_MINIX is not set
+CONFIG_FSFREEZE=y
+CONFIG_FSTRIM=y
+CONFIG_GETOPT=y
+CONFIG_FEATURE_GETOPT_LONG=y
+CONFIG_HEXDUMP=y
+CONFIG_HD=y
+# CONFIG_XXD is not set
+CONFIG_HWCLOCK=y
+# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
+CONFIG_IONICE=y
+CONFIG_IPCRM=y
+CONFIG_IPCS=y
+CONFIG_LAST=y
+CONFIG_FEATURE_LAST_FANCY=y
+CONFIG_LOSETUP=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
+CONFIG_FEATURE_LSUSB_STRINGS=y
+CONFIG_MDEV=y
+CONFIG_FEATURE_MDEV_CONF=y
+CONFIG_FEATURE_MDEV_RENAME=y
+CONFIG_FEATURE_MDEV_RENAME_REGEXP=y
+CONFIG_FEATURE_MDEV_EXEC=y
+CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
+CONFIG_FEATURE_MDEV_DAEMON=y
+CONFIG_MESG=y
+CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y
+# CONFIG_MKE2FS is not set
+# CONFIG_MKFS_EXT2 is not set
+# CONFIG_MKFS_MINIX is not set
+# CONFIG_FEATURE_MINIX2 is not set
+# CONFIG_MKFS_REISER is not set
+# CONFIG_MKDOSFS is not set
+# CONFIG_MKFS_VFAT is not set
+CONFIG_MKSWAP=y
+CONFIG_FEATURE_MKSWAP_UUID=y
+CONFIG_MORE=y
+CONFIG_MOUNT=y
+CONFIG_FEATURE_MOUNT_FAKE=y
+CONFIG_FEATURE_MOUNT_VERBOSE=y
+CONFIG_FEATURE_MOUNT_HELPERS=y
+CONFIG_FEATURE_MOUNT_LABEL=y
+# CONFIG_FEATURE_MOUNT_NFS is not set
+CONFIG_FEATURE_MOUNT_CIFS=y
+CONFIG_FEATURE_MOUNT_FLAGS=y
+CONFIG_FEATURE_MOUNT_FSTAB=y
+CONFIG_FEATURE_MOUNT_OTHERTAB=y
+CONFIG_MOUNTPOINT=y
+CONFIG_NOLOGIN=y
+CONFIG_NOLOGIN_DEPENDENCIES=y
+CONFIG_NSENTER=y
+CONFIG_PIVOT_ROOT=y
+# CONFIG_RDATE is not set
+# CONFIG_RDEV is not set
+CONFIG_READPROFILE=y
+CONFIG_RENICE=y
+CONFIG_REV=y
+CONFIG_RTCWAKE=y
+CONFIG_SCRIPT=y
+CONFIG_SCRIPTREPLAY=y
+CONFIG_SETARCH=y
+CONFIG_LINUX32=y
+CONFIG_LINUX64=y
+# CONFIG_SETPRIV is not set
+# CONFIG_FEATURE_SETPRIV_DUMP is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITIES is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES is not set
+CONFIG_SETSID=y
+CONFIG_SWAPON=y
+CONFIG_FEATURE_SWAPON_DISCARD=y
+CONFIG_FEATURE_SWAPON_PRI=y
+CONFIG_SWAPOFF=y
+CONFIG_FEATURE_SWAPONOFF_LABEL=y
+CONFIG_SWITCH_ROOT=y
+CONFIG_TASKSET=y
+CONFIG_FEATURE_TASKSET_FANCY=y
+CONFIG_FEATURE_TASKSET_CPULIST=y
+CONFIG_UEVENT=y
+CONFIG_UMOUNT=y
+CONFIG_FEATURE_UMOUNT_ALL=y
+CONFIG_UNSHARE=y
+CONFIG_WALL=y
+
+#
+# Common options for mount/umount
+#
+CONFIG_FEATURE_MOUNT_LOOP=y
+CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
+# CONFIG_FEATURE_MTAB_SUPPORT is not set
+CONFIG_VOLUMEID=y
+
+#
+# Filesystem/Volume identification
+#
+CONFIG_FEATURE_VOLUMEID_BCACHE=y
+CONFIG_FEATURE_VOLUMEID_BTRFS=y
+CONFIG_FEATURE_VOLUMEID_CRAMFS=y
+# CONFIG_FEATURE_VOLUMEID_EROFS is not set
+CONFIG_FEATURE_VOLUMEID_EXFAT=y
+CONFIG_FEATURE_VOLUMEID_EXT=y
+CONFIG_FEATURE_VOLUMEID_F2FS=y
+CONFIG_FEATURE_VOLUMEID_FAT=y
+CONFIG_FEATURE_VOLUMEID_HFS=y
+CONFIG_FEATURE_VOLUMEID_ISO9660=y
+CONFIG_FEATURE_VOLUMEID_JFS=y
+CONFIG_FEATURE_VOLUMEID_LFS=y
+CONFIG_FEATURE_VOLUMEID_LINUXRAID=y
+CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
+CONFIG_FEATURE_VOLUMEID_LUKS=y
+CONFIG_FEATURE_VOLUMEID_MINIX=y
+CONFIG_FEATURE_VOLUMEID_NILFS=y
+CONFIG_FEATURE_VOLUMEID_NTFS=y
+CONFIG_FEATURE_VOLUMEID_OCFS2=y
+CONFIG_FEATURE_VOLUMEID_REISERFS=y
+CONFIG_FEATURE_VOLUMEID_ROMFS=y
+CONFIG_FEATURE_VOLUMEID_SQUASHFS=y
+CONFIG_FEATURE_VOLUMEID_SYSV=y
+CONFIG_FEATURE_VOLUMEID_UBIFS=y
+CONFIG_FEATURE_VOLUMEID_UDF=y
+CONFIG_FEATURE_VOLUMEID_XFS=y
+
+#
+# Miscellaneous Utilities
+#
+# CONFIG_ADJTIMEX is not set
+# CONFIG_BBCONFIG is not set
+# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set
+CONFIG_BC=y
+CONFIG_DC=y
+CONFIG_FEATURE_DC_BIG=y
+# CONFIG_FEATURE_DC_LIBM is not set
+CONFIG_FEATURE_BC_INTERACTIVE=y
+CONFIG_FEATURE_BC_LONG_OPTIONS=y
+# CONFIG_BEEP is not set
+CONFIG_FEATURE_BEEP_FREQ=0
+CONFIG_FEATURE_BEEP_LENGTH_MS=0
+# CONFIG_CHAT is not set
+# CONFIG_FEATURE_CHAT_NOFAIL is not set
+# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
+# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
+# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
+# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
+# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
+# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
+# CONFIG_CONSPY is not set
+CONFIG_CROND=y
+CONFIG_FEATURE_CROND_D=y
+CONFIG_FEATURE_CROND_CALL_SENDMAIL=y
+CONFIG_FEATURE_CROND_SPECIAL_TIMES=y
+CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
+# CONFIG_CRONTAB is not set
+# CONFIG_DEVFSD is not set
+# CONFIG_DEVFSD_MODLOAD is not set
+# CONFIG_DEVFSD_FG_NP is not set
+# CONFIG_DEVFSD_VERBOSE is not set
+# CONFIG_FEATURE_DEVFS is not set
+# CONFIG_DEVMEM is not set
+# CONFIG_FBSPLASH is not set
+# CONFIG_FLASH_ERASEALL is not set
+# CONFIG_FLASH_LOCK is not set
+# CONFIG_FLASH_UNLOCK is not set
+# CONFIG_FLASHCP is not set
+# CONFIG_HDPARM is not set
+# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
+# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
+# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
+CONFIG_HEXEDIT=y
+# CONFIG_I2CGET is not set
+# CONFIG_I2CSET is not set
+# CONFIG_I2CDUMP is not set
+# CONFIG_I2CDETECT is not set
+# CONFIG_I2CTRANSFER is not set
+# CONFIG_INOTIFYD is not set
+CONFIG_LESS=y
+CONFIG_FEATURE_LESS_MAXLINES=9999999
+CONFIG_FEATURE_LESS_BRACKETS=y
+CONFIG_FEATURE_LESS_FLAGS=y
+CONFIG_FEATURE_LESS_TRUNCATE=y
+CONFIG_FEATURE_LESS_MARKS=y
+CONFIG_FEATURE_LESS_REGEXP=y
+CONFIG_FEATURE_LESS_WINCH=y
+CONFIG_FEATURE_LESS_ASK_TERMINAL=y
+CONFIG_FEATURE_LESS_DASHCMD=y
+CONFIG_FEATURE_LESS_LINENUMS=y
+CONFIG_FEATURE_LESS_RAW=y
+CONFIG_FEATURE_LESS_ENV=y
+# CONFIG_LSSCSI is not set
+CONFIG_MAKEDEVS=y
+# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
+CONFIG_FEATURE_MAKEDEVS_TABLE=y
+# CONFIG_MAN is not set
+# CONFIG_MICROCOM is not set
+# CONFIG_MIM is not set
+# CONFIG_MT is not set
+# CONFIG_NANDWRITE is not set
+# CONFIG_NANDDUMP is not set
+CONFIG_PARTPROBE=y
+# CONFIG_RAIDAUTORUN is not set
+CONFIG_READAHEAD=y
+CONFIG_RFKILL=y
+CONFIG_RUNLEVEL=y
+# CONFIG_RX is not set
+CONFIG_SETFATTR=y
+# CONFIG_SETSERIAL is not set
+# CONFIG_STRINGS is not set
+CONFIG_TIME=y
+# CONFIG_TS is not set
+# CONFIG_TTYSIZE is not set
+# CONFIG_UBIATTACH is not set
+# CONFIG_UBIDETACH is not set
+# CONFIG_UBIMKVOL is not set
+# CONFIG_UBIRMVOL is not set
+# CONFIG_UBIRSVOL is not set
+# CONFIG_UBIUPDATEVOL is not set
+# CONFIG_UBIRENAME is not set
+# CONFIG_VOLNAME is not set
+# CONFIG_WATCHDOG is not set
+
+#
+# Networking Utilities
+#
+CONFIG_FEATURE_IPV6=y
+# CONFIG_FEATURE_UNIX_LOCAL is not set
+CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
+# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
+# CONFIG_FEATURE_TLS_SHA1 is not set
+CONFIG_ARP=y
+CONFIG_ARPING=y
+CONFIG_BRCTL=y
+CONFIG_FEATURE_BRCTL_FANCY=y
+CONFIG_FEATURE_BRCTL_SHOW=y
+CONFIG_DNSD=y
+CONFIG_ETHER_WAKE=y
+CONFIG_FTPD=y
+CONFIG_FEATURE_FTPD_WRITE=y
+CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y
+CONFIG_FEATURE_FTPD_AUTHENTICATION=y
+CONFIG_FTPGET=y
+CONFIG_FTPPUT=y
+CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
+CONFIG_HOSTNAME=y
+# CONFIG_DNSDOMAINNAME is not set
+CONFIG_HTTPD=y
+CONFIG_FEATURE_HTTPD_RANGES=y
+CONFIG_FEATURE_HTTPD_SETUID=y
+CONFIG_FEATURE_HTTPD_BASIC_AUTH=y
+CONFIG_FEATURE_HTTPD_AUTH_MD5=y
+CONFIG_FEATURE_HTTPD_CGI=y
+CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y
+CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y
+CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
+CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
+CONFIG_FEATURE_HTTPD_PROXY=y
+CONFIG_FEATURE_HTTPD_GZIP=y
+# CONFIG_FEATURE_HTTPD_ETAG is not set
+# CONFIG_FEATURE_HTTPD_LAST_MODIFIED is not set
+# CONFIG_FEATURE_HTTPD_DATE is not set
+# CONFIG_FEATURE_HTTPD_ACL_IP is not set
+CONFIG_IFCONFIG=y
+CONFIG_FEATURE_IFCONFIG_STATUS=y
+CONFIG_FEATURE_IFCONFIG_SLIP=y
+CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y
+CONFIG_FEATURE_IFCONFIG_HW=y
+CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
+CONFIG_IFENSLAVE=y
+CONFIG_IFPLUGD=y
+CONFIG_IFUP=y
+CONFIG_IFDOWN=y
+CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
+CONFIG_FEATURE_IFUPDOWN_IP=y
+CONFIG_FEATURE_IFUPDOWN_IPV4=y
+CONFIG_FEATURE_IFUPDOWN_IPV6=y
+CONFIG_FEATURE_IFUPDOWN_MAPPING=y
+# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
+CONFIG_INETD=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y
+CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y
+# CONFIG_FEATURE_INETD_RPC is not set
+CONFIG_IP=y
+# CONFIG_IPADDR is not set
+# CONFIG_IPLINK is not set
+# CONFIG_IPROUTE is not set
+# CONFIG_IPTUNNEL is not set
+# CONFIG_IPRULE is not set
+# CONFIG_IPNEIGH is not set
+CONFIG_FEATURE_IP_ADDRESS=y
+CONFIG_FEATURE_IP_LINK=y
+CONFIG_FEATURE_IP_ROUTE=y
+CONFIG_FEATURE_IP_ROUTE_DIR="/etc/iproute2"
+CONFIG_FEATURE_IP_TUNNEL=y
+CONFIG_FEATURE_IP_RULE=y
+CONFIG_FEATURE_IP_NEIGH=y
+# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
+CONFIG_IPCALC=y
+CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y
+CONFIG_FEATURE_IPCALC_FANCY=y
+CONFIG_FAKEIDENTD=y
+CONFIG_NAMEIF=y
+CONFIG_FEATURE_NAMEIF_EXTENDED=y
+CONFIG_NBDCLIENT=y
+CONFIG_NC=y
+CONFIG_NETCAT=y
+CONFIG_NC_SERVER=y
+CONFIG_NC_EXTRA=y
+CONFIG_NC_110_COMPAT=y
+CONFIG_NETSTAT=y
+CONFIG_FEATURE_NETSTAT_WIDE=y
+CONFIG_FEATURE_NETSTAT_PRG=y
+CONFIG_NSLOOKUP=y
+CONFIG_FEATURE_NSLOOKUP_BIG=y
+CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS=y
+CONFIG_NTPD=y
+CONFIG_FEATURE_NTPD_SERVER=y
+CONFIG_FEATURE_NTPD_CONF=y
+CONFIG_FEATURE_NTP_AUTH=y
+# CONFIG_PING is not set
+# CONFIG_PING6 is not set
+# CONFIG_FEATURE_FANCY_PING is not set
+CONFIG_PSCAN=y
+CONFIG_ROUTE=y
+# CONFIG_SLATTACH is not set
+CONFIG_SSL_CLIENT=y
+CONFIG_TC=y
+CONFIG_FEATURE_TC_INGRESS=y
+CONFIG_TCPSVD=y
+CONFIG_UDPSVD=y
+CONFIG_TELNET=y
+CONFIG_FEATURE_TELNET_TTYPE=y
+CONFIG_FEATURE_TELNET_AUTOLOGIN=y
+CONFIG_FEATURE_TELNET_WIDTH=y
+CONFIG_TELNETD=y
+CONFIG_FEATURE_TELNETD_STANDALONE=y
+CONFIG_FEATURE_TELNETD_INETD_WAIT=y
+CONFIG_TFTP=y
+CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
+CONFIG_FEATURE_TFTP_HPA_COMPAT=y
+CONFIG_TFTPD=y
+CONFIG_FEATURE_TFTP_GET=y
+CONFIG_FEATURE_TFTP_PUT=y
+CONFIG_FEATURE_TFTP_BLOCKSIZE=y
+# CONFIG_TFTP_DEBUG is not set
+CONFIG_TLS=y
+# CONFIG_TRACEROUTE is not set
+# CONFIG_TRACEROUTE6 is not set
+# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
+# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
+CONFIG_TUNCTL=y
+CONFIG_FEATURE_TUNCTL_UG=y
+CONFIG_VCONFIG=y
+CONFIG_WGET=y
+CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+CONFIG_FEATURE_WGET_STATUSBAR=y
+CONFIG_FEATURE_WGET_AUTHENTICATION=y
+CONFIG_FEATURE_WGET_TIMEOUT=y
+CONFIG_FEATURE_WGET_HTTPS=y
+CONFIG_FEATURE_WGET_OPENSSL=y
+CONFIG_WHOIS=y
+# CONFIG_ZCIP is not set
+# CONFIG_UDHCPD is not set
+# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
+# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
+CONFIG_DHCPD_LEASES_FILE=""
+# CONFIG_DUMPLEASES is not set
+# CONFIG_DHCPRELAY is not set
+# CONFIG_UDHCPC is not set
+# CONFIG_FEATURE_UDHCPC_ARPING is not set
+# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set
+CONFIG_UDHCPC_DEFAULT_SCRIPT=""
+# CONFIG_UDHCPC6 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC5970 is not set
+# CONFIG_FEATURE_UDHCP_PORT is not set
+CONFIG_UDHCP_DEBUG=0
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0
+# CONFIG_FEATURE_UDHCP_RFC3397 is not set
+# CONFIG_FEATURE_UDHCP_8021Q is not set
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"
+
+#
+# Print Utilities
+#
+# CONFIG_LPD is not set
+# CONFIG_LPR is not set
+# CONFIG_LPQ is not set
+
+#
+# Mail Utilities
+#
+CONFIG_MAKEMIME=y
+CONFIG_POPMAILDIR=y
+CONFIG_FEATURE_POPMAILDIR_DELIVERY=y
+CONFIG_REFORMIME=y
+CONFIG_FEATURE_REFORMIME_COMPAT=y
+CONFIG_SENDMAIL=y
+CONFIG_FEATURE_MIME_CHARSET="us-ascii"
+
+#
+# Process Utilities
+#
+CONFIG_FREE=y
+CONFIG_FUSER=y
+CONFIG_IOSTAT=y
+CONFIG_KILL=y
+CONFIG_KILLALL=y
+CONFIG_KILLALL5=y
+CONFIG_LSOF=y
+CONFIG_MPSTAT=y
+CONFIG_NMETER=y
+CONFIG_PGREP=y
+CONFIG_PKILL=y
+CONFIG_PIDOF=y
+CONFIG_FEATURE_PIDOF_SINGLE=y
+CONFIG_FEATURE_PIDOF_OMIT=y
+CONFIG_PMAP=y
+# CONFIG_POWERTOP is not set
+# CONFIG_FEATURE_POWERTOP_INTERACTIVE is not set
+CONFIG_PS=y
+# CONFIG_FEATURE_PS_WIDE is not set
+# CONFIG_FEATURE_PS_LONG is not set
+CONFIG_FEATURE_PS_TIME=y
+# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
+CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y
+CONFIG_PSTREE=y
+CONFIG_PWDX=y
+CONFIG_SMEMCAP=y
+CONFIG_BB_SYSCTL=y
+CONFIG_TOP=y
+CONFIG_FEATURE_TOP_INTERACTIVE=y
+CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
+CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
+CONFIG_FEATURE_TOP_SMP_CPU=y
+CONFIG_FEATURE_TOP_DECIMALS=y
+CONFIG_FEATURE_TOP_SMP_PROCESS=y
+CONFIG_FEATURE_TOPMEM=y
+CONFIG_UPTIME=y
+CONFIG_FEATURE_UPTIME_UTMP_SUPPORT=y
+CONFIG_WATCH=y
+CONFIG_FEATURE_SHOW_THREADS=y
+
+#
+# Runit Utilities
+#
+CONFIG_CHPST=y
+CONFIG_SETUIDGID=y
+CONFIG_ENVUIDGID=y
+CONFIG_ENVDIR=y
+CONFIG_SOFTLIMIT=y
+CONFIG_RUNSV=y
+CONFIG_RUNSVDIR=y
+CONFIG_FEATURE_RUNSVDIR_LOG=y
+CONFIG_SV=y
+CONFIG_SV_DEFAULT_SERVICE_DIR="/var/service"
+CONFIG_SVC=y
+CONFIG_SVOK=y
+CONFIG_SVLOGD=y
+# CONFIG_CHCON is not set
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETSEBOOL is not set
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_MATCHPATHCON is not set
+# CONFIG_RUNCON is not set
+# CONFIG_SELINUXENABLED is not set
+# CONFIG_SESTATUS is not set
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFILES is not set
+# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_SETSEBOOL is not set
+
+#
+# Shells
+#
+CONFIG_SH_IS_ASH=y
+# CONFIG_SH_IS_HUSH is not set
+# CONFIG_SH_IS_NONE is not set
+# CONFIG_BASH_IS_ASH is not set
+# CONFIG_BASH_IS_HUSH is not set
+CONFIG_BASH_IS_NONE=y
+CONFIG_SHELL_ASH=y
+CONFIG_ASH=y
+# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set
+CONFIG_ASH_INTERNAL_GLOB=y
+CONFIG_ASH_BASH_COMPAT=y
+# CONFIG_ASH_BASH_SOURCE_CURDIR is not set
+CONFIG_ASH_BASH_NOT_FOUND_HOOK=y
+CONFIG_ASH_JOB_CONTROL=y
+CONFIG_ASH_ALIAS=y
+CONFIG_ASH_RANDOM_SUPPORT=y
+CONFIG_ASH_EXPAND_PRMT=y
+CONFIG_ASH_IDLE_TIMEOUT=y
+CONFIG_ASH_MAIL=y
+CONFIG_ASH_ECHO=y
+CONFIG_ASH_PRINTF=y
+CONFIG_ASH_TEST=y
+CONFIG_ASH_HELP=y
+CONFIG_ASH_GETOPTS=y
+CONFIG_ASH_CMDCMD=y
+CONFIG_CTTYHACK=y
+# CONFIG_HUSH is not set
+# CONFIG_SHELL_HUSH is not set
+# CONFIG_HUSH_BASH_COMPAT is not set
+# CONFIG_HUSH_BRACE_EXPANSION is not set
+# CONFIG_HUSH_LINENO_VAR is not set
+# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set
+# CONFIG_HUSH_INTERACTIVE is not set
+# CONFIG_HUSH_SAVEHISTORY is not set
+# CONFIG_HUSH_JOB is not set
+# CONFIG_HUSH_TICK is not set
+# CONFIG_HUSH_IF is not set
+# CONFIG_HUSH_LOOPS is not set
+# CONFIG_HUSH_CASE is not set
+# CONFIG_HUSH_FUNCTIONS is not set
+# CONFIG_HUSH_LOCAL is not set
+# CONFIG_HUSH_RANDOM_SUPPORT is not set
+# CONFIG_HUSH_MODE_X is not set
+# CONFIG_HUSH_ECHO is not set
+# CONFIG_HUSH_PRINTF is not set
+# CONFIG_HUSH_TEST is not set
+# CONFIG_HUSH_HELP is not set
+# CONFIG_HUSH_EXPORT is not set
+# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_READONLY is not set
+# CONFIG_HUSH_KILL is not set
+# CONFIG_HUSH_WAIT is not set
+# CONFIG_HUSH_COMMAND is not set
+# CONFIG_HUSH_TRAP is not set
+# CONFIG_HUSH_TYPE is not set
+# CONFIG_HUSH_TIMES is not set
+# CONFIG_HUSH_READ is not set
+# CONFIG_HUSH_SET is not set
+# CONFIG_HUSH_UNSET is not set
+# CONFIG_HUSH_ULIMIT is not set
+# CONFIG_HUSH_UMASK is not set
+# CONFIG_HUSH_GETOPTS is not set
+# CONFIG_HUSH_MEMLEAK is not set
+
+#
+# Options common to all shells
+#
+CONFIG_FEATURE_SH_MATH=y
+CONFIG_FEATURE_SH_MATH_64=y
+CONFIG_FEATURE_SH_MATH_BASE=y
+CONFIG_FEATURE_SH_EXTRA_QUIET=y
+# CONFIG_FEATURE_SH_STANDALONE is not set
+CONFIG_FEATURE_SH_NOFORK=y
+CONFIG_FEATURE_SH_READ_FRAC=y
+CONFIG_FEATURE_SH_HISTFILESIZE=y
+CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS=y
+
+#
+# System Logging Utilities
+#
+CONFIG_KLOGD=y
+
+#
+# klogd should not be used together with syslog to kernel printk buffer
+#
+CONFIG_FEATURE_KLOGD_KLOGCTL=y
+# CONFIG_LOGGER is not set
+CONFIG_LOGREAD=y
+CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
+CONFIG_SYSLOGD=y
+CONFIG_FEATURE_ROTATE_LOGFILE=y
+CONFIG_FEATURE_REMOTE_LOG=y
+CONFIG_FEATURE_SYSLOGD_DUP=y
+CONFIG_FEATURE_SYSLOGD_CFG=y
+# CONFIG_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS is not set
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
+CONFIG_FEATURE_IPC_SYSLOG=y
+CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
+CONFIG_FEATURE_KMSG_SYSLOG=y
diff --git a/core-mod/core/busybox/files/.config-suid b/core-mod/core/busybox/files/.config-suid
new file mode 100644
index 0000000..b8b126d
--- /dev/null
+++ b/core-mod/core/busybox/files/.config-suid
@@ -0,0 +1,1172 @@
+#
+# Automatically generated make config: don't edit
+# Busybox version: 1.33.0
+# Tue Feb  9 11:50:46 2021
+#
+CONFIG_HAVE_DOT_CONFIG=y
+
+#
+# Settings
+#
+# CONFIG_DESKTOP is not set
+# CONFIG_EXTRA_COMPAT is not set
+# CONFIG_FEDORA_COMPAT is not set
+# CONFIG_INCLUDE_SUSv2 is not set
+# CONFIG_LONG_OPTS is not set
+CONFIG_SHOW_USAGE=y
+CONFIG_FEATURE_VERBOSE_USAGE=y
+CONFIG_FEATURE_COMPRESS_USAGE=y
+# CONFIG_LFS is not set
+# CONFIG_PAM is not set
+# CONFIG_FEATURE_DEVPTS is not set
+# CONFIG_FEATURE_UTMP is not set
+# CONFIG_FEATURE_WTMP is not set
+# CONFIG_FEATURE_PIDFILE is not set
+CONFIG_PID_FILE_PATH=""
+CONFIG_BUSYBOX=y
+CONFIG_FEATURE_SHOW_SCRIPT=y
+CONFIG_FEATURE_INSTALLER=y
+# CONFIG_INSTALL_NO_USR is not set
+# CONFIG_FEATURE_SUID is not set
+# CONFIG_FEATURE_SUID_CONFIG is not set
+# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
+# CONFIG_FEATURE_PREFER_APPLETS is not set
+CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
+# CONFIG_SELINUX is not set
+# CONFIG_FEATURE_CLEAN_UP is not set
+CONFIG_FEATURE_SYSLOG_INFO=y
+CONFIG_FEATURE_SYSLOG=y
+
+#
+# Build Options
+#
+CONFIG_STATIC=y
+# CONFIG_PIE is not set
+# CONFIG_NOMMU is not set
+# CONFIG_BUILD_LIBBUSYBOX is not set
+# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
+# CONFIG_FEATURE_INDIVIDUAL is not set
+# CONFIG_FEATURE_SHARED_BUSYBOX is not set
+CONFIG_CROSS_COMPILER_PREFIX=""
+CONFIG_SYSROOT=""
+CONFIG_EXTRA_CFLAGS=""
+CONFIG_EXTRA_LDFLAGS=""
+CONFIG_EXTRA_LDLIBS=""
+CONFIG_USE_PORTABLE_CODE=y
+# CONFIG_STACK_OPTIMIZATION_386 is not set
+CONFIG_STATIC_LIBGCC=y
+
+#
+# Installation Options ("make install" behavior)
+#
+# CONFIG_INSTALL_APPLET_SYMLINKS is not set
+# CONFIG_INSTALL_APPLET_HARDLINKS is not set
+# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
+CONFIG_INSTALL_APPLET_DONT=y
+# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
+# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
+# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
+CONFIG_PREFIX="./_install"
+
+#
+# Debugging Options
+#
+# CONFIG_DEBUG is not set
+# CONFIG_DEBUG_PESSIMIZE is not set
+# CONFIG_DEBUG_SANITIZE is not set
+# CONFIG_UNIT_TEST is not set
+# CONFIG_WERROR is not set
+# CONFIG_WARN_SIMPLE_MSG is not set
+CONFIG_NO_DEBUG_LIB=y
+# CONFIG_DMALLOC is not set
+# CONFIG_EFENCE is not set
+
+#
+# Library Tuning
+#
+# CONFIG_FEATURE_USE_BSS_TAIL is not set
+# CONFIG_FLOAT_DURATION is not set
+# CONFIG_FEATURE_RTMINMAX is not set
+# CONFIG_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS is not set
+CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
+# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
+# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
+CONFIG_PASSWORD_MINLEN=6
+CONFIG_MD5_SMALL=1
+CONFIG_SHA3_SMALL=1
+# CONFIG_FEATURE_FAST_TOP is not set
+# CONFIG_FEATURE_ETC_NETWORKS is not set
+# CONFIG_FEATURE_ETC_SERVICES is not set
+# CONFIG_FEATURE_EDITING is not set
+CONFIG_FEATURE_EDITING_MAX_LEN=0
+# CONFIG_FEATURE_EDITING_VI is not set
+CONFIG_FEATURE_EDITING_HISTORY=0
+# CONFIG_FEATURE_EDITING_SAVEHISTORY is not set
+# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
+# CONFIG_FEATURE_REVERSE_SEARCH is not set
+# CONFIG_FEATURE_TAB_COMPLETION is not set
+# CONFIG_FEATURE_USERNAME_COMPLETION is not set
+# CONFIG_FEATURE_EDITING_FANCY_PROMPT is not set
+# CONFIG_FEATURE_EDITING_WINCH is not set
+# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
+# CONFIG_LOCALE_SUPPORT is not set
+# CONFIG_UNICODE_SUPPORT is not set
+# CONFIG_UNICODE_USING_LOCALE is not set
+# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
+CONFIG_SUBST_WCHAR=0
+CONFIG_LAST_SUPPORTED_WCHAR=0
+# CONFIG_UNICODE_COMBINING_WCHARS is not set
+# CONFIG_UNICODE_WIDE_WCHARS is not set
+# CONFIG_UNICODE_BIDI_SUPPORT is not set
+# CONFIG_UNICODE_NEUTRAL_TABLE is not set
+# CONFIG_UNICODE_PRESERVE_BROKEN is not set
+# CONFIG_FEATURE_NON_POSIX_CP is not set
+# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set
+# CONFIG_FEATURE_USE_SENDFILE is not set
+CONFIG_FEATURE_COPYBUF_KB=4
+# CONFIG_FEATURE_SKIP_ROOTFS is not set
+# CONFIG_MONOTONIC_SYSCALL is not set
+# CONFIG_IOCTL_HEX2STR_ERROR is not set
+# CONFIG_FEATURE_HWIB is not set
+
+#
+# Applets
+#
+
+#
+# Archival Utilities
+#
+# CONFIG_FEATURE_SEAMLESS_XZ is not set
+# CONFIG_FEATURE_SEAMLESS_LZMA is not set
+# CONFIG_FEATURE_SEAMLESS_BZ2 is not set
+# CONFIG_FEATURE_SEAMLESS_GZ is not set
+# CONFIG_FEATURE_SEAMLESS_Z is not set
+# CONFIG_AR is not set
+# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
+# CONFIG_FEATURE_AR_CREATE is not set
+# CONFIG_UNCOMPRESS is not set
+# CONFIG_GUNZIP is not set
+# CONFIG_ZCAT is not set
+# CONFIG_FEATURE_GUNZIP_LONG_OPTIONS is not set
+# CONFIG_BUNZIP2 is not set
+# CONFIG_BZCAT is not set
+# CONFIG_UNLZMA is not set
+# CONFIG_LZCAT is not set
+# CONFIG_LZMA is not set
+# CONFIG_UNXZ is not set
+# CONFIG_XZCAT is not set
+# CONFIG_XZ is not set
+# CONFIG_BZIP2 is not set
+CONFIG_BZIP2_SMALL=0
+# CONFIG_FEATURE_BZIP2_DECOMPRESS is not set
+# CONFIG_CPIO is not set
+# CONFIG_FEATURE_CPIO_O is not set
+# CONFIG_FEATURE_CPIO_P is not set
+# CONFIG_DPKG is not set
+# CONFIG_DPKG_DEB is not set
+# CONFIG_GZIP is not set
+# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
+CONFIG_GZIP_FAST=0
+# CONFIG_FEATURE_GZIP_LEVELS is not set
+# CONFIG_FEATURE_GZIP_DECOMPRESS is not set
+# CONFIG_LZOP is not set
+# CONFIG_UNLZOP is not set
+# CONFIG_LZOPCAT is not set
+# CONFIG_LZOP_COMPR_HIGH is not set
+# CONFIG_RPM is not set
+# CONFIG_RPM2CPIO is not set
+# CONFIG_TAR is not set
+# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
+# CONFIG_FEATURE_TAR_CREATE is not set
+# CONFIG_FEATURE_TAR_AUTODETECT is not set
+# CONFIG_FEATURE_TAR_FROM is not set
+# CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
+# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
+# CONFIG_FEATURE_TAR_GNU_EXTENSIONS is not set
+# CONFIG_FEATURE_TAR_TO_COMMAND is not set
+# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
+# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
+# CONFIG_FEATURE_TAR_SELINUX is not set
+# CONFIG_UNZIP is not set
+# CONFIG_FEATURE_UNZIP_CDF is not set
+# CONFIG_FEATURE_UNZIP_BZIP2 is not set
+# CONFIG_FEATURE_UNZIP_LZMA is not set
+# CONFIG_FEATURE_UNZIP_XZ is not set
+# CONFIG_FEATURE_LZMA_FAST is not set
+
+#
+# Coreutils
+#
+# CONFIG_BASENAME is not set
+# CONFIG_CAT is not set
+# CONFIG_FEATURE_CATN is not set
+# CONFIG_FEATURE_CATV is not set
+# CONFIG_CHGRP is not set
+# CONFIG_CHMOD is not set
+# CONFIG_CHOWN is not set
+# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
+# CONFIG_CHROOT is not set
+# CONFIG_CKSUM is not set
+# CONFIG_COMM is not set
+# CONFIG_CP is not set
+# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
+# CONFIG_FEATURE_CP_REFLINK is not set
+# CONFIG_CUT is not set
+# CONFIG_DATE is not set
+# CONFIG_FEATURE_DATE_ISOFMT is not set
+# CONFIG_FEATURE_DATE_NANO is not set
+# CONFIG_FEATURE_DATE_COMPAT is not set
+# CONFIG_DD is not set
+# CONFIG_FEATURE_DD_SIGNAL_HANDLING is not set
+# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set
+# CONFIG_FEATURE_DD_IBS_OBS is not set
+# CONFIG_FEATURE_DD_STATUS is not set
+# CONFIG_DF is not set
+# CONFIG_FEATURE_DF_FANCY is not set
+# CONFIG_DIRNAME is not set
+# CONFIG_DOS2UNIX is not set
+# CONFIG_UNIX2DOS is not set
+# CONFIG_DU is not set
+# CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K is not set
+# CONFIG_ECHO is not set
+# CONFIG_FEATURE_FANCY_ECHO is not set
+# CONFIG_ENV is not set
+# CONFIG_EXPAND is not set
+# CONFIG_UNEXPAND is not set
+# CONFIG_EXPR is not set
+# CONFIG_EXPR_MATH_SUPPORT_64 is not set
+# CONFIG_FACTOR is not set
+# CONFIG_FALSE is not set
+# CONFIG_FOLD is not set
+# CONFIG_HEAD is not set
+# CONFIG_FEATURE_FANCY_HEAD is not set
+# CONFIG_HOSTID is not set
+# CONFIG_ID is not set
+# CONFIG_GROUPS is not set
+# CONFIG_INSTALL is not set
+# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
+# CONFIG_LINK is not set
+# CONFIG_LN is not set
+# CONFIG_LOGNAME is not set
+# CONFIG_LS is not set
+# CONFIG_FEATURE_LS_FILETYPES is not set
+# CONFIG_FEATURE_LS_FOLLOWLINKS is not set
+# CONFIG_FEATURE_LS_RECURSIVE is not set
+# CONFIG_FEATURE_LS_WIDTH is not set
+# CONFIG_FEATURE_LS_SORTFILES is not set
+# CONFIG_FEATURE_LS_TIMESTAMPS is not set
+# CONFIG_FEATURE_LS_USERNAME is not set
+# CONFIG_FEATURE_LS_COLOR is not set
+# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set
+# CONFIG_MD5SUM is not set
+# CONFIG_SHA1SUM is not set
+# CONFIG_SHA256SUM is not set
+# CONFIG_SHA512SUM is not set
+# CONFIG_SHA3SUM is not set
+# CONFIG_FEATURE_MD5_SHA1_SUM_CHECK is not set
+# CONFIG_MKDIR is not set
+# CONFIG_MKFIFO is not set
+# CONFIG_MKNOD is not set
+# CONFIG_MKTEMP is not set
+# CONFIG_MV is not set
+# CONFIG_NICE is not set
+# CONFIG_NL is not set
+# CONFIG_NOHUP is not set
+# CONFIG_NPROC is not set
+# CONFIG_OD is not set
+# CONFIG_PASTE is not set
+# CONFIG_PRINTENV is not set
+# CONFIG_PRINTF is not set
+# CONFIG_PWD is not set
+# CONFIG_READLINK is not set
+# CONFIG_FEATURE_READLINK_FOLLOW is not set
+# CONFIG_REALPATH is not set
+# CONFIG_RM is not set
+# CONFIG_RMDIR is not set
+# CONFIG_SEQ is not set
+# CONFIG_SHRED is not set
+# CONFIG_SHUF is not set
+# CONFIG_SLEEP is not set
+# CONFIG_FEATURE_FANCY_SLEEP is not set
+# CONFIG_SORT is not set
+# CONFIG_FEATURE_SORT_BIG is not set
+# CONFIG_FEATURE_SORT_OPTIMIZE_MEMORY is not set
+# CONFIG_SPLIT is not set
+# CONFIG_FEATURE_SPLIT_FANCY is not set
+# CONFIG_STAT is not set
+# CONFIG_FEATURE_STAT_FORMAT is not set
+# CONFIG_FEATURE_STAT_FILESYSTEM is not set
+# CONFIG_STTY is not set
+# CONFIG_SUM is not set
+# CONFIG_SYNC is not set
+# CONFIG_FEATURE_SYNC_FANCY is not set
+# CONFIG_FSYNC is not set
+# CONFIG_TAC is not set
+# CONFIG_TAIL is not set
+# CONFIG_FEATURE_FANCY_TAIL is not set
+# CONFIG_TEE is not set
+# CONFIG_FEATURE_TEE_USE_BLOCK_IO is not set
+# CONFIG_TEST is not set
+# CONFIG_TEST1 is not set
+# CONFIG_TEST2 is not set
+# CONFIG_FEATURE_TEST_64 is not set
+# CONFIG_TIMEOUT is not set
+# CONFIG_TOUCH is not set
+# CONFIG_FEATURE_TOUCH_NODEREF is not set
+# CONFIG_FEATURE_TOUCH_SUSV3 is not set
+# CONFIG_TR is not set
+# CONFIG_FEATURE_TR_CLASSES is not set
+# CONFIG_FEATURE_TR_EQUIV is not set
+# CONFIG_TRUE is not set
+# CONFIG_TRUNCATE is not set
+# CONFIG_TTY is not set
+# CONFIG_UNAME is not set
+CONFIG_UNAME_OSNAME=""
+# CONFIG_BB_ARCH is not set
+# CONFIG_UNIQ is not set
+# CONFIG_UNLINK is not set
+# CONFIG_USLEEP is not set
+# CONFIG_UUDECODE is not set
+# CONFIG_BASE32 is not set
+# CONFIG_BASE64 is not set
+# CONFIG_UUENCODE is not set
+# CONFIG_WC is not set
+# CONFIG_FEATURE_WC_LARGE is not set
+# CONFIG_WHO is not set
+# CONFIG_W is not set
+# CONFIG_USERS is not set
+# CONFIG_WHOAMI is not set
+# CONFIG_YES is not set
+
+#
+# Common options
+#
+# CONFIG_FEATURE_VERBOSE is not set
+# CONFIG_FEATURE_PRESERVE_HARDLINKS is not set
+# CONFIG_FEATURE_HUMAN_READABLE is not set
+
+#
+# Console Utilities
+#
+# CONFIG_CHVT is not set
+# CONFIG_CLEAR is not set
+# CONFIG_DEALLOCVT is not set
+# CONFIG_DUMPKMAP is not set
+# CONFIG_FGCONSOLE is not set
+# CONFIG_KBD_MODE is not set
+# CONFIG_LOADFONT is not set
+# CONFIG_SETFONT is not set
+# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
+CONFIG_DEFAULT_SETFONT_DIR=""
+# CONFIG_FEATURE_LOADFONT_PSF2 is not set
+# CONFIG_FEATURE_LOADFONT_RAW is not set
+# CONFIG_LOADKMAP is not set
+# CONFIG_OPENVT is not set
+# CONFIG_RESET is not set
+# CONFIG_RESIZE is not set
+# CONFIG_FEATURE_RESIZE_PRINT is not set
+# CONFIG_SETCONSOLE is not set
+# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
+# CONFIG_SETKEYCODES is not set
+# CONFIG_SETLOGCONS is not set
+# CONFIG_SHOWKEY is not set
+
+#
+# Debian Utilities
+#
+# CONFIG_PIPE_PROGRESS is not set
+# CONFIG_RUN_PARTS is not set
+# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
+# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
+# CONFIG_START_STOP_DAEMON is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set
+# CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set
+# CONFIG_WHICH is not set
+
+#
+# klibc-utils
+#
+# CONFIG_MINIPS is not set
+# CONFIG_NUKE is not set
+# CONFIG_RESUME is not set
+# CONFIG_RUN_INIT is not set
+
+#
+# Editors
+#
+# CONFIG_AWK is not set
+# CONFIG_FEATURE_AWK_LIBM is not set
+# CONFIG_FEATURE_AWK_GNU_EXTENSIONS is not set
+# CONFIG_CMP is not set
+# CONFIG_DIFF is not set
+# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set
+# CONFIG_FEATURE_DIFF_DIR is not set
+# CONFIG_ED is not set
+# CONFIG_PATCH is not set
+# CONFIG_SED is not set
+# CONFIG_VI is not set
+CONFIG_FEATURE_VI_MAX_LEN=0
+# CONFIG_FEATURE_VI_8BIT is not set
+# CONFIG_FEATURE_VI_COLON is not set
+# CONFIG_FEATURE_VI_YANKMARK is not set
+# CONFIG_FEATURE_VI_SEARCH is not set
+# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
+# CONFIG_FEATURE_VI_USE_SIGNALS is not set
+# CONFIG_FEATURE_VI_DOT_CMD is not set
+# CONFIG_FEATURE_VI_READONLY is not set
+# CONFIG_FEATURE_VI_SETOPTS is not set
+# CONFIG_FEATURE_VI_SET is not set
+# CONFIG_FEATURE_VI_WIN_RESIZE is not set
+# CONFIG_FEATURE_VI_ASK_TERMINAL is not set
+# CONFIG_FEATURE_VI_UNDO is not set
+# CONFIG_FEATURE_VI_UNDO_QUEUE is not set
+CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=0
+# CONFIG_FEATURE_ALLOW_EXEC is not set
+
+#
+# Finding Utilities
+#
+# CONFIG_FIND is not set
+# CONFIG_FEATURE_FIND_PRINT0 is not set
+# CONFIG_FEATURE_FIND_MTIME is not set
+# CONFIG_FEATURE_FIND_MMIN is not set
+# CONFIG_FEATURE_FIND_PERM is not set
+# CONFIG_FEATURE_FIND_TYPE is not set
+# CONFIG_FEATURE_FIND_EXECUTABLE is not set
+# CONFIG_FEATURE_FIND_XDEV is not set
+# CONFIG_FEATURE_FIND_MAXDEPTH is not set
+# CONFIG_FEATURE_FIND_NEWER is not set
+# CONFIG_FEATURE_FIND_INUM is not set
+# CONFIG_FEATURE_FIND_EXEC is not set
+# CONFIG_FEATURE_FIND_EXEC_PLUS is not set
+# CONFIG_FEATURE_FIND_USER is not set
+# CONFIG_FEATURE_FIND_GROUP is not set
+# CONFIG_FEATURE_FIND_NOT is not set
+# CONFIG_FEATURE_FIND_DEPTH is not set
+# CONFIG_FEATURE_FIND_PAREN is not set
+# CONFIG_FEATURE_FIND_SIZE is not set
+# CONFIG_FEATURE_FIND_PRUNE is not set
+# CONFIG_FEATURE_FIND_QUIT is not set
+# CONFIG_FEATURE_FIND_DELETE is not set
+# CONFIG_FEATURE_FIND_EMPTY is not set
+# CONFIG_FEATURE_FIND_PATH is not set
+# CONFIG_FEATURE_FIND_REGEX is not set
+# CONFIG_FEATURE_FIND_CONTEXT is not set
+# CONFIG_FEATURE_FIND_LINKS is not set
+# CONFIG_GREP is not set
+# CONFIG_EGREP is not set
+# CONFIG_FGREP is not set
+# CONFIG_FEATURE_GREP_CONTEXT is not set
+# CONFIG_XARGS is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_QUOTES is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL is not set
+# CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE is not set
+
+#
+# Init Utilities
+#
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
+# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
+# CONFIG_HALT is not set
+# CONFIG_POWEROFF is not set
+# CONFIG_REBOOT is not set
+# CONFIG_FEATURE_WAIT_FOR_INIT is not set
+# CONFIG_FEATURE_CALL_TELINIT is not set
+CONFIG_TELINIT_PATH=""
+# CONFIG_INIT is not set
+# CONFIG_LINUXRC is not set
+# CONFIG_FEATURE_USE_INITTAB is not set
+# CONFIG_FEATURE_KILL_REMOVED is not set
+CONFIG_FEATURE_KILL_DELAY=0
+# CONFIG_FEATURE_INIT_SCTTY is not set
+# CONFIG_FEATURE_INIT_SYSLOG is not set
+# CONFIG_FEATURE_INIT_QUIET is not set
+# CONFIG_FEATURE_INIT_COREDUMPS is not set
+CONFIG_INIT_TERMINAL_TYPE=""
+# CONFIG_FEATURE_INIT_MODIFY_CMDLINE is not set
+
+#
+# Login/Password Management Utilities
+#
+CONFIG_FEATURE_SHADOWPASSWDS=y
+CONFIG_USE_BB_PWD_GRP=y
+CONFIG_USE_BB_SHADOW=y
+CONFIG_USE_BB_CRYPT=y
+CONFIG_USE_BB_CRYPT_SHA=y
+# CONFIG_ADD_SHELL is not set
+# CONFIG_REMOVE_SHELL is not set
+# CONFIG_ADDGROUP is not set
+# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
+# CONFIG_ADDUSER is not set
+# CONFIG_FEATURE_CHECK_NAMES is not set
+CONFIG_LAST_ID=0
+CONFIG_FIRST_SYSTEM_ID=0
+CONFIG_LAST_SYSTEM_ID=0
+# CONFIG_CHPASSWD is not set
+CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="sha256"
+# CONFIG_CRYPTPW is not set
+# CONFIG_MKPASSWD is not set
+# CONFIG_DELUSER is not set
+# CONFIG_DELGROUP is not set
+# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
+# CONFIG_GETTY is not set
+CONFIG_LOGIN=y
+# CONFIG_LOGIN_SESSION_AS_CHILD is not set
+CONFIG_LOGIN_SCRIPTS=y
+CONFIG_FEATURE_NOLOGIN=y
+CONFIG_FEATURE_SECURETTY=y
+CONFIG_PASSWD=y
+# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
+CONFIG_SU=y
+CONFIG_FEATURE_SU_SYSLOG=y
+CONFIG_FEATURE_SU_CHECKS_SHELLS=y
+# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set
+# CONFIG_SULOGIN is not set
+CONFIG_VLOCK=y
+
+#
+# Linux Ext2 FS Progs
+#
+# CONFIG_CHATTR is not set
+# CONFIG_FSCK is not set
+# CONFIG_LSATTR is not set
+# CONFIG_TUNE2FS is not set
+
+#
+# Linux Module Utilities
+#
+# CONFIG_MODPROBE_SMALL is not set
+# CONFIG_DEPMOD is not set
+# CONFIG_INSMOD is not set
+# CONFIG_LSMOD is not set
+# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set
+# CONFIG_MODINFO is not set
+# CONFIG_MODPROBE is not set
+# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
+# CONFIG_RMMOD is not set
+
+#
+# Options common to multiple modutils
+#
+# CONFIG_FEATURE_CMDLINE_MODULE_OPTIONS is not set
+# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
+# CONFIG_FEATURE_2_4_MODULES is not set
+# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
+# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
+# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
+# CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set
+# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
+# CONFIG_FEATURE_MODUTILS_ALIAS is not set
+# CONFIG_FEATURE_MODUTILS_SYMBOLS is not set
+CONFIG_DEFAULT_MODULES_DIR=""
+CONFIG_DEFAULT_DEPMOD_FILE=""
+
+#
+# Linux System Utilities
+#
+# CONFIG_ACPID is not set
+# CONFIG_FEATURE_ACPID_COMPAT is not set
+# CONFIG_BLKDISCARD is not set
+# CONFIG_BLKID is not set
+# CONFIG_FEATURE_BLKID_TYPE is not set
+# CONFIG_BLOCKDEV is not set
+# CONFIG_CAL is not set
+# CONFIG_CHRT is not set
+# CONFIG_DMESG is not set
+# CONFIG_FEATURE_DMESG_PRETTY is not set
+# CONFIG_EJECT is not set
+# CONFIG_FEATURE_EJECT_SCSI is not set
+# CONFIG_FALLOCATE is not set
+# CONFIG_FATATTR is not set
+# CONFIG_FBSET is not set
+# CONFIG_FEATURE_FBSET_FANCY is not set
+# CONFIG_FEATURE_FBSET_READMODE is not set
+# CONFIG_FDFORMAT is not set
+# CONFIG_FDISK is not set
+# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
+# CONFIG_FEATURE_FDISK_WRITABLE is not set
+# CONFIG_FEATURE_AIX_LABEL is not set
+# CONFIG_FEATURE_SGI_LABEL is not set
+# CONFIG_FEATURE_SUN_LABEL is not set
+# CONFIG_FEATURE_OSF_LABEL is not set
+# CONFIG_FEATURE_GPT_LABEL is not set
+# CONFIG_FEATURE_FDISK_ADVANCED is not set
+# CONFIG_FINDFS is not set
+# CONFIG_FLOCK is not set
+# CONFIG_FDFLUSH is not set
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK_MINIX is not set
+# CONFIG_FSFREEZE is not set
+# CONFIG_FSTRIM is not set
+# CONFIG_GETOPT is not set
+# CONFIG_FEATURE_GETOPT_LONG is not set
+# CONFIG_HEXDUMP is not set
+# CONFIG_HD is not set
+# CONFIG_XXD is not set
+# CONFIG_HWCLOCK is not set
+# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
+# CONFIG_IONICE is not set
+# CONFIG_IPCRM is not set
+# CONFIG_IPCS is not set
+# CONFIG_LAST is not set
+# CONFIG_FEATURE_LAST_FANCY is not set
+# CONFIG_LOSETUP is not set
+# CONFIG_LSPCI is not set
+# CONFIG_LSUSB is not set
+# CONFIG_FEATURE_LSUSB_STRINGS is not set
+# CONFIG_MDEV is not set
+# CONFIG_FEATURE_MDEV_CONF is not set
+# CONFIG_FEATURE_MDEV_RENAME is not set
+# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
+# CONFIG_FEATURE_MDEV_EXEC is not set
+# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
+# CONFIG_FEATURE_MDEV_DAEMON is not set
+# CONFIG_MESG is not set
+# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set
+# CONFIG_MKE2FS is not set
+# CONFIG_MKFS_EXT2 is not set
+# CONFIG_MKFS_MINIX is not set
+# CONFIG_FEATURE_MINIX2 is not set
+# CONFIG_MKFS_REISER is not set
+# CONFIG_MKDOSFS is not set
+# CONFIG_MKFS_VFAT is not set
+# CONFIG_MKSWAP is not set
+# CONFIG_FEATURE_MKSWAP_UUID is not set
+# CONFIG_MORE is not set
+# CONFIG_MOUNT is not set
+# CONFIG_FEATURE_MOUNT_FAKE is not set
+# CONFIG_FEATURE_MOUNT_VERBOSE is not set
+# CONFIG_FEATURE_MOUNT_HELPERS is not set
+# CONFIG_FEATURE_MOUNT_LABEL is not set
+# CONFIG_FEATURE_MOUNT_NFS is not set
+# CONFIG_FEATURE_MOUNT_CIFS is not set
+# CONFIG_FEATURE_MOUNT_FLAGS is not set
+# CONFIG_FEATURE_MOUNT_FSTAB is not set
+# CONFIG_FEATURE_MOUNT_OTHERTAB is not set
+# CONFIG_MOUNTPOINT is not set
+# CONFIG_NOLOGIN is not set
+# CONFIG_NOLOGIN_DEPENDENCIES is not set
+# CONFIG_NSENTER is not set
+# CONFIG_PIVOT_ROOT is not set
+# CONFIG_RDATE is not set
+# CONFIG_RDEV is not set
+# CONFIG_READPROFILE is not set
+# CONFIG_RENICE is not set
+# CONFIG_REV is not set
+# CONFIG_RTCWAKE is not set
+# CONFIG_SCRIPT is not set
+# CONFIG_SCRIPTREPLAY is not set
+# CONFIG_SETARCH is not set
+# CONFIG_LINUX32 is not set
+# CONFIG_LINUX64 is not set
+# CONFIG_SETPRIV is not set
+# CONFIG_FEATURE_SETPRIV_DUMP is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITIES is not set
+# CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES is not set
+# CONFIG_SETSID is not set
+# CONFIG_SWAPON is not set
+# CONFIG_FEATURE_SWAPON_DISCARD is not set
+# CONFIG_FEATURE_SWAPON_PRI is not set
+# CONFIG_SWAPOFF is not set
+# CONFIG_FEATURE_SWAPONOFF_LABEL is not set
+# CONFIG_SWITCH_ROOT is not set
+# CONFIG_TASKSET is not set
+# CONFIG_FEATURE_TASKSET_FANCY is not set
+# CONFIG_FEATURE_TASKSET_CPULIST is not set
+# CONFIG_UEVENT is not set
+# CONFIG_UMOUNT is not set
+# CONFIG_FEATURE_UMOUNT_ALL is not set
+# CONFIG_UNSHARE is not set
+# CONFIG_WALL is not set
+# CONFIG_FEATURE_MOUNT_LOOP is not set
+# CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set
+# CONFIG_FEATURE_MTAB_SUPPORT is not set
+# CONFIG_VOLUMEID is not set
+# CONFIG_FEATURE_VOLUMEID_BCACHE is not set
+# CONFIG_FEATURE_VOLUMEID_BTRFS is not set
+# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set
+# CONFIG_FEATURE_VOLUMEID_EROFS is not set
+# CONFIG_FEATURE_VOLUMEID_EXFAT is not set
+# CONFIG_FEATURE_VOLUMEID_EXT is not set
+# CONFIG_FEATURE_VOLUMEID_F2FS is not set
+# CONFIG_FEATURE_VOLUMEID_FAT is not set
+# CONFIG_FEATURE_VOLUMEID_HFS is not set
+# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set
+# CONFIG_FEATURE_VOLUMEID_JFS is not set
+# CONFIG_FEATURE_VOLUMEID_LFS is not set
+# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set
+# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set
+# CONFIG_FEATURE_VOLUMEID_LUKS is not set
+# CONFIG_FEATURE_VOLUMEID_MINIX is not set
+# CONFIG_FEATURE_VOLUMEID_NILFS is not set
+# CONFIG_FEATURE_VOLUMEID_NTFS is not set
+# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set
+# CONFIG_FEATURE_VOLUMEID_REISERFS is not set
+# CONFIG_FEATURE_VOLUMEID_ROMFS is not set
+# CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set
+# CONFIG_FEATURE_VOLUMEID_SYSV is not set
+# CONFIG_FEATURE_VOLUMEID_UBIFS is not set
+# CONFIG_FEATURE_VOLUMEID_UDF is not set
+# CONFIG_FEATURE_VOLUMEID_XFS is not set
+
+#
+# Miscellaneous Utilities
+#
+# CONFIG_ADJTIMEX is not set
+# CONFIG_BBCONFIG is not set
+# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set
+# CONFIG_BC is not set
+# CONFIG_DC is not set
+# CONFIG_FEATURE_DC_BIG is not set
+# CONFIG_FEATURE_DC_LIBM is not set
+# CONFIG_FEATURE_BC_INTERACTIVE is not set
+# CONFIG_FEATURE_BC_LONG_OPTIONS is not set
+# CONFIG_BEEP is not set
+CONFIG_FEATURE_BEEP_FREQ=0
+CONFIG_FEATURE_BEEP_LENGTH_MS=0
+# CONFIG_CHAT is not set
+# CONFIG_FEATURE_CHAT_NOFAIL is not set
+# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
+# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
+# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
+# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
+# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
+# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
+# CONFIG_CONSPY is not set
+# CONFIG_CROND is not set
+# CONFIG_FEATURE_CROND_D is not set
+# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
+# CONFIG_FEATURE_CROND_SPECIAL_TIMES is not set
+CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
+CONFIG_CRONTAB=y
+# CONFIG_DEVFSD is not set
+# CONFIG_DEVFSD_MODLOAD is not set
+# CONFIG_DEVFSD_FG_NP is not set
+# CONFIG_DEVFSD_VERBOSE is not set
+# CONFIG_FEATURE_DEVFS is not set
+# CONFIG_DEVMEM is not set
+# CONFIG_FBSPLASH is not set
+# CONFIG_FLASH_ERASEALL is not set
+# CONFIG_FLASH_LOCK is not set
+# CONFIG_FLASH_UNLOCK is not set
+# CONFIG_FLASHCP is not set
+# CONFIG_HDPARM is not set
+# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
+# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
+# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
+# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
+# CONFIG_HEXEDIT is not set
+# CONFIG_I2CGET is not set
+# CONFIG_I2CSET is not set
+# CONFIG_I2CDUMP is not set
+# CONFIG_I2CDETECT is not set
+# CONFIG_I2CTRANSFER is not set
+# CONFIG_INOTIFYD is not set
+# CONFIG_LESS is not set
+CONFIG_FEATURE_LESS_MAXLINES=0
+# CONFIG_FEATURE_LESS_BRACKETS is not set
+# CONFIG_FEATURE_LESS_FLAGS is not set
+# CONFIG_FEATURE_LESS_TRUNCATE is not set
+# CONFIG_FEATURE_LESS_MARKS is not set
+# CONFIG_FEATURE_LESS_REGEXP is not set
+# CONFIG_FEATURE_LESS_WINCH is not set
+# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set
+# CONFIG_FEATURE_LESS_DASHCMD is not set
+# CONFIG_FEATURE_LESS_LINENUMS is not set
+# CONFIG_FEATURE_LESS_RAW is not set
+# CONFIG_FEATURE_LESS_ENV is not set
+# CONFIG_LSSCSI is not set
+# CONFIG_MAKEDEVS is not set
+# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
+# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
+# CONFIG_MAN is not set
+# CONFIG_MICROCOM is not set
+# CONFIG_MIM is not set
+# CONFIG_MT is not set
+# CONFIG_NANDWRITE is not set
+# CONFIG_NANDDUMP is not set
+# CONFIG_PARTPROBE is not set
+# CONFIG_RAIDAUTORUN is not set
+# CONFIG_READAHEAD is not set
+# CONFIG_RFKILL is not set
+# CONFIG_RUNLEVEL is not set
+# CONFIG_RX is not set
+# CONFIG_SETFATTR is not set
+# CONFIG_SETSERIAL is not set
+# CONFIG_STRINGS is not set
+# CONFIG_TIME is not set
+# CONFIG_TS is not set
+# CONFIG_TTYSIZE is not set
+# CONFIG_UBIATTACH is not set
+# CONFIG_UBIDETACH is not set
+# CONFIG_UBIMKVOL is not set
+# CONFIG_UBIRMVOL is not set
+# CONFIG_UBIRSVOL is not set
+# CONFIG_UBIUPDATEVOL is not set
+# CONFIG_UBIRENAME is not set
+# CONFIG_VOLNAME is not set
+# CONFIG_WATCHDOG is not set
+
+#
+# Networking Utilities
+#
+CONFIG_FEATURE_IPV6=y
+# CONFIG_FEATURE_UNIX_LOCAL is not set
+# CONFIG_FEATURE_PREFER_IPV4_ADDRESS is not set
+# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
+# CONFIG_FEATURE_TLS_SHA1 is not set
+# CONFIG_ARP is not set
+# CONFIG_ARPING is not set
+# CONFIG_BRCTL is not set
+# CONFIG_FEATURE_BRCTL_FANCY is not set
+# CONFIG_FEATURE_BRCTL_SHOW is not set
+# CONFIG_DNSD is not set
+# CONFIG_ETHER_WAKE is not set
+# CONFIG_FTPD is not set
+# CONFIG_FEATURE_FTPD_WRITE is not set
+# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set
+# CONFIG_FEATURE_FTPD_AUTHENTICATION is not set
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
+# CONFIG_HOSTNAME is not set
+# CONFIG_DNSDOMAINNAME is not set
+# CONFIG_HTTPD is not set
+# CONFIG_FEATURE_HTTPD_RANGES is not set
+# CONFIG_FEATURE_HTTPD_SETUID is not set
+# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
+# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
+# CONFIG_FEATURE_HTTPD_CGI is not set
+# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
+# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
+# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set
+# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
+# CONFIG_FEATURE_HTTPD_PROXY is not set
+# CONFIG_FEATURE_HTTPD_GZIP is not set
+# CONFIG_FEATURE_HTTPD_ETAG is not set
+# CONFIG_FEATURE_HTTPD_LAST_MODIFIED is not set
+# CONFIG_FEATURE_HTTPD_DATE is not set
+# CONFIG_FEATURE_HTTPD_ACL_IP is not set
+# CONFIG_IFCONFIG is not set
+# CONFIG_FEATURE_IFCONFIG_STATUS is not set
+# CONFIG_FEATURE_IFCONFIG_SLIP is not set
+# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
+# CONFIG_FEATURE_IFCONFIG_HW is not set
+# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
+# CONFIG_IFENSLAVE is not set
+# CONFIG_IFPLUGD is not set
+# CONFIG_IFUP is not set
+# CONFIG_IFDOWN is not set
+CONFIG_IFUPDOWN_IFSTATE_PATH=""
+# CONFIG_FEATURE_IFUPDOWN_IP is not set
+# CONFIG_FEATURE_IFUPDOWN_IPV4 is not set
+# CONFIG_FEATURE_IFUPDOWN_IPV6 is not set
+# CONFIG_FEATURE_IFUPDOWN_MAPPING is not set
+# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
+# CONFIG_INETD is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set
+# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set
+# CONFIG_FEATURE_INETD_RPC is not set
+# CONFIG_IP is not set
+# CONFIG_IPADDR is not set
+# CONFIG_IPLINK is not set
+# CONFIG_IPROUTE is not set
+# CONFIG_IPTUNNEL is not set
+# CONFIG_IPRULE is not set
+# CONFIG_IPNEIGH is not set
+# CONFIG_FEATURE_IP_ADDRESS is not set
+# CONFIG_FEATURE_IP_LINK is not set
+# CONFIG_FEATURE_IP_ROUTE is not set
+CONFIG_FEATURE_IP_ROUTE_DIR=""
+# CONFIG_FEATURE_IP_TUNNEL is not set
+# CONFIG_FEATURE_IP_RULE is not set
+# CONFIG_FEATURE_IP_NEIGH is not set
+# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
+# CONFIG_IPCALC is not set
+# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
+# CONFIG_FEATURE_IPCALC_FANCY is not set
+# CONFIG_FAKEIDENTD is not set
+# CONFIG_NAMEIF is not set
+# CONFIG_FEATURE_NAMEIF_EXTENDED is not set
+# CONFIG_NBDCLIENT is not set
+# CONFIG_NC is not set
+# CONFIG_NETCAT is not set
+# CONFIG_NC_SERVER is not set
+# CONFIG_NC_EXTRA is not set
+# CONFIG_NC_110_COMPAT is not set
+# CONFIG_NETSTAT is not set
+# CONFIG_FEATURE_NETSTAT_WIDE is not set
+# CONFIG_FEATURE_NETSTAT_PRG is not set
+# CONFIG_NSLOOKUP is not set
+# CONFIG_FEATURE_NSLOOKUP_BIG is not set
+# CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS is not set
+# CONFIG_NTPD is not set
+# CONFIG_FEATURE_NTPD_SERVER is not set
+# CONFIG_FEATURE_NTPD_CONF is not set
+# CONFIG_FEATURE_NTP_AUTH is not set
+CONFIG_PING=y
+CONFIG_PING6=y
+CONFIG_FEATURE_FANCY_PING=y
+# CONFIG_PSCAN is not set
+# CONFIG_ROUTE is not set
+# CONFIG_SLATTACH is not set
+# CONFIG_SSL_CLIENT is not set
+# CONFIG_TC is not set
+# CONFIG_FEATURE_TC_INGRESS is not set
+# CONFIG_TCPSVD is not set
+# CONFIG_UDPSVD is not set
+# CONFIG_TELNET is not set
+# CONFIG_FEATURE_TELNET_TTYPE is not set
+# CONFIG_FEATURE_TELNET_AUTOLOGIN is not set
+# CONFIG_FEATURE_TELNET_WIDTH is not set
+# CONFIG_TELNETD is not set
+# CONFIG_FEATURE_TELNETD_STANDALONE is not set
+# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
+# CONFIG_TFTP is not set
+# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
+# CONFIG_FEATURE_TFTP_HPA_COMPAT is not set
+# CONFIG_TFTPD is not set
+# CONFIG_FEATURE_TFTP_GET is not set
+# CONFIG_FEATURE_TFTP_PUT is not set
+# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
+# CONFIG_TFTP_DEBUG is not set
+# CONFIG_TLS is not set
+CONFIG_TRACEROUTE=y
+CONFIG_TRACEROUTE6=y
+CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
+CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
+# CONFIG_TUNCTL is not set
+# CONFIG_FEATURE_TUNCTL_UG is not set
+# CONFIG_VCONFIG is not set
+# CONFIG_WGET is not set
+# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+# CONFIG_FEATURE_WGET_STATUSBAR is not set
+# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
+# CONFIG_FEATURE_WGET_TIMEOUT is not set
+# CONFIG_FEATURE_WGET_HTTPS is not set
+# CONFIG_FEATURE_WGET_OPENSSL is not set
+# CONFIG_WHOIS is not set
+# CONFIG_ZCIP is not set
+# CONFIG_UDHCPD is not set
+# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
+# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
+CONFIG_DHCPD_LEASES_FILE=""
+# CONFIG_DUMPLEASES is not set
+# CONFIG_DHCPRELAY is not set
+# CONFIG_UDHCPC is not set
+# CONFIG_FEATURE_UDHCPC_ARPING is not set
+# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set
+CONFIG_UDHCPC_DEFAULT_SCRIPT=""
+# CONFIG_UDHCPC6 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set
+# CONFIG_FEATURE_UDHCPC6_RFC5970 is not set
+# CONFIG_FEATURE_UDHCP_PORT is not set
+CONFIG_UDHCP_DEBUG=0
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0
+# CONFIG_FEATURE_UDHCP_RFC3397 is not set
+# CONFIG_FEATURE_UDHCP_8021Q is not set
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
+
+#
+# Print Utilities
+#
+# CONFIG_LPD is not set
+# CONFIG_LPR is not set
+# CONFIG_LPQ is not set
+
+#
+# Mail Utilities
+#
+# CONFIG_MAKEMIME is not set
+# CONFIG_POPMAILDIR is not set
+# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
+# CONFIG_REFORMIME is not set
+# CONFIG_FEATURE_REFORMIME_COMPAT is not set
+# CONFIG_SENDMAIL is not set
+CONFIG_FEATURE_MIME_CHARSET=""
+
+#
+# Process Utilities
+#
+# CONFIG_FREE is not set
+# CONFIG_FUSER is not set
+# CONFIG_IOSTAT is not set
+# CONFIG_KILL is not set
+# CONFIG_KILLALL is not set
+# CONFIG_KILLALL5 is not set
+# CONFIG_LSOF is not set
+# CONFIG_MPSTAT is not set
+# CONFIG_NMETER is not set
+# CONFIG_PGREP is not set
+# CONFIG_PKILL is not set
+# CONFIG_PIDOF is not set
+# CONFIG_FEATURE_PIDOF_SINGLE is not set
+# CONFIG_FEATURE_PIDOF_OMIT is not set
+# CONFIG_PMAP is not set
+# CONFIG_POWERTOP is not set
+# CONFIG_FEATURE_POWERTOP_INTERACTIVE is not set
+# CONFIG_PS is not set
+# CONFIG_FEATURE_PS_WIDE is not set
+# CONFIG_FEATURE_PS_LONG is not set
+# CONFIG_FEATURE_PS_TIME is not set
+# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
+# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
+# CONFIG_PSTREE is not set
+# CONFIG_PWDX is not set
+# CONFIG_SMEMCAP is not set
+# CONFIG_BB_SYSCTL is not set
+# CONFIG_TOP is not set
+# CONFIG_FEATURE_TOP_INTERACTIVE is not set
+# CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set
+# CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS is not set
+# CONFIG_FEATURE_TOP_SMP_CPU is not set
+# CONFIG_FEATURE_TOP_DECIMALS is not set
+# CONFIG_FEATURE_TOP_SMP_PROCESS is not set
+# CONFIG_FEATURE_TOPMEM is not set
+# CONFIG_UPTIME is not set
+# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set
+# CONFIG_WATCH is not set
+# CONFIG_FEATURE_SHOW_THREADS is not set
+
+#
+# Runit Utilities
+#
+# CONFIG_CHPST is not set
+# CONFIG_SETUIDGID is not set
+# CONFIG_ENVUIDGID is not set
+# CONFIG_ENVDIR is not set
+# CONFIG_SOFTLIMIT is not set
+# CONFIG_RUNSV is not set
+# CONFIG_RUNSVDIR is not set
+# CONFIG_FEATURE_RUNSVDIR_LOG is not set
+# CONFIG_SV is not set
+CONFIG_SV_DEFAULT_SERVICE_DIR=""
+# CONFIG_SVC is not set
+# CONFIG_SVOK is not set
+# CONFIG_SVLOGD is not set
+# CONFIG_CHCON is not set
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETSEBOOL is not set
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_MATCHPATHCON is not set
+# CONFIG_RUNCON is not set
+# CONFIG_SELINUXENABLED is not set
+# CONFIG_SESTATUS is not set
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFILES is not set
+# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_SETSEBOOL is not set
+
+#
+# Shells
+#
+# CONFIG_SH_IS_ASH is not set
+# CONFIG_SH_IS_HUSH is not set
+CONFIG_SH_IS_NONE=y
+# CONFIG_BASH_IS_ASH is not set
+# CONFIG_BASH_IS_HUSH is not set
+CONFIG_BASH_IS_NONE=y
+# CONFIG_SHELL_ASH is not set
+# CONFIG_ASH is not set
+# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set
+# CONFIG_ASH_INTERNAL_GLOB is not set
+# CONFIG_ASH_BASH_COMPAT is not set
+# CONFIG_ASH_BASH_SOURCE_CURDIR is not set
+# CONFIG_ASH_BASH_NOT_FOUND_HOOK is not set
+# CONFIG_ASH_JOB_CONTROL is not set
+# CONFIG_ASH_ALIAS is not set
+# CONFIG_ASH_RANDOM_SUPPORT is not set
+# CONFIG_ASH_EXPAND_PRMT is not set
+# CONFIG_ASH_IDLE_TIMEOUT is not set
+# CONFIG_ASH_MAIL is not set
+# CONFIG_ASH_ECHO is not set
+# CONFIG_ASH_PRINTF is not set
+# CONFIG_ASH_TEST is not set
+# CONFIG_ASH_HELP is not set
+# CONFIG_ASH_GETOPTS is not set
+# CONFIG_ASH_CMDCMD is not set
+# CONFIG_CTTYHACK is not set
+# CONFIG_HUSH is not set
+# CONFIG_SHELL_HUSH is not set
+# CONFIG_HUSH_BASH_COMPAT is not set
+# CONFIG_HUSH_BRACE_EXPANSION is not set
+# CONFIG_HUSH_LINENO_VAR is not set
+# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set
+# CONFIG_HUSH_INTERACTIVE is not set
+# CONFIG_HUSH_SAVEHISTORY is not set
+# CONFIG_HUSH_JOB is not set
+# CONFIG_HUSH_TICK is not set
+# CONFIG_HUSH_IF is not set
+# CONFIG_HUSH_LOOPS is not set
+# CONFIG_HUSH_CASE is not set
+# CONFIG_HUSH_FUNCTIONS is not set
+# CONFIG_HUSH_LOCAL is not set
+# CONFIG_HUSH_RANDOM_SUPPORT is not set
+# CONFIG_HUSH_MODE_X is not set
+# CONFIG_HUSH_ECHO is not set
+# CONFIG_HUSH_PRINTF is not set
+# CONFIG_HUSH_TEST is not set
+# CONFIG_HUSH_HELP is not set
+# CONFIG_HUSH_EXPORT is not set
+# CONFIG_HUSH_EXPORT_N is not set
+# CONFIG_HUSH_READONLY is not set
+# CONFIG_HUSH_KILL is not set
+# CONFIG_HUSH_WAIT is not set
+# CONFIG_HUSH_COMMAND is not set
+# CONFIG_HUSH_TRAP is not set
+# CONFIG_HUSH_TYPE is not set
+# CONFIG_HUSH_TIMES is not set
+# CONFIG_HUSH_READ is not set
+# CONFIG_HUSH_SET is not set
+# CONFIG_HUSH_UNSET is not set
+# CONFIG_HUSH_ULIMIT is not set
+# CONFIG_HUSH_UMASK is not set
+# CONFIG_HUSH_GETOPTS is not set
+# CONFIG_HUSH_MEMLEAK is not set
+
+#
+# Options common to all shells
+#
+# CONFIG_FEATURE_SH_MATH is not set
+# CONFIG_FEATURE_SH_MATH_64 is not set
+# CONFIG_FEATURE_SH_MATH_BASE is not set
+# CONFIG_FEATURE_SH_EXTRA_QUIET is not set
+# CONFIG_FEATURE_SH_STANDALONE is not set
+# CONFIG_FEATURE_SH_NOFORK is not set
+# CONFIG_FEATURE_SH_READ_FRAC is not set
+# CONFIG_FEATURE_SH_HISTFILESIZE is not set
+# CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS is not set
+
+#
+# System Logging Utilities
+#
+# CONFIG_KLOGD is not set
+# CONFIG_FEATURE_KLOGD_KLOGCTL is not set
+# CONFIG_LOGGER is not set
+# CONFIG_LOGREAD is not set
+# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
+# CONFIG_SYSLOGD is not set
+# CONFIG_FEATURE_ROTATE_LOGFILE is not set
+# CONFIG_FEATURE_REMOTE_LOG is not set
+# CONFIG_FEATURE_SYSLOGD_DUP is not set
+# CONFIG_FEATURE_SYSLOGD_CFG is not set
+# CONFIG_FEATURE_SYSLOGD_PRECISE_TIMESTAMPS is not set
+CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=0
+# CONFIG_FEATURE_IPC_SYSLOG is not set
+CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0
+# CONFIG_FEATURE_KMSG_SYSLOG is not set
diff --git a/core-mod/core/busybox/files/acpid.run b/core-mod/core/busybox/files/acpid.run
new file mode 100644
index 0000000..5baf800
--- /dev/null
+++ b/core-mod/core/busybox/files/acpid.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec acpid -f
diff --git a/core-mod/core/busybox/files/crond.run b/core-mod/core/busybox/files/crond.run
new file mode 100644
index 0000000..29647de
--- /dev/null
+++ b/core-mod/core/busybox/files/crond.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec crond -f
diff --git a/core-mod/core/busybox/files/mdev.conf b/core-mod/core/busybox/files/mdev.conf
new file mode 100644
index 0000000..0f19932
--- /dev/null
+++ b/core-mod/core/busybox/files/mdev.conf
@@ -0,0 +1,37 @@
+null        root:root 666 @chmod 666 $MDEV
+zero        root:root 666
+full        root:root 666
+
+random      root:root 444
+urandom     root:root 444
+kmem        root:root 640
+mem         root:root 640
+port        root:root 640
+
+console     root:tty  600 @chmod 600 $MDEV
+ptmx        root:tty  666
+pty.*       root:tty  660
+
+usbdev[0-9].[0-9]* root:root 660 !
+
+tty         root:tty  666
+tty[0-9]*   root:tty  660
+vcsa*[0-9]* root:tty  660
+
+SUBSYSTEM=input;.* root:input 660
+
+adsp        root:audio 660 >sound/
+audio       root:audio 660 >sound/
+dsp         root:audio 660 >sound/
+mixer       root:audio 660 >sound/
+sequencer.* root:audio 660 >sound/
+
+card[0-9]   root:video 660 =dri/
+
+agpgart     root:root  660 >misc/
+psaux       root:root  660 >misc/
+rtc         root:root  664 >misc/
+
+dri/.*      root:video 660
+snd/.*      root:audio 660
+
diff --git a/core-mod/core/busybox/files/mdev.run b/core-mod/core/busybox/files/mdev.run
new file mode 100644
index 0000000..b7f5b44
--- /dev/null
+++ b/core-mod/core/busybox/files/mdev.run
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# Null the legacy hotplugger as the
+# service will take over from here.
+printf '\n' 2>/dev/null \
+    > /proc/sys/kernel/hotplug
+
+exec mdev -df
diff --git a/core-mod/core/busybox/files/ntpd.run b/core-mod/core/busybox/files/ntpd.run
new file mode 100644
index 0000000..b679f74
--- /dev/null
+++ b/core-mod/core/busybox/files/ntpd.run
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec ntpd -n
diff --git a/core-mod/core/busybox/files/syslogd.run b/core-mod/core/busybox/files/syslogd.run
new file mode 100644
index 0000000..cdcfeaf
--- /dev/null
+++ b/core-mod/core/busybox/files/syslogd.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec syslogd -n
diff --git a/core-mod/core/busybox/patches/adduser-no-setgid.patch b/core-mod/core/busybox/patches/adduser-no-setgid.patch
new file mode 100644
index 0000000..613c2ad
--- /dev/null
+++ b/core-mod/core/busybox/patches/adduser-no-setgid.patch
@@ -0,0 +1,12 @@
+diff --git a/loginutils/adduser.c b/loginutils/adduser.c
+index 850c810..68db3cb 100644
+--- a/loginutils/adduser.c
++++ b/loginutils/adduser.c
+@@ -299,7 +299,6 @@ int adduser_main(int argc UNUSED_PARAM, char **argv)
+ 		}
+ 		if ((mkdir_err != 0 && errno != EEXIST)
+ 		 || chown(pw.pw_dir, pw.pw_uid, pw.pw_gid) != 0
+-		 || chmod(pw.pw_dir, 02755) != 0 /* set setgid bit on homedir */
+ 		) {
+ 			bb_simple_perror_msg(pw.pw_dir);
+ 		}
diff --git a/core-mod/core/busybox/patches/fix-UB+clang.patch b/core-mod/core/busybox/patches/fix-UB+clang.patch
new file mode 100644
index 0000000..e442bfc
--- /dev/null
+++ b/core-mod/core/busybox/patches/fix-UB+clang.patch
@@ -0,0 +1,65 @@
+diff --git a/coreutils/test.c b/coreutils/test.c
+index 7c65743..ac0ac4e 100644
+--- a/coreutils/test.c
++++ b/coreutils/test.c
+@@ -435,7 +435,7 @@ struct test_statics {
+ };
+ 
+ /* See test_ptr_hack.c */
+-extern struct test_statics *const test_ptr_to_statics;
++extern struct test_statics *test_ptr_to_statics;
+ 
+ #define S (*test_ptr_to_statics)
+ #define args            (S.args         )
+diff --git a/include/libbb.h b/include/libbb.h
+index cae5465..adbf4b8 100644
+--- a/include/libbb.h
++++ b/include/libbb.h
+@@ -342,7 +342,7 @@ struct BUG_off_t_size_is_misdetected {
+ #if defined(errno)
+ /* If errno is a define, assume it's "define errno (*__errno_location())"
+  * and we will cache it's result in this variable */
+-extern int *const bb_errno;
++extern int *bb_errno;
+ #undef errno
+ #define errno (*bb_errno)
+ #define bb_cached_errno_ptr 1
+@@ -2228,7 +2228,7 @@ struct globals;
+ /* '*const' ptr makes gcc optimize code much better.
+  * Magic prevents ptr_to_globals from going into rodata.
+  * If you want to assign a value, use SET_PTR_TO_GLOBALS(x) */
+-extern struct globals *const ptr_to_globals;
++extern struct globals *ptr_to_globals;
+ 
+ #if defined(__clang_major__) && __clang_major__ >= 9
+ /* Clang/llvm drops assignment to "constant" storage. Silently.
+diff --git a/libbb/lineedit.c b/libbb/lineedit.c
+index 75de88e..78ad893 100644
+--- a/libbb/lineedit.c
++++ b/libbb/lineedit.c
+@@ -192,7 +192,7 @@ struct lineedit_statics {
+ };
+ 
+ /* See lineedit_ptr_hack.c */
+-extern struct lineedit_statics *const lineedit_ptr_to_statics;
++extern struct lineedit_statics * lineedit_ptr_to_statics;
+ 
+ #define S (*lineedit_ptr_to_statics)
+ #define state            (S.state           )
+diff --git a/shell/ash.c b/shell/ash.c
+index f16d7fb..0eff957 100644
+--- a/shell/ash.c
++++ b/shell/ash.c
+@@ -300,10 +300,9 @@ typedef long arith_t;
+  * set "-DBB_GLOBAL_CONST=''" in CONFIG_EXTRA_CFLAGS to disable
+  * this optimization.
+  */
+-#ifndef BB_GLOBAL_CONST
+-# define BB_GLOBAL_CONST const
+-#endif
+ 
++#undef BB_GLOBAL_CONST
++#define BB_GLOBAL_CONST
+ 
+ /* ============ Hash table sizes. Configurable. */
+ 
diff --git a/core-mod/core/busybox/patches/fsck-resolve-uuid.patch b/core-mod/core/busybox/patches/fsck-resolve-uuid.patch
new file mode 100644
index 0000000..fd2503e
--- /dev/null
+++ b/core-mod/core/busybox/patches/fsck-resolve-uuid.patch
@@ -0,0 +1,56 @@
+From 2e673aac06d661038001286fd389d1b45c511c66 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Tue, 28 Nov 2017 13:23:17 +0100
+Subject: [PATCH] fsck: resolve LABEL=.../UUID=... spec to device
+
+---
+ e2fsprogs/fsck.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c
+index f5aa3dbe4..e2edc9747 100644
+--- a/e2fsprogs/fsck.c
++++ b/e2fsprogs/fsck.c
+@@ -60,6 +60,7 @@
+ //usage:     "\n	-t TYPE	List of filesystem types to check"
+ 
+ #include "libbb.h"
++#include "volume_id.h"
+ #include "common_bufsiz.h"
+ 
+ /* "progress indicator" code is somewhat buggy and ext[23] specific.
+@@ -524,12 +525,13 @@ static int wait_many(int flags)
+  * Execute a particular fsck program, and link it into the list of
+  * child processes we are waiting for.
+  */
+-static void execute(const char *type, const char *device,
++static void execute(const char *type, const char *spec,
+ 		const char *mntpt /*, int interactive */)
+ {
+ 	int i;
+ 	struct fsck_instance *inst;
+ 	pid_t pid;
++	char *device = (char *)spec;
+ 
+ 	G.args[0] = xasprintf("fsck.%s", type);
+ 
+@@ -544,7 +546,8 @@ static void execute(const char *type, const char *device,
+ 	}
+ #endif
+ 
+-	G.args[G.num_args - 2] = (char*)device;
++	resolve_mount_spec(&device);
++	G.args[G.num_args - 2] = device;
+ 	/* G.args[G.num_args - 1] = NULL; - already is */
+ 
+ 	if (G.verbose || G.noexecute) {
+@@ -973,9 +976,6 @@ int fsck_main(int argc UNUSED_PARAM, char **argv)
+ 
+ 		/* "/dev/blk" or "/path" or "UUID=xxx" or "LABEL=xxx" */
+ 		if ((arg[0] == '/' && !opts_for_fsck) || strchr(arg, '=')) {
+-// FIXME: must check that arg is a blkdev, or resolve
+-// "/path", "UUID=xxx" or "LABEL=xxx" into block device name
+-// ("UUID=xxx"/"LABEL=xxx" can probably shifted to fsck.auto duties)
+ 			devices = xrealloc_vector(devices, 2, num_devices);
+ 			devices[num_devices++] = arg;
+ 			continue;
diff --git a/core-mod/core/busybox/patches/install-fix-chown.patch b/core-mod/core/busybox/patches/install-fix-chown.patch
new file mode 100644
index 0000000..31ecd3c
--- /dev/null
+++ b/core-mod/core/busybox/patches/install-fix-chown.patch
@@ -0,0 +1,36 @@
+chown must precede chmod because on some systems,
+chown clears the set[ug]id bits for non-superusers,
+resulting in incorrect permissions.
+diff --git a/coreutils/install.c b/coreutils/install.c
+index 8270490..0256aeb 100644
+--- a/coreutils/install.c
++++ b/coreutils/install.c
+@@ -244,6 +244,14 @@ int install_main(int argc, char **argv)
+ 			}
+ 		}
+ 
++		/* Set the user and group id */
++		if ((opts & (OPT_OWNER|OPT_GROUP))
++		 && lchown(dest, uid, gid) == -1
++		) {
++			bb_perror_msg("can't change %s of %s", "ownership", dest);
++			ret = EXIT_FAILURE;
++		}
++
+ 		/* Set the file mode (always, not only with -m).
+ 		 * GNU coreutils 6.10 is not affected by umask. */
+ 		if (chmod(dest, mode) == -1) {
+@@ -254,13 +262,6 @@ int install_main(int argc, char **argv)
+ 		if (use_default_selinux_context)
+ 			setdefaultfilecon(dest);
+ #endif
+-		/* Set the user and group id */
+-		if ((opts & (OPT_OWNER|OPT_GROUP))
+-		 && lchown(dest, uid, gid) == -1
+-		) {
+-			bb_perror_msg("can't change %s of %s", "ownership", dest);
+-			ret = EXIT_FAILURE;
+-		}
+  next:
+ 		if (ENABLE_FEATURE_CLEAN_UP && isdir)
+ 			free(dest);
diff --git a/core-mod/core/busybox/patches/libressl.patch b/core-mod/core/busybox/patches/libressl.patch
new file mode 100644
index 0000000..91350bb
--- /dev/null
+++ b/core-mod/core/busybox/patches/libressl.patch
@@ -0,0 +1,56 @@
+From a32d2713828bc70762956c9d2f203d2202d1718d Mon Sep 17 00:00:00 2001
+From: git-bruh <e817509a-8ee9-4332-b0ad-3a6bdf9ab63f@aleeas.com>
+Date: Wed, 17 Feb 2021 10:42:13 +0530
+Subject: [PATCH] Revert "wget: fix openssl options for cert verification"
+
+This reverts commit fc2ce04a38ebfb03f9aeff205979786839cd5a7c.
+---
+ networking/wget.c | 21 ++++-----------------
+ 1 file changed, 4 insertions(+), 17 deletions(-)
+
+diff --git a/networking/wget.c b/networking/wget.c
+index e660c279c..d4a5966b6 100644
+--- a/networking/wget.c
++++ b/networking/wget.c
+@@ -670,8 +670,7 @@ static int spawn_https_helper_openssl(const char *host, unsigned port)
+ 	pid = xvfork();
+ 	if (pid == 0) {
+ 		/* Child */
+-		char *argv[13];
+-		char **argp;
++		char *argv[9];
+ 
+ 		close(sp[0]);
+ 		xmove_fd(sp[1], 0);
+@@ -694,25 +693,13 @@ static int spawn_https_helper_openssl(const char *host, unsigned port)
+ 		 * TLS server_name (SNI) field are FQDNs (DNS hostnames).
+ 		 * IPv4 and IPv6 addresses, port numbers are not allowed.
+ 		 */
+-		argp = &argv[5];
+ 		if (!is_ip_address(servername)) {
+-			*argp++ = (char*)"-servername"; //[5]
+-			*argp++ = (char*)servername;    //[6]
++			argv[5] = (char*)"-servername";
++			argv[6] = (char*)servername;
+ 		}
+ 		if (!(option_mask32 & WGET_OPT_NO_CHECK_CERT)) {
+-			/* Abort on bad server certificate */
+-			*argp++ = (char*)"-verify";              //[7]
+-			*argp++ = (char*)"100";                  //[8]
+-			*argp++ = (char*)"-verify_return_error"; //[9]
+-			if (!is_ip_address(servername)) {
+-				*argp++ = (char*)"-verify_hostname"; //[10]
+-				*argp++ = (char*)servername;         //[11]
+-			} else {
+-				*argp++ = (char*)"-verify_ip"; //[10]
+-				*argp++ = (char*)host;         //[11]
+-			}
++			argv[7] = (char*)"-verify_return_error";
+ 		}
+-		//[12] (or earlier) is NULL terminator
+ 
+ 		BB_EXECVP(argv[0], argv);
+ 		xmove_fd(3, 2);
+-- 
+2.30.1
+
diff --git a/core-mod/core/busybox/patches/lsusb-vendor-product.patch b/core-mod/core/busybox/patches/lsusb-vendor-product.patch
new file mode 100644
index 0000000..45747ae
--- /dev/null
+++ b/core-mod/core/busybox/patches/lsusb-vendor-product.patch
@@ -0,0 +1,53 @@
+diff --git a/util-linux/lsusb.c b/util-linux/lsusb.c
+index e27aa7f31..b7b7abb99 100644
+--- a/util-linux/lsusb.c
++++ b/util-linux/lsusb.c
+@@ -15,7 +15,16 @@
+ //config:	system and devices connected to them.
+ //config:
+ //config:	This version uses sysfs (/sys/bus/usb/devices) only.
+-
++//config:
++//config:config FEATURE_LSUSB_STRINGS
++//config:	bool "Print vendor and product strings if they exist"
++//config:	default y
++//config:	depends on LSUSB
++//config:	help
++//config:	lsusb is a utility for displaying information about USB busses in the
++//config:	system and devices connected to them. This option prints out the
++//config:	vendor and product strings if they are available. This option
++//config:	replicates a simpler version of util-linux lsusb output.
+ //applet:IF_LSUSB(APPLET_NOEXEC(lsusb, lsusb, BB_DIR_USR_BIN, BB_SUID_DROP, lsusb))
+ 
+ //kbuild:lib-$(CONFIG_LSUSB) += lsusb.o
+@@ -37,6 +46,16 @@ static int FAST_FUNC fileAction(
+ 	int product_vid = 0, product_did = 0;
+ 	char *uevent_filename = concat_path_file(fileName, "/uevent");
+ 
++#if ENABLE_FEATURE_LSUSB_STRINGS
++	ssize_t vlen, plen;
++	// max length standard allows, any longer and someones being naughty
++	char vendor[256] = { 0 }, product[256] = { 0 };
++	vlen = open_read_close(concat_path_file(fileName, "/manufacturer"), vendor, sizeof(vendor));
++	vendor[vlen - 1] = '\0';
++	plen = open_read_close(concat_path_file(fileName, "/product"), product, sizeof(product));
++	product[plen - 1] = '\0';
++#endif
++
+ 	parser = config_open2(uevent_filename, fopen_for_read);
+ 	free(uevent_filename);
+ 
+@@ -64,7 +83,12 @@ static int FAST_FUNC fileAction(
+ 	config_close(parser);
+ 
+ 	if (busnum) {
+-		printf("Bus %s Device %s: ID %04x:%04x\n", busnum, devnum, product_vid, product_did);
++		printf("Bus %s Device %s: ID %04x:%04x", busnum, devnum, product_vid, product_did);
++#if ENABLE_FEATURE_LSUSB_STRINGS
++		if(vlen) printf(" %s", vendor);
++		if(plen) printf(" %s", product);
++#endif
++		printf("\n");
+ 		free(busnum);
+ 		free(devnum);
+ 	}
diff --git a/core-mod/core/busybox/patches/modprobe-kernel-version.patch b/core-mod/core/busybox/patches/modprobe-kernel-version.patch
new file mode 100644
index 0000000..2d4274a
--- /dev/null
+++ b/core-mod/core/busybox/patches/modprobe-kernel-version.patch
@@ -0,0 +1,71 @@
+diff --git a/modutils/modprobe.c b/modutils/modprobe.c
+index 0a372a049..ecb29a8fd 100644
+--- a/modutils/modprobe.c
++++ b/modutils/modprobe.c
+@@ -111,7 +111,7 @@
+ //usage:       "   from the command line\n"
+ //usage:
+ //usage:#define modprobe_trivial_usage
+-//usage:	"[-alrqvsD" IF_FEATURE_MODPROBE_BLACKLIST("b") "]"
++//usage:	"[-alrqvsD" IF_FEATURE_MODPROBE_BLACKLIST("b") "]" " [-S VERSION]"
+ //usage:	" MODULE" IF_FEATURE_CMDLINE_MODULE_OPTIONS(" [SYMBOL=VALUE]...")
+ //usage:#define modprobe_full_usage "\n\n"
+ //usage:       "	-a	Load multiple MODULEs"
+@@ -121,6 +121,7 @@
+ //usage:     "\n	-v	Verbose"
+ //usage:     "\n	-s	Log to syslog"
+ //usage:     "\n	-D	Show dependencies"
++//usage:     "\n	-S	Set kernel version"
+ //usage:	IF_FEATURE_MODPROBE_BLACKLIST(
+ //usage:     "\n	-b	Apply blacklist to module names too"
+ //usage:	)
+@@ -131,7 +132,7 @@
+  * Note2: -b is always accepted, but if !FEATURE_MODPROBE_BLACKLIST,
+  * it is a no-op.
+  */
+-#define MODPROBE_OPTS  "alrDb"
++#define MODPROBE_OPTS  "alrDS:b"
+ /* -a and -D _are_ in fact compatible */
+ #define MODPROBE_COMPLEMENTARY "q-v:v-q:l--arD:r--alD:a--lr:D--rl"
+ //#define MODPROBE_OPTS  "acd:lnrt:C:b"
+@@ -147,7 +148,8 @@ enum {
+ 	//OPT_VERONLY    = (INSMOD_OPT_UNUSED << x), /* V */
+ 	//OPT_CONFIGFILE = (INSMOD_OPT_UNUSED << x), /* C */
+ 	OPT_SHOW_DEPS    = (INSMOD_OPT_UNUSED << 3), /* D */
+-	OPT_BLACKLIST    = (INSMOD_OPT_UNUSED << 4) * ENABLE_FEATURE_MODPROBE_BLACKLIST,
++	OPT_KERNEL       = (INSMOD_OPT_UNUSED << 4), /* S */
++	OPT_BLACKLIST    = (INSMOD_OPT_UNUSED << 5) * ENABLE_FEATURE_MODPROBE_BLACKLIST,
+ };
+ #if ENABLE_LONG_OPTS
+ static const char modprobe_longopts[] ALIGN1 =
+@@ -560,6 +562,7 @@ int modprobe_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+ int modprobe_main(int argc UNUSED_PARAM, char **argv)
+ {
+ 	int rc;
++	char *kernel;
+ 	unsigned opt;
+ 	struct module_entry *me;
+ 
+@@ -567,13 +570,20 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
+ 
+ 	opt = getopt32long(argv, "^" INSMOD_OPTS MODPROBE_OPTS "\0" MODPROBE_COMPLEMENTARY,
+ 			modprobe_longopts
+-			INSMOD_ARGS
++			INSMOD_ARGS,
++			&kernel
+ 	);
+ 	argv += optind;
+ 
++	/* Set user specified kernel version */
++	if (opt & OPT_KERNEL) {
++	    safe_strncpy(G.uts.release, kernel, sizeof(G.uts.release));
++	} else {
++	    uname(&G.uts);
++	}
++
+ 	/* Goto modules location */
+ 	xchdir(CONFIG_DEFAULT_MODULES_DIR);
+-	uname(&G.uts);
+ 	xchdir(G.uts.release);
+ 
+ 	if (opt & OPT_LIST_ONLY) {
\ No newline at end of file
diff --git a/core-mod/core/busybox/patches/print-unicode.patch b/core-mod/core/busybox/patches/print-unicode.patch
new file mode 100644
index 0000000..178fb93
--- /dev/null
+++ b/core-mod/core/busybox/patches/print-unicode.patch
@@ -0,0 +1,22 @@
+diff --git a/libbb/printable_string.c b/libbb/printable_string.c
+index a814fd0..f4c7b00 100644
+--- a/libbb/printable_string.c
++++ b/libbb/printable_string.c
+@@ -28,8 +28,6 @@ const char* FAST_FUNC printable_string2(uni_stat_t *stats, const char *str)
+ 		}
+ 		if (c < ' ')
+ 			break;
+-		if (c >= 0x7f)
+-			break;
+ 		s++;
+ 	}
+ 
+@@ -42,7 +40,7 @@ const char* FAST_FUNC printable_string2(uni_stat_t *stats, const char *str)
+ 			unsigned char c = *d;
+ 			if (c == '\0')
+ 				break;
+-			if (c < ' ' || c >= 0x7f)
++			if (c < ' ')
+ 				*d = '?';
+ 			d++;
+ 		}
diff --git a/core-mod/core/busybox/patches/unzip-usage-no-error.patch b/core-mod/core/busybox/patches/unzip-usage-no-error.patch
new file mode 100644
index 0000000..27b2336
--- /dev/null
+++ b/core-mod/core/busybox/patches/unzip-usage-no-error.patch
@@ -0,0 +1,20 @@
+diff --git a/archival/unzip.c b/archival/unzip.c
+index d94bbab..f424fb0 100644
+--- a/archival/unzip.c
++++ b/archival/unzip.c
+@@ -592,6 +592,7 @@ int unzip_main(int argc, char **argv)
+ 			break;
+ 
+ 		default:
++			xfunc_error_retval = 0;
+ 			bb_show_usage();
+ 		}
+ 	}
+@@ -615,6 +616,7 @@ int unzip_main(int argc, char **argv)
+ #endif
+ 
+ 	if (!src_fn) {
++		xfunc_error_retval = 0;
+ 		bb_show_usage();
+ 	}
+ 
diff --git a/core-mod/core/busybox/sources b/core-mod/core/busybox/sources
new file mode 100644
index 0000000..527fbb2
--- /dev/null
+++ b/core-mod/core/busybox/sources
@@ -0,0 +1,18 @@
+https://git.busybox.net/busybox/snapshot/busybox-1_33_1.tar.gz
+files/.config
+files/.config-suid
+files/acpid.run
+files/crond.run
+files/mdev.conf
+files/mdev.run
+files/ntpd.run
+files/syslogd.run
+patches/adduser-no-setgid.patch
+patches/fix-UB+clang.patch
+patches/fsck-resolve-uuid.patch
+patches/install-fix-chown.patch
+patches/libressl.patch
+patches/lsusb-vendor-product.patch
+patches/modprobe-kernel-version.patch
+patches/print-unicode.patch
+patches/unzip-usage-no-error.patch
diff --git a/core-mod/core/busybox/version b/core-mod/core/busybox/version
new file mode 100644
index 0000000..741d813
--- /dev/null
+++ b/core-mod/core/busybox/version
@@ -0,0 +1 @@
+1.33.1 1
diff --git a/core-mod/core/bzip2/build b/core-mod/core/bzip2/build
new file mode 100755
index 0000000..ac1055b
--- /dev/null
+++ b/core-mod/core/bzip2/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+make CC="${CC:-cc} $CFLAGS -fPIC $LDFLAGS" -f Makefile-libbz2_so
+make CC="${CC:-cc} $CFLAGS -fPIC $LDFLAGS" bzip2recover libbz2.a
+
+for bin in bzip2-shared bzdiff bzgrep bzip2recover bzmore; do
+    install -Dm755 "$bin" "$1/usr/bin/${bin%%-shared}"
+done
+
+install -Dm755 libbz2.so.1.0.8 "$1/usr/lib/libbz2.so.1.0.8"
+install -Dm644 libbz2.a        "$1/usr/lib/libbz2.a"
+install -Dm644 bzip2.1         "$1/usr/share/man/man1/bzip2.1"
+install -Dm644 bzlib.h         "$1/usr/include/bzlib.h"
+
+for lib in libbz2.so libbz2.so.1 libbz2.so.1.0; do
+    ln -sf libbz2.so.1.0.8 "$1/usr/lib/$lib"
+done
+
+ln -sf bzip2 "$1/usr/bin/bunzip2"
+ln -sf bzip2 "$1/usr/bin/bzcat"
diff --git a/core-mod/core/bzip2/checksums b/core-mod/core/bzip2/checksums
new file mode 100644
index 0000000..b50d346
--- /dev/null
+++ b/core-mod/core/bzip2/checksums
@@ -0,0 +1 @@
+ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269  bzip2-1.0.8.tar.gz
diff --git a/core-mod/core/bzip2/sources b/core-mod/core/bzip2/sources
new file mode 100644
index 0000000..a04bc1b
--- /dev/null
+++ b/core-mod/core/bzip2/sources
@@ -0,0 +1 @@
+https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz
diff --git a/core-mod/core/bzip2/version b/core-mod/core/bzip2/version
new file mode 100644
index 0000000..0bc3d1e
--- /dev/null
+++ b/core-mod/core/bzip2/version
@@ -0,0 +1 @@
+1.0.8 1
diff --git a/core-mod/core/curl/build b/core-mod/core/curl/build
new file mode 100755
index 0000000..ac49964
--- /dev/null
+++ b/core-mod/core/curl/build
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-ipv6 \
+    --enable-unix-sockets \
+    --enable-hidden-symbols \
+    --without-libidn \
+    --without-libidn2 \
+    --disable-manual \
+    --disable-ldap \
+    --disable-ares \
+    --without-librtmp \
+    --without-icu \
+    --without-libpsl \
+    --with-pic \
+    --with-openssl \
+    --with-ca-fallback
+
+make curl_LDFLAGS=-all-static
+make DESTDIR="$1" install
diff --git a/core-mod/core/curl/checksums b/core-mod/core/curl/checksums
new file mode 100644
index 0000000..efca4bf
--- /dev/null
+++ b/core-mod/core/curl/checksums
@@ -0,0 +1 @@
+0f64582c54282f31c0de9f0a1a596b182776bd4df9a4c4a2a41bbeb54f62594b
diff --git a/core-mod/core/curl/depends b/core-mod/core/curl/depends
new file mode 100644
index 0000000..9ee911a
--- /dev/null
+++ b/core-mod/core/curl/depends
@@ -0,0 +1,2 @@
+libressl
+zlib
diff --git a/core-mod/core/curl/sources b/core-mod/core/curl/sources
new file mode 100644
index 0000000..4c9b3f0
--- /dev/null
+++ b/core-mod/core/curl/sources
@@ -0,0 +1 @@
+https://curl.haxx.se/download/curl-7.77.0.tar.xz
diff --git a/core-mod/core/curl/version b/core-mod/core/curl/version
new file mode 100644
index 0000000..2df10bc
--- /dev/null
+++ b/core-mod/core/curl/version
@@ -0,0 +1 @@
+7.77.0 1
diff --git a/core-mod/core/flex/build b/core-mod/core/flex/build
new file mode 100755
index 0000000..2a1bda0
--- /dev/null
+++ b/core-mod/core/flex/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    ac_cv_func_malloc_0_nonnull=yes \
+    ac_cv_func_realloc_0_nonnull=yes
+
+make
+make DESTDIR="$1" install
+
+ln -s flex "$1/usr/bin/lex"
diff --git a/core-mod/core/flex/checksums b/core-mod/core/flex/checksums
new file mode 100644
index 0000000..5f05df5
--- /dev/null
+++ b/core-mod/core/flex/checksums
@@ -0,0 +1 @@
+e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995  flex-2.6.4.tar.gz
diff --git a/core-mod/core/flex/depends b/core-mod/core/flex/depends
new file mode 100644
index 0000000..e8fb4a1
--- /dev/null
+++ b/core-mod/core/flex/depends
@@ -0,0 +1 @@
+m4 make
diff --git a/core-mod/core/flex/sources b/core-mod/core/flex/sources
new file mode 100644
index 0000000..c10fca7
--- /dev/null
+++ b/core-mod/core/flex/sources
@@ -0,0 +1 @@
+https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz
diff --git a/core-mod/core/flex/version b/core-mod/core/flex/version
new file mode 100644
index 0000000..030e21a
--- /dev/null
+++ b/core-mod/core/flex/version
@@ -0,0 +1 @@
+2.6.4 4
diff --git a/core-mod/core/gcc/build b/core-mod/core/gcc/build
new file mode 100755
index 0000000..fc3ad58
--- /dev/null
+++ b/core-mod/core/gcc/build
@@ -0,0 +1,75 @@
+#!/bin/sh -e
+
+# Make sure gmp is built with generic options.
+cp gcc/gmp/configfsf.guess gcc/gmp/config.guess
+cp gcc/gmp/configfsf.sub   gcc/gmp/config.sub
+
+# Use lib not lib64 by default.
+sed -i '/m64=/s/lib64/lib/' gcc/gcc/config/i386/t-linux64
+sed -i 's/lib64/lib/'       gcc/gcc/config/i386/linux64.h
+
+# Build must happen outside of gcc source.
+mkdir -p gcc-build
+cd gcc-build
+
+# Grab the system's GCC version.
+IFS=. read -r gcc_version _ 2>/dev/null \
+    < "$KISS_ROOT/var/db/kiss/installed/gcc/version" || gcc_version=null
+
+# Skip the bootstrap process if we are able.
+case $2 in "$gcc_version"*)
+    printf '%s\n' "Minor version difference, disabling bootstrap."
+    bootstrap=--disable-bootstrap
+esac
+
+export libat_cv_have_ifunc=no
+
+../gcc/configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    --mandir=/usr/share/man \
+    --infodir=/usr/share/info \
+    --disable-multilib \
+    --disable-symvers \
+    --disable-libmpx \
+    --disable-libmudflap \
+    --disable-libsanitizer \
+    --disable-werror \
+    --disable-fixed-point \
+    --disable-libstdcxx-pch \
+    --disable-nls \
+    --enable-checking=release \
+    --enable-__cxa_atexit \
+    --enable-default-pie \
+    --enable-default-ssp \
+    --enable-shared \
+    --enable-threads \
+    --enable-tls \
+    --enable-languages=c,c++ \
+    --without-included-gettext \
+    --with-zstd=no \
+    --with-system-zlib \
+    --build=x86_64-pc-linux-musl \
+    "${bootstrap:---enable-bootstrap}"
+
+make
+make DESTDIR="$1" install
+
+# Save 35MB.
+find "$1" -name libgtkpeer.a  -exec rm -f {} +
+find "$1" -name libgjsmalsa.a -exec rm -f {} +
+find "$1" -name libgij.a      -exec rm -f {} +
+
+# Some legacy programs will expect cc
+ln -s gcc "$1/usr/bin/cc"
+
+# POSIX compliance.
+install -Dm755 ../c99 "$1/usr/bin/c99"
+
+# Symlink for LTO.
+{
+    mkdir -p "$1/usr/lib/bfd-plugins"
+
+    ln -s "/usr/lib/gcc/x86_64-pc-linux-musl/$2/liblto_plugin.so" \
+          "$1/usr/lib/bfd-plugins/liblto_plugin.so"
+}
diff --git a/core-mod/core/gcc/checksums b/core-mod/core/gcc/checksums
new file mode 100644
index 0000000..a8bc890
--- /dev/null
+++ b/core-mod/core/gcc/checksums
@@ -0,0 +1,5 @@
+4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf
+fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2
+0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f
+17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459
+765614b3396d70bca3fa0ae4a813632486c6dca320e2bd13c8c39dca52be4a4c
diff --git a/core-mod/core/gcc/depends b/core-mod/core/gcc/depends
new file mode 100644
index 0000000..ca8b7e5
--- /dev/null
+++ b/core-mod/core/gcc/depends
@@ -0,0 +1,4 @@
+binutils
+bison  make
+flex   make
+zlib
diff --git a/core-mod/core/gcc/files/c99 b/core-mod/core/gcc/files/c99
new file mode 100644
index 0000000..692f092
--- /dev/null
+++ b/core-mod/core/gcc/files/c99
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec cc -std=c99 "$@"
diff --git a/core-mod/core/gcc/sources b/core-mod/core/gcc/sources
new file mode 100644
index 0000000..19bb893
--- /dev/null
+++ b/core-mod/core/gcc/sources
@@ -0,0 +1,5 @@
+https://gcc.gnu.org/pub/gcc/releases/gcc-11.1.0/gcc-11.1.0.tar.xz gcc
+https://ftp.gnu.org/gnu/gmp/gmp-6.2.1.tar.xz gcc/gmp
+https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.xz gcc/mpfr
+https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz gcc/mpc
+files/c99
diff --git a/core-mod/core/gcc/version b/core-mod/core/gcc/version
new file mode 100644
index 0000000..ec1ee9a
--- /dev/null
+++ b/core-mod/core/gcc/version
@@ -0,0 +1 @@
+11.1.0 1
diff --git a/core-mod/core/git/build b/core-mod/core/git/build
new file mode 100755
index 0000000..4d29f18
--- /dev/null
+++ b/core-mod/core/git/build
@@ -0,0 +1,29 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+cat > config.mak <<EOF
+NO_GETTEXT=YesPlease
+NO_SVN_TESTS=YesPlease
+NO_TCLTK=YesPlease
+NO_EXPAT=YesPlease
+NO_NSEC=YesPlease
+NO_PYTHON=YesPlease
+NO_PERL=YesPlease
+NO_SVN_TESTS=YesPlease
+NO_SYS_POLL_H=1
+NO_CROSS_DIRECTORY_HARDLINKS=1
+NO_INSTALL_HARDLINKS=1
+EOF
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    ac_cv_lib_curl_curl_global_init=yes \
+    ac_cv_snprintf_returns_bogus=no \
+    ac_cv_fread_reads_directories=yes
+
+make LIBS="$(curl-config --static-libs) libgit.a xdiff/lib.a -lz"
+make DESTDIR="$1" install
+
+cp -rf man "$1/usr/share/man"
diff --git a/core-mod/core/git/checksums b/core-mod/core/git/checksums
new file mode 100644
index 0000000..1cc72b9
--- /dev/null
+++ b/core-mod/core/git/checksums
@@ -0,0 +1,2 @@
+68a841da3c4389847ecd3301c25eb7e4a51d07edf5f0168615ad6179e3a83623
+19e3cb0425c94d4ad82984f41522e77c8e35093e15a891f8e7195617201f6ac1
diff --git a/core-mod/core/git/depends b/core-mod/core/git/depends
new file mode 100644
index 0000000..c818a08
--- /dev/null
+++ b/core-mod/core/git/depends
@@ -0,0 +1,3 @@
+curl     make
+libressl make
+zlib     make
diff --git a/core-mod/core/git/sources b/core-mod/core/git/sources
new file mode 100644
index 0000000..311ad2e
--- /dev/null
+++ b/core-mod/core/git/sources
@@ -0,0 +1,2 @@
+https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.32.0.tar.xz
+https://mirrors.edge.kernel.org/pub/software/scm/git/git-manpages-2.32.0.tar.xz man
diff --git a/core-mod/core/git/version b/core-mod/core/git/version
new file mode 100644
index 0000000..e10fdcb
--- /dev/null
+++ b/core-mod/core/git/version
@@ -0,0 +1 @@
+2.32.0 1
diff --git a/core-mod/core/gzip/build b/core-mod/core/gzip/build
new file mode 100755
index 0000000..9367c7c
--- /dev/null
+++ b/core-mod/core/gzip/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+make CC="${CC:-cc} -static"
+
+install -Dm755 pigz   "$1/usr/bin/pigz"
+install -Dm755 unpigz "$1/usr/bin/unpigz"
+install -Dm644 pigz.1 "$1/usr/share/man/man1/pigz.1"
+
+ln -sf pigz   "$1/usr/bin/gzip"
+ln -sf pigz   "$1/usr/bin/zcat"
+ln -sf unpigz "$1/usr/bin/gunzip"
+ln -sf pigz.1 "$1/usr/share/man/man1/gzip.1"
diff --git a/core-mod/core/gzip/checksums b/core-mod/core/gzip/checksums
new file mode 100644
index 0000000..60713b9
--- /dev/null
+++ b/core-mod/core/gzip/checksums
@@ -0,0 +1 @@
+2eed7b0d7449d1d70903f2a62cd6005d262eb3a8c9e98687bc8cbb5809db2a7d
diff --git a/core-mod/core/gzip/sources b/core-mod/core/gzip/sources
new file mode 100644
index 0000000..1cd53f6
--- /dev/null
+++ b/core-mod/core/gzip/sources
@@ -0,0 +1 @@
+https://zlib.net/pigz/pigz-2.6.tar.gz
diff --git a/core-mod/core/gzip/version b/core-mod/core/gzip/version
new file mode 100644
index 0000000..944edd6
--- /dev/null
+++ b/core-mod/core/gzip/version
@@ -0,0 +1 @@
+1.10 5
diff --git a/core-mod/core/kiss/build b/core-mod/core/kiss/build
new file mode 100755
index 0000000..978dfd6
--- /dev/null
+++ b/core-mod/core/kiss/build
@@ -0,0 +1,20 @@
+#!/bin/sh -e
+
+mkdir -p "$1/usr/bin"
+
+# Install kiss utilities.
+cp -f kiss contrib/* "$1/usr/bin/"
+
+# Install distribution documentation.
+for doc in docs/site/*.txt; do
+    install -Dm644 "$doc" "$1/usr/share/doc/kiss/${doc##*/}"
+done
+
+# Install the Wiki.
+cp -r wiki "$1/usr/share/doc/kiss/wiki"
+
+# Remove unnecessary pages.
+rm -f "$1/usr/share/doc/kiss/wiki/README.txt" \
+      "$1/usr/share/doc/kiss/news.txt" \
+      "$1/usr/share/doc/kiss/blog.txt" \
+      "$1/usr/share/doc/kiss/screenshots.txt"
diff --git a/core-mod/core/kiss/checksums b/core-mod/core/kiss/checksums
new file mode 100644
index 0000000..fbb0cbf
--- /dev/null
+++ b/core-mod/core/kiss/checksums
@@ -0,0 +1,3 @@
+b33bb5395b98c784ae31808f3799ab9ae25e59990679f58c93be6fbffbfaa188
+b802f8f61922d4abdd9a8560d07ddbb3bed64234bc9102f5bbda9754fc623a72
+0f6f941cc822acb32bb672d616cea9bd92e0d35f3a24dd82573c3d5d557557ee
diff --git a/core-mod/core/kiss/depends b/core-mod/core/kiss/depends
new file mode 100644
index 0000000..41612c4
--- /dev/null
+++ b/core-mod/core/kiss/depends
@@ -0,0 +1,2 @@
+curl
+git
diff --git a/core-mod/core/kiss/sources b/core-mod/core/kiss/sources
new file mode 100644
index 0000000..16367ee
--- /dev/null
+++ b/core-mod/core/kiss/sources
@@ -0,0 +1,3 @@
+https://github.com/kiss-community/kiss/archive/5.4.2.tar.gz
+https://github.com/kiss-community/website/archive/eb2bf625971608e3ec01b8a49498e6fe4d32ee5d.tar.gz docs
+https://github.com/kiss-community/wiki/archive/8a55f77fd3d2bb708f1a528e0769780e31b11d36.tar.gz wiki
diff --git a/core-mod/core/kiss/version b/core-mod/core/kiss/version
new file mode 100644
index 0000000..84efc7e
--- /dev/null
+++ b/core-mod/core/kiss/version
@@ -0,0 +1 @@
+5.4.2 1
diff --git a/core-mod/core/libressl/build b/core-mod/core/libressl/build
new file mode 100755
index 0000000..efe55ab
--- /dev/null
+++ b/core-mod/core/libressl/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
+
+install -Dm 755 update-certdata.sh "$1/etc/ssl"
diff --git a/core-mod/core/libressl/checksums b/core-mod/core/libressl/checksums
new file mode 100644
index 0000000..cb08f76
--- /dev/null
+++ b/core-mod/core/libressl/checksums
@@ -0,0 +1,2 @@
+a471565b36ccd1a70d0bd7d37c6e95c43a26a62829b487d9d2cdebfe58be3066
+d4bfcd9ee16eff65bdf6de1e0a3ccac667fdf52d98d0eda5c3e3f638aad13b89
diff --git a/core-mod/core/libressl/files/update-certdata.sh b/core-mod/core/libressl/files/update-certdata.sh
new file mode 100755
index 0000000..29230cf
--- /dev/null
+++ b/core-mod/core/libressl/files/update-certdata.sh
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+[ -w /etc/ssl ] || {
+    printf '%s\n' "${0##*/}: root required to update cert." >&2
+    exit 1
+}
+
+cd /etc/ssl && {
+    curl -LO https://curl.haxx.se/ca/cacert.pem
+    mv -f cacert.pem cert.pem
+    printf '%s\n' "${0##*/}: updated cert.pem"
+}
diff --git a/core-mod/core/libressl/post-install b/core-mod/core/libressl/post-install
new file mode 100755
index 0000000..c12dca7
--- /dev/null
+++ b/core-mod/core/libressl/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+/etc/ssl/update-certdata.sh
diff --git a/core-mod/core/libressl/sources b/core-mod/core/libressl/sources
new file mode 100644
index 0000000..79ed0b2
--- /dev/null
+++ b/core-mod/core/libressl/sources
@@ -0,0 +1,2 @@
+https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.3.3.tar.gz
+files/update-certdata.sh
diff --git a/core-mod/core/libressl/version b/core-mod/core/libressl/version
new file mode 100644
index 0000000..e82f87f
--- /dev/null
+++ b/core-mod/core/libressl/version
@@ -0,0 +1 @@
+3.3.3 1
diff --git a/core-mod/core/linux-headers/build b/core-mod/core/linux-headers/build
new file mode 100755
index 0000000..9f5ea9b
--- /dev/null
+++ b/core-mod/core/linux-headers/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+make HOSTCC="${CC:-cc}" headers
+
+# The headers require rsync for installation, this command
+# simply does the equivalent using find.
+find usr/include -name \*.h -type f | while read -r file; do
+    install -Dm644 "$file" "$1/$file"
+done
diff --git a/core-mod/core/linux-headers/checksums b/core-mod/core/linux-headers/checksums
new file mode 100644
index 0000000..0d4f71b
--- /dev/null
+++ b/core-mod/core/linux-headers/checksums
@@ -0,0 +1 @@
+ed1661128c9bd3e8c9f55e345f715b90fefcf6b127c77e0286773242e7a14e5c
diff --git a/core-mod/core/linux-headers/sources b/core-mod/core/linux-headers/sources
new file mode 100644
index 0000000..6fb2c46
--- /dev/null
+++ b/core-mod/core/linux-headers/sources
@@ -0,0 +1 @@
+https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.1.tar.xz
diff --git a/core-mod/core/linux-headers/version b/core-mod/core/linux-headers/version
new file mode 100644
index 0000000..1209f7e
--- /dev/null
+++ b/core-mod/core/linux-headers/version
@@ -0,0 +1 @@
+5.10.1 1
diff --git a/core-mod/core/m4/build b/core-mod/core/m4/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/core-mod/core/m4/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/core/m4/checksums b/core-mod/core/m4/checksums
new file mode 100644
index 0000000..e413a19
--- /dev/null
+++ b/core-mod/core/m4/checksums
@@ -0,0 +1 @@
+63aede5c6d33b6d9b13511cd0be2cac046f2e70fd0a07aa9573a04a82783af96
diff --git a/core-mod/core/m4/sources b/core-mod/core/m4/sources
new file mode 100644
index 0000000..bde2eff
--- /dev/null
+++ b/core-mod/core/m4/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/m4/m4-1.4.19.tar.xz
diff --git a/core-mod/core/m4/version b/core-mod/core/m4/version
new file mode 100644
index 0000000..b97669c
--- /dev/null
+++ b/core-mod/core/m4/version
@@ -0,0 +1 @@
+1.4.19 1
diff --git a/core-mod/core/make/build b/core-mod/core/make/build
new file mode 100755
index 0000000..206a476
--- /dev/null
+++ b/core-mod/core/make/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -static"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/core/make/checksums b/core-mod/core/make/checksums
new file mode 100644
index 0000000..8ce10bc
--- /dev/null
+++ b/core-mod/core/make/checksums
@@ -0,0 +1 @@
+e05fdde47c5f7ca45cb697e973894ff4f5d79e13b750ed57d7b66d8defc78e19  make-4.3.tar.gz
diff --git a/core-mod/core/make/sources b/core-mod/core/make/sources
new file mode 100644
index 0000000..038f47f
--- /dev/null
+++ b/core-mod/core/make/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/make/make-4.3.tar.gz
diff --git a/core-mod/core/make/version b/core-mod/core/make/version
new file mode 100644
index 0000000..aead541
--- /dev/null
+++ b/core-mod/core/make/version
@@ -0,0 +1 @@
+4.3 1
diff --git a/core-mod/core/musl/build b/core-mod/core/musl/build
new file mode 100755
index 0000000..a003f10
--- /dev/null
+++ b/core-mod/core/musl/build
@@ -0,0 +1,28 @@
+#!/bin/sh -e
+
+# Uncomment if using valgrind or similar.
+# :>nostrip
+
+./configure \
+    --prefix=/usr \
+    --syslibdir=/usr/lib \
+# Uncomment if using valgrind or similar.
+#   --enable-debug
+
+make
+make DESTDIR="$1" install
+
+mkdir -p "$1/usr/bin"
+ln -s  /usr/lib/ld-musl-x86_64.so.1 "$1/usr/bin/ldd"
+
+# Fix incorrect symlink to libc.so.
+ln -sf libc.so "$1/usr/lib/ld-musl-x86_64.so.1"
+
+# Install BSD compatibility headers.
+install -Dm 755 cdefs.h "$1/usr/include/sys/cdefs.h"
+install -Dm 755 queue.h "$1/usr/include/sys/queue.h"
+install -Dm 755 tree.h  "$1/usr/include/sys/tree.h"
+
+# Install getconf.
+cc getconf.c -o "$1/usr/bin/getconf"
+cc getent.c  -o "$1/usr/bin/getent"
diff --git a/core-mod/core/musl/checksums b/core-mod/core/musl/checksums
new file mode 100644
index 0000000..5fab64a
--- /dev/null
+++ b/core-mod/core/musl/checksums
@@ -0,0 +1,6 @@
+9b969322012d796dc23dda27a35866034fa67d8fb67e0e2c45c913c3d43219dd
+a83818007069c222d24d283a99348c2376f35bac3282d8142004c47d3dc5ecac
+c13407edd0e33be73cae72514cb234f8612e1c0e54401c9448daffd3a240158b
+e1e498a79bf160a5766fa560f2b07b206fe89fe21a62600c77d72e00a6992f92
+d87d0cbb3690ae2c5d8cc218349fd8278b93855dd625deaf7ae50e320aad247c
+b323f20c9bf560a13c877eb05428bc4a203383697bac763e7b12865db5c5922c
diff --git a/core-mod/core/musl/files/cdefs.h b/core-mod/core/musl/files/cdefs.h
new file mode 100755
index 0000000..a60f0e2
--- /dev/null
+++ b/core-mod/core/musl/files/cdefs.h
@@ -0,0 +1,24 @@
+#undef __P
+#undef __PMT
+
+#define __P(args)	args
+#define __PMT(args)	args
+
+#define __CONCAT(x,y)	x ## y
+#define __STRING(x)	#x
+
+#ifdef  __cplusplus
+# define __BEGIN_DECLS	extern "C" {
+# define __END_DECLS	}
+#else
+# define __BEGIN_DECLS
+# define __END_DECLS
+#endif
+
+#if defined(__GNUC__) && !defined(__cplusplus)
+# define __THROW	__attribute__ ((__nothrow__))
+# define __NTH(fct)	__attribute__ ((__nothrow__)) fct
+#else
+# define __THROW
+# define __NTH(fct)     fct
+#endif
diff --git a/core-mod/core/musl/files/getconf.c b/core-mod/core/musl/files/getconf.c
new file mode 100644
index 0000000..c423524
--- /dev/null
+++ b/core-mod/core/musl/files/getconf.c
@@ -0,0 +1,338 @@
+/*-
+ * Copyright (c) 1996, 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by J.T. Conklin.
+ *
+ * Mostly rewritten to be used in Alpine Linux (with musl c-library)
+ * by Timo Teräs.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <err.h>
+#include <errno.h>
+#include <values.h>
+#include <limits.h>
+#include <locale.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+
+struct conf_variable {
+	const char *name;
+	enum { SYSCONF, CONFSTR, PATHCONF, CONSTANT, UCONSTANT, NUM_TYPES } type;
+	long value;
+};
+
+static const struct conf_variable conf_table[] = {
+{ "PATH",			CONFSTR,	_CS_PATH		},
+
+/* Utility Limit Minimum Values */
+{ "POSIX2_BC_BASE_MAX",		CONSTANT,	_POSIX2_BC_BASE_MAX	},
+{ "POSIX2_BC_DIM_MAX",		CONSTANT,	_POSIX2_BC_DIM_MAX	},
+{ "POSIX2_BC_SCALE_MAX",	CONSTANT,	_POSIX2_BC_SCALE_MAX	},
+{ "POSIX2_BC_STRING_MAX",	CONSTANT,	_POSIX2_BC_STRING_MAX	},
+{ "POSIX2_COLL_WEIGHTS_MAX",	CONSTANT,	_POSIX2_COLL_WEIGHTS_MAX },
+{ "POSIX2_EXPR_NEST_MAX",	CONSTANT,	_POSIX2_EXPR_NEST_MAX	},
+{ "POSIX2_LINE_MAX",		CONSTANT,	_POSIX2_LINE_MAX	},
+{ "POSIX2_RE_DUP_MAX",		CONSTANT,	_POSIX2_RE_DUP_MAX	},
+{ "POSIX2_VERSION",		CONSTANT,	_POSIX2_VERSION		},
+
+/* POSIX.1 Minimum Values */
+{ "_POSIX_AIO_LISTIO_MAX",	CONSTANT,	_POSIX_AIO_LISTIO_MAX	},
+{ "_POSIX_AIO_MAX",		CONSTANT,       _POSIX_AIO_MAX		},
+{ "_POSIX_ARG_MAX",		CONSTANT,	_POSIX_ARG_MAX		},
+{ "_POSIX_CHILD_MAX",		CONSTANT,	_POSIX_CHILD_MAX	},
+{ "_POSIX_LINK_MAX",		CONSTANT,	_POSIX_LINK_MAX		},
+{ "_POSIX_MAX_CANON",		CONSTANT,	_POSIX_MAX_CANON	},
+{ "_POSIX_MAX_INPUT",		CONSTANT,	_POSIX_MAX_INPUT	},
+{ "_POSIX_MQ_OPEN_MAX",		CONSTANT,	_POSIX_MQ_OPEN_MAX	},
+{ "_POSIX_MQ_PRIO_MAX",		CONSTANT,	_POSIX_MQ_PRIO_MAX	},
+{ "_POSIX_NAME_MAX",		CONSTANT,	_POSIX_NAME_MAX		},
+{ "_POSIX_NGROUPS_MAX",		CONSTANT,	_POSIX_NGROUPS_MAX	},
+{ "_POSIX_OPEN_MAX",		CONSTANT,	_POSIX_OPEN_MAX		},
+{ "_POSIX_PATH_MAX",		CONSTANT,	_POSIX_PATH_MAX		},
+{ "_POSIX_PIPE_BUF",		CONSTANT,	_POSIX_PIPE_BUF		},
+{ "_POSIX_SSIZE_MAX",		CONSTANT,	_POSIX_SSIZE_MAX	},
+{ "_POSIX_STREAM_MAX",		CONSTANT,	_POSIX_STREAM_MAX	},
+{ "_POSIX_TZNAME_MAX",		CONSTANT,	_POSIX_TZNAME_MAX	},
+
+/* Symbolic Utility Limits */
+{ "BC_BASE_MAX",		SYSCONF,	_SC_BC_BASE_MAX		},
+{ "BC_DIM_MAX",			SYSCONF,	_SC_BC_DIM_MAX		},
+{ "BC_SCALE_MAX",		SYSCONF,	_SC_BC_SCALE_MAX	},
+{ "BC_STRING_MAX",		SYSCONF,	_SC_BC_STRING_MAX	},
+{ "COLL_WEIGHTS_MAX",		SYSCONF,	_SC_COLL_WEIGHTS_MAX	},
+{ "EXPR_NEST_MAX",		SYSCONF,	_SC_EXPR_NEST_MAX	},
+{ "LINE_MAX",			SYSCONF,	_SC_LINE_MAX		},
+{ "RE_DUP_MAX",			SYSCONF,	_SC_RE_DUP_MAX		},
+
+/* Optional Facility Configuration Values */
+{ "_POSIX2_C_BIND",		SYSCONF,	_SC_2_C_BIND		},
+{ "POSIX2_C_DEV",		SYSCONF,	_SC_2_C_DEV		},
+{ "POSIX2_CHAR_TERM",		SYSCONF,	_SC_2_CHAR_TERM		},
+{ "POSIX2_FORT_DEV",		SYSCONF,	_SC_2_FORT_DEV		},
+{ "POSIX2_FORT_RUN",		SYSCONF,	_SC_2_FORT_RUN		},
+{ "POSIX2_LOCALEDEF",		SYSCONF,	_SC_2_LOCALEDEF		},
+{ "POSIX2_SW_DEV",		SYSCONF,	_SC_2_SW_DEV		},
+{ "POSIX2_UPE",			SYSCONF,	_SC_2_UPE		},
+
+/* POSIX.1 Configurable System Variables */
+{ "AIO_LISTIO_MAX",		SYSCONF,	_SC_AIO_LISTIO_MAX	},
+{ "AIO_MAX",			SYSCONF,	_SC_AIO_MAX		},
+{ "ARG_MAX",			SYSCONF,	_SC_ARG_MAX 		},
+{ "CHILD_MAX",			SYSCONF,	_SC_CHILD_MAX		},
+{ "CLK_TCK",			SYSCONF,	_SC_CLK_TCK		},
+{ "MQ_OPEN_MAX",		SYSCONF,	_SC_MQ_OPEN_MAX		},
+{ "MQ_PRIO_MAX",		SYSCONF,	_SC_MQ_PRIO_MAX		},
+{ "NGROUPS_MAX",		SYSCONF,	_SC_NGROUPS_MAX		},
+{ "OPEN_MAX",			SYSCONF,	_SC_OPEN_MAX		},
+{ "STREAM_MAX",			SYSCONF,	_SC_STREAM_MAX		},
+{ "TZNAME_MAX",			SYSCONF,	_SC_TZNAME_MAX		},
+{ "_POSIX_JOB_CONTROL",		SYSCONF,	_SC_JOB_CONTROL 	},
+{ "_POSIX_SAVED_IDS",		SYSCONF,	_SC_SAVED_IDS		},
+{ "_POSIX_VERSION",		SYSCONF,	_SC_VERSION		},
+
+{ "LINK_MAX",			PATHCONF,	_PC_LINK_MAX		},
+{ "MAX_CANON",			PATHCONF,	_PC_MAX_CANON		},
+{ "MAX_INPUT",			PATHCONF,	_PC_MAX_INPUT		},
+{ "NAME_MAX",			PATHCONF,	_PC_NAME_MAX		},
+{ "PATH_MAX",			PATHCONF,	_PC_PATH_MAX		},
+{ "PIPE_BUF",			PATHCONF,	_PC_PIPE_BUF		},
+{ "_POSIX_CHOWN_RESTRICTED",	PATHCONF,	_PC_CHOWN_RESTRICTED	},
+{ "_POSIX_NO_TRUNC",		PATHCONF,	_PC_NO_TRUNC		},
+{ "_POSIX_VDISABLE",		PATHCONF,	_PC_VDISABLE		},
+
+/* POSIX.1b Configurable System Variables */
+{ "PAGESIZE",			SYSCONF,	_SC_PAGESIZE		},
+{ "_POSIX_ASYNCHRONOUS_IO",	SYSCONF,	_SC_ASYNCHRONOUS_IO	},
+{ "_POSIX_FSYNC",		SYSCONF,	_SC_FSYNC		},
+{ "_POSIX_MAPPED_FILES",	SYSCONF,	_SC_MAPPED_FILES	},
+{ "_POSIX_MEMLOCK",		SYSCONF,	_SC_MEMLOCK		},
+{ "_POSIX_MEMLOCK_RANGE",	SYSCONF,	_SC_MEMLOCK_RANGE	},
+{ "_POSIX_MEMORY_PROTECTION",	SYSCONF,	_SC_MEMORY_PROTECTION	},
+{ "_POSIX_MESSAGE_PASSING",	SYSCONF,	_SC_MESSAGE_PASSING	},
+{ "_POSIX_MONOTONIC_CLOCK",	SYSCONF,	_SC_MONOTONIC_CLOCK	},
+{ "_POSIX_PRIORITY_SCHEDULING", SYSCONF,	_SC_PRIORITY_SCHEDULING },
+{ "_POSIX_SEMAPHORES",		SYSCONF,	_SC_SEMAPHORES		},
+{ "_POSIX_SHARED_MEMORY_OBJECTS", SYSCONF,	_SC_SHARED_MEMORY_OBJECTS },
+{ "_POSIX_SYNCHRONIZED_IO",	SYSCONF,	_SC_SYNCHRONIZED_IO	},
+{ "_POSIX_TIMERS",		SYSCONF,	_SC_TIMERS		},
+
+{ "_POSIX_SYNC_IO",		PATHCONF,	_PC_SYNC_IO		},
+
+/* POSIX.1c Configurable System Variables */
+{ "LOGIN_NAME_MAX",		SYSCONF,	_SC_LOGIN_NAME_MAX	},
+{ "_POSIX_THREADS",		SYSCONF,	_SC_THREADS		},
+
+/* POSIX.1j Configurable System Variables */
+{ "_POSIX_BARRIERS",		SYSCONF,	_SC_BARRIERS		},
+{ "_POSIX_READER_WRITER_LOCKS", SYSCONF,	_SC_READER_WRITER_LOCKS	},
+{ "_POSIX_SPIN_LOCKS",		SYSCONF,	_SC_SPIN_LOCKS		},
+
+/* XPG4.2 Configurable System Variables */
+{ "IOV_MAX",			SYSCONF,	_SC_IOV_MAX		},
+{ "PAGE_SIZE",			SYSCONF,	_SC_PAGE_SIZE		},
+{ "_XOPEN_SHM",			SYSCONF,	_SC_XOPEN_SHM		},
+
+/* X/Open CAE Spec. Issue 5 Version 2 Configurable System Variables */
+{ "FILESIZEBITS",		PATHCONF,	_PC_FILESIZEBITS	},
+
+/* POSIX.1-2001 XSI Option Group Configurable System Variables */
+{ "ATEXIT_MAX",			SYSCONF,	_SC_ATEXIT_MAX		},
+
+/* POSIX.1-2001 TSF Configurable System Variables */
+{ "GETGR_R_SIZE_MAX",		SYSCONF,	_SC_GETGR_R_SIZE_MAX	},
+{ "GETPW_R_SIZE_MAX",		SYSCONF,	_SC_GETPW_R_SIZE_MAX	},
+
+/* Commonly provided extensions */
+{ "_PHYS_PAGES",		SYSCONF,	_SC_PHYS_PAGES		},
+{ "_AVPHYS_PAGES",		SYSCONF,	_SC_AVPHYS_PAGES	},
+{ "_NPROCESSORS_CONF",		SYSCONF,	_SC_NPROCESSORS_CONF	},
+{ "_NPROCESSORS_ONLN",		SYSCONF,	_SC_NPROCESSORS_ONLN	},
+
+/* Data type related extensions */
+{ "CHAR_BIT",			CONSTANT,	CHAR_BIT		},
+{ "CHAR_MAX",			CONSTANT,	CHAR_MAX		},
+{ "CHAR_MIN",			CONSTANT,	CHAR_MIN		},
+{ "INT_MAX",			CONSTANT,	INT_MAX			},
+{ "INT_MIN",			CONSTANT,	INT_MIN			},
+{ "LONG_BIT",			CONSTANT,	LONG_BIT		},
+{ "LONG_MAX",			CONSTANT,	LONG_MAX		},
+{ "LONG_MIN",			CONSTANT,	LONG_MIN		},
+{ "SCHAR_MAX",			CONSTANT,	SCHAR_MAX		},
+{ "SCHAR_MIN",			CONSTANT,	SCHAR_MIN		},
+{ "SHRT_MAX",			CONSTANT,	SHRT_MAX		},
+{ "SHRT_MIN",			CONSTANT,	SHRT_MIN		},
+{ "SSIZE_MAX",			CONSTANT,	SSIZE_MAX		},
+{ "UCHAR_MAX",			UCONSTANT,	(long) UCHAR_MAX	},
+{ "UINT_MAX",			UCONSTANT,	(long) UINT_MAX		},
+{ "ULONG_MAX",			UCONSTANT,	(long) ULONG_MAX	},
+{ "USHRT_MAX",			UCONSTANT,	(long) USHRT_MAX	},
+{ "WORD_BIT",			CONSTANT,	WORD_BIT		},
+
+{ NULL, CONSTANT, 0L }
+};
+
+static int all = 0;
+
+static void usage(const char *p)
+{
+	(void)fprintf(stderr, "Usage: %s system_var\n\t%s -a\n"
+	    "\t%s path_var pathname\n\t%s -a pathname\n", p, p, p, p);
+	exit(EXIT_FAILURE);
+}
+
+static void print_long(const char *name, long val)
+{
+	if (all) printf("%s = %ld\n", name, val);
+	else printf("%ld\n", val);
+}
+
+static void print_ulong(const char *name, unsigned long val)
+{
+	if (all) printf("%s = %lu\n", name, val);
+	else printf("%lu\n", val);
+}
+
+static void print_string(const char *name, const char *val)
+{
+	if (all) printf("%s = %s\n", name, val);
+	else printf("%s\n", val);
+}
+
+static int print_constant(const struct conf_variable *cp, const char *pathname)
+{
+	print_long(cp->name, cp->value);
+	return 0;
+}
+
+static int print_uconstant(const struct conf_variable *cp, const char *pathname)
+{
+	print_ulong(cp->name, (unsigned long) cp->value);
+	return 0;
+}
+
+static int print_sysconf(const struct conf_variable *cp, const char *pathname)
+{
+	long val;
+
+	errno = 0;
+	if ((val = sysconf((int)cp->value)) == -1) {
+		if (errno != 0) err(EXIT_FAILURE, "sysconf(%ld)", cp->value);
+		return -1;
+	}
+	print_long(cp->name, val);
+	return 0;
+}
+
+static int print_confstr(const struct conf_variable *cp, const char *pathname)
+{
+	size_t len;
+	char *val;
+
+	errno = 0;
+	if ((len = confstr((int)cp->value, NULL, 0)) == 0) goto error;
+	if ((val = malloc(len)) == NULL) err(EXIT_FAILURE, "Can't allocate %zu bytes", len);
+	errno = 0;
+	if (confstr((int)cp->value, val, len) == 0) goto error;
+	print_string(cp->name, val);
+	free(val);
+	return 0;
+error:
+	if (errno != EINVAL) err(EXIT_FAILURE, "confstr(%ld)", cp->value);
+	return -1;
+}
+
+static int print_pathconf(const struct conf_variable *cp, const char *pathname)
+{
+	long val;
+
+	errno = 0;
+	if ((val = pathconf(pathname, (int)cp->value)) == -1) {
+		if (all && errno == EINVAL) return 0;
+		if (errno != 0) err(EXIT_FAILURE, "pathconf(%s, %ld)", pathname, cp->value);
+		return -1;
+	}
+	print_long(cp->name, val);
+	return 0;
+}
+
+typedef int (*handler_t)(const struct conf_variable *cp, const char *pathname);
+static const handler_t type_handlers[NUM_TYPES] = {
+	[SYSCONF]	= print_sysconf,
+	[CONFSTR]	= print_confstr,
+	[PATHCONF]	= print_pathconf,
+	[CONSTANT]	= print_constant,
+	[UCONSTANT]	= print_uconstant,
+};
+
+int main(int argc, char **argv)
+{
+	const char *progname = argv[0];
+	const struct conf_variable *cp;
+	const char *varname, *pathname;
+	int ch, found = 0;
+
+	(void)setlocale(LC_ALL, "");
+	while ((ch = getopt(argc, argv, "a")) != -1) {
+		switch (ch) {
+		case 'a':
+			all = 1;
+			break;
+		case '?':
+		default:
+			usage(progname);
+		}
+	}
+	argc -= optind;
+	argv += optind;
+
+	if (!all) {
+		if (argc == 0)
+			usage(progname);
+		varname = argv[0];
+		argc--;
+		argv++;
+	} else
+		varname = NULL;
+
+	if (argc > 1)
+		usage(progname);
+	pathname = argv[0];	/* may be NULL */
+
+	for (cp = conf_table; cp->name != NULL; cp++) {
+		if (!all && strcmp(varname, cp->name) != 0) continue;
+		if ((cp->type == PATHCONF) == (pathname != NULL)) {
+			if (type_handlers[cp->type](cp, pathname) < 0)
+				print_string(cp->name, "undefined");
+			found = 1;
+		} else if (!all)
+			errx(EXIT_FAILURE, "%s: invalid variable type", cp->name);
+	}
+	if (!all && !found) errx(EXIT_FAILURE, "%s: unknown variable", varname);
+	(void)fflush(stdout);
+	return ferror(stdout) ? EXIT_FAILURE : EXIT_SUCCESS;
+}
diff --git a/core-mod/core/musl/files/getent.c b/core-mod/core/musl/files/getent.c
new file mode 100644
index 0000000..b10d75a
--- /dev/null
+++ b/core-mod/core/musl/files/getent.c
@@ -0,0 +1,511 @@
+/*-
+ * Copyright (c) 2004-2006 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Luke Mewburn.
+ * Timo Teräs cleaned up the code for use in Alpine Linux with musl libc.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <sys/socket.h>
+#include <sys/param.h>
+#include <ctype.h>
+#include <errno.h>
+#include <limits.h>
+#include <netdb.h>
+#include <pwd.h>
+#include <grp.h>
+#include <stdio.h>
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <paths.h>
+#include <err.h>
+
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+
+#include <net/if.h>
+#include <net/ethernet.h>
+#include <netinet/ether.h>
+#include <netinet/in.h>
+
+enum {
+	RV_OK		= 0,
+	RV_USAGE	= 1,
+	RV_NOTFOUND	= 2,
+	RV_NOENUM	= 3
+};
+
+static int usage(const char *);
+
+static int parsenum(const char *word, unsigned long *result)
+{
+	unsigned long	num;
+	char		*ep;
+
+	if (!isdigit((unsigned char)word[0]))
+		return 0;
+	errno = 0;
+	num = strtoul(word, &ep, 10);
+	if (num == ULONG_MAX && errno == ERANGE)
+		return 0;
+	if (*ep != '\0')
+		return 0;
+	*result = num;
+	return 1;
+}
+
+/*
+ * printfmtstrings --
+ *	vprintf(format, ...),
+ *	then the aliases (beginning with prefix, separated by sep),
+ *	then a newline
+ */
+__attribute__ ((format (printf, 4, 5)))
+static void printfmtstrings(char *strings[], const char *prefix, const char *sep,
+	const char *fmt, ...)
+{
+	va_list		ap;
+	const char	*curpref;
+	size_t		i;
+
+	va_start(ap, fmt);
+	(void)vprintf(fmt, ap);
+	va_end(ap);
+
+	curpref = prefix;
+	for (i = 0; strings[i] != NULL; i++) {
+		(void)printf("%s%s", curpref, strings[i]);
+		curpref = sep;
+	}
+	(void)printf("\n");
+}
+
+static int ethers(int argc, char *argv[])
+{
+	char		hostname[MAXHOSTNAMELEN + 1], *hp;
+	struct ether_addr ea, *eap;
+	int		i, rv;
+
+	if (argc == 2) {
+		warnx("Enumeration not supported on ethers");
+		return RV_NOENUM;
+	}
+
+	rv = RV_OK;
+	for (i = 2; i < argc; i++) {
+		if ((eap = ether_aton(argv[i])) == NULL) {
+			eap = &ea;
+			hp = argv[i];
+			if (ether_hostton(hp, eap) != 0) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+		} else {
+			hp = hostname;
+			if (ether_ntohost(hp, eap) != 0) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+		}
+		(void)printf("%-17s  %s\n", ether_ntoa(eap), hp);
+	}
+	return rv;
+}
+
+static void groupprint(const struct group *gr)
+{
+	printfmtstrings(gr->gr_mem, ":", ",", "%s:%s:%u",
+			gr->gr_name, gr->gr_passwd, gr->gr_gid);
+}
+
+static int group(int argc, char *argv[])
+{
+	struct group	*gr;
+	unsigned long	id;
+	int		i, rv;
+
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((gr = getgrent()) != NULL)
+			groupprint(gr);
+	} else {
+		for (i = 2; i < argc; i++) {
+			if (parsenum(argv[i], &id))
+				gr = getgrgid((gid_t)id);
+			else
+				gr = getgrnam(argv[i]);
+			if (gr == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			groupprint(gr);
+		}
+	}
+	endgrent();
+	return rv;
+}
+
+static void hostsprint(const struct hostent *he)
+{
+	char	buf[INET6_ADDRSTRLEN];
+
+	if (inet_ntop(he->h_addrtype, he->h_addr, buf, sizeof(buf)) == NULL)
+		(void)strlcpy(buf, "# unknown", sizeof(buf));
+	printfmtstrings(he->h_aliases, "  ", " ", "%-16s  %s", buf, he->h_name);
+}
+
+static int hosts(int argc, char *argv[])
+{
+	struct hostent	*he;
+	char		addr[IN6ADDRSZ];
+	int		i, rv;
+
+	sethostent(1);
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((he = gethostent()) != NULL)
+			hostsprint(he);
+	} else {
+		for (i = 2; i < argc; i++) {
+			if (inet_pton(AF_INET6, argv[i], (void *)addr) > 0)
+				he = gethostbyaddr(addr, IN6ADDRSZ, AF_INET6);
+			else if (inet_pton(AF_INET, argv[i], (void *)addr) > 0)
+				he = gethostbyaddr(addr, INADDRSZ, AF_INET);
+			else if ((he = gethostbyname2(argv[i], AF_INET6)) == NULL)
+				he = gethostbyname2(argv[i], AF_INET);
+			if (he == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			hostsprint(he);
+		}
+	}
+	endhostent();
+	return rv;
+}
+
+static int ahosts_ex(int family, int flags, int argc, char *argv[])
+{
+	static const char *socktypes[] = {
+		[SOCK_STREAM]		= "STREAM",
+		[SOCK_DGRAM]		= "DGRAM",
+		[SOCK_RAW]		= "RAW",
+		[SOCK_RDM]		= "RDM",
+		[SOCK_SEQPACKET]	= "SEQPACKET",
+		[SOCK_DCCP]		= "DCCP",
+		[SOCK_PACKET]		= "PACKET",
+	};
+	const char *sockstr;
+	char sockbuf[16], buf[INET6_ADDRSTRLEN];
+	struct addrinfo *res, *r, hint;
+	void *addr;
+	int i;
+
+	if (argc == 2)
+		return hosts(argc, argv);
+
+	hint = (struct addrinfo) {
+		.ai_family = family,
+		.ai_flags = AI_ADDRCONFIG | AI_CANONNAME | flags,
+	};
+
+	for (i = 2; i < argc; i++) {
+		if (getaddrinfo(argv[i], 0, &hint, &res) != 0)
+			return RV_NOTFOUND;
+
+		for (r = res; r; r = r->ai_next) {
+			sockstr = NULL;
+			if (r->ai_socktype >= 0 && r->ai_socktype < sizeof(socktypes)/sizeof(socktypes[0]))
+				sockstr = socktypes[r->ai_socktype];
+			if (!sockstr) {
+				sprintf(buf, "%d", r->ai_socktype);
+				sockstr = sockbuf;
+			}
+			switch (r->ai_family) {
+			case AF_INET:
+				addr = &((struct sockaddr_in*) r->ai_addr)->sin_addr;
+				break;
+			case AF_INET6:
+				addr = &((struct sockaddr_in6*) r->ai_addr)->sin6_addr;
+				break;
+			default:
+				continue;
+			}
+			if (inet_ntop(r->ai_family, addr, buf, sizeof(buf)) == NULL)
+				(void)strlcpy(buf, "# unknown", sizeof(buf));
+			printf("%-15s %-6s %s\n", buf, sockstr, r->ai_canonname ?: "");
+		}
+	}
+
+	return RV_OK;
+}
+
+static int ahosts(int argc, char *argv[])
+{
+	return ahosts_ex(AF_UNSPEC, 0, argc, argv);
+}
+
+static int ahostsv4(int argc, char *argv[])
+{
+	return ahosts_ex(AF_INET, 0, argc, argv);
+}
+
+static int ahostsv6(int argc, char *argv[])
+{
+	return ahosts_ex(AF_INET6, AI_V4MAPPED, argc, argv);
+}
+
+static void networksprint(const struct netent *ne)
+{
+	char		buf[INET6_ADDRSTRLEN];
+	struct	in_addr	ianet;
+
+	ianet = inet_makeaddr(ne->n_net, 0);
+	if (inet_ntop(ne->n_addrtype, &ianet, buf, sizeof(buf)) == NULL)
+		(void)strlcpy(buf, "# unknown", sizeof(buf));
+	printfmtstrings(ne->n_aliases, "  ", " ", "%-16s  %s", ne->n_name, buf);
+}
+
+static int networks(int argc, char *argv[])
+{
+	struct netent	*ne;
+	in_addr_t	net;
+	int		i, rv;
+
+	setnetent(1);
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((ne = getnetent()) != NULL)
+			networksprint(ne);
+	} else {
+		for (i = 2; i < argc; i++) {
+			net = inet_network(argv[i]);
+			if (net != INADDR_NONE)
+				ne = getnetbyaddr(net, AF_INET);
+			else
+				ne = getnetbyname(argv[i]);
+			if (ne != NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			networksprint(ne);
+		}
+	}
+	endnetent();
+	return rv;
+}
+
+static void passwdprint(struct passwd *pw)
+{
+	(void)printf("%s:%s:%u:%u:%s:%s:%s\n",
+		pw->pw_name, pw->pw_passwd, pw->pw_uid,
+		pw->pw_gid, pw->pw_gecos, pw->pw_dir, pw->pw_shell);
+}
+
+static int passwd(int argc, char *argv[])
+{
+	struct passwd	*pw;
+	unsigned long	id;
+	int		i, rv;
+
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((pw = getpwent()) != NULL)
+			passwdprint(pw);
+	} else {
+		for (i = 2; i < argc; i++) {
+			if (parsenum(argv[i], &id))
+				pw = getpwuid((uid_t)id);
+			else
+				pw = getpwnam(argv[i]);
+			if (pw == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			passwdprint(pw);
+		}
+	}
+	endpwent();
+	return rv;
+}
+
+static void protocolsprint(struct protoent *pe)
+{
+	printfmtstrings(pe->p_aliases, "  ", " ",
+			"%-16s  %5d", pe->p_name, pe->p_proto);
+}
+
+static int protocols(int argc, char *argv[])
+{
+	struct protoent	*pe;
+	unsigned long	id;
+	int		i, rv;
+
+	setprotoent(1);
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((pe = getprotoent()) != NULL)
+			protocolsprint(pe);
+	} else {
+		for (i = 2; i < argc; i++) {
+			if (parsenum(argv[i], &id))
+				pe = getprotobynumber((int)id);
+			else
+				pe = getprotobyname(argv[i]);
+			if (pe == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			protocolsprint(pe);
+		}
+	}
+	endprotoent();
+	return rv;
+}
+
+static void servicesprint(struct servent *se)
+{
+	printfmtstrings(se->s_aliases, "  ", " ",
+			"%-16s  %5d/%s",
+			se->s_name, ntohs(se->s_port), se->s_proto);
+
+}
+
+static int services(int argc, char *argv[])
+{
+	struct servent	*se;
+	unsigned long	id;
+	char		*proto;
+	int		i, rv;
+
+	setservent(1);
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((se = getservent()) != NULL)
+			servicesprint(se);
+	} else {
+		for (i = 2; i < argc; i++) {
+			proto = strchr(argv[i], '/');
+			if (proto != NULL)
+				*proto++ = '\0';
+			if (parsenum(argv[i], &id))
+				se = getservbyport(htons(id), proto);
+			else
+				se = getservbyname(argv[i], proto);
+			if (se == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+			servicesprint(se);
+		}
+	}
+	endservent();
+	return rv;
+}
+
+static int shells(int argc, char *argv[])
+{
+	const char	*sh;
+	int		i, rv;
+
+	setusershell();
+	rv = RV_OK;
+	if (argc == 2) {
+		while ((sh = getusershell()) != NULL)
+			(void)printf("%s\n", sh);
+	} else {
+		for (i = 2; i < argc; i++) {
+			setusershell();
+			while ((sh = getusershell()) != NULL) {
+				if (strcmp(sh, argv[i]) == 0) {
+					(void)printf("%s\n", sh);
+					break;
+				}
+			}
+			if (sh == NULL) {
+				rv = RV_NOTFOUND;
+				break;
+			}
+		}
+	}
+	endusershell();
+	return rv;
+}
+
+static struct getentdb {
+	const char	*name;
+	int		(*callback)(int, char *[]);
+} databases[] = {
+	{	"ethers",	ethers,		},
+	{	"group",	group,		},
+	{	"hosts",	hosts,		},
+	{	"ahosts",	ahosts,		},
+	{	"ahostsv4",	ahostsv4,	},
+	{	"ahostsv6",	ahostsv6,	},
+	{	"networks",	networks,	},
+	{	"passwd",	passwd,		},
+	{	"protocols",	protocols,	},
+	{	"services",	services,	},
+	{	"shells",	shells,		},
+
+	{	NULL,		NULL,		},
+};
+
+static int usage(const char *arg0)
+{
+	struct getentdb	*curdb;
+	size_t i;
+
+	(void)fprintf(stderr, "Usage: %s database [key ...]\n", arg0);
+	(void)fprintf(stderr, "\tdatabase may be one of:");
+	for (i = 0, curdb = databases; curdb->name != NULL; curdb++, i++) {
+		if (i % 7 == 0)
+			(void)fputs("\n\t\t", stderr);
+		(void)fprintf(stderr, "%s%s", i % 7 == 0 ? "" : " ",
+		    curdb->name);
+	}
+	(void)fprintf(stderr, "\n");
+	exit(RV_USAGE);
+	/* NOTREACHED */
+}
+
+int
+main(int argc, char *argv[])
+{
+	struct getentdb	*curdb;
+
+	if (argc < 2)
+		usage(argv[0]);
+	for (curdb = databases; curdb->name != NULL; curdb++)
+		if (strcmp(curdb->name, argv[1]) == 0)
+			return (*curdb->callback)(argc, argv);
+
+	warn("Unknown database `%s'", argv[1]);
+	usage(argv[0]);
+	/* NOTREACHED */
+}
diff --git a/core-mod/core/musl/files/queue.h b/core-mod/core/musl/files/queue.h
new file mode 100755
index 0000000..a38499a
--- /dev/null
+++ b/core-mod/core/musl/files/queue.h
@@ -0,0 +1,846 @@
+/*	$NetBSD: queue.h,v 1.70 2015/11/02 15:21:23 christos Exp $	*/
+
+/*
+ * Copyright (c) 1991, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *	@(#)queue.h	8.5 (Berkeley) 8/20/94
+ */
+
+#ifndef	_SYS_QUEUE_H_
+#define	_SYS_QUEUE_H_
+
+/*
+ * This file defines five types of data structures: singly-linked lists,
+ * lists, simple queues, tail queues, and circular queues.
+ *
+ * A singly-linked list is headed by a single forward pointer. The
+ * elements are singly linked for minimum space and pointer manipulation
+ * overhead at the expense of O(n) removal for arbitrary elements. New
+ * elements can be added to the list after an existing element or at the
+ * head of the list.  Elements being removed from the head of the list
+ * should use the explicit macro for this purpose for optimum
+ * efficiency. A singly-linked list may only be traversed in the forward
+ * direction.  Singly-linked lists are ideal for applications with large
+ * datasets and few or no removals or for implementing a LIFO queue.
+ *
+ * A list is headed by a single forward pointer (or an array of forward
+ * pointers for a hash table header). The elements are doubly linked
+ * so that an arbitrary element can be removed without a need to
+ * traverse the list. New elements can be added to the list before
+ * or after an existing element or at the head of the list. A list
+ * may only be traversed in the forward direction.
+ *
+ * A simple queue is headed by a pair of pointers, one the head of the
+ * list and the other to the tail of the list. The elements are singly
+ * linked to save space, so elements can only be removed from the
+ * head of the list. New elements can be added to the list after
+ * an existing element, at the head of the list, or at the end of the
+ * list. A simple queue may only be traversed in the forward direction.
+ *
+ * A tail queue is headed by a pair of pointers, one to the head of the
+ * list and the other to the tail of the list. The elements are doubly
+ * linked so that an arbitrary element can be removed without a need to
+ * traverse the list. New elements can be added to the list before or
+ * after an existing element, at the head of the list, or at the end of
+ * the list. A tail queue may be traversed in either direction.
+ *
+ * A circle queue is headed by a pair of pointers, one to the head of the
+ * list and the other to the tail of the list. The elements are doubly
+ * linked so that an arbitrary element can be removed without a need to
+ * traverse the list. New elements can be added to the list before or after
+ * an existing element, at the head of the list, or at the end of the list.
+ * A circle queue may be traversed in either direction, but has a more
+ * complex end of list detection.
+ *
+ * For details on the use of these macros, see the queue(3) manual page.
+ */
+
+/*
+ * Include the definition of NULL only on NetBSD because sys/null.h
+ * is not available elsewhere.  This conditional makes the header
+ * portable and it can simply be dropped verbatim into any system.
+ * The caveat is that on other systems some other header
+ * must provide NULL before the macros can be used.
+ */
+#ifdef __NetBSD__
+#include <sys/null.h>
+#endif
+
+#if defined(QUEUEDEBUG)
+# if defined(_KERNEL)
+#  define QUEUEDEBUG_ABORT(...) panic(__VA_ARGS__)
+# else
+#  include <err.h>
+#  define QUEUEDEBUG_ABORT(...) err(1, __VA_ARGS__)
+# endif
+#endif
+
+/*
+ * Singly-linked List definitions.
+ */
+#define	SLIST_HEAD(name, type)						\
+struct name {								\
+	struct type *slh_first;	/* first element */			\
+}
+
+#define	SLIST_HEAD_INITIALIZER(head)					\
+	{ NULL }
+
+#define	SLIST_ENTRY(type)						\
+struct {								\
+	struct type *sle_next;	/* next element */			\
+}
+
+/*
+ * Singly-linked List access methods.
+ */
+#define	SLIST_FIRST(head)	((head)->slh_first)
+#define	SLIST_END(head)		NULL
+#define	SLIST_EMPTY(head)	((head)->slh_first == NULL)
+#define	SLIST_NEXT(elm, field)	((elm)->field.sle_next)
+
+#define	SLIST_FOREACH(var, head, field)					\
+	for((var) = (head)->slh_first;					\
+	    (var) != SLIST_END(head);					\
+	    (var) = (var)->field.sle_next)
+
+#define	SLIST_FOREACH_SAFE(var, head, field, tvar)			\
+	for ((var) = SLIST_FIRST((head));				\
+	    (var) != SLIST_END(head) &&					\
+	    ((tvar) = SLIST_NEXT((var), field), 1);			\
+	    (var) = (tvar))
+
+/*
+ * Singly-linked List functions.
+ */
+#define	SLIST_INIT(head) do {						\
+	(head)->slh_first = SLIST_END(head);				\
+} while (/*CONSTCOND*/0)
+
+#define	SLIST_INSERT_AFTER(slistelm, elm, field) do {			\
+	(elm)->field.sle_next = (slistelm)->field.sle_next;		\
+	(slistelm)->field.sle_next = (elm);				\
+} while (/*CONSTCOND*/0)
+
+#define	SLIST_INSERT_HEAD(head, elm, field) do {			\
+	(elm)->field.sle_next = (head)->slh_first;			\
+	(head)->slh_first = (elm);					\
+} while (/*CONSTCOND*/0)
+
+#define	SLIST_REMOVE_AFTER(slistelm, field) do {			\
+	(slistelm)->field.sle_next =					\
+	    SLIST_NEXT(SLIST_NEXT((slistelm), field), field);		\
+} while (/*CONSTCOND*/0)
+
+#define	SLIST_REMOVE_HEAD(head, field) do {				\
+	(head)->slh_first = (head)->slh_first->field.sle_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	SLIST_REMOVE(head, elm, type, field) do {			\
+	if ((head)->slh_first == (elm)) {				\
+		SLIST_REMOVE_HEAD((head), field);			\
+	}								\
+	else {								\
+		struct type *curelm = (head)->slh_first;		\
+		while(curelm->field.sle_next != (elm))			\
+			curelm = curelm->field.sle_next;		\
+		curelm->field.sle_next =				\
+		    curelm->field.sle_next->field.sle_next;		\
+	}								\
+} while (/*CONSTCOND*/0)
+
+
+/*
+ * List definitions.
+ */
+#define	LIST_HEAD(name, type)						\
+struct name {								\
+	struct type *lh_first;	/* first element */			\
+}
+
+#define	LIST_HEAD_INITIALIZER(head)					\
+	{ NULL }
+
+#define	LIST_ENTRY(type)						\
+struct {								\
+	struct type *le_next;	/* next element */			\
+	struct type **le_prev;	/* address of previous next element */	\
+}
+
+/*
+ * List access methods.
+ */
+#define	LIST_FIRST(head)		((head)->lh_first)
+#define	LIST_END(head)			NULL
+#define	LIST_EMPTY(head)		((head)->lh_first == LIST_END(head))
+#define	LIST_NEXT(elm, field)		((elm)->field.le_next)
+
+#define	LIST_FOREACH(var, head, field)					\
+	for ((var) = ((head)->lh_first);				\
+	    (var) != LIST_END(head);					\
+	    (var) = ((var)->field.le_next))
+
+#define	LIST_FOREACH_SAFE(var, head, field, tvar)			\
+	for ((var) = LIST_FIRST((head));				\
+	    (var) != LIST_END(head) &&					\
+	    ((tvar) = LIST_NEXT((var), field), 1);			\
+	    (var) = (tvar))
+
+#define	LIST_MOVE(head1, head2) do {					\
+	LIST_INIT((head2));						\
+	if (!LIST_EMPTY((head1))) {					\
+		(head2)->lh_first = (head1)->lh_first;			\
+		LIST_INIT((head1));					\
+	}								\
+} while (/*CONSTCOND*/0)
+
+/*
+ * List functions.
+ */
+#if defined(QUEUEDEBUG)
+#define	QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field)			\
+	if ((head)->lh_first &&						\
+	    (head)->lh_first->field.le_prev != &(head)->lh_first)	\
+		QUEUEDEBUG_ABORT("LIST_INSERT_HEAD %p %s:%d", (head),	\
+		    __FILE__, __LINE__);
+#define	QUEUEDEBUG_LIST_OP(elm, field)					\
+	if ((elm)->field.le_next &&					\
+	    (elm)->field.le_next->field.le_prev !=			\
+	    &(elm)->field.le_next)					\
+		QUEUEDEBUG_ABORT("LIST_* forw %p %s:%d", (elm),		\
+		    __FILE__, __LINE__);				\
+	if (*(elm)->field.le_prev != (elm))				\
+		QUEUEDEBUG_ABORT("LIST_* back %p %s:%d", (elm),		\
+		    __FILE__, __LINE__);
+#define	QUEUEDEBUG_LIST_POSTREMOVE(elm, field)				\
+	(elm)->field.le_next = (void *)1L;				\
+	(elm)->field.le_prev = (void *)1L;
+#else
+#define	QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field)
+#define	QUEUEDEBUG_LIST_OP(elm, field)
+#define	QUEUEDEBUG_LIST_POSTREMOVE(elm, field)
+#endif
+
+#define	LIST_INIT(head) do {						\
+	(head)->lh_first = LIST_END(head);				\
+} while (/*CONSTCOND*/0)
+
+#define	LIST_INSERT_AFTER(listelm, elm, field) do {			\
+	QUEUEDEBUG_LIST_OP((listelm), field)				\
+	if (((elm)->field.le_next = (listelm)->field.le_next) != 	\
+	    LIST_END(head))						\
+		(listelm)->field.le_next->field.le_prev =		\
+		    &(elm)->field.le_next;				\
+	(listelm)->field.le_next = (elm);				\
+	(elm)->field.le_prev = &(listelm)->field.le_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	LIST_INSERT_BEFORE(listelm, elm, field) do {			\
+	QUEUEDEBUG_LIST_OP((listelm), field)				\
+	(elm)->field.le_prev = (listelm)->field.le_prev;		\
+	(elm)->field.le_next = (listelm);				\
+	*(listelm)->field.le_prev = (elm);				\
+	(listelm)->field.le_prev = &(elm)->field.le_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	LIST_INSERT_HEAD(head, elm, field) do {				\
+	QUEUEDEBUG_LIST_INSERT_HEAD((head), (elm), field)		\
+	if (((elm)->field.le_next = (head)->lh_first) != LIST_END(head))\
+		(head)->lh_first->field.le_prev = &(elm)->field.le_next;\
+	(head)->lh_first = (elm);					\
+	(elm)->field.le_prev = &(head)->lh_first;			\
+} while (/*CONSTCOND*/0)
+
+#define	LIST_REMOVE(elm, field) do {					\
+	QUEUEDEBUG_LIST_OP((elm), field)				\
+	if ((elm)->field.le_next != NULL)				\
+		(elm)->field.le_next->field.le_prev = 			\
+		    (elm)->field.le_prev;				\
+	*(elm)->field.le_prev = (elm)->field.le_next;			\
+	QUEUEDEBUG_LIST_POSTREMOVE((elm), field)			\
+} while (/*CONSTCOND*/0)
+
+#define LIST_REPLACE(elm, elm2, field) do {				\
+	if (((elm2)->field.le_next = (elm)->field.le_next) != NULL)	\
+		(elm2)->field.le_next->field.le_prev =			\
+		    &(elm2)->field.le_next;				\
+	(elm2)->field.le_prev = (elm)->field.le_prev;			\
+	*(elm2)->field.le_prev = (elm2);				\
+	QUEUEDEBUG_LIST_POSTREMOVE((elm), field)			\
+} while (/*CONSTCOND*/0)
+
+/*
+ * Simple queue definitions.
+ */
+#define	SIMPLEQ_HEAD(name, type)					\
+struct name {								\
+	struct type *sqh_first;	/* first element */			\
+	struct type **sqh_last;	/* addr of last next element */		\
+}
+
+#define	SIMPLEQ_HEAD_INITIALIZER(head)					\
+	{ NULL, &(head).sqh_first }
+
+#define	SIMPLEQ_ENTRY(type)						\
+struct {								\
+	struct type *sqe_next;	/* next element */			\
+}
+
+/*
+ * Simple queue access methods.
+ */
+#define	SIMPLEQ_FIRST(head)		((head)->sqh_first)
+#define	SIMPLEQ_END(head)		NULL
+#define	SIMPLEQ_EMPTY(head)		((head)->sqh_first == SIMPLEQ_END(head))
+#define	SIMPLEQ_NEXT(elm, field)	((elm)->field.sqe_next)
+
+#define	SIMPLEQ_FOREACH(var, head, field)				\
+	for ((var) = ((head)->sqh_first);				\
+	    (var) != SIMPLEQ_END(head);					\
+	    (var) = ((var)->field.sqe_next))
+
+#define	SIMPLEQ_FOREACH_SAFE(var, head, field, next)			\
+	for ((var) = ((head)->sqh_first);				\
+	    (var) != SIMPLEQ_END(head) &&				\
+	    ((next = ((var)->field.sqe_next)), 1);			\
+	    (var) = (next))
+
+/*
+ * Simple queue functions.
+ */
+#define	SIMPLEQ_INIT(head) do {						\
+	(head)->sqh_first = NULL;					\
+	(head)->sqh_last = &(head)->sqh_first;				\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_INSERT_HEAD(head, elm, field) do {			\
+	if (((elm)->field.sqe_next = (head)->sqh_first) == NULL)	\
+		(head)->sqh_last = &(elm)->field.sqe_next;		\
+	(head)->sqh_first = (elm);					\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_INSERT_TAIL(head, elm, field) do {			\
+	(elm)->field.sqe_next = NULL;					\
+	*(head)->sqh_last = (elm);					\
+	(head)->sqh_last = &(elm)->field.sqe_next;			\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do {		\
+	if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\
+		(head)->sqh_last = &(elm)->field.sqe_next;		\
+	(listelm)->field.sqe_next = (elm);				\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_REMOVE_HEAD(head, field) do {				\
+	if (((head)->sqh_first = (head)->sqh_first->field.sqe_next) == NULL) \
+		(head)->sqh_last = &(head)->sqh_first;			\
+} while (/*CONSTCOND*/0)
+
+#define SIMPLEQ_REMOVE_AFTER(head, elm, field) do {			\
+	if (((elm)->field.sqe_next = (elm)->field.sqe_next->field.sqe_next) \
+	    == NULL)							\
+		(head)->sqh_last = &(elm)->field.sqe_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_REMOVE(head, elm, type, field) do {			\
+	if ((head)->sqh_first == (elm)) {				\
+		SIMPLEQ_REMOVE_HEAD((head), field);			\
+	} else {							\
+		struct type *curelm = (head)->sqh_first;		\
+		while (curelm->field.sqe_next != (elm))			\
+			curelm = curelm->field.sqe_next;		\
+		if ((curelm->field.sqe_next =				\
+			curelm->field.sqe_next->field.sqe_next) == NULL) \
+			    (head)->sqh_last = &(curelm)->field.sqe_next; \
+	}								\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_CONCAT(head1, head2) do {				\
+	if (!SIMPLEQ_EMPTY((head2))) {					\
+		*(head1)->sqh_last = (head2)->sqh_first;		\
+		(head1)->sqh_last = (head2)->sqh_last;		\
+		SIMPLEQ_INIT((head2));					\
+	}								\
+} while (/*CONSTCOND*/0)
+
+#define	SIMPLEQ_LAST(head, type, field)					\
+	(SIMPLEQ_EMPTY((head)) ?						\
+		NULL :							\
+	        ((struct type *)(void *)				\
+		((char *)((head)->sqh_last) - offsetof(struct type, field))))
+
+/*
+ * Tail queue definitions.
+ */
+#define	_TAILQ_HEAD(name, type, qual)					\
+struct name {								\
+	qual type *tqh_first;		/* first element */		\
+	qual type *qual *tqh_last;	/* addr of last next element */	\
+}
+#define TAILQ_HEAD(name, type)	_TAILQ_HEAD(name, struct type,)
+
+#define	TAILQ_HEAD_INITIALIZER(head)					\
+	{ TAILQ_END(head), &(head).tqh_first }
+
+#define	_TAILQ_ENTRY(type, qual)					\
+struct {								\
+	qual type *tqe_next;		/* next element */		\
+	qual type *qual *tqe_prev;	/* address of previous next element */\
+}
+#define TAILQ_ENTRY(type)	_TAILQ_ENTRY(struct type,)
+
+/*
+ * Tail queue access methods.
+ */
+#define	TAILQ_FIRST(head)		((head)->tqh_first)
+#define	TAILQ_END(head)			(NULL)
+#define	TAILQ_NEXT(elm, field)		((elm)->field.tqe_next)
+#define	TAILQ_LAST(head, headname) \
+	(*(((struct headname *)(void *)((head)->tqh_last))->tqh_last))
+#define	TAILQ_PREV(elm, headname, field) \
+	(*(((struct headname *)(void *)((elm)->field.tqe_prev))->tqh_last))
+#define	TAILQ_EMPTY(head)		(TAILQ_FIRST(head) == TAILQ_END(head))
+
+
+#define	TAILQ_FOREACH(var, head, field)					\
+	for ((var) = ((head)->tqh_first);				\
+	    (var) != TAILQ_END(head);					\
+	    (var) = ((var)->field.tqe_next))
+
+#define	TAILQ_FOREACH_SAFE(var, head, field, next)			\
+	for ((var) = ((head)->tqh_first);				\
+	    (var) != TAILQ_END(head) &&					\
+	    ((next) = TAILQ_NEXT(var, field), 1); (var) = (next))
+
+#define	TAILQ_FOREACH_REVERSE(var, head, headname, field)		\
+	for ((var) = TAILQ_LAST((head), headname);			\
+	    (var) != TAILQ_END(head);					\
+	    (var) = TAILQ_PREV((var), headname, field))
+
+#define	TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, prev)	\
+	for ((var) = TAILQ_LAST((head), headname);			\
+	    (var) != TAILQ_END(head) && 				\
+	    ((prev) = TAILQ_PREV((var), headname, field), 1); (var) = (prev))
+
+/*
+ * Tail queue functions.
+ */
+#if defined(QUEUEDEBUG)
+#define	QUEUEDEBUG_TAILQ_INSERT_HEAD(head, elm, field)			\
+	if ((head)->tqh_first &&					\
+	    (head)->tqh_first->field.tqe_prev != &(head)->tqh_first)	\
+		QUEUEDEBUG_ABORT("TAILQ_INSERT_HEAD %p %s:%d", (head),	\
+		    __FILE__, __LINE__);
+#define	QUEUEDEBUG_TAILQ_INSERT_TAIL(head, elm, field)			\
+	if (*(head)->tqh_last != NULL)					\
+		QUEUEDEBUG_ABORT("TAILQ_INSERT_TAIL %p %s:%d", (head),	\
+		    __FILE__, __LINE__);
+#define	QUEUEDEBUG_TAILQ_OP(elm, field)					\
+	if ((elm)->field.tqe_next &&					\
+	    (elm)->field.tqe_next->field.tqe_prev !=			\
+	    &(elm)->field.tqe_next)					\
+		QUEUEDEBUG_ABORT("TAILQ_* forw %p %s:%d", (elm),	\
+		    __FILE__, __LINE__);				\
+	if (*(elm)->field.tqe_prev != (elm))				\
+		QUEUEDEBUG_ABORT("TAILQ_* back %p %s:%d", (elm),	\
+		    __FILE__, __LINE__);
+#define	QUEUEDEBUG_TAILQ_PREREMOVE(head, elm, field)			\
+	if ((elm)->field.tqe_next == NULL &&				\
+	    (head)->tqh_last != &(elm)->field.tqe_next)			\
+		QUEUEDEBUG_ABORT("TAILQ_PREREMOVE head %p elm %p %s:%d",\
+		    (head), (elm), __FILE__, __LINE__);
+#define	QUEUEDEBUG_TAILQ_POSTREMOVE(elm, field)				\
+	(elm)->field.tqe_next = (void *)1L;				\
+	(elm)->field.tqe_prev = (void *)1L;
+#else
+#define	QUEUEDEBUG_TAILQ_INSERT_HEAD(head, elm, field)
+#define	QUEUEDEBUG_TAILQ_INSERT_TAIL(head, elm, field)
+#define	QUEUEDEBUG_TAILQ_OP(elm, field)
+#define	QUEUEDEBUG_TAILQ_PREREMOVE(head, elm, field)
+#define	QUEUEDEBUG_TAILQ_POSTREMOVE(elm, field)
+#endif
+
+#define	TAILQ_INIT(head) do {						\
+	(head)->tqh_first = TAILQ_END(head);				\
+	(head)->tqh_last = &(head)->tqh_first;				\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_INSERT_HEAD(head, elm, field) do {			\
+	QUEUEDEBUG_TAILQ_INSERT_HEAD((head), (elm), field)		\
+	if (((elm)->field.tqe_next = (head)->tqh_first) != TAILQ_END(head))\
+		(head)->tqh_first->field.tqe_prev =			\
+		    &(elm)->field.tqe_next;				\
+	else								\
+		(head)->tqh_last = &(elm)->field.tqe_next;		\
+	(head)->tqh_first = (elm);					\
+	(elm)->field.tqe_prev = &(head)->tqh_first;			\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_INSERT_TAIL(head, elm, field) do {			\
+	QUEUEDEBUG_TAILQ_INSERT_TAIL((head), (elm), field)		\
+	(elm)->field.tqe_next = TAILQ_END(head);			\
+	(elm)->field.tqe_prev = (head)->tqh_last;			\
+	*(head)->tqh_last = (elm);					\
+	(head)->tqh_last = &(elm)->field.tqe_next;			\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_INSERT_AFTER(head, listelm, elm, field) do {		\
+	QUEUEDEBUG_TAILQ_OP((listelm), field)				\
+	if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != 	\
+	    TAILQ_END(head))						\
+		(elm)->field.tqe_next->field.tqe_prev = 		\
+		    &(elm)->field.tqe_next;				\
+	else								\
+		(head)->tqh_last = &(elm)->field.tqe_next;		\
+	(listelm)->field.tqe_next = (elm);				\
+	(elm)->field.tqe_prev = &(listelm)->field.tqe_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_INSERT_BEFORE(listelm, elm, field) do {			\
+	QUEUEDEBUG_TAILQ_OP((listelm), field)				\
+	(elm)->field.tqe_prev = (listelm)->field.tqe_prev;		\
+	(elm)->field.tqe_next = (listelm);				\
+	*(listelm)->field.tqe_prev = (elm);				\
+	(listelm)->field.tqe_prev = &(elm)->field.tqe_next;		\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_REMOVE(head, elm, field) do {				\
+	QUEUEDEBUG_TAILQ_PREREMOVE((head), (elm), field)		\
+	QUEUEDEBUG_TAILQ_OP((elm), field)				\
+	if (((elm)->field.tqe_next) != TAILQ_END(head))			\
+		(elm)->field.tqe_next->field.tqe_prev = 		\
+		    (elm)->field.tqe_prev;				\
+	else								\
+		(head)->tqh_last = (elm)->field.tqe_prev;		\
+	*(elm)->field.tqe_prev = (elm)->field.tqe_next;			\
+	QUEUEDEBUG_TAILQ_POSTREMOVE((elm), field);			\
+} while (/*CONSTCOND*/0)
+
+#define TAILQ_REPLACE(head, elm, elm2, field) do {			\
+        if (((elm2)->field.tqe_next = (elm)->field.tqe_next) != 	\
+	    TAILQ_END(head))   						\
+                (elm2)->field.tqe_next->field.tqe_prev =		\
+                    &(elm2)->field.tqe_next;				\
+        else								\
+                (head)->tqh_last = &(elm2)->field.tqe_next;		\
+        (elm2)->field.tqe_prev = (elm)->field.tqe_prev;			\
+        *(elm2)->field.tqe_prev = (elm2);				\
+	QUEUEDEBUG_TAILQ_POSTREMOVE((elm), field);			\
+} while (/*CONSTCOND*/0)
+
+#define	TAILQ_CONCAT(head1, head2, field) do {				\
+	if (!TAILQ_EMPTY(head2)) {					\
+		*(head1)->tqh_last = (head2)->tqh_first;		\
+		(head2)->tqh_first->field.tqe_prev = (head1)->tqh_last;	\
+		(head1)->tqh_last = (head2)->tqh_last;			\
+		TAILQ_INIT((head2));					\
+	}								\
+} while (/*CONSTCOND*/0)
+
+/*
+ * Singly-linked Tail queue declarations.
+ */
+#define	STAILQ_HEAD(name, type)						\
+struct name {								\
+	struct type *stqh_first;	/* first element */		\
+	struct type **stqh_last;	/* addr of last next element */	\
+}
+
+#define	STAILQ_HEAD_INITIALIZER(head)					\
+	{ NULL, &(head).stqh_first }
+
+#define	STAILQ_ENTRY(type)						\
+struct {								\
+	struct type *stqe_next;	/* next element */			\
+}
+
+/*
+ * Singly-linked Tail queue access methods.
+ */
+#define	STAILQ_FIRST(head)	((head)->stqh_first)
+#define	STAILQ_END(head)	NULL
+#define	STAILQ_NEXT(elm, field)	((elm)->field.stqe_next)
+#define	STAILQ_EMPTY(head)	(STAILQ_FIRST(head) == STAILQ_END(head))
+
+/*
+ * Singly-linked Tail queue functions.
+ */
+#define	STAILQ_INIT(head) do {						\
+	(head)->stqh_first = NULL;					\
+	(head)->stqh_last = &(head)->stqh_first;				\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_INSERT_HEAD(head, elm, field) do {			\
+	if (((elm)->field.stqe_next = (head)->stqh_first) == NULL)	\
+		(head)->stqh_last = &(elm)->field.stqe_next;		\
+	(head)->stqh_first = (elm);					\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_INSERT_TAIL(head, elm, field) do {			\
+	(elm)->field.stqe_next = NULL;					\
+	*(head)->stqh_last = (elm);					\
+	(head)->stqh_last = &(elm)->field.stqe_next;			\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_INSERT_AFTER(head, listelm, elm, field) do {		\
+	if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\
+		(head)->stqh_last = &(elm)->field.stqe_next;		\
+	(listelm)->field.stqe_next = (elm);				\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_REMOVE_HEAD(head, field) do {				\
+	if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == NULL) \
+		(head)->stqh_last = &(head)->stqh_first;			\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_REMOVE(head, elm, type, field) do {			\
+	if ((head)->stqh_first == (elm)) {				\
+		STAILQ_REMOVE_HEAD((head), field);			\
+	} else {							\
+		struct type *curelm = (head)->stqh_first;		\
+		while (curelm->field.stqe_next != (elm))			\
+			curelm = curelm->field.stqe_next;		\
+		if ((curelm->field.stqe_next =				\
+			curelm->field.stqe_next->field.stqe_next) == NULL) \
+			    (head)->stqh_last = &(curelm)->field.stqe_next; \
+	}								\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_FOREACH(var, head, field)				\
+	for ((var) = ((head)->stqh_first);				\
+		(var);							\
+		(var) = ((var)->field.stqe_next))
+
+#define	STAILQ_FOREACH_SAFE(var, head, field, tvar)			\
+	for ((var) = STAILQ_FIRST((head));				\
+	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
+	    (var) = (tvar))
+
+#define	STAILQ_CONCAT(head1, head2) do {				\
+	if (!STAILQ_EMPTY((head2))) {					\
+		*(head1)->stqh_last = (head2)->stqh_first;		\
+		(head1)->stqh_last = (head2)->stqh_last;		\
+		STAILQ_INIT((head2));					\
+	}								\
+} while (/*CONSTCOND*/0)
+
+#define	STAILQ_LAST(head, type, field)					\
+	(STAILQ_EMPTY((head)) ?						\
+		NULL :							\
+	        ((struct type *)(void *)				\
+		((char *)((head)->stqh_last) - offsetof(struct type, field))))
+
+
+#ifndef _KERNEL
+/*
+ * Circular queue definitions. Do not use. We still keep the macros
+ * for compatibility but because of pointer aliasing issues their use
+ * is discouraged!
+ */
+
+/*
+ * __launder_type():  We use this ugly hack to work around the the compiler
+ * noticing that two types may not alias each other and elide tests in code.
+ * We hit this in the CIRCLEQ macros when comparing 'struct name *' and
+ * 'struct type *' (see CIRCLEQ_HEAD()).  Modern compilers (such as GCC
+ * 4.8) declare these comparisons as always false, causing the code to
+ * not run as designed.
+ *
+ * This hack is only to be used for comparisons and thus can be fully const.
+ * Do not use for assignment.
+ *
+ * If we ever choose to change the ABI of the CIRCLEQ macros, we could fix
+ * this by changing the head/tail sentinal values, but see the note above
+ * this one.
+ */
+static __inline const void * __launder_type(const void *);
+static __inline const void *
+__launder_type(const void *__x)
+{
+	__asm __volatile("" : "+r" (__x));
+	return __x;
+}
+
+#if defined(QUEUEDEBUG)
+#define QUEUEDEBUG_CIRCLEQ_HEAD(head, field)				\
+	if ((head)->cqh_first != CIRCLEQ_ENDC(head) &&			\
+	    (head)->cqh_first->field.cqe_prev != CIRCLEQ_ENDC(head))	\
+		QUEUEDEBUG_ABORT("CIRCLEQ head forw %p %s:%d", (head),	\
+		      __FILE__, __LINE__);				\
+	if ((head)->cqh_last != CIRCLEQ_ENDC(head) &&			\
+	    (head)->cqh_last->field.cqe_next != CIRCLEQ_ENDC(head))	\
+		QUEUEDEBUG_ABORT("CIRCLEQ head back %p %s:%d", (head),	\
+		      __FILE__, __LINE__);
+#define QUEUEDEBUG_CIRCLEQ_ELM(head, elm, field)			\
+	if ((elm)->field.cqe_next == CIRCLEQ_ENDC(head)) {		\
+		if ((head)->cqh_last != (elm))				\
+			QUEUEDEBUG_ABORT("CIRCLEQ elm last %p %s:%d",	\
+			    (elm), __FILE__, __LINE__);			\
+	} else {							\
+		if ((elm)->field.cqe_next->field.cqe_prev != (elm))	\
+			QUEUEDEBUG_ABORT("CIRCLEQ elm forw %p %s:%d",	\
+			    (elm), __FILE__, __LINE__);			\
+	}								\
+	if ((elm)->field.cqe_prev == CIRCLEQ_ENDC(head)) {		\
+		if ((head)->cqh_first != (elm))				\
+			QUEUEDEBUG_ABORT("CIRCLEQ elm first %p %s:%d",	\
+			    (elm), __FILE__, __LINE__);			\
+	} else {							\
+		if ((elm)->field.cqe_prev->field.cqe_next != (elm))	\
+			QUEUEDEBUG_ABORT("CIRCLEQ elm prev %p %s:%d",	\
+			    (elm), __FILE__, __LINE__);			\
+	}
+#define QUEUEDEBUG_CIRCLEQ_POSTREMOVE(elm, field)			\
+	(elm)->field.cqe_next = (void *)1L;				\
+	(elm)->field.cqe_prev = (void *)1L;
+#else
+#define QUEUEDEBUG_CIRCLEQ_HEAD(head, field)
+#define QUEUEDEBUG_CIRCLEQ_ELM(head, elm, field)
+#define QUEUEDEBUG_CIRCLEQ_POSTREMOVE(elm, field)
+#endif
+
+#define	CIRCLEQ_HEAD(name, type)					\
+struct name {								\
+	struct type *cqh_first;		/* first element */		\
+	struct type *cqh_last;		/* last element */		\
+}
+
+#define	CIRCLEQ_HEAD_INITIALIZER(head)					\
+	{ CIRCLEQ_END(&head), CIRCLEQ_END(&head) }
+
+#define	CIRCLEQ_ENTRY(type)						\
+struct {								\
+	struct type *cqe_next;		/* next element */		\
+	struct type *cqe_prev;		/* previous element */		\
+}
+
+/*
+ * Circular queue functions.
+ */
+#define	CIRCLEQ_INIT(head) do {						\
+	(head)->cqh_first = CIRCLEQ_END(head);				\
+	(head)->cqh_last = CIRCLEQ_END(head);				\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do {		\
+	QUEUEDEBUG_CIRCLEQ_HEAD((head), field)				\
+	QUEUEDEBUG_CIRCLEQ_ELM((head), (listelm), field)		\
+	(elm)->field.cqe_next = (listelm)->field.cqe_next;		\
+	(elm)->field.cqe_prev = (listelm);				\
+	if ((listelm)->field.cqe_next == CIRCLEQ_ENDC(head))		\
+		(head)->cqh_last = (elm);				\
+	else								\
+		(listelm)->field.cqe_next->field.cqe_prev = (elm);	\
+	(listelm)->field.cqe_next = (elm);				\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do {		\
+	QUEUEDEBUG_CIRCLEQ_HEAD((head), field)				\
+	QUEUEDEBUG_CIRCLEQ_ELM((head), (listelm), field)		\
+	(elm)->field.cqe_next = (listelm);				\
+	(elm)->field.cqe_prev = (listelm)->field.cqe_prev;		\
+	if ((listelm)->field.cqe_prev == CIRCLEQ_ENDC(head))		\
+		(head)->cqh_first = (elm);				\
+	else								\
+		(listelm)->field.cqe_prev->field.cqe_next = (elm);	\
+	(listelm)->field.cqe_prev = (elm);				\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_INSERT_HEAD(head, elm, field) do {			\
+	QUEUEDEBUG_CIRCLEQ_HEAD((head), field)				\
+	(elm)->field.cqe_next = (head)->cqh_first;			\
+	(elm)->field.cqe_prev = CIRCLEQ_END(head);			\
+	if ((head)->cqh_last == CIRCLEQ_ENDC(head))			\
+		(head)->cqh_last = (elm);				\
+	else								\
+		(head)->cqh_first->field.cqe_prev = (elm);		\
+	(head)->cqh_first = (elm);					\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_INSERT_TAIL(head, elm, field) do {			\
+	QUEUEDEBUG_CIRCLEQ_HEAD((head), field)				\
+	(elm)->field.cqe_next = CIRCLEQ_END(head);			\
+	(elm)->field.cqe_prev = (head)->cqh_last;			\
+	if ((head)->cqh_first == CIRCLEQ_ENDC(head))			\
+		(head)->cqh_first = (elm);				\
+	else								\
+		(head)->cqh_last->field.cqe_next = (elm);		\
+	(head)->cqh_last = (elm);					\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_REMOVE(head, elm, field) do {				\
+	QUEUEDEBUG_CIRCLEQ_HEAD((head), field)				\
+	QUEUEDEBUG_CIRCLEQ_ELM((head), (elm), field)			\
+	if ((elm)->field.cqe_next == CIRCLEQ_ENDC(head))		\
+		(head)->cqh_last = (elm)->field.cqe_prev;		\
+	else								\
+		(elm)->field.cqe_next->field.cqe_prev =			\
+		    (elm)->field.cqe_prev;				\
+	if ((elm)->field.cqe_prev == CIRCLEQ_ENDC(head))		\
+		(head)->cqh_first = (elm)->field.cqe_next;		\
+	else								\
+		(elm)->field.cqe_prev->field.cqe_next =			\
+		    (elm)->field.cqe_next;				\
+	QUEUEDEBUG_CIRCLEQ_POSTREMOVE((elm), field)			\
+} while (/*CONSTCOND*/0)
+
+#define	CIRCLEQ_FOREACH(var, head, field)				\
+	for ((var) = ((head)->cqh_first);				\
+		(var) != CIRCLEQ_ENDC(head);				\
+		(var) = ((var)->field.cqe_next))
+
+#define	CIRCLEQ_FOREACH_REVERSE(var, head, field)			\
+	for ((var) = ((head)->cqh_last);				\
+		(var) != CIRCLEQ_ENDC(head);				\
+		(var) = ((var)->field.cqe_prev))
+
+/*
+ * Circular queue access methods.
+ */
+#define	CIRCLEQ_FIRST(head)		((head)->cqh_first)
+#define	CIRCLEQ_LAST(head)		((head)->cqh_last)
+/* For comparisons */
+#define	CIRCLEQ_ENDC(head)		(__launder_type(head))
+/* For assignments */
+#define	CIRCLEQ_END(head)		((void *)(head))
+#define	CIRCLEQ_NEXT(elm, field)	((elm)->field.cqe_next)
+#define	CIRCLEQ_PREV(elm, field)	((elm)->field.cqe_prev)
+#define	CIRCLEQ_EMPTY(head)						\
+    (CIRCLEQ_FIRST(head) == CIRCLEQ_ENDC(head))
+
+#define CIRCLEQ_LOOP_NEXT(head, elm, field)				\
+	(((elm)->field.cqe_next == CIRCLEQ_ENDC(head))			\
+	    ? ((head)->cqh_first)					\
+	    : (elm->field.cqe_next))
+#define CIRCLEQ_LOOP_PREV(head, elm, field)				\
+	(((elm)->field.cqe_prev == CIRCLEQ_ENDC(head))			\
+	    ? ((head)->cqh_last)					\
+	    : (elm->field.cqe_prev))
+#endif /* !_KERNEL */
+
+#endif	/* !_SYS_QUEUE_H_ */
diff --git a/core-mod/core/musl/files/tree.h b/core-mod/core/musl/files/tree.h
new file mode 100755
index 0000000..eaea56a
--- /dev/null
+++ b/core-mod/core/musl/files/tree.h
@@ -0,0 +1,761 @@
+/*	$NetBSD: tree.h,v 1.20 2013/09/14 13:20:45 joerg Exp $	*/
+/*	$OpenBSD: tree.h,v 1.13 2011/07/09 00:19:45 pirofti Exp $	*/
+/*
+ * Copyright 2002 Niels Provos <provos@citi.umich.edu>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef	_SYS_TREE_H_
+#define	_SYS_TREE_H_
+
+/*
+ * This file defines data structures for different types of trees:
+ * splay trees and red-black trees.
+ *
+ * A splay tree is a self-organizing data structure.  Every operation
+ * on the tree causes a splay to happen.  The splay moves the requested
+ * node to the root of the tree and partly rebalances it.
+ *
+ * This has the benefit that request locality causes faster lookups as
+ * the requested nodes move to the top of the tree.  On the other hand,
+ * every lookup causes memory writes.
+ *
+ * The Balance Theorem bounds the total access time for m operations
+ * and n inserts on an initially empty tree as O((m + n)lg n).  The
+ * amortized cost for a sequence of m accesses to a splay tree is O(lg n);
+ *
+ * A red-black tree is a binary search tree with the node color as an
+ * extra attribute.  It fulfills a set of conditions:
+ *	- every search path from the root to a leaf consists of the
+ *	  same number of black nodes,
+ *	- each red node (except for the root) has a black parent,
+ *	- each leaf node is black.
+ *
+ * Every operation on a red-black tree is bounded as O(lg n).
+ * The maximum height of a red-black tree is 2lg (n+1).
+ */
+
+#define SPLAY_HEAD(name, type)						\
+struct name {								\
+	struct type *sph_root; /* root of the tree */			\
+}
+
+#define SPLAY_INITIALIZER(root)						\
+	{ NULL }
+
+#define SPLAY_INIT(root) do {						\
+	(root)->sph_root = NULL;					\
+} while (/*CONSTCOND*/ 0)
+
+#define SPLAY_ENTRY(type)						\
+struct {								\
+	struct type *spe_left; /* left element */			\
+	struct type *spe_right; /* right element */			\
+}
+
+#define SPLAY_LEFT(elm, field)		(elm)->field.spe_left
+#define SPLAY_RIGHT(elm, field)		(elm)->field.spe_right
+#define SPLAY_ROOT(head)		(head)->sph_root
+#define SPLAY_EMPTY(head)		(SPLAY_ROOT(head) == NULL)
+
+/* SPLAY_ROTATE_{LEFT,RIGHT} expect that tmp hold SPLAY_{RIGHT,LEFT} */
+#define SPLAY_ROTATE_RIGHT(head, tmp, field) do {			\
+	SPLAY_LEFT((head)->sph_root, field) = SPLAY_RIGHT(tmp, field);	\
+	SPLAY_RIGHT(tmp, field) = (head)->sph_root;			\
+	(head)->sph_root = tmp;						\
+} while (/*CONSTCOND*/ 0)
+
+#define SPLAY_ROTATE_LEFT(head, tmp, field) do {			\
+	SPLAY_RIGHT((head)->sph_root, field) = SPLAY_LEFT(tmp, field);	\
+	SPLAY_LEFT(tmp, field) = (head)->sph_root;			\
+	(head)->sph_root = tmp;						\
+} while (/*CONSTCOND*/ 0)
+
+#define SPLAY_LINKLEFT(head, tmp, field) do {				\
+	SPLAY_LEFT(tmp, field) = (head)->sph_root;			\
+	tmp = (head)->sph_root;						\
+	(head)->sph_root = SPLAY_LEFT((head)->sph_root, field);		\
+} while (/*CONSTCOND*/ 0)
+
+#define SPLAY_LINKRIGHT(head, tmp, field) do {				\
+	SPLAY_RIGHT(tmp, field) = (head)->sph_root;			\
+	tmp = (head)->sph_root;						\
+	(head)->sph_root = SPLAY_RIGHT((head)->sph_root, field);	\
+} while (/*CONSTCOND*/ 0)
+
+#define SPLAY_ASSEMBLE(head, node, left, right, field) do {		\
+	SPLAY_RIGHT(left, field) = SPLAY_LEFT((head)->sph_root, field);	\
+	SPLAY_LEFT(right, field) = SPLAY_RIGHT((head)->sph_root, field);\
+	SPLAY_LEFT((head)->sph_root, field) = SPLAY_RIGHT(node, field);	\
+	SPLAY_RIGHT((head)->sph_root, field) = SPLAY_LEFT(node, field);	\
+} while (/*CONSTCOND*/ 0)
+
+/* Generates prototypes and inline functions */
+
+#define SPLAY_PROTOTYPE(name, type, field, cmp)				\
+void name##_SPLAY(struct name *, struct type *);			\
+void name##_SPLAY_MINMAX(struct name *, int);				\
+struct type *name##_SPLAY_INSERT(struct name *, struct type *);		\
+struct type *name##_SPLAY_REMOVE(struct name *, struct type *);		\
+									\
+/* Finds the node with the same key as elm */				\
+static __inline struct type *						\
+name##_SPLAY_FIND(struct name *head, struct type *elm)			\
+{									\
+	if (SPLAY_EMPTY(head))						\
+		return(NULL);						\
+	name##_SPLAY(head, elm);					\
+	if ((cmp)(elm, (head)->sph_root) == 0)				\
+		return (head->sph_root);				\
+	return (NULL);							\
+}									\
+									\
+static __inline __unused struct type *					\
+name##_SPLAY_NEXT(struct name *head, struct type *elm)			\
+{									\
+	name##_SPLAY(head, elm);					\
+	if (SPLAY_RIGHT(elm, field) != NULL) {				\
+		elm = SPLAY_RIGHT(elm, field);				\
+		while (SPLAY_LEFT(elm, field) != NULL) {		\
+			elm = SPLAY_LEFT(elm, field);			\
+		}							\
+	} else								\
+		elm = NULL;						\
+	return (elm);							\
+}									\
+									\
+static __unused __inline struct type *					\
+name##_SPLAY_MIN_MAX(struct name *head, int val)			\
+{									\
+	name##_SPLAY_MINMAX(head, val);					\
+        return (SPLAY_ROOT(head));					\
+}
+
+/* Main splay operation.
+ * Moves node close to the key of elm to top
+ */
+#define SPLAY_GENERATE(name, type, field, cmp)				\
+struct type *								\
+name##_SPLAY_INSERT(struct name *head, struct type *elm)		\
+{									\
+    if (SPLAY_EMPTY(head)) {						\
+	    SPLAY_LEFT(elm, field) = SPLAY_RIGHT(elm, field) = NULL;	\
+    } else {								\
+	    int __comp;							\
+	    name##_SPLAY(head, elm);					\
+	    __comp = (cmp)(elm, (head)->sph_root);			\
+	    if(__comp < 0) {						\
+		    SPLAY_LEFT(elm, field) = SPLAY_LEFT((head)->sph_root, field);\
+		    SPLAY_RIGHT(elm, field) = (head)->sph_root;		\
+		    SPLAY_LEFT((head)->sph_root, field) = NULL;		\
+	    } else if (__comp > 0) {					\
+		    SPLAY_RIGHT(elm, field) = SPLAY_RIGHT((head)->sph_root, field);\
+		    SPLAY_LEFT(elm, field) = (head)->sph_root;		\
+		    SPLAY_RIGHT((head)->sph_root, field) = NULL;	\
+	    } else							\
+		    return ((head)->sph_root);				\
+    }									\
+    (head)->sph_root = (elm);						\
+    return (NULL);							\
+}									\
+									\
+struct type *								\
+name##_SPLAY_REMOVE(struct name *head, struct type *elm)		\
+{									\
+	struct type *__tmp;						\
+	if (SPLAY_EMPTY(head))						\
+		return (NULL);						\
+	name##_SPLAY(head, elm);					\
+	if ((cmp)(elm, (head)->sph_root) == 0) {			\
+		if (SPLAY_LEFT((head)->sph_root, field) == NULL) {	\
+			(head)->sph_root = SPLAY_RIGHT((head)->sph_root, field);\
+		} else {						\
+			__tmp = SPLAY_RIGHT((head)->sph_root, field);	\
+			(head)->sph_root = SPLAY_LEFT((head)->sph_root, field);\
+			name##_SPLAY(head, elm);			\
+			SPLAY_RIGHT((head)->sph_root, field) = __tmp;	\
+		}							\
+		return (elm);						\
+	}								\
+	return (NULL);							\
+}									\
+									\
+void									\
+name##_SPLAY(struct name *head, struct type *elm)			\
+{									\
+	struct type __node, *__left, *__right, *__tmp;			\
+	int __comp;							\
+\
+	SPLAY_LEFT(&__node, field) = SPLAY_RIGHT(&__node, field) = NULL;\
+	__left = __right = &__node;					\
+\
+	while ((__comp = (cmp)(elm, (head)->sph_root)) != 0) {		\
+		if (__comp < 0) {					\
+			__tmp = SPLAY_LEFT((head)->sph_root, field);	\
+			if (__tmp == NULL)				\
+				break;					\
+			if ((cmp)(elm, __tmp) < 0){			\
+				SPLAY_ROTATE_RIGHT(head, __tmp, field);	\
+				if (SPLAY_LEFT((head)->sph_root, field) == NULL)\
+					break;				\
+			}						\
+			SPLAY_LINKLEFT(head, __right, field);		\
+		} else if (__comp > 0) {				\
+			__tmp = SPLAY_RIGHT((head)->sph_root, field);	\
+			if (__tmp == NULL)				\
+				break;					\
+			if ((cmp)(elm, __tmp) > 0){			\
+				SPLAY_ROTATE_LEFT(head, __tmp, field);	\
+				if (SPLAY_RIGHT((head)->sph_root, field) == NULL)\
+					break;				\
+			}						\
+			SPLAY_LINKRIGHT(head, __left, field);		\
+		}							\
+	}								\
+	SPLAY_ASSEMBLE(head, &__node, __left, __right, field);		\
+}									\
+									\
+/* Splay with either the minimum or the maximum element			\
+ * Used to find minimum or maximum element in tree.			\
+ */									\
+void name##_SPLAY_MINMAX(struct name *head, int __comp) \
+{									\
+	struct type __node, *__left, *__right, *__tmp;			\
+\
+	SPLAY_LEFT(&__node, field) = SPLAY_RIGHT(&__node, field) = NULL;\
+	__left = __right = &__node;					\
+\
+	while (1) {							\
+		if (__comp < 0) {					\
+			__tmp = SPLAY_LEFT((head)->sph_root, field);	\
+			if (__tmp == NULL)				\
+				break;					\
+			if (__comp < 0){				\
+				SPLAY_ROTATE_RIGHT(head, __tmp, field);	\
+				if (SPLAY_LEFT((head)->sph_root, field) == NULL)\
+					break;				\
+			}						\
+			SPLAY_LINKLEFT(head, __right, field);		\
+		} else if (__comp > 0) {				\
+			__tmp = SPLAY_RIGHT((head)->sph_root, field);	\
+			if (__tmp == NULL)				\
+				break;					\
+			if (__comp > 0) {				\
+				SPLAY_ROTATE_LEFT(head, __tmp, field);	\
+				if (SPLAY_RIGHT((head)->sph_root, field) == NULL)\
+					break;				\
+			}						\
+			SPLAY_LINKRIGHT(head, __left, field);		\
+		}							\
+	}								\
+	SPLAY_ASSEMBLE(head, &__node, __left, __right, field);		\
+}
+
+#define SPLAY_NEGINF	-1
+#define SPLAY_INF	1
+
+#define SPLAY_INSERT(name, x, y)	name##_SPLAY_INSERT(x, y)
+#define SPLAY_REMOVE(name, x, y)	name##_SPLAY_REMOVE(x, y)
+#define SPLAY_FIND(name, x, y)		name##_SPLAY_FIND(x, y)
+#define SPLAY_NEXT(name, x, y)		name##_SPLAY_NEXT(x, y)
+#define SPLAY_MIN(name, x)		(SPLAY_EMPTY(x) ? NULL	\
+					: name##_SPLAY_MIN_MAX(x, SPLAY_NEGINF))
+#define SPLAY_MAX(name, x)		(SPLAY_EMPTY(x) ? NULL	\
+					: name##_SPLAY_MIN_MAX(x, SPLAY_INF))
+
+#define SPLAY_FOREACH(x, name, head)					\
+	for ((x) = SPLAY_MIN(name, head);				\
+	     (x) != NULL;						\
+	     (x) = SPLAY_NEXT(name, head, x))
+
+/* Macros that define a red-black tree */
+#define RB_HEAD(name, type)						\
+struct name {								\
+	struct type *rbh_root; /* root of the tree */			\
+}
+
+#define RB_INITIALIZER(root)						\
+	{ NULL }
+
+#define RB_INIT(root) do {						\
+	(root)->rbh_root = NULL;					\
+} while (/*CONSTCOND*/ 0)
+
+#define RB_BLACK	0
+#define RB_RED		1
+#define RB_ENTRY(type)							\
+struct {								\
+	struct type *rbe_left;		/* left element */		\
+	struct type *rbe_right;		/* right element */		\
+	struct type *rbe_parent;	/* parent element */		\
+	int rbe_color;			/* node color */		\
+}
+
+#define RB_LEFT(elm, field)		(elm)->field.rbe_left
+#define RB_RIGHT(elm, field)		(elm)->field.rbe_right
+#define RB_PARENT(elm, field)		(elm)->field.rbe_parent
+#define RB_COLOR(elm, field)		(elm)->field.rbe_color
+#define RB_ROOT(head)			(head)->rbh_root
+#define RB_EMPTY(head)			(RB_ROOT(head) == NULL)
+
+#define RB_SET(elm, parent, field) do {					\
+	RB_PARENT(elm, field) = parent;					\
+	RB_LEFT(elm, field) = RB_RIGHT(elm, field) = NULL;		\
+	RB_COLOR(elm, field) = RB_RED;					\
+} while (/*CONSTCOND*/ 0)
+
+#define RB_SET_BLACKRED(black, red, field) do {				\
+	RB_COLOR(black, field) = RB_BLACK;				\
+	RB_COLOR(red, field) = RB_RED;					\
+} while (/*CONSTCOND*/ 0)
+
+#ifndef RB_AUGMENT
+#define RB_AUGMENT(x)	do {} while (/*CONSTCOND*/ 0)
+#endif
+
+#define RB_ROTATE_LEFT(head, elm, tmp, field) do {			\
+	(tmp) = RB_RIGHT(elm, field);					\
+	if ((RB_RIGHT(elm, field) = RB_LEFT(tmp, field)) != NULL) {	\
+		RB_PARENT(RB_LEFT(tmp, field), field) = (elm);		\
+	}								\
+	RB_AUGMENT(elm);						\
+	if ((RB_PARENT(tmp, field) = RB_PARENT(elm, field)) != NULL) {	\
+		if ((elm) == RB_LEFT(RB_PARENT(elm, field), field))	\
+			RB_LEFT(RB_PARENT(elm, field), field) = (tmp);	\
+		else							\
+			RB_RIGHT(RB_PARENT(elm, field), field) = (tmp);	\
+	} else								\
+		(head)->rbh_root = (tmp);				\
+	RB_LEFT(tmp, field) = (elm);					\
+	RB_PARENT(elm, field) = (tmp);					\
+	RB_AUGMENT(tmp);						\
+	if ((RB_PARENT(tmp, field)))					\
+		RB_AUGMENT(RB_PARENT(tmp, field));			\
+} while (/*CONSTCOND*/ 0)
+
+#define RB_ROTATE_RIGHT(head, elm, tmp, field) do {			\
+	(tmp) = RB_LEFT(elm, field);					\
+	if ((RB_LEFT(elm, field) = RB_RIGHT(tmp, field)) != NULL) {	\
+		RB_PARENT(RB_RIGHT(tmp, field), field) = (elm);		\
+	}								\
+	RB_AUGMENT(elm);						\
+	if ((RB_PARENT(tmp, field) = RB_PARENT(elm, field)) != NULL) {	\
+		if ((elm) == RB_LEFT(RB_PARENT(elm, field), field))	\
+			RB_LEFT(RB_PARENT(elm, field), field) = (tmp);	\
+		else							\
+			RB_RIGHT(RB_PARENT(elm, field), field) = (tmp);	\
+	} else								\
+		(head)->rbh_root = (tmp);				\
+	RB_RIGHT(tmp, field) = (elm);					\
+	RB_PARENT(elm, field) = (tmp);					\
+	RB_AUGMENT(tmp);						\
+	if ((RB_PARENT(tmp, field)))					\
+		RB_AUGMENT(RB_PARENT(tmp, field));			\
+} while (/*CONSTCOND*/ 0)
+
+/* Generates prototypes and inline functions */
+#define RB_PROTOTYPE(name, type, field, cmp)				\
+	RB_PROTOTYPE_INTERNAL(name, type, field, cmp,)
+#define	RB_PROTOTYPE_STATIC(name, type, field, cmp)			\
+	RB_PROTOTYPE_INTERNAL(name, type, field, cmp, __unused static)
+#define RB_PROTOTYPE_INTERNAL(name, type, field, cmp, attr)		\
+attr void name##_RB_INSERT_COLOR(struct name *, struct type *);		\
+attr void name##_RB_REMOVE_COLOR(struct name *, struct type *, struct type *);\
+attr struct type *name##_RB_REMOVE(struct name *, struct type *);	\
+attr struct type *name##_RB_INSERT(struct name *, struct type *);	\
+attr struct type *name##_RB_FIND(struct name *, struct type *);		\
+attr struct type *name##_RB_NFIND(struct name *, struct type *);	\
+attr struct type *name##_RB_NEXT(struct type *);			\
+attr struct type *name##_RB_PREV(struct type *);			\
+attr struct type *name##_RB_MINMAX(struct name *, int);			\
+									\
+
+/* Main rb operation.
+ * Moves node close to the key of elm to top
+ */
+#define	RB_GENERATE(name, type, field, cmp)				\
+	RB_GENERATE_INTERNAL(name, type, field, cmp,)
+#define	RB_GENERATE_STATIC(name, type, field, cmp)			\
+	RB_GENERATE_INTERNAL(name, type, field, cmp, __unused static)
+#define RB_GENERATE_INTERNAL(name, type, field, cmp, attr)		\
+attr void								\
+name##_RB_INSERT_COLOR(struct name *head, struct type *elm)		\
+{									\
+	struct type *parent, *gparent, *tmp;				\
+	while ((parent = RB_PARENT(elm, field)) != NULL &&		\
+	    RB_COLOR(parent, field) == RB_RED) {			\
+		gparent = RB_PARENT(parent, field);			\
+		if (parent == RB_LEFT(gparent, field)) {		\
+			tmp = RB_RIGHT(gparent, field);			\
+			if (tmp && RB_COLOR(tmp, field) == RB_RED) {	\
+				RB_COLOR(tmp, field) = RB_BLACK;	\
+				RB_SET_BLACKRED(parent, gparent, field);\
+				elm = gparent;				\
+				continue;				\
+			}						\
+			if (RB_RIGHT(parent, field) == elm) {		\
+				RB_ROTATE_LEFT(head, parent, tmp, field);\
+				tmp = parent;				\
+				parent = elm;				\
+				elm = tmp;				\
+			}						\
+			RB_SET_BLACKRED(parent, gparent, field);	\
+			RB_ROTATE_RIGHT(head, gparent, tmp, field);	\
+		} else {						\
+			tmp = RB_LEFT(gparent, field);			\
+			if (tmp && RB_COLOR(tmp, field) == RB_RED) {	\
+				RB_COLOR(tmp, field) = RB_BLACK;	\
+				RB_SET_BLACKRED(parent, gparent, field);\
+				elm = gparent;				\
+				continue;				\
+			}						\
+			if (RB_LEFT(parent, field) == elm) {		\
+				RB_ROTATE_RIGHT(head, parent, tmp, field);\
+				tmp = parent;				\
+				parent = elm;				\
+				elm = tmp;				\
+			}						\
+			RB_SET_BLACKRED(parent, gparent, field);	\
+			RB_ROTATE_LEFT(head, gparent, tmp, field);	\
+		}							\
+	}								\
+	RB_COLOR(head->rbh_root, field) = RB_BLACK;			\
+}									\
+									\
+attr void								\
+name##_RB_REMOVE_COLOR(struct name *head, struct type *parent, struct type *elm) \
+{									\
+	struct type *tmp;						\
+	while ((elm == NULL || RB_COLOR(elm, field) == RB_BLACK) &&	\
+	    elm != RB_ROOT(head)) {					\
+		if (RB_LEFT(parent, field) == elm) {			\
+			tmp = RB_RIGHT(parent, field);			\
+			if (RB_COLOR(tmp, field) == RB_RED) {		\
+				RB_SET_BLACKRED(tmp, parent, field);	\
+				RB_ROTATE_LEFT(head, parent, tmp, field);\
+				tmp = RB_RIGHT(parent, field);		\
+			}						\
+			if ((RB_LEFT(tmp, field) == NULL ||		\
+			    RB_COLOR(RB_LEFT(tmp, field), field) == RB_BLACK) &&\
+			    (RB_RIGHT(tmp, field) == NULL ||		\
+			    RB_COLOR(RB_RIGHT(tmp, field), field) == RB_BLACK)) {\
+				RB_COLOR(tmp, field) = RB_RED;		\
+				elm = parent;				\
+				parent = RB_PARENT(elm, field);		\
+			} else {					\
+				if (RB_RIGHT(tmp, field) == NULL ||	\
+				    RB_COLOR(RB_RIGHT(tmp, field), field) == RB_BLACK) {\
+					struct type *oleft;		\
+					if ((oleft = RB_LEFT(tmp, field)) \
+					    != NULL)			\
+						RB_COLOR(oleft, field) = RB_BLACK;\
+					RB_COLOR(tmp, field) = RB_RED;	\
+					RB_ROTATE_RIGHT(head, tmp, oleft, field);\
+					tmp = RB_RIGHT(parent, field);	\
+				}					\
+				RB_COLOR(tmp, field) = RB_COLOR(parent, field);\
+				RB_COLOR(parent, field) = RB_BLACK;	\
+				if (RB_RIGHT(tmp, field))		\
+					RB_COLOR(RB_RIGHT(tmp, field), field) = RB_BLACK;\
+				RB_ROTATE_LEFT(head, parent, tmp, field);\
+				elm = RB_ROOT(head);			\
+				break;					\
+			}						\
+		} else {						\
+			tmp = RB_LEFT(parent, field);			\
+			if (RB_COLOR(tmp, field) == RB_RED) {		\
+				RB_SET_BLACKRED(tmp, parent, field);	\
+				RB_ROTATE_RIGHT(head, parent, tmp, field);\
+				tmp = RB_LEFT(parent, field);		\
+			}						\
+			if ((RB_LEFT(tmp, field) == NULL ||		\
+			    RB_COLOR(RB_LEFT(tmp, field), field) == RB_BLACK) &&\
+			    (RB_RIGHT(tmp, field) == NULL ||		\
+			    RB_COLOR(RB_RIGHT(tmp, field), field) == RB_BLACK)) {\
+				RB_COLOR(tmp, field) = RB_RED;		\
+				elm = parent;				\
+				parent = RB_PARENT(elm, field);		\
+			} else {					\
+				if (RB_LEFT(tmp, field) == NULL ||	\
+				    RB_COLOR(RB_LEFT(tmp, field), field) == RB_BLACK) {\
+					struct type *oright;		\
+					if ((oright = RB_RIGHT(tmp, field)) \
+					    != NULL)			\
+						RB_COLOR(oright, field) = RB_BLACK;\
+					RB_COLOR(tmp, field) = RB_RED;	\
+					RB_ROTATE_LEFT(head, tmp, oright, field);\
+					tmp = RB_LEFT(parent, field);	\
+				}					\
+				RB_COLOR(tmp, field) = RB_COLOR(parent, field);\
+				RB_COLOR(parent, field) = RB_BLACK;	\
+				if (RB_LEFT(tmp, field))		\
+					RB_COLOR(RB_LEFT(tmp, field), field) = RB_BLACK;\
+				RB_ROTATE_RIGHT(head, parent, tmp, field);\
+				elm = RB_ROOT(head);			\
+				break;					\
+			}						\
+		}							\
+	}								\
+	if (elm)							\
+		RB_COLOR(elm, field) = RB_BLACK;			\
+}									\
+									\
+attr struct type *							\
+name##_RB_REMOVE(struct name *head, struct type *elm)			\
+{									\
+	struct type *child, *parent, *old = elm;			\
+	int color;							\
+	if (RB_LEFT(elm, field) == NULL)				\
+		child = RB_RIGHT(elm, field);				\
+	else if (RB_RIGHT(elm, field) == NULL)				\
+		child = RB_LEFT(elm, field);				\
+	else {								\
+		struct type *left;					\
+		elm = RB_RIGHT(elm, field);				\
+		while ((left = RB_LEFT(elm, field)) != NULL)		\
+			elm = left;					\
+		child = RB_RIGHT(elm, field);				\
+		parent = RB_PARENT(elm, field);				\
+		color = RB_COLOR(elm, field);				\
+		if (child)						\
+			RB_PARENT(child, field) = parent;		\
+		if (parent) {						\
+			if (RB_LEFT(parent, field) == elm)		\
+				RB_LEFT(parent, field) = child;		\
+			else						\
+				RB_RIGHT(parent, field) = child;	\
+			RB_AUGMENT(parent);				\
+		} else							\
+			RB_ROOT(head) = child;				\
+		if (RB_PARENT(elm, field) == old)			\
+			parent = elm;					\
+		(elm)->field = (old)->field;				\
+		if (RB_PARENT(old, field)) {				\
+			if (RB_LEFT(RB_PARENT(old, field), field) == old)\
+				RB_LEFT(RB_PARENT(old, field), field) = elm;\
+			else						\
+				RB_RIGHT(RB_PARENT(old, field), field) = elm;\
+			RB_AUGMENT(RB_PARENT(old, field));		\
+		} else							\
+			RB_ROOT(head) = elm;				\
+		RB_PARENT(RB_LEFT(old, field), field) = elm;		\
+		if (RB_RIGHT(old, field))				\
+			RB_PARENT(RB_RIGHT(old, field), field) = elm;	\
+		if (parent) {						\
+			left = parent;					\
+			do {						\
+				RB_AUGMENT(left);			\
+			} while ((left = RB_PARENT(left, field)) != NULL); \
+		}							\
+		goto color;						\
+	}								\
+	parent = RB_PARENT(elm, field);					\
+	color = RB_COLOR(elm, field);					\
+	if (child)							\
+		RB_PARENT(child, field) = parent;			\
+	if (parent) {							\
+		if (RB_LEFT(parent, field) == elm)			\
+			RB_LEFT(parent, field) = child;			\
+		else							\
+			RB_RIGHT(parent, field) = child;		\
+		RB_AUGMENT(parent);					\
+	} else								\
+		RB_ROOT(head) = child;					\
+color:									\
+	if (color == RB_BLACK)						\
+		name##_RB_REMOVE_COLOR(head, parent, child);		\
+	return (old);							\
+}									\
+									\
+/* Inserts a node into the RB tree */					\
+attr struct type *							\
+name##_RB_INSERT(struct name *head, struct type *elm)			\
+{									\
+	struct type *tmp;						\
+	struct type *parent = NULL;					\
+	int comp = 0;							\
+	tmp = RB_ROOT(head);						\
+	while (tmp) {							\
+		parent = tmp;						\
+		comp = (cmp)(elm, parent);				\
+		if (comp < 0)						\
+			tmp = RB_LEFT(tmp, field);			\
+		else if (comp > 0)					\
+			tmp = RB_RIGHT(tmp, field);			\
+		else							\
+			return (tmp);					\
+	}								\
+	RB_SET(elm, parent, field);					\
+	if (parent != NULL) {						\
+		if (comp < 0)						\
+			RB_LEFT(parent, field) = elm;			\
+		else							\
+			RB_RIGHT(parent, field) = elm;			\
+		RB_AUGMENT(parent);					\
+	} else								\
+		RB_ROOT(head) = elm;					\
+	name##_RB_INSERT_COLOR(head, elm);				\
+	return (NULL);							\
+}									\
+									\
+/* Finds the node with the same key as elm */				\
+attr struct type *							\
+name##_RB_FIND(struct name *head, struct type *elm)			\
+{									\
+	struct type *tmp = RB_ROOT(head);				\
+	int comp;							\
+	while (tmp) {							\
+		comp = cmp(elm, tmp);					\
+		if (comp < 0)						\
+			tmp = RB_LEFT(tmp, field);			\
+		else if (comp > 0)					\
+			tmp = RB_RIGHT(tmp, field);			\
+		else							\
+			return (tmp);					\
+	}								\
+	return (NULL);							\
+}									\
+									\
+/* Finds the first node greater than or equal to the search key */	\
+attr struct type *							\
+name##_RB_NFIND(struct name *head, struct type *elm)			\
+{									\
+	struct type *tmp = RB_ROOT(head);				\
+	struct type *res = NULL;					\
+	int comp;							\
+	while (tmp) {							\
+		comp = cmp(elm, tmp);					\
+		if (comp < 0) {						\
+			res = tmp;					\
+			tmp = RB_LEFT(tmp, field);			\
+		}							\
+		else if (comp > 0)					\
+			tmp = RB_RIGHT(tmp, field);			\
+		else							\
+			return (tmp);					\
+	}								\
+	return (res);							\
+}									\
+									\
+/* ARGSUSED */								\
+attr struct type *							\
+name##_RB_NEXT(struct type *elm)					\
+{									\
+	if (RB_RIGHT(elm, field)) {					\
+		elm = RB_RIGHT(elm, field);				\
+		while (RB_LEFT(elm, field))				\
+			elm = RB_LEFT(elm, field);			\
+	} else {							\
+		if (RB_PARENT(elm, field) &&				\
+		    (elm == RB_LEFT(RB_PARENT(elm, field), field)))	\
+			elm = RB_PARENT(elm, field);			\
+		else {							\
+			while (RB_PARENT(elm, field) &&			\
+			    (elm == RB_RIGHT(RB_PARENT(elm, field), field)))\
+				elm = RB_PARENT(elm, field);		\
+			elm = RB_PARENT(elm, field);			\
+		}							\
+	}								\
+	return (elm);							\
+}									\
+									\
+/* ARGSUSED */								\
+attr struct type *							\
+name##_RB_PREV(struct type *elm)					\
+{									\
+	if (RB_LEFT(elm, field)) {					\
+		elm = RB_LEFT(elm, field);				\
+		while (RB_RIGHT(elm, field))				\
+			elm = RB_RIGHT(elm, field);			\
+	} else {							\
+		if (RB_PARENT(elm, field) &&				\
+		    (elm == RB_RIGHT(RB_PARENT(elm, field), field)))	\
+			elm = RB_PARENT(elm, field);			\
+		else {							\
+			while (RB_PARENT(elm, field) &&			\
+			    (elm == RB_LEFT(RB_PARENT(elm, field), field)))\
+				elm = RB_PARENT(elm, field);		\
+			elm = RB_PARENT(elm, field);			\
+		}							\
+	}								\
+	return (elm);							\
+}									\
+									\
+attr struct type *							\
+name##_RB_MINMAX(struct name *head, int val)				\
+{									\
+	struct type *tmp = RB_ROOT(head);				\
+	struct type *parent = NULL;					\
+	while (tmp) {							\
+		parent = tmp;						\
+		if (val < 0)						\
+			tmp = RB_LEFT(tmp, field);			\
+		else							\
+			tmp = RB_RIGHT(tmp, field);			\
+	}								\
+	return (parent);						\
+}
+
+#define RB_NEGINF	-1
+#define RB_INF	1
+
+#define RB_INSERT(name, x, y)	name##_RB_INSERT(x, y)
+#define RB_REMOVE(name, x, y)	name##_RB_REMOVE(x, y)
+#define RB_FIND(name, x, y)	name##_RB_FIND(x, y)
+#define RB_NFIND(name, x, y)	name##_RB_NFIND(x, y)
+#define RB_NEXT(name, x, y)	name##_RB_NEXT(y)
+#define RB_PREV(name, x, y)	name##_RB_PREV(y)
+#define RB_MIN(name, x)		name##_RB_MINMAX(x, RB_NEGINF)
+#define RB_MAX(name, x)		name##_RB_MINMAX(x, RB_INF)
+
+#define RB_FOREACH(x, name, head)					\
+	for ((x) = RB_MIN(name, head);					\
+	     (x) != NULL;						\
+	     (x) = name##_RB_NEXT(x))
+
+#define RB_FOREACH_FROM(x, name, y)					\
+	for ((x) = (y);							\
+	    ((x) != NULL) && ((y) = name##_RB_NEXT(x), (x) != NULL);	\
+	     (x) = (y))
+
+#define RB_FOREACH_SAFE(x, name, head, y)				\
+	for ((x) = RB_MIN(name, head);					\
+	    ((x) != NULL) && ((y) = name##_RB_NEXT(x), (x) != NULL);	\
+	     (x) = (y))
+
+#define RB_FOREACH_REVERSE(x, name, head)				\
+	for ((x) = RB_MAX(name, head);					\
+	     (x) != NULL;						\
+	     (x) = name##_RB_PREV(x))
+
+#define RB_FOREACH_REVERSE_FROM(x, name, y)				\
+	for ((x) = (y);							\
+	    ((x) != NULL) && ((y) = name##_RB_PREV(x), (x) != NULL);	\
+	     (x) = (y))
+
+#define RB_FOREACH_REVERSE_SAFE(x, name, head, y)			\
+	for ((x) = RB_MAX(name, head);					\
+	    ((x) != NULL) && ((y) = name##_RB_PREV(x), (x) != NULL);	\
+	     (x) = (y))
+
+#endif	/* _SYS_TREE_H_ */
diff --git a/core-mod/core/musl/sources b/core-mod/core/musl/sources
new file mode 100644
index 0000000..f9e8b81
--- /dev/null
+++ b/core-mod/core/musl/sources
@@ -0,0 +1,6 @@
+https://www.musl-libc.org/releases/musl-1.2.2.tar.gz
+files/cdefs.h
+files/queue.h
+files/tree.h
+files/getconf.c
+files/getent.c
diff --git a/core-mod/core/musl/version b/core-mod/core/musl/version
new file mode 100644
index 0000000..5266927
--- /dev/null
+++ b/core-mod/core/musl/version
@@ -0,0 +1 @@
+1.2.2 1
diff --git a/core-mod/core/xz/build b/core-mod/core/xz/build
new file mode 100755
index 0000000..e04e728
--- /dev/null
+++ b/core-mod/core/xz/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/core/xz/checksums b/core-mod/core/xz/checksums
new file mode 100644
index 0000000..030e2e2
--- /dev/null
+++ b/core-mod/core/xz/checksums
@@ -0,0 +1 @@
+5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df  xz-5.2.5.tar.bz2
diff --git a/core-mod/core/xz/sources b/core-mod/core/xz/sources
new file mode 100644
index 0000000..657c0be
--- /dev/null
+++ b/core-mod/core/xz/sources
@@ -0,0 +1 @@
+https://nchc.dl.sourceforge.net/project/lzmautils/xz-5.2.5.tar.bz2
diff --git a/core-mod/core/xz/version b/core-mod/core/xz/version
new file mode 100644
index 0000000..666bb36
--- /dev/null
+++ b/core-mod/core/xz/version
@@ -0,0 +1 @@
+5.2.5 1
diff --git a/core-mod/core/zlib/build b/core-mod/core/zlib/build
new file mode 100755
index 0000000..2426a8e
--- /dev/null
+++ b/core-mod/core/zlib/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+export CFLAGS="$CFLAGS -fPIC"
+
+./configure \
+    --prefix=/usr \
+    --libdir=/usr/lib \
+    --shared
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/core/zlib/checksums b/core-mod/core/zlib/checksums
new file mode 100644
index 0000000..ec1ba07
--- /dev/null
+++ b/core-mod/core/zlib/checksums
@@ -0,0 +1 @@
+c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
diff --git a/core-mod/core/zlib/sources b/core-mod/core/zlib/sources
new file mode 100644
index 0000000..17f901f
--- /dev/null
+++ b/core-mod/core/zlib/sources
@@ -0,0 +1 @@
+https://zlib.net/zlib-1.2.11.tar.gz
diff --git a/core-mod/core/zlib/version b/core-mod/core/zlib/version
new file mode 100644
index 0000000..41acf3f
--- /dev/null
+++ b/core-mod/core/zlib/version
@@ -0,0 +1 @@
+1.2.11 3
diff --git a/core-mod/extra/acpid/build b/core-mod/extra/acpid/build
new file mode 100755
index 0000000..258802e
--- /dev/null
+++ b/core-mod/extra/acpid/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin
+
+make
+make DESTDIR="$1" install
+
+# Install runit service.
+install -Dm755 acpid.run         "$1/etc/sv/acpid/run"
+ln -s /run/runit/supervise.acpid "$1/etc/sv/acpid/supervise"
+
+# Required otherwise daemon fails to launch.
+mkdir -p "$1/etc/acpi/events"
diff --git a/core-mod/extra/acpid/checksums b/core-mod/extra/acpid/checksums
new file mode 100644
index 0000000..dd8917f
--- /dev/null
+++ b/core-mod/extra/acpid/checksums
@@ -0,0 +1,2 @@
+f2d2d30b3edc3234bd82f6f7186699a6aa3c85c8d20bc4e30e9b3c68a1ed157e  acpid-2.0.32.tar.xz
+ebd61afac770d3d9cae5c411f44002496fb18b28cf7b77520072a3909852246e  acpid.run
diff --git a/core-mod/extra/acpid/depends b/core-mod/extra/acpid/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/acpid/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/acpid/files/acpid.run b/core-mod/extra/acpid/files/acpid.run
new file mode 100644
index 0000000..5baf800
--- /dev/null
+++ b/core-mod/extra/acpid/files/acpid.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec acpid -f
diff --git a/core-mod/extra/acpid/sources b/core-mod/extra/acpid/sources
new file mode 100644
index 0000000..7dc4321
--- /dev/null
+++ b/core-mod/extra/acpid/sources
@@ -0,0 +1,2 @@
+https://downloads.sourceforge.net/sourceforge/acpid2/acpid-2.0.32.tar.xz
+files/acpid.run
diff --git a/core-mod/extra/acpid/version b/core-mod/extra/acpid/version
new file mode 100644
index 0000000..1cf6aae
--- /dev/null
+++ b/core-mod/extra/acpid/version
@@ -0,0 +1 @@
+2.0.32 2
diff --git a/core-mod/extra/alsa-lib/build b/core-mod/extra/alsa-lib/build
new file mode 100755
index 0000000..544d049
--- /dev/null
+++ b/core-mod/extra/alsa-lib/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+# Fix a missing include
+sed -i '/<dirent.h>/a #include <limits.h>' src/ucm/ucm_exec.c
+
+./configure \
+    --without-debug \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/alsa-lib/checksums b/core-mod/extra/alsa-lib/checksums
new file mode 100644
index 0000000..11068dc
--- /dev/null
+++ b/core-mod/extra/alsa-lib/checksums
@@ -0,0 +1 @@
+628421d950cecaf234de3f899d520c0a6923313c964ad751ffac081df331438e
diff --git a/core-mod/extra/alsa-lib/depends b/core-mod/extra/alsa-lib/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/alsa-lib/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/alsa-lib/sources b/core-mod/extra/alsa-lib/sources
new file mode 100644
index 0000000..035cb3b
--- /dev/null
+++ b/core-mod/extra/alsa-lib/sources
@@ -0,0 +1 @@
+https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.5.1.tar.bz2
diff --git a/core-mod/extra/alsa-lib/version b/core-mod/extra/alsa-lib/version
new file mode 100644
index 0000000..9e7ce45
--- /dev/null
+++ b/core-mod/extra/alsa-lib/version
@@ -0,0 +1 @@
+1.2.5.1 1
diff --git a/core-mod/extra/alsa-utils/build b/core-mod/extra/alsa-utils/build
new file mode 100755
index 0000000..54fbfa1
--- /dev/null
+++ b/core-mod/extra/alsa-utils/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+# Fix a missing include
+sed -i '/<syslog.h>/a #include <limits.h>' alsactl/utils.c
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --with-udev-rules-dir=/usr/lib/udev/rules.d \
+    --disable-alsaconf \
+    --disable-bat \
+    --disable-xmlto \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/alsa-utils/checksums b/core-mod/extra/alsa-utils/checksums
new file mode 100644
index 0000000..e1555d4
--- /dev/null
+++ b/core-mod/extra/alsa-utils/checksums
@@ -0,0 +1 @@
+9c169ae37a49295f9b97b92ace772803daf6b6510a19574e0b78f87e562118d0
diff --git a/core-mod/extra/alsa-utils/depends b/core-mod/extra/alsa-utils/depends
new file mode 100644
index 0000000..121c051
--- /dev/null
+++ b/core-mod/extra/alsa-utils/depends
@@ -0,0 +1,3 @@
+alsa-lib
+linux-headers make
+ncurses
diff --git a/core-mod/extra/alsa-utils/sources b/core-mod/extra/alsa-utils/sources
new file mode 100644
index 0000000..b27d432
--- /dev/null
+++ b/core-mod/extra/alsa-utils/sources
@@ -0,0 +1 @@
+https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.5.1.tar.bz2
diff --git a/core-mod/extra/alsa-utils/version b/core-mod/extra/alsa-utils/version
new file mode 100644
index 0000000..9e7ce45
--- /dev/null
+++ b/core-mod/extra/alsa-utils/version
@@ -0,0 +1 @@
+1.2.5.1 1
diff --git a/core-mod/extra/atk/build b/core-mod/extra/atk/build
new file mode 100755
index 0000000..5ed96b1
--- /dev/null
+++ b/core-mod/extra/atk/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+# Don't build tests.
+sed -i "/subdir('tests')/d" meson.build
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    -Ddocs=false \
+    -Dintrospection=false \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/atk/checksums b/core-mod/extra/atk/checksums
new file mode 100644
index 0000000..00ffc54
--- /dev/null
+++ b/core-mod/extra/atk/checksums
@@ -0,0 +1 @@
+fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788
diff --git a/core-mod/extra/atk/depends b/core-mod/extra/atk/depends
new file mode 100644
index 0000000..44ea227
--- /dev/null
+++ b/core-mod/extra/atk/depends
@@ -0,0 +1,4 @@
+glib
+libffi
+meson   make
+pkgconf make
diff --git a/core-mod/extra/atk/sources b/core-mod/extra/atk/sources
new file mode 100644
index 0000000..069914b
--- /dev/null
+++ b/core-mod/extra/atk/sources
@@ -0,0 +1 @@
+https://ftp.gnome.org/pub/gnome/sources/atk/2.36/atk-2.36.0.tar.xz
diff --git a/core-mod/extra/atk/version b/core-mod/extra/atk/version
new file mode 100644
index 0000000..c3e6319
--- /dev/null
+++ b/core-mod/extra/atk/version
@@ -0,0 +1 @@
+2.36.0 1
diff --git a/core-mod/extra/cairo/build b/core-mod/extra/cairo/build
new file mode 100755
index 0000000..597dfd0
--- /dev/null
+++ b/core-mod/extra/cairo/build
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+# Disable building 'cairo-sphinx'.
+sed -i "s/BUILD_SPHINX_TRUE=/BUILD_SPHINX_TRUE='#'/"   configure
+sed -i "s/BUILD_SPHINX_FALSE='#'/BUILD_SPHINX_FALSE=/" configure
+
+# Disable building tests.
+sed -i 's/test perf//g' Makefile.in
+
+./configure \
+    --prefix=/usr \
+    --disable-static \
+    --enable-tee \
+    --enable-gl \
+    --enable-egl \
+    --enable-xlib-xcb \
+    --enable-xcb \
+    --enable-xlib-xrender \
+    --enable-xlib \
+    --disable-trace \
+    --disable-valgrind \
+    --disable-gtk-doc-html
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/cairo/checksums b/core-mod/extra/cairo/checksums
new file mode 100644
index 0000000..83f9db7
--- /dev/null
+++ b/core-mod/extra/cairo/checksums
@@ -0,0 +1 @@
+5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331
diff --git a/core-mod/extra/cairo/depends b/core-mod/extra/cairo/depends
new file mode 100644
index 0000000..f5ee7b0
--- /dev/null
+++ b/core-mod/extra/cairo/depends
@@ -0,0 +1,10 @@
+fontconfig
+glib
+libffi
+libpng
+libXext
+libXrender
+mesa
+pixman
+pkgconf make
+zlib
diff --git a/core-mod/extra/cairo/sources b/core-mod/extra/cairo/sources
new file mode 100644
index 0000000..e43c5aa
--- /dev/null
+++ b/core-mod/extra/cairo/sources
@@ -0,0 +1 @@
+https://cairographics.org/releases/cairo-1.16.0.tar.xz
diff --git a/core-mod/extra/cairo/version b/core-mod/extra/cairo/version
new file mode 100644
index 0000000..df10ebf
--- /dev/null
+++ b/core-mod/extra/cairo/version
@@ -0,0 +1 @@
+1.16.0 1
diff --git a/core-mod/extra/ccache/build b/core-mod/extra/ccache/build
new file mode 100755
index 0000000..61738ef
--- /dev/null
+++ b/core-mod/extra/ccache/build
@@ -0,0 +1,27 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+export CFLAGS="$CFLAGS -static"
+export CXXFLAGS="$CXXFLAGS -static"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DENABLE_TESTING=OFF \
+    -DZSTD_LIBRARY=/usr/lib/libzstd.a
+
+cmake --build   build
+cmake --install build
+
+mkdir -p "$1/usr/lib/ccache/bin"
+host=$(cc -dumpmachine)
+
+for link in \
+    cc  "$host-cc"  \
+    gcc "$host-gcc" \
+    g++ "$host-g++" \
+    cpp "$host-cpp" \
+    c++ "$host-c++"
+do
+    ln -sf /usr/bin/ccache "$1/usr/lib/ccache/bin/$link"
+done
diff --git a/core-mod/extra/ccache/checksums b/core-mod/extra/ccache/checksums
new file mode 100644
index 0000000..f41bbc4
--- /dev/null
+++ b/core-mod/extra/ccache/checksums
@@ -0,0 +1 @@
+504a0f2184465c306826f035b4bc00bae7500308d6af4abbfb50e33a694989b4
diff --git a/core-mod/extra/ccache/depends b/core-mod/extra/ccache/depends
new file mode 100644
index 0000000..e52bd7d
--- /dev/null
+++ b/core-mod/extra/ccache/depends
@@ -0,0 +1,2 @@
+cmake make
+zstd  make
diff --git a/core-mod/extra/ccache/post-install b/core-mod/extra/ccache/post-install
new file mode 100755
index 0000000..ee7bde6
--- /dev/null
+++ b/core-mod/extra/ccache/post-install
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+cat <<EOF
+
+NOTE: To enable 'ccache' add this to your
+      '.shellrc' or '.profile'.
+
+-> export PATH=/usr/lib/ccache/bin:\$PATH
+
+NOTE: Clang is not supported out-of-the-box.
+      The following symlinks need to be created.
+
+-> ln -s /usr/bin/ccache /usr/lib/ccache/bin/clang
+-> ln -s /usr/bin/ccache /usr/lib/ccache/bin/clang++
+
+EOF
diff --git a/core-mod/extra/ccache/sources b/core-mod/extra/ccache/sources
new file mode 100644
index 0000000..016b70d
--- /dev/null
+++ b/core-mod/extra/ccache/sources
@@ -0,0 +1 @@
+https://github.com/ccache/ccache/releases/download/v4.3/ccache-4.3.tar.xz
diff --git a/core-mod/extra/ccache/version b/core-mod/extra/ccache/version
new file mode 100644
index 0000000..aead541
--- /dev/null
+++ b/core-mod/extra/ccache/version
@@ -0,0 +1 @@
+4.3 1
diff --git a/core-mod/extra/cmake/build b/core-mod/extra/cmake/build
new file mode 100755
index 0000000..e942b4c
--- /dev/null
+++ b/core-mod/extra/cmake/build
@@ -0,0 +1,33 @@
+#!/bin/sh -e
+
+patch -p1 < cmake-no-execinfo.patch
+
+if kiss l cmake; then
+    export DESTDIR="$1"
+
+    cmake -B build \
+        -DCMAKE_INSTALL_PREFIX=/usr \
+        -DCMAKE_BUILD_TYPE=Release \
+        -DCMAKE_USE_SYSTEM_CURL=True \
+        -DCMAKE_USE_SYSTEM_EXPAT=True \
+        -DCMAKE_USE_SYSTEM_ZLIB=True \
+        -DCMAKE_USE_SYSTEM_BZIP2=True \
+        -DBUILD_TESTING=OFF
+
+    cmake --build   build
+    cmake --install build
+
+else
+    ./configure \
+        --prefix=/usr \
+        --system-curl \
+        --system-expat \
+        --system-zlib \
+        --system-bzip2
+
+    make
+    make DESTDIR="$1" install
+fi
+
+rm -rf "$1/usr/doc"
+rm -rf "$1/usr/share/cmake"*/Help
diff --git a/core-mod/extra/cmake/checksums b/core-mod/extra/cmake/checksums
new file mode 100644
index 0000000..56ff7e3
--- /dev/null
+++ b/core-mod/extra/cmake/checksums
@@ -0,0 +1,2 @@
+12c8040ef5c6f1bc5b8868cede16bb7926c18980f59779e299ab52cbc6f15bb0
+93f5582efd076673f9bcb3e639bd594e378954a5a3130e5921027ede23c3325c
diff --git a/core-mod/extra/cmake/depends b/core-mod/extra/cmake/depends
new file mode 100644
index 0000000..1a51841
--- /dev/null
+++ b/core-mod/extra/cmake/depends
@@ -0,0 +1,6 @@
+bzip2
+curl
+expat
+libressl
+linux-headers make
+zlib
diff --git a/core-mod/extra/cmake/patches/cmake-no-execinfo.patch b/core-mod/extra/cmake/patches/cmake-no-execinfo.patch
new file mode 100644
index 0000000..fd1e715
--- /dev/null
+++ b/core-mod/extra/cmake/patches/cmake-no-execinfo.patch
@@ -0,0 +1,52 @@
+diff --git a/Source/kwsys/SystemInformation.cxx b/Source/kwsys/SystemInformation.cxx
+index ed1cdc0..d3afe21 100644
+--- a/Source/kwsys/SystemInformation.cxx
++++ b/Source/kwsys/SystemInformation.cxx
+@@ -150,18 +150,8 @@ typedef struct rlimit ResourceLimitType;
+ #  include <OS.h>
+ #endif
+ 
+-#if defined(KWSYS_SYSTEMINFORMATION_HAS_BACKTRACE)
+-#  include <execinfo.h>
+-#  if defined(KWSYS_SYSTEMINFORMATION_HAS_CPP_DEMANGLE)
+-#    include <cxxabi.h>
+-#  endif
+-#  if defined(KWSYS_SYSTEMINFORMATION_HAS_SYMBOL_LOOKUP)
+-#    include <dlfcn.h>
+-#  endif
+-#else
+ #  undef KWSYS_SYSTEMINFORMATION_HAS_CPP_DEMANGLE
+ #  undef KWSYS_SYSTEMINFORMATION_HAS_SYMBOL_LOOKUP
+-#endif
+ 
+ #include <cctype> // int isdigit(int c);
+ #include <cstdio>
+diff --git a/Source/kwsys/kwsysPlatformTestsCXX.cxx b/Source/kwsys/kwsysPlatformTestsCXX.cxx
+index 0bfa20e..0208417 100644
+--- a/Source/kwsys/kwsysPlatformTestsCXX.cxx
++++ b/Source/kwsys/kwsysPlatformTestsCXX.cxx
+@@ -102,24 +102,6 @@ int main()
+ }
+ #endif
+ 
+-#ifdef TEST_KWSYS_CXX_HAS_BACKTRACE
+-#  if defined(__PATHSCALE__) || defined(__PATHCC__) ||                        \
+-    (defined(__LSB_VERSION__) && (__LSB_VERSION__ < 41))
+-backtrace does not work with this compiler or os
+-#  endif
+-#  if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE)
+-#    define _GNU_SOURCE
+-#  endif
+-#  include <execinfo.h>
+-int main()
+-{
+-  void* stackSymbols[256];
+-  backtrace(stackSymbols, 256);
+-  backtrace_symbols(&stackSymbols[0], 1);
+-  return 0;
+-}
+-#endif
+-
+ #ifdef TEST_KWSYS_CXX_HAS_DLADDR
+ #  if (defined(__GNUC__) || defined(__PGI)) && !defined(_GNU_SOURCE)
+ #    define _GNU_SOURCE
diff --git a/core-mod/extra/cmake/sources b/core-mod/extra/cmake/sources
new file mode 100644
index 0000000..0e66b45
--- /dev/null
+++ b/core-mod/extra/cmake/sources
@@ -0,0 +1,2 @@
+https://cmake.org/files/v3.20/cmake-3.20.5.tar.gz
+patches/cmake-no-execinfo.patch
diff --git a/core-mod/extra/cmake/version b/core-mod/extra/cmake/version
new file mode 100644
index 0000000..94cd8a6
--- /dev/null
+++ b/core-mod/extra/cmake/version
@@ -0,0 +1 @@
+3.20.5 1
diff --git a/core-mod/extra/dhcpcd/build b/core-mod/extra/dhcpcd/build
new file mode 100755
index 0000000..954bc10
--- /dev/null
+++ b/core-mod/extra/dhcpcd/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --sysconfdir=/etc \
+    --rundir=/run \
+    --libexecdir=/usr/lib/dhcpcd
+
+make
+make DESTDIR="$1" install
+
+# Install runit service.
+install -Dm 755 dhcpcd.run        "$1/etc/sv/dhcpcd/run"
+ln -s /run/runit/supervise.dhcpcd "$1/etc/sv/dhcpcd/supervise"
diff --git a/core-mod/extra/dhcpcd/checksums b/core-mod/extra/dhcpcd/checksums
new file mode 100644
index 0000000..fa7c4d2
--- /dev/null
+++ b/core-mod/extra/dhcpcd/checksums
@@ -0,0 +1,2 @@
+9bac373f17e8a2f8102aecdc4be65f33de60046abb4416e543901c66861828cd
+2b56c7e91bebcd8ca87e04998551a454b19a904dfb6d1cd0a9255c2feceda418
diff --git a/core-mod/extra/dhcpcd/depends b/core-mod/extra/dhcpcd/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/dhcpcd/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/dhcpcd/files/dhcpcd.run b/core-mod/extra/dhcpcd/files/dhcpcd.run
new file mode 100644
index 0000000..23c25c4
--- /dev/null
+++ b/core-mod/extra/dhcpcd/files/dhcpcd.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec dhcpcd -BM
diff --git a/core-mod/extra/dhcpcd/sources b/core-mod/extra/dhcpcd/sources
new file mode 100644
index 0000000..f5f44a0
--- /dev/null
+++ b/core-mod/extra/dhcpcd/sources
@@ -0,0 +1,2 @@
+https://github.com/rsmarples/dhcpcd/archive/dhcpcd-9.4.0.tar.gz
+files/dhcpcd.run
diff --git a/core-mod/extra/dhcpcd/version b/core-mod/extra/dhcpcd/version
new file mode 100644
index 0000000..53139a7
--- /dev/null
+++ b/core-mod/extra/dhcpcd/version
@@ -0,0 +1 @@
+9.4.0 1
diff --git a/core-mod/extra/dosfstools/build b/core-mod/extra/dosfstools/build
new file mode 100755
index 0000000..88d9d4c
--- /dev/null
+++ b/core-mod/extra/dosfstools/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --mandir=/usr/share/man \
+    --enable-compat-symlinks
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/dosfstools/checksums b/core-mod/extra/dosfstools/checksums
new file mode 100644
index 0000000..de54099
--- /dev/null
+++ b/core-mod/extra/dosfstools/checksums
@@ -0,0 +1 @@
+64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527
diff --git a/core-mod/extra/dosfstools/sources b/core-mod/extra/dosfstools/sources
new file mode 100644
index 0000000..6334e34
--- /dev/null
+++ b/core-mod/extra/dosfstools/sources
@@ -0,0 +1 @@
+https://github.com/dosfstools/dosfstools/releases/download/v4.2/dosfstools-4.2.tar.gz
diff --git a/core-mod/extra/dosfstools/version b/core-mod/extra/dosfstools/version
new file mode 100644
index 0000000..39a6e92
--- /dev/null
+++ b/core-mod/extra/dosfstools/version
@@ -0,0 +1 @@
+4.2 1
diff --git a/core-mod/extra/e2fsprogs/build b/core-mod/extra/e2fsprogs/build
new file mode 100755
index 0000000..715722f
--- /dev/null
+++ b/core-mod/extra/e2fsprogs/build
@@ -0,0 +1,46 @@
+#!/bin/sh -e
+
+export LDFLAGS="$LDFLAGS -static"
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --sysconfdir=/etc \
+    --enable-symlink-install \
+    --enable-libuuid \
+    --enable-libblkid \
+    --disable-nls \
+    --disable-uuidd \
+    --disable-fsck \
+    --disable-elf-shlibs
+
+# MKDIR_P fixes an install issue on musl/busybox.
+make
+make MKDIR_P="install -d" DESTDIR="$1" install
+
+# Our e2fsprogs build uses the private libblkid
+# and libuuid libraries which ship with it.
+#
+# It is then built statically which allows us to
+# remove the libraries entirely.
+#
+# This is all done to remove the util-linux
+# dependency from this package.
+#
+# The build system doesn't provide a target
+# for this so we must do it ourselves.
+rm -rf \
+    "$1/usr/bin/blkid" \
+    "$1/usr/bin/uuidgen" \
+    "$1/usr/bin/findfs" \
+    "$1/usr/share/man/man8/findfs.8" \
+    "$1/usr/share/man/man8/blkid.8" \
+    "$1/usr/share/man/man3/libblkid.3" \
+    "$1/usr/share/man/man3/"uuid* \
+    "$1/usr/share/man/man1/uuidgen.1" \
+    "$1/usr/lib/pkgconfig/uuid.pc" \
+    "$1/usr/lib/pkgconfig/blkid.pc" \
+    "$1/usr/lib/libuuid.a" \
+    "$1/usr/lib/libblkid.a" \
+    "$1/usr/include/blkid" \
+    "$1/usr/include/uuid"
diff --git a/core-mod/extra/e2fsprogs/checksums b/core-mod/extra/e2fsprogs/checksums
new file mode 100644
index 0000000..15a3252
--- /dev/null
+++ b/core-mod/extra/e2fsprogs/checksums
@@ -0,0 +1 @@
+f1ef0161aa8918182d088c4b576a5485a60aa3aff3e16cf10824698af5d34dcf
diff --git a/core-mod/extra/e2fsprogs/sources b/core-mod/extra/e2fsprogs/sources
new file mode 100644
index 0000000..08bfe54
--- /dev/null
+++ b/core-mod/extra/e2fsprogs/sources
@@ -0,0 +1 @@
+https://github.com/tytso/e2fsprogs/archive/v1.46.2.tar.gz
diff --git a/core-mod/extra/e2fsprogs/version b/core-mod/extra/e2fsprogs/version
new file mode 100644
index 0000000..49efa08
--- /dev/null
+++ b/core-mod/extra/e2fsprogs/version
@@ -0,0 +1 @@
+1.46.2 1
diff --git a/core-mod/extra/eiwd/build b/core-mod/extra/eiwd/build
new file mode 100755
index 0000000..cd386de
--- /dev/null
+++ b/core-mod/extra/eiwd/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/bin \
+    --localstatedir=/var \
+    --disable-dbus
+
+make
+make DESTDIR="$1" install
+
+# Install runit service.
+install -Dm755 eiwd.run         "$1/etc/sv/eiwd/run"
+ln -s /run/runit/supervise.eiwd "$1/etc/sv/eiwd/supervise"
diff --git a/core-mod/extra/eiwd/checksums b/core-mod/extra/eiwd/checksums
new file mode 100644
index 0000000..2a23d30
--- /dev/null
+++ b/core-mod/extra/eiwd/checksums
@@ -0,0 +1,2 @@
+35e9938ccecad1a1336ee94d92ec5cfc2f059bd6d3b154034a450ac3385dbc19  eiwd-1.6-1.tar.xz
+9798194395fbc26a1ad8465bab7ac9c9e94c3a51edaf5987a414037c34169e63  eiwd.run
diff --git a/core-mod/extra/eiwd/depends b/core-mod/extra/eiwd/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/eiwd/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/eiwd/files/eiwd.run b/core-mod/extra/eiwd/files/eiwd.run
new file mode 100644
index 0000000..641290d
--- /dev/null
+++ b/core-mod/extra/eiwd/files/eiwd.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec iwd -d
diff --git a/core-mod/extra/eiwd/post-install b/core-mod/extra/eiwd/post-install
new file mode 100755
index 0000000..97b5631
--- /dev/null
+++ b/core-mod/extra/eiwd/post-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+cat <<EOF
+
+NOTE: You also need openresolv to use eiwd's
+      built-in DNS features.
+
+EOF
diff --git a/core-mod/extra/eiwd/sources b/core-mod/extra/eiwd/sources
new file mode 100644
index 0000000..5c47941
--- /dev/null
+++ b/core-mod/extra/eiwd/sources
@@ -0,0 +1,2 @@
+https://github.com/dylanaraps/eiwd/releases/download/1.6-1/eiwd-1.6-1.tar.xz
+files/eiwd.run
diff --git a/core-mod/extra/eiwd/version b/core-mod/extra/eiwd/version
new file mode 100644
index 0000000..013d63f
--- /dev/null
+++ b/core-mod/extra/eiwd/version
@@ -0,0 +1 @@
+1.6-1 1
diff --git a/core-mod/extra/eudev/build b/core-mod/extra/eudev/build
new file mode 100755
index 0000000..ce1ab87
--- /dev/null
+++ b/core-mod/extra/eudev/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --sbindir=/usr/bin \
+    --bindir=/usr/bin \
+    --enable-hwdb \
+    --enable-blkid=auto \
+    --disable-introspection
+
+make
+make DESTDIR="$1" install
+
+# Install runit service.
+install -Dm755 udevd.run         "$1/etc/sv/udevd/run"
+ln -s /run/runit/supervise.udevd "$1/etc/sv/udevd/supervise"
diff --git a/core-mod/extra/eudev/checksums b/core-mod/extra/eudev/checksums
new file mode 100644
index 0000000..4b2ccfa
--- /dev/null
+++ b/core-mod/extra/eudev/checksums
@@ -0,0 +1,2 @@
+87bb028d470fd1b85169349b44c55d5b733733dc2d50ddf1196e026725ead034
+5b965dc067c5f411a3342f867e11ccfcf689cc1bf5957b0da4521c528be4ce5e
diff --git a/core-mod/extra/eudev/depends b/core-mod/extra/eudev/depends
new file mode 100644
index 0000000..12e9ecc
--- /dev/null
+++ b/core-mod/extra/eudev/depends
@@ -0,0 +1,2 @@
+gperf         make
+linux-headers make
diff --git a/core-mod/extra/eudev/files/udevd.run b/core-mod/extra/eudev/files/udevd.run
new file mode 100644
index 0000000..5e21489
--- /dev/null
+++ b/core-mod/extra/eudev/files/udevd.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec udevd
diff --git a/core-mod/extra/eudev/sources b/core-mod/extra/eudev/sources
new file mode 100644
index 0000000..f982123
--- /dev/null
+++ b/core-mod/extra/eudev/sources
@@ -0,0 +1,2 @@
+https://dev.gentoo.org/~blueness/eudev/eudev-3.2.10.tar.gz
+files/udevd.run
diff --git a/core-mod/extra/eudev/version b/core-mod/extra/eudev/version
new file mode 100644
index 0000000..8197f4c
--- /dev/null
+++ b/core-mod/extra/eudev/version
@@ -0,0 +1 @@
+3.2.10 1
diff --git a/core-mod/extra/expat/build b/core-mod/extra/expat/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/expat/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/expat/checksums b/core-mod/extra/expat/checksums
new file mode 100644
index 0000000..b4c09e8
--- /dev/null
+++ b/core-mod/extra/expat/checksums
@@ -0,0 +1 @@
+2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40
diff --git a/core-mod/extra/expat/sources b/core-mod/extra/expat/sources
new file mode 100644
index 0000000..c60068c
--- /dev/null
+++ b/core-mod/extra/expat/sources
@@ -0,0 +1 @@
+https://github.com/libexpat/libexpat/releases/download/R_2_4_1/expat-2.4.1.tar.bz2
diff --git a/core-mod/extra/expat/version b/core-mod/extra/expat/version
new file mode 100644
index 0000000..4fcdc2b
--- /dev/null
+++ b/core-mod/extra/expat/version
@@ -0,0 +1 @@
+2.4.1 1
diff --git a/core-mod/extra/ffmpeg/build b/core-mod/extra/ffmpeg/build
new file mode 100755
index 0000000..c3dfbba
--- /dev/null
+++ b/core-mod/extra/ffmpeg/build
@@ -0,0 +1,30 @@
+#!/bin/sh -e
+
+./configure \
+    --cc="${CC:-cc}" \
+    --cxx="${CXX:-c++}" \
+    --prefix=/usr \
+    --enable-shared \
+    --disable-static \
+    --enable-gpl \
+    --enable-version3 \
+    --enable-nonfree \
+    --enable-openssl \
+    --enable-libass \
+    --enable-libmp3lame \
+    --enable-libopus \
+    --enable-libvorbis \
+    --enable-libvpx \
+    --enable-libx264 \
+    --enable-libx265 \
+    --enable-libxvid \
+    --enable-libwebp \
+    --enable-libdrm \
+    --x86asmexe=nasm \
+    --disable-debug \
+    --disable-libxml2
+
+make
+make DESTDIR="$1" install
+
+rm -rf "$1/usr/share/ffmpeg/examples"
diff --git a/core-mod/extra/ffmpeg/checksums b/core-mod/extra/ffmpeg/checksums
new file mode 100644
index 0000000..54a682e
--- /dev/null
+++ b/core-mod/extra/ffmpeg/checksums
@@ -0,0 +1 @@
+06b10a183ce5371f915c6bb15b7b1fffbe046e8275099c96affc29e17645d909
diff --git a/core-mod/extra/ffmpeg/depends b/core-mod/extra/ffmpeg/depends
new file mode 100644
index 0000000..d6b3ec9
--- /dev/null
+++ b/core-mod/extra/ffmpeg/depends
@@ -0,0 +1,15 @@
+alsa-lib
+lame
+libass
+libogg
+libressl
+libvorbis
+libvpx
+libwebp
+linux-headers make
+nasm          make
+opus
+pkgconf make
+x264
+x265
+xvidcore
diff --git a/core-mod/extra/ffmpeg/sources b/core-mod/extra/ffmpeg/sources
new file mode 100644
index 0000000..db8d2b5
--- /dev/null
+++ b/core-mod/extra/ffmpeg/sources
@@ -0,0 +1 @@
+https://www.ffmpeg.org/releases/ffmpeg-4.4.tar.xz
diff --git a/core-mod/extra/ffmpeg/version b/core-mod/extra/ffmpeg/version
new file mode 100644
index 0000000..3fa426f
--- /dev/null
+++ b/core-mod/extra/ffmpeg/version
@@ -0,0 +1 @@
+4.4 1
diff --git a/core-mod/extra/fontconfig/build b/core-mod/extra/fontconfig/build
new file mode 100755
index 0000000..8cb6254
--- /dev/null
+++ b/core-mod/extra/fontconfig/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+./configure \
+    AUTOMAKE=/bin/true \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --sysconfdir=/etc \
+    --with-xmldir=/etc/fonts \
+    --enable-static \
+    --disable-docs \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/fontconfig/checksums b/core-mod/extra/fontconfig/checksums
new file mode 100644
index 0000000..e275512
--- /dev/null
+++ b/core-mod/extra/fontconfig/checksums
@@ -0,0 +1 @@
+a5f052cb73fd479ffb7b697980510903b563bbb55b8f7a2b001fcfb94026003c
diff --git a/core-mod/extra/fontconfig/depends b/core-mod/extra/fontconfig/depends
new file mode 100644
index 0000000..4bb81d1
--- /dev/null
+++ b/core-mod/extra/fontconfig/depends
@@ -0,0 +1,5 @@
+expat
+freetype-harfbuzz
+gperf   make
+pkgconf make
+python  make
diff --git a/core-mod/extra/fontconfig/post-install b/core-mod/extra/fontconfig/post-install
new file mode 100755
index 0000000..50861de
--- /dev/null
+++ b/core-mod/extra/fontconfig/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+fc-cache -vf
diff --git a/core-mod/extra/fontconfig/sources b/core-mod/extra/fontconfig/sources
new file mode 100644
index 0000000..8e4b95d
--- /dev/null
+++ b/core-mod/extra/fontconfig/sources
@@ -0,0 +1 @@
+https://freedesktop.org/software/fontconfig/release/fontconfig-2.13.94.tar.xz
diff --git a/core-mod/extra/fontconfig/version b/core-mod/extra/fontconfig/version
new file mode 100644
index 0000000..76fd9b4
--- /dev/null
+++ b/core-mod/extra/fontconfig/version
@@ -0,0 +1 @@
+2.13.94 1
diff --git a/core-mod/extra/freetype-harfbuzz/build b/core-mod/extra/freetype-harfbuzz/build
new file mode 100755
index 0000000..86c7a48
--- /dev/null
+++ b/core-mod/extra/freetype-harfbuzz/build
@@ -0,0 +1,48 @@
+#!/bin/sh -e
+
+build_freetype() (
+    cd freetype
+
+    CFLAGS="$CFLAGS -DDEFAULT_TT_INTERPRETER_VERSION=TT_INTERPRETER_VERSION_40" \
+    ./configure \
+        --prefix=/usr \
+        --enable-freetype-config \
+        --with-harfbuzz="$2"
+
+    make
+    make DESTDIR="$1" install
+)
+
+build_harfbuzz() (
+    # Point Harfbuzz to the Freetype files.
+    export CFLAGS="$CFLAGS -I$1/usr/include/freetype2"
+    export CXXFLAGS="$CXXFLAGS -I$1/usr/include/freetype2"
+    export LDFLAGS="$LDFLAGS -L$1/usr/lib"
+
+    cd harfbuzz
+
+    export DESTDIR="$1"
+    meson \
+        --prefix=/usr \
+        -Dpkg_config_path="$1/usr/lib/pkgconfig" \
+        -Ddefault_library=both \
+        -Dglib=enabled \
+        -Dfreetype=enabled \
+        -Dcairo=disabled \
+        -Dicu=disabled \
+        -Dbenchmark=disabled \
+        -Dtests=disabled \
+        . output
+
+    ninja -C output
+    ninja -C output install
+)
+
+build_freetype "$1" no
+build_harfbuzz "$1"
+
+# Point Freetype to the Harfbuzz files.
+export HARFBUZZ_CFLAGS="-I$PWD/harfbuzz/src"
+export HARFBUZZ_LIBS="-L$PWD/harfbuzz/output/src -lharfbuzz"
+
+build_freetype "$1" yes
diff --git a/core-mod/extra/freetype-harfbuzz/checksums b/core-mod/extra/freetype-harfbuzz/checksums
new file mode 100644
index 0000000..c9eabcc
--- /dev/null
+++ b/core-mod/extra/freetype-harfbuzz/checksums
@@ -0,0 +1,2 @@
+86a854d8905b19698bbc8f23b860bc104246ce4854dcea8e3b0fb21284f75784
+b3f17394c5bccee456172b2b30ddec0bb87e9c5df38b4559a973d14ccd04509d
diff --git a/core-mod/extra/freetype-harfbuzz/depends b/core-mod/extra/freetype-harfbuzz/depends
new file mode 100644
index 0000000..6b36f25
--- /dev/null
+++ b/core-mod/extra/freetype-harfbuzz/depends
@@ -0,0 +1,19 @@
+bzip2
+expat
+glib
+libX11
+libXau
+libXdamage
+libXext
+libXfixes
+libXrender
+libXxf86vm
+libdrm
+libpng
+libxcb
+libxshmfence
+mesa
+meson   make
+pixman
+pkgconf make
+zlib
diff --git a/core-mod/extra/freetype-harfbuzz/sources b/core-mod/extra/freetype-harfbuzz/sources
new file mode 100644
index 0000000..1773f70
--- /dev/null
+++ b/core-mod/extra/freetype-harfbuzz/sources
@@ -0,0 +1,2 @@
+https://download-mirror.savannah.gnu.org/releases/freetype/freetype-2.10.4.tar.xz freetype
+https://github.com/harfbuzz/harfbuzz/archive/2.8.1.tar.gz harfbuzz
diff --git a/core-mod/extra/freetype-harfbuzz/version b/core-mod/extra/freetype-harfbuzz/version
new file mode 100644
index 0000000..93d2d3f
--- /dev/null
+++ b/core-mod/extra/freetype-harfbuzz/version
@@ -0,0 +1 @@
+2.10.4+2.8.1 1
diff --git a/core-mod/extra/fribidi/build b/core-mod/extra/fribidi/build
new file mode 100755
index 0000000..cdabf58
--- /dev/null
+++ b/core-mod/extra/fribidi/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/fribidi/checksums b/core-mod/extra/fribidi/checksums
new file mode 100644
index 0000000..2a5dfc8
--- /dev/null
+++ b/core-mod/extra/fribidi/checksums
@@ -0,0 +1 @@
+7f1c687c7831499bcacae5e8675945a39bacbad16ecaa945e9454a32df653c01  fribidi-1.0.10.tar.xz
diff --git a/core-mod/extra/fribidi/sources b/core-mod/extra/fribidi/sources
new file mode 100644
index 0000000..0ddde5e
--- /dev/null
+++ b/core-mod/extra/fribidi/sources
@@ -0,0 +1 @@
+https://github.com/fribidi/fribidi/releases/download/v1.0.10/fribidi-1.0.10.tar.xz
diff --git a/core-mod/extra/fribidi/version b/core-mod/extra/fribidi/version
new file mode 100644
index 0000000..2d248d7
--- /dev/null
+++ b/core-mod/extra/fribidi/version
@@ -0,0 +1 @@
+1.0.10 1
diff --git a/core-mod/extra/gcompat/build b/core-mod/extra/gcompat/build
new file mode 100755
index 0000000..2b9b88d
--- /dev/null
+++ b/core-mod/extra/gcompat/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+sed -i 's|/lib|/usr/lib|g' Makefile
+
+make LINKER_PATH=/usr/lib/ld-musl-x86_64.so.1
+make DESTDIR="$1" install
+
+ln -s ld-linux.so.2 "$1/usr/lib/ld-linux-x86-64.so.2"
+
diff --git a/core-mod/extra/gcompat/checksums b/core-mod/extra/gcompat/checksums
new file mode 100644
index 0000000..3dfd1a8
--- /dev/null
+++ b/core-mod/extra/gcompat/checksums
@@ -0,0 +1 @@
+5bcf8bbe4b417bc66b22a7a3675273aa8834480144338172bbd8e81eaf41a7c4
diff --git a/core-mod/extra/gcompat/sources b/core-mod/extra/gcompat/sources
new file mode 100644
index 0000000..969d1b6
--- /dev/null
+++ b/core-mod/extra/gcompat/sources
@@ -0,0 +1 @@
+https://distfiles.adelielinux.org/source/gcompat/gcompat-1.0.0.tar.xz
diff --git a/core-mod/extra/gcompat/version b/core-mod/extra/gcompat/version
new file mode 100644
index 0000000..4448996
--- /dev/null
+++ b/core-mod/extra/gcompat/version
@@ -0,0 +1 @@
+1.0.0 1
diff --git a/core-mod/extra/gdk-pixbuf/build b/core-mod/extra/gdk-pixbuf/build
new file mode 100755
index 0000000..1d4c839
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/build
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+sed -i "/subdir('tests')/d" meson.build
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    -Dgir=false \
+    -Djasper=false \
+    -Dpng=true \
+    -Ddocs=false \
+    -Dman=false \
+    -Dgio_sniffing=false \
+    -Dinstalled_tests=false \
+    -Dbuiltin_loaders=all \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/gdk-pixbuf/checksums b/core-mod/extra/gdk-pixbuf/checksums
new file mode 100644
index 0000000..12f4eac
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/checksums
@@ -0,0 +1 @@
+c4a6b75b7ed8f58ca48da830b9fa00ed96d668d3ab4b1f723dcf902f78bde77f
diff --git a/core-mod/extra/gdk-pixbuf/depends b/core-mod/extra/gdk-pixbuf/depends
new file mode 100644
index 0000000..9f23cbd
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/depends
@@ -0,0 +1,5 @@
+glib
+libX11
+libpng
+meson   make
+pkgconf make
diff --git a/core-mod/extra/gdk-pixbuf/post-install b/core-mod/extra/gdk-pixbuf/post-install
new file mode 100755
index 0000000..b97f005
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+gdk-pixbuf-query-loaders --update-cache
diff --git a/core-mod/extra/gdk-pixbuf/sources b/core-mod/extra/gdk-pixbuf/sources
new file mode 100644
index 0000000..680a73f
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/sources
@@ -0,0 +1 @@
+https://download.gnome.org/sources/gdk-pixbuf/2.42/gdk-pixbuf-2.42.6.tar.xz
diff --git a/core-mod/extra/gdk-pixbuf/version b/core-mod/extra/gdk-pixbuf/version
new file mode 100644
index 0000000..038a394
--- /dev/null
+++ b/core-mod/extra/gdk-pixbuf/version
@@ -0,0 +1 @@
+2.42.6 1
diff --git a/core-mod/extra/giflib/build b/core-mod/extra/giflib/build
new file mode 100755
index 0000000..431cc72
--- /dev/null
+++ b/core-mod/extra/giflib/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/core-mod/extra/giflib/checksums b/core-mod/extra/giflib/checksums
new file mode 100644
index 0000000..023118b
--- /dev/null
+++ b/core-mod/extra/giflib/checksums
@@ -0,0 +1 @@
+31da5562f44c5f15d63340a09a4fd62b48c45620cd302f77a6d9acf0077879bd  giflib-5.2.1.tar.gz
diff --git a/core-mod/extra/giflib/sources b/core-mod/extra/giflib/sources
new file mode 100644
index 0000000..dc1326b
--- /dev/null
+++ b/core-mod/extra/giflib/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/giflib/giflib-5.2.1.tar.gz
diff --git a/core-mod/extra/giflib/version b/core-mod/extra/giflib/version
new file mode 100644
index 0000000..a06ff62
--- /dev/null
+++ b/core-mod/extra/giflib/version
@@ -0,0 +1 @@
+5.2.1 1
diff --git a/core-mod/extra/glib/build b/core-mod/extra/glib/build
new file mode 100755
index 0000000..0add508
--- /dev/null
+++ b/core-mod/extra/glib/build
@@ -0,0 +1,26 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+# Remove 'libelf' and 'util-linux' dependencies.
+sed -i 's/HAVE_LIBELF/HAVE_KISS/'      gio/meson.build
+sed -i 's/libmount_dep.found()/false/' meson.build
+
+# Don't build tests/fuzzing stuff.
+find . -type f -name meson.build -exec \
+    sed -i "/subdir('tests')/d;/subdir('fuzzing')/d" {} +
+
+meson \
+    --prefix=/usr \
+    -Dlibmount=disabled \
+    -Dinstalled_tests=false \
+    -Ddefault_library=both \
+    -Dman=false \
+    -Dfam=false \
+    -Dinternal_pcre=true \
+    . build
+
+ninja -C build
+ninja -C build install
+
+rm -rf "$1/usr/bin/gdbus"
diff --git a/core-mod/extra/glib/checksums b/core-mod/extra/glib/checksums
new file mode 100644
index 0000000..87396a4
--- /dev/null
+++ b/core-mod/extra/glib/checksums
@@ -0,0 +1 @@
+e7e1a3c20c026109c45c9ec4a31d8dcebc22e86c69486993e565817d64be3138
diff --git a/core-mod/extra/glib/depends b/core-mod/extra/glib/depends
new file mode 100644
index 0000000..f7659f3
--- /dev/null
+++ b/core-mod/extra/glib/depends
@@ -0,0 +1,4 @@
+libffi
+meson   make
+pkgconf make
+zlib
diff --git a/core-mod/extra/glib/sources b/core-mod/extra/glib/sources
new file mode 100644
index 0000000..5c66aca
--- /dev/null
+++ b/core-mod/extra/glib/sources
@@ -0,0 +1 @@
+https://download.gnome.org/sources/glib/2.68/glib-2.68.3.tar.xz
diff --git a/core-mod/extra/glib/version b/core-mod/extra/glib/version
new file mode 100644
index 0000000..b52e749
--- /dev/null
+++ b/core-mod/extra/glib/version
@@ -0,0 +1 @@
+2.68.3 3
diff --git a/core-mod/extra/gnupg1/build b/core-mod/extra/gnupg1/build
new file mode 100755
index 0000000..78f741b
--- /dev/null
+++ b/core-mod/extra/gnupg1/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+# Fix build fail with GCC 10.
+export CFLAGS="$CFLAGS -fcommon"
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --libexecdir=/usr/lib \
+    --enable-noexecstack \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/gnupg1/checksums b/core-mod/extra/gnupg1/checksums
new file mode 100644
index 0000000..e7ce497
--- /dev/null
+++ b/core-mod/extra/gnupg1/checksums
@@ -0,0 +1 @@
+c9462f17e651b6507848c08c430c791287cd75491f8b5a8b50c6ed46b12678ba  gnupg-1.4.23.tar.bz2
diff --git a/core-mod/extra/gnupg1/depends b/core-mod/extra/gnupg1/depends
new file mode 100644
index 0000000..82362fa
--- /dev/null
+++ b/core-mod/extra/gnupg1/depends
@@ -0,0 +1,4 @@
+bzip2
+curl
+libressl
+zlib
diff --git a/core-mod/extra/gnupg1/sources b/core-mod/extra/gnupg1/sources
new file mode 100644
index 0000000..40bad2e
--- /dev/null
+++ b/core-mod/extra/gnupg1/sources
@@ -0,0 +1 @@
+https://gnupg.org/ftp/gcrypt/gnupg/gnupg-1.4.23.tar.bz2
diff --git a/core-mod/extra/gnupg1/version b/core-mod/extra/gnupg1/version
new file mode 100644
index 0000000..e5bfc81
--- /dev/null
+++ b/core-mod/extra/gnupg1/version
@@ -0,0 +1 @@
+1.4.23 2
diff --git a/core-mod/extra/gperf/build b/core-mod/extra/gperf/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/gperf/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/gperf/checksums b/core-mod/extra/gperf/checksums
new file mode 100644
index 0000000..96f73ec
--- /dev/null
+++ b/core-mod/extra/gperf/checksums
@@ -0,0 +1 @@
+588546b945bba4b70b6a3a616e80b4ab466e3f33024a352fc2198112cdbb3ae2  gperf-3.1.tar.gz
diff --git a/core-mod/extra/gperf/sources b/core-mod/extra/gperf/sources
new file mode 100644
index 0000000..2ead637
--- /dev/null
+++ b/core-mod/extra/gperf/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/gperf/gperf-3.1.tar.gz
diff --git a/core-mod/extra/gperf/version b/core-mod/extra/gperf/version
new file mode 100644
index 0000000..122d3a0
--- /dev/null
+++ b/core-mod/extra/gperf/version
@@ -0,0 +1 @@
+3.1 3
diff --git a/core-mod/extra/gtk+3/build b/core-mod/extra/gtk+3/build
new file mode 100755
index 0000000..8317fc8
--- /dev/null
+++ b/core-mod/extra/gtk+3/build
@@ -0,0 +1,42 @@
+#!/bin/sh -e
+
+# Remove 'atk-bridge' dependency which removes the 'dbus' dependency.
+sed -i 's/ATK_PACKAGES="atk atk-bridge-2.0"/ATK_PACKAGES="atk"/' \
+    configure
+
+sed -i '/<atk-bridge.h>/d;/atk_bridge_adaptor_init/d' \
+    gtk/a11y/gtkaccessibility.c
+
+# Don't build GTK examples/demos/testsuite.
+sed -i 's/demos tests testsuite examples//' Makefile.am Makefile.in
+sed -i 's/docs m4macros/m4macros/'          Makefile.am Makefile.in
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    --enable-xkb \
+    --enable-xinerama \
+    --enable-xrandr \
+    --enable-xfixes \
+    --enable-xcomposite \
+    --enable-xdamage \
+    --enable-x11-backend \
+    --disable-schemas-compile \
+    --disable-cups \
+    --disable-papi \
+    --disable-cloudprint \
+    --disable-glibtest \
+    --disable-nls \
+    --disable-installed-tests \
+    --enable-introspection=no \
+    --enable-colord=no \
+    --enable-gtk-doc-html=no
+
+make
+make DESTDIR="$1" install
+
+# We don't compile with librsvg which leads to this
+# utility solely causing compiler errors for some
+# packages. It has no use at all.
+rm -f "$1/usr/bin/gtk-encode-symbolic-svg"
diff --git a/core-mod/extra/gtk+3/checksums b/core-mod/extra/gtk+3/checksums
new file mode 100644
index 0000000..8e8e9ef
--- /dev/null
+++ b/core-mod/extra/gtk+3/checksums
@@ -0,0 +1 @@
+f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa
diff --git a/core-mod/extra/gtk+3/depends b/core-mod/extra/gtk+3/depends
new file mode 100644
index 0000000..561ac12
--- /dev/null
+++ b/core-mod/extra/gtk+3/depends
@@ -0,0 +1,14 @@
+atk
+fribidi
+gdk-pixbuf
+libXcomposite
+libXcursor
+libXdamage
+libXext
+libXi
+libXinerama
+libXrandr
+libepoxy
+pango
+pkgconf make
+python  make
diff --git a/core-mod/extra/gtk+3/post-install b/core-mod/extra/gtk+3/post-install
new file mode 100755
index 0000000..75de5fa
--- /dev/null
+++ b/core-mod/extra/gtk+3/post-install
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+glib-compile-schemas /usr/share/glib-2.0/schemas/
diff --git a/core-mod/extra/gtk+3/sources b/core-mod/extra/gtk+3/sources
new file mode 100644
index 0000000..42aee20
--- /dev/null
+++ b/core-mod/extra/gtk+3/sources
@@ -0,0 +1 @@
+https://download.gnome.org/sources/gtk+/3.24/gtk+-3.24.29.tar.xz
diff --git a/core-mod/extra/gtk+3/version b/core-mod/extra/gtk+3/version
new file mode 100644
index 0000000..c2f912a
--- /dev/null
+++ b/core-mod/extra/gtk+3/version
@@ -0,0 +1 @@
+3.24.29 1
diff --git a/core-mod/extra/hicolor-icon-theme/build b/core-mod/extra/hicolor-icon-theme/build
new file mode 100755
index 0000000..c647b8e
--- /dev/null
+++ b/core-mod/extra/hicolor-icon-theme/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make DESTDIR="$1" install
diff --git a/core-mod/extra/hicolor-icon-theme/checksums b/core-mod/extra/hicolor-icon-theme/checksums
new file mode 100644
index 0000000..79c2b66
--- /dev/null
+++ b/core-mod/extra/hicolor-icon-theme/checksums
@@ -0,0 +1 @@
+317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8  hicolor-icon-theme-0.17.tar.xz
diff --git a/core-mod/extra/hicolor-icon-theme/sources b/core-mod/extra/hicolor-icon-theme/sources
new file mode 100644
index 0000000..25bef1d
--- /dev/null
+++ b/core-mod/extra/hicolor-icon-theme/sources
@@ -0,0 +1 @@
+https://icon-theme.freedesktop.org/releases/hicolor-icon-theme-0.17.tar.xz
diff --git a/core-mod/extra/hicolor-icon-theme/version b/core-mod/extra/hicolor-icon-theme/version
new file mode 100644
index 0000000..dc75c93
--- /dev/null
+++ b/core-mod/extra/hicolor-icon-theme/version
@@ -0,0 +1 @@
+0.17 1
diff --git a/core-mod/extra/intel-vaapi-driver/build b/core-mod/extra/intel-vaapi-driver/build
new file mode 100755
index 0000000..f4cca6c
--- /dev/null
+++ b/core-mod/extra/intel-vaapi-driver/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+# Fix build fail with GCC 10.
+export CFLAGS="$CFLAGS -fcommon"
+
+meson \
+    --prefix=/usr \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/intel-vaapi-driver/checksums b/core-mod/extra/intel-vaapi-driver/checksums
new file mode 100644
index 0000000..f6b9b91
--- /dev/null
+++ b/core-mod/extra/intel-vaapi-driver/checksums
@@ -0,0 +1 @@
+03cd7e16acc94f828b6e7f3087863d8ca06e99ffa3385588005b1984bdd56157  2.4.1.tar.gz
diff --git a/core-mod/extra/intel-vaapi-driver/depends b/core-mod/extra/intel-vaapi-driver/depends
new file mode 100644
index 0000000..23155ae
--- /dev/null
+++ b/core-mod/extra/intel-vaapi-driver/depends
@@ -0,0 +1,6 @@
+libdrm
+libpciaccess
+libva
+linux-headers make
+meson         make
+pkgconf       make
diff --git a/core-mod/extra/intel-vaapi-driver/sources b/core-mod/extra/intel-vaapi-driver/sources
new file mode 100644
index 0000000..edf4829
--- /dev/null
+++ b/core-mod/extra/intel-vaapi-driver/sources
@@ -0,0 +1 @@
+https://github.com/intel/intel-vaapi-driver/archive/2.4.1.tar.gz
diff --git a/core-mod/extra/intel-vaapi-driver/version b/core-mod/extra/intel-vaapi-driver/version
new file mode 100644
index 0000000..4fcdc2b
--- /dev/null
+++ b/core-mod/extra/intel-vaapi-driver/version
@@ -0,0 +1 @@
+2.4.1 1
diff --git a/core-mod/extra/lame/build b/core-mod/extra/lame/build
new file mode 100755
index 0000000..9e85cfc
--- /dev/null
+++ b/core-mod/extra/lame/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/lame/checksums b/core-mod/extra/lame/checksums
new file mode 100644
index 0000000..3b885b2
--- /dev/null
+++ b/core-mod/extra/lame/checksums
@@ -0,0 +1 @@
+ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e  lame-3.100.tar.gz
diff --git a/core-mod/extra/lame/sources b/core-mod/extra/lame/sources
new file mode 100644
index 0000000..8cc2835
--- /dev/null
+++ b/core-mod/extra/lame/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/lame/lame-3.100.tar.gz
diff --git a/core-mod/extra/lame/version b/core-mod/extra/lame/version
new file mode 100644
index 0000000..a8af8af
--- /dev/null
+++ b/core-mod/extra/lame/version
@@ -0,0 +1 @@
+3.100 2
diff --git a/core-mod/extra/libass/build b/core-mod/extra/libass/build
new file mode 100755
index 0000000..1193889
--- /dev/null
+++ b/core-mod/extra/libass/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-fontconfig
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libass/checksums b/core-mod/extra/libass/checksums
new file mode 100644
index 0000000..ea2a7e0
--- /dev/null
+++ b/core-mod/extra/libass/checksums
@@ -0,0 +1 @@
+1cdd39c9d007b06e737e7738004d7f38cf9b1e92843f37307b24e7ff63ab8e53
diff --git a/core-mod/extra/libass/depends b/core-mod/extra/libass/depends
new file mode 100644
index 0000000..4220926
--- /dev/null
+++ b/core-mod/extra/libass/depends
@@ -0,0 +1,6 @@
+expat
+fontconfig
+freetype-harfbuzz
+fribidi
+nasm    make
+pkgconf make
diff --git a/core-mod/extra/libass/sources b/core-mod/extra/libass/sources
new file mode 100644
index 0000000..a627189
--- /dev/null
+++ b/core-mod/extra/libass/sources
@@ -0,0 +1 @@
+https://github.com/libass/libass/releases/download/0.15.1/libass-0.15.1.tar.xz
diff --git a/core-mod/extra/libass/version b/core-mod/extra/libass/version
new file mode 100644
index 0000000..a506fde
--- /dev/null
+++ b/core-mod/extra/libass/version
@@ -0,0 +1 @@
+0.15.1 1
diff --git a/core-mod/extra/libdrm/build b/core-mod/extra/libdrm/build
new file mode 100755
index 0000000..a4efcbe
--- /dev/null
+++ b/core-mod/extra/libdrm/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    . build
+
+ninja -C build
+ninja -C build install
diff --git a/core-mod/extra/libdrm/checksums b/core-mod/extra/libdrm/checksums
new file mode 100644
index 0000000..fc2e6e1
--- /dev/null
+++ b/core-mod/extra/libdrm/checksums
@@ -0,0 +1 @@
+c554cef03b033636a975543eab363cc19081cb464595d3da1ec129f87370f888
diff --git a/core-mod/extra/libdrm/depends b/core-mod/extra/libdrm/depends
new file mode 100644
index 0000000..58247fb
--- /dev/null
+++ b/core-mod/extra/libdrm/depends
@@ -0,0 +1,4 @@
+libpciaccess
+linux-headers make
+meson         make
+pkgconf       make
diff --git a/core-mod/extra/libdrm/sources b/core-mod/extra/libdrm/sources
new file mode 100644
index 0000000..4de5763
--- /dev/null
+++ b/core-mod/extra/libdrm/sources
@@ -0,0 +1 @@
+https://dri.freedesktop.org/libdrm/libdrm-2.4.107.tar.xz
diff --git a/core-mod/extra/libdrm/version b/core-mod/extra/libdrm/version
new file mode 100644
index 0000000..5e5f0bf
--- /dev/null
+++ b/core-mod/extra/libdrm/version
@@ -0,0 +1 @@
+2.4.107 1
diff --git a/core-mod/extra/libelf/build b/core-mod/extra/libelf/build
new file mode 100755
index 0000000..4c2da98
--- /dev/null
+++ b/core-mod/extra/libelf/build
@@ -0,0 +1,27 @@
+#!/bin/sh -e
+
+# Build sometimes forces -Werror.
+export CFLAGS="$CFLAGS -Wno-error"
+
+# Disable configure error for missing argp, fts, and obstack.
+sed -i -e 's/as_fn_error.*argp/: "/g' \
+       -e 's/as_fn_error.*fts/: "/g' \
+       -e 's/as_fn_error.*obstack/: "/g' configure
+
+# Don't compile two unrelated C files which require argp.
+sed -i 's/color.*printversion../#/g' lib/Makefile.in
+
+./configure \
+    --prefix=/usr \
+    --disable-symbol-versioning \
+    --disable-debuginfod \
+    --disable-nls \
+    ac_cv_c99=yes # Override check for Clang.
+
+# Skip the default make target and build only what we need.
+make -C lib
+make -C libelf
+make -C libelf DESTDIR="$1" install
+
+mkdir -p "$1/usr/lib/pkgconfig"
+cp -f config/libelf.pc "$1/usr/lib/pkgconfig/libelf.pc"
diff --git a/core-mod/extra/libelf/checksums b/core-mod/extra/libelf/checksums
new file mode 100644
index 0000000..d5dbb04
--- /dev/null
+++ b/core-mod/extra/libelf/checksums
@@ -0,0 +1,2 @@
+dc8d3e74ab209465e7f568e1b3bb9a5a142f8656e2b57d10049a73da2ae6b5a6
+bf11b56670c7919b44e33b5b0f3a216b7f20cf2859b74bf5e2e837532f8e0579
diff --git a/core-mod/extra/libelf/depends b/core-mod/extra/libelf/depends
new file mode 100644
index 0000000..70b01bc
--- /dev/null
+++ b/core-mod/extra/libelf/depends
@@ -0,0 +1,2 @@
+pkgconf make
+zlib
diff --git a/core-mod/extra/libelf/files/error.h b/core-mod/extra/libelf/files/error.h
new file mode 100644
index 0000000..ef06827
--- /dev/null
+++ b/core-mod/extra/libelf/files/error.h
@@ -0,0 +1,27 @@
+#ifndef _ERROR_H_
+#define _ERROR_H_
+
+#include <stdarg.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+
+static unsigned int error_message_count = 0;
+
+static inline void error(int status, int errnum, const char* format, ...)
+{
+	va_list ap;
+	fprintf(stderr, "%s: ", program_invocation_name);
+	va_start(ap, format);
+	vfprintf(stderr, format, ap);
+	va_end(ap);
+	if (errnum)
+		fprintf(stderr, ": %s", strerror(errnum));
+	fprintf(stderr, "\n");
+	error_message_count++;
+	if (status)
+		exit(status);
+}
+
+#endif	/* _ERROR_H_ */
diff --git a/core-mod/extra/libelf/sources b/core-mod/extra/libelf/sources
new file mode 100644
index 0000000..1903c16
--- /dev/null
+++ b/core-mod/extra/libelf/sources
@@ -0,0 +1,2 @@
+https://sourceware.org/elfutils/ftp/0.185/elfutils-0.185.tar.bz2
+files/error.h lib
diff --git a/core-mod/extra/libelf/version b/core-mod/extra/libelf/version
new file mode 100644
index 0000000..4b6b3ae
--- /dev/null
+++ b/core-mod/extra/libelf/version
@@ -0,0 +1 @@
+0.185 1
diff --git a/core-mod/extra/libepoxy/build b/core-mod/extra/libepoxy/build
new file mode 100755
index 0000000..5447552
--- /dev/null
+++ b/core-mod/extra/libepoxy/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    -Dhas-dlvsym=false \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/libepoxy/checksums b/core-mod/extra/libepoxy/checksums
new file mode 100644
index 0000000..836b50e
--- /dev/null
+++ b/core-mod/extra/libepoxy/checksums
@@ -0,0 +1 @@
+0cd80cb040b75cbe77fadd45c48282ebab82d845c597ce11ee5e8cb9c1efeabb
diff --git a/core-mod/extra/libepoxy/depends b/core-mod/extra/libepoxy/depends
new file mode 100644
index 0000000..e68256b
--- /dev/null
+++ b/core-mod/extra/libepoxy/depends
@@ -0,0 +1,2 @@
+mesa  make
+meson make
diff --git a/core-mod/extra/libepoxy/sources b/core-mod/extra/libepoxy/sources
new file mode 100644
index 0000000..5d6338d
--- /dev/null
+++ b/core-mod/extra/libepoxy/sources
@@ -0,0 +1 @@
+https://github.com/anholt/libepoxy/archive/1.5.8.tar.gz
diff --git a/core-mod/extra/libepoxy/version b/core-mod/extra/libepoxy/version
new file mode 100644
index 0000000..7f26b0d
--- /dev/null
+++ b/core-mod/extra/libepoxy/version
@@ -0,0 +1 @@
+1.5.8 1
diff --git a/core-mod/extra/liberation-fonts/build b/core-mod/extra/liberation-fonts/build
new file mode 100755
index 0000000..081f1d5
--- /dev/null
+++ b/core-mod/extra/liberation-fonts/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+mkdir -p   "$1/usr/share/fonts/TTF"
+cp ./*.ttf "$1/usr/share/fonts/TTF"
diff --git a/core-mod/extra/liberation-fonts/checksums b/core-mod/extra/liberation-fonts/checksums
new file mode 100644
index 0000000..af2b301
--- /dev/null
+++ b/core-mod/extra/liberation-fonts/checksums
@@ -0,0 +1 @@
+26f85412dd0aa9d061504a1cc8aaf0aa12a70710e8d47d8b65a1251757c1a5ef
diff --git a/core-mod/extra/liberation-fonts/sources b/core-mod/extra/liberation-fonts/sources
new file mode 100644
index 0000000..2d35d41
--- /dev/null
+++ b/core-mod/extra/liberation-fonts/sources
@@ -0,0 +1 @@
+https://github.com/liberationfonts/liberation-fonts/files/6418984/liberation-fonts-ttf-2.1.4.tar.gz
diff --git a/core-mod/extra/liberation-fonts/version b/core-mod/extra/liberation-fonts/version
new file mode 100644
index 0000000..0c29842
--- /dev/null
+++ b/core-mod/extra/liberation-fonts/version
@@ -0,0 +1 @@
+2.1.4 1
diff --git a/core-mod/extra/libevdev/build b/core-mod/extra/libevdev/build
new file mode 100755
index 0000000..0cccff6
--- /dev/null
+++ b/core-mod/extra/libevdev/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-gcov
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libevdev/checksums b/core-mod/extra/libevdev/checksums
new file mode 100644
index 0000000..9a572ce
--- /dev/null
+++ b/core-mod/extra/libevdev/checksums
@@ -0,0 +1 @@
+63f4ea1489858a109080e0b40bd43e4e0903a1e12ea888d581db8c495747c2d0
diff --git a/core-mod/extra/libevdev/depends b/core-mod/extra/libevdev/depends
new file mode 100644
index 0000000..0efd8db
--- /dev/null
+++ b/core-mod/extra/libevdev/depends
@@ -0,0 +1,2 @@
+linux-headers make
+python        make
diff --git a/core-mod/extra/libevdev/sources b/core-mod/extra/libevdev/sources
new file mode 100644
index 0000000..839ef67
--- /dev/null
+++ b/core-mod/extra/libevdev/sources
@@ -0,0 +1 @@
+https://www.freedesktop.org/software/libevdev/libevdev-1.11.0.tar.xz
diff --git a/core-mod/extra/libevdev/version b/core-mod/extra/libevdev/version
new file mode 100644
index 0000000..0da43b1
--- /dev/null
+++ b/core-mod/extra/libevdev/version
@@ -0,0 +1 @@
+1.11.0 1
diff --git a/core-mod/extra/libffi/build b/core-mod/extra/libffi/build
new file mode 100755
index 0000000..7f3e4bf
--- /dev/null
+++ b/core-mod/extra/libffi/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-pic
+
+make
+make DESTDIR="$1" install
+
+# Maintain compatibility and avoid the need
+# for rebuilds of all packages linking to
+# libffi.
+ln -s libffi.so.8 "$1/usr/lib/libffi.so.7"
+#
+# ABI incompatibility only affects AArch64.
+# See: https://github.com/libffi/libffi/commit/c02c341
+#      https://github.com/libffi/libffi/issues/528
+ln -s libffi.so.7 "$1/usr/lib/libffi.so.6"
diff --git a/core-mod/extra/libffi/checksums b/core-mod/extra/libffi/checksums
new file mode 100644
index 0000000..14695d6
--- /dev/null
+++ b/core-mod/extra/libffi/checksums
@@ -0,0 +1 @@
+540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620
diff --git a/core-mod/extra/libffi/depends b/core-mod/extra/libffi/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/libffi/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/libffi/sources b/core-mod/extra/libffi/sources
new file mode 100644
index 0000000..a966e96
--- /dev/null
+++ b/core-mod/extra/libffi/sources
@@ -0,0 +1 @@
+https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.tar.gz
diff --git a/core-mod/extra/libffi/version b/core-mod/extra/libffi/version
new file mode 100644
index 0000000..ddd85e5
--- /dev/null
+++ b/core-mod/extra/libffi/version
@@ -0,0 +1 @@
+3.4.2 2
diff --git a/core-mod/extra/libinput/build b/core-mod/extra/libinput/build
new file mode 100755
index 0000000..52895f7
--- /dev/null
+++ b/core-mod/extra/libinput/build
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+pkg-config --exists libudev || {
+    printf 'udev (or libudev-zero) is required\n'
+    exit 1
+}
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --libexecdir=/usr/lib \
+    -Ddebug-gui=false \
+    -Ddocumentation=false \
+    -Dtests=false \
+    -Dlibwacom=false \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/libinput/checksums b/core-mod/extra/libinput/checksums
new file mode 100644
index 0000000..f62e01c
--- /dev/null
+++ b/core-mod/extra/libinput/checksums
@@ -0,0 +1 @@
+65a657490de896081935cf0830a9773aa76756b8e9961edeffcce1074706bbe6
diff --git a/core-mod/extra/libinput/depends b/core-mod/extra/libinput/depends
new file mode 100644
index 0000000..c323c7a
--- /dev/null
+++ b/core-mod/extra/libinput/depends
@@ -0,0 +1,5 @@
+libevdev
+linux-headers make
+meson         make
+mtdev
+pkgconf       make
diff --git a/core-mod/extra/libinput/post-install b/core-mod/extra/libinput/post-install
new file mode 100755
index 0000000..e682fc0
--- /dev/null
+++ b/core-mod/extra/libinput/post-install
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+cat <<EOF
+
+NOTE: You also need xf86-input-libinput.
+
+EOF
diff --git a/core-mod/extra/libinput/sources b/core-mod/extra/libinput/sources
new file mode 100644
index 0000000..c52f167
--- /dev/null
+++ b/core-mod/extra/libinput/sources
@@ -0,0 +1 @@
+https://github.com/wayland-project/libinput/archive/1.18.0.tar.gz
diff --git a/core-mod/extra/libinput/version b/core-mod/extra/libinput/version
new file mode 100644
index 0000000..f0fb559
--- /dev/null
+++ b/core-mod/extra/libinput/version
@@ -0,0 +1 @@
+1.18.0 1
diff --git a/core-mod/extra/libjpeg-turbo/build b/core-mod/extra/libjpeg-turbo/build
new file mode 100755
index 0000000..650b25f
--- /dev/null
+++ b/core-mod/extra/libjpeg-turbo/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+    -DCMAKE_SHARED_LIBS=True \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DWITH_JPEG8=1
+
+cmake --build   build
+cmake --install build
diff --git a/core-mod/extra/libjpeg-turbo/checksums b/core-mod/extra/libjpeg-turbo/checksums
new file mode 100644
index 0000000..29007f8
--- /dev/null
+++ b/core-mod/extra/libjpeg-turbo/checksums
@@ -0,0 +1 @@
+d6b7790927d658108dfd3bee2f0c66a2924c51ee7f9dc930f62c452f4a638c52
diff --git a/core-mod/extra/libjpeg-turbo/depends b/core-mod/extra/libjpeg-turbo/depends
new file mode 100644
index 0000000..8e82f95
--- /dev/null
+++ b/core-mod/extra/libjpeg-turbo/depends
@@ -0,0 +1,2 @@
+cmake make
+nasm  make
diff --git a/core-mod/extra/libjpeg-turbo/sources b/core-mod/extra/libjpeg-turbo/sources
new file mode 100644
index 0000000..80e0a26
--- /dev/null
+++ b/core-mod/extra/libjpeg-turbo/sources
@@ -0,0 +1 @@
+https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.1.0.tar.gz
diff --git a/core-mod/extra/libjpeg-turbo/version b/core-mod/extra/libjpeg-turbo/version
new file mode 100644
index 0000000..ef86239
--- /dev/null
+++ b/core-mod/extra/libjpeg-turbo/version
@@ -0,0 +1 @@
+2.1.0 1
diff --git a/core-mod/extra/libogg/build b/core-mod/extra/libogg/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/libogg/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libogg/checksums b/core-mod/extra/libogg/checksums
new file mode 100644
index 0000000..cfa165d
--- /dev/null
+++ b/core-mod/extra/libogg/checksums
@@ -0,0 +1 @@
+c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705
diff --git a/core-mod/extra/libogg/sources b/core-mod/extra/libogg/sources
new file mode 100644
index 0000000..a865524
--- /dev/null
+++ b/core-mod/extra/libogg/sources
@@ -0,0 +1 @@
+https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.xz
diff --git a/core-mod/extra/libogg/version b/core-mod/extra/libogg/version
new file mode 100644
index 0000000..a06f6a2
--- /dev/null
+++ b/core-mod/extra/libogg/version
@@ -0,0 +1 @@
+1.3.5 1
diff --git a/core-mod/extra/libpng/build b/core-mod/extra/libpng/build
new file mode 100755
index 0000000..5be67a8
--- /dev/null
+++ b/core-mod/extra/libpng/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+patch -p1 < libpng-1.6.37-apng.patch
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libpng/checksums b/core-mod/extra/libpng/checksums
new file mode 100644
index 0000000..d0278b6
--- /dev/null
+++ b/core-mod/extra/libpng/checksums
@@ -0,0 +1,2 @@
+ca74a0dace179a8422187671aee97dd3892b53e168627145271cad5b5ac81307  v1.6.37.tar.gz
+18b71dcd329af6ddb483cb6d145535861e04918f7eb95e8051545f0bbce7d517  libpng-1.6.37-apng.patch
diff --git a/core-mod/extra/libpng/depends b/core-mod/extra/libpng/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/core-mod/extra/libpng/depends
@@ -0,0 +1 @@
+zlib
diff --git a/core-mod/extra/libpng/patches/libpng-1.6.37-apng.patch b/core-mod/extra/libpng/patches/libpng-1.6.37-apng.patch
new file mode 100644
index 0000000..8aaa50b
--- /dev/null
+++ b/core-mod/extra/libpng/patches/libpng-1.6.37-apng.patch
@@ -0,0 +1,1728 @@
+diff -Naru libpng-1.6.37.org/png.h libpng-1.6.37/png.h
+--- libpng-1.6.37.org/png.h	2019-04-19 07:21:37.398024800 +0900
++++ libpng-1.6.37/png.h	2019-04-19 07:22:37.871245630 +0900
+@@ -330,6 +330,10 @@
+ #   include "pnglibconf.h"
+ #endif
+ 
++#define PNG_APNG_SUPPORTED
++#define PNG_READ_APNG_SUPPORTED
++#define PNG_WRITE_APNG_SUPPORTED
++
+ #ifndef PNG_VERSION_INFO_ONLY
+ /* Machine specific configuration. */
+ #  include "pngconf.h"
+@@ -425,6 +429,17 @@
+  * See pngconf.h for base types that vary by machine/system
+  */
+ 
++#ifdef PNG_APNG_SUPPORTED
++/* dispose_op flags from inside fcTL */
++#define PNG_DISPOSE_OP_NONE        0x00U
++#define PNG_DISPOSE_OP_BACKGROUND  0x01U
++#define PNG_DISPOSE_OP_PREVIOUS    0x02U
++
++/* blend_op flags from inside fcTL */
++#define PNG_BLEND_OP_SOURCE        0x00U
++#define PNG_BLEND_OP_OVER          0x01U
++#endif /* PNG_APNG_SUPPORTED */
++
+ /* This triggers a compiler error in png.c, if png.c and png.h
+  * do not agree upon the version number.
+  */
+@@ -746,6 +761,10 @@
+ #define PNG_INFO_sCAL 0x4000U  /* ESR, 1.0.6 */
+ #define PNG_INFO_IDAT 0x8000U  /* ESR, 1.0.6 */
+ #define PNG_INFO_eXIf 0x10000U /* GR-P, 1.6.31 */
++#ifdef PNG_APNG_SUPPORTED
++#define PNG_INFO_acTL 0x20000U
++#define PNG_INFO_fcTL 0x40000U
++#endif
+ 
+ /* This is used for the transformation routines, as some of them
+  * change these values for the row.  It also should enable using
+@@ -783,6 +802,10 @@
+ #ifdef PNG_PROGRESSIVE_READ_SUPPORTED
+ typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_infop));
+ typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_infop));
++#ifdef PNG_APNG_SUPPORTED
++typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp,
++    png_uint_32));
++#endif
+ 
+ /* The following callback receives png_uint_32 row_number, int pass for the
+  * png_bytep data of the row.  When transforming an interlaced image the
+@@ -3226,6 +3249,74 @@
+ /*******************************************************************************
+  *  END OF HARDWARE AND SOFTWARE OPTIONS
+  ******************************************************************************/
++#ifdef PNG_APNG_SUPPORTED
++PNG_EXPORT(250, png_uint_32, png_get_acTL, (png_structp png_ptr,
++   png_infop info_ptr, png_uint_32 *num_frames, png_uint_32 *num_plays));
++
++PNG_EXPORT(251, png_uint_32, png_set_acTL, (png_structp png_ptr,
++   png_infop info_ptr, png_uint_32 num_frames, png_uint_32 num_plays));
++
++PNG_EXPORT(252, png_uint_32, png_get_num_frames, (png_structp png_ptr,
++   png_infop info_ptr));
++
++PNG_EXPORT(253, png_uint_32, png_get_num_plays, (png_structp png_ptr,
++   png_infop info_ptr));
++
++PNG_EXPORT(254, png_uint_32, png_get_next_frame_fcTL,
++   (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width,
++   png_uint_32 *height, png_uint_32 *x_offset, png_uint_32 *y_offset,
++   png_uint_16 *delay_num, png_uint_16 *delay_den, png_byte *dispose_op,
++   png_byte *blend_op));
++
++PNG_EXPORT(255, png_uint_32, png_set_next_frame_fcTL,
++   (png_structp png_ptr, png_infop info_ptr, png_uint_32 width,
++   png_uint_32 height, png_uint_32 x_offset, png_uint_32 y_offset,
++   png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++   png_byte blend_op));
++
++PNG_EXPORT(256, png_uint_32, png_get_next_frame_width,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(257, png_uint_32, png_get_next_frame_height,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(258, png_uint_32, png_get_next_frame_x_offset,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(259, png_uint_32, png_get_next_frame_y_offset,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(260, png_uint_16, png_get_next_frame_delay_num,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(261, png_uint_16, png_get_next_frame_delay_den,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(262, png_byte, png_get_next_frame_dispose_op,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(263, png_byte, png_get_next_frame_blend_op,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(264, png_byte, png_get_first_frame_is_hidden,
++   (png_structp png_ptr, png_infop info_ptr));
++PNG_EXPORT(265, png_uint_32, png_set_first_frame_is_hidden,
++   (png_structp png_ptr, png_infop info_ptr, png_byte is_hidden));
++
++#ifdef PNG_READ_APNG_SUPPORTED
++PNG_EXPORT(266, void, png_read_frame_head, (png_structp png_ptr,
++   png_infop info_ptr));
++#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
++PNG_EXPORT(267, void, png_set_progressive_frame_fn, (png_structp png_ptr,
++   png_progressive_frame_ptr frame_info_fn,
++   png_progressive_frame_ptr frame_end_fn));
++#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */
++#endif /* PNG_READ_APNG_SUPPORTED */
++
++#ifdef PNG_WRITE_APNG_SUPPORTED
++PNG_EXPORT(268, void, png_write_frame_head, (png_structp png_ptr,
++   png_infop info_ptr, png_bytepp row_pointers,
++   png_uint_32 width, png_uint_32 height,
++   png_uint_32 x_offset, png_uint_32 y_offset,
++   png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++   png_byte blend_op));
++
++PNG_EXPORT(269, void, png_write_frame_tail, (png_structp png_ptr,
++   png_infop info_ptr));
++#endif /* PNG_WRITE_APNG_SUPPORTED */
++#endif /* PNG_APNG_SUPPORTED */
+ 
+ /* Maintainer: Put new public prototypes here ^, in libpng.3, in project
+  * defs, and in scripts/symbols.def.
+@@ -3235,7 +3326,11 @@
+  * one to use is one more than this.)
+  */
+ #ifdef PNG_EXPORT_LAST_ORDINAL
++#ifdef PNG_APNG_SUPPORTED
++  PNG_EXPORT_LAST_ORDINAL(269);
++#else
+   PNG_EXPORT_LAST_ORDINAL(249);
++#endif /* PNG_APNG_SUPPORTED */
+ #endif
+ 
+ #ifdef __cplusplus
+diff -Naru libpng-1.6.37.org/pngget.c libpng-1.6.37/pngget.c
+--- libpng-1.6.37.org/pngget.c	2019-04-19 07:21:37.399024787 +0900
++++ libpng-1.6.37/pngget.c	2019-04-19 07:22:37.850245901 +0900
+@@ -1246,4 +1246,166 @@
+ #  endif
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++png_uint_32 PNGAPI
++png_get_acTL(png_structp png_ptr, png_infop info_ptr,
++             png_uint_32 *num_frames, png_uint_32 *num_plays)
++{
++    png_debug1(1, "in %s retrieval function", "acTL");
++
++    if (png_ptr != NULL && info_ptr != NULL &&
++        (info_ptr->valid & PNG_INFO_acTL) &&
++        num_frames != NULL && num_plays != NULL)
++    {
++        *num_frames = info_ptr->num_frames;
++        *num_plays = info_ptr->num_plays;
++        return (1);
++    }
++
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_num_frames(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_num_frames()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->num_frames);
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_num_plays(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_num_plays()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->num_plays);
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_next_frame_fcTL(png_structp png_ptr, png_infop info_ptr,
++             png_uint_32 *width, png_uint_32 *height,
++             png_uint_32 *x_offset, png_uint_32 *y_offset,
++             png_uint_16 *delay_num, png_uint_16 *delay_den,
++             png_byte *dispose_op, png_byte *blend_op)
++{
++    png_debug1(1, "in %s retrieval function", "fcTL");
++
++    if (png_ptr != NULL && info_ptr != NULL &&
++        (info_ptr->valid & PNG_INFO_fcTL) &&
++        width != NULL && height != NULL &&
++        x_offset != NULL && y_offset != NULL &&
++        delay_num != NULL && delay_den != NULL &&
++        dispose_op != NULL && blend_op != NULL)
++    {
++        *width = info_ptr->next_frame_width;
++        *height = info_ptr->next_frame_height;
++        *x_offset = info_ptr->next_frame_x_offset;
++        *y_offset = info_ptr->next_frame_y_offset;
++        *delay_num = info_ptr->next_frame_delay_num;
++        *delay_den = info_ptr->next_frame_delay_den;
++        *dispose_op = info_ptr->next_frame_dispose_op;
++        *blend_op = info_ptr->next_frame_blend_op;
++        return (1);
++    }
++
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_next_frame_width(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_width()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_width);
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_next_frame_height(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_height()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_height);
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_next_frame_x_offset(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_x_offset()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_x_offset);
++    return (0);
++}
++
++png_uint_32 PNGAPI
++png_get_next_frame_y_offset(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_y_offset()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_y_offset);
++    return (0);
++}
++
++png_uint_16 PNGAPI
++png_get_next_frame_delay_num(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_delay_num()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_delay_num);
++    return (0);
++}
++
++png_uint_16 PNGAPI
++png_get_next_frame_delay_den(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_delay_den()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_delay_den);
++    return (0);
++}
++
++png_byte PNGAPI
++png_get_next_frame_dispose_op(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_dispose_op()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_dispose_op);
++    return (0);
++}
++
++png_byte PNGAPI
++png_get_next_frame_blend_op(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_get_next_frame_blend_op()");
++
++    if (png_ptr != NULL && info_ptr != NULL)
++        return (info_ptr->next_frame_blend_op);
++    return (0);
++}
++
++png_byte PNGAPI
++png_get_first_frame_is_hidden(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_first_frame_is_hidden()");
++
++    if (png_ptr != NULL)
++       return (png_byte)(png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN);
++
++    PNG_UNUSED(info_ptr)
++
++    return 0;
++}
++#endif /* PNG_APNG_SUPPORTED */
+ #endif /* READ || WRITE */
+diff -Naru libpng-1.6.37.org/pnginfo.h libpng-1.6.37/pnginfo.h
+--- libpng-1.6.37.org/pnginfo.h	2019-04-19 07:21:37.399024787 +0900
++++ libpng-1.6.37/pnginfo.h	2019-04-19 07:22:37.850245901 +0900
+@@ -263,5 +263,18 @@
+    png_bytepp row_pointers;        /* the image bits */
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++   png_uint_32 num_frames; /* including default image */
++   png_uint_32 num_plays;
++   png_uint_32 next_frame_width;
++   png_uint_32 next_frame_height;
++   png_uint_32 next_frame_x_offset;
++   png_uint_32 next_frame_y_offset;
++   png_uint_16 next_frame_delay_num;
++   png_uint_16 next_frame_delay_den;
++   png_byte next_frame_dispose_op;
++   png_byte next_frame_blend_op;
++#endif
++
+ };
+ #endif /* PNGINFO_H */
+diff -Naru libpng-1.6.37.org/pngpread.c libpng-1.6.37/pngpread.c
+--- libpng-1.6.37.org/pngpread.c	2019-04-19 07:21:37.399024787 +0900
++++ libpng-1.6.37/pngpread.c	2019-04-19 07:22:37.850245901 +0900
+@@ -195,6 +195,106 @@
+ 
+    chunk_name = png_ptr->chunk_name;
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++   if (png_ptr->num_frames_read > 0 &&
++       png_ptr->num_frames_read < info_ptr->num_frames)
++   {
++      if (chunk_name == png_IDAT)
++      {
++         /* Discard trailing IDATs for the first frame */
++         if (png_ptr->mode & PNG_HAVE_fcTL || png_ptr->num_frames_read > 1)
++            png_error(png_ptr, "out of place IDAT");
++
++         if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++         {
++            png_push_save_buffer(png_ptr);
++            return;
++         }
++
++         png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER;
++         return;
++      }
++      else if (chunk_name == png_fdAT)
++      {
++         if (png_ptr->buffer_size < 4)
++         {
++            png_push_save_buffer(png_ptr);
++            return;
++         }
++
++         png_ensure_sequence_number(png_ptr, 4);
++
++         if (!(png_ptr->mode & PNG_HAVE_fcTL))
++         {
++            /* Discard trailing fdATs for frames other than the first */
++            if (png_ptr->num_frames_read < 2)
++               png_error(png_ptr, "out of place fdAT");
++
++            if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++            {
++               png_push_save_buffer(png_ptr);
++               return;
++            }
++
++            png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER;
++            return;
++         }
++
++         else
++         {
++            /* frame data follows */
++            png_ptr->idat_size = png_ptr->push_length - 4;
++            png_ptr->mode |= PNG_HAVE_IDAT;
++            png_ptr->process_mode = PNG_READ_IDAT_MODE;
++
++            return;
++         }
++      }
++
++      else if (chunk_name == png_fcTL)
++      {
++         if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++         {
++            png_push_save_buffer(png_ptr);
++            return;
++         }
++
++         png_read_reset(png_ptr);
++         png_ptr->mode &= ~PNG_HAVE_fcTL;
++
++         png_handle_fcTL(png_ptr, info_ptr, png_ptr->push_length);
++
++         if (!(png_ptr->mode & PNG_HAVE_fcTL))
++            png_error(png_ptr, "missing required fcTL chunk");
++
++         png_read_reinit(png_ptr, info_ptr);
++         png_progressive_read_reset(png_ptr);
++
++         if (png_ptr->frame_info_fn != NULL)
++            (*(png_ptr->frame_info_fn))(png_ptr, png_ptr->num_frames_read);
++
++         png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER;
++
++         return;
++      }
++
++      else
++      {
++         if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++         {
++            png_push_save_buffer(png_ptr);
++            return;
++         }
++         png_warning(png_ptr, "Skipped (ignored) a chunk "
++                              "between APNG chunks");
++         png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER;
++         return;
++      }
++
++      return;
++   }
++#endif /* PNG_READ_APNG_SUPPORTED */
++
+    if (chunk_name == png_IDAT)
+    {
+       if ((png_ptr->mode & PNG_AFTER_IDAT) != 0)
+@@ -261,6 +361,9 @@
+ 
+    else if (chunk_name == png_IDAT)
+    {
++#ifdef PNG_READ_APNG_SUPPORTED
++      png_have_info(png_ptr, info_ptr);
++#endif
+       png_ptr->idat_size = png_ptr->push_length;
+       png_ptr->process_mode = PNG_READ_IDAT_MODE;
+       png_push_have_info(png_ptr, info_ptr);
+@@ -406,6 +509,30 @@
+       png_handle_iTXt(png_ptr, info_ptr, png_ptr->push_length);
+    }
+ #endif
++#ifdef PNG_READ_APNG_SUPPORTED
++   else if (chunk_name == png_acTL)
++   {
++      if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++      {
++         png_push_save_buffer(png_ptr);
++         return;
++      }
++
++      png_handle_acTL(png_ptr, info_ptr, png_ptr->push_length);
++   }
++
++   else if (chunk_name == png_fcTL)
++   {
++      if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++      {
++         png_push_save_buffer(png_ptr);
++         return;
++      }
++
++      png_handle_fcTL(png_ptr, info_ptr, png_ptr->push_length);
++   }
++
++#endif /* PNG_READ_APNG_SUPPORTED */
+ 
+    else
+    {
+@@ -539,7 +666,11 @@
+       png_byte chunk_tag[4];
+ 
+       /* TODO: this code can be commoned up with the same code in push_read */
++#ifdef PNG_READ_APNG_SUPPORTED
++      PNG_PUSH_SAVE_BUFFER_IF_LT(12)
++#else
+       PNG_PUSH_SAVE_BUFFER_IF_LT(8)
++#endif
+       png_push_fill_buffer(png_ptr, chunk_length, 4);
+       png_ptr->push_length = png_get_uint_31(png_ptr, chunk_length);
+       png_reset_crc(png_ptr);
+@@ -547,17 +678,64 @@
+       png_ptr->chunk_name = PNG_CHUNK_FROM_STRING(chunk_tag);
+       png_ptr->mode |= PNG_HAVE_CHUNK_HEADER;
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++      if (png_ptr->chunk_name != png_fdAT && png_ptr->num_frames_read > 0)
++      {
++          if (png_ptr->flags & PNG_FLAG_ZSTREAM_ENDED)
++          {
++              png_ptr->process_mode = PNG_READ_CHUNK_MODE;
++              if (png_ptr->frame_end_fn != NULL)
++                 (*(png_ptr->frame_end_fn))(png_ptr, png_ptr->num_frames_read);
++              png_ptr->num_frames_read++;
++              return;
++          }
++          else
++          {
++              if (png_ptr->chunk_name == png_IEND)
++                  png_error(png_ptr, "Not enough image data");
++              if (png_ptr->push_length + 4 > png_ptr->buffer_size)
++              {
++                 png_push_save_buffer(png_ptr);
++                 return;
++              }
++              png_warning(png_ptr, "Skipping (ignoring) a chunk between "
++                                   "APNG chunks");
++              png_crc_finish(png_ptr, png_ptr->push_length);
++              png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER;
++              return;
++          }
++      }
++      else
++#endif
++#ifdef PNG_READ_APNG_SUPPORTED
++      if (png_ptr->chunk_name != png_IDAT && png_ptr->num_frames_read == 0)
++#else
+       if (png_ptr->chunk_name != png_IDAT)
++#endif
+       {
+          png_ptr->process_mode = PNG_READ_CHUNK_MODE;
+ 
+          if ((png_ptr->flags & PNG_FLAG_ZSTREAM_ENDED) == 0)
+             png_error(png_ptr, "Not enough compressed data");
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++         if (png_ptr->frame_end_fn != NULL)
++            (*(png_ptr->frame_end_fn))(png_ptr, png_ptr->num_frames_read);
++         png_ptr->num_frames_read++;
++#endif
++
+          return;
+       }
+ 
+       png_ptr->idat_size = png_ptr->push_length;
++
++#ifdef PNG_READ_APNG_SUPPORTED
++      if (png_ptr->num_frames_read > 0)
++      {
++         png_ensure_sequence_number(png_ptr, 4);
++         png_ptr->idat_size -= 4;
++      }
++#endif
+    }
+ 
+    if (png_ptr->idat_size != 0 && png_ptr->save_buffer_size != 0)
+@@ -631,6 +809,15 @@
+    if (!(buffer_length > 0) || buffer == NULL)
+       png_error(png_ptr, "No IDAT data (internal error)");
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++   /* If the app is not APNG-aware, decode only the first frame */
++   if (!(png_ptr->apng_flags & PNG_APNG_APP) && png_ptr->num_frames_read > 0)
++   {
++     png_ptr->flags |= PNG_FLAG_ZSTREAM_ENDED;
++     return;
++   }
++#endif
++
+    /* This routine must process all the data it has been given
+     * before returning, calling the row callback as required to
+     * handle the uncompressed results.
+@@ -1085,6 +1272,18 @@
+    png_set_read_fn(png_ptr, progressive_ptr, png_push_fill_buffer);
+ }
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++void PNGAPI
++png_set_progressive_frame_fn(png_structp png_ptr,
++   png_progressive_frame_ptr frame_info_fn,
++   png_progressive_frame_ptr frame_end_fn)
++{
++   png_ptr->frame_info_fn = frame_info_fn;
++   png_ptr->frame_end_fn = frame_end_fn;
++   png_ptr->apng_flags |= PNG_APNG_APP;
++}
++#endif
++
+ png_voidp PNGAPI
+ png_get_progressive_ptr(png_const_structrp png_ptr)
+ {
+diff -Naru libpng-1.6.37.org/pngpriv.h libpng-1.6.37/pngpriv.h
+--- libpng-1.6.37.org/pngpriv.h	2019-04-19 07:21:37.399024787 +0900
++++ libpng-1.6.37/pngpriv.h	2019-04-19 07:22:37.850245901 +0900
+@@ -637,6 +637,10 @@
+ #define PNG_HAVE_CHUNK_AFTER_IDAT 0x2000U /* Have another chunk after IDAT */
+                    /*             0x4000U (unused) */
+ #define PNG_IS_READ_STRUCT        0x8000U /* Else is a write struct */
++#ifdef PNG_APNG_SUPPORTED
++#define PNG_HAVE_acTL            0x10000U
++#define PNG_HAVE_fcTL            0x20000U
++#endif
+ 
+ /* Flags for the transformations the PNG library does on the image data */
+ #define PNG_BGR                 0x0001U
+@@ -873,6 +877,16 @@
+ #define png_tRNS PNG_U32(116,  82,  78,  83)
+ #define png_zTXt PNG_U32(122,  84,  88, 116)
+ 
++#ifdef PNG_APNG_SUPPORTED
++#define png_acTL PNG_U32( 97,  99,  84,  76)
++#define png_fcTL PNG_U32(102,  99,  84,  76)
++#define png_fdAT PNG_U32(102, 100,  65,  84)
++
++/* For png_struct.apng_flags: */
++#define PNG_FIRST_FRAME_HIDDEN       0x0001U
++#define PNG_APNG_APP                 0x0002U
++#endif
++
+ /* The following will work on (signed char*) strings, whereas the get_uint_32
+  * macro will fail on top-bit-set values because of the sign extension.
+  */
+@@ -1644,6 +1658,47 @@
+     */
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++PNG_INTERNAL_FUNCTION(void,png_ensure_fcTL_is_valid,(png_structp png_ptr,
++   png_uint_32 width, png_uint_32 height,
++   png_uint_32 x_offset, png_uint_32 y_offset,
++   png_uint_16 delay_num, png_uint_16 delay_den,
++   png_byte dispose_op, png_byte blend_op), PNG_EMPTY);
++
++#ifdef PNG_READ_APNG_SUPPORTED
++PNG_INTERNAL_FUNCTION(void,png_handle_acTL,(png_structp png_ptr, png_infop info_ptr,
++   png_uint_32 length),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_handle_fcTL,(png_structp png_ptr, png_infop info_ptr,
++   png_uint_32 length),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_handle_fdAT,(png_structp png_ptr, png_infop info_ptr,
++   png_uint_32 length),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_have_info,(png_structp png_ptr, png_infop info_ptr),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_ensure_sequence_number,(png_structp png_ptr,
++   png_uint_32 length),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_read_reset,(png_structp png_ptr),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_read_reinit,(png_structp png_ptr,
++   png_infop info_ptr),PNG_EMPTY);
++#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
++PNG_INTERNAL_FUNCTION(void,png_progressive_read_reset,(png_structp png_ptr),PNG_EMPTY);
++#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */
++#endif /* PNG_READ_APNG_SUPPORTED */
++
++#ifdef PNG_WRITE_APNG_SUPPORTED
++PNG_INTERNAL_FUNCTION(void,png_write_acTL,(png_structp png_ptr,
++   png_uint_32 num_frames, png_uint_32 num_plays),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_write_fcTL,(png_structp png_ptr,
++   png_uint_32 width, png_uint_32 height,
++   png_uint_32 x_offset, png_uint_32 y_offset,
++   png_uint_16 delay_num, png_uint_16 delay_den,
++   png_byte dispose_op, png_byte blend_op),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_write_fdAT,(png_structp png_ptr,
++   png_const_bytep data, png_size_t length),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_write_reset,(png_structp png_ptr),PNG_EMPTY);
++PNG_INTERNAL_FUNCTION(void,png_write_reinit,(png_structp png_ptr,
++   png_infop info_ptr, png_uint_32 width, png_uint_32 height),PNG_EMPTY);
++#endif /* PNG_WRITE_APNG_SUPPORTED */
++#endif /* PNG_APNG_SUPPORTED */
++
+ /* Added at libpng version 1.4.0 */
+ #ifdef PNG_COLORSPACE_SUPPORTED
+ /* These internal functions are for maintaining the colorspace structure within
+diff -Naru libpng-1.6.37.org/pngread.c libpng-1.6.37/pngread.c
+--- libpng-1.6.37.org/pngread.c	2019-04-19 07:21:37.400024774 +0900
++++ libpng-1.6.37/pngread.c	2019-04-19 07:22:37.851245887 +0900
+@@ -161,6 +161,9 @@
+ 
+       else if (chunk_name == png_IDAT)
+       {
++#ifdef PNG_READ_APNG_SUPPORTED
++         png_have_info(png_ptr, info_ptr);
++#endif
+          png_ptr->idat_size = length;
+          break;
+       }
+@@ -255,6 +258,17 @@
+          png_handle_iTXt(png_ptr, info_ptr, length);
+ #endif
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++      else if (chunk_name == png_acTL)
++         png_handle_acTL(png_ptr, info_ptr, length);
++
++      else if (chunk_name == png_fcTL)
++         png_handle_fcTL(png_ptr, info_ptr, length);
++
++      else if (chunk_name == png_fdAT)
++         png_handle_fdAT(png_ptr, info_ptr, length);
++#endif
++
+       else
+          png_handle_unknown(png_ptr, info_ptr, length,
+              PNG_HANDLE_CHUNK_AS_DEFAULT);
+@@ -262,6 +276,72 @@
+ }
+ #endif /* SEQUENTIAL_READ */
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++void PNGAPI
++png_read_frame_head(png_structp png_ptr, png_infop info_ptr)
++{
++    png_byte have_chunk_after_DAT; /* after IDAT or after fdAT */
++
++    png_debug(0, "Reading frame head");
++
++    if (!(png_ptr->mode & PNG_HAVE_acTL))
++        png_error(png_ptr, "attempt to png_read_frame_head() but "
++                           "no acTL present");
++
++    /* do nothing for the main IDAT */
++    if (png_ptr->num_frames_read == 0)
++        return;
++
++    png_read_reset(png_ptr);
++    png_ptr->flags &= ~PNG_FLAG_ROW_INIT;
++    png_ptr->mode &= ~PNG_HAVE_fcTL;
++
++    have_chunk_after_DAT = 0;
++    for (;;)
++    {
++        png_uint_32 length = png_read_chunk_header(png_ptr);
++
++        if (png_ptr->chunk_name == png_IDAT)
++        {
++            /* discard trailing IDATs for the first frame */
++            if (have_chunk_after_DAT || png_ptr->num_frames_read > 1)
++                png_error(png_ptr, "png_read_frame_head(): out of place IDAT");
++            png_crc_finish(png_ptr, length);
++        }
++
++        else if (png_ptr->chunk_name == png_fcTL)
++        {
++            png_handle_fcTL(png_ptr, info_ptr, length);
++            have_chunk_after_DAT = 1;
++        }
++
++        else if (png_ptr->chunk_name == png_fdAT)
++        {
++            png_ensure_sequence_number(png_ptr, length);
++
++            /* discard trailing fdATs for frames other than the first */
++            if (!have_chunk_after_DAT && png_ptr->num_frames_read > 1)
++                png_crc_finish(png_ptr, length - 4);
++            else if(png_ptr->mode & PNG_HAVE_fcTL)
++            {
++                png_ptr->idat_size = length - 4;
++                png_ptr->mode |= PNG_HAVE_IDAT;
++
++                break;
++            }
++            else
++                png_error(png_ptr, "png_read_frame_head(): out of place fdAT");
++        }
++        else
++        {
++            png_warning(png_ptr, "Skipped (ignored) a chunk "
++                                 "between APNG chunks");
++            png_crc_finish(png_ptr, length);
++        }
++    }
++}
++#endif /* PNG_READ_APNG_SUPPORTED */
++
+ /* Optional call to update the users info_ptr structure */
+ void PNGAPI
+ png_read_update_info(png_structrp png_ptr, png_inforp info_ptr)
+diff -Naru libpng-1.6.37.org/pngrutil.c libpng-1.6.37/pngrutil.c
+--- libpng-1.6.37.org/pngrutil.c	2019-04-19 07:21:37.401024761 +0900
++++ libpng-1.6.37/pngrutil.c	2019-04-19 07:22:37.853245862 +0900
+@@ -865,6 +865,11 @@
+    filter_type = buf[11];
+    interlace_type = buf[12];
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++   png_ptr->first_frame_width = width;
++   png_ptr->first_frame_height = height;
++#endif
++
+    /* Set internal variables */
+    png_ptr->width = width;
+    png_ptr->height = height;
+@@ -2857,6 +2862,179 @@
+ }
+ #endif
+ 
++#ifdef PNG_READ_APNG_SUPPORTED
++void /* PRIVATE */
++png_handle_acTL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
++{
++    png_byte data[8];
++    png_uint_32 num_frames;
++    png_uint_32 num_plays;
++    png_uint_32 didSet;
++
++    png_debug(1, "in png_handle_acTL");
++
++    if (!(png_ptr->mode & PNG_HAVE_IHDR))
++    {
++        png_error(png_ptr, "Missing IHDR before acTL");
++    }
++    else if (png_ptr->mode & PNG_HAVE_IDAT)
++    {
++        png_warning(png_ptr, "Invalid acTL after IDAT skipped");
++        png_crc_finish(png_ptr, length);
++        return;
++    }
++    else if (png_ptr->mode & PNG_HAVE_acTL)
++    {
++        png_warning(png_ptr, "Duplicate acTL skipped");
++        png_crc_finish(png_ptr, length);
++        return;
++    }
++    else if (length != 8)
++    {
++        png_warning(png_ptr, "acTL with invalid length skipped");
++        png_crc_finish(png_ptr, length);
++        return;
++    }
++
++    png_crc_read(png_ptr, data, 8);
++    png_crc_finish(png_ptr, 0);
++
++    num_frames = png_get_uint_31(png_ptr, data);
++    num_plays = png_get_uint_31(png_ptr, data + 4);
++
++    /* the set function will do error checking on num_frames */
++    didSet = png_set_acTL(png_ptr, info_ptr, num_frames, num_plays);
++    if(didSet)
++        png_ptr->mode |= PNG_HAVE_acTL;
++}
++
++void /* PRIVATE */
++png_handle_fcTL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
++{
++    png_byte data[22];
++    png_uint_32 width;
++    png_uint_32 height;
++    png_uint_32 x_offset;
++    png_uint_32 y_offset;
++    png_uint_16 delay_num;
++    png_uint_16 delay_den;
++    png_byte dispose_op;
++    png_byte blend_op;
++
++    png_debug(1, "in png_handle_fcTL");
++
++    png_ensure_sequence_number(png_ptr, length);
++
++    if (!(png_ptr->mode & PNG_HAVE_IHDR))
++    {
++        png_error(png_ptr, "Missing IHDR before fcTL");
++    }
++    else if (png_ptr->mode & PNG_HAVE_IDAT)
++    {
++        /* for any frames other then the first this message may be misleading,
++        * but correct. PNG_HAVE_IDAT is unset before the frame head is read
++        * i can't think of a better message */
++        png_warning(png_ptr, "Invalid fcTL after IDAT skipped");
++        png_crc_finish(png_ptr, length-4);
++        return;
++    }
++    else if (png_ptr->mode & PNG_HAVE_fcTL)
++    {
++        png_warning(png_ptr, "Duplicate fcTL within one frame skipped");
++        png_crc_finish(png_ptr, length-4);
++        return;
++    }
++    else if (length != 26)
++    {
++        png_warning(png_ptr, "fcTL with invalid length skipped");
++        png_crc_finish(png_ptr, length-4);
++        return;
++    }
++
++    png_crc_read(png_ptr, data, 22);
++    png_crc_finish(png_ptr, 0);
++
++    width = png_get_uint_31(png_ptr, data);
++    height = png_get_uint_31(png_ptr, data + 4);
++    x_offset = png_get_uint_31(png_ptr, data + 8);
++    y_offset = png_get_uint_31(png_ptr, data + 12);
++    delay_num = png_get_uint_16(data + 16);
++    delay_den = png_get_uint_16(data + 18);
++    dispose_op = data[20];
++    blend_op = data[21];
++
++    if (png_ptr->num_frames_read == 0 && (x_offset != 0 || y_offset != 0))
++    {
++        png_warning(png_ptr, "fcTL for the first frame must have zero offset");
++        return;
++    }
++
++    if (info_ptr != NULL)
++    {
++        if (png_ptr->num_frames_read == 0 &&
++            (width != info_ptr->width || height != info_ptr->height))
++        {
++            png_warning(png_ptr, "size in first frame's fcTL must match "
++                               "the size in IHDR");
++            return;
++        }
++
++        /* The set function will do more error checking */
++        png_set_next_frame_fcTL(png_ptr, info_ptr, width, height,
++                                x_offset, y_offset, delay_num, delay_den,
++                                dispose_op, blend_op);
++
++        png_read_reinit(png_ptr, info_ptr);
++
++        png_ptr->mode |= PNG_HAVE_fcTL;
++    }
++}
++
++void /* PRIVATE */
++png_have_info(png_structp png_ptr, png_infop info_ptr)
++{
++    if((info_ptr->valid & PNG_INFO_acTL) && !(info_ptr->valid & PNG_INFO_fcTL))
++    {
++        png_ptr->apng_flags |= PNG_FIRST_FRAME_HIDDEN;
++        info_ptr->num_frames++;
++    }
++}
++
++void /* PRIVATE */
++png_handle_fdAT(png_structp png_ptr, png_infop info_ptr, png_uint_32 length)
++{
++    png_ensure_sequence_number(png_ptr, length);
++
++    /* This function is only called from png_read_end(), png_read_info(),
++    * and png_push_read_chunk() which means that:
++    * - the user doesn't want to read this frame
++    * - or this is an out-of-place fdAT
++    * in either case it is safe to ignore the chunk with a warning */
++    png_warning(png_ptr, "ignoring fdAT chunk");
++    png_crc_finish(png_ptr, length - 4);
++    PNG_UNUSED(info_ptr)
++}
++
++void /* PRIVATE */
++png_ensure_sequence_number(png_structp png_ptr, png_uint_32 length)
++{
++    png_byte data[4];
++    png_uint_32 sequence_number;
++
++    if (length < 4)
++        png_error(png_ptr, "invalid fcTL or fdAT chunk found");
++
++    png_crc_read(png_ptr, data, 4);
++    sequence_number = png_get_uint_31(png_ptr, data);
++
++    if (sequence_number != png_ptr->next_seq_num)
++        png_error(png_ptr, "fcTL or fdAT chunk with out-of-order sequence "
++                           "number found");
++
++    png_ptr->next_seq_num++;
++}
++#endif /* PNG_READ_APNG_SUPPORTED */
++
+ #ifdef PNG_READ_UNKNOWN_CHUNKS_SUPPORTED
+ /* Utility function for png_handle_unknown; set up png_ptr::unknown_chunk */
+ static int
+@@ -4165,7 +4343,38 @@
+       {
+          uInt avail_in;
+          png_bytep buffer;
++#ifdef PNG_READ_APNG_SUPPORTED
++         png_uint_32 bytes_to_skip = 0;
++
++         while (png_ptr->idat_size == 0 || bytes_to_skip != 0)
++         {
++            png_crc_finish(png_ptr, bytes_to_skip);
++            bytes_to_skip = 0;
+ 
++            png_ptr->idat_size = png_read_chunk_header(png_ptr);
++            if (png_ptr->num_frames_read == 0)
++            {
++               if (png_ptr->chunk_name != png_IDAT)
++                  png_error(png_ptr, "Not enough image data");
++            }
++            else
++            {
++               if (png_ptr->chunk_name == png_IEND)
++                  png_error(png_ptr, "Not enough image data");
++               if (png_ptr->chunk_name != png_fdAT)
++               {
++                  png_warning(png_ptr, "Skipped (ignored) a chunk "
++                                       "between APNG chunks");
++                  bytes_to_skip = png_ptr->idat_size;
++                  continue;
++               }
++
++               png_ensure_sequence_number(png_ptr, png_ptr->idat_size);
++
++               png_ptr->idat_size -= 4;
++            }
++         }
++#else
+          while (png_ptr->idat_size == 0)
+          {
+             png_crc_finish(png_ptr, 0);
+@@ -4177,7 +4386,7 @@
+             if (png_ptr->chunk_name != png_IDAT)
+                png_error(png_ptr, "Not enough image data");
+          }
+-
++#endif /* PNG_READ_APNG_SUPPORTED */
+          avail_in = png_ptr->IDAT_read_size;
+ 
+          if (avail_in > png_ptr->idat_size)
+@@ -4240,6 +4449,9 @@
+ 
+          png_ptr->mode |= PNG_AFTER_IDAT;
+          png_ptr->flags |= PNG_FLAG_ZSTREAM_ENDED;
++#ifdef PNG_READ_APNG_SUPPORTED
++         png_ptr->num_frames_read++;
++#endif
+ 
+          if (png_ptr->zstream.avail_in > 0 || png_ptr->idat_size > 0)
+             png_chunk_benign_error(png_ptr, "Extra compressed data");
+@@ -4678,4 +4890,80 @@
+ 
+    png_ptr->flags |= PNG_FLAG_ROW_INIT;
+ }
++
++#ifdef PNG_READ_APNG_SUPPORTED
++/* This function is to be called after the main IDAT set has been read and
++ * before a new IDAT is read. It resets some parts of png_ptr
++ * to make them usable by the read functions again */
++void /* PRIVATE */
++png_read_reset(png_structp png_ptr)
++{
++    png_ptr->mode &= ~PNG_HAVE_IDAT;
++    png_ptr->mode &= ~PNG_AFTER_IDAT;
++    png_ptr->row_number = 0;
++    png_ptr->pass = 0;
++}
++
++void /* PRIVATE */
++png_read_reinit(png_structp png_ptr, png_infop info_ptr)
++{
++    png_ptr->width = info_ptr->next_frame_width;
++    png_ptr->height = info_ptr->next_frame_height;
++    png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth,png_ptr->width);
++    png_ptr->info_rowbytes = PNG_ROWBYTES(info_ptr->pixel_depth,
++        png_ptr->width);
++    if (png_ptr->prev_row)
++        memset(png_ptr->prev_row, 0, png_ptr->rowbytes + 1);
++}
++
++#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
++/* same as png_read_reset() but for the progressive reader */
++void /* PRIVATE */
++png_progressive_read_reset(png_structp png_ptr)
++{
++#ifdef PNG_READ_INTERLACING_SUPPORTED
++   /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */
++
++   /* Start of interlace block */
++    const int png_pass_start[] = {0, 4, 0, 2, 0, 1, 0};
++
++    /* Offset to next interlace block */
++    const int png_pass_inc[] = {8, 8, 4, 4, 2, 2, 1};
++
++    /* Start of interlace block in the y direction */
++    const int png_pass_ystart[] = {0, 0, 4, 0, 2, 0, 1};
++
++    /* Offset to next interlace block in the y direction */
++    const int png_pass_yinc[] = {8, 8, 8, 4, 4, 2, 2};
++
++    if (png_ptr->interlaced)
++    {
++        if (!(png_ptr->transformations & PNG_INTERLACE))
++            png_ptr->num_rows = (png_ptr->height + png_pass_yinc[0] - 1 -
++                                png_pass_ystart[0]) / png_pass_yinc[0];
++        else
++            png_ptr->num_rows = png_ptr->height;
++
++        png_ptr->iwidth = (png_ptr->width +
++                           png_pass_inc[png_ptr->pass] - 1 -
++                           png_pass_start[png_ptr->pass]) /
++                           png_pass_inc[png_ptr->pass];
++    }
++    else
++#endif /* PNG_READ_INTERLACING_SUPPORTED */
++    {
++        png_ptr->num_rows = png_ptr->height;
++        png_ptr->iwidth = png_ptr->width;
++    }
++    png_ptr->flags &= ~PNG_FLAG_ZSTREAM_ENDED;
++    if (inflateReset(&(png_ptr->zstream)) != Z_OK)
++        png_error(png_ptr, "inflateReset failed");
++    png_ptr->zstream.avail_in = 0;
++    png_ptr->zstream.next_in = 0;
++    png_ptr->zstream.next_out = png_ptr->row_buf;
++    png_ptr->zstream.avail_out = (uInt)PNG_ROWBYTES(png_ptr->pixel_depth,
++        png_ptr->iwidth) + 1;
++}
++#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */
++#endif /* PNG_READ_APNG_SUPPORTED */
+ #endif /* READ */
+diff -Naru libpng-1.6.37.org/pngset.c libpng-1.6.37/pngset.c
+--- libpng-1.6.37.org/pngset.c	2019-04-19 07:21:37.401024761 +0900
++++ libpng-1.6.37/pngset.c	2019-04-19 07:22:37.858245798 +0900
+@@ -288,6 +288,11 @@
+    info_ptr->pixel_depth = (png_byte)(info_ptr->channels * info_ptr->bit_depth);
+ 
+    info_ptr->rowbytes = PNG_ROWBYTES(info_ptr->pixel_depth, width);
++
++#ifdef PNG_APNG_SUPPORTED
++   /* for non-animated png. this may be overwritten from an acTL chunk later */
++   info_ptr->num_frames = 1;
++#endif
+ }
+ 
+ #ifdef PNG_oFFs_SUPPORTED
+@@ -1158,6 +1163,147 @@
+ }
+ #endif /* sPLT */
+ 
++#ifdef PNG_APNG_SUPPORTED
++png_uint_32 PNGAPI
++png_set_acTL(png_structp png_ptr, png_infop info_ptr,
++    png_uint_32 num_frames, png_uint_32 num_plays)
++{
++    png_debug1(1, "in %s storage function", "acTL");
++
++    if (png_ptr == NULL || info_ptr == NULL)
++    {
++        png_warning(png_ptr,
++                    "Call to png_set_acTL() with NULL png_ptr "
++                    "or info_ptr ignored");
++        return (0);
++    }
++    if (num_frames == 0)
++    {
++        png_warning(png_ptr,
++                    "Ignoring attempt to set acTL with num_frames zero");
++        return (0);
++    }
++    if (num_frames > PNG_UINT_31_MAX)
++    {
++        png_warning(png_ptr,
++                    "Ignoring attempt to set acTL with num_frames > 2^31-1");
++        return (0);
++    }
++    if (num_plays > PNG_UINT_31_MAX)
++    {
++        png_warning(png_ptr,
++                    "Ignoring attempt to set acTL with num_plays "
++                    "> 2^31-1");
++        return (0);
++    }
++
++    info_ptr->num_frames = num_frames;
++    info_ptr->num_plays = num_plays;
++
++    info_ptr->valid |= PNG_INFO_acTL;
++
++    return (1);
++}
++
++/* delay_num and delay_den can hold any 16-bit values including zero */
++png_uint_32 PNGAPI
++png_set_next_frame_fcTL(png_structp png_ptr, png_infop info_ptr,
++    png_uint_32 width, png_uint_32 height,
++    png_uint_32 x_offset, png_uint_32 y_offset,
++    png_uint_16 delay_num, png_uint_16 delay_den,
++    png_byte dispose_op, png_byte blend_op)
++{
++    png_debug1(1, "in %s storage function", "fcTL");
++
++    if (png_ptr == NULL || info_ptr == NULL)
++    {
++        png_warning(png_ptr,
++                    "Call to png_set_fcTL() with NULL png_ptr or info_ptr "
++                    "ignored");
++        return (0);
++    }
++
++    png_ensure_fcTL_is_valid(png_ptr, width, height, x_offset, y_offset,
++                             delay_num, delay_den, dispose_op, blend_op);
++
++    if (blend_op == PNG_BLEND_OP_OVER)
++    {
++        if (!(png_ptr->color_type & PNG_COLOR_MASK_ALPHA) &&
++            !(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)))
++        {
++          png_warning(png_ptr, "PNG_BLEND_OP_OVER is meaningless "
++                               "and wasteful for opaque images, ignored");
++          blend_op = PNG_BLEND_OP_SOURCE;
++        }
++    }
++
++    info_ptr->next_frame_width = width;
++    info_ptr->next_frame_height = height;
++    info_ptr->next_frame_x_offset = x_offset;
++    info_ptr->next_frame_y_offset = y_offset;
++    info_ptr->next_frame_delay_num = delay_num;
++    info_ptr->next_frame_delay_den = delay_den;
++    info_ptr->next_frame_dispose_op = dispose_op;
++    info_ptr->next_frame_blend_op = blend_op;
++
++    info_ptr->valid |= PNG_INFO_fcTL;
++
++    return (1);
++}
++
++void /* PRIVATE */
++png_ensure_fcTL_is_valid(png_structp png_ptr,
++    png_uint_32 width, png_uint_32 height,
++    png_uint_32 x_offset, png_uint_32 y_offset,
++    png_uint_16 delay_num, png_uint_16 delay_den,
++    png_byte dispose_op, png_byte blend_op)
++{
++    if (width == 0 || width > PNG_UINT_31_MAX)
++        png_error(png_ptr, "invalid width in fcTL (> 2^31-1)");
++    if (height == 0 || height > PNG_UINT_31_MAX)
++        png_error(png_ptr, "invalid height in fcTL (> 2^31-1)");
++    if (x_offset > PNG_UINT_31_MAX)
++        png_error(png_ptr, "invalid x_offset in fcTL (> 2^31-1)");
++    if (y_offset > PNG_UINT_31_MAX)
++        png_error(png_ptr, "invalid y_offset in fcTL (> 2^31-1)");
++    if (width + x_offset > png_ptr->first_frame_width ||
++        height + y_offset > png_ptr->first_frame_height)
++        png_error(png_ptr, "dimensions of a frame are greater than"
++                           "the ones in IHDR");
++
++    if (dispose_op != PNG_DISPOSE_OP_NONE &&
++        dispose_op != PNG_DISPOSE_OP_BACKGROUND &&
++        dispose_op != PNG_DISPOSE_OP_PREVIOUS)
++        png_error(png_ptr, "invalid dispose_op in fcTL");
++
++    if (blend_op != PNG_BLEND_OP_SOURCE &&
++        blend_op != PNG_BLEND_OP_OVER)
++        png_error(png_ptr, "invalid blend_op in fcTL");
++
++    PNG_UNUSED(delay_num)
++    PNG_UNUSED(delay_den)
++}
++
++png_uint_32 PNGAPI
++png_set_first_frame_is_hidden(png_structp png_ptr, png_infop info_ptr,
++                              png_byte is_hidden)
++{
++    png_debug(1, "in png_first_frame_is_hidden()");
++
++    if (png_ptr == NULL)
++        return 0;
++
++    if (is_hidden)
++        png_ptr->apng_flags |= PNG_FIRST_FRAME_HIDDEN;
++    else
++        png_ptr->apng_flags &= ~PNG_FIRST_FRAME_HIDDEN;
++
++    PNG_UNUSED(info_ptr)
++
++    return 1;
++}
++#endif /* PNG_APNG_SUPPORTED */
++
+ #ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
+ static png_byte
+ check_location(png_const_structrp png_ptr, int location)
+diff -Naru libpng-1.6.37.org/pngstruct.h libpng-1.6.37/pngstruct.h
+--- libpng-1.6.37.org/pngstruct.h	2019-04-19 07:21:37.401024761 +0900
++++ libpng-1.6.37/pngstruct.h	2019-04-19 07:22:37.854245849 +0900
+@@ -409,6 +409,27 @@
+    png_byte filter_type;
+ #endif
+ 
++#ifdef PNG_APNG_SUPPORTED
++   png_uint_32 apng_flags;
++   png_uint_32 next_seq_num;         /* next fcTL/fdAT chunk sequence number */
++   png_uint_32 first_frame_width;
++   png_uint_32 first_frame_height;
++
++#ifdef PNG_READ_APNG_SUPPORTED
++   png_uint_32 num_frames_read;      /* incremented after all image data of */
++                                     /* a frame is read */
++#ifdef PNG_PROGRESSIVE_READ_SUPPORTED
++   png_progressive_frame_ptr frame_info_fn; /* frame info read callback */
++   png_progressive_frame_ptr frame_end_fn;  /* frame data read callback */
++#endif
++#endif
++
++#ifdef PNG_WRITE_APNG_SUPPORTED
++   png_uint_32 num_frames_to_write;
++   png_uint_32 num_frames_written;
++#endif
++#endif /* PNG_APNG_SUPPORTED */
++
+ /* New members added in libpng-1.2.0 */
+ 
+ /* New members added in libpng-1.0.2 but first enabled by default in 1.2.0 */
+diff -Naru libpng-1.6.37.org/pngtest.c libpng-1.6.37/pngtest.c
+--- libpng-1.6.37.org/pngtest.c	2019-04-19 07:21:37.401024761 +0900
++++ libpng-1.6.37/pngtest.c	2019-04-19 07:22:37.854245849 +0900
+@@ -875,6 +875,10 @@
+    volatile int num_passes;
+    int pass;
+    int bit_depth, color_type;
++#ifdef PNG_APNG_SUPPORTED
++   png_uint_32 num_frames;
++   png_uint_32 num_plays;
++#endif
+ 
+    row_buf = NULL;
+    error_parameters.file_name = inname;
+@@ -1383,6 +1387,22 @@
+       }
+    }
+ #endif
++
++#ifdef PNG_APNG_SUPPORTED
++   if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_acTL))
++   {
++      if (png_get_acTL(read_ptr, read_info_ptr, &num_frames, &num_plays))
++      {
++         png_byte is_hidden;
++         pngtest_debug2("Handling acTL chunks (frames %ld, plays %ld)",
++                    num_frames, num_plays);
++         png_set_acTL(write_ptr, write_info_ptr, num_frames, num_plays);
++         is_hidden = png_get_first_frame_is_hidden(read_ptr, read_info_ptr);
++         png_set_first_frame_is_hidden(write_ptr, write_info_ptr, is_hidden);
++      }
++   }
++#endif
++
+ #ifdef PNG_WRITE_UNKNOWN_CHUNKS_SUPPORTED
+    {
+       png_unknown_chunkp unknowns;
+@@ -1463,6 +1483,110 @@
+    t_misc += (t_stop - t_start);
+    t_start = t_stop;
+ #endif
++#ifdef PNG_APNG_SUPPORTED
++   if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_acTL))
++   {
++      png_uint_32 frame;
++      for (frame = 0; frame < num_frames; frame++)
++      {
++         png_uint_32 frame_width;
++         png_uint_32 frame_height;
++         png_uint_32 x_offset;
++         png_uint_32 y_offset;
++         png_uint_16 delay_num;
++         png_uint_16 delay_den;
++         png_byte dispose_op;
++         png_byte blend_op;
++         png_read_frame_head(read_ptr, read_info_ptr);
++         if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_fcTL))
++         {
++            png_get_next_frame_fcTL(read_ptr, read_info_ptr,
++                                    &frame_width, &frame_height,
++                                    &x_offset, &y_offset,
++                                    &delay_num, &delay_den,
++                                    &dispose_op, &blend_op);
++         }
++         else
++         {
++            frame_width = width;
++            frame_height = height;
++            x_offset = 0;
++            y_offset = 0;
++            delay_num = 1;
++            delay_den = 1;
++            dispose_op = PNG_DISPOSE_OP_NONE;
++            blend_op = PNG_BLEND_OP_SOURCE;
++         }
++#ifdef PNG_WRITE_APNG_SUPPORTED
++         png_write_frame_head(write_ptr, write_info_ptr, (png_bytepp)&row_buf,
++                              frame_width, frame_height,
++                              x_offset, y_offset,
++                              delay_num, delay_den,
++                              dispose_op, blend_op);
++#endif
++         for (pass = 0; pass < num_passes; pass++)
++         {
++#           ifdef calc_pass_height
++               png_uint_32 pass_height;
++
++               if (num_passes == 7) /* interlaced */
++               {
++                  if (PNG_PASS_COLS(frame_width, pass) > 0)
++                     pass_height = PNG_PASS_ROWS(frame_height, pass);
++
++                  else
++                     pass_height = 0;
++               }
++
++               else /* not interlaced */
++                  pass_height = frame_height;
++#           else
++#              define pass_height frame_height
++#           endif
++
++            pngtest_debug1("Writing row data for pass %d", pass);
++            for (y = 0; y < pass_height; y++)
++            {
++#ifndef SINGLE_ROWBUF_ALLOC
++               pngtest_debug2("Allocating row buffer (pass %d, y = %u)...", pass, y);
++
++               row_buf = (png_bytep)png_malloc(read_ptr,
++                  png_get_rowbytes(read_ptr, read_info_ptr));
++
++               pngtest_debug2("\t0x%08lx (%lu bytes)", (unsigned long)row_buf,
++                  (unsigned long)png_get_rowbytes(read_ptr, read_info_ptr));
++
++#endif /* !SINGLE_ROWBUF_ALLOC */
++               png_read_rows(read_ptr, (png_bytepp)&row_buf, NULL, 1);
++
++#ifdef PNG_WRITE_SUPPORTED
++#ifdef PNGTEST_TIMING
++               t_stop = (float)clock();
++               t_decode += (t_stop - t_start);
++               t_start = t_stop;
++#endif
++               png_write_rows(write_ptr, (png_bytepp)&row_buf, 1);
++#ifdef PNGTEST_TIMING
++               t_stop = (float)clock();
++               t_encode += (t_stop - t_start);
++               t_start = t_stop;
++#endif
++#endif /* PNG_WRITE_SUPPORTED */
++
++#ifndef SINGLE_ROWBUF_ALLOC
++               pngtest_debug2("Freeing row buffer (pass %d, y = %u)", pass, y);
++               png_free(read_ptr, row_buf);
++               row_buf = NULL;
++#endif /* !SINGLE_ROWBUF_ALLOC */
++            }
++         }
++#ifdef PNG_WRITE_APNG_SUPPORTED
++         png_write_frame_tail(write_ptr, write_info_ptr);
++#endif
++      }
++   }
++   else
++#endif
+    for (pass = 0; pass < num_passes; pass++)
+    {
+ #     ifdef calc_pass_height
+diff -Naru libpng-1.6.37.org/pngwrite.c libpng-1.6.37/pngwrite.c
+--- libpng-1.6.37.org/pngwrite.c	2019-04-19 07:21:37.402024748 +0900
++++ libpng-1.6.37/pngwrite.c	2019-04-19 07:22:37.855245836 +0900
+@@ -128,6 +128,10 @@
+        * the application continues writing the PNG.  So check the 'invalid'
+        * flag here too.
+        */
++#ifdef PNG_WRITE_APNG_SUPPORTED
++      if (info_ptr->valid & PNG_INFO_acTL)
++         png_write_acTL(png_ptr, info_ptr->num_frames, info_ptr->num_plays);
++#endif
+ #ifdef PNG_GAMMA_SUPPORTED
+ #  ifdef PNG_WRITE_gAMA_SUPPORTED
+       if ((info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) == 0 &&
+@@ -370,6 +374,11 @@
+       png_benign_error(png_ptr, "Wrote palette index exceeding num_palette");
+ #endif
+ 
++#ifdef PNG_WRITE_APNG_SUPPORTED
++   if (png_ptr->num_frames_written != png_ptr->num_frames_to_write)
++      png_error(png_ptr, "Not enough frames written");
++#endif
++
+    /* See if user wants us to write information chunks */
+    if (info_ptr != NULL)
+    {
+@@ -1461,6 +1470,43 @@
+ }
+ #endif
+ 
++#ifdef PNG_WRITE_APNG_SUPPORTED
++void PNGAPI
++png_write_frame_head(png_structp png_ptr, png_infop info_ptr,
++    png_bytepp row_pointers, png_uint_32 width, png_uint_32 height,
++    png_uint_32 x_offset, png_uint_32 y_offset,
++    png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++    png_byte blend_op)
++{
++    png_debug(1, "in png_write_frame_head");
++
++    /* there is a chance this has been set after png_write_info was called,
++    * so it would be set but not written. is there a way to be sure? */
++    if (!(info_ptr->valid & PNG_INFO_acTL))
++        png_error(png_ptr, "png_write_frame_head(): acTL not set");
++
++    png_write_reset(png_ptr);
++
++    png_write_reinit(png_ptr, info_ptr, width, height);
++
++    if ( !(png_ptr->num_frames_written == 0 &&
++           (png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN) ) )
++        png_write_fcTL(png_ptr, width, height, x_offset, y_offset,
++                       delay_num, delay_den, dispose_op, blend_op);
++
++    PNG_UNUSED(row_pointers)
++}
++
++void PNGAPI
++png_write_frame_tail(png_structp png_ptr, png_infop info_ptr)
++{
++    png_debug(1, "in png_write_frame_tail");
++
++    png_ptr->num_frames_written++;
++
++    PNG_UNUSED(info_ptr)
++}
++#endif /* PNG_WRITE_APNG_SUPPORTED */
+ 
+ #ifdef PNG_SIMPLIFIED_WRITE_SUPPORTED
+ /* Initialize the write structure - general purpose utility. */
+diff -Naru libpng-1.6.37.org/pngwutil.c libpng-1.6.37/pngwutil.c
+--- libpng-1.6.37.org/pngwutil.c	2019-04-19 07:21:37.402024748 +0900
++++ libpng-1.6.37/pngwutil.c	2019-04-19 07:22:37.867245682 +0900
+@@ -821,6 +821,11 @@
+    /* Write the chunk */
+    png_write_complete_chunk(png_ptr, png_IHDR, buf, 13);
+ 
++#ifdef PNG_WRITE_APNG_SUPPORTED
++   png_ptr->first_frame_width = width;
++   png_ptr->first_frame_height = height;
++#endif
++
+    if ((png_ptr->do_filter) == PNG_NO_FILTERS)
+    {
+       if (png_ptr->color_type == PNG_COLOR_TYPE_PALETTE ||
+@@ -1002,8 +1007,17 @@
+                optimize_cmf(data, png_image_size(png_ptr));
+ #endif
+ 
+-         if (size > 0)
+-            png_write_complete_chunk(png_ptr, png_IDAT, data, size);
++            if (size > 0)
++#ifdef PNG_WRITE_APNG_SUPPORTED
++            {
++               if (png_ptr->num_frames_written == 0)
++#endif
++               png_write_complete_chunk(png_ptr, png_IDAT, data, size);
++#ifdef PNG_WRITE_APNG_SUPPORTED
++               else
++                  png_write_fdAT(png_ptr, data, size);
++            }
++#endif /* PNG_WRITE_APNG_SUPPORTED */
+          png_ptr->mode |= PNG_HAVE_IDAT;
+ 
+          png_ptr->zstream.next_out = data;
+@@ -1050,7 +1064,17 @@
+ #endif
+ 
+          if (size > 0)
++#ifdef PNG_WRITE_APNG_SUPPORTED
++         {
++            if (png_ptr->num_frames_written == 0)
++#endif
+             png_write_complete_chunk(png_ptr, png_IDAT, data, size);
++#ifdef PNG_WRITE_APNG_SUPPORTED
++            else
++               png_write_fdAT(png_ptr, data, size);
++         }
++#endif /* PNG_WRITE_APNG_SUPPORTED */
++
+          png_ptr->zstream.avail_out = 0;
+          png_ptr->zstream.next_out = NULL;
+          png_ptr->mode |= PNG_HAVE_IDAT | PNG_AFTER_IDAT;
+@@ -1885,6 +1909,82 @@
+ }
+ #endif
+ 
++#ifdef PNG_WRITE_APNG_SUPPORTED
++void /* PRIVATE */
++png_write_acTL(png_structp png_ptr,
++    png_uint_32 num_frames, png_uint_32 num_plays)
++{
++    png_byte buf[8];
++
++    png_debug(1, "in png_write_acTL");
++
++    png_ptr->num_frames_to_write = num_frames;
++
++    if (png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN)
++        num_frames--;
++
++    png_save_uint_32(buf, num_frames);
++    png_save_uint_32(buf + 4, num_plays);
++
++    png_write_complete_chunk(png_ptr, png_acTL, buf, (png_size_t)8);
++}
++
++void /* PRIVATE */
++png_write_fcTL(png_structp png_ptr, png_uint_32 width, png_uint_32 height,
++    png_uint_32 x_offset, png_uint_32 y_offset,
++    png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op,
++    png_byte blend_op)
++{
++    png_byte buf[26];
++
++    png_debug(1, "in png_write_fcTL");
++
++    if (png_ptr->num_frames_written == 0 && (x_offset != 0 || y_offset != 0))
++        png_error(png_ptr, "x and/or y offset for the first frame aren't 0");
++    if (png_ptr->num_frames_written == 0 &&
++        (width != png_ptr->first_frame_width ||
++         height != png_ptr->first_frame_height))
++        png_error(png_ptr, "width and/or height in the first frame's fcTL "
++                           "don't match the ones in IHDR");
++
++    /* more error checking */
++    png_ensure_fcTL_is_valid(png_ptr, width, height, x_offset, y_offset,
++                             delay_num, delay_den, dispose_op, blend_op);
++
++    png_save_uint_32(buf, png_ptr->next_seq_num);
++    png_save_uint_32(buf + 4, width);
++    png_save_uint_32(buf + 8, height);
++    png_save_uint_32(buf + 12, x_offset);
++    png_save_uint_32(buf + 16, y_offset);
++    png_save_uint_16(buf + 20, delay_num);
++    png_save_uint_16(buf + 22, delay_den);
++    buf[24] = dispose_op;
++    buf[25] = blend_op;
++
++    png_write_complete_chunk(png_ptr, png_fcTL, buf, (png_size_t)26);
++
++    png_ptr->next_seq_num++;
++}
++
++void /* PRIVATE */
++png_write_fdAT(png_structp png_ptr,
++    png_const_bytep data, png_size_t length)
++{
++    png_byte buf[4];
++
++    png_write_chunk_header(png_ptr, png_fdAT, (png_uint_32)(4 + length));
++
++    png_save_uint_32(buf, png_ptr->next_seq_num);
++    png_write_chunk_data(png_ptr, buf, 4);
++
++    png_write_chunk_data(png_ptr, data, length);
++
++    png_write_chunk_end(png_ptr);
++
++    png_ptr->next_seq_num++;
++}
++#endif /* PNG_WRITE_APNG_SUPPORTED */
++
+ /* Initializes the row writing capability of libpng */
+ void /* PRIVATE */
+ png_write_start_row(png_structrp png_ptr)
+@@ -2778,4 +2878,39 @@
+    }
+ #endif /* WRITE_FLUSH */
+ }
++
++#ifdef PNG_WRITE_APNG_SUPPORTED
++void /* PRIVATE */
++png_write_reset(png_structp png_ptr)
++{
++    png_ptr->row_number = 0;
++    png_ptr->pass = 0;
++    png_ptr->mode &= ~PNG_HAVE_IDAT;
++}
++
++void /* PRIVATE */
++png_write_reinit(png_structp png_ptr, png_infop info_ptr,
++                 png_uint_32 width, png_uint_32 height)
++{
++    if (png_ptr->num_frames_written == 0 &&
++        (width != png_ptr->first_frame_width ||
++         height != png_ptr->first_frame_height))
++        png_error(png_ptr, "width and/or height in the first frame's fcTL "
++                           "don't match the ones in IHDR");
++    if (width > png_ptr->first_frame_width ||
++        height > png_ptr->first_frame_height)
++        png_error(png_ptr, "width and/or height for a frame greater than"
++                           "the ones in IHDR");
++
++    png_set_IHDR(png_ptr, info_ptr, width, height,
++                 info_ptr->bit_depth, info_ptr->color_type,
++                 info_ptr->interlace_type, info_ptr->compression_type,
++                 info_ptr->filter_type);
++
++    png_ptr->width = width;
++    png_ptr->height = height;
++    png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth, width);
++    png_ptr->usr_width = png_ptr->width;
++}
++#endif /* PNG_WRITE_APNG_SUPPORTED */
+ #endif /* WRITE */
+diff -Naru libpng-1.6.37.org/scripts/symbols.def libpng-1.6.37/scripts/symbols.def
+--- libpng-1.6.37.org/scripts/symbols.def	2019-04-19 07:21:37.405024710 +0900
++++ libpng-1.6.37/scripts/symbols.def	2019-04-19 07:22:37.856245823 +0900
+@@ -253,3 +253,23 @@
+  png_set_eXIf @247
+  png_get_eXIf_1 @248
+  png_set_eXIf_1 @249
++ png_get_acTL @250
++ png_set_acTL @251
++ png_get_num_frames @252
++ png_get_num_plays @253
++ png_get_next_frame_fcTL @254
++ png_set_next_frame_fcTL @255
++ png_get_next_frame_width @256
++ png_get_next_frame_height @257
++ png_get_next_frame_x_offset @258
++ png_get_next_frame_y_offset @259
++ png_get_next_frame_delay_num @260
++ png_get_next_frame_delay_den @261
++ png_get_next_frame_dispose_op @262
++ png_get_next_frame_blend_op @263
++ png_get_first_frame_is_hidden @264
++ png_set_first_frame_is_hidden @265
++ png_read_frame_head @266
++ png_set_progressive_frame_fn @267
++ png_write_frame_head @268
++ png_write_frame_tail @269
diff --git a/core-mod/extra/libpng/sources b/core-mod/extra/libpng/sources
new file mode 100644
index 0000000..d6556f0
--- /dev/null
+++ b/core-mod/extra/libpng/sources
@@ -0,0 +1,2 @@
+https://github.com/glennrp/libpng/archive/v1.6.37.tar.gz
+patches/libpng-1.6.37-apng.patch
diff --git a/core-mod/extra/libpng/version b/core-mod/extra/libpng/version
new file mode 100644
index 0000000..d61fa1c
--- /dev/null
+++ b/core-mod/extra/libpng/version
@@ -0,0 +1 @@
+1.6.37 2
diff --git a/core-mod/extra/libtheora/build b/core-mod/extra/libtheora/build
new file mode 100755
index 0000000..288944d
--- /dev/null
+++ b/core-mod/extra/libtheora/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+patch -p0 < libtheora-1.1.1-libpng16.patch
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libtheora/checksums b/core-mod/extra/libtheora/checksums
new file mode 100644
index 0000000..9286d3e
--- /dev/null
+++ b/core-mod/extra/libtheora/checksums
@@ -0,0 +1,2 @@
+40952956c47811928d1e7922cda3bc1f427eb75680c3c37249c91e949054916b  libtheora-1.1.1.tar.gz
+e4c9a8dc798c596ed32a2a720020ae27a0e72f5add1a47cb8fadebe0e7180d7e  libtheora-1.1.1-libpng16.patch
diff --git a/core-mod/extra/libtheora/depends b/core-mod/extra/libtheora/depends
new file mode 100644
index 0000000..b6a6854
--- /dev/null
+++ b/core-mod/extra/libtheora/depends
@@ -0,0 +1 @@
+libogg
diff --git a/core-mod/extra/libtheora/patches/libtheora-1.1.1-libpng16.patch b/core-mod/extra/libtheora/patches/libtheora-1.1.1-libpng16.patch
new file mode 100644
index 0000000..93da700
--- /dev/null
+++ b/core-mod/extra/libtheora/patches/libtheora-1.1.1-libpng16.patch
@@ -0,0 +1,17 @@
+http://bugs.gentoo.org/465450
+http://trac.xiph.org/ticket/1947
+
+--- examples/png2theora.c
++++ examples/png2theora.c
+@@ -462,9 +462,9 @@
+   png_set_strip_alpha(png_ptr);
+ 
+   row_data = (png_bytep)png_malloc(png_ptr,
+-    3*height*width*png_sizeof(*row_data));
++    3*height*width*sizeof(*row_data));
+   row_pointers = (png_bytep *)png_malloc(png_ptr,
+-    height*png_sizeof(*row_pointers));
++    height*sizeof(*row_pointers));
+   for(y = 0; y < height; y++) {
+     row_pointers[y] = row_data + y*(3*width);
+   }
diff --git a/core-mod/extra/libtheora/sources b/core-mod/extra/libtheora/sources
new file mode 100644
index 0000000..c5eaf31
--- /dev/null
+++ b/core-mod/extra/libtheora/sources
@@ -0,0 +1,2 @@
+https://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz
+patches/libtheora-1.1.1-libpng16.patch
diff --git a/core-mod/extra/libtheora/version b/core-mod/extra/libtheora/version
new file mode 100644
index 0000000..d9f65d2
--- /dev/null
+++ b/core-mod/extra/libtheora/version
@@ -0,0 +1 @@
+1.1.1 2
diff --git a/core-mod/extra/libudev-zero/build b/core-mod/extra/libudev-zero/build
new file mode 100755
index 0000000..28bda35
--- /dev/null
+++ b/core-mod/extra/libudev-zero/build
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make DESTDIR="$1" PREFIX=/usr install
diff --git a/core-mod/extra/libudev-zero/checksums b/core-mod/extra/libudev-zero/checksums
new file mode 100644
index 0000000..d75c293
--- /dev/null
+++ b/core-mod/extra/libudev-zero/checksums
@@ -0,0 +1 @@
+23f1046f13403ec217665193e78dad6cdb0af54e105a9aaf8440a846e66a1d62
diff --git a/core-mod/extra/libudev-zero/depends b/core-mod/extra/libudev-zero/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/libudev-zero/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/libudev-zero/sources b/core-mod/extra/libudev-zero/sources
new file mode 100644
index 0000000..9aeb574
--- /dev/null
+++ b/core-mod/extra/libudev-zero/sources
@@ -0,0 +1 @@
+https://github.com/illiliti/libudev-zero/archive/0.5.2.tar.gz
diff --git a/core-mod/extra/libudev-zero/version b/core-mod/extra/libudev-zero/version
new file mode 100644
index 0000000..b6c7193
--- /dev/null
+++ b/core-mod/extra/libudev-zero/version
@@ -0,0 +1 @@
+0.5.2 1
diff --git a/core-mod/extra/libva-utils/build b/core-mod/extra/libva-utils/build
new file mode 100755
index 0000000..fd5a075
--- /dev/null
+++ b/core-mod/extra/libva-utils/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/libva-utils/checksums b/core-mod/extra/libva-utils/checksums
new file mode 100644
index 0000000..e643473
--- /dev/null
+++ b/core-mod/extra/libva-utils/checksums
@@ -0,0 +1 @@
+bcab647f42147aa5cf83b324b6c3fe69e392e44d34aababfafcb6c3b4310377d
diff --git a/core-mod/extra/libva-utils/depends b/core-mod/extra/libva-utils/depends
new file mode 100644
index 0000000..fd106ae
--- /dev/null
+++ b/core-mod/extra/libva-utils/depends
@@ -0,0 +1,4 @@
+libva
+mesa    make
+meson   make
+pkgconf make
diff --git a/core-mod/extra/libva-utils/sources b/core-mod/extra/libva-utils/sources
new file mode 100644
index 0000000..b969808
--- /dev/null
+++ b/core-mod/extra/libva-utils/sources
@@ -0,0 +1 @@
+https://github.com/intel/libva-utils/archive/2.12.0.tar.gz
diff --git a/core-mod/extra/libva-utils/version b/core-mod/extra/libva-utils/version
new file mode 100644
index 0000000..f30894e
--- /dev/null
+++ b/core-mod/extra/libva-utils/version
@@ -0,0 +1 @@
+2.12.0 1
diff --git a/core-mod/extra/libva/build b/core-mod/extra/libva/build
new file mode 100755
index 0000000..58e9cf8
--- /dev/null
+++ b/core-mod/extra/libva/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    -Ddocs=false \
+    -Dintrospection=false \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/libva/checksums b/core-mod/extra/libva/checksums
new file mode 100644
index 0000000..c669541
--- /dev/null
+++ b/core-mod/extra/libva/checksums
@@ -0,0 +1 @@
+7bca8c8a854653e15e602f243e2452e84e4b454b26549bf80a932ab29d7d6b21
diff --git a/core-mod/extra/libva/depends b/core-mod/extra/libva/depends
new file mode 100644
index 0000000..ff4013e
--- /dev/null
+++ b/core-mod/extra/libva/depends
@@ -0,0 +1,8 @@
+libX11
+libXext
+libXfixes
+libdrm
+linux-headers make
+mesa
+meson         make
+pkgconf       make
diff --git a/core-mod/extra/libva/sources b/core-mod/extra/libva/sources
new file mode 100644
index 0000000..ba22be3
--- /dev/null
+++ b/core-mod/extra/libva/sources
@@ -0,0 +1 @@
+https://github.com/intel/libva/archive/2.12.0.tar.gz
diff --git a/core-mod/extra/libva/version b/core-mod/extra/libva/version
new file mode 100644
index 0000000..f30894e
--- /dev/null
+++ b/core-mod/extra/libva/version
@@ -0,0 +1 @@
+2.12.0 1
diff --git a/core-mod/extra/libvorbis/build b/core-mod/extra/libvorbis/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/libvorbis/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libvorbis/checksums b/core-mod/extra/libvorbis/checksums
new file mode 100644
index 0000000..9ba3dea
--- /dev/null
+++ b/core-mod/extra/libvorbis/checksums
@@ -0,0 +1 @@
+0e982409a9c3fc82ee06e08205b1355e5c6aa4c36bca58146ef399621b0ce5ab  libvorbis-1.3.7.tar.gz
diff --git a/core-mod/extra/libvorbis/depends b/core-mod/extra/libvorbis/depends
new file mode 100644
index 0000000..b6a6854
--- /dev/null
+++ b/core-mod/extra/libvorbis/depends
@@ -0,0 +1 @@
+libogg
diff --git a/core-mod/extra/libvorbis/sources b/core-mod/extra/libvorbis/sources
new file mode 100644
index 0000000..16ec9f3
--- /dev/null
+++ b/core-mod/extra/libvorbis/sources
@@ -0,0 +1 @@
+https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.7.tar.gz
diff --git a/core-mod/extra/libvorbis/version b/core-mod/extra/libvorbis/version
new file mode 100644
index 0000000..ae80c29
--- /dev/null
+++ b/core-mod/extra/libvorbis/version
@@ -0,0 +1 @@
+1.3.7 1
diff --git a/core-mod/extra/libvpx/build b/core-mod/extra/libvpx/build
new file mode 100755
index 0000000..708c3b8
--- /dev/null
+++ b/core-mod/extra/libvpx/build
@@ -0,0 +1,33 @@
+#!/bin/sh -e
+
+export CC="${CC:-cc}"
+export CXX="${CXX:-c++}"
+
+patch -p1 < fix-busybox-diff.patch
+
+# Remove the perl requirement from configure
+# as we have removed the perl requirement
+# ourselves :-).
+sed -i 's/perl/:/g' configure
+
+./configure \
+    --prefix=/usr \
+    --enable-vp8 \
+    --enable-vp9 \
+    --enable-experimental \
+    --enable-runtime-cpu-detect \
+    --target=x86_64-linux-gcc \
+    --enable-shared \
+    --enable-postproc \
+    --enable-pic \
+    --disable-tools \
+    --disable-examples \
+    --disable-docs \
+    --disable-unit-tests \
+    --disable-install-docs \
+    --disable-install-srcs \
+    --disable-install-bins \
+    --as=nasm
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libvpx/checksums b/core-mod/extra/libvpx/checksums
new file mode 100644
index 0000000..60cdc5d
--- /dev/null
+++ b/core-mod/extra/libvpx/checksums
@@ -0,0 +1,6 @@
+85803ccbdbdd7a3b03d930187cb055f1353596969c1f92ebec2db839fa4f834a
+ce802d64bcbeb4230527aea2b4284d9844fb12fa5aca868a94e03982f85ec45b
+e6aa264d60371d76e39a8fa0118e37915ea348400f82046d083a4511d229f8eb
+bc2ab604abf616682374d65c9d154e6e2dac0524fd969b12ab4d81e30452b904
+77716ffb6d08322a3f300b9adad302641836af6e923854eba040a95e0766fa70
+7445cedc0bc43d2d17b8f838b1d876b0fe861d669f43a8f8555c3ea7b745fc52
diff --git a/core-mod/extra/libvpx/depends b/core-mod/extra/libvpx/depends
new file mode 100644
index 0000000..116f6b2
--- /dev/null
+++ b/core-mod/extra/libvpx/depends
@@ -0,0 +1 @@
+nasm make
diff --git a/core-mod/extra/libvpx/files/vp8_rtcd.h b/core-mod/extra/libvpx/files/vp8_rtcd.h
new file mode 100644
index 0000000..6794409
--- /dev/null
+++ b/core-mod/extra/libvpx/files/vp8_rtcd.h
@@ -0,0 +1,265 @@
+// This file is generated. Do not edit.
+#ifndef VP8_RTCD_H_
+#define VP8_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP8
+ */
+
+struct blockd;
+struct macroblockd;
+struct loop_filter_info;
+
+/* Encoder forward decls */
+struct block;
+struct macroblock;
+struct variance_vtable;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_bilinear_predict16x16_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict16x16_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict16x16_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict16x16)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_bilinear_predict4x4_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict4x4_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_sse2
+
+void vp8_bilinear_predict8x4_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict8x4_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_sse2
+
+void vp8_bilinear_predict8x8_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict8x8_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_bilinear_predict8x8_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_bilinear_predict8x8)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y_1, int u_1, int v_1, int alpha, int stride);
+#define vp8_blend_b vp8_blend_b_c
+
+void vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y_1, int u_1, int v_1, int alpha, int stride);
+#define vp8_blend_mb_inner vp8_blend_mb_inner_c
+
+void vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y_1, int u_1, int v_1, int alpha, int stride);
+#define vp8_blend_mb_outer vp8_blend_mb_outer_c
+
+int vp8_block_error_c(short *coeff, short *dqcoeff);
+int vp8_block_error_sse2(short *coeff, short *dqcoeff);
+#define vp8_block_error vp8_block_error_sse2
+
+void vp8_copy32xn_c(const unsigned char *src_ptr, int src_stride, unsigned char *dst_ptr, int dst_stride, int height);
+void vp8_copy32xn_sse2(const unsigned char *src_ptr, int src_stride, unsigned char *dst_ptr, int dst_stride, int height);
+void vp8_copy32xn_sse3(const unsigned char *src_ptr, int src_stride, unsigned char *dst_ptr, int dst_stride, int height);
+RTCD_EXTERN void (*vp8_copy32xn)(const unsigned char *src_ptr, int src_stride, unsigned char *dst_ptr, int dst_stride, int height);
+
+void vp8_copy_mem16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+void vp8_copy_mem16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2
+
+void vp8_copy_mem8x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+void vp8_copy_mem8x4_mmx(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx
+
+void vp8_copy_mem8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+void vp8_copy_mem8x8_mmx(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride);
+#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx
+
+void vp8_dc_only_idct_add_c(short input_dc, unsigned char *pred_ptr, int pred_stride, unsigned char *dst_ptr, int dst_stride);
+void vp8_dc_only_idct_add_mmx(short input_dc, unsigned char *pred_ptr, int pred_stride, unsigned char *dst_ptr, int dst_stride);
+#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx
+
+int vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter vp8_denoiser_filter_sse2
+
+int vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+int vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising);
+#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_sse2
+
+void vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *dest, int stride);
+void vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *dest, int stride);
+#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx
+
+void vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+void vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
+#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2
+
+void vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+void vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
+#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2
+
+void vp8_dequantize_b_c(struct blockd*, short *DQC);
+void vp8_dequantize_b_mmx(struct blockd*, short *DQC);
+#define vp8_dequantize_b vp8_dequantize_b_mmx
+
+int vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_diamond_search_sad vp8_diamond_search_sadx4
+
+void vp8_fast_quantize_b_c(struct block *, struct blockd *);
+void vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_fast_quantize_b_ssse3(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_fast_quantize_b)(struct block *, struct blockd *);
+
+void vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2
+
+void vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
+
+void vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+void vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
+#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2
+
+int vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_full_search_sadx8(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+RTCD_EXTERN int (*vp8_full_search_sad)(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+
+void vp8_loop_filter_bh_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bh_sse2(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2
+
+void vp8_loop_filter_bv_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_bv_sse2(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2
+
+void vp8_loop_filter_mbh_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbh_sse2(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2
+
+void vp8_loop_filter_mbv_c(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+void vp8_loop_filter_mbv_sse2(unsigned char *y_ptr, unsigned char *u_ptr, unsigned char *v_ptr, int y_stride, int uv_stride, struct loop_filter_info *lfi);
+#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2
+
+void vp8_loop_filter_bhs_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+void vp8_loop_filter_bhs_sse2(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2
+
+void vp8_loop_filter_bvs_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+void vp8_loop_filter_bvs_sse2(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2
+
+void vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+void vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2
+
+void vp8_loop_filter_simple_vertical_edge_c(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+void vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y_ptr, int y_stride, const unsigned char *blimit);
+#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2
+
+int vp8_mbblock_error_c(struct macroblock *mb, int dc);
+int vp8_mbblock_error_sse2(struct macroblock *mb, int dc);
+#define vp8_mbblock_error vp8_mbblock_error_sse2
+
+int vp8_mbuverror_c(struct macroblock *mb);
+int vp8_mbuverror_sse2(struct macroblock *mb);
+#define vp8_mbuverror vp8_mbuverror_sse2
+
+int vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int error_per_bit, int search_range, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+int vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int error_per_bit, int search_range, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv);
+#define vp8_refining_search_sad vp8_refining_search_sadx4
+
+void vp8_regular_quantize_b_c(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
+void vp8_regular_quantize_b_sse4_1(struct block *, struct blockd *);
+RTCD_EXTERN void (*vp8_regular_quantize_b)(struct block *, struct blockd *);
+
+void vp8_short_fdct4x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2
+
+void vp8_short_fdct8x4_c(short *input, short *output, int pitch);
+void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2
+
+void vp8_short_idct4x4llm_c(short *input, unsigned char *pred_ptr, int pred_stride, unsigned char *dst_ptr, int dst_stride);
+void vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred_ptr, int pred_stride, unsigned char *dst_ptr, int dst_stride);
+#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx
+
+void vp8_short_inv_walsh4x4_c(short *input, short *mb_dqcoeff);
+void vp8_short_inv_walsh4x4_sse2(short *input, short *mb_dqcoeff);
+#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2
+
+void vp8_short_inv_walsh4x4_1_c(short *input, short *mb_dqcoeff);
+#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
+
+void vp8_short_walsh4x4_c(short *input, short *output, int pitch);
+void vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
+#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2
+
+void vp8_sixtap_predict16x16_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict16x16_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict16x16_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict16x16)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_sixtap_predict4x4_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict4x4_mmx(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict4x4_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict4x4)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_sixtap_predict8x4_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict8x4_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict8x4_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x4)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_sixtap_predict8x8_c(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict8x8_sse2(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+void vp8_sixtap_predict8x8_ssse3(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+RTCD_EXTERN void (*vp8_sixtap_predict8x8)(unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch);
+
+void vp8_temporal_filter_apply_c(unsigned char *frame1, unsigned int stride, unsigned char *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, unsigned short *count);
+void vp8_temporal_filter_apply_sse2(unsigned char *frame1, unsigned int stride, unsigned char *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, unsigned short *count);
+#define vp8_temporal_filter_apply vp8_temporal_filter_apply_sse2
+
+void vp8_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+    int flags = x86_simd_caps();
+
+    (void)flags;
+
+    vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_sse2;
+    if (flags & HAS_SSSE3) vp8_bilinear_predict16x16 = vp8_bilinear_predict16x16_ssse3;
+    vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_sse2;
+    if (flags & HAS_SSSE3) vp8_bilinear_predict8x8 = vp8_bilinear_predict8x8_ssse3;
+    vp8_copy32xn = vp8_copy32xn_sse2;
+    if (flags & HAS_SSE3) vp8_copy32xn = vp8_copy32xn_sse3;
+    vp8_fast_quantize_b = vp8_fast_quantize_b_sse2;
+    if (flags & HAS_SSSE3) vp8_fast_quantize_b = vp8_fast_quantize_b_ssse3;
+    vp8_full_search_sad = vp8_full_search_sad_c;
+    if (flags & HAS_SSE3) vp8_full_search_sad = vp8_full_search_sadx3;
+    if (flags & HAS_SSE4_1) vp8_full_search_sad = vp8_full_search_sadx8;
+    vp8_regular_quantize_b = vp8_regular_quantize_b_sse2;
+    if (flags & HAS_SSE4_1) vp8_regular_quantize_b = vp8_regular_quantize_b_sse4_1;
+    vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_sse2;
+    if (flags & HAS_SSSE3) vp8_sixtap_predict16x16 = vp8_sixtap_predict16x16_ssse3;
+    vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_mmx;
+    if (flags & HAS_SSSE3) vp8_sixtap_predict4x4 = vp8_sixtap_predict4x4_ssse3;
+    vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_sse2;
+    if (flags & HAS_SSSE3) vp8_sixtap_predict8x4 = vp8_sixtap_predict8x4_ssse3;
+    vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_sse2;
+    if (flags & HAS_SSSE3) vp8_sixtap_predict8x8 = vp8_sixtap_predict8x8_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif
diff --git a/core-mod/extra/libvpx/files/vp9_rtcd.h b/core-mod/extra/libvpx/files/vp9_rtcd.h
new file mode 100644
index 0000000..b58898b
--- /dev/null
+++ b/core-mod/extra/libvpx/files/vp9_rtcd.h
@@ -0,0 +1,126 @@
+// This file is generated. Do not edit.
+#ifndef VP9_RTCD_H_
+#define VP9_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * VP9
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vp9/common/vp9_common.h"
+#include "vp9/common/vp9_enums.h"
+#include "vp9/common/vp9_filter.h"
+
+struct macroblockd;
+
+/* Encoder forward decls */
+struct macroblock;
+struct vp9_variance_vtable;
+struct search_site_config;
+struct mv;
+union int_mv;
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp9_apply_temporal_filter_c(const uint8_t *y_src, int y_src_stride, const uint8_t *y_pre, int y_pre_stride, const uint8_t *u_src, const uint8_t *v_src, int uv_src_stride, const uint8_t *u_pre, const uint8_t *v_pre, int uv_pre_stride, unsigned int block_width, unsigned int block_height, int ss_x, int ss_y, int strength, const int *const blk_fw, int use_32x32, uint32_t *y_accumulator, uint16_t *y_count, uint32_t *u_accumulator, uint16_t *u_count, uint32_t *v_accumulator, uint16_t *v_count);
+void vp9_apply_temporal_filter_sse4_1(const uint8_t *y_src, int y_src_stride, const uint8_t *y_pre, int y_pre_stride, const uint8_t *u_src, const uint8_t *v_src, int uv_src_stride, const uint8_t *u_pre, const uint8_t *v_pre, int uv_pre_stride, unsigned int block_width, unsigned int block_height, int ss_x, int ss_y, int strength, const int *const blk_fw, int use_32x32, uint32_t *y_accumulator, uint16_t *y_count, uint32_t *u_accumulator, uint16_t *u_count, uint32_t *v_accumulator, uint16_t *v_count);
+RTCD_EXTERN void (*vp9_apply_temporal_filter)(const uint8_t *y_src, int y_src_stride, const uint8_t *y_pre, int y_pre_stride, const uint8_t *u_src, const uint8_t *v_src, int uv_src_stride, const uint8_t *u_pre, const uint8_t *v_pre, int uv_pre_stride, unsigned int block_width, unsigned int block_height, int ss_x, int ss_y, int strength, const int *const blk_fw, int use_32x32, uint32_t *y_accumulator, uint16_t *y_count, uint32_t *u_accumulator, uint16_t *u_count, uint32_t *v_accumulator, uint16_t *v_count);
+
+int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
+
+int64_t vp9_block_error_fp_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, int block_size);
+int64_t vp9_block_error_fp_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, int block_size);
+RTCD_EXTERN int64_t (*vp9_block_error_fp)(const tran_low_t *coeff, const tran_low_t *dqcoeff, int block_size);
+
+int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg,  struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+int vp9_diamond_search_sad_avx(const struct macroblock *x, const struct search_site_config *cfg,  struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+RTCD_EXTERN int (*vp9_diamond_search_sad)(const struct macroblock *x, const struct search_site_config *cfg,  struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
+
+void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht16x16 vp9_fht16x16_sse2
+
+void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht4x4 vp9_fht4x4_sse2
+
+void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
+#define vp9_fht8x8 vp9_fht8x8_sse2
+
+void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vp9_fwht4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vp9_fwht4x4 vp9_fwht4x4_sse2
+
+void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+#define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2
+
+void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+#define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2
+
+void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int stride, int tx_type);
+#define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2
+
+void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_avx2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vp9_quantize_fp_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vp9_quantize_fp_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *round_ptr, const int16_t *quant_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vp9_scale_and_extend_frame_c(const struct yv12_buffer_config *src, struct yv12_buffer_config *dst, INTERP_FILTER filter_type, int phase_scaler);
+void vp9_scale_and_extend_frame_ssse3(const struct yv12_buffer_config *src, struct yv12_buffer_config *dst, INTERP_FILTER filter_type, int phase_scaler);
+RTCD_EXTERN void (*vp9_scale_and_extend_frame)(const struct yv12_buffer_config *src, struct yv12_buffer_config *dst, INTERP_FILTER filter_type, int phase_scaler);
+
+void vp9_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+    int flags = x86_simd_caps();
+
+    (void)flags;
+
+    vp9_apply_temporal_filter = vp9_apply_temporal_filter_c;
+    if (flags & HAS_SSE4_1) vp9_apply_temporal_filter = vp9_apply_temporal_filter_sse4_1;
+    vp9_block_error = vp9_block_error_sse2;
+    if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
+    vp9_block_error_fp = vp9_block_error_fp_sse2;
+    if (flags & HAS_AVX2) vp9_block_error_fp = vp9_block_error_fp_avx2;
+    vp9_diamond_search_sad = vp9_diamond_search_sad_c;
+    if (flags & HAS_AVX) vp9_diamond_search_sad = vp9_diamond_search_sad_avx;
+    vp9_quantize_fp = vp9_quantize_fp_sse2;
+    if (flags & HAS_SSSE3) vp9_quantize_fp = vp9_quantize_fp_ssse3;
+    if (flags & HAS_AVX2) vp9_quantize_fp = vp9_quantize_fp_avx2;
+    vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_c;
+    if (flags & HAS_SSSE3) vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_ssse3;
+    vp9_scale_and_extend_frame = vp9_scale_and_extend_frame_c;
+    if (flags & HAS_SSSE3) vp9_scale_and_extend_frame = vp9_scale_and_extend_frame_ssse3;
+}
+#endif
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif
diff --git a/core-mod/extra/libvpx/files/vpx_dsp_rtcd.h b/core-mod/extra/libvpx/files/vpx_dsp_rtcd.h
new file mode 100644
index 0000000..4682593
--- /dev/null
+++ b/core-mod/extra/libvpx/files/vpx_dsp_rtcd.h
@@ -0,0 +1,1196 @@
+// This file is generated. Do not edit.
+#ifndef VPX_DSP_RTCD_H_
+#define VPX_DSP_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+/*
+ * DSP
+ */
+
+#include "vpx/vpx_integer.h"
+#include "vpx_dsp/vpx_dsp_common.h"
+#include "vpx_dsp/vpx_filter.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int vpx_avg_4x4_c(const uint8_t *, int p);
+unsigned int vpx_avg_4x4_sse2(const uint8_t *, int p);
+#define vpx_avg_4x4 vpx_avg_4x4_sse2
+
+unsigned int vpx_avg_8x8_c(const uint8_t *, int p);
+unsigned int vpx_avg_8x8_sse2(const uint8_t *, int p);
+#define vpx_avg_8x8 vpx_avg_8x8_sse2
+
+void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+void vpx_comp_avg_pred_sse2(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride);
+#define vpx_comp_avg_pred vpx_comp_avg_pred_sse2
+
+void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_avg_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_horiz_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve8_vert_avx2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_convolve_avg vpx_convolve_avg_sse2
+
+void vpx_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_convolve_copy vpx_convolve_copy_sse2
+
+void vpx_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
+
+void vpx_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
+
+void vpx_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
+
+void vpx_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
+
+void vpx_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
+
+void vpx_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
+
+void vpx_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
+
+void vpx_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
+
+void vpx_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_sse2
+
+void vpx_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_sse2
+
+void vpx_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d45_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_sse2
+
+void vpx_d45e_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d45e_predictor_4x4 vpx_d45e_predictor_4x4_c
+
+void vpx_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+
+void vpx_d63e_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_d63e_predictor_4x4 vpx_d63e_predictor_4x4_c
+
+void vpx_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_sse2
+
+void vpx_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_sse2
+
+void vpx_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_sse2
+
+void vpx_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_128_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_sse2
+
+void vpx_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_sse2
+
+void vpx_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_sse2
+
+void vpx_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_sse2
+
+void vpx_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_left_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_sse2
+
+void vpx_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_sse2
+
+void vpx_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_sse2
+
+void vpx_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_sse2
+
+void vpx_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_sse2
+
+void vpx_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_sse2
+
+void vpx_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_sse2
+
+void vpx_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_sse2
+
+void vpx_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_dc_top_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_sse2
+
+void vpx_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16 vpx_fdct16x16_sse2
+
+void vpx_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct16x16_1 vpx_fdct16x16_1_sse2
+
+void vpx_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct32x32_1 vpx_fdct32x32_1_sse2
+
+void vpx_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct32x32_rd)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4 vpx_fdct4x4_sse2
+
+void vpx_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct4x4_1 vpx_fdct4x4_1_sse2
+
+void vpx_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_ssse3(const int16_t *input, tran_low_t *output, int stride);
+RTCD_EXTERN void (*vpx_fdct8x8)(const int16_t *input, tran_low_t *output, int stride);
+
+void vpx_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
+void vpx_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
+#define vpx_fdct8x8_1 vpx_fdct8x8_1_sse2
+
+void vpx_get16x16var_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get16x16var_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+
+unsigned int vpx_get4x4sse_cs_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride);
+#define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
+
+void vpx_get8x8var_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+void vpx_get8x8var_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
+#define vpx_get8x8var vpx_get8x8var_sse2
+
+unsigned int vpx_get_mb_ss_c(const int16_t *);
+unsigned int vpx_get_mb_ss_sse2(const int16_t *);
+#define vpx_get_mb_ss vpx_get_mb_ss_sse2
+
+void vpx_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_16x16 vpx_h_predictor_16x16_sse2
+
+void vpx_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_32x32 vpx_h_predictor_32x32_sse2
+
+void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_4x4 vpx_h_predictor_4x4_sse2
+
+void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_h_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_h_predictor_8x8 vpx_h_predictor_8x8_sse2
+
+void vpx_hadamard_16x16_c(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_16x16_sse2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_16x16_avx2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vpx_hadamard_16x16)(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+
+void vpx_hadamard_32x32_c(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_32x32_sse2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_32x32_avx2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vpx_hadamard_32x32)(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+
+void vpx_hadamard_8x8_c(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_8x8_sse2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+void vpx_hadamard_8x8_ssse3(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+RTCD_EXTERN void (*vpx_hadamard_8x8)(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff);
+
+void vpx_he_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_he_predictor_4x4 vpx_he_predictor_4x4_c
+
+void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct16x16_10_add vpx_idct16x16_10_add_sse2
+
+void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct16x16_1_add vpx_idct16x16_1_add_sse2
+
+void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct16x16_256_add vpx_idct16x16_256_add_sse2
+
+void vpx_idct16x16_38_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct16x16_38_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct16x16_38_add vpx_idct16x16_38_add_sse2
+
+void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_sse2
+
+void vpx_idct32x32_135_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_135_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_135_add_ssse3(const tran_low_t *input, uint8_t *dest, int stride);
+RTCD_EXTERN void (*vpx_idct32x32_135_add)(const tran_low_t *input, uint8_t *dest, int stride);
+
+void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct32x32_1_add vpx_idct32x32_1_add_sse2
+
+void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct32x32_34_add_ssse3(const tran_low_t *input, uint8_t *dest, int stride);
+RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest, int stride);
+
+void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct4x4_16_add vpx_idct4x4_16_add_sse2
+
+void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct4x4_1_add vpx_idct4x4_1_add_sse2
+
+void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct8x8_12_add_ssse3(const tran_low_t *input, uint8_t *dest, int stride);
+RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, int stride);
+
+void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct8x8_1_add vpx_idct8x8_1_add_sse2
+
+void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_idct8x8_64_add vpx_idct8x8_64_add_sse2
+
+int16_t vpx_int_pro_col_c(const uint8_t *ref, const int width);
+int16_t vpx_int_pro_col_sse2(const uint8_t *ref, const int width);
+#define vpx_int_pro_col vpx_int_pro_col_sse2
+
+void vpx_int_pro_row_c(int16_t *hbuf, const uint8_t *ref, const int ref_stride, const int height);
+void vpx_int_pro_row_sse2(int16_t *hbuf, const uint8_t *ref, const int ref_stride, const int height);
+#define vpx_int_pro_row vpx_int_pro_row_sse2
+
+void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+void vpx_iwht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_sse2
+
+void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int stride);
+#define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
+
+void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_horizontal_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_16_dual_avx2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+RTCD_EXTERN void (*vpx_lpf_horizontal_16_dual)(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+
+void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_4_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_sse2
+
+void vpx_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_sse2
+
+void vpx_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_sse2
+
+void vpx_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_sse2
+
+void vpx_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16 vpx_lpf_vertical_16_sse2
+
+void vpx_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_sse2
+
+void vpx_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_4_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_4 vpx_lpf_vertical_4_sse2
+
+void vpx_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_sse2
+
+void vpx_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+void vpx_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
+#define vpx_lpf_vertical_8 vpx_lpf_vertical_8_sse2
+
+void vpx_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+void vpx_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
+#define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_sse2
+
+void vpx_mbpost_proc_across_ip_c(unsigned char *src, int pitch, int rows, int cols,int flimit);
+void vpx_mbpost_proc_across_ip_sse2(unsigned char *src, int pitch, int rows, int cols,int flimit);
+#define vpx_mbpost_proc_across_ip vpx_mbpost_proc_across_ip_sse2
+
+void vpx_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+void vpx_mbpost_proc_down_sse2(unsigned char *dst, int pitch, int rows, int cols,int flimit);
+#define vpx_mbpost_proc_down vpx_mbpost_proc_down_sse2
+
+void vpx_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+void vpx_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
+#define vpx_minmax_8x8 vpx_minmax_8x8_sse2
+
+unsigned int vpx_mse16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse16x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse16x8_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_mse16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_mse8x16 vpx_mse8x16_sse2
+
+unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_mse8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_mse8x8 vpx_mse8x8_sse2
+
+void vpx_plane_add_noise_c(uint8_t *start, const int8_t *noise, int blackclamp, int whiteclamp, int width, int height, int pitch);
+void vpx_plane_add_noise_sse2(uint8_t *start, const int8_t *noise, int blackclamp, int whiteclamp, int width, int height, int pitch);
+#define vpx_plane_add_noise vpx_plane_add_noise_sse2
+
+void vpx_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+void vpx_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
+#define vpx_post_proc_down_and_across_mb_row vpx_post_proc_down_and_across_mb_row_sse2
+
+void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_avx(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+void vpx_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_32x32_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+void vpx_quantize_b_32x32_avx(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+RTCD_EXTERN void (*vpx_quantize_b_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
+
+unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x16 vpx_sad16x16_sse2
+
+unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x16_avg vpx_sad16x16_avg_sse2
+
+void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x16x4d vpx_sad16x16x4d_sse2
+
+void vpx_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x32 vpx_sad16x32_sse2
+
+unsigned int vpx_sad16x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x32_avg vpx_sad16x32_avg_sse2
+
+void vpx_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x32x4d vpx_sad16x32x4d_sse2
+
+unsigned int vpx_sad16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad16x8 vpx_sad16x8_sse2
+
+unsigned int vpx_sad16x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad16x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad16x8_avg vpx_sad16x8_avg_sse2
+
+void vpx_sad16x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x3_ssse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad16x8x4d vpx_sad16x8x4d_sse2
+
+void vpx_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad16x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x16_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x16x4d vpx_sad32x16x4d_sse2
+
+unsigned int vpx_sad32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+
+void vpx_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad32x32x8_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad32x32x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad32x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad32x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad32x64x4d vpx_sad32x64x4d_sse2
+
+unsigned int vpx_sad4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x4 vpx_sad4x4_sse2
+
+unsigned int vpx_sad4x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x4_avg vpx_sad4x4_avg_sse2
+
+void vpx_sad4x4x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x4x4d vpx_sad4x4x4d_sse2
+
+void vpx_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad4x4x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad4x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad4x8 vpx_sad4x8_sse2
+
+unsigned int vpx_sad4x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad4x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad4x8_avg vpx_sad4x8_avg_sse2
+
+void vpx_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad4x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad4x8x4d vpx_sad4x8x4d_sse2
+
+unsigned int vpx_sad64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x32_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x32_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad64x32x4d vpx_sad64x32x4d_sse2
+
+unsigned int vpx_sad64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+
+unsigned int vpx_sad64x64_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad64x64_avg_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+
+void vpx_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad64x64x4d_avx512(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x16 vpx_sad8x16_sse2
+
+unsigned int vpx_sad8x16_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x16_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x16_avg vpx_sad8x16_avg_sse2
+
+void vpx_sad8x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x16x4d vpx_sad8x16x4d_sse2
+
+void vpx_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x16x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+unsigned int vpx_sad8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x4 vpx_sad8x4_sse2
+
+unsigned int vpx_sad8x4_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x4_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x4_avg vpx_sad8x4_avg_sse2
+
+void vpx_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x4x4d vpx_sad8x4x4d_sse2
+
+unsigned int vpx_sad8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+unsigned int vpx_sad8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride);
+#define vpx_sad8x8 vpx_sad8x8_sse2
+
+unsigned int vpx_sad8x8_avg_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+unsigned int vpx_sad8x8_avg_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
+#define vpx_sad8x8_avg vpx_sad8x8_avg_sse2
+
+void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x3_sse3(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t * const ref_array[], int ref_stride, uint32_t *sad_array);
+#define vpx_sad8x8x4d vpx_sad8x8x4d_sse2
+
+void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+void vpx_sad8x8x8_sse4_1(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
+
+int vpx_satd_c(const int16_t *coeff, int length);
+int vpx_satd_sse2(const int16_t *coeff, int length);
+int vpx_satd_avx2(const int16_t *coeff, int length);
+RTCD_EXTERN int (*vpx_satd)(const int16_t *coeff, int length);
+
+void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+void vpx_scaled_2d_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+
+void vpx_scaled_avg_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
+
+void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
+
+void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
+
+void vpx_scaled_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_scaled_horiz vpx_scaled_horiz_c
+
+void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const InterpKernel *filter, int x0_q4, int x_step_q4, int y0_q4, int y_step_q4, int w, int h);
+#define vpx_scaled_vert vpx_scaled_vert_c
+
+uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse, const uint8_t *second_pred);
+
+uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t *src_ptr, int src_stride, int x_offset, int y_offset, const uint8_t *ref_ptr, int ref_stride, uint32_t *sse);
+
+void vpx_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+void vpx_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
+#define vpx_subtract_block vpx_subtract_block_sse2
+
+uint64_t vpx_sum_squares_2d_i16_c(const int16_t *src, int stride, int size);
+uint64_t vpx_sum_squares_2d_i16_sse2(const int16_t *src, int stride, int size);
+#define vpx_sum_squares_2d_i16 vpx_sum_squares_2d_i16_sse2
+
+void vpx_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_sse2
+
+void vpx_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_sse2
+
+void vpx_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_sse2
+
+void vpx_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_sse2
+
+void vpx_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_16x16 vpx_v_predictor_16x16_sse2
+
+void vpx_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_32x32 vpx_v_predictor_32x32_sse2
+
+void vpx_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_4x4_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_4x4 vpx_v_predictor_4x4_sse2
+
+void vpx_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+void vpx_v_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_v_predictor_8x8 vpx_v_predictor_8x8_sse2
+
+unsigned int vpx_variance16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance16x8_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x16_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance32x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance32x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance4x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x4 vpx_variance4x4_sse2
+
+unsigned int vpx_variance4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance4x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance4x8 vpx_variance4x8_sse2
+
+unsigned int vpx_variance64x32_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x32_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance64x64_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance64x64_avx2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+
+unsigned int vpx_variance8x16_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x16_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x16 vpx_variance8x16_sse2
+
+unsigned int vpx_variance8x4_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x4_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x4 vpx_variance8x4_sse2
+
+unsigned int vpx_variance8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+unsigned int vpx_variance8x8_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
+#define vpx_variance8x8 vpx_variance8x8_sse2
+
+void vpx_ve_predictor_4x4_c(uint8_t *dst, ptrdiff_t stride, const uint8_t *above, const uint8_t *left);
+#define vpx_ve_predictor_4x4 vpx_ve_predictor_4x4_c
+
+int vpx_vector_var_c(const int16_t *ref, const int16_t *src, const int bwl);
+int vpx_vector_var_sse2(const int16_t *ref, const int16_t *src, const int bwl);
+#define vpx_vector_var vpx_vector_var_sse2
+
+void vpx_dsp_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+    int flags = x86_simd_caps();
+
+    (void)flags;
+
+    vpx_convolve8 = vpx_convolve8_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8 = vpx_convolve8_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8 = vpx_convolve8_avx2;
+    vpx_convolve8_avg = vpx_convolve8_avg_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8_avg = vpx_convolve8_avg_avx2;
+    vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_avx2;
+    vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_avx2;
+    vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
+    vpx_convolve8_vert = vpx_convolve8_vert_sse2;
+    if (flags & HAS_SSSE3) vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
+    if (flags & HAS_AVX2) vpx_convolve8_vert = vpx_convolve8_vert_avx2;
+    vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
+    if (flags & HAS_SSSE3) vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
+    vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
+    if (flags & HAS_SSSE3) vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
+    vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
+    if (flags & HAS_SSSE3) vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
+    vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
+    if (flags & HAS_SSSE3) vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
+    vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
+    if (flags & HAS_SSSE3) vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
+    vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
+    if (flags & HAS_SSSE3) vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
+    vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
+    if (flags & HAS_SSSE3) vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
+    vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
+    if (flags & HAS_SSSE3) vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
+    vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
+    if (flags & HAS_SSSE3) vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
+    vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
+    if (flags & HAS_SSSE3) vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
+    vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
+    if (flags & HAS_SSSE3) vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
+    vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
+    if (flags & HAS_SSSE3) vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
+    vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
+    if (flags & HAS_SSSE3) vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
+    vpx_fdct32x32 = vpx_fdct32x32_sse2;
+    if (flags & HAS_AVX2) vpx_fdct32x32 = vpx_fdct32x32_avx2;
+    vpx_fdct32x32_rd = vpx_fdct32x32_rd_sse2;
+    if (flags & HAS_AVX2) vpx_fdct32x32_rd = vpx_fdct32x32_rd_avx2;
+    vpx_fdct8x8 = vpx_fdct8x8_sse2;
+    if (flags & HAS_SSSE3) vpx_fdct8x8 = vpx_fdct8x8_ssse3;
+    vpx_get16x16var = vpx_get16x16var_sse2;
+    if (flags & HAS_AVX2) vpx_get16x16var = vpx_get16x16var_avx2;
+    vpx_hadamard_16x16 = vpx_hadamard_16x16_sse2;
+    if (flags & HAS_AVX2) vpx_hadamard_16x16 = vpx_hadamard_16x16_avx2;
+    vpx_hadamard_32x32 = vpx_hadamard_32x32_sse2;
+    if (flags & HAS_AVX2) vpx_hadamard_32x32 = vpx_hadamard_32x32_avx2;
+    vpx_hadamard_8x8 = vpx_hadamard_8x8_sse2;
+    if (flags & HAS_SSSE3) vpx_hadamard_8x8 = vpx_hadamard_8x8_ssse3;
+    vpx_idct32x32_135_add = vpx_idct32x32_135_add_sse2;
+    if (flags & HAS_SSSE3) vpx_idct32x32_135_add = vpx_idct32x32_135_add_ssse3;
+    vpx_idct32x32_34_add = vpx_idct32x32_34_add_sse2;
+    if (flags & HAS_SSSE3) vpx_idct32x32_34_add = vpx_idct32x32_34_add_ssse3;
+    vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
+    if (flags & HAS_SSSE3) vpx_idct8x8_12_add = vpx_idct8x8_12_add_ssse3;
+    vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
+    if (flags & HAS_AVX2) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
+    vpx_lpf_horizontal_16_dual = vpx_lpf_horizontal_16_dual_sse2;
+    if (flags & HAS_AVX2) vpx_lpf_horizontal_16_dual = vpx_lpf_horizontal_16_dual_avx2;
+    vpx_mse16x16 = vpx_mse16x16_sse2;
+    if (flags & HAS_AVX2) vpx_mse16x16 = vpx_mse16x16_avx2;
+    vpx_mse16x8 = vpx_mse16x8_sse2;
+    if (flags & HAS_AVX2) vpx_mse16x8 = vpx_mse16x8_avx2;
+    vpx_quantize_b = vpx_quantize_b_sse2;
+    if (flags & HAS_SSSE3) vpx_quantize_b = vpx_quantize_b_ssse3;
+    if (flags & HAS_AVX) vpx_quantize_b = vpx_quantize_b_avx;
+    vpx_quantize_b_32x32 = vpx_quantize_b_32x32_c;
+    if (flags & HAS_SSSE3) vpx_quantize_b_32x32 = vpx_quantize_b_32x32_ssse3;
+    if (flags & HAS_AVX) vpx_quantize_b_32x32 = vpx_quantize_b_32x32_avx;
+    vpx_sad16x16x3 = vpx_sad16x16x3_c;
+    if (flags & HAS_SSE3) vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
+    if (flags & HAS_SSSE3) vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
+    vpx_sad16x16x8 = vpx_sad16x16x8_c;
+    if (flags & HAS_SSE4_1) vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
+    vpx_sad16x8x3 = vpx_sad16x8x3_c;
+    if (flags & HAS_SSE3) vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
+    if (flags & HAS_SSSE3) vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
+    vpx_sad16x8x8 = vpx_sad16x8x8_c;
+    if (flags & HAS_SSE4_1) vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
+    vpx_sad32x16 = vpx_sad32x16_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x16 = vpx_sad32x16_avx2;
+    vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
+    vpx_sad32x32 = vpx_sad32x32_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x32 = vpx_sad32x32_avx2;
+    vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
+    vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
+    vpx_sad32x32x8 = vpx_sad32x32x8_c;
+    if (flags & HAS_AVX2) vpx_sad32x32x8 = vpx_sad32x32x8_avx2;
+    vpx_sad32x64 = vpx_sad32x64_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x64 = vpx_sad32x64_avx2;
+    vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
+    if (flags & HAS_AVX2) vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
+    vpx_sad4x4x3 = vpx_sad4x4x3_c;
+    if (flags & HAS_SSE3) vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
+    vpx_sad4x4x8 = vpx_sad4x4x8_c;
+    if (flags & HAS_SSE4_1) vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
+    vpx_sad64x32 = vpx_sad64x32_sse2;
+    if (flags & HAS_AVX2) vpx_sad64x32 = vpx_sad64x32_avx2;
+    vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
+    if (flags & HAS_AVX2) vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
+    vpx_sad64x64 = vpx_sad64x64_sse2;
+    if (flags & HAS_AVX2) vpx_sad64x64 = vpx_sad64x64_avx2;
+    vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
+    if (flags & HAS_AVX2) vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
+    vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
+    if (flags & HAS_AVX2) vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
+    if (flags & HAS_AVX512) vpx_sad64x64x4d = vpx_sad64x64x4d_avx512;
+    vpx_sad8x16x3 = vpx_sad8x16x3_c;
+    if (flags & HAS_SSE3) vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
+    vpx_sad8x16x8 = vpx_sad8x16x8_c;
+    if (flags & HAS_SSE4_1) vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
+    vpx_sad8x8x3 = vpx_sad8x8x3_c;
+    if (flags & HAS_SSE3) vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
+    vpx_sad8x8x8 = vpx_sad8x8x8_c;
+    if (flags & HAS_SSE4_1) vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
+    vpx_satd = vpx_satd_sse2;
+    if (flags & HAS_AVX2) vpx_satd = vpx_satd_avx2;
+    vpx_scaled_2d = vpx_scaled_2d_c;
+    if (flags & HAS_SSSE3) vpx_scaled_2d = vpx_scaled_2d_ssse3;
+    vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
+    vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
+    vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
+    vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
+    vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
+    if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
+    vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
+    vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
+    vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
+    vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
+    vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
+    if (flags & HAS_AVX2) vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
+    vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
+    vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
+    vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
+    vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
+    vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
+    vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
+    vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
+    vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
+    if (flags & HAS_AVX2) vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
+    vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
+    vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
+    vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
+    vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
+    vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
+    if (flags & HAS_AVX2) vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
+    vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
+    vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
+    vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
+    if (flags & HAS_SSSE3) vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
+    vpx_variance16x16 = vpx_variance16x16_sse2;
+    if (flags & HAS_AVX2) vpx_variance16x16 = vpx_variance16x16_avx2;
+    vpx_variance16x32 = vpx_variance16x32_sse2;
+    if (flags & HAS_AVX2) vpx_variance16x32 = vpx_variance16x32_avx2;
+    vpx_variance16x8 = vpx_variance16x8_sse2;
+    if (flags & HAS_AVX2) vpx_variance16x8 = vpx_variance16x8_avx2;
+    vpx_variance32x16 = vpx_variance32x16_sse2;
+    if (flags & HAS_AVX2) vpx_variance32x16 = vpx_variance32x16_avx2;
+    vpx_variance32x32 = vpx_variance32x32_sse2;
+    if (flags & HAS_AVX2) vpx_variance32x32 = vpx_variance32x32_avx2;
+    vpx_variance32x64 = vpx_variance32x64_sse2;
+    if (flags & HAS_AVX2) vpx_variance32x64 = vpx_variance32x64_avx2;
+    vpx_variance64x32 = vpx_variance64x32_sse2;
+    if (flags & HAS_AVX2) vpx_variance64x32 = vpx_variance64x32_avx2;
+    vpx_variance64x64 = vpx_variance64x64_sse2;
+    if (flags & HAS_AVX2) vpx_variance64x64 = vpx_variance64x64_avx2;
+}
+#endif
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif
diff --git a/core-mod/extra/libvpx/files/vpx_scale_rtcd.h b/core-mod/extra/libvpx/files/vpx_scale_rtcd.h
new file mode 100644
index 0000000..5f09104
--- /dev/null
+++ b/core-mod/extra/libvpx/files/vpx_scale_rtcd.h
@@ -0,0 +1,73 @@
+// This file is generated. Do not edit.
+#ifndef VPX_SCALE_RTCD_H_
+#define VPX_SCALE_RTCD_H_
+
+#ifdef RTCD_C
+#define RTCD_EXTERN
+#else
+#define RTCD_EXTERN extern
+#endif
+
+struct yv12_buffer_config;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void vp8_horizontal_line_2_1_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_2_1_scale vp8_horizontal_line_2_1_scale_c
+
+void vp8_horizontal_line_5_3_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_3_scale vp8_horizontal_line_5_3_scale_c
+
+void vp8_horizontal_line_5_4_scale_c(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width);
+#define vp8_horizontal_line_5_4_scale vp8_horizontal_line_5_4_scale_c
+
+void vp8_vertical_band_2_1_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale vp8_vertical_band_2_1_scale_c
+
+void vp8_vertical_band_2_1_scale_i_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_2_1_scale_i vp8_vertical_band_2_1_scale_i_c
+
+void vp8_vertical_band_5_3_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_3_scale vp8_vertical_band_5_3_scale_c
+
+void vp8_vertical_band_5_4_scale_c(unsigned char *source, unsigned int src_pitch, unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width);
+#define vp8_vertical_band_5_4_scale vp8_vertical_band_5_4_scale_c
+
+void vp8_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vp8_yv12_copy_frame vp8_yv12_copy_frame_c
+
+void vp8_yv12_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vp8_yv12_extend_frame_borders vp8_yv12_extend_frame_borders_c
+
+void vpx_extend_frame_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_borders vpx_extend_frame_borders_c
+
+void vpx_extend_frame_inner_borders_c(struct yv12_buffer_config *ybf);
+#define vpx_extend_frame_inner_borders vpx_extend_frame_inner_borders_c
+
+void vpx_yv12_copy_frame_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_frame vpx_yv12_copy_frame_c
+
+void vpx_yv12_copy_y_c(const struct yv12_buffer_config *src_ybc, struct yv12_buffer_config *dst_ybc);
+#define vpx_yv12_copy_y vpx_yv12_copy_y_c
+
+void vpx_scale_rtcd(void);
+
+#ifdef RTCD_C
+#include "vpx_ports/x86.h"
+static void setup_rtcd_internal(void)
+{
+    int flags = x86_simd_caps();
+
+    (void)flags;
+
+}
+#endif
+
+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
+#endif
diff --git a/core-mod/extra/libvpx/patches/fix-busybox-diff.patch b/core-mod/extra/libvpx/patches/fix-busybox-diff.patch
new file mode 100644
index 0000000..fa93b0a
--- /dev/null
+++ b/core-mod/extra/libvpx/patches/fix-busybox-diff.patch
@@ -0,0 +1,13 @@
+diff --git a/configure b/configure
+index e5a74c6..11f660d 100755
+--- a/configure
++++ b/configure
+@@ -170,7 +170,7 @@ for t in ${all_targets}; do
+     [ -f "${source_path}/${t}.mk" ] && enable_feature ${t}
+ done
+ 
+-if ! diff --version >/dev/null; then
++if ! command -v diff >/dev/null; then
+   die "diff missing: Try installing diffutils via your package manager."
+ fi
+ 
diff --git a/core-mod/extra/libvpx/sources b/core-mod/extra/libvpx/sources
new file mode 100644
index 0000000..3c8a026
--- /dev/null
+++ b/core-mod/extra/libvpx/sources
@@ -0,0 +1,6 @@
+https://github.com/webmproject/libvpx/archive/v1.10.0.tar.gz
+patches/fix-busybox-diff.patch
+files/vp9_rtcd.h
+files/vp8_rtcd.h
+files/vpx_scale_rtcd.h
+files/vpx_dsp_rtcd.h
diff --git a/core-mod/extra/libvpx/version b/core-mod/extra/libvpx/version
new file mode 100644
index 0000000..ac83b38
--- /dev/null
+++ b/core-mod/extra/libvpx/version
@@ -0,0 +1 @@
+1.10.0 1
diff --git a/core-mod/extra/libwebp/build b/core-mod/extra/libwebp/build
new file mode 100755
index 0000000..9b42927
--- /dev/null
+++ b/core-mod/extra/libwebp/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static \
+    --enable-libwebpmux \
+    --enable-libwebpdemux \
+    --enable-libwebpdecoder
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/libwebp/checksums b/core-mod/extra/libwebp/checksums
new file mode 100644
index 0000000..a211abf
--- /dev/null
+++ b/core-mod/extra/libwebp/checksums
@@ -0,0 +1 @@
+2fc8bbde9f97f2ab403c0224fb9ca62b2e6852cbc519e91ceaa7c153ffd88a0c
diff --git a/core-mod/extra/libwebp/depends b/core-mod/extra/libwebp/depends
new file mode 100644
index 0000000..55a2fa3
--- /dev/null
+++ b/core-mod/extra/libwebp/depends
@@ -0,0 +1,2 @@
+libjpeg-turbo
+libpng
diff --git a/core-mod/extra/libwebp/sources b/core-mod/extra/libwebp/sources
new file mode 100644
index 0000000..4ed0cd5
--- /dev/null
+++ b/core-mod/extra/libwebp/sources
@@ -0,0 +1 @@
+http://downloads.webmproject.org/releases/webp/libwebp-1.2.0.tar.gz
diff --git a/core-mod/extra/libwebp/version b/core-mod/extra/libwebp/version
new file mode 100644
index 0000000..8b9a47f
--- /dev/null
+++ b/core-mod/extra/libwebp/version
@@ -0,0 +1 @@
+1.2.0 1
diff --git a/core-mod/extra/llvm/build b/core-mod/extra/llvm/build
new file mode 100755
index 0000000..f066cd8
--- /dev/null
+++ b/core-mod/extra/llvm/build
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake -B build \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DLLVM_BUILD_LLVM_DYLIB=ON \
+    -DLLVM_LINK_LLVM_DYLIB=ON \
+    -DLLVM_TARGETS_TO_BUILD="host;AMDGPU" \
+    -DLLVM_ENABLE_RTTI=ON \
+    -DLLVM_HOST_TRIPLE="$(cc -dumpmachine)" \
+    -DLLVM_INCLUDE_BENCHMARKS=OFF \
+    -DLLVM_INCLUDE_EXAMPLES=OFF \
+    -DLLVM_INCLUDE_DOCS=OFF \
+    -DLLVM_INCLUDE_TESTS=OFF \
+    -DLLVM_ENABLE_LIBXML2=OFF \
+    -Wno-dev
+
+cmake --build   build
+cmake --install build
diff --git a/core-mod/extra/llvm/checksums b/core-mod/extra/llvm/checksums
new file mode 100644
index 0000000..f7a1987
--- /dev/null
+++ b/core-mod/extra/llvm/checksums
@@ -0,0 +1 @@
+49dc47c8697a1a0abd4ee51629a696d7bfe803662f2a7252a3b16fc75f3a8b50
diff --git a/core-mod/extra/llvm/depends b/core-mod/extra/llvm/depends
new file mode 100644
index 0000000..126422e
--- /dev/null
+++ b/core-mod/extra/llvm/depends
@@ -0,0 +1,3 @@
+cmake  make
+python make
+zlib
diff --git a/core-mod/extra/llvm/sources b/core-mod/extra/llvm/sources
new file mode 100644
index 0000000..890e505
--- /dev/null
+++ b/core-mod/extra/llvm/sources
@@ -0,0 +1 @@
+https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.0/llvm-12.0.0.src.tar.xz
diff --git a/core-mod/extra/llvm/version b/core-mod/extra/llvm/version
new file mode 100644
index 0000000..1284e40
--- /dev/null
+++ b/core-mod/extra/llvm/version
@@ -0,0 +1 @@
+12.0.0 1
diff --git a/core-mod/extra/lzip/build b/core-mod/extra/lzip/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/lzip/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/lzip/checksums b/core-mod/extra/lzip/checksums
new file mode 100644
index 0000000..1b68b59
--- /dev/null
+++ b/core-mod/extra/lzip/checksums
@@ -0,0 +1 @@
+c3342d42e67139c165b8b128d033b5c96893a13ac5f25933190315214e87a948
diff --git a/core-mod/extra/lzip/sources b/core-mod/extra/lzip/sources
new file mode 100644
index 0000000..850f6cd
--- /dev/null
+++ b/core-mod/extra/lzip/sources
@@ -0,0 +1 @@
+https://download.savannah.gnu.org/releases/lzip/lzip-1.22.tar.gz
diff --git a/core-mod/extra/lzip/version b/core-mod/extra/lzip/version
new file mode 100644
index 0000000..d8d7075
--- /dev/null
+++ b/core-mod/extra/lzip/version
@@ -0,0 +1 @@
+1.22 1
diff --git a/core-mod/extra/mandoc/build b/core-mod/extra/mandoc/build
new file mode 100755
index 0000000..bf3f40e
--- /dev/null
+++ b/core-mod/extra/mandoc/build
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+
+patch -p1 < mandoc-no-warn.patch
+
+sed -i '/int dummy/d'         ./compat_*.c
+sed -i 's,"more -s","less",g' main.c
+sed -i "s/CC=.*/CC='$CC'/"    configure
+
+cat > configure.local <<EOF
+PREFIX=/usr
+MANDIR=/usr/share/man
+LIBDIR=/usr/lib
+SBINDIR=/usr/bin
+CC="${CC:-cc}"
+CFLAGS="$CFLAGS"
+LN="ln -sf"
+EOF
+
+./configure
+
+make
+make -j1 DESTDIR="$1" base-install
diff --git a/core-mod/extra/mandoc/checksums b/core-mod/extra/mandoc/checksums
new file mode 100644
index 0000000..babcf78
--- /dev/null
+++ b/core-mod/extra/mandoc/checksums
@@ -0,0 +1,2 @@
+8219b42cb56fc07b2aa660574e6211ac38eefdbf21f41b698d3348793ba5d8f7  mandoc-1.14.5.tar.gz
+eaff34c03d1b6741cf6b24a394c63ad6096e4391578414b9da986294ee817a25  mandoc-no-warn.patch
diff --git a/core-mod/extra/mandoc/depends b/core-mod/extra/mandoc/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/core-mod/extra/mandoc/depends
@@ -0,0 +1 @@
+zlib
diff --git a/core-mod/extra/mandoc/patches/mandoc-no-warn.patch b/core-mod/extra/mandoc/patches/mandoc-no-warn.patch
new file mode 100644
index 0000000..1f49a12
--- /dev/null
+++ b/core-mod/extra/mandoc/patches/mandoc-no-warn.patch
@@ -0,0 +1,13 @@
+diff --git a/main.c b/main.c
+index b91c158..514508a 100644
+--- a/main.c
++++ b/main.c
+@@ -750,8 +750,6 @@ fs_lookup(const struct manpaths *paths, size_t ipath,
+ 	return globres != -1;
+ 
+ found:
+-	warnx("outdated mandoc.db lacks %s(%s) entry, run %s %s",
+-	    name, sec, BINM_MAKEWHATIS, paths->paths[ipath]);
+ 	if (res == NULL) {
+ 		free(file);
+ 		return 1;
diff --git a/core-mod/extra/mandoc/sources b/core-mod/extra/mandoc/sources
new file mode 100644
index 0000000..d012518
--- /dev/null
+++ b/core-mod/extra/mandoc/sources
@@ -0,0 +1,2 @@
+https://fossies.org/linux/misc/mandoc-1.14.5.tar.gz
+patches/mandoc-no-warn.patch
diff --git a/core-mod/extra/mandoc/version b/core-mod/extra/mandoc/version
new file mode 100644
index 0000000..aa6575c
--- /dev/null
+++ b/core-mod/extra/mandoc/version
@@ -0,0 +1 @@
+1.14.5 4
diff --git a/core-mod/extra/mesa/build b/core-mod/extra/mesa/build
new file mode 100755
index 0000000..850d5c6
--- /dev/null
+++ b/core-mod/extra/mesa/build
@@ -0,0 +1,48 @@
+#!/bin/sh -e
+
+# Install python-mako which is solely needed for mesa
+# and thus contained in this build.
+{
+    cd mako
+
+    python3 setup.py build
+    python3 setup.py install \
+        --prefix=/usr \
+        --root="$PWD/dist"
+
+    # Use a glob to avoid having to figure out the Python
+    # version for the path below.
+    cd dist/usr/lib/python*/site-packages
+
+    # Set the PYTHONPATH so python knows where to find mako.
+    # The one liner simply appends the existing path and
+    # handles the case where an unset PYTHONPATH breaks
+    # python as it will only contain our new addition.
+    PYTHONPATH=$PWD:$(python -c "import sys; print(':'.join(sys.path))")
+
+    cd -; cd ..
+}
+
+export PYTHONPATH
+export DESTDIR="$1"
+export CFLAGS="$CFLAGS -DGLX_X86_READONLY_TEXT"
+
+# Fix issues with musl and firefox.
+# https://bugs.freedesktop.org/show_bug.cgi?id=35268
+# https://github.com/mesa3d/mesa/commit/9f37c9903b87f86a533bfaffa72f0ecb285b02b2
+sed -i "/pre_args += '-DUSE_ELF_TLS'/d" meson.build
+
+python3 bin/git_sha1_gen.py --output include/git_sha1.h
+
+meson \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var \
+    --buildtype=release \
+    -Dplatforms=x11 \
+    -Dzstd=disabled \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/extra/mesa/checksums b/core-mod/extra/mesa/checksums
new file mode 100644
index 0000000..5b20e94
--- /dev/null
+++ b/core-mod/extra/mesa/checksums
@@ -0,0 +1,2 @@
+1f177f44098164b65731c5ded4c928fd58b14f6c9d2087aa0e37bc79bf79e90b
+17831f0b7087c313c0ffae2bcbbd3c1d5ba9eeac9c38f2eb7b50e8c99fe9d5ab
diff --git a/core-mod/extra/mesa/depends b/core-mod/extra/mesa/depends
new file mode 100644
index 0000000..3455f6b
--- /dev/null
+++ b/core-mod/extra/mesa/depends
@@ -0,0 +1,21 @@
+bison        make
+expat
+flex         make
+libX11
+libXdamage
+libXext
+libXrandr
+libXrender
+libXxf86vm
+libdrm
+libelf
+libxcb
+libxshmfence
+linux-headers make
+llvm
+m4            make
+meson         make
+pkgconf       make
+python        make
+xorgproto
+zlib
diff --git a/core-mod/extra/mesa/sources b/core-mod/extra/mesa/sources
new file mode 100644
index 0000000..8a7013f
--- /dev/null
+++ b/core-mod/extra/mesa/sources
@@ -0,0 +1,2 @@
+https://archive.mesa3d.org/mesa-21.1.4.tar.xz
+https://files.pythonhosted.org/packages/source/M/Mako/Mako-1.1.4.tar.gz mako
diff --git a/core-mod/extra/mesa/version b/core-mod/extra/mesa/version
new file mode 100644
index 0000000..b115689
--- /dev/null
+++ b/core-mod/extra/mesa/version
@@ -0,0 +1 @@
+21.1.4 1
diff --git a/core-mod/extra/meson/build b/core-mod/extra/meson/build
new file mode 100755
index 0000000..366c544
--- /dev/null
+++ b/core-mod/extra/meson/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+python setup.py build
+python setup.py install \
+    --root="$1" \
+    --optimize=1 \
+    --skip-build
diff --git a/core-mod/extra/meson/checksums b/core-mod/extra/meson/checksums
new file mode 100644
index 0000000..953fc60
--- /dev/null
+++ b/core-mod/extra/meson/checksums
@@ -0,0 +1 @@
+78e0f553dd3bc632d5f96ab943b1bbccb599c2c84ff27c5fb7f7fff9c8a3f6b4
diff --git a/core-mod/extra/meson/depends b/core-mod/extra/meson/depends
new file mode 100644
index 0000000..35f0809
--- /dev/null
+++ b/core-mod/extra/meson/depends
@@ -0,0 +1,2 @@
+python
+samurai
diff --git a/core-mod/extra/meson/sources b/core-mod/extra/meson/sources
new file mode 100644
index 0000000..03d10c5
--- /dev/null
+++ b/core-mod/extra/meson/sources
@@ -0,0 +1 @@
+https://github.com/mesonbuild/meson/archive/0.58.1.tar.gz
diff --git a/core-mod/extra/meson/version b/core-mod/extra/meson/version
new file mode 100644
index 0000000..c45a1cb
--- /dev/null
+++ b/core-mod/extra/meson/version
@@ -0,0 +1 @@
+0.58.1 1
diff --git a/core-mod/extra/mpv/build b/core-mod/extra/mpv/build
new file mode 100755
index 0000000..c7307dc
--- /dev/null
+++ b/core-mod/extra/mpv/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+ln -s waf-2.0.18 waf
+
+python waf configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --confdir=/etc/mpv \
+    --enable-alsa
+
+python waf build
+python waf install --destdir="$1"
diff --git a/core-mod/extra/mpv/checksums b/core-mod/extra/mpv/checksums
new file mode 100644
index 0000000..ba4d1cf
--- /dev/null
+++ b/core-mod/extra/mpv/checksums
@@ -0,0 +1,2 @@
+100a116b9f23bdcda3a596e9f26be3a69f166a4f1d00910d1789b6571c46f3a9
+2e0cf83a63843da127610420cef1d3126f1187d8e572b6b3a28052fc2250d4bf
diff --git a/core-mod/extra/mpv/depends b/core-mod/extra/mpv/depends
new file mode 100644
index 0000000..0cebadc
--- /dev/null
+++ b/core-mod/extra/mpv/depends
@@ -0,0 +1,10 @@
+alsa-lib
+ffmpeg
+freetype-harfbuzz
+libass
+libXScrnSaver
+libXinerama
+libXrandr
+mesa
+pkgconf make
+python  make
diff --git a/core-mod/extra/mpv/sources b/core-mod/extra/mpv/sources
new file mode 100644
index 0000000..0c3bd28
--- /dev/null
+++ b/core-mod/extra/mpv/sources
@@ -0,0 +1,2 @@
+https://github.com/mpv-player/mpv/archive/v0.33.1.tar.gz
+https://waf.io/waf-2.0.18
diff --git a/core-mod/extra/mpv/version b/core-mod/extra/mpv/version
new file mode 100644
index 0000000..472281f
--- /dev/null
+++ b/core-mod/extra/mpv/version
@@ -0,0 +1 @@
+0.33.1 1
diff --git a/core-mod/extra/mtdev/build b/core-mod/extra/mtdev/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/mtdev/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/mtdev/checksums b/core-mod/extra/mtdev/checksums
new file mode 100644
index 0000000..784a687
--- /dev/null
+++ b/core-mod/extra/mtdev/checksums
@@ -0,0 +1 @@
+15d7b28da8ac71d8bc8c9287c2045fd174267bc740bec10cfda332dc1204e0e0  mtdev-1.1.6.tar.bz2
diff --git a/core-mod/extra/mtdev/depends b/core-mod/extra/mtdev/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/mtdev/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/mtdev/sources b/core-mod/extra/mtdev/sources
new file mode 100644
index 0000000..d322c9b
--- /dev/null
+++ b/core-mod/extra/mtdev/sources
@@ -0,0 +1 @@
+https://bitmath.org/code/mtdev/mtdev-1.1.6.tar.bz2
diff --git a/core-mod/extra/mtdev/version b/core-mod/extra/mtdev/version
new file mode 100644
index 0000000..e17b92d
--- /dev/null
+++ b/core-mod/extra/mtdev/version
@@ -0,0 +1 @@
+1.1.6 1
diff --git a/core-mod/extra/nasm/build b/core-mod/extra/nasm/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/nasm/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/nasm/checksums b/core-mod/extra/nasm/checksums
new file mode 100644
index 0000000..b3f2c66
--- /dev/null
+++ b/core-mod/extra/nasm/checksums
@@ -0,0 +1 @@
+3caf6729c1073bf96629b57cee31eeb54f4f8129b01902c73428836550b30a3f
diff --git a/core-mod/extra/nasm/sources b/core-mod/extra/nasm/sources
new file mode 100644
index 0000000..8f32899
--- /dev/null
+++ b/core-mod/extra/nasm/sources
@@ -0,0 +1 @@
+https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.xz
diff --git a/core-mod/extra/nasm/version b/core-mod/extra/nasm/version
new file mode 100644
index 0000000..97b3c2d
--- /dev/null
+++ b/core-mod/extra/nasm/version
@@ -0,0 +1 @@
+2.15.05 1
diff --git a/core-mod/extra/ncurses/build b/core-mod/extra/ncurses/build
new file mode 100755
index 0000000..30d99b7
--- /dev/null
+++ b/core-mod/extra/ncurses/build
@@ -0,0 +1,32 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --enable-pc-files \
+    --disable-rpath-hack \
+    --with-pkg-config-libdir=/usr/lib/pkgconfig \
+    --with-shared \
+    --enable-widec \
+    --without-ada \
+    --without-tests \
+    --without-debug \
+    --without-cxx-binding
+
+make
+make DESTDIR="$1" install
+
+# Force ncurses to link against wide-character ncurses library.
+for lib in ncurses form panel menu; do
+    rm -f "$1/usr/lib/lib${lib}.so"
+    printf '%s\n' "INPUT(-l${lib}w)" > "$1/usr/lib/lib${lib}.so"
+    chmod 755 "$1/usr/lib/lib${lib}.so"
+    ln -sf "lib${lib}w.a" "$1/usr/lib/lib${lib}.a"
+done
+
+# Some packages look for libcurses instead of libncurses when building.
+printf '%s\n' "INPUT(-lncursesw)" > "$1/usr/lib/libcursesw.so"
+ln -s libncurses.so "$1/usr/lib/libcurses.so"
+
+# Fix pkgconfig file.
+ln -s ncursesw.pc "$1/usr/lib/pkgconfig/ncurses.pc"
diff --git a/core-mod/extra/ncurses/checksums b/core-mod/extra/ncurses/checksums
new file mode 100644
index 0000000..3d3b37b
--- /dev/null
+++ b/core-mod/extra/ncurses/checksums
@@ -0,0 +1 @@
+30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d  ncurses-6.2.tar.gz
diff --git a/core-mod/extra/ncurses/sources b/core-mod/extra/ncurses/sources
new file mode 100644
index 0000000..e1e0d6a
--- /dev/null
+++ b/core-mod/extra/ncurses/sources
@@ -0,0 +1 @@
+https://ftp.gnu.org/gnu/ncurses/ncurses-6.2.tar.gz
diff --git a/core-mod/extra/ncurses/version b/core-mod/extra/ncurses/version
new file mode 100644
index 0000000..724191a
--- /dev/null
+++ b/core-mod/extra/ncurses/version
@@ -0,0 +1 @@
+6.2 5
diff --git a/core-mod/extra/openresolv/build b/core-mod/extra/openresolv/build
new file mode 100755
index 0000000..9b9fa59
--- /dev/null
+++ b/core-mod/extra/openresolv/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/openresolv/checksums b/core-mod/extra/openresolv/checksums
new file mode 100644
index 0000000..6b6bd2c
--- /dev/null
+++ b/core-mod/extra/openresolv/checksums
@@ -0,0 +1 @@
+42b30508e857a228535c631eaac936862d86eca68c14b5c0bf387ba176b91b97
diff --git a/core-mod/extra/openresolv/sources b/core-mod/extra/openresolv/sources
new file mode 100644
index 0000000..3e5c81d
--- /dev/null
+++ b/core-mod/extra/openresolv/sources
@@ -0,0 +1 @@
+https://roy.marples.name/downloads/openresolv/openresolv-3.12.0.tar.xz
diff --git a/core-mod/extra/openresolv/version b/core-mod/extra/openresolv/version
new file mode 100644
index 0000000..d677113
--- /dev/null
+++ b/core-mod/extra/openresolv/version
@@ -0,0 +1 @@
+3.12.0 1
diff --git a/core-mod/extra/openssh/build b/core-mod/extra/openssh/build
new file mode 100755
index 0000000..988e909
--- /dev/null
+++ b/core-mod/extra/openssh/build
@@ -0,0 +1,27 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --datadir=/usr/share/openssh \
+    --sysconfdir=/etc/ssh \
+    --sbindir=/usr/bin \
+    --libexecdir=/usr/lib/openssh \
+    --without-selinux \
+    --with-privsep-user=nobody \
+    --with-mantype=doc \
+    --without-rpath \
+    --disable-strip \
+    --with-ssl-engine \
+    --with-pid-dir=/run \
+    --disable-wtmp \
+    --disable-utmp
+
+make
+make DESTDIR="$1" install
+
+install -m 755 contrib/ssh-copy-id   "$1/usr/bin/ssh-copy-id"
+install -m 644 contrib/ssh-copy-id.1 "$1/usr/share/man/man8/ssh-copy-id.1"
+
+# Install runit services.
+install -Dm 755 sshd.run "$1/etc/sv/sshd/run"
+ln -s /run/runit/supervise.sshd "$1/etc/sv/sshd/supervise"
diff --git a/core-mod/extra/openssh/checksums b/core-mod/extra/openssh/checksums
new file mode 100644
index 0000000..a0f1746
--- /dev/null
+++ b/core-mod/extra/openssh/checksums
@@ -0,0 +1,2 @@
+c3e6e4da1621762c850d03b47eed1e48dff4cc9608ddeb547202a234df8ed7ae
+cd9a79943f8f6c05373bd70afc22a230f3c5e6e6200b9115f598e180dacefb54
diff --git a/core-mod/extra/openssh/depends b/core-mod/extra/openssh/depends
new file mode 100644
index 0000000..9ee911a
--- /dev/null
+++ b/core-mod/extra/openssh/depends
@@ -0,0 +1,2 @@
+libressl
+zlib
diff --git a/core-mod/extra/openssh/files/sshd.run b/core-mod/extra/openssh/files/sshd.run
new file mode 100644
index 0000000..6645902
--- /dev/null
+++ b/core-mod/extra/openssh/files/sshd.run
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/sshd -D
diff --git a/core-mod/extra/openssh/post-install b/core-mod/extra/openssh/post-install
new file mode 100755
index 0000000..00aabb8
--- /dev/null
+++ b/core-mod/extra/openssh/post-install
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+# Generate host keys if they don't already exist.
+ssh-keygen -A >/dev/null 2>&1
diff --git a/core-mod/extra/openssh/sources b/core-mod/extra/openssh/sources
new file mode 100644
index 0000000..e98b6fe
--- /dev/null
+++ b/core-mod/extra/openssh/sources
@@ -0,0 +1,2 @@
+https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.6p1.tar.gz
+files/sshd.run
diff --git a/core-mod/extra/openssh/version b/core-mod/extra/openssh/version
new file mode 100644
index 0000000..e405c06
--- /dev/null
+++ b/core-mod/extra/openssh/version
@@ -0,0 +1 @@
+8.6p1 1
diff --git a/core-mod/extra/opus/build b/core-mod/extra/opus/build
new file mode 100755
index 0000000..23f4676
--- /dev/null
+++ b/core-mod/extra/opus/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-custom-modes \
+    --enable-float-approx
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/opus/checksums b/core-mod/extra/opus/checksums
new file mode 100644
index 0000000..77a9ad9
--- /dev/null
+++ b/core-mod/extra/opus/checksums
@@ -0,0 +1 @@
+65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d  opus-1.3.1.tar.gz
diff --git a/core-mod/extra/opus/sources b/core-mod/extra/opus/sources
new file mode 100644
index 0000000..d11f072
--- /dev/null
+++ b/core-mod/extra/opus/sources
@@ -0,0 +1 @@
+https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz
diff --git a/core-mod/extra/opus/version b/core-mod/extra/opus/version
new file mode 100644
index 0000000..957d07e
--- /dev/null
+++ b/core-mod/extra/opus/version
@@ -0,0 +1 @@
+1.3.1 1
diff --git a/core-mod/extra/pango/build b/core-mod/extra/pango/build
new file mode 100755
index 0000000..1d4cc2e
--- /dev/null
+++ b/core-mod/extra/pango/build
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+sed -i "/subdir('tests')/d"    meson.build
+sed -i "/subdir('examples')/d" meson.build
+
+# Don't clone subprojects we don't even enable
+rm -rf subprojects
+
+meson \
+    --prefix=/usr \
+    -Dgtk_doc=false \
+    -Dinstall-tests=false \
+    -Dintrospection=disabled \
+    . build
+
+ninja -C build
+ninja -C build install
diff --git a/core-mod/extra/pango/checksums b/core-mod/extra/pango/checksums
new file mode 100644
index 0000000..9cd7385
--- /dev/null
+++ b/core-mod/extra/pango/checksums
@@ -0,0 +1 @@
+8783c82927582437d3a224eb18ea90d195b7451ff2effdffba16039df5346170
diff --git a/core-mod/extra/pango/depends b/core-mod/extra/pango/depends
new file mode 100644
index 0000000..a826934
--- /dev/null
+++ b/core-mod/extra/pango/depends
@@ -0,0 +1,9 @@
+cairo
+fontconfig
+freetype-harfbuzz
+fribidi
+glib
+libXft
+libXrender
+meson   make
+pkgconf make
diff --git a/core-mod/extra/pango/sources b/core-mod/extra/pango/sources
new file mode 100644
index 0000000..7521cf4
--- /dev/null
+++ b/core-mod/extra/pango/sources
@@ -0,0 +1 @@
+https://github.com/GNOME/pango/archive/1.48.7.tar.gz
diff --git a/core-mod/extra/pango/version b/core-mod/extra/pango/version
new file mode 100644
index 0000000..3098975
--- /dev/null
+++ b/core-mod/extra/pango/version
@@ -0,0 +1 @@
+1.48.7 1
diff --git a/core-mod/extra/patchelf/build b/core-mod/extra/patchelf/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/extra/patchelf/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/patchelf/checksums b/core-mod/extra/patchelf/checksums
new file mode 100644
index 0000000..f411562
--- /dev/null
+++ b/core-mod/extra/patchelf/checksums
@@ -0,0 +1 @@
+699a31cf52211cf5ad6e35a8801eb637bc7f3c43117140426400d67b7babd792
diff --git a/core-mod/extra/patchelf/sources b/core-mod/extra/patchelf/sources
new file mode 100644
index 0000000..813c335
--- /dev/null
+++ b/core-mod/extra/patchelf/sources
@@ -0,0 +1 @@
+https://github.com/NixOS/patchelf/releases/download/0.12/patchelf-0.12.tar.bz2
diff --git a/core-mod/extra/patchelf/version b/core-mod/extra/patchelf/version
new file mode 100644
index 0000000..510a262
--- /dev/null
+++ b/core-mod/extra/patchelf/version
@@ -0,0 +1 @@
+0.12 1
diff --git a/core-mod/extra/perl/build b/core-mod/extra/perl/build
new file mode 100755
index 0000000..8f369e2
--- /dev/null
+++ b/core-mod/extra/perl/build
@@ -0,0 +1,43 @@
+#!/bin/sh -e
+
+export BUILD_ZLIB=0
+export BUILD_BZIP2=0
+export LDFLAGS="$LDFLAGS -pthread"
+export CFLAGS="$CFLAGS -DNO_POSIX_2008_LOCALE -D_GNU_SOURCE"
+
+./Configure \
+    -des \
+    -Dprefix=/usr \
+    -Dvendorprefix=/usr \
+    -Dusevendorprefix \
+    -Duseshrplib \
+    -Dusesoname \
+    -Dusethreads \
+    -Dinc_version_list=none \
+    -Dd_sockaddr_in6=define \
+    -Dcccdlflags=-fPIC \
+    -Dccflags="$CFLAGS" \
+    -Dlddlflags="-shared $LDFLAGS" \
+    -Dldflags="$LDFLAGS" \
+    -Doptimize="-Wall $CFLAGS" \
+    -Dcc="${CC:-cc}" \
+    -Dar="${AR:-ar}" \
+    -Dnm="${NM:-nm}" \
+    -Dranlib="${RANLIB:-ranlib}" \
+    -Dperl_static_inline="static __inline__" \
+    -Dd_static_inline
+
+make
+make DESTDIR="$1" install
+
+# Remove all unneeded files.
+find "$1" -name \*.pod       -exec rm -f {} +
+find "$1" -name .packlist    -exec rm -f {} +
+find "$1" -name README\*     -exec rm -f {} +
+find "$1" -name TODO\*       -exec rm -f {} +
+find "$1" -name Change\*     -exec rm -f {} +
+find "$1" -name \*.bs        -exec rm -f {} +
+find "$1" -name \*.0 -type f -exec rm -f {} +
+
+# Fix permissions.
+find "$1/usr/lib" -type f -exec chmod 644 {} \;
diff --git a/core-mod/extra/perl/checksums b/core-mod/extra/perl/checksums
new file mode 100644
index 0000000..cf9c549
--- /dev/null
+++ b/core-mod/extra/perl/checksums
@@ -0,0 +1 @@
+82c2e5e5c71b0e10487a80d79140469ab1f8056349ca8545140a224dbbed7ded
diff --git a/core-mod/extra/perl/depends b/core-mod/extra/perl/depends
new file mode 100644
index 0000000..4565337
--- /dev/null
+++ b/core-mod/extra/perl/depends
@@ -0,0 +1,2 @@
+bzip2
+zlib
diff --git a/core-mod/extra/perl/sources b/core-mod/extra/perl/sources
new file mode 100644
index 0000000..a06cabd
--- /dev/null
+++ b/core-mod/extra/perl/sources
@@ -0,0 +1 @@
+https://www.cpan.org/src/5.0/perl-5.34.0.tar.xz
diff --git a/core-mod/extra/perl/version b/core-mod/extra/perl/version
new file mode 100644
index 0000000..23cfb12
--- /dev/null
+++ b/core-mod/extra/perl/version
@@ -0,0 +1 @@
+5.34.0 1
diff --git a/core-mod/extra/pkgconf/build b/core-mod/extra/pkgconf/build
new file mode 100755
index 0000000..503d3a7
--- /dev/null
+++ b/core-mod/extra/pkgconf/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
+
+ln -s pkgconf "$1/usr/bin/pkg-config"
diff --git a/core-mod/extra/pkgconf/checksums b/core-mod/extra/pkgconf/checksums
new file mode 100644
index 0000000..2041335
--- /dev/null
+++ b/core-mod/extra/pkgconf/checksums
@@ -0,0 +1 @@
+d73f32c248a4591139a6b17777c80d4deab6b414ec2b3d21d0a24be348c476ab
diff --git a/core-mod/extra/pkgconf/sources b/core-mod/extra/pkgconf/sources
new file mode 100644
index 0000000..ff1ef80
--- /dev/null
+++ b/core-mod/extra/pkgconf/sources
@@ -0,0 +1 @@
+https://distfiles.dereferenced.org/pkgconf/pkgconf-1.7.4.tar.xz
diff --git a/core-mod/extra/pkgconf/version b/core-mod/extra/pkgconf/version
new file mode 100644
index 0000000..d70531c
--- /dev/null
+++ b/core-mod/extra/pkgconf/version
@@ -0,0 +1 @@
+1.7.4 1
diff --git a/core-mod/extra/plzip/build b/core-mod/extra/plzip/build
new file mode 100755
index 0000000..ff37a3f
--- /dev/null
+++ b/core-mod/extra/plzip/build
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+# plzip is the only thing that will ever require
+# this library. Let's simply build it and statically
+# compile plzip.
+(cd lzlib; ./configure; make)
+
+./configure \
+    --prefix=/usr \
+    CXXFLAGS="$CXXFLAGS -static -L$PWD/lzlib -I$PWD/lzlib"
+
+make
+make DESTDIR="$1" install
+
+# Create the symlink for compatibility. We're using
+# a multi-threaded implementation of lzip.
+ln -s plzip "$1/usr/bin/lzip"
diff --git a/core-mod/extra/plzip/checksums b/core-mod/extra/plzip/checksums
new file mode 100644
index 0000000..e98b416
--- /dev/null
+++ b/core-mod/extra/plzip/checksums
@@ -0,0 +1,2 @@
+14d8d1db8dde76bdd9060b59d50b2943417eb4c0fbd2b84736546b78fab5f1a7
+2472f8d93830d0952b0c75f67e372d38c8f7c174dde2252369d5b20c87d3ba8e
diff --git a/core-mod/extra/plzip/sources b/core-mod/extra/plzip/sources
new file mode 100644
index 0000000..100844b
--- /dev/null
+++ b/core-mod/extra/plzip/sources
@@ -0,0 +1,2 @@
+https://download.savannah.gnu.org/releases/lzip/plzip/plzip-1.9.tar.gz
+https://download.savannah.gnu.org/releases/lzip/lzlib/lzlib-1.9.tar.gz lzlib
diff --git a/core-mod/extra/plzip/version b/core-mod/extra/plzip/version
new file mode 100644
index 0000000..6346e5c
--- /dev/null
+++ b/core-mod/extra/plzip/version
@@ -0,0 +1 @@
+1.9 1
diff --git a/core-mod/extra/python/build b/core-mod/extra/python/build
new file mode 100755
index 0000000..f7baaab
--- /dev/null
+++ b/core-mod/extra/python/build
@@ -0,0 +1,47 @@
+#!/bin/sh -e
+
+# Remove util-linux dependency among other things.
+cat >> Modules/Setup <<EOF
+*disabled*
+_uuid nis ossaudiodev
+EOF
+
+# Reported 20-27% performance improvements.
+# See: "PythonNoSemanticInterpositionSpeedup"
+export CFLAGS="$CFLAGS -fno-semantic-interposition"
+export CXXFLAGS="$CXXFLAGS -fno-semantic-interposition"
+export LDFLAGS="$LDFLAGS -fno-semantic-interposition"
+
+patch -p1 < python3-always-pip.patch
+
+./configure \
+    --prefix=/usr \
+    --enable-shared \
+    --with-system-expat \
+    --with-system-ffi \
+    --with-ensurepip=yes \
+    --without-doc-strings
+
+make
+make DESTDIR="$1" install
+
+ln -s python3 "$1/usr/bin/python"
+ln -s pip3    "$1/usr/bin/pip"
+
+# Make static library writable.
+chmod u+w "$1/usr/lib/libpython"*
+
+# Let's make some kind of effort to reduce the overall
+# size of Python by removing a bunch of rarely used and
+# otherwise useless components.
+#
+# This can't be done via ./configure as the build system
+# doesn't give you this much control over the process.
+{
+    cd "$1/usr/lib/python"*
+    rm -rf test ./*/test ./*/tests
+    rm -rf pydoc* idlelib turtle* config-*
+
+    cd "$1/usr/bin"
+    rm -f pydoc* idle*
+}
diff --git a/core-mod/extra/python/checksums b/core-mod/extra/python/checksums
new file mode 100644
index 0000000..259b452
--- /dev/null
+++ b/core-mod/extra/python/checksums
@@ -0,0 +1,2 @@
+397920af33efc5b97f2e0b57e91923512ef89fc5b3c1d21dbfc8c4828ce0108a
+1e3dd58370fa3f5c9454f72479565e5282d16defdeec43c88e9a4dd233e00c1b
diff --git a/core-mod/extra/python/depends b/core-mod/extra/python/depends
new file mode 100644
index 0000000..f5fadfe
--- /dev/null
+++ b/core-mod/extra/python/depends
@@ -0,0 +1,5 @@
+bzip2
+expat
+libffi
+sqlite
+zlib
diff --git a/core-mod/extra/python/patches/python3-always-pip.patch b/core-mod/extra/python/patches/python3-always-pip.patch
new file mode 100644
index 0000000..a228bd6
--- /dev/null
+++ b/core-mod/extra/python/patches/python3-always-pip.patch
@@ -0,0 +1,13 @@
+diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py
+index f3152a5..52f6312 100644
+--- a/Lib/ensurepip/__init__.py
++++ b/Lib/ensurepip/__init__.py
+@@ -116,7 +116,7 @@ def _bootstrap(*, root=None, upgrade=False, user=False,
+             additional_paths.append(os.path.join(tmpdir, wheel_name))
+ 
+         # Construct the arguments to be passed to the pip command
+-        args = ["install", "--no-cache-dir", "--no-index", "--find-links", tmpdir]
++        args = ["install", "-I", "--no-cache-dir", "--no-index", "--find-links", tmpdir]
+         if root:
+             args += ["--root", root]
+         if upgrade:
diff --git a/core-mod/extra/python/sources b/core-mod/extra/python/sources
new file mode 100644
index 0000000..906d6eb
--- /dev/null
+++ b/core-mod/extra/python/sources
@@ -0,0 +1,2 @@
+https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tar.xz
+patches/python3-always-pip.patch
diff --git a/core-mod/extra/python/version b/core-mod/extra/python/version
new file mode 100644
index 0000000..91bdc47
--- /dev/null
+++ b/core-mod/extra/python/version
@@ -0,0 +1 @@
+3.9.6 2
diff --git a/core-mod/extra/rsync/build b/core-mod/extra/rsync/build
new file mode 100755
index 0000000..9fbf25b
--- /dev/null
+++ b/core-mod/extra/rsync/build
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+# Swap to awk script instead of perl script
+# for building rsync. See files/mkproto.awk.
+sed -i 's/perl/awk -f/;s/mkproto.pl/mkproto.awk/' Makefile.in
+
+export CFLAGS="-static $CFLAGS"
+
+./configure \
+    --prefix=/usr \
+    --with-included-popt \
+    --disable-xxhash \
+    --disable-zstd \
+    --disable-lz4 \
+    --without-included-zlib
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/rsync/checksums b/core-mod/extra/rsync/checksums
new file mode 100644
index 0000000..4c0f123
--- /dev/null
+++ b/core-mod/extra/rsync/checksums
@@ -0,0 +1,2 @@
+becc3c504ceea499f4167a260040ccf4d9f2ef9499ad5683c179a697146ce50e  rsync-3.2.3.tar.gz
+301240aecba5b8fbda8310c841ef61e3c1f312a55378f6079f8d65ae1bd811f2  mkproto.awk
diff --git a/core-mod/extra/rsync/depends b/core-mod/extra/rsync/depends
new file mode 100644
index 0000000..17a6d43
--- /dev/null
+++ b/core-mod/extra/rsync/depends
@@ -0,0 +1 @@
+zlib make
diff --git a/core-mod/extra/rsync/files/mkproto.awk b/core-mod/extra/rsync/files/mkproto.awk
new file mode 100644
index 0000000..d3802f9
--- /dev/null
+++ b/core-mod/extra/rsync/files/mkproto.awk
@@ -0,0 +1,39 @@
+#!/usr/bin/awk -f
+
+BEGIN {
+    while ((getline i < "proto.h") > 0) old_protos = old_protos ? old_protos "\n" i : i
+    protos = "/* This file is automatically generated with \"make proto\". DO NOT EDIT */\n"
+}
+
+inheader {
+    protos = protos "\n" ((inheader = /\)[ \t]*$/ ? 0 : 1) ? $0 : $0 ";")
+    next
+}
+
+/^FN_(LOCAL|GLOBAL)_[^(]+\([^,()]+/ {
+    local = /^FN_LOCAL/
+    gsub(/^FN_(LOC|GLOB)AL_|,.*$/, "")
+    sub(/^BOOL\(/, "BOOL ")
+    sub(/^CHAR\(/, "char ")
+    sub(/^INTEGER\(/, "int ")
+    sub(/^STRING\(/, "char *")
+    protos = protos "\n" $0 (local ? "(int module_id);" : "(void);")
+    next
+}
+
+/^static|^extern|;/||!/^[A-Za-z][A-Za-z0-9_]* / { next }
+
+/\(.*\)[ \t]*$/ {
+    protos = protos "\n" $0 ";"
+    next
+}
+
+/\(/ {
+    inheader = 1
+    protos = protos "\n" $0
+}
+
+END {
+    if (old_protos != protos) print protos > "proto.h"
+    print "" > "proto.h-tstamp"
+}
diff --git a/core-mod/extra/rsync/sources b/core-mod/extra/rsync/sources
new file mode 100644
index 0000000..8cf1740
--- /dev/null
+++ b/core-mod/extra/rsync/sources
@@ -0,0 +1,2 @@
+https://download.samba.org/pub/rsync/src/rsync-3.2.3.tar.gz
+files/mkproto.awk
diff --git a/core-mod/extra/rsync/version b/core-mod/extra/rsync/version
new file mode 100644
index 0000000..088245e
--- /dev/null
+++ b/core-mod/extra/rsync/version
@@ -0,0 +1 @@
+3.2.3 1
diff --git a/core-mod/extra/samurai/build b/core-mod/extra/samurai/build
new file mode 100755
index 0000000..1dd11b3
--- /dev/null
+++ b/core-mod/extra/samurai/build
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+make PREFIX=/usr
+make PREFIX=/usr DESTDIR="$1" install
+
+ln -s samu "$1/usr/bin/ninja"
diff --git a/core-mod/extra/samurai/checksums b/core-mod/extra/samurai/checksums
new file mode 100644
index 0000000..c688a25
--- /dev/null
+++ b/core-mod/extra/samurai/checksums
@@ -0,0 +1 @@
+3b8cf51548dfc49b7efe035e191ff5e1963ebc4fe8f6064a5eefc5343eaf78a5
diff --git a/core-mod/extra/samurai/sources b/core-mod/extra/samurai/sources
new file mode 100644
index 0000000..2122189
--- /dev/null
+++ b/core-mod/extra/samurai/sources
@@ -0,0 +1 @@
+https://github.com/michaelforney/samurai/releases/download/1.2/samurai-1.2.tar.gz
diff --git a/core-mod/extra/samurai/version b/core-mod/extra/samurai/version
new file mode 100644
index 0000000..f76d834
--- /dev/null
+++ b/core-mod/extra/samurai/version
@@ -0,0 +1 @@
+1.2 1
diff --git a/core-mod/extra/sqlite/build b/core-mod/extra/sqlite/build
new file mode 100755
index 0000000..e5325a5
--- /dev/null
+++ b/core-mod/extra/sqlite/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+export CPPFLAGS="-DSQLITE_ENABLE_COLUMN_METADATA=1"
+
+sed -i 's/ -ltinfo//g' configure
+
+./configure \
+    --prefix=/usr \
+    --enable-threadsafe \
+    --enable-dynamic-extensions \
+    --enable-fts5
+
+make -j1
+make DESTDIR="$1" install
diff --git a/core-mod/extra/sqlite/checksums b/core-mod/extra/sqlite/checksums
new file mode 100644
index 0000000..54b3397
--- /dev/null
+++ b/core-mod/extra/sqlite/checksums
@@ -0,0 +1 @@
+bd90c3eb96bee996206b83be7065c9ce19aef38c3f4fb53073ada0d0b69bbce3
diff --git a/core-mod/extra/sqlite/depends b/core-mod/extra/sqlite/depends
new file mode 100644
index 0000000..f22003e
--- /dev/null
+++ b/core-mod/extra/sqlite/depends
@@ -0,0 +1 @@
+zlib
diff --git a/core-mod/extra/sqlite/sources b/core-mod/extra/sqlite/sources
new file mode 100644
index 0000000..84fc70a
--- /dev/null
+++ b/core-mod/extra/sqlite/sources
@@ -0,0 +1 @@
+https://sqlite.org/2021/sqlite-autoconf-3360000.tar.gz
diff --git a/core-mod/extra/sqlite/version b/core-mod/extra/sqlite/version
new file mode 100644
index 0000000..21a73e1
--- /dev/null
+++ b/core-mod/extra/sqlite/version
@@ -0,0 +1 @@
+3.36.0 1
diff --git a/core-mod/extra/strace/build b/core-mod/extra/strace/build
new file mode 100755
index 0000000..4012cb5
--- /dev/null
+++ b/core-mod/extra/strace/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-mpers
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/strace/checksums b/core-mod/extra/strace/checksums
new file mode 100644
index 0000000..6f5b7ce
--- /dev/null
+++ b/core-mod/extra/strace/checksums
@@ -0,0 +1 @@
+29171edf9d252f89c988a4c340dfdec662f458cb8c63d85431d64bab5911e7c4
diff --git a/core-mod/extra/strace/depends b/core-mod/extra/strace/depends
new file mode 100644
index 0000000..1f97bc3
--- /dev/null
+++ b/core-mod/extra/strace/depends
@@ -0,0 +1 @@
+linux-headers make
diff --git a/core-mod/extra/strace/sources b/core-mod/extra/strace/sources
new file mode 100644
index 0000000..c362f18
--- /dev/null
+++ b/core-mod/extra/strace/sources
@@ -0,0 +1 @@
+https://github.com/strace/strace/releases/download/v5.12/strace-5.12.tar.xz
diff --git a/core-mod/extra/strace/version b/core-mod/extra/strace/version
new file mode 100644
index 0000000..35970e0
--- /dev/null
+++ b/core-mod/extra/strace/version
@@ -0,0 +1 @@
+5.12 1
diff --git a/core-mod/extra/tiff/build b/core-mod/extra/tiff/build
new file mode 100755
index 0000000..eb4850d
--- /dev/null
+++ b/core-mod/extra/tiff/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-cxx \
+    --without-x
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/tiff/checksums b/core-mod/extra/tiff/checksums
new file mode 100644
index 0000000..a7f5914
--- /dev/null
+++ b/core-mod/extra/tiff/checksums
@@ -0,0 +1 @@
+0e46e5acb087ce7d1ac53cf4f56a09b221537fc86dfc5daaad1c2e89e1b37ac8
diff --git a/core-mod/extra/tiff/depends b/core-mod/extra/tiff/depends
new file mode 100644
index 0000000..59e7114
--- /dev/null
+++ b/core-mod/extra/tiff/depends
@@ -0,0 +1,3 @@
+libjpeg-turbo
+xz
+zlib
diff --git a/core-mod/extra/tiff/sources b/core-mod/extra/tiff/sources
new file mode 100644
index 0000000..2863900
--- /dev/null
+++ b/core-mod/extra/tiff/sources
@@ -0,0 +1 @@
+https://download.osgeo.org/libtiff/tiff-4.3.0.tar.gz
diff --git a/core-mod/extra/tiff/version b/core-mod/extra/tiff/version
new file mode 100644
index 0000000..1fa6c9a
--- /dev/null
+++ b/core-mod/extra/tiff/version
@@ -0,0 +1 @@
+4.3.0 1
diff --git a/core-mod/extra/tzdata/build b/core-mod/extra/tzdata/build
new file mode 100755
index 0000000..7e542ee
--- /dev/null
+++ b/core-mod/extra/tzdata/build
@@ -0,0 +1,13 @@
+#!/bin/sh -e
+
+pkg_dir=$1
+
+make CC="${CC:-cc}"
+make DESTDIR="$1" ZICDIR=/usr/bin install
+
+set -- africa asia australasia europe northamerica southamerica
+
+./zic -d "$pkg_dir/usr/share/zoneinfo" "$@"
+./zic -d "$pkg_dir/usr/share/zoneinfo/posix" "$@"
+./zic -d "$pkg_dir/usr/share/zoneinfo/right" -L leapseconds "$@"
+./zic -d "$pkg_dir/usr/share/zoneinfo" -p America/New_York
diff --git a/core-mod/extra/tzdata/checksums b/core-mod/extra/tzdata/checksums
new file mode 100644
index 0000000..b262b41
--- /dev/null
+++ b/core-mod/extra/tzdata/checksums
@@ -0,0 +1 @@
+bd7ecd99cbb0a2f15bb7e38be2cbc04dced89922fce4ac0ffcd1ca844ba9362f
diff --git a/core-mod/extra/tzdata/sources b/core-mod/extra/tzdata/sources
new file mode 100644
index 0000000..2421adf
--- /dev/null
+++ b/core-mod/extra/tzdata/sources
@@ -0,0 +1 @@
+https://github.com/eggert/tz/archive/2021a.tar.gz
diff --git a/core-mod/extra/tzdata/version b/core-mod/extra/tzdata/version
new file mode 100644
index 0000000..2221e5b
--- /dev/null
+++ b/core-mod/extra/tzdata/version
@@ -0,0 +1 @@
+2021a 1
diff --git a/core-mod/extra/util-linux/build b/core-mod/extra/util-linux/build
new file mode 100755
index 0000000..76c1f23
--- /dev/null
+++ b/core-mod/extra/util-linux/build
@@ -0,0 +1,23 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --bindir=/usr/bin \
+    --sbindir=/usr/bin \
+    --libdir=/usr/lib \
+    --enable-libuuid \
+    --enable-libblkid \
+    --enable-fsck \
+    --disable-makeinstall-chown \
+    --disable-rpath \
+    --without-udev \
+    --without-python \
+    --without-systemd
+
+make
+make DESTDIR="$1" install
+
+# Fix broken --sbindir.
+mv -f "$1/usr/sbin/"* "$1/usr/bin"
+rmdir "$1/usr/sbin"
diff --git a/core-mod/extra/util-linux/checksums b/core-mod/extra/util-linux/checksums
new file mode 100644
index 0000000..03c2476
--- /dev/null
+++ b/core-mod/extra/util-linux/checksums
@@ -0,0 +1 @@
+bd07b7e98839e0359842110525a3032fdb8eaf3a90bedde3dd1652d32d15cce5
diff --git a/core-mod/extra/util-linux/depends b/core-mod/extra/util-linux/depends
new file mode 100644
index 0000000..709a840
--- /dev/null
+++ b/core-mod/extra/util-linux/depends
@@ -0,0 +1,2 @@
+linux-headers make
+zlib
diff --git a/core-mod/extra/util-linux/sources b/core-mod/extra/util-linux/sources
new file mode 100644
index 0000000..43f8a92
--- /dev/null
+++ b/core-mod/extra/util-linux/sources
@@ -0,0 +1 @@
+https://cdn.kernel.org/pub/linux/utils/util-linux/v2.37/util-linux-2.37.tar.xz
diff --git a/core-mod/extra/util-linux/version b/core-mod/extra/util-linux/version
new file mode 100644
index 0000000..c304d36
--- /dev/null
+++ b/core-mod/extra/util-linux/version
@@ -0,0 +1 @@
+2.37 1
diff --git a/core-mod/extra/wpa_supplicant/build b/core-mod/extra/wpa_supplicant/build
new file mode 100755
index 0000000..8860314
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/build
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+# The wpa_supplicant package is built statically using
+# libnl-tiny which is a minimal version of libnl maintained
+# by OpenWRT.
+make CC="${CC:-cc}" ALL_LIBS=libnl-tiny.a -C libnl
+
+# The CFLAGS must be set to link to the above locally built
+# libnl-tiny library.
+export CFLAGS="$CFLAGS -I$PWD/libnl/include -L$PWD/libnl -lnl-tiny"
+export CFLAGS="$CFLAGS -static -D_GNU_SOURCE -DLIBNL1_COMPAT"
+
+cd wpa_supplicant
+
+make LIBDIR=/usr/lib BINDIR=/usr/bin DRV_LIBS="$CFLAGS" CC="${CC:-cc}"
+make LIBDIR=/usr/lib BINDIR=/usr/bin DESTDIR="$1" install
+
+install -Dm644 -t "$1/usr/share/man/man8" doc/docbook/*.8
+install -Dm644 -t "$1/usr/share/man/man5" doc/docbook/*.5
diff --git a/core-mod/extra/wpa_supplicant/checksums b/core-mod/extra/wpa_supplicant/checksums
new file mode 100644
index 0000000..06ed6d3
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/checksums
@@ -0,0 +1,3 @@
+fcbdee7b4a64bea8177973299c8c824419c413ec2e3a95db63dd6a5dc3541f17  wpa_supplicant-2.9.tar.gz
+d2b57597b234c84b113e7640064c3273616c0bf086ad223d71f49aaea086ad59  4225e93bec5304abee3386213213718367e54a93.tar.gz
+ea81361a44cede64fb42309e783f26ca1d0a4f6677a21550aad925b25405eeb0  .config
diff --git a/core-mod/extra/wpa_supplicant/depends b/core-mod/extra/wpa_supplicant/depends
new file mode 100644
index 0000000..86dfce4
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/depends
@@ -0,0 +1,2 @@
+libressl
+linux-headers make
diff --git a/core-mod/extra/wpa_supplicant/files/.config b/core-mod/extra/wpa_supplicant/files/.config
new file mode 100644
index 0000000..97808b5
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/files/.config
@@ -0,0 +1,551 @@
+# Example wpa_supplicant build time configuration
+#
+# This file lists the configuration options that are used when building the
+# hostapd binary. All lines starting with # are ignored. Configuration option
+# lines must be commented out complete, if they are not to be included, i.e.,
+# just setting VARIABLE=n is not disabling that variable.
+#
+# This file is included in Makefile, so variables like CFLAGS and LIBS can also
+# be modified from here. In most cases, these lines should use += in order not
+# to override previous values of the variables.
+
+
+# Uncomment following two lines and fix the paths if you have installed OpenSSL
+# or GnuTLS in non-default location
+#CFLAGS += -I/usr/local/openssl/include
+#LIBS += -L/usr/local/openssl/lib
+
+# Some Red Hat versions seem to include kerberos header files from OpenSSL, but
+# the kerberos files are not in the default include path. Following line can be
+# used to fix build issues on such systems (krb5.h not found).
+#CFLAGS += -I/usr/include/kerberos
+
+# Driver interface for generic Linux wireless extensions
+# Note: WEXT is deprecated in the current Linux kernel version and no new
+# functionality is added to it. nl80211-based interface is the new
+# replacement for WEXT and its use allows wpa_supplicant to properly control
+# the driver to improve existing functionality like roaming and to support new
+# functionality.
+CONFIG_DRIVER_WEXT=y
+
+# Driver interface for Linux drivers using the nl80211 kernel interface
+CONFIG_DRIVER_NL80211=y
+
+# QCA vendor extensions to nl80211
+#CONFIG_DRIVER_NL80211_QCA=y
+
+# driver_nl80211.c requires libnl. If you are compiling it yourself
+# you may need to point hostapd to your version of libnl.
+#
+#CFLAGS += -I$<path to libnl include files>
+#LIBS += -L$<path to libnl library files>
+
+# Use libnl v2.0 (or 3.0) libraries.
+CONFIG_LIBNL20=y
+CONFIG_LIBNL_TINY=y
+
+# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored)
+#CONFIG_LIBNL32 is not set
+
+
+# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
+#CONFIG_DRIVER_BSD=y
+#CFLAGS += -I/usr/local/include
+#LIBS += -L/usr/local/lib
+#LIBS_p += -L/usr/local/lib
+#LIBS_c += -L/usr/local/lib
+
+# Driver interface for Windows NDIS
+#CONFIG_DRIVER_NDIS=y
+#CFLAGS += -I/usr/include/w32api/ddk
+#LIBS += -L/usr/local/lib
+# For native build using mingw
+#CONFIG_NATIVE_WINDOWS=y
+# Additional directories for cross-compilation on Linux host for mingw target
+#CFLAGS += -I/opt/mingw/mingw32/include/ddk
+#LIBS += -L/opt/mingw/mingw32/lib
+#CC=mingw32-gcc
+# By default, driver_ndis uses WinPcap for low-level operations. This can be
+# replaced with the following option which replaces WinPcap calls with NDISUIO.
+# However, this requires that WZC is disabled (net stop wzcsvc) before starting
+# wpa_supplicant.
+# CONFIG_USE_NDISUIO=y
+
+# Driver interface for wired Ethernet drivers
+CONFIG_DRIVER_WIRED=y
+
+# Driver interface for the Broadcom RoboSwitch family
+#CONFIG_DRIVER_ROBOSWITCH=y
+
+# Driver interface for no driver (e.g., WPS ER only)
+#CONFIG_DRIVER_NONE=y
+
+# Solaris libraries
+#LIBS += -lsocket -ldlpi -lnsl
+#LIBS_c += -lsocket
+
+# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is
+# included)
+CONFIG_IEEE8021X_EAPOL=y
+
+# EAP-MD5
+CONFIG_EAP_MD5=y
+
+# EAP-MSCHAPv2
+CONFIG_EAP_MSCHAPV2=y
+
+# EAP-TLS
+CONFIG_EAP_TLS=y
+
+# EAL-PEAP
+CONFIG_EAP_PEAP=y
+
+# EAP-TTLS
+CONFIG_EAP_TTLS=y
+
+# EAP-FAST
+# Note: If OpenSSL is used as the TLS library, OpenSSL 1.0 or newer is needed
+# for EAP-FAST support. Older OpenSSL releases would need to be patched, e.g.,
+# with openssl-0.9.8x-tls-extensions.patch, to add the needed functions.
+#CONFIG_EAP_FAST=y
+
+# EAP-GTC
+CONFIG_EAP_GTC=y
+
+# EAP-OTP
+CONFIG_EAP_OTP=y
+
+# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
+#CONFIG_EAP_SIM=y
+
+# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
+#CONFIG_EAP_PSK=y
+
+# EAP-pwd (secure authentication using only a password)
+CONFIG_EAP_PWD=y
+
+# EAP-PAX
+#CONFIG_EAP_PAX=y
+
+# LEAP
+CONFIG_EAP_LEAP=y
+
+# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used)
+#CONFIG_EAP_AKA=y
+
+# EAP-AKA' (enable CONFIG_PCSC, if EAP-AKA' is used).
+# This requires CONFIG_EAP_AKA to be enabled, too.
+#CONFIG_EAP_AKA_PRIME=y
+
+# Enable USIM simulator (Milenage) for EAP-AKA
+#CONFIG_USIM_SIMULATOR=y
+
+# EAP-SAKE
+#CONFIG_EAP_SAKE=y
+
+# EAP-GPSK
+#CONFIG_EAP_GPSK=y
+# Include support for optional SHA256 cipher suite in EAP-GPSK
+#CONFIG_EAP_GPSK_SHA256=y
+
+# EAP-TNC and related Trusted Network Connect support (experimental)
+#CONFIG_EAP_TNC=y
+
+# Wi-Fi Protected Setup (WPS)
+CONFIG_WPS=y
+# Enable WPS external registrar functionality
+#CONFIG_WPS_ER=y
+# Disable credentials for an open network by default when acting as a WPS
+# registrar.
+#CONFIG_WPS_REG_DISABLE_OPEN=y
+# Enable WPS support with NFC config method
+#CONFIG_WPS_NFC=y
+
+# EAP-IKEv2
+#CONFIG_EAP_IKEV2=y
+
+# EAP-EKE
+#CONFIG_EAP_EKE=y
+
+# PKCS#12 (PFX) support (used to read private key and certificate file from
+# a file that usually has extension .p12 or .pfx)
+CONFIG_PKCS12=y
+
+# Smartcard support (i.e., private key on a smartcard), e.g., with openssl
+# engine.
+CONFIG_SMARTCARD=y
+
+# PC/SC interface for smartcards (USIM, GSM SIM)
+# Enable this if EAP-SIM or EAP-AKA is included
+#CONFIG_PCSC=y
+
+# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
+#CONFIG_HT_OVERRIDES=y
+
+# Support VHT overrides (disable VHT, mask MCS rates, etc.)
+#CONFIG_VHT_OVERRIDES=y
+
+# Development testing
+#CONFIG_EAPOL_TEST=y
+
+# Select control interface backend for external programs, e.g, wpa_cli:
+# unix = UNIX domain sockets (default for Linux/*BSD)
+# udp = UDP sockets using localhost (127.0.0.1)
+# udp6 = UDP IPv6 sockets using localhost (::1)
+# named_pipe = Windows Named Pipe (default for Windows)
+# udp-remote = UDP sockets with remote access (only for tests systems/purpose)
+# udp6-remote = UDP IPv6 sockets with remote access (only for tests purpose)
+# y = use default (backwards compatibility)
+# If this option is commented out, control interface is not included in the
+# build.
+CONFIG_CTRL_IFACE=y
+
+# Include support for GNU Readline and History Libraries in wpa_cli.
+# When building a wpa_cli binary for distribution, please note that these
+# libraries are licensed under GPL and as such, BSD license may not apply for
+# the resulting binary.
+#CONFIG_READLINE=n
+
+# Include internal line edit mode in wpa_cli. This can be used as a replacement
+# for GNU Readline to provide limited command line editing and history support.
+CONFIG_WPA_CLI_EDIT=y
+
+# Remove debugging code that is printing out debug message to stdout.
+# This can be used to reduce the size of the wpa_supplicant considerably
+# if debugging code is not needed. The size reduction can be around 35%
+# (e.g., 90 kB).
+#CONFIG_NO_STDOUT_DEBUG=y
+
+# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save
+# 35-50 kB in code size.
+#CONFIG_NO_WPA=y
+
+# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support
+# This option can be used to reduce code size by removing support for
+# converting ASCII passphrases into PSK. If this functionality is removed, the
+# PSK can only be configured as the 64-octet hexstring (e.g., from
+# wpa_passphrase). This saves about 0.5 kB in code size.
+#CONFIG_NO_WPA_PASSPHRASE=y
+
+# Disable scan result processing (ap_mode=1) to save code size by about 1 kB.
+# This can be used if ap_scan=1 mode is never enabled.
+#CONFIG_NO_SCAN_PROCESSING=y
+
+# Select configuration backend:
+# file = text file (e.g., wpa_supplicant.conf; note: the configuration file
+#	path is given on command line, not here; this option is just used to
+#	select the backend that allows configuration files to be used)
+# winreg = Windows registry (see win_example.reg for an example)
+CONFIG_BACKEND=file
+
+# Remove configuration write functionality (i.e., to allow the configuration
+# file to be updated based on runtime configuration changes). The runtime
+# configuration can still be changed, the changes are just not going to be
+# persistent over restarts. This option can be used to reduce code size by
+# about 3.5 kB.
+#CONFIG_NO_CONFIG_WRITE=y
+
+# Remove support for configuration blobs to reduce code size by about 1.5 kB.
+#CONFIG_NO_CONFIG_BLOBS=y
+
+# Select program entry point implementation:
+# main = UNIX/POSIX like main() function (default)
+# main_winsvc = Windows service (read parameters from registry)
+# main_none = Very basic example (development use only)
+#CONFIG_MAIN=main
+
+# Select wrapper for operating system and C library specific functions
+# unix = UNIX/POSIX like systems (default)
+# win32 = Windows systems
+# none = Empty template
+#CONFIG_OS=unix
+
+# Select event loop implementation
+# eloop = select() loop (default)
+# eloop_win = Windows events and WaitForMultipleObject() loop
+#CONFIG_ELOOP=eloop
+
+# Should we use poll instead of select? Select is used by default.
+#CONFIG_ELOOP_POLL=y
+
+# Should we use epoll instead of select? Select is used by default.
+#CONFIG_ELOOP_EPOLL=y
+
+# Should we use kqueue instead of select? Select is used by default.
+#CONFIG_ELOOP_KQUEUE=y
+
+# Select layer 2 packet implementation
+# linux = Linux packet socket (default)
+# pcap = libpcap/libdnet/WinPcap
+# freebsd = FreeBSD libpcap
+# winpcap = WinPcap with receive thread
+# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)
+# none = Empty template
+#CONFIG_L2_PACKET=linux
+
+# Disable Linux packet socket workaround applicable for station interface
+# in a bridge for EAPOL frames. This should be uncommented only if the kernel
+# is known to not have the regression issue in packet socket behavior with
+# bridge interfaces (commit 'bridge: respect RFC2863 operational state')').
+#CONFIG_NO_LINUX_PACKET_SOCKET_WAR=y
+
+# PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
+CONFIG_PEERKEY=y
+
+# IEEE 802.11w (management frame protection), also known as PMF
+# Driver support is also needed for IEEE 802.11w.
+#CONFIG_IEEE80211W=y
+
+# Select TLS implementation
+# openssl = OpenSSL (default)
+# gnutls = GnuTLS
+# internal = Internal TLSv1 implementation (experimental)
+# none = Empty template
+#CONFIG_TLS=openssl
+
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1)
+# can be enabled to get a stronger construction of messages when block ciphers
+# are used. It should be noted that some existing TLS v1.0 -based
+# implementation may not be compatible with TLS v1.1 message (ClientHello is
+# sent prior to negotiating which version will be used)
+#CONFIG_TLSV11=y
+
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2)
+# can be enabled to enable use of stronger crypto algorithms. It should be
+# noted that some existing TLS v1.0 -based implementation may not be compatible
+# with TLS v1.2 message (ClientHello is sent prior to negotiating which version
+# will be used)
+#CONFIG_TLSV12=y
+
+# If CONFIG_TLS=internal is used, additional library and include paths are
+# needed for LibTomMath. Alternatively, an integrated, minimal version of
+# LibTomMath can be used. See beginning of libtommath.c for details on benefits
+# and drawbacks of this option.
+#CONFIG_INTERNAL_LIBTOMMATH=y
+#ifndef CONFIG_INTERNAL_LIBTOMMATH
+#LTM_PATH=/usr/src/libtommath-0.39
+#CFLAGS += -I$(LTM_PATH)
+#LIBS += -L$(LTM_PATH)
+#LIBS_p += -L$(LTM_PATH)
+#endif
+# At the cost of about 4 kB of additional binary size, the internal LibTomMath
+# can be configured to include faster routines for exptmod, sqr, and div to
+# speed up DH and RSA calculation considerably
+#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
+
+# Include NDIS event processing through WMI into wpa_supplicant/wpasvc.
+# This is only for Windows builds and requires WMI-related header files and
+# WbemUuid.Lib from Platform SDK even when building with MinGW.
+#CONFIG_NDIS_EVENTS_INTEGRATED=y
+#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib"
+
+# Add support for old DBus control interface
+# (fi.epitest.hostap.WPASupplicant)
+#CONFIG_CTRL_IFACE_DBUS=n
+
+# Add support for new DBus control interface
+# (fi.w1.hostap.wpa_supplicant1)
+# CONFIG_CTRL_IFACE_DBUS_NEW=n
+
+# Add introspection support for new DBus control interface
+# CONFIG_CTRL_IFACE_DBUS_INTRO=n
+
+# Add support for loading EAP methods dynamically as shared libraries.
+# When this option is enabled, each EAP method can be either included
+# statically (CONFIG_EAP_<method>=y) or dynamically (CONFIG_EAP_<method>=dyn).
+# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to
+# be loaded in the beginning of the wpa_supplicant configuration file
+# (see load_dynamic_eap parameter in the example file) before being used in
+# the network blocks.
+#
+# Note that some shared parts of EAP methods are included in the main program
+# and in order to be able to use dynamic EAP methods using these parts, the
+# main program must have been build with the EAP method enabled (=y or =dyn).
+# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries
+# unless at least one of them was included in the main build to force inclusion
+# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included
+# in the main build to be able to load these methods dynamically.
+#
+# Please also note that using dynamic libraries will increase the total binary
+# size. Thus, it may not be the best option for targets that have limited
+# amount of memory/flash.
+#CONFIG_DYNAMIC_EAP_METHODS=y
+
+# IEEE Std 802.11r-2008 (Fast BSS Transition)
+#CONFIG_IEEE80211R=y
+
+# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
+CONFIG_DEBUG_FILE=y
+
+# Send debug messages to syslog instead of stdout
+CONFIG_DEBUG_SYSLOG=y
+# Set syslog facility for debug messages
+CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
+
+# Add support for sending all debug messages (regardless of debug verbosity)
+# to the Linux kernel tracing facility. This helps debug the entire stack by
+# making it easy to record everything happening from the driver up into the
+# same file, e.g., using trace-cmd.
+#CONFIG_DEBUG_LINUX_TRACING=y
+
+# Add support for writing debug log to Android logcat instead of standard
+# output
+#CONFIG_ANDROID_LOG=y
+
+# Enable privilege separation (see README 'Privilege separation' for details)
+#CONFIG_PRIVSEP=y
+
+# Enable mitigation against certain attacks against TKIP by delaying Michael
+# MIC error reports by a random amount of time between 0 and 60 seconds
+#CONFIG_DELAYED_MIC_ERROR_REPORT=y
+
+# Enable tracing code for developer debugging
+# This tracks use of memory allocations and other registrations and reports
+# incorrect use with a backtrace of call (or allocation) location.
+#CONFIG_WPA_TRACE=y
+# For BSD, uncomment these.
+#LIBS += -lexecinfo
+#LIBS_p += -lexecinfo
+#LIBS_c += -lexecinfo
+
+# Use libbfd to get more details for developer debugging
+# This enables use of libbfd to get more detailed symbols for the backtraces
+# generated by CONFIG_WPA_TRACE=y.
+#CONFIG_WPA_TRACE_BFD=y
+# For BSD, uncomment these.
+#LIBS += -lbfd -liberty -lz
+#LIBS_p += -lbfd -liberty -lz
+#LIBS_c += -lbfd -liberty -lz
+
+# wpa_supplicant depends on strong random number generation being available
+# from the operating system. os_get_random() function is used to fetch random
+# data when needed, e.g., for key generation. On Linux and BSD systems, this
+# works by reading /dev/urandom. It should be noted that the OS entropy pool
+# needs to be properly initialized before wpa_supplicant is started. This is
+# important especially on embedded devices that do not have a hardware random
+# number generator and may by default start up with minimal entropy available
+# for random number generation.
+#
+# As a safety net, wpa_supplicant is by default trying to internally collect
+# additional entropy for generating random data to mix in with the data fetched
+# from the OS. This by itself is not considered to be very strong, but it may
+# help in cases where the system pool is not initialized properly. However, it
+# is very strongly recommended that the system pool is initialized with enough
+# entropy either by using hardware assisted random number generator or by
+# storing state over device reboots.
+#
+# wpa_supplicant can be configured to maintain its own entropy store over
+# restarts to enhance random number generation. This is not perfect, but it is
+# much more secure than using the same sequence of random numbers after every
+# reboot. This can be enabled with -e<entropy file> command line option. The
+# specified file needs to be readable and writable by wpa_supplicant.
+#
+# If the os_get_random() is known to provide strong random data (e.g., on
+# Linux/BSD, the board in question is known to have reliable source of random
+# data from /dev/urandom), the internal wpa_supplicant random pool can be
+# disabled. This will save some in binary size and CPU use. However, this
+# should only be considered for builds that are known to be used on devices
+# that meet the requirements described above.
+CONFIG_NO_RANDOM_POOL=y
+
+# IEEE 802.11n (High Throughput) support (mainly for AP mode)
+#CONFIG_IEEE80211N=y
+
+# IEEE 802.11ac (Very High Throughput) support (mainly for AP mode)
+# (depends on CONFIG_IEEE80211N)
+#CONFIG_IEEE80211AC=y
+
+# Wireless Network Management (IEEE Std 802.11v-2011)
+# Note: This is experimental and not complete implementation.
+#CONFIG_WNM=y
+
+# Interworking (IEEE 802.11u)
+# This can be used to enable functionality to improve interworking with
+# external networks (GAS/ANQP to learn more about the networks and network
+# selection based on available credentials).
+#CONFIG_INTERWORKING=y
+
+# Hotspot 2.0
+#CONFIG_HS20=y
+
+# Enable interface matching in wpa_supplicant
+CONFIG_MATCH_IFACE=y
+
+# Disable roaming in wpa_supplicant
+#CONFIG_NO_ROAMING=y
+
+# AP mode operations with wpa_supplicant
+# This can be used for controlling AP mode operations with wpa_supplicant. It
+# should be noted that this is mainly aimed at simple cases like
+# WPA2-Personal while more complex configurations like WPA2-Enterprise with an
+# external RADIUS server can be supported with hostapd.
+CONFIG_AP=y
+
+# P2P (Wi-Fi Direct)
+# This can be used to enable P2P support in wpa_supplicant. See README-P2P for
+# more information on P2P operations.
+CONFIG_P2P=y
+
+# Enable TDLS support
+#CONFIG_TDLS=y
+
+# Wi-Fi Direct
+# This can be used to enable Wi-Fi Direct extensions for P2P using an external
+# program to control the additional information exchanges in the messages.
+#CONFIG_WIFI_DISPLAY=y
+
+# Autoscan
+# This can be used to enable automatic scan support in wpa_supplicant.
+# See wpa_supplicant.conf for more information on autoscan usage.
+#
+# Enabling directly a module will enable autoscan support.
+# For exponential module:
+#CONFIG_AUTOSCAN_EXPONENTIAL=y
+# For periodic module:
+#CONFIG_AUTOSCAN_PERIODIC=y
+
+# Password (and passphrase, etc.) backend for external storage
+# These optional mechanisms can be used to add support for storing passwords
+# and other secrets in external (to wpa_supplicant) location. This allows, for
+# example, operating system specific key storage to be used
+#
+# External password backend for testing purposes (developer use)
+#CONFIG_EXT_PASSWORD_TEST=y
+
+# Enable Fast Session Transfer (FST)
+#CONFIG_FST=y
+
+# Enable CLI commands for FST testing
+#CONFIG_FST_TEST=y
+
+# OS X builds. This is only for building eapol_test.
+#CONFIG_OSX=y
+
+# Automatic Channel Selection
+# This will allow wpa_supplicant to pick the channel automatically when channel
+# is set to "0".
+#
+# TODO: Extend parser to be able to parse "channel=acs_survey" as an alternative
+# to "channel=0". This would enable us to eventually add other ACS algorithms in
+# similar way.
+#
+# Automatic selection is currently only done through initialization, later on
+# we hope to do background checks to keep us moving to more ideal channels as
+# time goes by. ACS is currently only supported through the nl80211 driver and
+# your driver must have survey dump capability that is filled by the driver
+# during scanning.
+#
+# TODO: In analogy to hostapd be able to customize the ACS survey algorithm with
+# a newly to create wpa_supplicant.conf variable acs_num_scans.
+#
+# Supported ACS drivers:
+# * ath9k
+# * ath5k
+# * ath10k
+#
+# For more details refer to:
+# http://wireless.kernel.org/en/users/Documentation/acs
+#CONFIG_ACS=y
+
+# Support Multi Band Operation
+#CONFIG_MBO=y
diff --git a/core-mod/extra/wpa_supplicant/post-install b/core-mod/extra/wpa_supplicant/post-install
new file mode 100755
index 0000000..a50eb53
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/post-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+cat <<EOF
+
+NOTE: You can now remove 'libnl' as wpa_supplicant
+      no longer needs it (static libnl-tiny).
+
+EOF
diff --git a/core-mod/extra/wpa_supplicant/sources b/core-mod/extra/wpa_supplicant/sources
new file mode 100644
index 0000000..14ad689
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/sources
@@ -0,0 +1,3 @@
+https://w1.fi/releases/wpa_supplicant-2.9.tar.gz
+https://github.com/sabotage-linux/libnl-tiny/archive/4225e93bec5304abee3386213213718367e54a93.tar.gz libnl
+files/.config wpa_supplicant/
diff --git a/core-mod/extra/wpa_supplicant/version b/core-mod/extra/wpa_supplicant/version
new file mode 100644
index 0000000..55f0054
--- /dev/null
+++ b/core-mod/extra/wpa_supplicant/version
@@ -0,0 +1 @@
+2.9 5
diff --git a/core-mod/extra/x264/build b/core-mod/extra/x264/build
new file mode 100755
index 0000000..0566078
--- /dev/null
+++ b/core-mod/extra/x264/build
@@ -0,0 +1,16 @@
+#!/bin/sh -e
+
+export CC="${CC:-cc}"
+export CXX="${CC:-c++}"
+
+patch -p1 < x264-no-bash.patch
+
+./configure \
+    --prefix=/usr \
+    --disable-swscale \
+    --enable-static \
+    --enable-pic \
+    --enable-shared
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/x264/checksums b/core-mod/extra/x264/checksums
new file mode 100644
index 0000000..2243eef
--- /dev/null
+++ b/core-mod/extra/x264/checksums
@@ -0,0 +1,2 @@
+404e7ba61123720a7b2cc45356ace6859860ef4ce3503758465e92c1ce11995e  x264-snapshot-20190812-2245-stable.tar.bz2
+a78a518c3685813fdfdc8813acd48e292968892e6ff5ea60d91f5c514c35acee  x264-no-bash.patch
diff --git a/core-mod/extra/x264/depends b/core-mod/extra/x264/depends
new file mode 100644
index 0000000..116f6b2
--- /dev/null
+++ b/core-mod/extra/x264/depends
@@ -0,0 +1 @@
+nasm make
diff --git a/core-mod/extra/x264/patches/x264-no-bash.patch b/core-mod/extra/x264/patches/x264-no-bash.patch
new file mode 100644
index 0000000..07e8dd2
--- /dev/null
+++ b/core-mod/extra/x264/patches/x264-no-bash.patch
@@ -0,0 +1,222 @@
+diff --git a/configure b/configure-posix
+index 3cf63e0..1e1fce5 100755
+--- a/configure-posix
++++ b/configure
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+
+ if test x"$1" = x"-h" -o x"$1" = x"--help" ; then
+ cat <<EOF
+@@ -59,7 +59,7 @@ exit 1
+ fi
+
+ log_check() {
+-    echo -n "checking $1... " >> config.log
++    echo "checking $1... " >> config.log
+ }
+
+ log_ok() {
+@@ -78,13 +78,12 @@ cc_cflags() {
+     # several non gcc compilers issue an incredibly large number of warnings on high warning levels,
+     # suppress them by reducing the warning level rather than having to use #pragmas
+     for arg in $*; do
+-        [[ "$arg" = -falign-loops* ]] && arg=
++        case $arg in
++            -falign-loops*|-mpreferred-stack-boundary*|-l*|-L*) arg=
++        esac
+         [ "$arg" = -fno-tree-vectorize ] && arg=
+         [ "$arg" = -Wshadow ] && arg=
+         [ "$arg" = -Wno-maybe-uninitialized ] && arg=
+-        [[ "$arg" = -mpreferred-stack-boundary* ]] && arg=
+-        [[ "$arg" = -l* ]] && arg=
+-        [[ "$arg" = -L* ]] && arg=
+         if [ $compiler_style = MS ]; then
+             [ "$arg" = -ffast-math ] && arg="-fp:fast"
+             [ "$arg" = -Wall ] && arg=
+@@ -100,14 +99,14 @@ cc_cflags() {
+         fi
+         [ $compiler = CL -a "$arg" = -O3 ] && arg=-O2
+
+-        [ -n "$arg" ] && echo -n "$arg "
++        [ -n "$arg" ] && printf %s "$arg "
+     done
+ }
+
+ cl_ldflags() {
+     for arg in $*; do
+-        arg=${arg/LIBPATH/libpath}
+-        [ "${arg#-libpath:}" == "$arg" -a "${arg#-l}" != "$arg" ] && arg=${arg#-l}.lib
++        arg=$(echo "$arg" | sed -e 's/LIBPATH/libpath/')
++        [ "${arg#-libpath:}" = "$arg" -a "${arg#-l}" != "$arg" ] && arg=${arg#-l}.lib
+         [ "${arg#-L}" != "$arg" ] && arg=-libpath:${arg#-L}
+         [ "$arg" = -Wl,--large-address-aware ] && arg=-largeaddressaware
+         [ "$arg" = -s ] && arg=
+@@ -116,14 +115,17 @@ cl_ldflags() {
+         [ "$arg" = -Werror ] && arg=
+         [ "$arg" = -Wshadow ] && arg=
+         [ "$arg" = -Wmaybe-uninitialized ] && arg=
+-        [[ "$arg" = -Qdiag-error* ]] && arg=
+
+-        arg=${arg/pthreadGC/pthreadVC}
++        case $arg in
++            -Qdiag-error*) arg=
++        esac
++
++        arg=$(echo "$arg" | sed -e 's/pthreadGC/pthreadVC/')
+         [ "$arg" = avifil32.lib ] && arg=vfw32.lib
+         [ "$arg" = gpac_static.lib ] && arg=libgpac_static.lib
+         [ "$arg" = x264.lib ] && arg=libx264.lib
+
+-        [ -n "$arg" ] && echo -n "$arg "
++        [ -n "$arg" ] && printf %s "$arg "
+     done
+ }
+
+@@ -180,7 +182,7 @@ cpp_check() {
+     for arg in $1; do
+         echo "#include <$arg>" >> conftest.c
+     done
+-    echo -e "#if !($3) \n#error $4 \n#endif " >> conftest.c
++    printf '%b\n' "#if !($3) \n#error $4 \n#endif " >> conftest.c
+     if [ $compiler_style = MS ]; then
+         cpp_cmd="$CC conftest.c $(cc_cflags $CFLAGS $2) -P"
+     else
+@@ -329,11 +331,15 @@ rm -rf conftest*
+
+ # Construct a path to the specified directory relative to the working directory
+ relative_path() {
+-    local base="${PWD%/}"
+-    local path="$(cd "$1" >/dev/null; printf '%s/.' "${PWD%/}")"
+-    local up=''
++    base="${PWD%/}"
++    path="$(cd "$1" >/dev/null; printf '%s/.' "${PWD%/}")"
++    up=''
++
++    while :; do
++        case $path in
++            "$base/"*) break ;;
++        esac
+
+-    while [[ $path != "$base/"* ]]; do
+         base="${base%/*}"
+         up="../$up"
+     done
+@@ -564,48 +570,6 @@ trap 'rm -rf conftest*' EXIT
+ # test for use of compilers that require specific handling
+ cc_base="$(basename "$CC")"
+ QPRE="-"
+-if [[ $host_os = mingw* || $host_os = cygwin* ]]; then
+-    if [[ "$cc_base" = icl || "$cc_base" = icl[\ .]* ]]; then
+-        # Windows Intel Compiler creates dependency generation with absolute Windows paths, Cygwin's make does not support Windows paths.
+-        [[ $host_os = cygwin* ]] && die "Windows Intel Compiler support requires MSYS"
+-        compiler=ICL
+-        compiler_style=MS
+-        CFLAGS="$CFLAGS -Qstd=c99 -nologo -Qms0 -DHAVE_STRING_H -I\$(SRCPATH)/extras"
+-        QPRE="-Q"
+-        cpp_check '' '' '_MSC_VER >= 1400' || die "Windows Intel Compiler support requires Visual Studio 2005 or newer"
+-        if cpp_check '' '' 'defined(_M_AMD64) || defined(_M_X64)' ; then
+-            host_cpu=x86_64
+-        elif cpp_check '' '' 'defined(_M_IX86)' ; then
+-            host_cpu=i486
+-        fi
+-        if cc_check '' -Qdiag-error:10006,10157 ; then
+-            CHECK_CFLAGS="$CHECK_CFLAGS -Qdiag-error:10006,10157"
+-        fi
+-    elif [[ "$cc_base" = cl || "$cc_base" = cl[\ .]* ]]; then
+-        # Standard Microsoft Visual Studio
+-        compiler=CL
+-        compiler_style=MS
+-        CFLAGS="$CFLAGS -nologo -GS- -DHAVE_STRING_H -I\$(SRCPATH)/extras"
+-        cpp_check '' '' '_MSC_VER > 1800 || (_MSC_VER == 1800 && _MSC_FULL_VER >= 180030324)' || die "Microsoft Visual Studio support requires Visual Studio 2013 Update 2 or newer"
+-        if cpp_check '' '' 'defined(_M_AMD64) || defined(_M_X64)' ; then
+-            host_cpu=x86_64
+-        elif cpp_check '' '' 'defined(_M_IX86)' ; then
+-            host_cpu=i486
+-        elif cpp_check '' '' 'defined(_M_ARM64)' ; then
+-            host_cpu=aarch64
+-        elif cpp_check '' '' 'defined(_M_ARM)' ; then
+-            host_cpu=arm
+-        fi
+-    else
+-        # MinGW uses broken pre-VS2015 Microsoft printf functions unless it's told to use the POSIX ones.
+-        CFLAGS="$CFLAGS -D_POSIX_C_SOURCE=200112L"
+-    fi
+-else
+-    if [[ "$cc_base" = icc || "$cc_base" = icc[\ .]* ]]; then
+-        AR="xiar"
+-        compiler=ICC
+-    fi
+-fi
+
+ if [ $compiler = GNU ]; then
+     if cc_check '' -Werror=unknown-warning-option ; then
+@@ -653,18 +617,6 @@ case $host_os in
+         define HAVE_MALLOC_H
+         libm="-lm"
+         ;;
+-    cygwin*|mingw*|msys*)
+-        EXE=".exe"
+-        if [[ $host_os = cygwin* ]] && cpp_check "" "" "defined(__CYGWIN__)" ; then
+-            SYS="CYGWIN"
+-            define HAVE_MALLOC_H
+-        else
+-            SYS="WINDOWS"
+-            DEVNULL="NUL"
+-            cc_check '' -lshell32 && LDFLAGSCLI="$LDFLAGSCLI -lshell32"
+-            [ $compiler = GNU ] && RC="${RC-${cross_prefix}windres}" || RC="${RC-rc.exe}"
+-        fi
+-        ;;
+     sunos*|solaris*)
+         SYS="SunOS"
+         define HAVE_MALLOC_H
+@@ -705,30 +657,6 @@ LDFLAGS="$LDFLAGS $libm"
+ stack_alignment=4
+ case $host_cpu in
+     i*86)
+-        ARCH="X86"
+-        AS="${AS-nasm}"
+-        AS_EXT=".asm"
+-        ASFLAGS="$ASFLAGS -DARCH_X86_64=0 -I\$(SRCPATH)/common/x86/"
+-        if [ $compiler = GNU ]; then
+-            if [[ "$asm" == auto && "$CFLAGS" != *-march* ]]; then
+-                CFLAGS="$CFLAGS -march=i686"
+-            fi
+-            if [[ "$asm" == auto && "$CFLAGS" != *-mfpmath* ]]; then
+-                CFLAGS="$CFLAGS -mfpmath=sse -msse -msse2"
+-            fi
+-            CFLAGS="-m32 $CFLAGS"
+-            LDFLAGS="-m32 $LDFLAGS"
+-        fi
+-        if [ "$SYS" = MACOSX ]; then
+-            ASFLAGS="$ASFLAGS -f macho32 -DPREFIX"
+-        elif [ "$SYS" = WINDOWS -o "$SYS" = CYGWIN ]; then
+-            ASFLAGS="$ASFLAGS -f win32 -DPREFIX"
+-            LDFLAGS="$LDFLAGS -Wl,--large-address-aware"
+-            [ $compiler = GNU ] && LDFLAGS="$LDFLAGS -Wl,--dynamicbase,--nxcompat,--tsaware"
+-            [ $compiler = GNU ] && RCFLAGS="--target=pe-i386 $RCFLAGS"
+-        else
+-            ASFLAGS="$ASFLAGS -f elf32"
+-        fi
+         ;;
+     x86_64)
+         ARCH="X86_64"
+@@ -931,7 +859,7 @@ fi
+
+ if [ $asm = auto -a $ARCH = ARM ] ; then
+     # set flags so neon is built by default
+-    [ $compiler == CL ] || echo $CFLAGS | grep -Eq '(-mcpu|-march|-mfpu)' || CFLAGS="$CFLAGS -mcpu=cortex-a8 -mfpu=neon"
++    [ $compiler = CL ] || echo $CFLAGS | grep -Eq '(-mcpu|-march|-mfpu)' || CFLAGS="$CFLAGS -mcpu=cortex-a8 -mfpu=neon"
+
+     cc_check '' '' '__asm__("add r0, r1, r2");' && define HAVE_ARM_INLINE_ASM
+     if [ $compiler = CL ] && cpp_check '' '' 'defined(_M_ARM) && _M_ARM >= 7' ; then
+@@ -1576,7 +1504,8 @@ cat conftest.log >> config.log
+ cat conftest.log
+
+ [ "$SRCPATH" != "." ] && ln -sf ${SRCPATH}/Makefile ./Makefile
+-mkdir -p common/{aarch64,arm,mips,ppc,x86} encoder extras filters/video input output tools
++mkdir -p common/aarch64 common/arm common/mips common/ppc common/x86
++mkdir -p encoder extras filters/video input output tools
+
+ echo
+ echo "You can run 'make' or 'make fprofiled' now."
diff --git a/core-mod/extra/x264/sources b/core-mod/extra/x264/sources
new file mode 100644
index 0000000..ec3be5c
--- /dev/null
+++ b/core-mod/extra/x264/sources
@@ -0,0 +1,2 @@
+https://download.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20190812-2245-stable.tar.bz2
+patches/x264-no-bash.patch
diff --git a/core-mod/extra/x264/version b/core-mod/extra/x264/version
new file mode 100644
index 0000000..c416a33
--- /dev/null
+++ b/core-mod/extra/x264/version
@@ -0,0 +1 @@
+20190812-2245 4
diff --git a/core-mod/extra/x265/build b/core-mod/extra/x265/build
new file mode 100755
index 0000000..2bc1c91
--- /dev/null
+++ b/core-mod/extra/x265/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+cmake source \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release
+
+cmake --build .
+cmake --install .
diff --git a/core-mod/extra/x265/checksums b/core-mod/extra/x265/checksums
new file mode 100644
index 0000000..5e3f312
--- /dev/null
+++ b/core-mod/extra/x265/checksums
@@ -0,0 +1 @@
+5ca3403c08de4716719575ec56c686b1eb55b078c0fe50a064dcf1ac20af1618
diff --git a/core-mod/extra/x265/depends b/core-mod/extra/x265/depends
new file mode 100644
index 0000000..8e82f95
--- /dev/null
+++ b/core-mod/extra/x265/depends
@@ -0,0 +1,2 @@
+cmake make
+nasm  make
diff --git a/core-mod/extra/x265/sources b/core-mod/extra/x265/sources
new file mode 100644
index 0000000..f289c04
--- /dev/null
+++ b/core-mod/extra/x265/sources
@@ -0,0 +1 @@
+https://bitbucket.org/multicoreware/x265_git/get/3.5.tar.gz
diff --git a/core-mod/extra/x265/version b/core-mod/extra/x265/version
new file mode 100644
index 0000000..61e3d24
--- /dev/null
+++ b/core-mod/extra/x265/version
@@ -0,0 +1 @@
+3.5 1
diff --git a/core-mod/extra/xfsprogs/build b/core-mod/extra/xfsprogs/build
new file mode 100755
index 0000000..1d9f1ec
--- /dev/null
+++ b/core-mod/extra/xfsprogs/build
@@ -0,0 +1,39 @@
+#!/bin/sh -e
+
+# Bundle libinih just for xfsprogs
+export DESTDIR="$PWD/../libinih"
+
+meson \
+    -Dprefix=/ \
+    -Ddefault_library=static \
+    -Ddistro_install=true \
+    -Dwith_INIReader=true \
+    -Dmulti-line_entries=true \
+    -Dutf-8_bom=true \
+    -Dinline_comments=true \
+    -Duse_heap=false \
+    inih inih/output
+
+ninja -C inih/output
+ninja -C inih/output install
+
+export CFLAGS="$CFLAGS -I$PWD/../libinih/include"
+export LDFLAGS="$LDFLAGS -L$PWD/../libinih/lib"
+
+# Remove incorrect bash dependency.
+sed -i 's/bash/sh/' install-sh
+
+# Explicitly include <signal.h> instead of implicit inclusion.
+sed -i '1i#include <signal.h>' include/linux.h
+
+./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --disable-gettext
+
+make
+make \
+    DIST_ROOT="$1" \
+    PKG_ROOT_SBIN_DIR=/usr/bin \
+    PKG_ROOT_LIB_DIR=/usr/lib \
+    install install-dev
diff --git a/core-mod/extra/xfsprogs/checksums b/core-mod/extra/xfsprogs/checksums
new file mode 100644
index 0000000..42a5268
--- /dev/null
+++ b/core-mod/extra/xfsprogs/checksums
@@ -0,0 +1,2 @@
+bec44445cf18f49e63971d4f27dc4e90a17b118b852714a1104b621ea30e3507
+01b0366fdfdf6363efc070c2f856f1afa33e7a6546548bada5456ad94a516241
diff --git a/core-mod/extra/xfsprogs/depends b/core-mod/extra/xfsprogs/depends
new file mode 100644
index 0000000..59e01b6
--- /dev/null
+++ b/core-mod/extra/xfsprogs/depends
@@ -0,0 +1,3 @@
+linux-headers make
+meson         make
+util-linux
diff --git a/core-mod/extra/xfsprogs/sources b/core-mod/extra/xfsprogs/sources
new file mode 100644
index 0000000..22e214d
--- /dev/null
+++ b/core-mod/extra/xfsprogs/sources
@@ -0,0 +1,2 @@
+https://fossies.org/linux/misc/xfsprogs-5.12.0.tar.xz
+https://github.com/benhoyt/inih/archive/r53.tar.gz inih
diff --git a/core-mod/extra/xfsprogs/version b/core-mod/extra/xfsprogs/version
new file mode 100644
index 0000000..c131ff6
--- /dev/null
+++ b/core-mod/extra/xfsprogs/version
@@ -0,0 +1 @@
+5.12.0 1
diff --git a/core-mod/extra/xvidcore/build b/core-mod/extra/xvidcore/build
new file mode 100755
index 0000000..ac4edec
--- /dev/null
+++ b/core-mod/extra/xvidcore/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+cd build/generic
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/extra/xvidcore/checksums b/core-mod/extra/xvidcore/checksums
new file mode 100644
index 0000000..0fc163d
--- /dev/null
+++ b/core-mod/extra/xvidcore/checksums
@@ -0,0 +1 @@
+aeeaae952d4db395249839a3bd03841d6844843f5a4f84c271ff88f7aa1acff7  xvidcore-1.3.7.tar.bz2
diff --git a/core-mod/extra/xvidcore/depends b/core-mod/extra/xvidcore/depends
new file mode 100644
index 0000000..116f6b2
--- /dev/null
+++ b/core-mod/extra/xvidcore/depends
@@ -0,0 +1 @@
+nasm make
diff --git a/core-mod/extra/xvidcore/sources b/core-mod/extra/xvidcore/sources
new file mode 100644
index 0000000..9dc4bd6
--- /dev/null
+++ b/core-mod/extra/xvidcore/sources
@@ -0,0 +1 @@
+https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.bz2
diff --git a/core-mod/extra/xvidcore/version b/core-mod/extra/xvidcore/version
new file mode 100644
index 0000000..ae80c29
--- /dev/null
+++ b/core-mod/extra/xvidcore/version
@@ -0,0 +1 @@
+1.3.7 1
diff --git a/core-mod/extra/zip/build b/core-mod/extra/zip/build
new file mode 100755
index 0000000..ce76823
--- /dev/null
+++ b/core-mod/extra/zip/build
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+make \
+    prefix=/usr \
+    CC="${CC:-cc} $CFLAGS $CXXFLAGS" \
+    -f unix/Makefile generic
+
+make \
+    prefix="$1/usr" \
+    MANDIR="$1/usr/share/man/man1" \
+    -f unix/Makefile install
diff --git a/core-mod/extra/zip/checksums b/core-mod/extra/zip/checksums
new file mode 100644
index 0000000..3337c64
--- /dev/null
+++ b/core-mod/extra/zip/checksums
@@ -0,0 +1 @@
+f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369  zip30.tar.gz
diff --git a/core-mod/extra/zip/depends b/core-mod/extra/zip/depends
new file mode 100644
index 0000000..7a45712
--- /dev/null
+++ b/core-mod/extra/zip/depends
@@ -0,0 +1 @@
+bzip2
diff --git a/core-mod/extra/zip/sources b/core-mod/extra/zip/sources
new file mode 100644
index 0000000..49a2168
--- /dev/null
+++ b/core-mod/extra/zip/sources
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/infozip/zip30.tar.gz
diff --git a/core-mod/extra/zip/version b/core-mod/extra/zip/version
new file mode 100644
index 0000000..f90f0a3
--- /dev/null
+++ b/core-mod/extra/zip/version
@@ -0,0 +1 @@
+3.0 2
diff --git a/core-mod/xorg/libICE/build b/core-mod/xorg/libICE/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libICE/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libICE/checksums b/core-mod/xorg/libICE/checksums
new file mode 100644
index 0000000..98a60cf
--- /dev/null
+++ b/core-mod/xorg/libICE/checksums
@@ -0,0 +1 @@
+6f86dce12cf4bcaf5c37dddd8b1b64ed2ddf1ef7b218f22b9942595fb747c348  libICE-1.0.10.tar.bz2
diff --git a/core-mod/xorg/libICE/depends b/core-mod/xorg/libICE/depends
new file mode 100644
index 0000000..ff0c653
--- /dev/null
+++ b/core-mod/xorg/libICE/depends
@@ -0,0 +1,3 @@
+pkgconf   make
+xorgproto make
+xtrans    make
diff --git a/core-mod/xorg/libICE/sources b/core-mod/xorg/libICE/sources
new file mode 100644
index 0000000..1137b15
--- /dev/null
+++ b/core-mod/xorg/libICE/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libICE-1.0.10.tar.bz2
diff --git a/core-mod/xorg/libICE/version b/core-mod/xorg/libICE/version
new file mode 100644
index 0000000..9933b0e
--- /dev/null
+++ b/core-mod/xorg/libICE/version
@@ -0,0 +1 @@
+1.0.10 2
diff --git a/core-mod/xorg/libSM/build b/core-mod/xorg/libSM/build
new file mode 100755
index 0000000..801017e
--- /dev/null
+++ b/core-mod/xorg/libSM/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --without-libuuid
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libSM/checksums b/core-mod/xorg/libSM/checksums
new file mode 100644
index 0000000..67486e6
--- /dev/null
+++ b/core-mod/xorg/libSM/checksums
@@ -0,0 +1 @@
+2d264499dcb05f56438dee12a1b4b71d76736ce7ba7aa6efbf15ebb113769cbb  libSM-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libSM/depends b/core-mod/xorg/libSM/depends
new file mode 100644
index 0000000..1e97931
--- /dev/null
+++ b/core-mod/xorg/libSM/depends
@@ -0,0 +1,3 @@
+pkgconf make
+libICE
+xtrans  make
diff --git a/core-mod/xorg/libSM/sources b/core-mod/xorg/libSM/sources
new file mode 100644
index 0000000..a9b4bbe
--- /dev/null
+++ b/core-mod/xorg/libSM/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libSM-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libSM/version b/core-mod/xorg/libSM/version
new file mode 100644
index 0000000..e63ae1d
--- /dev/null
+++ b/core-mod/xorg/libSM/version
@@ -0,0 +1 @@
+1.2.3 2
diff --git a/core-mod/xorg/libX11/build b/core-mod/xorg/libX11/build
new file mode 100755
index 0000000..0ebe0da
--- /dev/null
+++ b/core-mod/xorg/libX11/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+CFLAGS_FOR_BUILD=-fPIC \
+./configure \
+    --prefix=/usr \
+    --without-xmlto \
+    --disable-specs \
+    --enable-static
+
+make
+make DESTDIR="$1" install
+
+# This will be removed once 'xorgproto' 2019.2
+# is released.
+rm -f "$1/usr/include/X11/extensions/XKBgeom.h"
diff --git a/core-mod/xorg/libX11/checksums b/core-mod/xorg/libX11/checksums
new file mode 100644
index 0000000..3a840bd
--- /dev/null
+++ b/core-mod/xorg/libX11/checksums
@@ -0,0 +1 @@
+1cfa35e37aaabbe4792e9bb690468efefbfbf6b147d9c69d6f90d13c3092ea6c
diff --git a/core-mod/xorg/libX11/depends b/core-mod/xorg/libX11/depends
new file mode 100644
index 0000000..9be9ae5
--- /dev/null
+++ b/core-mod/xorg/libX11/depends
@@ -0,0 +1,5 @@
+libXau
+libxcb
+pkgconf make
+xorgproto
+xtrans  make
diff --git a/core-mod/xorg/libX11/sources b/core-mod/xorg/libX11/sources
new file mode 100644
index 0000000..50b5f3d
--- /dev/null
+++ b/core-mod/xorg/libX11/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libX11-1.7.2.tar.bz2
diff --git a/core-mod/xorg/libX11/version b/core-mod/xorg/libX11/version
new file mode 100644
index 0000000..8a5282d
--- /dev/null
+++ b/core-mod/xorg/libX11/version
@@ -0,0 +1 @@
+1.7.2 1
diff --git a/core-mod/xorg/libXScrnSaver/build b/core-mod/xorg/libXScrnSaver/build
new file mode 100755
index 0000000..105ed0c
--- /dev/null
+++ b/core-mod/xorg/libXScrnSaver/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-malloc0returnsnull
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXScrnSaver/checksums b/core-mod/xorg/libXScrnSaver/checksums
new file mode 100644
index 0000000..c456e07
--- /dev/null
+++ b/core-mod/xorg/libXScrnSaver/checksums
@@ -0,0 +1 @@
+f917075a1b7b5a38d67a8b0238eaab14acd2557679835b154cf2bca576e89bf8  libXScrnSaver-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libXScrnSaver/depends b/core-mod/xorg/libXScrnSaver/depends
new file mode 100644
index 0000000..0d40d49
--- /dev/null
+++ b/core-mod/xorg/libXScrnSaver/depends
@@ -0,0 +1,4 @@
+libX11    make
+libXext   make
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXScrnSaver/sources b/core-mod/xorg/libXScrnSaver/sources
new file mode 100644
index 0000000..6fa7c11
--- /dev/null
+++ b/core-mod/xorg/libXScrnSaver/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXScrnSaver-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libXScrnSaver/version b/core-mod/xorg/libXScrnSaver/version
new file mode 100644
index 0000000..883a7ec
--- /dev/null
+++ b/core-mod/xorg/libXScrnSaver/version
@@ -0,0 +1 @@
+1.2.3 1
diff --git a/core-mod/xorg/libXau/build b/core-mod/xorg/libXau/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXau/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXau/checksums b/core-mod/xorg/libXau/checksums
new file mode 100644
index 0000000..cf7404f
--- /dev/null
+++ b/core-mod/xorg/libXau/checksums
@@ -0,0 +1 @@
+ccf8cbf0dbf676faa2ea0a6d64bcc3b6746064722b606c8c52917ed00dcb73ec  libXau-1.0.9.tar.bz2
diff --git a/core-mod/xorg/libXau/depends b/core-mod/xorg/libXau/depends
new file mode 100644
index 0000000..2b5e439
--- /dev/null
+++ b/core-mod/xorg/libXau/depends
@@ -0,0 +1,2 @@
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXau/sources b/core-mod/xorg/libXau/sources
new file mode 100644
index 0000000..471e749
--- /dev/null
+++ b/core-mod/xorg/libXau/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXau-1.0.9.tar.bz2
diff --git a/core-mod/xorg/libXau/version b/core-mod/xorg/libXau/version
new file mode 100644
index 0000000..7773763
--- /dev/null
+++ b/core-mod/xorg/libXau/version
@@ -0,0 +1 @@
+1.0.9 1
diff --git a/core-mod/xorg/libXcomposite/build b/core-mod/xorg/libXcomposite/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXcomposite/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXcomposite/checksums b/core-mod/xorg/libXcomposite/checksums
new file mode 100644
index 0000000..ed55a54
--- /dev/null
+++ b/core-mod/xorg/libXcomposite/checksums
@@ -0,0 +1 @@
+b3218a2c15bab8035d16810df5b8251ffc7132ff3aa70651a1fba0bfe9634e8f  libXcomposite-0.4.5.tar.bz2
diff --git a/core-mod/xorg/libXcomposite/depends b/core-mod/xorg/libXcomposite/depends
new file mode 100644
index 0000000..91199d2
--- /dev/null
+++ b/core-mod/xorg/libXcomposite/depends
@@ -0,0 +1,3 @@
+libXfixes
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXcomposite/sources b/core-mod/xorg/libXcomposite/sources
new file mode 100644
index 0000000..e0fc6db
--- /dev/null
+++ b/core-mod/xorg/libXcomposite/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXcomposite-0.4.5.tar.bz2
diff --git a/core-mod/xorg/libXcomposite/version b/core-mod/xorg/libXcomposite/version
new file mode 100644
index 0000000..d49665f
--- /dev/null
+++ b/core-mod/xorg/libXcomposite/version
@@ -0,0 +1 @@
+0.4.5 2
diff --git a/core-mod/xorg/libXcursor/build b/core-mod/xorg/libXcursor/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXcursor/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXcursor/checksums b/core-mod/xorg/libXcursor/checksums
new file mode 100644
index 0000000..0b7031a
--- /dev/null
+++ b/core-mod/xorg/libXcursor/checksums
@@ -0,0 +1 @@
+3ad3e9f8251094af6fe8cb4afcf63e28df504d46bfa5a5529db74a505d628782  libXcursor-1.2.0.tar.bz2
diff --git a/core-mod/xorg/libXcursor/depends b/core-mod/xorg/libXcursor/depends
new file mode 100644
index 0000000..e3ddce2
--- /dev/null
+++ b/core-mod/xorg/libXcursor/depends
@@ -0,0 +1,4 @@
+libXfixes
+libXrender
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXcursor/sources b/core-mod/xorg/libXcursor/sources
new file mode 100644
index 0000000..8171945
--- /dev/null
+++ b/core-mod/xorg/libXcursor/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXcursor-1.2.0.tar.bz2
diff --git a/core-mod/xorg/libXcursor/version b/core-mod/xorg/libXcursor/version
new file mode 100644
index 0000000..9d7d10a
--- /dev/null
+++ b/core-mod/xorg/libXcursor/version
@@ -0,0 +1 @@
+1.2.0 2
diff --git a/core-mod/xorg/libXdamage/build b/core-mod/xorg/libXdamage/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXdamage/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXdamage/checksums b/core-mod/xorg/libXdamage/checksums
new file mode 100644
index 0000000..6065795
--- /dev/null
+++ b/core-mod/xorg/libXdamage/checksums
@@ -0,0 +1 @@
+b734068643cac3b5f3d2c8279dd366b5bf28c7219d9e9d8717e1383995e0ea45  libXdamage-1.1.5.tar.bz2
diff --git a/core-mod/xorg/libXdamage/depends b/core-mod/xorg/libXdamage/depends
new file mode 100644
index 0000000..42912da
--- /dev/null
+++ b/core-mod/xorg/libXdamage/depends
@@ -0,0 +1,4 @@
+libX11
+libXfixes
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXdamage/sources b/core-mod/xorg/libXdamage/sources
new file mode 100644
index 0000000..4e59261
--- /dev/null
+++ b/core-mod/xorg/libXdamage/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXdamage-1.1.5.tar.bz2
diff --git a/core-mod/xorg/libXdamage/version b/core-mod/xorg/libXdamage/version
new file mode 100644
index 0000000..89d25d2
--- /dev/null
+++ b/core-mod/xorg/libXdamage/version
@@ -0,0 +1 @@
+1.1.5 2
diff --git a/core-mod/xorg/libXext/build b/core-mod/xorg/libXext/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXext/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXext/checksums b/core-mod/xorg/libXext/checksums
new file mode 100644
index 0000000..e86d68c
--- /dev/null
+++ b/core-mod/xorg/libXext/checksums
@@ -0,0 +1 @@
+59ad6fcce98deaecc14d39a672cf218ca37aba617c9a0f691cac3bcd28edf82b  libXext-1.3.4.tar.bz2
diff --git a/core-mod/xorg/libXext/depends b/core-mod/xorg/libXext/depends
new file mode 100644
index 0000000..83fe618
--- /dev/null
+++ b/core-mod/xorg/libXext/depends
@@ -0,0 +1,3 @@
+libX11
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXext/sources b/core-mod/xorg/libXext/sources
new file mode 100644
index 0000000..60f7ab6
--- /dev/null
+++ b/core-mod/xorg/libXext/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXext-1.3.4.tar.bz2
diff --git a/core-mod/xorg/libXext/version b/core-mod/xorg/libXext/version
new file mode 100644
index 0000000..d289440
--- /dev/null
+++ b/core-mod/xorg/libXext/version
@@ -0,0 +1 @@
+1.3.4 2
diff --git a/core-mod/xorg/libXfixes/build b/core-mod/xorg/libXfixes/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXfixes/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXfixes/checksums b/core-mod/xorg/libXfixes/checksums
new file mode 100644
index 0000000..aa8d822
--- /dev/null
+++ b/core-mod/xorg/libXfixes/checksums
@@ -0,0 +1 @@
+a7c1a24da53e0b46cac5aea79094b4b2257321c621b258729bc3139149245b4c
diff --git a/core-mod/xorg/libXfixes/depends b/core-mod/xorg/libXfixes/depends
new file mode 100644
index 0000000..eeacdf7
--- /dev/null
+++ b/core-mod/xorg/libXfixes/depends
@@ -0,0 +1,2 @@
+libX11
+pkgconf make
diff --git a/core-mod/xorg/libXfixes/sources b/core-mod/xorg/libXfixes/sources
new file mode 100644
index 0000000..707ab5b
--- /dev/null
+++ b/core-mod/xorg/libXfixes/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXfixes-6.0.0.tar.bz2
diff --git a/core-mod/xorg/libXfixes/version b/core-mod/xorg/libXfixes/version
new file mode 100644
index 0000000..dd00d5d
--- /dev/null
+++ b/core-mod/xorg/libXfixes/version
@@ -0,0 +1 @@
+6.0.0 1
diff --git a/core-mod/xorg/libXfont2/build b/core-mod/xorg/libXfont2/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXfont2/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXfont2/checksums b/core-mod/xorg/libXfont2/checksums
new file mode 100644
index 0000000..b3ec805
--- /dev/null
+++ b/core-mod/xorg/libXfont2/checksums
@@ -0,0 +1 @@
+6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6  libXfont2-2.0.4.tar.bz2
diff --git a/core-mod/xorg/libXfont2/depends b/core-mod/xorg/libXfont2/depends
new file mode 100644
index 0000000..59277f4
--- /dev/null
+++ b/core-mod/xorg/libXfont2/depends
@@ -0,0 +1,5 @@
+freetype-harfbuzz
+libfontenc
+pkgconf   make
+xorgproto make
+xtrans    make
diff --git a/core-mod/xorg/libXfont2/sources b/core-mod/xorg/libXfont2/sources
new file mode 100644
index 0000000..9f2c695
--- /dev/null
+++ b/core-mod/xorg/libXfont2/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXfont2-2.0.4.tar.bz2
diff --git a/core-mod/xorg/libXfont2/version b/core-mod/xorg/libXfont2/version
new file mode 100644
index 0000000..aaedf8d
--- /dev/null
+++ b/core-mod/xorg/libXfont2/version
@@ -0,0 +1 @@
+2.0.4 1
diff --git a/core-mod/xorg/libXft/build b/core-mod/xorg/libXft/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXft/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXft/checksums b/core-mod/xorg/libXft/checksums
new file mode 100644
index 0000000..de00909
--- /dev/null
+++ b/core-mod/xorg/libXft/checksums
@@ -0,0 +1 @@
+225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216  libXft-2.3.3.tar.bz2
diff --git a/core-mod/xorg/libXft/depends b/core-mod/xorg/libXft/depends
new file mode 100644
index 0000000..083c4f7
--- /dev/null
+++ b/core-mod/xorg/libXft/depends
@@ -0,0 +1,5 @@
+fontconfig        make
+freetype-harfbuzz make
+libXrender        make
+pkgconf           make
+xorgproto         make
diff --git a/core-mod/xorg/libXft/sources b/core-mod/xorg/libXft/sources
new file mode 100644
index 0000000..572dd4a
--- /dev/null
+++ b/core-mod/xorg/libXft/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXft-2.3.3.tar.bz2
diff --git a/core-mod/xorg/libXft/version b/core-mod/xorg/libXft/version
new file mode 100644
index 0000000..c811426
--- /dev/null
+++ b/core-mod/xorg/libXft/version
@@ -0,0 +1 @@
+2.3.3 1
diff --git a/core-mod/xorg/libXi/build b/core-mod/xorg/libXi/build
new file mode 100755
index 0000000..105ed0c
--- /dev/null
+++ b/core-mod/xorg/libXi/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-malloc0returnsnull
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXi/checksums b/core-mod/xorg/libXi/checksums
new file mode 100644
index 0000000..449c086
--- /dev/null
+++ b/core-mod/xorg/libXi/checksums
@@ -0,0 +1 @@
+2ce90ebcb7fa0c3ed671924f1268b8f4c500fff62e1284699fc413e182a7896b
diff --git a/core-mod/xorg/libXi/depends b/core-mod/xorg/libXi/depends
new file mode 100644
index 0000000..e0e1b6e
--- /dev/null
+++ b/core-mod/xorg/libXi/depends
@@ -0,0 +1,4 @@
+libXext
+libXfixes
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXi/sources b/core-mod/xorg/libXi/sources
new file mode 100644
index 0000000..1ff9ff9
--- /dev/null
+++ b/core-mod/xorg/libXi/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXi-1.7.99.2.tar.bz2
diff --git a/core-mod/xorg/libXi/version b/core-mod/xorg/libXi/version
new file mode 100644
index 0000000..44c637a
--- /dev/null
+++ b/core-mod/xorg/libXi/version
@@ -0,0 +1 @@
+1.7.99.2 1
diff --git a/core-mod/xorg/libXinerama/build b/core-mod/xorg/libXinerama/build
new file mode 100755
index 0000000..105ed0c
--- /dev/null
+++ b/core-mod/xorg/libXinerama/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-malloc0returnsnull
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXinerama/checksums b/core-mod/xorg/libXinerama/checksums
new file mode 100644
index 0000000..7a97240
--- /dev/null
+++ b/core-mod/xorg/libXinerama/checksums
@@ -0,0 +1 @@
+0008dbd7ecf717e1e507eed1856ab0d9cf946d03201b85d5dcf61489bb02d720  libXinerama-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libXinerama/depends b/core-mod/xorg/libXinerama/depends
new file mode 100644
index 0000000..c14d9ad
--- /dev/null
+++ b/core-mod/xorg/libXinerama/depends
@@ -0,0 +1,3 @@
+libXext
+pkgconf make
+xorgproto
diff --git a/core-mod/xorg/libXinerama/sources b/core-mod/xorg/libXinerama/sources
new file mode 100644
index 0000000..a9a1786
--- /dev/null
+++ b/core-mod/xorg/libXinerama/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXinerama-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libXinerama/version b/core-mod/xorg/libXinerama/version
new file mode 100644
index 0000000..b01ca96
--- /dev/null
+++ b/core-mod/xorg/libXinerama/version
@@ -0,0 +1 @@
+1.1.4 1
diff --git a/core-mod/xorg/libXmu/build b/core-mod/xorg/libXmu/build
new file mode 100755
index 0000000..6b0a232
--- /dev/null
+++ b/core-mod/xorg/libXmu/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXmu/checksums b/core-mod/xorg/libXmu/checksums
new file mode 100644
index 0000000..af34d90
--- /dev/null
+++ b/core-mod/xorg/libXmu/checksums
@@ -0,0 +1 @@
+9c343225e7c3dc0904f2122b562278da5fed639b1b5e880d25111561bac5b731  libXmu-1.1.3.tar.bz2
diff --git a/core-mod/xorg/libXmu/depends b/core-mod/xorg/libXmu/depends
new file mode 100644
index 0000000..80a1600
--- /dev/null
+++ b/core-mod/xorg/libXmu/depends
@@ -0,0 +1,4 @@
+libXext
+libXt
+pkgconf          make
+xorg-util-macros make
diff --git a/core-mod/xorg/libXmu/sources b/core-mod/xorg/libXmu/sources
new file mode 100644
index 0000000..ac95a86
--- /dev/null
+++ b/core-mod/xorg/libXmu/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXmu-1.1.3.tar.bz2
diff --git a/core-mod/xorg/libXmu/version b/core-mod/xorg/libXmu/version
new file mode 100644
index 0000000..035474a
--- /dev/null
+++ b/core-mod/xorg/libXmu/version
@@ -0,0 +1 @@
+1.1.3 1
diff --git a/core-mod/xorg/libXrandr/build b/core-mod/xorg/libXrandr/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXrandr/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXrandr/checksums b/core-mod/xorg/libXrandr/checksums
new file mode 100644
index 0000000..8876a4c
--- /dev/null
+++ b/core-mod/xorg/libXrandr/checksums
@@ -0,0 +1 @@
+8aea0ebe403d62330bb741ed595b53741acf45033d3bda1792f1d4cc3daee023  libXrandr-1.5.2.tar.bz2
diff --git a/core-mod/xorg/libXrandr/depends b/core-mod/xorg/libXrandr/depends
new file mode 100644
index 0000000..9f12d15
--- /dev/null
+++ b/core-mod/xorg/libXrandr/depends
@@ -0,0 +1,4 @@
+libXext
+libXrender
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXrandr/sources b/core-mod/xorg/libXrandr/sources
new file mode 100644
index 0000000..803033d
--- /dev/null
+++ b/core-mod/xorg/libXrandr/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXrandr-1.5.2.tar.bz2
diff --git a/core-mod/xorg/libXrandr/version b/core-mod/xorg/libXrandr/version
new file mode 100644
index 0000000..5b702ae
--- /dev/null
+++ b/core-mod/xorg/libXrandr/version
@@ -0,0 +1 @@
+1.5.2 1
diff --git a/core-mod/xorg/libXrender/build b/core-mod/xorg/libXrender/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXrender/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXrender/checksums b/core-mod/xorg/libXrender/checksums
new file mode 100644
index 0000000..2c21218
--- /dev/null
+++ b/core-mod/xorg/libXrender/checksums
@@ -0,0 +1 @@
+c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949  libXrender-0.9.10.tar.bz2
diff --git a/core-mod/xorg/libXrender/depends b/core-mod/xorg/libXrender/depends
new file mode 100644
index 0000000..1fd995a
--- /dev/null
+++ b/core-mod/xorg/libXrender/depends
@@ -0,0 +1,3 @@
+libXext   make
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXrender/sources b/core-mod/xorg/libXrender/sources
new file mode 100644
index 0000000..bf938ce
--- /dev/null
+++ b/core-mod/xorg/libXrender/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXrender-0.9.10.tar.bz2
diff --git a/core-mod/xorg/libXrender/version b/core-mod/xorg/libXrender/version
new file mode 100644
index 0000000..6377cbb
--- /dev/null
+++ b/core-mod/xorg/libXrender/version
@@ -0,0 +1 @@
+0.9.10 2
diff --git a/core-mod/xorg/libXt/build b/core-mod/xorg/libXt/build
new file mode 100755
index 0000000..105ed0c
--- /dev/null
+++ b/core-mod/xorg/libXt/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-malloc0returnsnull
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXt/checksums b/core-mod/xorg/libXt/checksums
new file mode 100644
index 0000000..1b793d6
--- /dev/null
+++ b/core-mod/xorg/libXt/checksums
@@ -0,0 +1 @@
+679cc08f1646dbd27f5e48ffe8dd49406102937109130caab02ca32c083a3d60
diff --git a/core-mod/xorg/libXt/depends b/core-mod/xorg/libXt/depends
new file mode 100644
index 0000000..4cb81bd
--- /dev/null
+++ b/core-mod/xorg/libXt/depends
@@ -0,0 +1,4 @@
+libSM
+libX11
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXt/sources b/core-mod/xorg/libXt/sources
new file mode 100644
index 0000000..3cda998
--- /dev/null
+++ b/core-mod/xorg/libXt/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXt-1.2.1.tar.bz2
diff --git a/core-mod/xorg/libXt/version b/core-mod/xorg/libXt/version
new file mode 100644
index 0000000..cd3d02b
--- /dev/null
+++ b/core-mod/xorg/libXt/version
@@ -0,0 +1 @@
+1.2.1 1
diff --git a/core-mod/xorg/libXtst/build b/core-mod/xorg/libXtst/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXtst/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXtst/checksums b/core-mod/xorg/libXtst/checksums
new file mode 100644
index 0000000..09feb1e
--- /dev/null
+++ b/core-mod/xorg/libXtst/checksums
@@ -0,0 +1 @@
+4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204  libXtst-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libXtst/depends b/core-mod/xorg/libXtst/depends
new file mode 100644
index 0000000..c9898e0
--- /dev/null
+++ b/core-mod/xorg/libXtst/depends
@@ -0,0 +1,6 @@
+libX11
+libXau
+libXext
+libXi
+libxcb
+pkgconf make
diff --git a/core-mod/xorg/libXtst/sources b/core-mod/xorg/libXtst/sources
new file mode 100644
index 0000000..e6c9d6e
--- /dev/null
+++ b/core-mod/xorg/libXtst/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXtst-1.2.3.tar.bz2
diff --git a/core-mod/xorg/libXtst/version b/core-mod/xorg/libXtst/version
new file mode 100644
index 0000000..883a7ec
--- /dev/null
+++ b/core-mod/xorg/libXtst/version
@@ -0,0 +1 @@
+1.2.3 1
diff --git a/core-mod/xorg/libXxf86vm/build b/core-mod/xorg/libXxf86vm/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libXxf86vm/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libXxf86vm/checksums b/core-mod/xorg/libXxf86vm/checksums
new file mode 100644
index 0000000..bacddce
--- /dev/null
+++ b/core-mod/xorg/libXxf86vm/checksums
@@ -0,0 +1 @@
+afee27f93c5f31c0ad582852c0fb36d50e4de7cd585fcf655e278a633d85cd57  libXxf86vm-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libXxf86vm/depends b/core-mod/xorg/libXxf86vm/depends
new file mode 100644
index 0000000..1fd995a
--- /dev/null
+++ b/core-mod/xorg/libXxf86vm/depends
@@ -0,0 +1,3 @@
+libXext   make
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libXxf86vm/sources b/core-mod/xorg/libXxf86vm/sources
new file mode 100644
index 0000000..45538dc
--- /dev/null
+++ b/core-mod/xorg/libXxf86vm/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libXxf86vm-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libXxf86vm/version b/core-mod/xorg/libXxf86vm/version
new file mode 100644
index 0000000..b01ca96
--- /dev/null
+++ b/core-mod/xorg/libXxf86vm/version
@@ -0,0 +1 @@
+1.1.4 1
diff --git a/core-mod/xorg/libfontenc/build b/core-mod/xorg/libfontenc/build
new file mode 100755
index 0000000..b1980f7
--- /dev/null
+++ b/core-mod/xorg/libfontenc/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-fontrootdir=/usr/share/fonts/X11
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libfontenc/checksums b/core-mod/xorg/libfontenc/checksums
new file mode 100644
index 0000000..23248ab
--- /dev/null
+++ b/core-mod/xorg/libfontenc/checksums
@@ -0,0 +1 @@
+2cfcce810ddd48f2e5dc658d28c1808e86dcf303eaff16728b9aa3dbc0092079  libfontenc-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libfontenc/depends b/core-mod/xorg/libfontenc/depends
new file mode 100644
index 0000000..d60ad15
--- /dev/null
+++ b/core-mod/xorg/libfontenc/depends
@@ -0,0 +1,3 @@
+pkgconf   make
+xorgproto make
+zlib
diff --git a/core-mod/xorg/libfontenc/sources b/core-mod/xorg/libfontenc/sources
new file mode 100644
index 0000000..db937a3
--- /dev/null
+++ b/core-mod/xorg/libfontenc/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libfontenc-1.1.4.tar.bz2
diff --git a/core-mod/xorg/libfontenc/version b/core-mod/xorg/libfontenc/version
new file mode 100644
index 0000000..6cab2e0
--- /dev/null
+++ b/core-mod/xorg/libfontenc/version
@@ -0,0 +1 @@
+1.1.4 2
diff --git a/core-mod/xorg/libpciaccess/build b/core-mod/xorg/libpciaccess/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libpciaccess/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libpciaccess/checksums b/core-mod/xorg/libpciaccess/checksums
new file mode 100644
index 0000000..3e2c8c1
--- /dev/null
+++ b/core-mod/xorg/libpciaccess/checksums
@@ -0,0 +1 @@
+214c9d0d884fdd7375ec8da8dcb91a8d3169f263294c9a90c575bf1938b9f489  libpciaccess-0.16.tar.bz2
diff --git a/core-mod/xorg/libpciaccess/sources b/core-mod/xorg/libpciaccess/sources
new file mode 100644
index 0000000..e2d1679
--- /dev/null
+++ b/core-mod/xorg/libpciaccess/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libpciaccess-0.16.tar.bz2
diff --git a/core-mod/xorg/libpciaccess/version b/core-mod/xorg/libpciaccess/version
new file mode 100644
index 0000000..06da242
--- /dev/null
+++ b/core-mod/xorg/libpciaccess/version
@@ -0,0 +1 @@
+0.16 1
diff --git a/core-mod/xorg/libxcb/build b/core-mod/xorg/libxcb/build
new file mode 100755
index 0000000..285ad90
--- /dev/null
+++ b/core-mod/xorg/libxcb/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+sed -i 's/pthread-stubs //' configure
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libxcb/checksums b/core-mod/xorg/libxcb/checksums
new file mode 100644
index 0000000..0d257af
--- /dev/null
+++ b/core-mod/xorg/libxcb/checksums
@@ -0,0 +1 @@
+a55ed6db98d43469801262d81dc2572ed124edc3db31059d4e9916eb9f844c34  libxcb-1.14.tar.xz
diff --git a/core-mod/xorg/libxcb/depends b/core-mod/xorg/libxcb/depends
new file mode 100644
index 0000000..5e13142
--- /dev/null
+++ b/core-mod/xorg/libxcb/depends
@@ -0,0 +1,5 @@
+libXau
+pkgconf make
+python  make
+xcb-proto
+xorg-util-macros
diff --git a/core-mod/xorg/libxcb/sources b/core-mod/xorg/libxcb/sources
new file mode 100644
index 0000000..79f6299
--- /dev/null
+++ b/core-mod/xorg/libxcb/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/lib/libxcb-1.14.tar.xz
diff --git a/core-mod/xorg/libxcb/version b/core-mod/xorg/libxcb/version
new file mode 100644
index 0000000..cfaaf4d
--- /dev/null
+++ b/core-mod/xorg/libxcb/version
@@ -0,0 +1 @@
+1.14 1
diff --git a/core-mod/xorg/libxkbcommon/build b/core-mod/xorg/libxkbcommon/build
new file mode 100755
index 0000000..5da7e6b
--- /dev/null
+++ b/core-mod/xorg/libxkbcommon/build
@@ -0,0 +1,14 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+
+meson \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    -Denable-docs=false \
+    -Denable-wayland=false \
+    -Denable-xkbregistry=false \
+    . output
+
+ninja -C output
+ninja -C output install
diff --git a/core-mod/xorg/libxkbcommon/checksums b/core-mod/xorg/libxkbcommon/checksums
new file mode 100644
index 0000000..6fdd9cf
--- /dev/null
+++ b/core-mod/xorg/libxkbcommon/checksums
@@ -0,0 +1 @@
+e1b79838256549d72f42c824f720b4f14603374cfbe5587942e35a0cbb13ff9e
diff --git a/core-mod/xorg/libxkbcommon/depends b/core-mod/xorg/libxkbcommon/depends
new file mode 100644
index 0000000..350e4c7
--- /dev/null
+++ b/core-mod/xorg/libxkbcommon/depends
@@ -0,0 +1,3 @@
+bison   make
+meson   make
+pkgconf make
diff --git a/core-mod/xorg/libxkbcommon/sources b/core-mod/xorg/libxkbcommon/sources
new file mode 100644
index 0000000..0d5d1fd
--- /dev/null
+++ b/core-mod/xorg/libxkbcommon/sources
@@ -0,0 +1 @@
+https://github.com/xkbcommon/libxkbcommon/archive/xkbcommon-1.3.0.tar.gz
diff --git a/core-mod/xorg/libxkbcommon/version b/core-mod/xorg/libxkbcommon/version
new file mode 100644
index 0000000..a21ffc5
--- /dev/null
+++ b/core-mod/xorg/libxkbcommon/version
@@ -0,0 +1 @@
+1.3.0 2
diff --git a/core-mod/xorg/libxkbfile/build b/core-mod/xorg/libxkbfile/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/libxkbfile/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libxkbfile/checksums b/core-mod/xorg/libxkbfile/checksums
new file mode 100644
index 0000000..7320a84
--- /dev/null
+++ b/core-mod/xorg/libxkbfile/checksums
@@ -0,0 +1 @@
+758dbdaa20add2db4902df0b1b7c936564b7376c02a0acd1f2a331bd334b38c7  libxkbfile-1.1.0.tar.bz2
diff --git a/core-mod/xorg/libxkbfile/depends b/core-mod/xorg/libxkbfile/depends
new file mode 100644
index 0000000..b3fe0df
--- /dev/null
+++ b/core-mod/xorg/libxkbfile/depends
@@ -0,0 +1,3 @@
+libX11    make
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libxkbfile/sources b/core-mod/xorg/libxkbfile/sources
new file mode 100644
index 0000000..3421d44
--- /dev/null
+++ b/core-mod/xorg/libxkbfile/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libxkbfile-1.1.0.tar.bz2
diff --git a/core-mod/xorg/libxkbfile/version b/core-mod/xorg/libxkbfile/version
new file mode 100644
index 0000000..7281bb5
--- /dev/null
+++ b/core-mod/xorg/libxkbfile/version
@@ -0,0 +1 @@
+1.1.0 1
diff --git a/core-mod/xorg/libxshmfence/build b/core-mod/xorg/libxshmfence/build
new file mode 100755
index 0000000..4a70bbd
--- /dev/null
+++ b/core-mod/xorg/libxshmfence/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-shared-memory-dir=/dev/shm
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/libxshmfence/checksums b/core-mod/xorg/libxshmfence/checksums
new file mode 100644
index 0000000..64031f3
--- /dev/null
+++ b/core-mod/xorg/libxshmfence/checksums
@@ -0,0 +1 @@
+b884300d26a14961a076fbebc762a39831cb75f92bed5ccf9836345b459220c7  libxshmfence-1.3.tar.bz2
diff --git a/core-mod/xorg/libxshmfence/depends b/core-mod/xorg/libxshmfence/depends
new file mode 100644
index 0000000..2b5e439
--- /dev/null
+++ b/core-mod/xorg/libxshmfence/depends
@@ -0,0 +1,2 @@
+pkgconf   make
+xorgproto make
diff --git a/core-mod/xorg/libxshmfence/sources b/core-mod/xorg/libxshmfence/sources
new file mode 100644
index 0000000..703a3fa
--- /dev/null
+++ b/core-mod/xorg/libxshmfence/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/libxshmfence-1.3.tar.bz2
diff --git a/core-mod/xorg/libxshmfence/version b/core-mod/xorg/libxshmfence/version
new file mode 100644
index 0000000..a37a04c
--- /dev/null
+++ b/core-mod/xorg/libxshmfence/version
@@ -0,0 +1 @@
+1.3 1
diff --git a/core-mod/xorg/pixman/build b/core-mod/xorg/pixman/build
new file mode 100755
index 0000000..cb0b1bf
--- /dev/null
+++ b/core-mod/xorg/pixman/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-gtk
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/pixman/checksums b/core-mod/xorg/pixman/checksums
new file mode 100644
index 0000000..8df09aa
--- /dev/null
+++ b/core-mod/xorg/pixman/checksums
@@ -0,0 +1 @@
+da8ed9fe2d1c5ef8ce5d1207992db959226bd4e37e3f88acf908fd9a71e2704e  pixman-0.40.0.tar.xz
diff --git a/core-mod/xorg/pixman/sources b/core-mod/xorg/pixman/sources
new file mode 100644
index 0000000..3b4975d
--- /dev/null
+++ b/core-mod/xorg/pixman/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/pixman-0.40.0.tar.xz
diff --git a/core-mod/xorg/pixman/version b/core-mod/xorg/pixman/version
new file mode 100644
index 0000000..950c002
--- /dev/null
+++ b/core-mod/xorg/pixman/version
@@ -0,0 +1 @@
+0.40.0 1
diff --git a/core-mod/xorg/rxvt-unicode/build b/core-mod/xorg/rxvt-unicode/build
new file mode 100755
index 0000000..397aabb
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/build
@@ -0,0 +1,26 @@
+#!/bin/sh -e
+
+patch -p1 < rxvt-unicode-kerning.patch
+patch -p1 < gentables.patch
+
+./configure \
+    --prefix=/usr \
+    --with-terminfo=/usr/share/terminfo \
+    --enable-256-color \
+    --enable-font-styles \
+    --enable-xim \
+    --enable-keepscrolling \
+    --enable-selectionscrolling \
+    --enable-smart-resize \
+    --enable-transparency \
+    --enable-frills \
+    --enable-perl \
+    --enable-mousewheel \
+    --enable-text-blink \
+    --enable-fading \
+    --enable-unicode3 \
+    --disable-utmp \
+    --disable-wtmp \
+    --disable-lastlog
+
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/rxvt-unicode/checksums b/core-mod/xorg/rxvt-unicode/checksums
new file mode 100644
index 0000000..a2b5d1e
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/checksums
@@ -0,0 +1,3 @@
+643116b9a25d29ad29f4890131796d42e6d2d21312282a613ef66c80c5b8c98b
+f1dc6defe4bd6bedaf0f4b4425da353e2e3a86bbc936369392938db8c3fade31
+b3db15563addedf5bf770336a2a4a1c5b0c0306f8d37e77e59d1940babe82812
diff --git a/core-mod/xorg/rxvt-unicode/depends b/core-mod/xorg/rxvt-unicode/depends
new file mode 100644
index 0000000..f573ec9
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/depends
@@ -0,0 +1,6 @@
+fontconfig
+libX11
+libXft
+libXrender
+ncurses
+perl
diff --git a/core-mod/xorg/rxvt-unicode/patches/gentables.patch b/core-mod/xorg/rxvt-unicode/patches/gentables.patch
new file mode 100644
index 0000000..4ae8a33
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/patches/gentables.patch
@@ -0,0 +1,7 @@
+--- ./src/gentables.orig	Wed Aug  4 04:59:09 2004
++++ ./src/gentables	Tue Aug 10 00:03:21 2004
+@@ -1,4 +1,4 @@
+-#!/opt/bin/perl
++#!/usr/bin/perl
+
+ # the generated tables mostly have NOT been checked so far!
diff --git a/core-mod/xorg/rxvt-unicode/patches/rxvt-unicode-kerning.patch b/core-mod/xorg/rxvt-unicode/patches/rxvt-unicode-kerning.patch
new file mode 100644
index 0000000..b0e64ca
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/patches/rxvt-unicode-kerning.patch
@@ -0,0 +1,21 @@
+--- a/src/rxvtfont.C	2008-07-09 12:21:45.000000000 +0400
++++ b/src/rxvtfont.C	2009-10-30 14:32:53.000000000 +0300
+@@ -1195,12 +1195,14 @@
+           XGlyphInfo g;
+           XftTextExtents16 (disp, f, &ch, 1, &g);
+
+-          g.width -= g.x;
+-
++/*
++ * bukind: don't use g.width as a width of a character!
++ * instead use g.xOff, see e.g.: http://keithp.com/~keithp/render/Xft.tutorial
++ */
+           int wcw = WCWIDTH (ch);
+-          if (wcw > 0) g.width = (g.width + wcw - 1) / wcw;
++          if (wcw > 1) g.xOff = g.xOff / wcw;
++          if (width < g.xOff) width = g.xOff;
+
+-          if (width    < g.width       ) width    = g.width;
+           if (height   < g.height      ) height   = g.height;
+           if (glheight < g.height - g.y) glheight = g.height - g.y;
+         }
diff --git a/core-mod/xorg/rxvt-unicode/sources b/core-mod/xorg/rxvt-unicode/sources
new file mode 100644
index 0000000..3b41da7
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/sources
@@ -0,0 +1,3 @@
+http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-9.26.tar.bz2
+patches/gentables.patch
+patches/rxvt-unicode-kerning.patch
diff --git a/core-mod/xorg/rxvt-unicode/version b/core-mod/xorg/rxvt-unicode/version
new file mode 100644
index 0000000..0f9e797
--- /dev/null
+++ b/core-mod/xorg/rxvt-unicode/version
@@ -0,0 +1 @@
+9.26 1
diff --git a/core-mod/xorg/setxkbmap/build b/core-mod/xorg/setxkbmap/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/setxkbmap/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/setxkbmap/checksums b/core-mod/xorg/setxkbmap/checksums
new file mode 100644
index 0000000..a9832e3
--- /dev/null
+++ b/core-mod/xorg/setxkbmap/checksums
@@ -0,0 +1 @@
+7e934afc55f161406f7dd99b5be8837e5d1478d8263776697b159d48461a1d3c  setxkbmap-1.3.2.tar.gz
diff --git a/core-mod/xorg/setxkbmap/depends b/core-mod/xorg/setxkbmap/depends
new file mode 100644
index 0000000..1a5a95f
--- /dev/null
+++ b/core-mod/xorg/setxkbmap/depends
@@ -0,0 +1,3 @@
+libX11
+libxkbfile
+pkgconf make
diff --git a/core-mod/xorg/setxkbmap/sources b/core-mod/xorg/setxkbmap/sources
new file mode 100644
index 0000000..4d80b98
--- /dev/null
+++ b/core-mod/xorg/setxkbmap/sources
@@ -0,0 +1 @@
+https://x.org/archive//individual/app/setxkbmap-1.3.2.tar.gz
diff --git a/core-mod/xorg/setxkbmap/version b/core-mod/xorg/setxkbmap/version
new file mode 100644
index 0000000..a8cebfe
--- /dev/null
+++ b/core-mod/xorg/setxkbmap/version
@@ -0,0 +1 @@
+1.3.2 1
diff --git a/core-mod/xorg/xauth/build b/core-mod/xorg/xauth/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xauth/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xauth/checksums b/core-mod/xorg/xauth/checksums
new file mode 100644
index 0000000..363ecce
--- /dev/null
+++ b/core-mod/xorg/xauth/checksums
@@ -0,0 +1 @@
+6d1dd1b79dd185107c5b0fdd22d1d791ad749ad6e288d0cdf80964c4ffa7530c  xauth-1.1.tar.bz2
diff --git a/core-mod/xorg/xauth/depends b/core-mod/xorg/xauth/depends
new file mode 100644
index 0000000..c730a1e
--- /dev/null
+++ b/core-mod/xorg/xauth/depends
@@ -0,0 +1,3 @@
+libXmu
+pkgconf          make
+xorg-util-macros make
diff --git a/core-mod/xorg/xauth/sources b/core-mod/xorg/xauth/sources
new file mode 100644
index 0000000..add04e1
--- /dev/null
+++ b/core-mod/xorg/xauth/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xauth-1.1.tar.bz2
diff --git a/core-mod/xorg/xauth/version b/core-mod/xorg/xauth/version
new file mode 100644
index 0000000..f8b0b37
--- /dev/null
+++ b/core-mod/xorg/xauth/version
@@ -0,0 +1 @@
+1.1 1
diff --git a/core-mod/xorg/xbitmaps/build b/core-mod/xorg/xbitmaps/build
new file mode 100755
index 0000000..80ce93e
--- /dev/null
+++ b/core-mod/xorg/xbitmaps/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xbitmaps/checksums b/core-mod/xorg/xbitmaps/checksums
new file mode 100644
index 0000000..69278b0
--- /dev/null
+++ b/core-mod/xorg/xbitmaps/checksums
@@ -0,0 +1 @@
+b9f0c71563125937776c8f1f25174ae9685314cbd130fb4c2efce811981e07ee  xbitmaps-1.1.2.tar.bz2
diff --git a/core-mod/xorg/xbitmaps/depends b/core-mod/xorg/xbitmaps/depends
new file mode 100644
index 0000000..8c98a97
--- /dev/null
+++ b/core-mod/xorg/xbitmaps/depends
@@ -0,0 +1 @@
+xorg-util-macros make
diff --git a/core-mod/xorg/xbitmaps/sources b/core-mod/xorg/xbitmaps/sources
new file mode 100644
index 0000000..61fb73e
--- /dev/null
+++ b/core-mod/xorg/xbitmaps/sources
@@ -0,0 +1 @@
+https://x.org/pub/individual/data/xbitmaps-1.1.2.tar.bz2
diff --git a/core-mod/xorg/xbitmaps/version b/core-mod/xorg/xbitmaps/version
new file mode 100644
index 0000000..909c707
--- /dev/null
+++ b/core-mod/xorg/xbitmaps/version
@@ -0,0 +1 @@
+1.1.2 1
diff --git a/core-mod/xorg/xcb-proto/build b/core-mod/xorg/xcb-proto/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xcb-proto/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-proto/checksums b/core-mod/xorg/xcb-proto/checksums
new file mode 100644
index 0000000..6a18f3f
--- /dev/null
+++ b/core-mod/xorg/xcb-proto/checksums
@@ -0,0 +1 @@
+f04add9a972ac334ea11d9d7eb4fc7f8883835da3e4859c9afa971efdf57fcc3
diff --git a/core-mod/xorg/xcb-proto/depends b/core-mod/xorg/xcb-proto/depends
new file mode 100644
index 0000000..ecc7772
--- /dev/null
+++ b/core-mod/xorg/xcb-proto/depends
@@ -0,0 +1 @@
+python make
diff --git a/core-mod/xorg/xcb-proto/sources b/core-mod/xorg/xcb-proto/sources
new file mode 100644
index 0000000..7181853
--- /dev/null
+++ b/core-mod/xorg/xcb-proto/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.14.1.tar.xz
diff --git a/core-mod/xorg/xcb-proto/version b/core-mod/xorg/xcb-proto/version
new file mode 100644
index 0000000..045ad77
--- /dev/null
+++ b/core-mod/xorg/xcb-proto/version
@@ -0,0 +1 @@
+1.14.1 1
diff --git a/core-mod/xorg/xcb-util-cursor/build b/core-mod/xorg/xcb-util-cursor/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-cursor/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util-cursor/checksums b/core-mod/xorg/xcb-util-cursor/checksums
new file mode 100644
index 0000000..b5b4325
--- /dev/null
+++ b/core-mod/xorg/xcb-util-cursor/checksums
@@ -0,0 +1 @@
+a322332716a384c94d3cbf98f2d8fe2ce63c2fe7e2b26664b6cea1d411723df8  xcb-util-cursor-0.1.3.tar.gz
diff --git a/core-mod/xorg/xcb-util-cursor/depends b/core-mod/xorg/xcb-util-cursor/depends
new file mode 100644
index 0000000..cc7a52f
--- /dev/null
+++ b/core-mod/xorg/xcb-util-cursor/depends
@@ -0,0 +1,7 @@
+libXau
+libxcb
+m4      make
+pkgconf make
+xcb-util
+xcb-util-image
+xcb-util-renderutil
diff --git a/core-mod/xorg/xcb-util-cursor/sources b/core-mod/xorg/xcb-util-cursor/sources
new file mode 100644
index 0000000..272f390
--- /dev/null
+++ b/core-mod/xorg/xcb-util-cursor/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.3.tar.gz
diff --git a/core-mod/xorg/xcb-util-cursor/version b/core-mod/xorg/xcb-util-cursor/version
new file mode 100644
index 0000000..f872116
--- /dev/null
+++ b/core-mod/xorg/xcb-util-cursor/version
@@ -0,0 +1 @@
+0.1.3 1
diff --git a/core-mod/xorg/xcb-util-image/build b/core-mod/xorg/xcb-util-image/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-image/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util-image/checksums b/core-mod/xorg/xcb-util-image/checksums
new file mode 100644
index 0000000..8b74cbc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-image/checksums
@@ -0,0 +1 @@
+cb2c86190cf6216260b7357a57d9100811bb6f78c24576a3a5bfef6ad3740a42  xcb-util-image-0.4.0.tar.gz
diff --git a/core-mod/xorg/xcb-util-image/depends b/core-mod/xorg/xcb-util-image/depends
new file mode 100644
index 0000000..840535b
--- /dev/null
+++ b/core-mod/xorg/xcb-util-image/depends
@@ -0,0 +1,4 @@
+libXau
+libxcb
+pkgconf make
+xcb-util
diff --git a/core-mod/xorg/xcb-util-image/sources b/core-mod/xorg/xcb-util-image/sources
new file mode 100644
index 0000000..f8a5eea
--- /dev/null
+++ b/core-mod/xorg/xcb-util-image/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.gz
diff --git a/core-mod/xorg/xcb-util-image/version b/core-mod/xorg/xcb-util-image/version
new file mode 100644
index 0000000..6f3c0f7
--- /dev/null
+++ b/core-mod/xorg/xcb-util-image/version
@@ -0,0 +1 @@
+0.4.0 1
diff --git a/core-mod/xorg/xcb-util-keysyms/build b/core-mod/xorg/xcb-util-keysyms/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-keysyms/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util-keysyms/checksums b/core-mod/xorg/xcb-util-keysyms/checksums
new file mode 100644
index 0000000..052b634
--- /dev/null
+++ b/core-mod/xorg/xcb-util-keysyms/checksums
@@ -0,0 +1 @@
+0ef8490ff1dede52b7de533158547f8b454b241aa3e4dcca369507f66f216dd9  xcb-util-keysyms-0.4.0.tar.bz2
diff --git a/core-mod/xorg/xcb-util-keysyms/depends b/core-mod/xorg/xcb-util-keysyms/depends
new file mode 100644
index 0000000..b75a3f6
--- /dev/null
+++ b/core-mod/xorg/xcb-util-keysyms/depends
@@ -0,0 +1,3 @@
+libxcb
+pkgconf  make
+xcb-util make
diff --git a/core-mod/xorg/xcb-util-keysyms/sources b/core-mod/xorg/xcb-util-keysyms/sources
new file mode 100644
index 0000000..5df26df
--- /dev/null
+++ b/core-mod/xorg/xcb-util-keysyms/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2
diff --git a/core-mod/xorg/xcb-util-keysyms/version b/core-mod/xorg/xcb-util-keysyms/version
new file mode 100644
index 0000000..6f3c0f7
--- /dev/null
+++ b/core-mod/xorg/xcb-util-keysyms/version
@@ -0,0 +1 @@
+0.4.0 1
diff --git a/core-mod/xorg/xcb-util-renderutil/build b/core-mod/xorg/xcb-util-renderutil/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-renderutil/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util-renderutil/checksums b/core-mod/xorg/xcb-util-renderutil/checksums
new file mode 100644
index 0000000..e7cfba8
--- /dev/null
+++ b/core-mod/xorg/xcb-util-renderutil/checksums
@@ -0,0 +1 @@
+55eee797e3214fe39d0f3f4d9448cc53cffe06706d108824ea37bb79fcedcad5  xcb-util-renderutil-0.3.9.tar.gz
diff --git a/core-mod/xorg/xcb-util-renderutil/depends b/core-mod/xorg/xcb-util-renderutil/depends
new file mode 100644
index 0000000..5fae28c
--- /dev/null
+++ b/core-mod/xorg/xcb-util-renderutil/depends
@@ -0,0 +1,3 @@
+libXau
+libxcb
+pkgconf make
diff --git a/core-mod/xorg/xcb-util-renderutil/sources b/core-mod/xorg/xcb-util-renderutil/sources
new file mode 100644
index 0000000..3ae63f2
--- /dev/null
+++ b/core-mod/xorg/xcb-util-renderutil/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.gz
diff --git a/core-mod/xorg/xcb-util-renderutil/version b/core-mod/xorg/xcb-util-renderutil/version
new file mode 100644
index 0000000..fb04281
--- /dev/null
+++ b/core-mod/xorg/xcb-util-renderutil/version
@@ -0,0 +1 @@
+0.3.9 1
diff --git a/core-mod/xorg/xcb-util-wm/build b/core-mod/xorg/xcb-util-wm/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util-wm/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util-wm/checksums b/core-mod/xorg/xcb-util-wm/checksums
new file mode 100644
index 0000000..9bb2615
--- /dev/null
+++ b/core-mod/xorg/xcb-util-wm/checksums
@@ -0,0 +1 @@
+28bf8179640eaa89276d2b0f1ce4285103d136be6c98262b6151aaee1d3c2a3f  xcb-util-wm-0.4.1.tar.bz2
diff --git a/core-mod/xorg/xcb-util-wm/depends b/core-mod/xorg/xcb-util-wm/depends
new file mode 100644
index 0000000..0074522
--- /dev/null
+++ b/core-mod/xorg/xcb-util-wm/depends
@@ -0,0 +1,4 @@
+libxcb
+m4       make
+pkgconf  make
+xcb-util make
diff --git a/core-mod/xorg/xcb-util-wm/sources b/core-mod/xorg/xcb-util-wm/sources
new file mode 100644
index 0000000..2a67552
--- /dev/null
+++ b/core-mod/xorg/xcb-util-wm/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2
diff --git a/core-mod/xorg/xcb-util-wm/version b/core-mod/xorg/xcb-util-wm/version
new file mode 100644
index 0000000..3d58e2e
--- /dev/null
+++ b/core-mod/xorg/xcb-util-wm/version
@@ -0,0 +1 @@
+0.4.1 1
diff --git a/core-mod/xorg/xcb-util/build b/core-mod/xorg/xcb-util/build
new file mode 100755
index 0000000..7ca84fc
--- /dev/null
+++ b/core-mod/xorg/xcb-util/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --disable-static
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xcb-util/checksums b/core-mod/xorg/xcb-util/checksums
new file mode 100644
index 0000000..8e6359c
--- /dev/null
+++ b/core-mod/xorg/xcb-util/checksums
@@ -0,0 +1 @@
+46e49469cb3b594af1d33176cd7565def2be3fa8be4371d62271fabb5eae50e9  xcb-util-0.4.0.tar.bz2
diff --git a/core-mod/xorg/xcb-util/depends b/core-mod/xorg/xcb-util/depends
new file mode 100644
index 0000000..5fae28c
--- /dev/null
+++ b/core-mod/xorg/xcb-util/depends
@@ -0,0 +1,3 @@
+libXau
+libxcb
+pkgconf make
diff --git a/core-mod/xorg/xcb-util/sources b/core-mod/xorg/xcb-util/sources
new file mode 100644
index 0000000..630c138
--- /dev/null
+++ b/core-mod/xorg/xcb-util/sources
@@ -0,0 +1 @@
+https://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.bz2
diff --git a/core-mod/xorg/xcb-util/version b/core-mod/xorg/xcb-util/version
new file mode 100644
index 0000000..6f3c0f7
--- /dev/null
+++ b/core-mod/xorg/xcb-util/version
@@ -0,0 +1 @@
+0.4.0 1
diff --git a/core-mod/xorg/xev/build b/core-mod/xorg/xev/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xev/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xev/checksums b/core-mod/xorg/xev/checksums
new file mode 100644
index 0000000..9d9e21b
--- /dev/null
+++ b/core-mod/xorg/xev/checksums
@@ -0,0 +1 @@
+d700e08bfe751ed2dbf802baa204b056d0e49348b6eb3c6f9cb035d8ae4885e2  xev-1.2.4.tar.bz2
diff --git a/core-mod/xorg/xev/depends b/core-mod/xorg/xev/depends
new file mode 100644
index 0000000..e851525
--- /dev/null
+++ b/core-mod/xorg/xev/depends
@@ -0,0 +1,5 @@
+libX11
+libXrandr
+pkgconf          make
+xorg-util-macros make
+xorgproto        make
diff --git a/core-mod/xorg/xev/sources b/core-mod/xorg/xev/sources
new file mode 100644
index 0000000..2375ae1
--- /dev/null
+++ b/core-mod/xorg/xev/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/app/xev-1.2.4.tar.bz2
diff --git a/core-mod/xorg/xev/version b/core-mod/xorg/xev/version
new file mode 100644
index 0000000..d66671c
--- /dev/null
+++ b/core-mod/xorg/xev/version
@@ -0,0 +1 @@
+1.2.4 1
diff --git a/core-mod/xorg/xf86-input-libinput/build b/core-mod/xorg/xf86-input-libinput/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xf86-input-libinput/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-input-libinput/checksums b/core-mod/xorg/xf86-input-libinput/checksums
new file mode 100644
index 0000000..8774011
--- /dev/null
+++ b/core-mod/xorg/xf86-input-libinput/checksums
@@ -0,0 +1 @@
+e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
diff --git a/core-mod/xorg/xf86-input-libinput/depends b/core-mod/xorg/xf86-input-libinput/depends
new file mode 100644
index 0000000..cd0f7ac
--- /dev/null
+++ b/core-mod/xorg/xf86-input-libinput/depends
@@ -0,0 +1,4 @@
+libinput
+linux-headers make
+pkgconf       make
+xorg-server
diff --git a/core-mod/xorg/xf86-input-libinput/sources b/core-mod/xorg/xf86-input-libinput/sources
new file mode 100644
index 0000000..f852654
--- /dev/null
+++ b/core-mod/xorg/xf86-input-libinput/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/driver/xf86-input-libinput-1.1.0.tar.bz2
diff --git a/core-mod/xorg/xf86-input-libinput/version b/core-mod/xorg/xf86-input-libinput/version
new file mode 100644
index 0000000..7281bb5
--- /dev/null
+++ b/core-mod/xorg/xf86-input-libinput/version
@@ -0,0 +1 @@
+1.1.0 1
diff --git a/core-mod/xorg/xf86-input-mtrack/build b/core-mod/xorg/xf86-input-mtrack/build
new file mode 100755
index 0000000..f322312
--- /dev/null
+++ b/core-mod/xorg/xf86-input-mtrack/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e 
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-input-mtrack/checksums b/core-mod/xorg/xf86-input-mtrack/checksums
new file mode 100755
index 0000000..9c6b841
--- /dev/null
+++ b/core-mod/xorg/xf86-input-mtrack/checksums
@@ -0,0 +1 @@
+git  git+https://github.com/p2rkw/xf86-input-mtrack
diff --git a/core-mod/xorg/xf86-input-mtrack/depends b/core-mod/xorg/xf86-input-mtrack/depends
new file mode 100755
index 0000000..6427e9c
--- /dev/null
+++ b/core-mod/xorg/xf86-input-mtrack/depends
@@ -0,0 +1,3 @@
+mtdev
+xorg-server make
+xorgproto make
diff --git a/core-mod/xorg/xf86-input-mtrack/sources b/core-mod/xorg/xf86-input-mtrack/sources
new file mode 100755
index 0000000..0d0ed7d
--- /dev/null
+++ b/core-mod/xorg/xf86-input-mtrack/sources
@@ -0,0 +1 @@
+git+https://github.com/p2rkw/xf86-input-mtrack
diff --git a/core-mod/xorg/xf86-input-mtrack/version b/core-mod/xorg/xf86-input-mtrack/version
new file mode 100755
index 0000000..d620728
--- /dev/null
+++ b/core-mod/xorg/xf86-input-mtrack/version
@@ -0,0 +1 @@
+0.5.1 1
diff --git a/core-mod/xorg/xf86-input-synaptics/build b/core-mod/xorg/xf86-input-synaptics/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xf86-input-synaptics/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-input-synaptics/checksums b/core-mod/xorg/xf86-input-synaptics/checksums
new file mode 100644
index 0000000..f0a2ab7
--- /dev/null
+++ b/core-mod/xorg/xf86-input-synaptics/checksums
@@ -0,0 +1 @@
+7af83526eff1c76e8b9e1553b34245c203d029028d8044dd9dcf71eef1001576
diff --git a/core-mod/xorg/xf86-input-synaptics/depends b/core-mod/xorg/xf86-input-synaptics/depends
new file mode 100644
index 0000000..5ee9837
--- /dev/null
+++ b/core-mod/xorg/xf86-input-synaptics/depends
@@ -0,0 +1,10 @@
+libX11
+libXau
+libXext
+libXi
+libevdev
+libinput
+libxcb
+linux-headers make
+pkgconf       make
+xorg-server
diff --git a/core-mod/xorg/xf86-input-synaptics/sources b/core-mod/xorg/xf86-input-synaptics/sources
new file mode 100644
index 0000000..6063f5d
--- /dev/null
+++ b/core-mod/xorg/xf86-input-synaptics/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/releases/individual/driver/xf86-input-synaptics-1.9.1.tar.bz2
diff --git a/core-mod/xorg/xf86-input-synaptics/version b/core-mod/xorg/xf86-input-synaptics/version
new file mode 100644
index 0000000..f49a9d4
--- /dev/null
+++ b/core-mod/xorg/xf86-input-synaptics/version
@@ -0,0 +1 @@
+1.9.1 1
diff --git a/core-mod/xorg/xf86-input-wacom/build b/core-mod/xorg/xf86-input-wacom/build
new file mode 100755
index 0000000..f06e3dc
--- /dev/null
+++ b/core-mod/xorg/xf86-input-wacom/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-systemd-unit-dir=no
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-input-wacom/checksums b/core-mod/xorg/xf86-input-wacom/checksums
new file mode 100644
index 0000000..88b9e23
--- /dev/null
+++ b/core-mod/xorg/xf86-input-wacom/checksums
@@ -0,0 +1 @@
+8c4f5dba4bee803dafea98277f81cb0e67b4e474c9cc2e42ceb443cdb4ea2062
diff --git a/core-mod/xorg/xf86-input-wacom/depends b/core-mod/xorg/xf86-input-wacom/depends
new file mode 100644
index 0000000..6f2f29c
--- /dev/null
+++ b/core-mod/xorg/xf86-input-wacom/depends
@@ -0,0 +1,9 @@
+libX11
+libXext
+libXi
+libXinerama
+libXrandr
+linux-headers make
+pkgconf       make
+xorg-server
+xorgproto     make
diff --git a/core-mod/xorg/xf86-input-wacom/sources b/core-mod/xorg/xf86-input-wacom/sources
new file mode 100644
index 0000000..807273e
--- /dev/null
+++ b/core-mod/xorg/xf86-input-wacom/sources
@@ -0,0 +1 @@
+https://github.com/linuxwacom/xf86-input-wacom/releases/download/xf86-input-wacom-0.40.0/xf86-input-wacom-0.40.0.tar.bz2
diff --git a/core-mod/xorg/xf86-input-wacom/version b/core-mod/xorg/xf86-input-wacom/version
new file mode 100644
index 0000000..950c002
--- /dev/null
+++ b/core-mod/xorg/xf86-input-wacom/version
@@ -0,0 +1 @@
+0.40.0 1
diff --git a/core-mod/xorg/xf86-video-amdgpu/build b/core-mod/xorg/xf86-video-amdgpu/build
new file mode 100755
index 0000000..9a2289d
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < rootless-amdgpu.patch
+
+export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
+export CFLAGS="$CFLAGS -fcommon"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-video-amdgpu/checksums b/core-mod/xorg/xf86-video-amdgpu/checksums
new file mode 100644
index 0000000..7f71407
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/checksums
@@ -0,0 +1,2 @@
+4f0ea4e0ae61995ac2b7c72433d31deab63b60c78763020aaa1b28696124fe5d  xf86-video-amdgpu-19.1.0.tar.bz2
+fa8567fa877982182f2ee09dc138ef8ea466e84c77682c5c4234ded4f951476a  rootless-amdgpu.patch
diff --git a/core-mod/xorg/xf86-video-amdgpu/depends b/core-mod/xorg/xf86-video-amdgpu/depends
new file mode 100644
index 0000000..78930fb
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/depends
@@ -0,0 +1,7 @@
+expat
+libdrm
+libpciaccess
+linux-headers make
+mesa
+pkgconf       make
+xorgproto
diff --git a/core-mod/xorg/xf86-video-amdgpu/patches/rootless-amdgpu.patch b/core-mod/xorg/xf86-video-amdgpu/patches/rootless-amdgpu.patch
new file mode 100644
index 0000000..ff77aa9
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/patches/rootless-amdgpu.patch
@@ -0,0 +1,15 @@
+diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
+index 6a60f54..169085e 100644
+--- a/src/amdgpu_kms.c
++++ b/src/amdgpu_kms.c
+@@ -1823,6 +1823,10 @@ static Bool amdgpu_set_drm_master(ScrnInfoPtr pScrn)
+ 		return TRUE;
+ #endif
+ 
++    err = drmIsMaster(pAMDGPUEnt->fd);
++    if (err)
++      return TRUE;
++
+ 	err = drmSetMaster(pAMDGPUEnt->fd);
+ 	if (err)
+ 		ErrorF("Unable to retrieve master\n");
diff --git a/core-mod/xorg/xf86-video-amdgpu/sources b/core-mod/xorg/xf86-video-amdgpu/sources
new file mode 100644
index 0000000..5e55140
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/sources
@@ -0,0 +1,2 @@
+https://x.org/releases/individual/driver/xf86-video-amdgpu-19.1.0.tar.bz2
+patches/rootless-amdgpu.patch
diff --git a/core-mod/xorg/xf86-video-amdgpu/version b/core-mod/xorg/xf86-video-amdgpu/version
new file mode 100644
index 0000000..6df2a0b
--- /dev/null
+++ b/core-mod/xorg/xf86-video-amdgpu/version
@@ -0,0 +1 @@
+19.1.0 2
diff --git a/core-mod/xorg/xf86-video-ati/build b/core-mod/xorg/xf86-video-ati/build
new file mode 100755
index 0000000..a1c1508
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < rootless-ati.patch
+
+export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
+export CFLAGS="$CFLAGS -fcommon"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-video-ati/checksums b/core-mod/xorg/xf86-video-ati/checksums
new file mode 100644
index 0000000..c94c165
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/checksums
@@ -0,0 +1,2 @@
+c05c6e0c396a0148113f1836cfab7f2e43f784c9b7041f11e9cab40a4bc0c90f  xf86-video-ati-19.1.0.tar.gz
+ff007862ac398c5c67a148f2706fec596b25808cd76026627753f82d4873d546  rootless-ati.patch
diff --git a/core-mod/xorg/xf86-video-ati/depends b/core-mod/xorg/xf86-video-ati/depends
new file mode 100644
index 0000000..78930fb
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/depends
@@ -0,0 +1,7 @@
+expat
+libdrm
+libpciaccess
+linux-headers make
+mesa
+pkgconf       make
+xorgproto
diff --git a/core-mod/xorg/xf86-video-ati/patches/rootless-ati.patch b/core-mod/xorg/xf86-video-ati/patches/rootless-ati.patch
new file mode 100644
index 0000000..e78f682
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/patches/rootless-ati.patch
@@ -0,0 +1,15 @@
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c4..e85aee5 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -2168,6 +2168,10 @@ static Bool radeon_set_drm_master(ScrnInfoPtr pScrn)
+         return TRUE;
+ #endif
+ 
++    err = drmIsMaster(pRADEONEnt->fd);
++    if (err)
++      return TRUE;
++
+     err = drmSetMaster(pRADEONEnt->fd);
+     if (err)
+         ErrorF("Unable to retrieve master\n");
diff --git a/core-mod/xorg/xf86-video-ati/sources b/core-mod/xorg/xf86-video-ati/sources
new file mode 100644
index 0000000..7f48494
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/sources
@@ -0,0 +1,2 @@
+https://x.org/releases/individual/driver/xf86-video-ati-19.1.0.tar.gz
+patches/rootless-ati.patch
diff --git a/core-mod/xorg/xf86-video-ati/version b/core-mod/xorg/xf86-video-ati/version
new file mode 100644
index 0000000..6df2a0b
--- /dev/null
+++ b/core-mod/xorg/xf86-video-ati/version
@@ -0,0 +1 @@
+19.1.0 2
diff --git a/core-mod/xorg/xf86-video-fbdev/build b/core-mod/xorg/xf86-video-fbdev/build
new file mode 100755
index 0000000..c1aefd8
--- /dev/null
+++ b/core-mod/xorg/xf86-video-fbdev/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+# Fix make error '#if with no expression'
+sed -i 's/^#if XV$/#ifdef XV/g' src/fbdev.c
+
+./configure \
+    --prefix=/usr
+
+make 
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-video-fbdev/checksums b/core-mod/xorg/xf86-video-fbdev/checksums
new file mode 100644
index 0000000..bc10d90
--- /dev/null
+++ b/core-mod/xorg/xf86-video-fbdev/checksums
@@ -0,0 +1 @@
+a31f62db237a5c25bb087713a22a867a9b7680833ce3b644ecd712887b7b1d62
diff --git a/core-mod/xorg/xf86-video-fbdev/depends b/core-mod/xorg/xf86-video-fbdev/depends
new file mode 100644
index 0000000..d6c1343
--- /dev/null
+++ b/core-mod/xorg/xf86-video-fbdev/depends
@@ -0,0 +1 @@
+xorg-server
diff --git a/core-mod/xorg/xf86-video-fbdev/sources b/core-mod/xorg/xf86-video-fbdev/sources
new file mode 100644
index 0000000..488ce24
--- /dev/null
+++ b/core-mod/xorg/xf86-video-fbdev/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/releases/individual/driver/xf86-video-fbdev-0.5.0.tar.gz
diff --git a/core-mod/xorg/xf86-video-fbdev/version b/core-mod/xorg/xf86-video-fbdev/version
new file mode 100644
index 0000000..0c9ae2a
--- /dev/null
+++ b/core-mod/xorg/xf86-video-fbdev/version
@@ -0,0 +1 @@
+0.5.0 1
diff --git a/core-mod/xorg/xf86-video-intel/build b/core-mod/xorg/xf86-video-intel/build
new file mode 100755
index 0000000..4492d7a
--- /dev/null
+++ b/core-mod/xorg/xf86-video-intel/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+export DESTDIR="$1"
+export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
+
+meson \
+    --prefix=/usr \
+    --libexecdir=/usr/lib \
+    -Ddefault-dri=3 \
+    -Dxvmc=false \
+    -Dvalgrind=false \
+    . build
+
+ninja -C build
+ninja -C build install
diff --git a/core-mod/xorg/xf86-video-intel/checksums b/core-mod/xorg/xf86-video-intel/checksums
new file mode 100644
index 0000000..d72ca5a
--- /dev/null
+++ b/core-mod/xorg/xf86-video-intel/checksums
@@ -0,0 +1 @@
+f1ee7394446d38ef840d4327646421a3b744a7675955b6c29963a9887026c296
diff --git a/core-mod/xorg/xf86-video-intel/depends b/core-mod/xorg/xf86-video-intel/depends
new file mode 100644
index 0000000..82dbf17
--- /dev/null
+++ b/core-mod/xorg/xf86-video-intel/depends
@@ -0,0 +1,9 @@
+libXScrnSaver
+libXcursor
+libXinerama
+libXrandr
+libXtst
+linux-headers make
+meson         make
+pkgconf       make
+xorg-server
diff --git a/core-mod/xorg/xf86-video-intel/sources b/core-mod/xorg/xf86-video-intel/sources
new file mode 100644
index 0000000..945f527
--- /dev/null
+++ b/core-mod/xorg/xf86-video-intel/sources
@@ -0,0 +1 @@
+https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/-/archive/846b53dacd96981329bcb9ef348e6acba0b53e94/xf86-video-intel-846b53dacd96981329bcb9ef348e6acba0b53e94.tar.gz
diff --git a/core-mod/xorg/xf86-video-intel/version b/core-mod/xorg/xf86-video-intel/version
new file mode 100644
index 0000000..0920f60
--- /dev/null
+++ b/core-mod/xorg/xf86-video-intel/version
@@ -0,0 +1 @@
+846b53dacd96981329bcb9ef348e6acba0b53e94 1
diff --git a/core-mod/xorg/xf86-video-nouveau/build b/core-mod/xorg/xf86-video-nouveau/build
new file mode 100755
index 0000000..ec06a9e
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+patch -p1 < rootless-nouveau.patch
+
+export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
+export CFLAGS="$CFLAGS -fcommon"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-video-nouveau/checksums b/core-mod/xorg/xf86-video-nouveau/checksums
new file mode 100644
index 0000000..ac14f91
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/checksums
@@ -0,0 +1,2 @@
+499322e27a55c8183166bf2dd1e47d085eb834143e0d7036baba8427b90c156b
+e9197c97db81da40b9f1abc76ae349b4fe42a7563fbe9ac80821a68327e28c01
diff --git a/core-mod/xorg/xf86-video-nouveau/depends b/core-mod/xorg/xf86-video-nouveau/depends
new file mode 100644
index 0000000..82d4912
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/depends
@@ -0,0 +1,4 @@
+libdrm
+linux-headers make
+pkgconf       make
+xorgproto
diff --git a/core-mod/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch b/core-mod/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch
new file mode 100644
index 0000000..11feacc
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/patches/rootless-nouveau.patch
@@ -0,0 +1,15 @@
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index 185bba7..7927128 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -501,6 +501,10 @@ NVEnterVT(VT_FUNC_ARGS_DECL)
+ 	      (pNVEnt->platform_dev->flags & XF86_PDEV_SERVER_FD)))
+ #endif
+ 	{
++		ret = drmIsMaster(pNv->dev->fd);
++		if (ret)
++			return TRUE;
++        
+ 		ret = drmSetMaster(pNv->dev->fd);
+ 		if (ret)
+ 			ErrorF("Unable to get master: %s\n", strerror(errno));
diff --git a/core-mod/xorg/xf86-video-nouveau/sources b/core-mod/xorg/xf86-video-nouveau/sources
new file mode 100644
index 0000000..8ce5ee9
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/sources
@@ -0,0 +1,2 @@
+https://x.org/releases/individual/driver/xf86-video-nouveau-1.0.17.tar.bz2
+patches/rootless-nouveau.patch
diff --git a/core-mod/xorg/xf86-video-nouveau/version b/core-mod/xorg/xf86-video-nouveau/version
new file mode 100644
index 0000000..8e6a7c9
--- /dev/null
+++ b/core-mod/xorg/xf86-video-nouveau/version
@@ -0,0 +1 @@
+1.0.17 1
diff --git a/core-mod/xorg/xf86-video-vesa/build b/core-mod/xorg/xf86-video-vesa/build
new file mode 100755
index 0000000..3054c8b
--- /dev/null
+++ b/core-mod/xorg/xf86-video-vesa/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+export LDFLAGS="-Wl,-z,lazy"
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xf86-video-vesa/checksums b/core-mod/xorg/xf86-video-vesa/checksums
new file mode 100644
index 0000000..8655393
--- /dev/null
+++ b/core-mod/xorg/xf86-video-vesa/checksums
@@ -0,0 +1 @@
+be10771dbfdec9e8c4f1b56653b0e6b05b3e5f79c26507e3184ad27b4f00c09d
diff --git a/core-mod/xorg/xf86-video-vesa/depends b/core-mod/xorg/xf86-video-vesa/depends
new file mode 100644
index 0000000..7e5aa29
--- /dev/null
+++ b/core-mod/xorg/xf86-video-vesa/depends
@@ -0,0 +1,4 @@
+libXi
+pkgconf          make
+xorg-util-macros make
+xorgproto        make
diff --git a/core-mod/xorg/xf86-video-vesa/sources b/core-mod/xorg/xf86-video-vesa/sources
new file mode 100644
index 0000000..6c276bc
--- /dev/null
+++ b/core-mod/xorg/xf86-video-vesa/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/releases/individual/driver/xf86-video-vesa-2.5.0.tar.gz
diff --git a/core-mod/xorg/xf86-video-vesa/version b/core-mod/xorg/xf86-video-vesa/version
new file mode 100644
index 0000000..bc7f070
--- /dev/null
+++ b/core-mod/xorg/xf86-video-vesa/version
@@ -0,0 +1 @@
+2.5.0 1
diff --git a/core-mod/xorg/xinit/build b/core-mod/xorg/xinit/build
new file mode 100755
index 0000000..1709bf7
--- /dev/null
+++ b/core-mod/xorg/xinit/build
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --with-xinitdir=/etc/X11/xinit
+
+make
+make DESTDIR="$1" install
+
+# Make xauth optional.
+sed -i 's#enable_xauth=1#command -v xauth >/dev/null \&\&&||enable_xauth=0#' \
+    "$1/usr/bin/startx"
diff --git a/core-mod/xorg/xinit/checksums b/core-mod/xorg/xinit/checksums
new file mode 100644
index 0000000..7f0e526
--- /dev/null
+++ b/core-mod/xorg/xinit/checksums
@@ -0,0 +1 @@
+de9b8f617b68a70f6caf87da01fcf0ebd2b75690cdcba9c921d0ef54fa54abb9  xinit-1.4.1.tar.bz2
diff --git a/core-mod/xorg/xinit/depends b/core-mod/xorg/xinit/depends
new file mode 100644
index 0000000..eeacdf7
--- /dev/null
+++ b/core-mod/xorg/xinit/depends
@@ -0,0 +1,2 @@
+libX11
+pkgconf make
diff --git a/core-mod/xorg/xinit/sources b/core-mod/xorg/xinit/sources
new file mode 100644
index 0000000..2f9b7ee
--- /dev/null
+++ b/core-mod/xorg/xinit/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xinit-1.4.1.tar.bz2
diff --git a/core-mod/xorg/xinit/version b/core-mod/xorg/xinit/version
new file mode 100644
index 0000000..120d522
--- /dev/null
+++ b/core-mod/xorg/xinit/version
@@ -0,0 +1 @@
+1.4.1 3
diff --git a/core-mod/xorg/xinput/build b/core-mod/xorg/xinput/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xinput/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xinput/checksums b/core-mod/xorg/xinput/checksums
new file mode 100644
index 0000000..ffc3d73
--- /dev/null
+++ b/core-mod/xorg/xinput/checksums
@@ -0,0 +1 @@
+9f29f9bfe387c5a3d582f9edc8c5a753510ecc6fdfb154c03b5cea5975b10ce4  xinput-1.6.3.tar.gz
diff --git a/core-mod/xorg/xinput/depends b/core-mod/xorg/xinput/depends
new file mode 100644
index 0000000..8b08b2a
--- /dev/null
+++ b/core-mod/xorg/xinput/depends
@@ -0,0 +1,5 @@
+libX11
+libXmu
+libXi
+libXinerama
+pkgconf make
diff --git a/core-mod/xorg/xinput/sources b/core-mod/xorg/xinput/sources
new file mode 100644
index 0000000..a5af63d
--- /dev/null
+++ b/core-mod/xorg/xinput/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xinput-1.6.3.tar.gz
diff --git a/core-mod/xorg/xinput/version b/core-mod/xorg/xinput/version
new file mode 100644
index 0000000..05465e0
--- /dev/null
+++ b/core-mod/xorg/xinput/version
@@ -0,0 +1 @@
+1.6.3 1
diff --git a/core-mod/xorg/xkbcomp/build b/core-mod/xorg/xkbcomp/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xkbcomp/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xkbcomp/checksums b/core-mod/xorg/xkbcomp/checksums
new file mode 100644
index 0000000..ad8466e
--- /dev/null
+++ b/core-mod/xorg/xkbcomp/checksums
@@ -0,0 +1 @@
+6851086c4244b6fd0cc562880d8ff193fb2bbf1e141c73632e10731b31d4b05e
diff --git a/core-mod/xorg/xkbcomp/depends b/core-mod/xorg/xkbcomp/depends
new file mode 100644
index 0000000..20b9b80
--- /dev/null
+++ b/core-mod/xorg/xkbcomp/depends
@@ -0,0 +1,3 @@
+libX11     make
+libxkbfile make
+pkgconf    make
diff --git a/core-mod/xorg/xkbcomp/sources b/core-mod/xorg/xkbcomp/sources
new file mode 100644
index 0000000..066429a
--- /dev/null
+++ b/core-mod/xorg/xkbcomp/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xkbcomp-1.4.5.tar.bz2
diff --git a/core-mod/xorg/xkbcomp/version b/core-mod/xorg/xkbcomp/version
new file mode 100644
index 0000000..1d49ae7
--- /dev/null
+++ b/core-mod/xorg/xkbcomp/version
@@ -0,0 +1 @@
+1.4.5 1
diff --git a/core-mod/xorg/xkeyboard-config/build b/core-mod/xorg/xkeyboard-config/build
new file mode 100755
index 0000000..3f3367a
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/build
@@ -0,0 +1,15 @@
+#!/bin/sh -e
+
+# Swap to shell script instead of perl script
+# for conversion of rules files. See files/xml2lst.
+sed -i 's/perl //;s/xml2lst\.pl/xml2lst/' rules/Makefile.in
+
+./configure \
+    --prefix=/usr \
+    --with-xkb-rules-symlink=xfree86,xorg \
+    --enable-compat-rules \
+    --without-xsltproc \
+    --disable-nls
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xkeyboard-config/checksums b/core-mod/xorg/xkeyboard-config/checksums
new file mode 100644
index 0000000..2a6fbc9
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/checksums
@@ -0,0 +1,2 @@
+657fd790d6dcf781cd395de4cf726120a5b0f93ba91dfb2628bcc70ae8b1d3bc
+85f89e8c4d0e293c08b9454f76d4d4a0e2e9e3dd402d43a6a3f0d9e5eda77930
diff --git a/core-mod/xorg/xkeyboard-config/depends b/core-mod/xorg/xkeyboard-config/depends
new file mode 100644
index 0000000..77f918f
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/depends
@@ -0,0 +1,4 @@
+libX11  make
+pkgconf make
+python  make
+xkbcomp
diff --git a/core-mod/xorg/xkeyboard-config/files/xml2lst b/core-mod/xorg/xkeyboard-config/files/xml2lst
new file mode 100755
index 0000000..7679504
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/files/xml2lst
@@ -0,0 +1,47 @@
+#!/bin/sh
+# converts the <rules>.xml file to the old format <rules>.lst file
+# Usage: xml2lst < filename.xml > filename.lst
+
+var=0 com=0 nam=''
+
+printf '! model\n'
+while read -r l || [ "$l" ]; do case $l in
+    *'<name>'*)         n=${l#*>} n=${n%<*};;
+    *'<description>'*)  l=${l#*>}; printf '  %-15s %s\n' "$n" "${l%<*}" ;;
+    *'</modelList>'*)   break
+esac; done
+
+printf '\n! layout\n'
+while read -r l || [ "$l" ]; do case $l in
+    *'<variantList>'*)  var=1;;
+    *'</variantList>'*) var=0;;
+    *'</layoutList>'*)  break;;
+
+    *'<name>'*)
+        l="${l#*>}"
+        [ "$var" -eq 0 ] && ln=${l%<*} || n=${l%<*}
+    ;;
+
+    *'<description>'*)
+        l=${l#*>}
+
+        case $var in
+            0) printf '  %-15s %s\n' "${ln}" "${l%<*}" ;;
+            *) nam="${nam%x}  $(printf '%-15s %s: %s\nx' "$n" "$ln" "${l%<*}")"
+        esac
+    ;;
+esac; done
+
+printf '\n! variant\n%s\n! option\n' "${nam%x}"
+while read -r l || [ "$l" ]; do case $l in
+    *'-->'*)            com=0;;
+    *'<!--'*)           com=1;;
+    *'</optionList>'*)  break;;
+    *'<name>'*)         n=${l#*>} n=${n%<*} ;;
+
+    *'<description>'*)
+        l=${l#*>}
+
+        [ "$com" -ne 0 ] || printf '  %-20s %s\n' "$n" "${l%<*}"
+    ;;
+esac; done
diff --git a/core-mod/xorg/xkeyboard-config/sources b/core-mod/xorg/xkeyboard-config/sources
new file mode 100644
index 0000000..e24886e
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/sources
@@ -0,0 +1,2 @@
+https://x.org/releases/individual/data/xkeyboard-config/xkeyboard-config-2.33.tar.bz2
+files/xml2lst rules
diff --git a/core-mod/xorg/xkeyboard-config/version b/core-mod/xorg/xkeyboard-config/version
new file mode 100644
index 0000000..da56258
--- /dev/null
+++ b/core-mod/xorg/xkeyboard-config/version
@@ -0,0 +1 @@
+2.33 1
diff --git a/core-mod/xorg/xorg-server/build b/core-mod/xorg/xorg-server/build
new file mode 100755
index 0000000..db4239f
--- /dev/null
+++ b/core-mod/xorg/xorg-server/build
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+patch -p1 < rootless_modesetting.patch
+
+./configure \
+    --prefix=/usr \
+    --localstatedir=/var \
+    --disable-systemd-logind \
+    --disable-xwayland \
+    --disable-unit-tests \
+    --enable-glx \
+    --enable-dri \
+    --enable-dri2 \
+    --enable-dri3 \
+    --enable-glamor \
+    --enable-xorg \
+    --with-sha1=libcrypto \
+    --with-systemd-daemon=off
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xorg-server/checksums b/core-mod/xorg/xorg-server/checksums
new file mode 100644
index 0000000..82fc693
--- /dev/null
+++ b/core-mod/xorg/xorg-server/checksums
@@ -0,0 +1,2 @@
+914c796e3ffabe1af48071d40ccc85e92117c97a9082ed1df29e4d64e3c34c49
+c98ad9376f20ab25463ef74bb19f2dbe874a19918b27b430c8e632d272379129
diff --git a/core-mod/xorg/xorg-server/depends b/core-mod/xorg/xorg-server/depends
new file mode 100644
index 0000000..e788e00
--- /dev/null
+++ b/core-mod/xorg/xorg-server/depends
@@ -0,0 +1,24 @@
+bzip2
+freetype-harfbuzz
+libX11
+libXau
+libXdamage
+libXext
+libXfixes
+libXfont2
+libXxf86vm
+libdrm
+libepoxy
+libfontenc
+libpciaccess
+libressl
+libxcb
+libxkbfile
+libxshmfence
+linux-headers make
+mesa
+pixman
+pkgconf make
+xkeyboard-config
+xtrans make
+zlib
diff --git a/core-mod/xorg/xorg-server/patches/rootless_modesetting.patch b/core-mod/xorg/xorg-server/patches/rootless_modesetting.patch
new file mode 100644
index 0000000..d578208
--- /dev/null
+++ b/core-mod/xorg/xorg-server/patches/rootless_modesetting.patch
@@ -0,0 +1,14 @@
+--- xorg-server-1.20.3/hw/xfree86/drivers/modesetting/driver.c
++++ xorg-server-1.20.3/hw/xfree86/drivers/modesetting/driver.c
+@@ -1528,6 +1528,10 @@
+     if (ms->fd_passed)
+         return TRUE;
+
++    ret = drmIsMaster(ms->fd);
++    if (ret)
++      return TRUE;
++
+     ret = drmSetMaster(ms->fd);
+     if (ret)
+         xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "drmSetMaster failed: %s\n",
+
diff --git a/core-mod/xorg/xorg-server/post-install b/core-mod/xorg/xorg-server/post-install
new file mode 100755
index 0000000..9bf24e0
--- /dev/null
+++ b/core-mod/xorg/xorg-server/post-install
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+# Give Xorg setgid to /dev/input.
+chown :input "$KISS_ROOT/usr/bin/Xorg"
+chmod g+s    "$KISS_ROOT/usr/bin/Xorg"
+
+cat <<EOF
+
+NOTE: You must be a part of the video group
+      for rootless xorg-server to work.
+
+NOTE: This groups based permissions model may not
+      be suitable if KISS will be used as a multi
+      user system. Further configuration can be
+      done at your own discretion.
+
+-> addgroup USER video
+
+EOF
diff --git a/core-mod/xorg/xorg-server/sources b/core-mod/xorg/xorg-server/sources
new file mode 100644
index 0000000..e785b7a
--- /dev/null
+++ b/core-mod/xorg/xorg-server/sources
@@ -0,0 +1,2 @@
+https://x.org/releases/individual/xserver/xorg-server-1.20.11.tar.bz2
+patches/rootless_modesetting.patch
diff --git a/core-mod/xorg/xorg-server/version b/core-mod/xorg/xorg-server/version
new file mode 100644
index 0000000..48f6f7d
--- /dev/null
+++ b/core-mod/xorg/xorg-server/version
@@ -0,0 +1 @@
+1.20.11 1
diff --git a/core-mod/xorg/xorg-util-macros/build b/core-mod/xorg/xorg-util-macros/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xorg-util-macros/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xorg-util-macros/checksums b/core-mod/xorg/xorg-util-macros/checksums
new file mode 100644
index 0000000..09b6b12
--- /dev/null
+++ b/core-mod/xorg/xorg-util-macros/checksums
@@ -0,0 +1 @@
+0f812e6e9d2786ba8f54b960ee563c0663ddbe2434bf24ff193f5feab1f31971
diff --git a/core-mod/xorg/xorg-util-macros/sources b/core-mod/xorg/xorg-util-macros/sources
new file mode 100644
index 0000000..101eb23
--- /dev/null
+++ b/core-mod/xorg/xorg-util-macros/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/util/util-macros-1.19.3.tar.bz2
diff --git a/core-mod/xorg/xorg-util-macros/version b/core-mod/xorg/xorg-util-macros/version
new file mode 100644
index 0000000..b0cd5b1
--- /dev/null
+++ b/core-mod/xorg/xorg-util-macros/version
@@ -0,0 +1 @@
+1.19.3 1
diff --git a/core-mod/xorg/xorgproto/build b/core-mod/xorg/xorgproto/build
new file mode 100755
index 0000000..20f084f
--- /dev/null
+++ b/core-mod/xorg/xorgproto/build
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --enable-legacy
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xorgproto/checksums b/core-mod/xorg/xorgproto/checksums
new file mode 100644
index 0000000..d8706a6
--- /dev/null
+++ b/core-mod/xorg/xorgproto/checksums
@@ -0,0 +1 @@
+c38878053179c6f8bc2daeeeeb4710b5fbf0e46db5b3134aee4a1977ffb06e7a
diff --git a/core-mod/xorg/xorgproto/sources b/core-mod/xorg/xorgproto/sources
new file mode 100644
index 0000000..fe1c709
--- /dev/null
+++ b/core-mod/xorg/xorgproto/sources
@@ -0,0 +1 @@
+https://xorg.freedesktop.org/archive/individual/proto/xorgproto-2021.4.99.2.tar.bz2
diff --git a/core-mod/xorg/xorgproto/version b/core-mod/xorg/xorgproto/version
new file mode 100644
index 0000000..fcb959f
--- /dev/null
+++ b/core-mod/xorg/xorgproto/version
@@ -0,0 +1 @@
+2021.4.99.2 1
diff --git a/core-mod/xorg/xprop/build b/core-mod/xorg/xprop/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xprop/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xprop/checksums b/core-mod/xorg/xprop/checksums
new file mode 100644
index 0000000..b86b627
--- /dev/null
+++ b/core-mod/xorg/xprop/checksums
@@ -0,0 +1 @@
+b7bf6b6be6cf23e7966a153fc84d5901c14f01ee952fbd9d930aa48e2385d670
diff --git a/core-mod/xorg/xprop/depends b/core-mod/xorg/xprop/depends
new file mode 100644
index 0000000..b70e5aa
--- /dev/null
+++ b/core-mod/xorg/xprop/depends
@@ -0,0 +1,3 @@
+libX11
+libXmu
+pkgconf make
diff --git a/core-mod/xorg/xprop/sources b/core-mod/xorg/xprop/sources
new file mode 100644
index 0000000..9218a57
--- /dev/null
+++ b/core-mod/xorg/xprop/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xprop-1.2.5.tar.gz
diff --git a/core-mod/xorg/xprop/version b/core-mod/xorg/xprop/version
new file mode 100644
index 0000000..be660e4
--- /dev/null
+++ b/core-mod/xorg/xprop/version
@@ -0,0 +1 @@
+1.2.5 1
diff --git a/core-mod/xorg/xrandr/build b/core-mod/xorg/xrandr/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xrandr/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xrandr/checksums b/core-mod/xorg/xrandr/checksums
new file mode 100644
index 0000000..f64563e
--- /dev/null
+++ b/core-mod/xorg/xrandr/checksums
@@ -0,0 +1 @@
+7bc76daf9d72f8aff885efad04ce06b90488a1a169d118dea8a2b661832e8762  xrandr-1.5.1.tar.xz
diff --git a/core-mod/xorg/xrandr/depends b/core-mod/xorg/xrandr/depends
new file mode 100644
index 0000000..257b940
--- /dev/null
+++ b/core-mod/xorg/xrandr/depends
@@ -0,0 +1,3 @@
+libXrandr
+pkgconf          make
+xorg-util-macros make
diff --git a/core-mod/xorg/xrandr/sources b/core-mod/xorg/xrandr/sources
new file mode 100644
index 0000000..c074903
--- /dev/null
+++ b/core-mod/xorg/xrandr/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xrandr-1.5.1.tar.xz
diff --git a/core-mod/xorg/xrandr/version b/core-mod/xorg/xrandr/version
new file mode 100644
index 0000000..0872ada
--- /dev/null
+++ b/core-mod/xorg/xrandr/version
@@ -0,0 +1 @@
+1.5.1 1
diff --git a/core-mod/xorg/xrdb/build b/core-mod/xorg/xrdb/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xrdb/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xrdb/checksums b/core-mod/xorg/xrdb/checksums
new file mode 100644
index 0000000..231c907
--- /dev/null
+++ b/core-mod/xorg/xrdb/checksums
@@ -0,0 +1 @@
+f23a65cfa1f7126040d68b6cf1e4567523edac10f8dc06f23d840d330c7c6946  xrdb-1.2.0.tar.bz2
diff --git a/core-mod/xorg/xrdb/depends b/core-mod/xorg/xrdb/depends
new file mode 100644
index 0000000..e4a2b50
--- /dev/null
+++ b/core-mod/xorg/xrdb/depends
@@ -0,0 +1,4 @@
+libX11
+libXmu
+pkgconf          make
+xorg-util-macros make
diff --git a/core-mod/xorg/xrdb/sources b/core-mod/xorg/xrdb/sources
new file mode 100644
index 0000000..b1e810c
--- /dev/null
+++ b/core-mod/xorg/xrdb/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xrdb-1.2.0.tar.bz2
diff --git a/core-mod/xorg/xrdb/version b/core-mod/xorg/xrdb/version
new file mode 100644
index 0000000..8b9a47f
--- /dev/null
+++ b/core-mod/xorg/xrdb/version
@@ -0,0 +1 @@
+1.2.0 1
diff --git a/core-mod/xorg/xset/build b/core-mod/xorg/xset/build
new file mode 100755
index 0000000..80ce93e
--- /dev/null
+++ b/core-mod/xorg/xset/build
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xset/checksums b/core-mod/xorg/xset/checksums
new file mode 100644
index 0000000..16c6589
--- /dev/null
+++ b/core-mod/xorg/xset/checksums
@@ -0,0 +1 @@
+e4fd95280df52a88e9b0abc1fee11dcf0f34fc24041b9f45a247e52df941c957  xset-1.2.4.tar.bz2
diff --git a/core-mod/xorg/xset/depends b/core-mod/xorg/xset/depends
new file mode 100644
index 0000000..c730a1e
--- /dev/null
+++ b/core-mod/xorg/xset/depends
@@ -0,0 +1,3 @@
+libXmu
+pkgconf          make
+xorg-util-macros make
diff --git a/core-mod/xorg/xset/sources b/core-mod/xorg/xset/sources
new file mode 100644
index 0000000..1dc1534
--- /dev/null
+++ b/core-mod/xorg/xset/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/app/xset-1.2.4.tar.bz2
diff --git a/core-mod/xorg/xset/version b/core-mod/xorg/xset/version
new file mode 100644
index 0000000..d66671c
--- /dev/null
+++ b/core-mod/xorg/xset/version
@@ -0,0 +1 @@
+1.2.4 1
diff --git a/core-mod/xorg/xsetroot/build b/core-mod/xorg/xsetroot/build
new file mode 100755
index 0000000..373bcee
--- /dev/null
+++ b/core-mod/xorg/xsetroot/build
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr \
+    --mandir=/usr/share/man \
+    --localstatedir=/var
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xsetroot/checksums b/core-mod/xorg/xsetroot/checksums
new file mode 100644
index 0000000..b95d6eb
--- /dev/null
+++ b/core-mod/xorg/xsetroot/checksums
@@ -0,0 +1 @@
+9d007f5119be09924ac3a5d2bd506f32e6c164b82633c88d2aff26311e1a2a2b  xsetroot-1.1.2.tar.gz
diff --git a/core-mod/xorg/xsetroot/depends b/core-mod/xorg/xsetroot/depends
new file mode 100644
index 0000000..7042ade
--- /dev/null
+++ b/core-mod/xorg/xsetroot/depends
@@ -0,0 +1,6 @@
+libXmu
+libXrender
+libXfixes
+libXcursor
+pkgconf make
+xbitmaps
diff --git a/core-mod/xorg/xsetroot/sources b/core-mod/xorg/xsetroot/sources
new file mode 100644
index 0000000..70fede1
--- /dev/null
+++ b/core-mod/xorg/xsetroot/sources
@@ -0,0 +1 @@
+https://x.org/archive//individual/app/xsetroot-1.1.2.tar.gz
diff --git a/core-mod/xorg/xsetroot/version b/core-mod/xorg/xsetroot/version
new file mode 100644
index 0000000..909c707
--- /dev/null
+++ b/core-mod/xorg/xsetroot/version
@@ -0,0 +1 @@
+1.1.2 1
diff --git a/core-mod/xorg/xtrans/build b/core-mod/xorg/xtrans/build
new file mode 100755
index 0000000..6daf22f
--- /dev/null
+++ b/core-mod/xorg/xtrans/build
@@ -0,0 +1,7 @@
+#!/bin/sh -e
+
+./configure \
+    --prefix=/usr
+
+make
+make DESTDIR="$1" install
diff --git a/core-mod/xorg/xtrans/checksums b/core-mod/xorg/xtrans/checksums
new file mode 100644
index 0000000..7d58cad
--- /dev/null
+++ b/core-mod/xorg/xtrans/checksums
@@ -0,0 +1 @@
+377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773  xtrans-1.4.0.tar.bz2
diff --git a/core-mod/xorg/xtrans/depends b/core-mod/xorg/xtrans/depends
new file mode 100644
index 0000000..5e737b4
--- /dev/null
+++ b/core-mod/xorg/xtrans/depends
@@ -0,0 +1 @@
+pkgconf make
diff --git a/core-mod/xorg/xtrans/sources b/core-mod/xorg/xtrans/sources
new file mode 100644
index 0000000..c8c9fc9
--- /dev/null
+++ b/core-mod/xorg/xtrans/sources
@@ -0,0 +1 @@
+https://x.org/releases/individual/lib/xtrans-1.4.0.tar.bz2
diff --git a/core-mod/xorg/xtrans/version b/core-mod/xorg/xtrans/version
new file mode 100644
index 0000000..7f14d8f
--- /dev/null
+++ b/core-mod/xorg/xtrans/version
@@ -0,0 +1 @@
+1.4.0 2
diff --git a/mbase/hummingbird-git b/mbase/hummingbird-git
index 0e865c6..70e02cf 120000
--- a/mbase/hummingbird-git
+++ b/mbase/hummingbird-git
@@ -1 +1 @@
-../ports/hummingbird-git
\ No newline at end of file
+../community-mod/hummingbird-git
\ No newline at end of file
diff --git a/mbase/xf86-input-libinput b/mbase/xf86-input-libinput
index 9d01895..60740ab 120000
--- a/mbase/xf86-input-libinput
+++ b/mbase/xf86-input-libinput
@@ -1 +1 @@
-../ports/xf86-input-libinput
\ No newline at end of file
+../core-mod/xorg/xf86-input-libinput/
\ No newline at end of file
diff --git a/ports/ecl/checksums b/ports/ecl/checksums
index c93cf5a..bd10f39 100644
--- a/ports/ecl/checksums
+++ b/ports/ecl/checksums
@@ -1 +1 @@
-4a43c6b76c19de25738d22d6834871f0eaba45f5fc0d90f35cdd121bba0a3a05
+be6a9215865d11145c6f68a66fafea492448dd00dad480b8e57ab6e6507c6503
diff --git a/ports/links2-mod/q b/ports/links2-mod/q
deleted file mode 100644
index 48dfe67..0000000
--- a/ports/links2-mod/q
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh -e
-
-patch -p1 < 01-links-tabbed.patch
-
-./configure                \
-   --prefix=/usr           \
-   --enable-graphics       \
-   --mandir=/usr/share/man
-
-make
-make DESTDIR="$1" install
diff --git a/ports/links2-mod/sources b/ports/links2-mod/sources
index d1bdecd..f24d940 100644
--- a/ports/links2-mod/sources
+++ b/ports/links2-mod/sources
@@ -1,2 +1,2 @@
 patches/01-links-tabbed.patch
-http://links.twibright.com/download/links-2.21.tar.bz2
+https://deb.debian.org/debian/pool/main/l/links2/links2_2.21.orig.tar.bz2
diff --git a/ports/mid-rc/build b/ports/mid-rc/build
index 3fbb235..f064139 100755
--- a/ports/mid-rc/build
+++ b/ports/mid-rc/build
@@ -6,7 +6,7 @@ cd misc
 
 for file in *
    do
-      if [ $(echo $x | grep -e "\\\\*.sh") ]
+      if [ $(echo $file | grep -e "\\\\*.sh") ]
          then
             install -Dm755 "${file}" "${dest}/fxde/fxde-core/scripts/${file}"
          elif [ "${file}" = "xsession" ]