Rework mbase. Clean up testing. Add docs.

This commit is contained in:
Mid Favila 2021-06-28 23:49:24 +00:00
parent d39a6c9c6e
commit 44964f8ca7
125 changed files with 4177 additions and 3048 deletions

19
README
View File

@ -7,3 +7,22 @@ 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.
All packages under mbase have been tested and build on the Haswell microarchitecture using the following buildflags (at least assuming GCC and GNU libc);
-pipe //Compile in memory
-w //Suppress errors
-D_FORTIFY_SOURCE=1 //Perform lightweight tests to catch overflows and etc
-O2 //Standard level of optimization
-march=native //Compile for the current micro-arch
-fasynchronous-unwind-tables //Use the DWARF format for unwind tables. Reduces ELF size.
-fexceptions //Catch exceptions at compile-time
-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
-fstack-clash-protection //Protect from stack clashing. Will investigate further
-fPIE //Generate position-independent executables
-fPIC //Generate position-independent code
-Wl,-z,relro -Wl,-z,now -Wl,--hash-style=gnu //Linker arguments

View File

View File

View File

View File

1
mbase/dash Symbolic link
View File

@ -0,0 +1 @@
../../community/community/dash

1
mbase/dosfstools Symbolic link
View File

@ -0,0 +1 @@
../ports/dosfstools

1
mbase/dropbear Symbolic link
View File

@ -0,0 +1 @@
../ports/dropbear

1
mbase/emacs-mod Symbolic link
View File

@ -0,0 +1 @@
../ports/emacs-mod

View File

1
mbase/epic Symbolic link
View File

@ -0,0 +1 @@
../ports/epic

View File

1
mbase/fbv-git Symbolic link
View File

@ -0,0 +1 @@
../ports/fbv-git

View File

@ -1 +1 @@
../ports/file/
../ports/file

View File

@ -1 +0,0 @@
../ports/fvwm3-git

1
mbase/gnugrep Symbolic link
View File

@ -0,0 +1 @@
../ports/gnugrep

1
mbase/gtk+2 Symbolic link
View File

@ -0,0 +1 @@
../ports/gtk+2

1
mbase/gtk2-engines Symbolic link
View File

@ -0,0 +1 @@
../ports/gtk2-engines

1
mbase/hicolor Symbolic link
View File

@ -0,0 +1 @@
../ports/hicolor

1
mbase/hostapd Symbolic link
View File

@ -0,0 +1 @@
../ports/hostapd

1
mbase/hummingbird-git Symbolic link
View File

@ -0,0 +1 @@
../ports/hummingbird-git

View File

@ -1 +0,0 @@
hummingbird-git-mod

1
mbase/iw Symbolic link
View File

@ -0,0 +1 @@
../ports/iw

1
mbase/lemonbar-xft-git Symbolic link
View File

@ -0,0 +1 @@
../ports/lemonbar-xft-git

View File

1
mbase/libmbim Symbolic link
View File

@ -0,0 +1 @@
../ports/libmbim

View File

@ -1 +0,0 @@
../ports/links2

1
mbase/links2-mod Symbolic link
View File

@ -0,0 +1 @@
../ports/links2-mod

1
mbase/mtpaint-git Symbolic link
View File

@ -0,0 +1 @@
../ports/mtpaint-git

View File

@ -1 +1 @@
../ports/net-tools/
../ports/net-tools

View File

@ -1 +0,0 @@
9base-mod 9wm ROX-Filer alsa-lib alsa-plugins alsa-utils atk autoconf automake axel baselayout bash binutils bison bzip2 cairo cmake curl cyrus-sasl diffutils dropbear dtach-git epic eudev expat fbv-git ffmpeg file flex fontconfig freetype-harfbuzz fribidi fvwm3-git gavin-bc-git gcc gccmakedep-git gdk-pixbuf gettext-tiny giblib giflib git glib gmp gnugrep gnutls gperf gtk+2 gtk2-engines-clearlooks gv gzip hicolor hummingbird-git iana-etc imake-git imlib2 inetutils intltool kiss-mod lame leafpad less libICE libSM libX11 libXScrnSaver libXau libXaw3d-git libXcomposite libXcursor libXdamage libXdmcp libXext libXfixes libXfont2 libXft libXi libXinerama libXmu libXpm libXrandr libXrender libXt libXtst libXxf86vm libarchive libass libbson-git libdrm libelf libepoxy liberation-fonts libevdev libevent libexif libffi libfontenc libgcrypt libgpg-error libinput libjpeg-turbo libmbim libmpc libnl libogg libpcap libpciaccess libpng libressl libtheora libtool libusb libvorbis libvpx libxcb libxkbfile libxml2 libxshmfence links2 linux-headers llvm lxtask lz4 m4 make man-pages-posix mandoc mesa meson mpfr mtdev mtm-git mtpaint-git nasm ncurses net-tools nettle nilfs-utils nmap oksh opus otawk-git pango patch pciutils pcre perl perl-xml pidgin pixman pkgconf procps-ng purple-discord-git python ruby samurai sbase-git-mod scrot sdl2 sed shadow shared-mime-info shellcheck-bin slock sqlite ssu stalonetray sxiv sysklogd-git syslinux sysmgr tabbed tcpdump tine-git tt++ tzdata ubase-git-mod usbutils util-linux x265 xbitmaps xcalc xcb-proto xcb-util xcb-util-image xcb-util-keysyms xcb-util-wm xcompmgr xdm xev xf86-input-libinput xf86-video-amdgpu xfsprogs xinit xinput xkbcomp xkeyboard-config xless xmessage xorg-cf xorg-fontutil xorg-server xorg-util-macros xorgproto xosview xrdb xset xsetroot xssstart xterm xtrans xvidcore xvkbd xwallpaper xz zlib zstd

View File

@ -1 +0,0 @@
../ports/oksh

View File

@ -1 +1 @@
../ports/otawk-git/
../ports/otawk-git

1
mbase/picom Symbolic link
View File

@ -0,0 +1 @@
../../community/community/picom

View File

@ -0,0 +1 @@
../ports/pidgin-plugin-irc-format

1
mbase/pmenu Symbolic link
View File

@ -0,0 +1 @@
../ports/pmenu

View File

@ -1 +0,0 @@
../ports/purple-discord-git

1
mbase/s9 Symbolic link
View File

@ -0,0 +1 @@
../ports/s9

View File

1
mbase/scrot Symbolic link
View File

@ -0,0 +1 @@
../ports/scrot

1
mbase/shod Symbolic link
View File

@ -0,0 +1 @@
../ports/shod

View File

1
mbase/slock Symbolic link
View File

@ -0,0 +1 @@
../../community/community/slock

View File

1
mbase/sysklogd-git Symbolic link
View File

@ -0,0 +1 @@
../ports/sysklogd-git

View File

@ -1 +1 @@
../ports/tabbed/
../ports/tabbed

1
mbase/tdlib-purple Symbolic link
View File

@ -0,0 +1 @@
../ports/tdlib-purple

View File

@ -1 +0,0 @@
../ports/tine-git

1
mbase/tt++ Symbolic link
View File

@ -0,0 +1 @@
../ports/tt++

View File

1
mbase/util-linux Symbolic link
View File

@ -0,0 +1 @@
../ports/util-linux

1
mbase/xcalendar Symbolic link
View File

@ -0,0 +1 @@
../ports/xcalendar

1
mbase/xclickroot Symbolic link
View File

@ -0,0 +1 @@
../ports/xclickroot

1
mbase/xclock Symbolic link
View File

@ -0,0 +1 @@
../ports/xclock

View File

1
mbase/xdialog Symbolic link
View File

@ -0,0 +1 @@
../ports/xdialog

1
mbase/xf86-input-libinput Symbolic link
View File

@ -0,0 +1 @@
../ports/xf86-input-libinput

1
mbase/xless Symbolic link
View File

@ -0,0 +1 @@
../ports/xless

View File

View File

@ -1 +0,0 @@
../ports/xosview

1
mbase/xprompt Symbolic link
View File

@ -0,0 +1 @@
../ports/xprompt

View File

@ -1 +0,0 @@
../ports/xset

View File

@ -1 +0,0 @@
../ports/xsetroot

View File

1
mbase/yash Symbolic link
View File

@ -0,0 +1 @@
../ports/yash

View File

@ -1,31 +0,0 @@
#!/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="$(cc -dumpmachine)" \
--enable-deterministic-archives \
--enable-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

View File

@ -1 +0,0 @@
../../kiss-repo/core/binutils/checksums

View File

@ -1 +0,0 @@
../../kiss-repo/core/binutils/depends

View File

@ -1 +0,0 @@
../../kiss-repo/core/binutils/sources

View File

@ -1 +0,0 @@
../../kiss-repo/core/binutils/version

31
ports/emacs-mod/build Executable file
View File

@ -0,0 +1,31 @@
#!/bin/sh -e
./configure \
--prefix=/usr \
--with-modules \
--with-xft \
--with-x-toolkit=gtk2 \
--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"

View File

@ -0,0 +1 @@
b4a7cc4e78e63f378624e0919215b910af5bb2a0afc819fad298272e9f40c1b9

9
ports/emacs-mod/depends Normal file
View File

@ -0,0 +1,9 @@
gtk+2
giflib
gnutls
libjpeg-turbo
libpng
libxml2
ncurses
tiff
zlib

4068
ports/emacs-mod/manifest Normal file

File diff suppressed because it is too large Load Diff

1
ports/emacs-mod/sources Normal file
View File

@ -0,0 +1 @@
https://ftp.gnu.org/gnu/emacs/emacs-27.2.tar.xz

1
ports/emacs-mod/version Normal file
View File

@ -0,0 +1 @@
27.2 1

View File

@ -1,70 +0,0 @@
#!/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
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-system-zlib \
--with-isl \
--with-build-config=bootstrap-lto \
--build="$(cc -dumpmachine)" \
--enable-bootstrap
make \
BOOT_CFLAGS="${CFLAGS}" \
STAGE1_CFLAGS="-O2 -pipe -march=native" \
profiledbootstrap
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/$(cc -dumpmachine)/$2/liblto_plugin.so" \
"$1/usr/lib/bfd-plugins/liblto_plugin.so"
}

View File

@ -1,6 +0,0 @@
4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf
fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2
0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f
17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459
5efc53efaef151301f4e7dde3856b66812d8153dede24fab17673f801c8698f2
765614b3396d70bca3fa0ae4a813632486c6dca320e2bd13c8c39dca52be4a4c

View File

@ -1 +0,0 @@
../../kiss-repo/core/gcc/depends

View File

@ -1 +0,0 @@
/var/db/kiss/repos/grepo/core/gcc/files/c99

View File

@ -1,6 +0,0 @@
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
http://isl.gforge.inria.fr/isl-0.23.tar.xz gcc/isl
files/c99

View File

@ -1 +0,0 @@
11.1.0 1

View File

@ -17,7 +17,9 @@ make DESTDIR="$1" install
for file in sysctl uptime bc dc
do
rm "$1/usr/bin/$file"
if [ $(find . -name $file) ]
then rm "$1/usr/bin/$file"
fi
done
rm -rf "$1/usr/share"

View File

@ -9,3 +9,7 @@ sed 6a"DESTDIR= $1" Makefile > tmp.m
mv tmp.m Makefile
make all install
#For some reason the generated image doesn't work.
rm $(find "$1" -name s9.image)
printf "Please remember to set your S9FES_LIBRARY_PATH to /usr/share/s9fes!"

View File

@ -1,15 +0,0 @@
#!/bin/sh -e
(
cd programs
make zstd-pgo
make DESTDIR="$1" PREFIX=/usr install
)
(
cd lib
make
make DESTDIR="$1" PREFIX=/usr install
)

View File

@ -1 +0,0 @@
../../kiss-repo/extra/zstd/checksums

View File

@ -1 +0,0 @@
../../kiss-repo/extra/zstd/sources

View File

@ -1 +0,0 @@
../../kiss-repo/extra/zstd/version

View File

@ -1 +0,0 @@
../kiss-repo/extra/alsa-lib

View File

@ -1,29 +0,0 @@
#!/bin/sh -e
./configure \
--cc="${CC:-cc}" \
--cxx="${CXX:-c++}" \
--prefix=/usr \
--enable-shared \
--enable-gpl \
--enable-version3 \
--enable-nonfree \
--enable-openssl \
--enable-libass \
--enable-libmp3lame \
--enable-libopus \
--enable-libvorbis \
--enable-libvpx \
--enable-libx265 \
--enable-libxvid \
--enable-libdrm \
--x86asmexe=nasm \
--disable-debug \
--enable-libtheora \
--disable-libxml2 \
--enable-ffplay
make
make DESTDIR="$1" install
rm -rf "$1/usr/share/ffmpeg/examples"

View File

@ -1 +0,0 @@
ad009240d46e307b4e03a213a0f49c11b650e445b1f8be0dda2a9212b34d2ffb ffmpeg-4.3.1.tar.xz

Some files were not shown because too many files have changed in this diff Show More