From ff7d1f960148964b9e5f4bfe97abab699618b0c2 Mon Sep 17 00:00:00 2001 From: ffqq Date: Tue, 23 Jan 2024 14:48:00 +0300 Subject: [PATCH 01/20] lang/lua: New port --- lang/lua/SCHEMATIC | 54 ++++++++++++ .../files/lua-5.4.6-shared_library-1.patch | 83 +++++++++++++++++++ lang/lua/files/lua.pc | 20 +++++ 3 files changed, 157 insertions(+) create mode 100644 lang/lua/SCHEMATIC create mode 100644 lang/lua/files/lua-5.4.6-shared_library-1.patch create mode 100644 lang/lua/files/lua.pc diff --git a/lang/lua/SCHEMATIC b/lang/lua/SCHEMATIC new file mode 100644 index 0000000..0393602 --- /dev/null +++ b/lang/lua/SCHEMATIC @@ -0,0 +1,54 @@ +#!/bin/sh +name="lua" +short_desc="Small, compilable scripting language providing easy access to C code" +desc="Lua is a programming language originally designed for extending applications, +but also frequently used as a general-purpose, stand-alone language. Lua +combines simple procedural syntax (similar to Pascal) with powerful data +description constructs based on associative arrays and extensible semantics. +Lua is dynamically typed, interpreted from bytecodes, and has automatic memory +management with garbage collection, making it ideal for configuration, +scripting, and rapid prototyping. + +A fundamental concept in the design of Lua is to provide meta-mechanisms for +implementing features, instead of providing a host of features directly in +the language. For example, although Lua is not a pure object-oriented +language, it does provide meta-mechanisms for implementing classes and +inheritance. Lua's meta-mechanisms bring an economy of concepts and keep the +language small, while allowing the semantics to be extended in unconventional +ways. Extensible semantics is a distinguishing feature of Lua. + +Lua is implemented as a small library of C functions, written in ANSI C, and +compiles unmodified in all known platforms. The implementation goals are +simplicity, efficiency, portability, and low embedding cost." +category="lang" +version="5.4.6" +maintainer="ffqq@danwin1210.de" +www="https://www.lua.org/" +master_site="https://www.lua.org/ftp" +source_name="$name-$version.tar.gz" +license_logic="single" # accepted values: single, and, or +licenses=("MIT") + +build_dependencies=("devel/gmake" "lang/gcc" "devel/ncurses") +run_dependencies=("system/glibc" "devel/ncurses") + +build_process() { + cd $name-$version + cp -v $TAMANDUA_FILES_DIR/lua.pc . + patch -Np1 -i $TAMANDUA_FILES_DIR/lua-5.4.6-shared_library-1.patch + + sed "s/install -p/install/" Makefile > _ + mv -f _ Makefile + + sed "s|/usr/local|/usr|g" src/luaconf.h > _ + mv -f _ src/luaconf.h + + make linux + make INSTALL_TOP=$TAMANDUA_STAGE_DIR/usr \ + INSTALL_MAN=$TAMANDUA_STAGE_DIR/usr/share/man/man1 \ + install + mkdir -pv $TAMANDUA_STAGE_DIR/usr/share/doc/lua-5.4.6 + mkdir -pv $TAMANDUA_STAGE_DIR/usr/lib/pkgconfig + cp -v doc/*.{html,css,gif,png} $TAMANDUA_STAGE_DIR/usr/share/doc/lua-5.4.6 + cp -v lua.pc $TAMANDUA_STAGE_DIR/usr/lib/pkgconfig/lua.pc +} \ No newline at end of file diff --git a/lang/lua/files/lua-5.4.6-shared_library-1.patch b/lang/lua/files/lua-5.4.6-shared_library-1.patch new file mode 100644 index 0000000..775eb3d --- /dev/null +++ b/lang/lua/files/lua-5.4.6-shared_library-1.patch @@ -0,0 +1,83 @@ +Submitted By: Xi Ruoyao +Date: 2022-09-16 +Initial Package Version: 5.4.4 +Upstream Status: Rejected +Origin: Arch Linux, with some modifications +Description: 2020-06-30 renodr: + Creates a shared liblua library, as well as + removes optimization since it causes SIGBUS errors, + and sets the search path to /usr from /usr/local. + The initial version of this patch was created by + Igor Zivkovic, before being rediffed for 5.4.0 by + myself with some modifications made. + 2022-09-16 xry111: + Remove an extra newline before $(MYLDFLAGS). + MYLDFLAGS is empty by default so it does not break + BLFS build, but it may break a custom build with + tuning or hardening. + +diff -Naurp lua-5.4.0.orig/Makefile lua-5.4.0/Makefile +--- lua-5.4.0.orig/Makefile 2020-04-15 07:55:07.000000000 -0500 ++++ lua-5.4.0/Makefile 2020-06-30 13:22:00.997938585 -0500 +@@ -52,7 +52,7 @@ R= $V.0 + all: $(PLAT) + + $(PLATS) help test clean: +- @cd src && $(MAKE) $@ ++ @cd src && $(MAKE) $@ V=$(V) R=$(R) + + install: dummy + cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) +diff -Naurp lua-5.4.0.orig/src/luaconf.h lua-5.4.0/src/luaconf.h +--- lua-5.4.0.orig/src/luaconf.h 2020-06-18 09:25:54.000000000 -0500 ++++ lua-5.4.0/src/luaconf.h 2020-06-30 13:24:59.294932289 -0500 +@@ -227,7 +227,7 @@ + + #else /* }{ */ + +-#define LUA_ROOT "/usr/local/" ++#define LUA_ROOT "/usr/" + #define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/" + #define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/" + +diff -Naurp lua-5.4.0.orig/src/Makefile lua-5.4.0/src/Makefile +--- lua-5.4.0.orig/src/Makefile 2020-04-15 08:00:29.000000000 -0500 ++++ lua-5.4.0/src/Makefile 2020-06-30 13:24:15.746933827 -0500 +@@ -7,7 +7,7 @@ + PLAT= guess + + CC= gcc -std=gnu99 +-CFLAGS= -O2 -Wall -Wextra -DLUA_COMPAT_5_3 $(SYSCFLAGS) $(MYCFLAGS) ++CFLAGS= -fPIC -O0 -Wall -Wextra -DLUA_COMPAT_5_3 -DLUA_COMPAT_5_2 -DLUA_COMPAT_5_1 $(SYSCFLAGS) $(MYCFLAGS) + LDFLAGS= $(SYSLDFLAGS) $(MYLDFLAGS) + LIBS= -lm $(SYSLIBS) $(MYLIBS) + +@@ -33,6 +33,7 @@ CMCFLAGS= -Os + PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris + + LUA_A= liblua.a ++LUA_SO= liblua.so + CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o + LIB_O= lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o + BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS) +@@ -44,7 +45,7 @@ LUAC_T= luac + LUAC_O= luac.o + + ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) +-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) ++ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO) + ALL_A= $(LUA_A) + + # Targets start here. +@@ -60,6 +61,11 @@ $(LUA_A): $(BASE_O) + $(AR) $@ $(BASE_O) + $(RANLIB) $@ + ++$(LUA_SO): $(CORE_O) $(LIB_O) ++ $(CC) -shared -ldl -Wl,--soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS) ++ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V) ++ ln -sf $(LUA_SO).$(R) $(LUA_SO) ++ + $(LUA_T): $(LUA_O) $(LUA_A) + $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) + \ No newline at end of file diff --git a/lang/lua/files/lua.pc b/lang/lua/files/lua.pc new file mode 100644 index 0000000..8a562b7 --- /dev/null +++ b/lang/lua/files/lua.pc @@ -0,0 +1,20 @@ +V=5.4 +R=5.4.6 + +prefix=/usr +INSTALL_BIN=${prefix}/bin +INSTALL_INC=${prefix}/include +INSTALL_LIB=${prefix}/lib +INSTALL_MAN=${prefix}/share/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 -ldl +Cflags: -I${includedir} \ No newline at end of file From 2d4422dd9e8c421431804ed5554ee3e71f7dbc18 Mon Sep 17 00:00:00 2001 From: ffqq Date: Tue, 23 Jan 2024 19:39:19 +0300 Subject: [PATCH 02/20] devel/git: New port Source code management tool Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. --- devel/git/SCHEMATIC | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 devel/git/SCHEMATIC diff --git a/devel/git/SCHEMATIC b/devel/git/SCHEMATIC new file mode 100644 index 0000000..7e6a774 --- /dev/null +++ b/devel/git/SCHEMATIC @@ -0,0 +1,33 @@ +#!/bin/sh +name="git" +short_desc="Source code management tool" +desc="Git is a free and open source distributed version control system designed to +handle everything from small to very large projects with speed and efficiency." +category="devel" +version="2.43.0" +maintainer="ffqq@danwin1210.de" +www="https://git-scm.com/" +master_site="https://mirrors.edge.kernel.org/pub/software/scm/git/" +source_name="$name-$version.tar.gz" +license_logic="single" # accepted values: single, and, or +licenses=("GPLv2") + +build_dependencies=("devel/gmake" "lang/gcc" "devel/gettext" "ftp/curl" "lang/python3" "lang/perl5" "textproc/expat") +run_dependencies=("system/glibc" "devel/gettext" "ftp/curl" "lang/python3" "lang/perl5" "textproc/expat") + +build_process() { + cd $name-$version + ./configure \ + --prefix=/usr \ + --libexecdir=/usr/lib \ + --with-perl \ + --with-python=python3 \ + --without-openssl \ + --with-curl || exit 1 + make -j$(nproc) + make DESTDIR=$TAMANDUA_STAGE_DIR install + curl -O https://mirrors.edge.kernel.org/pub/software/scm/git/git-manpages-2.43.0.tar.gz + mkdir -p $TAMANDUA_STAGE_DIR/usr/share/man + tar -xf git-manpages-2.43.0.tar.gz \ + -C $TAMANDUA_STAGE_DIR/usr/share/man --no-same-owner +} \ No newline at end of file From 0325ccc1cd97324fd28968e722e8a4072cd0c685 Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 19:44:05 +0100 Subject: [PATCH 03/20] add lpeg --- textproc/jpeg/SCHEMATIC | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 textproc/jpeg/SCHEMATIC diff --git a/textproc/jpeg/SCHEMATIC b/textproc/jpeg/SCHEMATIC new file mode 100644 index 0000000..1605bd6 --- /dev/null +++ b/textproc/jpeg/SCHEMATIC @@ -0,0 +1,26 @@ +#!/bin/sh +name="lpeg" +short_desc="Parsing Expression Grammars for Lua" +desc="LPeg is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs). This text is a reference manual for the library." +category="textproc" +version="1.1.0" +maintainer="oak@petrifiedoak.com" +www="https://www.inf.puc-rio.br/~roberto/lpeg/" +master_site="https://www.inf.puc-rio.br/~roberto/lpeg/" +source_name="$name-$version.tar.gz" +license_logic="single" +license="MIT" + +build_dependencies=("lang/lua" "lang/gcc" "devel/gmake") +run_dependencies=("lang/lua" "system/glibc") + +build_process() { + cd "$name-$version" || exit 1 + sed -i -e 's/env//g' makefile + make LUADIR=/usr/include + mkdir -p "$TAMANDUA_STAGE_DIR/usr/share/lua" + mkdir -p "$TAMANDUA_STAGE_DIR/usr/lib/lua" + install -Dm0755 $name.so "$TAMANDUA_STAGE_DIR/usr/lib/lua/$name.so" + install -Dm0644 re.lua "$TAMANDUA_STAGE_DIR/usr/share/lua/re.lua" +} + From 8efffd2619ca968e2a6953febd9477a503b1ae21 Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 19:44:05 +0100 Subject: [PATCH 04/20] New port: lpeg --- textproc/lpeg/SCHEMATIC | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 textproc/lpeg/SCHEMATIC diff --git a/textproc/lpeg/SCHEMATIC b/textproc/lpeg/SCHEMATIC new file mode 100644 index 0000000..1605bd6 --- /dev/null +++ b/textproc/lpeg/SCHEMATIC @@ -0,0 +1,26 @@ +#!/bin/sh +name="lpeg" +short_desc="Parsing Expression Grammars for Lua" +desc="LPeg is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs). This text is a reference manual for the library." +category="textproc" +version="1.1.0" +maintainer="oak@petrifiedoak.com" +www="https://www.inf.puc-rio.br/~roberto/lpeg/" +master_site="https://www.inf.puc-rio.br/~roberto/lpeg/" +source_name="$name-$version.tar.gz" +license_logic="single" +license="MIT" + +build_dependencies=("lang/lua" "lang/gcc" "devel/gmake") +run_dependencies=("lang/lua" "system/glibc") + +build_process() { + cd "$name-$version" || exit 1 + sed -i -e 's/env//g' makefile + make LUADIR=/usr/include + mkdir -p "$TAMANDUA_STAGE_DIR/usr/share/lua" + mkdir -p "$TAMANDUA_STAGE_DIR/usr/lib/lua" + install -Dm0755 $name.so "$TAMANDUA_STAGE_DIR/usr/lib/lua/$name.so" + install -Dm0644 re.lua "$TAMANDUA_STAGE_DIR/usr/share/lua/re.lua" +} + From 3f73814069f2f3dd033356d429df31427bc81a1b Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 20:52:41 +0100 Subject: [PATCH 05/20] Remove jpeg, oopsie --- textproc/jpeg/SCHEMATIC | 26 -------------------------- 1 file changed, 26 deletions(-) delete mode 100644 textproc/jpeg/SCHEMATIC diff --git a/textproc/jpeg/SCHEMATIC b/textproc/jpeg/SCHEMATIC deleted file mode 100644 index 1605bd6..0000000 --- a/textproc/jpeg/SCHEMATIC +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -name="lpeg" -short_desc="Parsing Expression Grammars for Lua" -desc="LPeg is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs). This text is a reference manual for the library." -category="textproc" -version="1.1.0" -maintainer="oak@petrifiedoak.com" -www="https://www.inf.puc-rio.br/~roberto/lpeg/" -master_site="https://www.inf.puc-rio.br/~roberto/lpeg/" -source_name="$name-$version.tar.gz" -license_logic="single" -license="MIT" - -build_dependencies=("lang/lua" "lang/gcc" "devel/gmake") -run_dependencies=("lang/lua" "system/glibc") - -build_process() { - cd "$name-$version" || exit 1 - sed -i -e 's/env//g' makefile - make LUADIR=/usr/include - mkdir -p "$TAMANDUA_STAGE_DIR/usr/share/lua" - mkdir -p "$TAMANDUA_STAGE_DIR/usr/lib/lua" - install -Dm0755 $name.so "$TAMANDUA_STAGE_DIR/usr/lib/lua/$name.so" - install -Dm0644 re.lua "$TAMANDUA_STAGE_DIR/usr/share/lua/re.lua" -} - From 45aab0751a7bfc37e1c79cfc75c5d05721cf63cc Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 20:09:05 +0000 Subject: [PATCH 06/20] Update textproc/lpeg/SCHEMATIC --- textproc/lpeg/SCHEMATIC | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/textproc/lpeg/SCHEMATIC b/textproc/lpeg/SCHEMATIC index 1605bd6..c4a0160 100644 --- a/textproc/lpeg/SCHEMATIC +++ b/textproc/lpeg/SCHEMATIC @@ -9,7 +9,7 @@ www="https://www.inf.puc-rio.br/~roberto/lpeg/" master_site="https://www.inf.puc-rio.br/~roberto/lpeg/" source_name="$name-$version.tar.gz" license_logic="single" -license="MIT" +license=("MIT") build_dependencies=("lang/lua" "lang/gcc" "devel/gmake") run_dependencies=("lang/lua" "system/glibc") From 1d3313c9163ff20e53febc1584a68c9b7351241c Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 21:24:08 +0100 Subject: [PATCH 07/20] New ports: libtermkey & libtool --- devel/libtermkey/SCHEMATIC | 22 ++++++++++++++++++++++ devel/libtool/SCHEMATIC | 24 ++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 devel/libtermkey/SCHEMATIC create mode 100644 devel/libtool/SCHEMATIC diff --git a/devel/libtermkey/SCHEMATIC b/devel/libtermkey/SCHEMATIC new file mode 100644 index 0000000..6b11739 --- /dev/null +++ b/devel/libtermkey/SCHEMATIC @@ -0,0 +1,22 @@ +#!/bin/sh +name="libtermkey" +short_desc="Easy processing of keyboard entry from terminal-based programs" +desc="This library allows easy processing of keyboard entry from terminal-based programs. It handles all the necessary logic to recognise special keys, UTF-8 combining, and so on, with a simple interface." +category="devel" +version="0.22" +maintainer="oak@petrifiedoak.com" +www="https://www.leonerd.org.uk/code/libtermkey/" +master_site="https://www.leonerd.org.uk/code/libtermkey/" +source_name="$name-$version.tar.gz" +license_logic="single" +license="MIT" + +build_dependencies=("lang/gcc" "devel/gmake" "devel/ncurses" "devel/pkgconf" "devel/libtool") +run_dependencies=("devel/ncurses" "system/glibc") + +build_process() { + cd "$name-$version" || exit 1 + sed -i -e 's/"pkg-config"/pkgconf/g' Makefile + make DESTDIR="$TAMANDUA_STAGE_DIR" install +} + diff --git a/devel/libtool/SCHEMATIC b/devel/libtool/SCHEMATIC new file mode 100644 index 0000000..593d444 --- /dev/null +++ b/devel/libtool/SCHEMATIC @@ -0,0 +1,24 @@ +#!/bin/sh +name="libtool" +short_desc="GNU Libtool is a generic library support script that hides the complexity of using shared libraries behind a consistent, portable interface." +desc="GNU Libtool is a generic library support script that hides the complexity of using shared libraries behind a consistent, portable interface." +category="devel" +version="2.4.7" +maintainer="oak@petrifiedoak.com" +www="https://www.gnu.org/software/libtool/" +master_site="https://ftp.gnu.org/gnu/libtool/" +source_name="$name-$version.tar.gz" +license_logic="single" +license=("GPLv2") + +build_dependencies=("lang/gcc" "devel/gmake" "devel/m4") +run_dependencies=("devel/glibc") + +build_process() { + cd $name-$version || exit 1 + ./configure --prefix=/usr \ + --disable-static || exit 1 + make + make DESTDIR="$TAMANDUA_STAGE_DIR" install +} + From fc627c5adae0adcfd3b59817e604ad33f4bcd23f Mon Sep 17 00:00:00 2001 From: oak Date: Tue, 23 Jan 2024 21:46:34 +0000 Subject: [PATCH 08/20] Update textproc/lpeg/SCHEMATIC --- textproc/lpeg/SCHEMATIC | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/textproc/lpeg/SCHEMATIC b/textproc/lpeg/SCHEMATIC index c4a0160..d84625e 100644 --- a/textproc/lpeg/SCHEMATIC +++ b/textproc/lpeg/SCHEMATIC @@ -18,9 +18,8 @@ build_process() { cd "$name-$version" || exit 1 sed -i -e 's/env//g' makefile make LUADIR=/usr/include - mkdir -p "$TAMANDUA_STAGE_DIR/usr/share/lua" - mkdir -p "$TAMANDUA_STAGE_DIR/usr/lib/lua" - install -Dm0755 $name.so "$TAMANDUA_STAGE_DIR/usr/lib/lua/$name.so" - install -Dm0644 re.lua "$TAMANDUA_STAGE_DIR/usr/share/lua/re.lua" + mkdir -p "$TAMANDUA_STAGE_DIR/usr/share/lua/5.4/" + mkdir -p "$TAMANDUA_STAGE_DIR/usr/lib/lua/5.4/" + install -Dm0755 $name.so "$TAMANDUA_STAGE_DIR/usr/lib/lua/5.4/lpeg.so" + install -Dm0644 re.lua "$TAMANDUA_STAGE_DIR/usr/share/lua/5.4/re.lua" } - From 38773c5b49e48b4560df526da936b5bf498f82d5 Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 14:11:22 +0300 Subject: [PATCH 09/20] lang/lua: fix symbolic objects not installing --- lang/lua/SCHEMATIC | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lang/lua/SCHEMATIC b/lang/lua/SCHEMATIC index 0393602..15f4e86 100644 --- a/lang/lua/SCHEMATIC +++ b/lang/lua/SCHEMATIC @@ -22,6 +22,7 @@ compiles unmodified in all known platforms. The implementation goals are simplicity, efficiency, portability, and low embedding cost." category="lang" version="5.4.6" +version2=${version%.*} maintainer="ffqq@danwin1210.de" www="https://www.lua.org/" master_site="https://www.lua.org/ftp" @@ -44,8 +45,9 @@ build_process() { mv -f _ src/luaconf.h make linux - make INSTALL_TOP=$TAMANDUA_STAGE_DIR/usr \ - INSTALL_MAN=$TAMANDUA_STAGE_DIR/usr/share/man/man1 \ + make INSTALL_TOP=$TAMANDUA_STAGE_DIR/usr \ + TO_LIB="liblua.so liblua.so.$version2 liblua.so.$version" \ + INSTALL_MAN=$TAMANDUA_STAGE_DIR/usr/share/man/man1 \ install mkdir -pv $TAMANDUA_STAGE_DIR/usr/share/doc/lua-5.4.6 mkdir -pv $TAMANDUA_STAGE_DIR/usr/lib/pkgconfig From b27583a45d27adf02a79601617c791ee0c69c7ad Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 14:17:43 +0300 Subject: [PATCH 10/20] devel/libtool: fix glibc dependency, use ftp, and format the description --- devel/libtool/SCHEMATIC | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/devel/libtool/SCHEMATIC b/devel/libtool/SCHEMATIC index 593d444..38a6715 100644 --- a/devel/libtool/SCHEMATIC +++ b/devel/libtool/SCHEMATIC @@ -1,18 +1,19 @@ #!/bin/sh name="libtool" -short_desc="GNU Libtool is a generic library support script that hides the complexity of using shared libraries behind a consistent, portable interface." -desc="GNU Libtool is a generic library support script that hides the complexity of using shared libraries behind a consistent, portable interface." +short_desc="Generic shared library support script" +desc="GNU Libtool is a generic library support script that hides the +complexity of using shared libraries behind a consistent, portable interface." category="devel" version="2.4.7" maintainer="oak@petrifiedoak.com" www="https://www.gnu.org/software/libtool/" -master_site="https://ftp.gnu.org/gnu/libtool/" +master_site="ftp://ftp.gnu.org/gnu/libtool/" source_name="$name-$version.tar.gz" license_logic="single" license=("GPLv2") build_dependencies=("lang/gcc" "devel/gmake" "devel/m4") -run_dependencies=("devel/glibc") +run_dependencies=("system/glibc") build_process() { cd $name-$version || exit 1 From 441bd5fe5a9762ca7661f5d74dcffba64850e4f3 Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 14:18:28 +0300 Subject: [PATCH 11/20] devel/libtermkey: format description --- devel/libtermkey/SCHEMATIC | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/devel/libtermkey/SCHEMATIC b/devel/libtermkey/SCHEMATIC index 6b11739..709a673 100644 --- a/devel/libtermkey/SCHEMATIC +++ b/devel/libtermkey/SCHEMATIC @@ -1,7 +1,9 @@ #!/bin/sh name="libtermkey" short_desc="Easy processing of keyboard entry from terminal-based programs" -desc="This library allows easy processing of keyboard entry from terminal-based programs. It handles all the necessary logic to recognise special keys, UTF-8 combining, and so on, with a simple interface." +desc="This library allows easy processing of keyboard entry from terminal-based programs. +It handles all the necessary logic to recognise special keys, UTF-8 combining, and so on, +with a simple interface." category="devel" version="0.22" maintainer="oak@petrifiedoak.com" From 65b3c65cd90bcc38362c0ac47d57dda2868b91cb Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 14:21:59 +0300 Subject: [PATCH 12/20] devel/libtermkey & devel/libtool: fix license --- devel/libtermkey/SCHEMATIC | 2 +- devel/libtool/SCHEMATIC | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/devel/libtermkey/SCHEMATIC b/devel/libtermkey/SCHEMATIC index 709a673..8419d92 100644 --- a/devel/libtermkey/SCHEMATIC +++ b/devel/libtermkey/SCHEMATIC @@ -11,7 +11,7 @@ www="https://www.leonerd.org.uk/code/libtermkey/" master_site="https://www.leonerd.org.uk/code/libtermkey/" source_name="$name-$version.tar.gz" license_logic="single" -license="MIT" +licenses=("MIT") build_dependencies=("lang/gcc" "devel/gmake" "devel/ncurses" "devel/pkgconf" "devel/libtool") run_dependencies=("devel/ncurses" "system/glibc") diff --git a/devel/libtool/SCHEMATIC b/devel/libtool/SCHEMATIC index 38a6715..b3aa795 100644 --- a/devel/libtool/SCHEMATIC +++ b/devel/libtool/SCHEMATIC @@ -10,7 +10,7 @@ www="https://www.gnu.org/software/libtool/" master_site="ftp://ftp.gnu.org/gnu/libtool/" source_name="$name-$version.tar.gz" license_logic="single" -license=("GPLv2") +licenses=("GPLv2") build_dependencies=("lang/gcc" "devel/gmake" "devel/m4") run_dependencies=("system/glibc") From ddcc5dc18823be08f6025267b24eb06d984229a4 Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 14:34:00 +0300 Subject: [PATCH 13/20] sysutils/ssu & textproc/lpeg: fix license --- sysutils/ssu/SCHEMATIC | 2 +- textproc/lpeg/SCHEMATIC | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sysutils/ssu/SCHEMATIC b/sysutils/ssu/SCHEMATIC index 746d363..3db09c0 100644 --- a/sysutils/ssu/SCHEMATIC +++ b/sysutils/ssu/SCHEMATIC @@ -9,7 +9,7 @@ www="https://github.com/illiliti/ssu" master_site="https://github.com/illiliti/ssu/archive/refs/tags/" source_name="$version.tar.gz" license_logic="single" -license="(GPL-3.0)" +license=("GPLv3") build_dependencies=("devel/gmake" "lang/gcc" "devel/linux-headers") run_dependencies=("system/glibc") diff --git a/textproc/lpeg/SCHEMATIC b/textproc/lpeg/SCHEMATIC index d84625e..9f48c65 100644 --- a/textproc/lpeg/SCHEMATIC +++ b/textproc/lpeg/SCHEMATIC @@ -9,7 +9,7 @@ www="https://www.inf.puc-rio.br/~roberto/lpeg/" master_site="https://www.inf.puc-rio.br/~roberto/lpeg/" source_name="$name-$version.tar.gz" license_logic="single" -license=("MIT") +licenses=("MIT") build_dependencies=("lang/lua" "lang/gcc" "devel/gmake") run_dependencies=("lang/lua" "system/glibc") From 434d44bde02b12a63342b8b1b4703520c304faf3 Mon Sep 17 00:00:00 2001 From: ffqq Date: Wed, 24 Jan 2024 22:13:19 +0300 Subject: [PATCH 14/20] devel/pkgconf: bump to revision 1 --- devel/pkgconf/SCHEMATIC | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/devel/pkgconf/SCHEMATIC b/devel/pkgconf/SCHEMATIC index ccf61c8..b98e1e5 100644 --- a/devel/pkgconf/SCHEMATIC +++ b/devel/pkgconf/SCHEMATIC @@ -6,11 +6,12 @@ development frameworks. It is similar to pkg-config, but was written from scratch in Summer of 2011 to replace pkg-config, which now needs itself to build itself." category="devel" -version="2.0.3" +version="2.0.3_1" +version2="2.0.3" maintainer="ffqq@danwin1210.de" www="https://gitea.treehouse.systems/ariadne/pkgconf" master_site="https://distfiles.ariadne.space/pkgconf" -source_name="$name-$version.tar.gz" +source_name="$name-$version2.tar.gz" license_logic="single" # accepted values: single, and, or licenses=("ISCL") @@ -18,13 +19,13 @@ build_dependencies=("devel/gmake" "lang/gcc") run_dependencies=("system/glibc") build_process() { - cd $name-$version || exit 1 + cd $name-$version2 || exit 1 ./configure --prefix=/usr \ --disable-static \ || exit 1 make -j$(nproc) || exit 1 make DESTDIR="$TAMANDUA_STAGE_DIR" install || exit 1 # pkg-config compat - ln -s /usr/bin/pkgconf $TAMANDUA_STAGE_DIR/usr/bin/pkg-config - ln -s /usr/share/man/man1/pkgconf.1 $TAMANDUA_STAGE_DIR/usr/share/man/man1/pkg-config.1 + ln -sv /usr/bin/pkgconf $TAMANDUA_STAGE_DIR/usr/bin/pkg-config + ln -sv /usr/share/man/man1/pkgconf.1 $TAMANDUA_STAGE_DIR/usr/share/man/man1/pkg-config.1 } \ No newline at end of file From fed2d7294b340540e5a4c54df66cbf6eec25b17a Mon Sep 17 00:00:00 2001 From: ffqq Date: Thu, 25 Jan 2024 16:37:20 +0300 Subject: [PATCH 15/20] security/pam: add pam configuration --- security/pam/SCHEMATIC | 15 +++++++++------ security/pam/files/other | 9 +++++++++ security/pam/files/system-auth | 23 +++++++++++++++++++++++ security/pam/files/system-local-login | 6 ++++++ security/pam/files/system-login | 21 +++++++++++++++++++++ security/pam/files/system-remote-login | 6 ++++++ 6 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 security/pam/files/other create mode 100644 security/pam/files/system-auth create mode 100644 security/pam/files/system-local-login create mode 100644 security/pam/files/system-login create mode 100644 security/pam/files/system-remote-login diff --git a/security/pam/SCHEMATIC b/security/pam/SCHEMATIC index e669773..1afe2d0 100644 --- a/security/pam/SCHEMATIC +++ b/security/pam/SCHEMATIC @@ -9,11 +9,12 @@ yescrypt, gost-yescrypt, scrypt, bcrypt, sha512crypt, sha256crypt, md5crypt, Sun It provides the traditional Unix crypt and crypt_r interfaces, as well as a set of extended interfaces pioneered by Openwall Linux, crypt_rn, crypt_ra, crypt_gensalt, crypt_gensalt_rn, and crypt_gensalt_ra." category="security" -version="1.5.3" +version="1.5.3_1" +version2="${version%%_*}" maintainer="ffqq@danwin1210.de" www="https://github.com/linux-pam/linux-pam" -master_site="https://github.com/linux-pam/linux-pam/releases/download/v$version" -source_name="linux-$name-$version.tar.xz" +master_site="https://github.com/linux-pam/linux-pam/releases/download/v$version2" +source_name="linux-$name-$version2.tar.xz" license_logic="single" # accepted values: single, and, or licenses=("GPLv2") @@ -21,9 +22,9 @@ build_dependencies=("devel/gmake" "lang/gcc" "security/libxcrypt" "textproc/flex run_dependencies=("system/glibc" "security/libxcrypt") build_process() { - cd Linux-PAM-$version - curl -LO https://github.com/linux-pam/linux-pam/releases/download/v$version/Linux-PAM-$version-docs.tar.xz # fetch docs - tar -xf Linux-PAM-$version-docs.tar.xz + cd Linux-PAM-$version2 + curl -LO https://github.com/linux-pam/linux-pam/releases/download/v$version2/Linux-PAM-$version2-docs.tar.xz # fetch docs + tar -xf Linux-PAM-$version2-docs.tar.xz ./configure --prefix=/usr \ --sbindir=/usr/sbin \ --sysconfdir=/etc \ @@ -34,4 +35,6 @@ build_process() { make -j$(nproc) make DESTDIR="$TAMANDUA_STAGE_DIR" install chmod -v 4755 $TAMANDUA_STAGE_DIR/usr/sbin/unix_chkpwd + mkdir -p $TAMANDUA_STAGE_DIR/etc/pam.d + cp -v $TAMANDUA_FILES_DIR/* $TAMANDUA_STAGE_DIR/etc/pam.d } \ No newline at end of file diff --git a/security/pam/files/other b/security/pam/files/other new file mode 100644 index 0000000..5246d82 --- /dev/null +++ b/security/pam/files/other @@ -0,0 +1,9 @@ +#%PAM-1.0 +auth required pam_deny.so +auth required pam_warn.so +account required pam_deny.so +account required pam_warn.so +password required pam_deny.so +password required pam_warn.so +session required pam_deny.so +session required pam_warn.so \ No newline at end of file diff --git a/security/pam/files/system-auth b/security/pam/files/system-auth new file mode 100644 index 0000000..d0fc734 --- /dev/null +++ b/security/pam/files/system-auth @@ -0,0 +1,23 @@ +#%PAM-1.0 + +auth required pam_faillock.so preauth +# Optionally use requisite above if you do not want to prompt for the password +# on locked accounts. +auth [success=1 default=bad] pam_unix.so try_first_pass nullok +auth [default=die] pam_faillock.so authfail +auth optional pam_permit.so +auth required pam_env.so +auth required pam_faillock.so authsucc +# If you drop the above call to pam_faillock.so the lock will be done also +# on non-consecutive authentication failures. + +account required pam_unix.so +account optional pam_permit.so +account required pam_time.so + +password required pam_unix.so try_first_pass nullok shadow +password optional pam_permit.so + +session required pam_limits.so +session required pam_unix.so +session optional pam_permit.so \ No newline at end of file diff --git a/security/pam/files/system-local-login b/security/pam/files/system-local-login new file mode 100644 index 0000000..08657cc --- /dev/null +++ b/security/pam/files/system-local-login @@ -0,0 +1,6 @@ +#%PAM-1.0 + +auth include system-login +account include system-login +password include system-login +session include system-login \ No newline at end of file diff --git a/security/pam/files/system-login b/security/pam/files/system-login new file mode 100644 index 0000000..1f67be6 --- /dev/null +++ b/security/pam/files/system-login @@ -0,0 +1,21 @@ +#%PAM-1.0 + +auth required pam_shells.so +auth requisite pam_nologin.so +auth include system-auth + +account required pam_access.so +account required pam_nologin.so +account include system-auth + +password include system-auth + +session optional pam_loginuid.so +session optional pam_keyinit.so force revoke +session include system-auth +session optional pam_motd.so +session optional pam_mail.so dir=/var/spool/mail standard quiet +session optional pam_umask.so +-session optional pam_elogind.so +session required pam_env.so user_readenv=1 +-session optional pam_rundir.so \ No newline at end of file diff --git a/security/pam/files/system-remote-login b/security/pam/files/system-remote-login new file mode 100644 index 0000000..08657cc --- /dev/null +++ b/security/pam/files/system-remote-login @@ -0,0 +1,6 @@ +#%PAM-1.0 + +auth include system-login +account include system-login +password include system-login +session include system-login \ No newline at end of file From e29ed12245c81f71288b413e2430d002f114e525 Mon Sep 17 00:00:00 2001 From: ffqq Date: Thu, 25 Jan 2024 16:37:56 +0300 Subject: [PATCH 16/20] system/etc: remove conflict with security/pam (DONT UPDATE IN PKG) --- system/etc/SCHEMATIC | 6 ++---- system/etc/files/other | 4 ---- 2 files changed, 2 insertions(+), 8 deletions(-) delete mode 100644 system/etc/files/other diff --git a/system/etc/SCHEMATIC b/system/etc/SCHEMATIC index e5dfbae..79fca73 100644 --- a/system/etc/SCHEMATIC +++ b/system/etc/SCHEMATIC @@ -3,8 +3,7 @@ name="etc" short_desc="Necessary /etc files (do NOT uninstall)" desc="This package contains the necessary files required for user management. The contents are: /etc/passwd -/etc/group -/etc/pam.d/other" +/etc/group" category="system" version="KROS" maintainer="ffqq@danwin1210.de" @@ -17,7 +16,6 @@ build_dependencies=() run_dependencies=("system/glibc") build_process() { - mkdir -p $TAMANDUA_STAGE_DIR/etc/pam.d + mkdir -p $TAMANDUA_STAGE_DIR/etc cp $TAMANDUA_FILES_DIR/{group,passwd} $TAMANDUA_STAGE_DIR/etc - cp $TAMANDUA_FILES_DIR/other $TAMANDUA_STAGE_DIR/etc/pam.d } \ No newline at end of file diff --git a/system/etc/files/other b/system/etc/files/other deleted file mode 100644 index 387f477..0000000 --- a/system/etc/files/other +++ /dev/null @@ -1,4 +0,0 @@ -auth required pam_deny.so -account required pam_deny.so -password required pam_deny.so -session required pam_deny.so \ No newline at end of file From ec9069e2168337c180b393398fd3024274e2dca0 Mon Sep 17 00:00:00 2001 From: ffqq Date: Thu, 25 Jan 2024 19:09:15 +0300 Subject: [PATCH 17/20] security/pam: fix description --- security/pam/SCHEMATIC | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/security/pam/SCHEMATIC b/security/pam/SCHEMATIC index 1afe2d0..a19c2cb 100644 --- a/security/pam/SCHEMATIC +++ b/security/pam/SCHEMATIC @@ -1,13 +1,14 @@ #!/bin/sh name="pam" short_desc="Linux Pluggable Authentication Modules" -desc="libxcrypt is a modern library for one-way hashing of passwords. It supports a wide variety -of both modern and historical hashing methods: +desc="Linux Pluggable Authentication Modules (PAM) is a suite of libraries that allow a Linux system +administrator to configure methods to authenticate users. -yescrypt, gost-yescrypt, scrypt, bcrypt, sha512crypt, sha256crypt, md5crypt, SunMD5, sha1crypt, NT, bsdicrypt,bigcrypt, and descrypt. +It provides a flexible and centralized way to switch authentication methods for secured applications +by using configuration files instead of changing application code. There are Linux PAM +libraries allowing authentication using methods such as local passwords, LDAP, or fingerprint readers. -It provides the traditional Unix crypt and crypt_r interfaces, as well as a set of extended -interfaces pioneered by Openwall Linux, crypt_rn, crypt_ra, crypt_gensalt, crypt_gensalt_rn, and crypt_gensalt_ra." +Linux PAM is evolved from the Unix Pluggable Authentication Modules architecture." category="security" version="1.5.3_1" version2="${version%%_*}" From bb96aec4f8066c94a27ae8ae0c4692ef932d06d6 Mon Sep 17 00:00:00 2001 From: ffqq Date: Thu, 25 Jan 2024 22:50:05 +0300 Subject: [PATCH 18/20] sysutils/kmod: New port --- sysutils/kmod/SCHEMATIC | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 sysutils/kmod/SCHEMATIC diff --git a/sysutils/kmod/SCHEMATIC b/sysutils/kmod/SCHEMATIC new file mode 100644 index 0000000..1265af3 --- /dev/null +++ b/sysutils/kmod/SCHEMATIC @@ -0,0 +1,38 @@ +#!/bin/sh +name="kmod" +short_desc="Kernel module utilities & libraries" +desc="kmod is a set of tools to handle common tasks with Linux kernel +modules like insert, remove, list, check properties, resolve dependencies +and aliases. + +These tools are designed on top of libkmod, a library that is +shipped with kmod. + +See libkmod/README for more details on this library and how to +use it. + +The aim is to be compatible with tools, configurations and indexes +from module-init-tools project." +category="sysutils" +version="31" +maintainer="ffqq@danwin1210.de" +www="https://lore.kernel.org/linux-modules/" +master_site="https://mirrors.edge.kernel.org/pub/linux/utils/kernel/kmod/" +source_name="$name-$version.tar.gz" +license_logic="single" # accepted values: single, and, or +licenses=("LGPLv3") + +build_dependencies=("devel/gmake" "lang/gcc") +run_dependencies=("system/glibc") + +build_process() { + cd $name-$version + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --with-openssl \ + --with-xz \ + --with-zstd \ + --with-zlib || exit 1 + make -j$(nproc) + make DESTDIR="$TAMANDUA_STAGE_DIR" install +} \ No newline at end of file From 7a7ec7d451777882ee29e094e0c7f1eabeebcbac Mon Sep 17 00:00:00 2001 From: ffqq Date: Thu, 25 Jan 2024 22:54:46 +0300 Subject: [PATCH 19/20] sysutils/kmod: remove ampersand --- sysutils/kmod/SCHEMATIC | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysutils/kmod/SCHEMATIC b/sysutils/kmod/SCHEMATIC index 1265af3..a4ec5b0 100644 --- a/sysutils/kmod/SCHEMATIC +++ b/sysutils/kmod/SCHEMATIC @@ -1,6 +1,6 @@ #!/bin/sh name="kmod" -short_desc="Kernel module utilities & libraries" +short_desc="Kernel module utilities and libraries" desc="kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases. From a7f183bae37552c066f43c9f177a78105c198e76 Mon Sep 17 00:00:00 2001 From: arzumify Date: Thu, 25 Jan 2024 21:18:46 +0000 Subject: [PATCH 20/20] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index b3fa724..5685a8b 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +[//]: # (Hi - The HectaBit admin abuser) + # frozenports ### Basalt uFreeBSD/Linux Ports Tree ---