diff --git a/README.md b/README.md index 5903d1e..6d1b4d4 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,13 @@ This is my repository for Linux from Scratch, and designed for the package manager [leaf](https://gitea.phywyj.dynv6.net/wyj/leaf). Warning: `leaf` won't deal with the dependence relation, and currently won't check file confliction. You have to deal with these problems as the maintainer of your own LFS system. + +## Different with LFS book +- Use `ensurepip` in *Chapter 7.10. Python-3.13.2*, then install `python-pip` after *Chapter 8.51 Python* +- Use `SBINDIR=/usr/bin/` to install `iproute2`. `ip` command should be avaliable for non-root +- We won't install TeX files in *Chapter 8.72. Texinfo-7.2*. We will install TexLive. +- We won't install Grub in LFS. Install in BLFS with UEFI instead. + +## issues +- `lfs/vim-9.1.1166` has `Test_write_backup_symlink` failed, which can pass if `call assert_true(filereadable('./Xbackup/Xwbsfile.bak')) +` is commented. Seams like cannot create this backup file. diff --git a/TODO.md b/TODO.md index 0e94de0..03bc59e 100644 --- a/TODO.md +++ b/TODO.md @@ -1,4 +1,4 @@ # todo -- [ ] `pip` should be a standalone package. +- [x] `pip` should be a standalone package. diff --git a/misc/neofetch-7.1.0.PKGBUILD.old b/app-misc/neofetch-7.1.0.PKGBUILD.old similarity index 100% rename from misc/neofetch-7.1.0.PKGBUILD.old rename to app-misc/neofetch-7.1.0.PKGBUILD.old diff --git a/misc/neofetch-7.1.1.PKGBUILD b/app-misc/neofetch-7.1.1.PKGBUILD similarity index 81% rename from misc/neofetch-7.1.1.PKGBUILD rename to app-misc/neofetch-7.1.1.PKGBUILD index e6198e7..ab09988 100644 --- a/misc/neofetch-7.1.1.PKGBUILD +++ b/app-misc/neofetch-7.1.1.PKGBUILD @@ -4,12 +4,12 @@ pkgdesc="A CLI system information tool written in BASH that supports displaying arch=('any') homepage="https://gitea.phywyj.dynv6.net/wyj/neofetch" license=('MIT') -sources=("${pkgver}.tar.gz") +sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://gitea.phywyj.dynv6.net/wyj/neofetch/archive/${pkgver}.tar.gz") md5sums=("421b7dc986ffb23bd8b0d74bcf20325b") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_install() { diff --git a/shells/zsh-5.9.PKGBUILD b/app-shells/zsh-5.9.PKGBUILD similarity index 94% rename from shells/zsh-5.9.PKGBUILD rename to app-shells/zsh-5.9.PKGBUILD index 8c790f1..80704e8 100644 --- a/shells/zsh-5.9.PKGBUILD +++ b/app-shells/zsh-5.9.PKGBUILD @@ -9,7 +9,7 @@ md5sums=("182e37ca3fe3fa6a44f69ad462c5c30e") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -e 's/set_from_init_file/texinfo_&/' -i Doc/Makefile.in sed 's|/etc/z|/etc/zsh/z|g' -i Doc/*.* } diff --git a/dev/git-2.44.0.PKGBUILD b/dev-vcs/git-2.44.0.PKGBUILD similarity index 84% rename from dev/git-2.44.0.PKGBUILD rename to dev-vcs/git-2.44.0.PKGBUILD index 54114cc..9542591 100644 --- a/dev/git-2.44.0.PKGBUILD +++ b/dev-vcs/git-2.44.0.PKGBUILD @@ -7,10 +7,10 @@ sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://www.kernel.org/pub/software/scm/git/git-2.44.0.tar.xz") md5sums=("7e4eb7c45e9ba7c90fa51deeea49732f") -distdir=${DIST_DIR}/${pkgname}-${pkgver} +distdir=${distdir} src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_check(){ diff --git a/lfs-12.2-systemd/bison-3.8.2.PKGBUILD b/lfs-12.2-systemd/bison-3.8.2.PKGBUILD deleted file mode 100644 index 20f7bd6..0000000 --- a/lfs-12.2-systemd/bison-3.8.2.PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -pkgname=bison -pkgver=3.8.2 -pkgdesc="The GNU general-purpose parser generator" -license=('GPL-3.0-or-later') -url="https://www.gnu.org/software/bison/bison.html" -sources=("${pkgname}-${pkgver}.tar.xz") -urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("c28f119f405a2304ff0a7ccdcc629713") - -src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 -} - -src_build() { - ./configure --prefix=/usr --docdir=/usr/share/doc/bison-3.8.2 - make -} - -src_check() { - make check -} - -src_install() { - make DESTDIR="$pkgdir" install -} diff --git a/lfs-12.2-systemd/kmod-33.PKGBUILD b/lfs-12.2-systemd/kmod-33.PKGBUILD deleted file mode 100644 index 3f8e396..0000000 --- a/lfs-12.2-systemd/kmod-33.PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -pkgname=kmod -pkgver=33 -pkgdesc="Linux kernel module management tools and library" -url="https://github.com/kmod-project/kmod" -license=('LGPL-2.1-or-later' 'GPL-2.0-or-later') -sources=("${pkgname}-${pkgver}.tar.xz") -urls=("https://www.kernel.org/pub/linux/utils/kernel/${pkgname}/${sources[0]}") -md5sums=("c451c4aa61521adbe8af147f498046f8") - -src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 -} - -src_build() { - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --with-openssl \ - --with-xz \ - --with-zstd \ - --with-zlib \ - --disable-manpages - make -} - -src_install() { - make DESTDIR="${pkgdir}" install - install -d -m 755 "${pkgdir}/usr/sbin" - install -dm0755 "${pkgdir}"/{etc,usr/lib}/{depmod,modprobe}.d - for target in depmod insmod modinfo modprobe rmmod; do - ln -sfv ../bin/kmod "${pkgdir}/usr/sbin/$target" - rm -fv "${pkgdir}/usr/bin/$target" - done -} - diff --git a/lfs-12.2-systemd/man-pages-6.9.1.PKGBUILD b/lfs-12.2-systemd/man-pages-6.9.1.PKGBUILD deleted file mode 100644 index adc2610..0000000 --- a/lfs-12.2-systemd/man-pages-6.9.1.PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -pkgname="man-pages" -pkgver="6.9.1" -pkgdesc="Linux man pages" -license=("GPL2") -sources=("${pkgname}-${pkgver}.tar.xz") -urls=("https://www.kernel.org/pub/linux/docs/man-pages/man-pages-6.9.1.tar.xz") -md5sums=("4d56775b6cce4edf1e496249e7c01c1a") - -distdir=${DIST_DIR}/${pkgname}-${pkgver} - -src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 -} - -src_check(){ - return 0 -} - -src_build() { - cd "$srcdir" - rm -v man3/crypt* -} - -src_install() { - make prefix=/usr DESTDIR="$pkgdir" install -} diff --git a/lfs-12.2-systemd/python-setuptools-72.2.0.PKGBUILD b/lfs-12.2-systemd/python-setuptools-72.2.0.PKGBUILD deleted file mode 100644 index 0809a8b..0000000 --- a/lfs-12.2-systemd/python-setuptools-72.2.0.PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -pkgname=python-setuptools -_name=${pkgname#python-} -pkgver=72.2.0 -pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages" -homepage="https://pypi.org/project/setuptools/" -license=('MIT') -sources=("${_name}-${pkgver}.tar.gz") -urls=("https://pypi.org/packages/source/s/${_name}/${sources[0]}") -md5sums=("2e0ffd0f6fc632a11442b79d9b1c68bd") - -src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 -} - -src_build() { - python3 setup.py build -} - -src_check() { - : -} - -src_install() { - python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build - install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" -} - diff --git a/lfs-12.2-systemd/shadow-4.16.0/useradd b/lfs-12.2-systemd/shadow-4.16.0/useradd deleted file mode 100644 index e4eb68b..0000000 --- a/lfs-12.2-systemd/shadow-4.16.0/useradd +++ /dev/null @@ -1,11 +0,0 @@ -# useradd defaults file -GROUP=999 -GROUPS= -HOME=/home -INACTIVE=-1 -EXPIRE= -SHELL=/bin/bash -SKEL=/etc/skel -USRSKEL=/usr/etc/skel -CREATE_MAIL_SPOOL=no -LOG_INIT=yes diff --git a/lfs-12.2-systemd/tcl-8.6.14.PKGBUILD b/lfs-12.2-systemd/tcl-8.6.14.PKGBUILD deleted file mode 100644 index 1923027..0000000 --- a/lfs-12.2-systemd/tcl-8.6.14.PKGBUILD +++ /dev/null @@ -1,64 +0,0 @@ -pkgname=tcl -pkgver=8.6.14 -pkgdesc='Powerful, easy-to-learn dynamic programming language' -homepage='http://tcl.sourceforge.net/' -license=(TCL) -_archive="$pkgname$pkgver" -sources=("${_archive}-src.tar.gz" - "${_archive}-html.tar.gz" -) -urls=("https://downloads.sourceforge.net/sourceforge/tcl/$_archive-src.tar.gz" - "https://downloads.sourceforge.net/sourceforge/tcl/$_archive-html.tar.gz" -) -md5sums=("c30b57c6051be28fa928d09aca82841e" - "5467198f8d57c54835bf80b98ffb0170" -) - - -src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 -} - -src_build() { - SRCDIR=$(pwd) - cd unix - ./configure --prefix=/usr \ - --mandir=/usr/share/man \ - --disable-rpath - make - - sed -e "s|$SRCDIR/unix|/usr/lib|" \ - -e "s|$SRCDIR|/usr/include|" \ - -i tclConfig.sh - - sed -e "s|$SRCDIR/unix/pkgs/tdbc1.1.7|/usr/lib/tdbc1.1.7|" \ - -e "s|$SRCDIR/pkgs/tdbc1.1.7/generic|/usr/include|" \ - -e "s|$SRCDIR/pkgs/tdbc1.1.7/library|/usr/lib/tcl8.6|" \ - -e "s|$SRCDIR/pkgs/tdbc1.1.7|/usr/include|" \ - -i pkgs/tdbc1.1.7/tdbcConfig.sh - - sed -e "s|$SRCDIR/unix/pkgs/itcl4.2.4|/usr/lib/itcl4.2.4|" \ - -e "s|$SRCDIR/pkgs/itcl4.2.4/generic|/usr/include|" \ - -e "s|$SRCDIR/pkgs/itcl4.2.4|/usr/include|" \ - -i pkgs/itcl4.2.4/itclConfig.sh - - unset SRCDIR -} - -src_check() { - cd "${srcdir}/unix" - make test -} - -src_install() { - cd "${srcdir}/unix" - make INSTALL_ROOT="${pkgdir}" install install-private-headers - chmod -v u+w "${pkgdir}/usr/lib/libtcl8.6.so" - ln -sfv tclsh8.6 "${pkgdir}/usr/bin/tclsh" - mv "${pkgdir}"/usr/share/man/man3/{Thread,Tcl_Thread}.3 - - cd .. - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[1]} --strip-components=1 - mkdir -v -p "${pkgdir}/usr/share/doc/tcl-8.6.14" - cp -v -r ./html/* "${pkgdir}/usr/share/doc/tcl-8.6.14" -} diff --git a/lfs-12.2-systemd/acl-2.3.2.PKGBUILD b/lfs/acl-2.3.2.PKGBUILD similarity index 79% rename from lfs-12.2-systemd/acl-2.3.2.PKGBUILD rename to lfs/acl-2.3.2.PKGBUILD index 3f5c4a8..15547fb 100644 --- a/lfs-12.2-systemd/acl-2.3.2.PKGBUILD +++ b/lfs/acl-2.3.2.PKGBUILD @@ -9,7 +9,7 @@ md5sums=("590765dee95907dbc3c856f7255bd669") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { @@ -19,6 +19,11 @@ src_build() { make } +src_check() { + leaf_record_message "test/cp.test is known to fail." + make check +} + src_install() { make DESTDIR="${pkgdir}" install } diff --git a/lfs-12.2-systemd/attr-2.5.2.PKGBUILD b/lfs/attr-2.5.2.PKGBUILD similarity index 84% rename from lfs-12.2-systemd/attr-2.5.2.PKGBUILD rename to lfs/attr-2.5.2.PKGBUILD index f32a069..489f83d 100644 --- a/lfs-12.2-systemd/attr-2.5.2.PKGBUILD +++ b/lfs/attr-2.5.2.PKGBUILD @@ -1,9 +1,8 @@ pkgname=attr pkgver=2.5.2 -pkgrel=1 pkgdesc='Extended attribute support library for ACL support' arch=('x86_64') -url='https://savannah.nongnu.org/projects/attr' +homepage='https://savannah.nongnu.org/projects/attr' license=('LGPL') depends=('glibc') makedepends=('gettext') @@ -17,7 +16,7 @@ md5sums=("227043ec2f6ca03c0948df5517f9c927") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i '/nfs/d' xattr.conf } diff --git a/lfs-12.2-systemd/autoconf-2.72.PKGBUILD b/lfs/autoconf-2.72.PKGBUILD similarity index 89% rename from lfs-12.2-systemd/autoconf-2.72.PKGBUILD rename to lfs/autoconf-2.72.PKGBUILD index 4dd79ad..943cea8 100644 --- a/lfs-12.2-systemd/autoconf-2.72.PKGBUILD +++ b/lfs/autoconf-2.72.PKGBUILD @@ -8,7 +8,7 @@ urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") md5sums=("1be79f7106ab6767f18391c5e22be701") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/automake-1.17.PKGBUILD b/lfs/automake-1.18.1.PKGBUILD similarity index 68% rename from lfs-12.2-systemd/automake-1.17.PKGBUILD rename to lfs/automake-1.18.1.PKGBUILD index 40d82d7..b1a3a82 100644 --- a/lfs-12.2-systemd/automake-1.17.PKGBUILD +++ b/lfs/automake-1.18.1.PKGBUILD @@ -1,14 +1,14 @@ pkgname=automake -pkgver=1.17 +pkgver=1.18.1 pkgdesc="A GNU tool for automatically creating Makefiles" license=('GPL') -url="https://www.gnu.org/software/automake" +homepage="https://www.gnu.org/software/automake" sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("7ab3a02318fee6f5bd42adfc369abf10") +md5sums=("cea31dbf1120f890cbf2a3032cfb9a68") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/bash-5.2.32.PKGBUILD b/lfs/bash-5.3.PKGBUILD similarity index 73% rename from lfs-12.2-systemd/bash-5.2.32.PKGBUILD rename to lfs/bash-5.3.PKGBUILD index 39693c2..3c911c0 100644 --- a/lfs-12.2-systemd/bash-5.2.32.PKGBUILD +++ b/lfs/bash-5.3.PKGBUILD @@ -1,16 +1,20 @@ pkgname=bash -_basever=5.2 -_patchlevel=32 -pkgver=${_basever}.${_patchlevel} +_basever=5.3 +_patchver=0 +if (( _patchver == 0 )); then + pkgver=$_basever +else + pkgver=$_basever.$_patchver +fi pkgdesc='The GNU Bourne Again shell' license=('GPL-3.0-or-later') -url='https://www.gnu.org/software/bash' +homepage='https://www.gnu.org/software/bash' sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("f204835b2e06c06e37b5ad776ff907f4") +md5sums=("977c8c0c5ae6309191e7768e28ebc951") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/bc-6.7.6.PKGBUILD b/lfs/bc-7.0.3.PKGBUILD similarity index 75% rename from lfs-12.2-systemd/bc-6.7.6.PKGBUILD rename to lfs/bc-7.0.3.PKGBUILD index 5a527c8..491aa22 100644 --- a/lfs-12.2-systemd/bc-6.7.6.PKGBUILD +++ b/lfs/bc-7.0.3.PKGBUILD @@ -1,20 +1,21 @@ pkgname=bc -pkgver=6.7.6 +pkgver=7.0.3 pkgdesc='An arbitrary precision calculator language' homepage="https://git.gavinhoward.com/gavin/bc" license=('GPL-3.0-only') sources=("${pkgname}-${pkgver}.tar.xz") -urls=("https://github.com/gavinhoward/bc/releases/download/${pkgver}/${pkgname}-${pkgver}.tar.xz") -md5sums=("a47aa5e4e7395fbcd159a9228613b97b") +urls=("https://github.com/gavinhoward/bc/releases/download/${pkgver}/${sources[0]}") +md5sums=("ad4db5a0eb4fdbb3f6813be4b6b3da74") options=(!strip) src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { CFLAGS+=" -O3 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" \ + CFLAGS+=" -std=gnu17" # fix bug CC=gcc \ ./configure --prefix=/usr -G -r make diff --git a/lfs-12.2-systemd/binutils-2.43.1.PKGBUILD b/lfs/binutils-2.45.PKGBUILD similarity index 82% rename from lfs-12.2-systemd/binutils-2.43.1.PKGBUILD rename to lfs/binutils-2.45.PKGBUILD index 32781f9..2b528b2 100644 --- a/lfs-12.2-systemd/binutils-2.43.1.PKGBUILD +++ b/lfs/binutils-2.45.PKGBUILD @@ -1,15 +1,15 @@ pkgname=binutils -pkgver=2.43.1 +pkgver=2.45 pkgdesc='A set of programs to assemble and manipulate binary and object files' homepage='https://www.gnu.org/software/binutils/' license=(GPL-2.0-or-later GPL-3.0-or-later LGPL-2.0-or-later LGPL-3.0-or-later GFDL-1.3 FSFAP) sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://sourceware.org/pub/binutils/releases/${sources[0]}") -md5sums=("9202d02925c30969d1917e4bad5a2320") +md5sums=("dee5b4267e0305a99a3c9d6131f45759") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 mkdir -v build cd build } @@ -17,7 +17,6 @@ src_prepare() { src_build() { ../configure --prefix=/usr \ --sysconfdir="${pkgdir}"/etc \ - --with-lib-path=/usr/lib:/usr/local/lib \ --enable-gold \ --enable-ld=default \ --enable-plugins \ @@ -32,10 +31,10 @@ src_build() { src_check() { make -k CFLAGS_FOR_TARGET="-O2 -g" \ - CXXFLAGS="-O2 -no-pie -fno-PIC" \ - CFLAGS="-O2 -no-pie" \ - LDFLAGS="" \ - check + CXXFLAGS="-O2 -no-pie -fno-PIC" \ + CFLAGS="-O2 -no-pie" \ + LDFLAGS="" \ + check } src_install() { diff --git a/lfs/bison-3.8.2.PKGBUILD b/lfs/bison-3.8.2.PKGBUILD new file mode 100644 index 0000000..0e8f2fc --- /dev/null +++ b/lfs/bison-3.8.2.PKGBUILD @@ -0,0 +1,29 @@ +pkgname=bison +pkgver=3.8.2 +pkgdesc="The GNU general-purpose parser generator" +license=('GPL-3.0-or-later') +homepage="https://www.gnu.org/software/bison/bison.html" +sources=("${pkgname}-${pkgver}.tar.xz" + "bison-3.8.2-gcc15-glibcxx-assertions.patch") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}" + "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-devel/bison/files/${sources[1]}") +md5sums=("c28f119f405a2304ff0a7ccdcc629713" + "c82e47067aa2fb6f15ab930245b7bbb2") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i ${distdir}/${sources[1]} +} + +src_build() { + ./configure --prefix=/usr --docdir=/usr/share/doc/${pkgname}-${pkgver} + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="$pkgdir" install +} diff --git a/lfs-12.2-systemd/bzip2-1.0.8.PKGBUILD b/lfs/bzip2-1.0.8.PKGBUILD similarity index 88% rename from lfs-12.2-systemd/bzip2-1.0.8.PKGBUILD rename to lfs/bzip2-1.0.8.PKGBUILD index 52a5e76..7edafd5 100644 --- a/lfs-12.2-systemd/bzip2-1.0.8.PKGBUILD +++ b/lfs/bzip2-1.0.8.PKGBUILD @@ -15,8 +15,8 @@ md5sums=("67e051268d0c475ea773822f7500d0e5" src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 - patch -Np1 -i "${DIST_DIR}/${pkgname}-${pkgver}/${sources[1]}" + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i "${distdir}/${sources[1]}" } src_build() { diff --git a/lfs/check-0.15.2.PKGBUILD b/lfs/check-0.15.2.PKGBUILD new file mode 100644 index 0000000..e95a6b7 --- /dev/null +++ b/lfs/check-0.15.2.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=check +pkgver=0.15.2 +pkgdesc="A unit testing framework for C" +homepage="https://libcheck.github.io/check/" +arch=(x86_64) +license=(LGPL) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/libcheck/check/releases/download/${pkgver}/${sources[0]}") +md5sums=("50fcafcecde5a380415b12e9c574e0b2") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr --disable-static + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" docdir=/usr/share/doc/check-${pkgver} install +} diff --git a/lfs/coreutils-9.7.PKGBUILD b/lfs/coreutils-9.7.PKGBUILD new file mode 100644 index 0000000..181f052 --- /dev/null +++ b/lfs/coreutils-9.7.PKGBUILD @@ -0,0 +1,53 @@ +pkgname=coreutils +pkgver=9.7 +pkgdesc='The basic file, shell and text manipulation utilities of the GNU operating system' +arch=('x86_64') +license=( + GPL-3.0-or-later + GFDL-1.3-or-later +) +homepage='https://www.gnu.org/software/coreutils/' +sources=("${pkgname}-${pkgver}.tar.xz" + "${pkgname}-${pkgver}-upstream_fix-1.patch" + "${pkgname}-${pkgver}-i18n-1.patch" +) +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}" + "https://www.linuxfromscratch.org/patches/lfs/12.4/${sources[1]}" + "https://www.linuxfromscratch.org/patches/lfs/12.4/${sources[2]}" +) +md5sums=("6b7285faf7d5eb91592bdd689270d3f1" + "96382a5aa85d6651a74f94ffb61785d9" + "33ebfad32b2dfb8417c3335c08671206" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i ${distdir}/${sources[1]} + patch -Np1 -i ${distdir}/${sources[2]} +} + +src_build() { + autoreconf -fv + automake -af + FORCE_UNSAFE_CONFIGURE=1 ./configure \ + --prefix=/usr \ + --enable-no-install-program=kill,uptime + make +} + +src_check() { + make NON_ROOT_USERNAME=leaf check-root + # non-root test + chown -R leaf . + su leaf -c "PATH=$PATH make -k RUN_EXPENSIVE_TESTS=yes check" \ + < /dev/null +} + +src_install() { + make DESTDIR=${pkgdir} install + install -d -m 755 ${pkgdir}/usr/sbin/ + mv -v ${pkgdir}/usr/bin/chroot ${pkgdir}/usr/sbin + install -d -m 755 ${pkgdir}/usr/share/man/man8/ + mv -v ${pkgdir}/usr/share/man/man1/chroot.1 ${pkgdir}/usr/share/man/man8/chroot.8 + sed -i 's/"1"/"8"/' ${pkgdir}/usr/share/man/man8/chroot.8 +} diff --git a/lfs/dbus-1.16.2.PKGBUILD b/lfs/dbus-1.16.2.PKGBUILD new file mode 100644 index 0000000..4bc9508 --- /dev/null +++ b/lfs/dbus-1.16.2.PKGBUILD @@ -0,0 +1,34 @@ +pkgname="dbus" +pkgver="1.16.2" +pkgdesc="Freedesktop.org message bus system" +homepage="https://www.freedesktop.org/wiki/Software/dbus" +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://dbus.freedesktop.org/releases/${pkgname}/${sources[0]}") +md5sums=("97832e6f0a260936d28536e5349c22e5") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + mkdir build + cd build + + meson setup --prefix=/usr --buildtype=release --wrap-mode=nofallback .. + ninja + cd .. +} + +src_check() { + pushd build + ninja test + popd +} + +src_install() { + pushd build + DESTDIR=$pkgdir ninja install + install -d -v -m755 ${pkgdir}/var/lib/dbus + ln -sfv ../../../etc/machine-id ${pkgdir}/var/lib/dbus + popd +} diff --git a/lfs-12.2-systemd/dejagnu-1.6.3.PKGBUILD b/lfs/dejagnu-1.6.3.PKGBUILD similarity index 82% rename from lfs-12.2-systemd/dejagnu-1.6.3.PKGBUILD rename to lfs/dejagnu-1.6.3.PKGBUILD index bd29aaf..4df6e32 100644 --- a/lfs-12.2-systemd/dejagnu-1.6.3.PKGBUILD +++ b/lfs/dejagnu-1.6.3.PKGBUILD @@ -4,12 +4,12 @@ pkgdesc='Framework for testing other programs' homepage='https://www.gnu.org/software/dejagnu/' license=(GPL) sources=("${pkgname}-${pkgver}.tar.gz") -urls=(https://ftp.gnu.org/gnu/dejagnu/${pkgname}-${pkgver}.tar.gz) +urls=("https://ftp.gnu.org/gnu/dejagnu/${sources[0]}") md5sums=("68c5208c58236eba447d7d6d1326b821") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 mkdir -v build cd build } diff --git a/lfs/diffutils-3.12.PKGBUILD b/lfs/diffutils-3.12.PKGBUILD new file mode 100644 index 0000000..e60ebb7 --- /dev/null +++ b/lfs/diffutils-3.12.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=diffutils +pkgver=3.12 +pkgdesc='Utility programs used for creating patch files' +arch=('x86_64') +homepage='https://www.gnu.org/software/diffutils' +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("d1b18b20868fb561f77861cd90b05de4") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs/e2fsprogs-1.47.3.PKGBUILD b/lfs/e2fsprogs-1.47.3.PKGBUILD new file mode 100644 index 0000000..6bce4d5 --- /dev/null +++ b/lfs/e2fsprogs-1.47.3.PKGBUILD @@ -0,0 +1,40 @@ +pkgname=e2fsprogs +pkgver=1.47.3 +pkgdesc='Ext2/3/4 filesystem utilities' +arch=('x86_64') +license=('GPL' 'LGPL' 'MIT') +homepage="https://e2fsprogs.sourceforge.net/" +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://downloads.sourceforge.net/project/${pkgname}/${pkgname}/v${pkgver}/${sources[0]}") +md5sums=("113d7a7ee0710d2a670a44692a35fd2e") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + mkdir -v build + cd build + + ../configure --prefix=/usr \ + --sysconfdir=/etc \ + --enable-elf-shlibs \ + --disable-libblkid \ + --disable-libuuid \ + --disable-uuidd \ + --disable-fsck + make +} + +src_check() { + leaf_record_message "m_assume_storage_prezeroed is known to fail." + leaf_record_message "m_rootdir_acl is known to fail on non-ext4 FS." + make check +} + + +src_install() { + make DESTDIR="${pkgdir}" install + rm -fv ${pkgdir}/usr/lib/{libcom_err,libe2p,libext2fs,libss}.a +} + diff --git a/lfs-12.2-systemd/expat-2.6.2.PKGBUILD b/lfs/expat-2.7.1.PKGBUILD similarity index 81% rename from lfs-12.2-systemd/expat-2.6.2.PKGBUILD rename to lfs/expat-2.7.1.PKGBUILD index 2a43f87..8441a87 100644 --- a/lfs-12.2-systemd/expat-2.6.2.PKGBUILD +++ b/lfs/expat-2.7.1.PKGBUILD @@ -1,14 +1,14 @@ pkgname=expat -pkgver=2.6.4 +pkgver=2.7.1 pkgdesc="An XML parser library" homepage="https://libexpat.github.io/" license=(MIT) sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://prdownloads.sourceforge.net/${pkgname}/${sources[0]}") -md5sums=("101fe3e320a2800f36af8cf4045b45c7") +md5sums=("9f0c266ff4b9720beae0c6bd53ae4469") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/expect-5.45.4.PKGBUILD b/lfs/expect-5.45.4.PKGBUILD similarity index 66% rename from lfs-12.2-systemd/expect-5.45.4.PKGBUILD rename to lfs/expect-5.45.4.PKGBUILD index 69f70e0..833e7de 100644 --- a/lfs-12.2-systemd/expect-5.45.4.PKGBUILD +++ b/lfs/expect-5.45.4.PKGBUILD @@ -3,14 +3,15 @@ pkgver=5.45.4 pkgdesc='A tool for automating interactive applications' homepage='https://www.nist.gov/el/msid/expect.cfm' license=(custom) -sources=("${pkgname}${pkgver}.tar.gz" - "expect-5.45.4-gcc14-1.patch" +_archive=${pkgname}${pkgver} +sources=("${_archive}.tar.gz" + "${pkgname}-${pkgver}-gcc15-1.patch" ) -urls=("https://prdownloads.sourceforge.net/expect/expect${pkgver}.tar.gz" - "https://www.linuxfromscratch.org/patches/lfs/12.2/expect-5.45.4-gcc14-1.patch" +urls=("https://prdownloads.sourceforge.net/expect/${sources[0]}" + "https://www.linuxfromscratch.org/patches/lfs/12.4/${sources[1]}" ) md5sums=("00fce8de158422f5ccd2666512329bd2" - "0b8b5ac411d011263ad40b0664c669f0" + "0ca4d6bb8d572fbcdb13cb36cd34833e" ) @@ -18,8 +19,8 @@ src_prepare() { if ! python3 -c 'from pty import spawn; spawn(["echo", "ok"])'; then leaf_error "PTY issue. Cannot build." fi - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 - patch -Np1 -i ${DIST_DIR}/${pkgname}-${pkgver}/${sources[1]} + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i ${distdir}/${sources[1]} } src_build() { @@ -38,7 +39,7 @@ src_check() { src_install() { make DESTDIR="$pkgdir" install - ln -svf expect5.45.4/libexpect5.45.4.so "${pkgdir}/usr/lib" + ln -svf ${pkgname}${pkgver}/libexpect${pkgver}.so "${pkgdir}/usr/lib" install -Dm644 README "$pkgdir/usr/share/licenses/$pkgname/README" # avoid file conflict with the more powerful mkpasswd from the whois package diff --git a/lfs-12.2-systemd/file-5.45.PKGBUILD b/lfs/file-5.46.PKGBUILD similarity index 65% rename from lfs-12.2-systemd/file-5.45.PKGBUILD rename to lfs/file-5.46.PKGBUILD index bd76a69..24f5e4c 100644 --- a/lfs-12.2-systemd/file-5.45.PKGBUILD +++ b/lfs/file-5.46.PKGBUILD @@ -1,14 +1,14 @@ pkgname=file -pkgver=5.45 +pkgver=5.46 pkgdesc='File type identification utility' license=('custom') homepage='https://www.darwinsys.com/file/' sources=("$pkgname-$pkgver.tar.gz") -urls=("https://astron.com/pub/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=("26b2a96d4e3a8938827a1e572afd527a") +urls=("https://astron.com/pub/$pkgname/${sources[0]}") +md5sums=("459da2d4b534801e2e2861611d823864") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs/findutils-4.10.0.PKGBUILD b/lfs/findutils-4.10.0.PKGBUILD new file mode 100644 index 0000000..358dace --- /dev/null +++ b/lfs/findutils-4.10.0.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=findutils +pkgver=4.10.0 +pkgdesc="GNU utilities to locate files" +arch=('x86_64') +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("870cfd71c07d37ebe56f9f4aaf4ad872") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr --localstatedir=/var/lib/locate + make +} + +src_check() { + chown -R leaf . + su leaf -c "PATH=$PATH make check" +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs-12.2-systemd/flex-2.6.4.PKGBUILD b/lfs/flex-2.6.4.PKGBUILD similarity index 69% rename from lfs-12.2-systemd/flex-2.6.4.PKGBUILD rename to lfs/flex-2.6.4.PKGBUILD index a01d86d..9e054b7 100644 --- a/lfs-12.2-systemd/flex-2.6.4.PKGBUILD +++ b/lfs/flex-2.6.4.PKGBUILD @@ -1,22 +1,22 @@ pkgname=flex pkgver=2.6.4 pkgdesc="A tool for generating text-scanning programs" -url="https://github.com/westes/flex" +homepage="https://github.com/westes/flex" license=('custom') sources=("${pkgname}-${pkgver}.tar.gz") urls=( - "https://github.com/westes/flex/releases/download/v$pkgver/flex-$pkgver.tar.gz" + "https://github.com/westes/flex/releases/download/v${pkgver}/${sources[0]}" ) md5sums=("2882e3179748cc9f9c23ec593d6adc8d") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { ./configure --prefix=/usr \ - --docdir=/usr/share/doc/flex-2.6.4 \ + --docdir=/usr/share/doc/${pkgname}-${pkgver} \ --disable-static make } diff --git a/lfs/gawk-5.3.2.PKGBUILD b/lfs/gawk-5.3.2.PKGBUILD new file mode 100644 index 0000000..ff5991d --- /dev/null +++ b/lfs/gawk-5.3.2.PKGBUILD @@ -0,0 +1,30 @@ +pkgname=gawk +pkgver=5.3.2 +pkgdesc="GNU version of awk" +arch=('x86_64') +homepage="https://www.gnu.org/software/gawk/" +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("b7014650c5f45e5d4837c31209dc0037") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -i 's/extras//' Makefile.in +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + chown -R leaf . + su leaf -c "PATH=$PATH make check" +} + +src_install() { + make DESTDIR="${pkgdir}" install + ln -sv gawk.1 "${pkgdir}"/usr/share/man/man1/awk.1 + install -vDm644 doc/{awkforai.txt,*.{eps,pdf,jpg}} -t "${pkgdir}"/usr/share/doc/gawk-${pkgver} +} diff --git a/lfs-12.2-systemd/gcc-14.2.0.PKGBUILD b/lfs/gcc-15.2.0.PKGBUILD similarity index 68% rename from lfs-12.2-systemd/gcc-14.2.0.PKGBUILD rename to lfs/gcc-15.2.0.PKGBUILD index c1a2604..687ad5d 100644 --- a/lfs-12.2-systemd/gcc-14.2.0.PKGBUILD +++ b/lfs/gcc-15.2.0.PKGBUILD @@ -1,13 +1,13 @@ pkgname="gcc" -pkgver="14.2.0" -pkgdesc="" +pkgver="15.2.0" +pkgdesc="The GNU Compiler Collection" homepage="https://gcc.gnu.org" sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/gcc/${pkgname}-${pkgver}/${sources[0]}") -md5sums=("2268420ba02dc01821960e274711bde0") +md5sums=("b861b092bf1af683c46a8aa2e689a6fd") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 case $(uname -m) in x86_64) sed -e '/m64=/s/lib64/lib/' \ @@ -17,6 +17,7 @@ src_prepare() { } src_build() { + leaf_clear_flags mkdir -v build pushd build > /dev/null ../configure --prefix=/usr \ @@ -37,10 +38,10 @@ src_check() { pushd build > /dev/null ulimit -s -H unlimited sed -e '/cpython/d' -i ../gcc/testsuite/gcc.dg/plugin/plugin.exp - sed -e 's/no-pic /&-no-pie /' -i ../gcc/testsuite/gcc.target/i386/pr113689-1.c - sed -e 's/300000/(1|300000)/' -i ../libgomp/testsuite/libgomp.c-c++-common/pr109062.c - sed -e 's/{ target nonpic } //' \ - -e '/GOTPCREL/d' -i ../gcc/testsuite/gcc.target/i386/fentryname3.c + #sed -e 's/no-pic /&-no-pie /' -i ../gcc/testsuite/gcc.target/i386/pr113689-1.c + #sed -e 's/300000/(1|300000)/' -i ../libgomp/testsuite/libgomp.c-c++-common/pr109062.c + #sed -e 's/{ target nonpic } //' \ + # -e '/GOTPCREL/d' -i ../gcc/testsuite/gcc.target/i386/fentryname3.c chown -R leaf . su leaf -c "PATH=$PATH make -k check" @@ -52,11 +53,11 @@ src_install() { pushd build > /dev/null make DESTDIR="$pkgdir" install chown -R root:root \ - "$pkgdir"/usr/lib/gcc/$(gcc -dumpmachine)/14.2.0/include{,-fixed} + "$pkgdir"/usr/lib/gcc/$(${pkgdir}/usr/bin/gcc -dumpmachine)/${pkgver}/include{,-fixed} ln -sv ../bin/cpp "$pkgdir"/usr/lib ln -sv gcc.1 "$pkgdir"/usr/share/man/man1/cc.1 install -d -v -m755 "$pkgdir/usr/lib/bfd-plugins" - ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/14.2.0/liblto_plugin.so \ + ln -sfv ../../libexec/gcc/$(${pkgdir}/usr/bin/gcc -dumpmachine)/${pkgver}/liblto_plugin.so \ "$pkgdir"/usr/lib/bfd-plugins/ mkdir -pv "$pkgdir"/usr/share/gdb/auto-load/usr/lib mv -v "$pkgdir"/usr/lib/*gdb.py "$pkgdir"/usr/share/gdb/auto-load/usr/lib diff --git a/lfs-12.2-systemd/gdbm-1.24.PKGBUILD b/lfs/gdbm-1.26.PKGBUILD similarity index 76% rename from lfs-12.2-systemd/gdbm-1.24.PKGBUILD rename to lfs/gdbm-1.26.PKGBUILD index 6f53b13..7af5ceb 100644 --- a/lfs-12.2-systemd/gdbm-1.24.PKGBUILD +++ b/lfs/gdbm-1.26.PKGBUILD @@ -1,14 +1,14 @@ pkgname=gdbm -pkgver=1.24 +pkgver=1.26 pkgdesc="GNU database library" homepage="https://www.gnu.org/software/gdbm" license=(GPL-3.0-or-later) sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("c780815649e52317be48331c1773e987") +md5sums=("aaa600665bc89e2febb3c7bd90679115") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/gettext-0.22.5.PKGBUILD b/lfs/gettext-0.26.PKGBUILD similarity index 57% rename from lfs-12.2-systemd/gettext-0.22.5.PKGBUILD rename to lfs/gettext-0.26.PKGBUILD index d503886..b2335cd 100644 --- a/lfs-12.2-systemd/gettext-0.22.5.PKGBUILD +++ b/lfs/gettext-0.26.PKGBUILD @@ -1,5 +1,5 @@ pkgname=gettext -pkgver=0.22.5 +pkgver=0.26 pkgdesc="GNU internationalization library" homepage="https://www.gnu.org/software/gettext/" license=( @@ -10,21 +10,20 @@ license=( ) sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("3ae5580599d84be93e6213930facb2db") +md5sums=("8e14e926f088e292f5f2bce95b81d10e") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { ./configure --prefix=/usr \ --disable-static \ - --docdir=/usr/share/doc/gettext-0.22.5 + --docdir=/usr/share/doc/${pkgname}-${pkgver} make } src_check() { - leaf_record_message "If zh_CN.UTF-8 has been defined, then 5 tests are known to fail without libunistring:\n\ttest-ctype_alnum\n\ttest-ctype_alpha\n\ttest-ctype_graph\n\ttest-ctype_print\n\ttest-ctype_punct" make -k check } diff --git a/lfs-12.2-systemd/glibc-2.40.PKGBUILD b/lfs/glibc-2.42.PKGBUILD similarity index 68% rename from lfs-12.2-systemd/glibc-2.40.PKGBUILD rename to lfs/glibc-2.42.PKGBUILD index 08ecb1f..fef7683 100644 --- a/lfs-12.2-systemd/glibc-2.40.PKGBUILD +++ b/lfs/glibc-2.42.PKGBUILD @@ -1,40 +1,46 @@ pkgname="glibc" -pkgver=2.40 -sources=("glibc-2.40.tar.xz" - "glibc-2.40-fhs-1.patch" - "nsswitch.conf" - "ld.so.conf" - "tzdata2024a.tar.gz" +pkgver=2.42 +sources=("${pkgname}-${pkgver}.tar.xz" + "${pkgname}-${pkgver}-fhs-1.patch" + "${pkgname}-${pkgver}/nsswitch.conf" + "${pkgname}-${pkgver}/ld.so.conf" + "${pkgname}-${pkgver}/tzdata2025b.tar.gz" ) -urls=("https://ftp.gnu.org/gnu/glibc/glibc-2.40.tar.xz" - "https://www.linuxfromscratch.org/patches/lfs/12.2/glibc-2.40-fhs-1.patch" - "https://gitea.phywyj.dynv6.net/wyj/LFS-PKGBUILDs/raw/branch/main/lfs-12.2-systemd/glibc-2.40/nsswitch.conf" - "https://gitea.phywyj.dynv6.net/wyj/LFS-PKGBUILDs/raw/branch/main/lfs-12.2-systemd/glibc-2.40/ld.so.conf" - "https://www.iana.org/time-zones/repository/releases/tzdata2024a.tar.gz" +urls=("https://ftp.gnu.org/gnu/glibc/${sources[0]}" + "https://www.linuxfromscratch.org/patches/lfs/12.4/${pkgname}-${pkgver}-fhs-1.patch" + "https://gitea.phywyj.dynv6.net/wyj/LFS-PKGBUILDs/raw/branch/main/lfs/${pkgname}-${pkgver}/nsswitch.conf" + "https://gitea.phywyj.dynv6.net/wyj/LFS-PKGBUILDs/raw/branch/main/lfs/${pkgname}-${pkgver}/ld.so.conf" + "https://www.iana.org/time-zones/repository/releases/tzdata2025b.tar.gz" ) -md5sums=("b390feef233022114950317f10c4fa97" +md5sums=("23c6f5a27932b435cae94e087cb8b1f5" "9a5997c3452909b1769918c759eff8a2" "4caf37ca10aacf7f7bfabddf915e9d25" "79220f5a36182b7160e0cf567dc64129" - "2349edd8335245525cc082f2755d5bf4" + "ad65154c48c74a9b311fe84778c5434f" ) license=(GPL-2.0-or-later LGPL-2.1-or-later) src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 - patch -Np1 -i "${DIST_DIR}/${pkgname}-${pkgver}/${sources[1]}" + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i "${distdir}/${sources[1]}" + sed -e '/unistd.h/i #include ' \ + -e '/libc_rwlock_init/c\ + __libc_rwlock_define_initialized (, reset_lock);\ + memcpy (&lock, &reset_lock, sizeof (lock));' \ + -i stdlib/abort.c } src_build() { + leaf_clear_flags mkdir -pv build cd build echo "rootsbindir=/usr/sbin" > configparms - ../configure --prefix=/usr \ - --disable-werror \ - --enable-kernel=4.19 \ - --enable-stack-protector=strong \ - --disable-nscd \ - libc_cv_slibdir=/usr/lib + ../configure --prefix=/usr \ + --disable-werror \ + --enable-kernel=5.4 \ + --enable-stack-protector=strong \ + --disable-nscd \ + libc_cv_slibdir=/usr/lib make } @@ -46,6 +52,7 @@ _skip_test() { src_check() { _skip_test tst-lchmod io/Makefile + make check } @@ -94,11 +101,9 @@ src_install() { localedef -i zh_TW -f UTF-8 zh_TW.UTF-8 localedef -i zh_CN -f UTF-8 zh_CN.UTF-8 - if [ ! -f /etc/nsswitch.conf ]; then - install -m644 "${DIST_DIR}/${pkgname}-${pkgver}/nsswitch.conf" "${pkgdir}/etc/nsswitch.conf" - fi + install -m644 "${distdir}/${sources[2]}" "${pkgdir}/etc/nsswitch.conf" - tar -xf "${DIST_DIR}/${pkgname}-${pkgver}/tzdata2024a.tar.gz" + tar -xf "${distdir}/${sources[4]}" ZONEINFO=${pkgdir}/usr/share/zoneinfo mkdir -pv $ZONEINFO/{posix,right} for tz in etcetera southamerica northamerica europe africa antarctica \ @@ -111,9 +116,7 @@ src_install() { zic -d $ZONEINFO -p America/New_York unset ZONEINFO - if [ ! -f /etc/ld.so.conf ]; then - install -m644 "${DIST_DIR}/${pkgname}-${pkgver}/ld.so.conf" "${pkgdir}/etc/ld.so.conf" - fi + install -m644 "${distdir}/${sources[3]}" "${pkgdir}/etc/ld.so.conf" } src_preinstall() { diff --git a/lfs-12.2-systemd/glibc-2.40/ld.so.conf b/lfs/glibc-2.42/ld.so.conf similarity index 100% rename from lfs-12.2-systemd/glibc-2.40/ld.so.conf rename to lfs/glibc-2.42/ld.so.conf diff --git a/lfs-12.2-systemd/glibc-2.40/nsswitch.conf b/lfs/glibc-2.42/nsswitch.conf similarity index 100% rename from lfs-12.2-systemd/glibc-2.40/nsswitch.conf rename to lfs/glibc-2.42/nsswitch.conf diff --git a/lfs-12.2-systemd/gmp-6.3.0.PKGBUILD b/lfs/gmp-6.3.0.PKGBUILD similarity index 72% rename from lfs-12.2-systemd/gmp-6.3.0.PKGBUILD rename to lfs/gmp-6.3.0.PKGBUILD index a8cd7a4..6b8ce57 100644 --- a/lfs-12.2-systemd/gmp-6.3.0.PKGBUILD +++ b/lfs/gmp-6.3.0.PKGBUILD @@ -4,20 +4,21 @@ pkgdesc='A free library for arbitrary precision arithmetic' homepage='https://gmplib.org/' license=(GPL-2.0-or-later LGPL-3.0-or-later) -sources=(gmp-$pkgver.tar.xz) +sources=("${pkgname}-$pkgver.tar.xz") urls=("https://ftp.gnu.org/gnu/gmp/${sources[0]}") md5sums=("956dc04e864001a9c22429f761f2c283") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { + sed -i '/long long t1;/,+1s/()/(...)/' configure ./configure --prefix=/usr \ --enable-cxx \ --disable-static \ - --docdir=/usr/share/doc/gmp-6.3.0 + --docdir=/usr/share/doc/${pkgname}-${pkgver} make make html } diff --git a/lfs-12.2-systemd/gperf-3.1.PKGBUILD b/lfs/gperf-3.3.PKGBUILD similarity index 64% rename from lfs-12.2-systemd/gperf-3.1.PKGBUILD rename to lfs/gperf-3.3.PKGBUILD index 88d9a4e..95923e3 100644 --- a/lfs-12.2-systemd/gperf-3.1.PKGBUILD +++ b/lfs/gperf-3.3.PKGBUILD @@ -1,18 +1,18 @@ pkgname=gperf -pkgver=3.1 +pkgver=3.3 pkgdesc="Perfect hash function generator" homepage="https://www.gnu.org/software/gperf/" license=('GPL-3.0-or-later') sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("9e251c0a618ad0824b51117d5d9db87e") +md5sums=("31753b021ea78a21f154bf9eecb8b079") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { - ./configure --prefix=/usr --docdir=/usr/share/doc/gperf-3.1 + ./configure --prefix=/usr --docdir=/usr/share/doc/${pkgname}-${pkgver} make } diff --git a/lfs-12.2-systemd/grep-3.11.PKGBUILD b/lfs/grep-3.12.PKGBUILD similarity index 74% rename from lfs-12.2-systemd/grep-3.11.PKGBUILD rename to lfs/grep-3.12.PKGBUILD index d8b8f92..c81c5db 100644 --- a/lfs-12.2-systemd/grep-3.11.PKGBUILD +++ b/lfs/grep-3.12.PKGBUILD @@ -1,14 +1,14 @@ pkgname=grep -pkgver=3.11 +pkgver=3.12 pkgdesc='A string search utility' license=('GPL3') homepage='https://www.gnu.org/software/grep/' sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=('7c9bbd74492131245f7cdb291fa142c0') +md5sums=('5d9301ed9d209c4a88c8d3a6fd08b9ac') src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs/groff-1.23.0.PKGBUILD b/lfs/groff-1.23.0.PKGBUILD new file mode 100644 index 0000000..528b856 --- /dev/null +++ b/lfs/groff-1.23.0.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=groff +pkgver=1.23.0 +pkgdesc='GNU troff text-formatting system' +arch=('x86_64') +homepage='https://www.gnu.org/software/groff/groff.html' +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("5e4f40315a22bb8a158748e7d5094c7d") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + PAGE=A4 ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs/gzip-1.14.PKGBUILD b/lfs/gzip-1.14.PKGBUILD new file mode 100644 index 0000000..a217d8f --- /dev/null +++ b/lfs/gzip-1.14.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=gzip +pkgver=1.14 +pkgdesc='GNU compression utility' +arch=('x86_64') +homepage='https://www.gnu.org/software/gzip/' +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("4bf5a10f287501ee8e8ebe00ef62b2c2") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs-12.2-systemd/iana-etc-20240806.PKGBUILD b/lfs/iana-etc-20250807.PKGBUILD similarity index 52% rename from lfs-12.2-systemd/iana-etc-20240806.PKGBUILD rename to lfs/iana-etc-20250807.PKGBUILD index f62123f..aebef37 100644 --- a/lfs-12.2-systemd/iana-etc-20240806.PKGBUILD +++ b/lfs/iana-etc-20250807.PKGBUILD @@ -1,16 +1,14 @@ pkgname="iana-etc" -pkgver="20240806" +pkgver="20250807" pkgdesc='/etc/protocols and /etc/services provided by IANA' homepage="https://www.iana.org/protocols" sources=("${pkgname}-${pkgver}.tar.gz") -urls=('https://github.com/Mic92/iana-etc/releases/download/20240806/iana-etc-20240806.tar.gz') -md5sums=("ea3c37c00d22f1159fc3b7d988de8476") +urls=("https://github.com/Mic92/iana-etc/releases/download/${pkgver}/${sources[0]}") +md5sums=("de0a909103d4ff59d1424c5ec7ac9e4a") license=('custom:none') -distdir=${DIST_DIR}/${pkgname}-${pkgver} - src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/inetutils-2.5.PKGBUILD b/lfs/inetutils-2.6.PKGBUILD similarity index 86% rename from lfs-12.2-systemd/inetutils-2.5.PKGBUILD rename to lfs/inetutils-2.6.PKGBUILD index 81c00df..1a3acf8 100644 --- a/lfs-12.2-systemd/inetutils-2.5.PKGBUILD +++ b/lfs/inetutils-2.6.PKGBUILD @@ -1,14 +1,14 @@ pkgname=inetutils -pkgver=2.5 +pkgver=2.6 pkgdesc="A collection of common network programs" homepage="https://www.gnu.org/software/inetutils/" license=('GPL-3.0-or-later') sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("9e5a6dfd2d794dc056a770e8ad4a9263") +md5sums=("401d7d07682a193960bcdecafd03de94") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i 's/def HAVE_TERMCAP_TGETENT/ 1/' telnet/telnet.c } diff --git a/lfs-12.2-systemd/intltool-0.51.0.PKGBUILD b/lfs/intltool-0.51.0.PKGBUILD similarity index 63% rename from lfs-12.2-systemd/intltool-0.51.0.PKGBUILD rename to lfs/intltool-0.51.0.PKGBUILD index 1907607..5400865 100644 --- a/lfs-12.2-systemd/intltool-0.51.0.PKGBUILD +++ b/lfs/intltool-0.51.0.PKGBUILD @@ -4,11 +4,11 @@ pkgdesc="The internationalization tool collection" homepage="https://launchpad.net/intltool" license=('GPL') sources=("${pkgname}-${pkgver}.tar.gz") -urls=("https://launchpad.net/intltool/trunk/0.51.0/+download/${sources[0]}") +urls=("https://launchpad.net/intltool/trunk/${pkgver}/+download/${sources[0]}") md5sums=("12e517cac2b57a0121cda351570f1e63") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i 's:\\\${:\\\$\\{:' intltool-update.in } @@ -23,6 +23,6 @@ src_check() { src_install() { make DESTDIR="${pkgdir}" install - install -v -Dm644 doc/I18N-HOWTO "${pkgdir}/usr/share/doc/intltool-0.51.0/I18N-HOWTO" + install -v -Dm644 doc/I18N-HOWTO "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}/I18N-HOWTO" } diff --git a/lfs/iproute2-6.16.0.PKGBUILD b/lfs/iproute2-6.16.0.PKGBUILD new file mode 100644 index 0000000..a6ce17b --- /dev/null +++ b/lfs/iproute2-6.16.0.PKGBUILD @@ -0,0 +1,25 @@ +pkgname=iproute2 +pkgver=6.16.0 +pkgdesc='IP Routing Utilities' +arch=('x86_64') +license=('GPL-2.0-or-later') +homepage='https://www.kernel.org/pub/linux/utils/net/iproute2/' +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://www.kernel.org/pub/linux/utils/net/${pkgname}/${sources[0]}") +md5sums=("80e1f91bf59d572acc15d5c6eb4f3e7c") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + sed -i /ARPD/d Makefile + rm -fv man/man8/arpd.8 + ./configure --color auto + make NETNS_RUN_DIR=/run/netns +} + +src_install() { + make DESTDIR="${pkgdir}" SBINDIR=/usr/bin/ install + install -vDm644 COPYING README* -t "${pkgdir}"/usr/share/doc/iproute2-${pkgver} +} diff --git a/lfs/kbd-2.8.0.PKGBUILD b/lfs/kbd-2.8.0.PKGBUILD new file mode 100644 index 0000000..bcf0e0b --- /dev/null +++ b/lfs/kbd-2.8.0.PKGBUILD @@ -0,0 +1,38 @@ +pkgname=kbd +pkgver=2.8.0 +pkgdesc="Keytable files and keyboard utilities" +arch=('x86_64') +homepage="http://www.kbd-project.org" +license=('GPL-2.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz" + "kbd-${pkgver}-backspace-1.patch" +) +urls=("https://www.kernel.org/pub/linux/utils/${pkgname}/${sources[0]}" + "https://www.linuxfromscratch.org/patches/lfs/12.4/${sources[1]}" +) +md5sums=("24b5d24f7483726b88f214dc6c77aa41" + "f75cca16a38da6caa7d52151f7136895" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + patch -Np1 -i ${distdir}/${sources[1]} + sed -i '/RESIZECONS_PROGS=/s/yes/no/' configure + sed -i 's/resizecons.8 //' docs/man/man8/Makefile.in +} + +src_build() { + ./configure --prefix=/usr --disable-vlock + make +} + +src_check() { + leaf_record_message "tests are known to fail without valgrind." + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install + install -d -v "${pkgdir}/usr/share/doc/kbd-${pkgver}" + cp -R -v docs/doc -T "${pkgdir}/usr/share/doc/kbd-${pkgver}" +} diff --git a/lfs/kmod-34.2.PKGBUILD b/lfs/kmod-34.2.PKGBUILD new file mode 100644 index 0000000..b474e01 --- /dev/null +++ b/lfs/kmod-34.2.PKGBUILD @@ -0,0 +1,27 @@ +pkgname=kmod +pkgver=34.2 +pkgdesc="Linux kernel module management tools and library" +arch=('x86_64') +homepage='https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git' +license=('LGPL-2.1-or-later' 'GPL-2.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://www.kernel.org/pub/linux/utils/kernel/${pkgname}/${sources[0]}") +md5sums=("36f2cc483745e81ede3406fa55e1065a") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + mkdir -p build + cd build + meson setup --prefix=/usr .. \ + --sbindir=/usr/sbin \ + --buildtype=release \ + -D manpages=false + ninja +} + +src_install() { + DESTDIR=${pkgdir} ninja install +} diff --git a/lfs-12.2-systemd/less-661.PKGBUILD b/lfs/less-679.PKGBUILD similarity index 79% rename from lfs-12.2-systemd/less-661.PKGBUILD rename to lfs/less-679.PKGBUILD index 5007ad2..00990c8 100644 --- a/lfs-12.2-systemd/less-661.PKGBUILD +++ b/lfs/less-679.PKGBUILD @@ -1,14 +1,14 @@ pkgname=less -pkgver=661 +pkgver=679 pkgdesc='A terminal based program for viewing text files' license=('GPL-3.0-or-later' 'BSD-2-Clause') homepage='https://www.greenwoodsoftware.com/less/' sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://www.greenwoodsoftware.com/${pkgname}/${sources[0]}") -md5sums=("44f54b6313c5d71fa1ac224d8d84766a") +md5sums=("0386dc14f6a081a94dfb4c2413864eed") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/libcap-2.70.PKGBUILD b/lfs/libcap-2.76.PKGBUILD similarity index 80% rename from lfs-12.2-systemd/libcap-2.70.PKGBUILD rename to lfs/libcap-2.76.PKGBUILD index 3f8a9aa..cff00bd 100644 --- a/lfs-12.2-systemd/libcap-2.70.PKGBUILD +++ b/lfs/libcap-2.76.PKGBUILD @@ -1,15 +1,15 @@ pkgname=libcap -pkgver=2.70 +pkgver=2.76 pkgdesc="POSIX 1003.1e capabilities" homepage="https://sites.google.com/site/fullycapable/" license=('BSD-3-Clause OR GPL-2.0-only') sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${sources[0]}") -md5sums=("df0e20c6eeca849347b87d5d6a8870c0") +md5sums=("449ade7d620b5c4eeb15a632fbaa4f74") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i '/install -m.*STA/d' libcap/Makefile } diff --git a/lfs-12.2-systemd/libelf-0.191.PKGBUILD b/lfs/libelf-0.193.PKGBUILD similarity index 76% rename from lfs-12.2-systemd/libelf-0.191.PKGBUILD rename to lfs/libelf-0.193.PKGBUILD index 0c56bd9..2c5d5ac 100644 --- a/lfs-12.2-systemd/libelf-0.191.PKGBUILD +++ b/lfs/libelf-0.193.PKGBUILD @@ -1,18 +1,19 @@ pkgname="libelf" _pkgbase="elfutils" -pkgver=0.191 +pkgver=0.193 pkgdesc="Handle ELF object files and DWARF debugging information (lib)" license=("GPL-2.0-or-later OR LGPL-3.0-or-later") homepage="https://sourceware.org/elfutils/" sources=("${_pkgbase}-${pkgver}.tar.bz2") urls=("https://sourceware.org/ftp/${_pkgbase}/${pkgver}/${sources[0]}") -md5sums="636547248fb3fae58ec48030298d3ef7" +md5sums="ceefa052ded950a4c523688799193a44" src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { + CFLAGS+=" -g" ./configure --prefix=/usr \ --disable-debuginfod \ --enable-libdebuginfod=dummy @@ -20,7 +21,8 @@ src_build() { } src_check() { - make check + leaf_record_message "dwarf_srclang_check is known to fail." + make -k check } src_install() { diff --git a/lfs-12.2-systemd/libffi-3.4.6.PKGBUILD b/lfs/libffi-3.5.2.PKGBUILD similarity index 81% rename from lfs-12.2-systemd/libffi-3.4.6.PKGBUILD rename to lfs/libffi-3.5.2.PKGBUILD index 0b719cb..1b8dd89 100644 --- a/lfs-12.2-systemd/libffi-3.4.6.PKGBUILD +++ b/lfs/libffi-3.5.2.PKGBUILD @@ -1,17 +1,18 @@ pkgname=libffi -pkgver=3.4.6 +pkgver=3.5.2 pkgdesc='Portable foreign function interface library' homepage='https://sourceware.org/libffi/' license=(MIT) sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://github.com/libffi/libffi/releases/download/v${pkgver}/${sources[0]}") -md5sums=("b9cac6c5997dca2b3787a59ede34e0eb") +md5sums=("92af9efad4ba398995abf44835c5d9e9") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { + CFLAGS+=" -march=native" ./configure --prefix=/usr \ --disable-static \ --with-gcc-arch=native diff --git a/lfs/libpipeline-1.5.8.PKGBUILD b/lfs/libpipeline-1.5.8.PKGBUILD new file mode 100644 index 0000000..842c15e --- /dev/null +++ b/lfs/libpipeline-1.5.8.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=libpipeline +pkgver=1.5.8 +pkgdesc="a C library for manipulating pipelines of subprocesses in a flexible and convenient way" +arch=('x86_64') +homepage="https://nongnu.org/libpipeline/" +license=('GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://download.savannah.gnu.org/releases/${pkgname}/${sources[0]}") +md5sums=("17ac6969b2015386bcb5d278a08a40b5") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs-12.2-systemd/libtool-2.4.7.PKGBUILD b/lfs/libtool-2.5.4.PKGBUILD similarity index 59% rename from lfs-12.2-systemd/libtool-2.4.7.PKGBUILD rename to lfs/libtool-2.5.4.PKGBUILD index ae559a4..bb94bd5 100644 --- a/lfs-12.2-systemd/libtool-2.4.7.PKGBUILD +++ b/lfs/libtool-2.5.4.PKGBUILD @@ -1,23 +1,22 @@ pkgname=libtool -pkgver=2.4.7 +pkgver=2.5.4 pkgdesc='A generic library support script' homepage='https://www.gnu.org/software/libtool' license=('LGPL-2.0-or-later WITH Libtool-exception') sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") -md5sums=("2fc0b6ddcd66a89ed6e45db28fa44232") +md5sums=("22e0a29df8af5fdde276ea3a7d351d30") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { - ./configure --prefix=/usr lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /usr/lib32" + ./configure --prefix=/usr make } src_check() { - leaf_record_message "Two of the tests are known to fail. See LFS handbook." make -k check } diff --git a/lfs-12.2-systemd/libxcrypt-4.4.36.PKGBUILD b/lfs/libxcrypt-4.4.38.PKGBUILD similarity index 81% rename from lfs-12.2-systemd/libxcrypt-4.4.36.PKGBUILD rename to lfs/libxcrypt-4.4.38.PKGBUILD index a84046d..8e91d6e 100644 --- a/lfs-12.2-systemd/libxcrypt-4.4.36.PKGBUILD +++ b/lfs/libxcrypt-4.4.38.PKGBUILD @@ -1,15 +1,15 @@ pkgname=libxcrypt -pkgver=4.4.36 +pkgver=4.4.38 pkgdesc='Modern library for one-way hashing of passwords' homepage='https://github.com/besser82/libxcrypt/' license=('LGPL') sources=("${pkgname}-${pkgver}.tar.xz") urls=("${homepage}/releases/download/v${pkgver}/${sources[0]}") -md5sums=("b84cd4104e08c975063ec6c4d0372446") +md5sums=("1796a5d20098e9dd9e3f576803c83000") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/libxcrypt-compat-4.4.36.PKGBUILD b/lfs/libxcrypt-compat-4.4.38.PKGBUILD similarity index 83% rename from lfs-12.2-systemd/libxcrypt-compat-4.4.36.PKGBUILD rename to lfs/libxcrypt-compat-4.4.38.PKGBUILD index 573d5cb..3e9db7e 100644 --- a/lfs-12.2-systemd/libxcrypt-compat-4.4.36.PKGBUILD +++ b/lfs/libxcrypt-compat-4.4.38.PKGBUILD @@ -1,16 +1,16 @@ pkgname=libxcrypt-compat _pkgbase=libxcrypt -pkgver=4.4.36 +pkgver=4.4.38 pkgdesc='Modern library for one-way hashing of passwords - legacy API functions' homepage='https://github.com/besser82/libxcrypt/' license=('LGPL') sources=("${_pkgbase}-${pkgver}.tar.xz") urls=("${homepage}/releases/download/v${pkgver}/${sources[0]}") -md5sums=("b84cd4104e08c975063ec6c4d0372446") +md5sums=("1796a5d20098e9dd9e3f576803c83000") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/lz4-4.10.0.PKGBUILD b/lfs/lz4-1.10.0.PKGBUILD similarity index 65% rename from lfs-12.2-systemd/lz4-4.10.0.PKGBUILD rename to lfs/lz4-1.10.0.PKGBUILD index 3f37930..733438b 100644 --- a/lfs-12.2-systemd/lz4-4.10.0.PKGBUILD +++ b/lfs/lz4-1.10.0.PKGBUILD @@ -3,12 +3,12 @@ pkgver="1.10.0" pkgdesc='Extremely fast compression algorithm' homepage="https://lz4.org/" license=('GPL-2.0-or-later') -sources=("lz4-1.10.0.tar.gz") -urls=("https://github.com/lz4/lz4/releases/download/v1.10.0/lz4-1.10.0.tar.gz") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/lz4/lz4/releases/download/v${pkgver}/${sources[0]}") md5sums=("dead9f5f1966d9ae56e1e32761e4e675") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/m4-1.4.19.PKGBUILD b/lfs/m4-1.4.20.PKGBUILD similarity index 53% rename from lfs-12.2-systemd/m4-1.4.19.PKGBUILD rename to lfs/m4-1.4.20.PKGBUILD index 7003bee..dd457df 100644 --- a/lfs-12.2-systemd/m4-1.4.19.PKGBUILD +++ b/lfs/m4-1.4.20.PKGBUILD @@ -1,15 +1,15 @@ pkgname=m4 -pkgver=1.4.19 +pkgver=1.4.20 pkgdesc="The GNU macro processor" homepage="https://www.gnu.org/software/m4" license=('GPL3') -sources=("$pkgname-$pkgver.tar.xz") -urls=("https://ftp.gnu.org/gnu/m4/$pkgname-$pkgver.tar.xz") -md5sums=("0d90823e1426f1da2fd872df0311298d") +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/m4/${sources[0]}") +md5sums=("6eb2ebed5b24e74b6e890919331d2132") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs/make-4.4.1.PKGBUILD b/lfs/make-4.4.1.PKGBUILD new file mode 100644 index 0000000..c33e910 --- /dev/null +++ b/lfs/make-4.4.1.PKGBUILD @@ -0,0 +1,27 @@ +pkgname=make +pkgver=4.4.1 +pkgdesc="GNU make utility to maintain groups of programs" +arch=('x86_64') +homepage="https://www.gnu.org/software/make" +license=('GPL3') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("c8469a3713cbbe04d955d4ae4be23eeb") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + chown -R leaf . + su leaf -c "PATH=$PATH make check" +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs/man-db-2.13.1.PKGBUILD b/lfs/man-db-2.13.1.PKGBUILD new file mode 100644 index 0000000..e22eab5 --- /dev/null +++ b/lfs/man-db-2.13.1.PKGBUILD @@ -0,0 +1,33 @@ +pkgname="man-db" +pkgver="2.13.1" +pkgdesc="A utility for reading man pages" +arch=("x86_64") +homepage="https://www.nongnu.org/man-db/" +lisence=('GPL-2.0-or-later AND GPL-3.0-or-later') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.savannah.gnu.org/releases/${pkgname}/${sources[0]}") +md5sums=("b6335533cbeac3b24cd7be31fdee8c83") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr \ + --docdir=/usr/share/doc/man-db-${pkgver} \ + --sysconfdir=/etc \ + --disable-setuid \ + --enable-cache-owner=bin \ + --with-browser=/usr/bin/lynx \ + --with-vgrind=/usr/bin/vgrind \ + --with-grap=/usr/bin/grap + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs/man-pages-6.15.PKGBUILD b/lfs/man-pages-6.15.PKGBUILD new file mode 100644 index 0000000..fd0b327 --- /dev/null +++ b/lfs/man-pages-6.15.PKGBUILD @@ -0,0 +1,26 @@ +pkgname="man-pages" +pkgver="6.15" +pkgdesc="Linux man pages" +license=("GPL2") +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://www.kernel.org/pub/linux/docs/man-pages/${sources[0]}") +md5sums=("16f68d70139dd2bbcae4102be4705753") + +distdir=${distdir} + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_check(){ + return 0 +} + +src_build() { + cd "$srcdir" + rm -v man3/crypt* +} + +src_install() { + make -R GIT=false prefix=/usr DESTDIR="$pkgdir" install +} diff --git a/lfs/meson-1.8.3.PKGBUILD b/lfs/meson-1.8.3.PKGBUILD new file mode 100644 index 0000000..f58344e --- /dev/null +++ b/lfs/meson-1.8.3.PKGBUILD @@ -0,0 +1,24 @@ +pkgname=meson +pkgver=1.8.3 +pkgdesc="High productivity build system" +homepage="https://mesonbuild.com/" +arch=(any) +license=(Apache-2.0) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/mesonbuild/meson/releases/download/${pkgver}/${sources[0]}") +md5sums=("08221d2f515e759686f666ff6409a903") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + export PYTHONDONTWRITEBYTECODE=1 + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --ignore-installed --root ${pkgdir} --find-links dist ${pkgname} + install -vDm644 data/shell-completions/bash/meson ${pkgdir}/usr/share/bash-completion/completions/meson + install -vDm644 data/shell-completions/zsh/_meson ${pkgdir}/usr/share/zsh/site-functions/_meson +} diff --git a/lfs-12.2-systemd/mpc-1.3.1.PKGBUILD b/lfs/mpc-1.3.1.PKGBUILD similarity index 83% rename from lfs-12.2-systemd/mpc-1.3.1.PKGBUILD rename to lfs/mpc-1.3.1.PKGBUILD index 377b553..c37455c 100644 --- a/lfs-12.2-systemd/mpc-1.3.1.PKGBUILD +++ b/lfs/mpc-1.3.1.PKGBUILD @@ -3,13 +3,13 @@ pkgver=1.3.1 pkgdesc="Minimalist command line interface to MPD" homepage="https://www.musicpd.org/clients/mpc/" license=(GPL-2.0-or-later) -sources=($pkgname-$pkgver.tar.gz) +sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") md5sums=("5c9bc658c9fd0f940e8e3e0f09530c62") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/mpfr-4.2.1.PKGBUILD b/lfs/mpfr-4.2.2.PKGBUILD similarity index 77% rename from lfs-12.2-systemd/mpfr-4.2.1.PKGBUILD rename to lfs/mpfr-4.2.2.PKGBUILD index 05a3977..df37058 100644 --- a/lfs-12.2-systemd/mpfr-4.2.1.PKGBUILD +++ b/lfs/mpfr-4.2.2.PKGBUILD @@ -1,5 +1,5 @@ pkgname=mpfr -_pkgver=4.2.1 +_pkgver=4.2.2 _patchver=0 if (( _patchver == 0 )); then pkgver=$_pkgver @@ -11,12 +11,12 @@ homepage='https://www.mpfr.org/' # NOTE: download potentially existing patches from upstream: # `curl patches.diff -o https://www.mpfr.org/mpfr-${_pkgver}/allpatches` sources=("${pkgname}-${_pkgver}.tar.xz") -urls=(https://ftp.gnu.org/gnu/$pkgname/$pkgname-$_pkgver.tar.xz) -md5sums=("523c50c6318dde6f9dc523bc0244690a") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("7c32c39b8b6e3ae85f25156228156061") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/ncurses-6.5.PKGBUILD b/lfs/ncurses-6.5.PKGBUILD similarity index 84% rename from lfs-12.2-systemd/ncurses-6.5.PKGBUILD rename to lfs/ncurses-6.5.PKGBUILD index 8054d73..f769b3c 100644 --- a/lfs-12.2-systemd/ncurses-6.5.PKGBUILD +++ b/lfs/ncurses-6.5.PKGBUILD @@ -1,14 +1,14 @@ pkgname="ncurses" -pkgver="6.5" +pkgver="6.5-20250809" pkgdesc='System V Release 4.0 curses emulation library' homepage="https://www.gnu.org/software/ncurses/" license=(MIT-open-group) -sources=("${pkgname}-${pkgver}.tar.gz") -urls=("https://invisible-mirror.net/archives/ncurses/${sources[0]}") -md5sums=("ac2d2629296f04c8537ca706b6977687") +sources=("${pkgname}-${pkgver}.tgz") +urls=("https://invisible-mirror.net/archives/ncurses/current/${sources[0]}") +md5sums=("679987405412f970561cc85e1e6428a2") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs/ninja-1.13.1.PKGBUILD b/lfs/ninja-1.13.1.PKGBUILD new file mode 100644 index 0000000..1ac9aed --- /dev/null +++ b/lfs/ninja-1.13.1.PKGBUILD @@ -0,0 +1,30 @@ +pkgname=ninja +pkgver=1.13.1 +pkgdesc='Small build system with a focus on speed' +arch=(x86_64) +homepage='https://ninja-build.org/' +license=(Apache-2.0) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/ninja-build/ninja/archive/v${pkgver}/${sources[0]}") +md5sums=("c35f8f55f4cf60f1a916068d8f45a0f8") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -i '/int Guess/a \ + int j = 0;\ + char* jobs = getenv( "NINJAJOBS" );\ + if ( jobs != NULL ) j = atoi( jobs );\ + if ( j > 0 ) return j;\ +' src/ninja.cc +} + +src_build() { + python3 configure.py --bootstrap --verbose +} + +src_install() { + install -d -v -m755 ${pkgdir}/usr/bin/ + install -vm755 ninja ${pkgdir}/usr/bin/ + install -vDm644 misc/bash-completion ${pkgdir}/usr/share/bash-completion/completions/ninja + install -vDm644 misc/zsh-completion ${pkgdir}/usr/share/zsh/site-functions/_ninja +} diff --git a/lfs-12.2-systemd/openssl-3.3.1.PKGBUILD b/lfs/openssl-3.5.2.PKGBUILD similarity index 81% rename from lfs-12.2-systemd/openssl-3.3.1.PKGBUILD rename to lfs/openssl-3.5.2.PKGBUILD index 9926709..9d0d851 100644 --- a/lfs-12.2-systemd/openssl-3.3.1.PKGBUILD +++ b/lfs/openssl-3.5.2.PKGBUILD @@ -1,15 +1,15 @@ pkgname=openssl -pkgver=3.3.1 +pkgver=3.5.2 pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' arch=('x86_64') homepage='https://www.openssl.org' license=('Apache-2.0') sources=("${pkgname}-${pkgver}.tar.gz") urls=("https://www.openssl.org/source/${sources[0]}") -md5sums=("8a4342b399c18f870ca6186299195984") +md5sums=("890fc59f86fc21b5e4d1c031a698dbde") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { @@ -29,6 +29,7 @@ src_check() { src_install() { sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile make DESTDIR="${pkgdir}" MANSUFFIX=ssl install + mv -v "${pkgdir}/usr/share/doc/openssl" "${pkgdir}/usr/share/doc/openssl-${pkgver}" install -D -m644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE.txt" } diff --git a/lfs/patch-2.8.PKGBUILD b/lfs/patch-2.8.PKGBUILD new file mode 100644 index 0000000..a3e711d --- /dev/null +++ b/lfs/patch-2.8.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=patch +pkgver=2.8 +pkgdesc='A utility to apply patch files to original sources' +arch=('x86_64') +homepage='https://www.gnu.org/software/patch/' +license=('GPL') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("149327a021d41c8f88d034eab41c039f") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs-12.2-systemd/perl-5.40.0.PKGBUILD b/lfs/perl-5.42.0.PKGBUILD similarity index 59% rename from lfs-12.2-systemd/perl-5.40.0.PKGBUILD rename to lfs/perl-5.42.0.PKGBUILD index 6b1106b..52ac5bc 100644 --- a/lfs-12.2-systemd/perl-5.40.0.PKGBUILD +++ b/lfs/perl-5.42.0.PKGBUILD @@ -1,33 +1,33 @@ pkgname=perl -pkgver=5.40.0 +pkgver=5.42.0 _basever="${pkgver%.*}" pkgdesc="A highly capable, feature-rich programming language" license=('GPL' 'PerlArtistic') homepage="https://www.perl.org" sources=("${pkgname}-${pkgver}.tar.xz") urls=("https://www.cpan.org/src/5.0/${sources[0]}") -md5sums=("cfe14ef0709b9687f9c514042e8e1e82") +md5sums=("7a6950a9f12d01eb96a9d2ed2f4e0072") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { export BUILD_ZLIB=False export BUILD_BZIP2=0 - sh Configure -des \ - -D prefix=/usr \ - -D vendorprefix=/usr \ + sh Configure -des \ + -D prefix=/usr \ + -D vendorprefix=/usr \ -D privlib=/usr/lib/perl5/${_basever}/core_perl \ -D archlib=/usr/lib/perl5/${_basever}/core_perl \ -D sitelib=/usr/lib/perl5/${_basever}/site_perl \ -D sitearch=/usr/lib/perl5/${_basever}/site_perl \ -D vendorlib=/usr/lib/perl5/${_basever}/vendor_perl \ -D vendorarch=/usr/lib/perl5/${_basever}/vendor_perl \ - -D man1dir=/usr/share/man/man1 \ - -D man3dir=/usr/share/man/man3 \ - -D pager="/usr/bin/less -isR" \ - -D useshrplib \ + -D man1dir=/usr/share/man/man1 \ + -D man3dir=/usr/share/man/man3 \ + -D pager="/usr/bin/less -isR" \ + -D useshrplib \ -D usethreads make } diff --git a/lfs-12.2-systemd/perl-xml-parser-2.47.PKGBUILD b/lfs/perl-xml-parser-2.47.PKGBUILD similarity index 85% rename from lfs-12.2-systemd/perl-xml-parser-2.47.PKGBUILD rename to lfs/perl-xml-parser-2.47.PKGBUILD index 43f5eeb..f956d47 100644 --- a/lfs-12.2-systemd/perl-xml-parser-2.47.PKGBUILD +++ b/lfs/perl-xml-parser-2.47.PKGBUILD @@ -8,7 +8,7 @@ urls=("https://cpan.metacpan.org/authors/id/T/TO/TODDR/${sources[0]}") md5sums=("89a8e82cfd2ad948b349c0a69c494463") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/pkgconf-2.3.0.PKGBUILD b/lfs/pkgconf-2.5.1.PKGBUILD similarity index 71% rename from lfs-12.2-systemd/pkgconf-2.3.0.PKGBUILD rename to lfs/pkgconf-2.5.1.PKGBUILD index 74a1b50..cdf0786 100644 --- a/lfs-12.2-systemd/pkgconf-2.3.0.PKGBUILD +++ b/lfs/pkgconf-2.5.1.PKGBUILD @@ -1,15 +1,15 @@ pkgname=pkgconf -pkgver=2.3.0 +pkgver=2.5.1 pkgdesc="Package compiler and linker metadata toolkit" homepage="https://github.com/pkgconf/pkgconf" license=(ISC) sources=("${pkgname}-${pkgver}.tar.xz") -urls=("https://distfiles.ariadne.space/pkgconf/${pkgname}-${pkgver}.tar.xz") -md5sums=("833363e77b5bed0131c7bc4cc6f7747b") +urls=("https://distfiles.ariadne.space/pkgconf/${sources[0]}") +md5sums=("3291128c917fdb8fccd8c9e7784b643b") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs/procps-ng-4.0.5.PKGBUILD b/lfs/procps-ng-4.0.5.PKGBUILD new file mode 100644 index 0000000..31b7d85 --- /dev/null +++ b/lfs/procps-ng-4.0.5.PKGBUILD @@ -0,0 +1,36 @@ +pkgname=procps-ng +pkgver=4.0.5 +pkgdesc='Utilities for monitoring your system and its processes' +homepage='https://gitlab.com/procps-ng/procps' +license=(GPL LGPL) +arch=(x86_64) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://sourceforge.net/projects/procps-ng/files/Production/${sources[0]}") +md5sums=("90803e64f51f192f3325d25c3335d057") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr \ + --libdir=/usr/lib \ + --docdir=/usr/share/doc/procps-ng-${pkgver} \ + --disable-static \ + --disable-kill \ + --enable-watch8bit \ + --with-systemd + make +} + +src_check() { + chown -R leaf . + leaf_record_message "ps with output flag bsdtime,cputime,etime,etimes is known to fail without CONFIG_BSD_PROCESS_ACCT." + leaf_record_message "one pgrep test is known to fail in chroot." + su leaf -c "PATH=$PATH make check" +} + +src_install() { + make DESTDIR="${pkgdir}" install +} + diff --git a/lfs-12.2-systemd/psmisc-23.7.PKGBUILD b/lfs/psmisc-23.7.PKGBUILD similarity index 84% rename from lfs-12.2-systemd/psmisc-23.7.PKGBUILD rename to lfs/psmisc-23.7.PKGBUILD index cd2f98f..b3b5d98 100644 --- a/lfs-12.2-systemd/psmisc-23.7.PKGBUILD +++ b/lfs/psmisc-23.7.PKGBUILD @@ -7,7 +7,7 @@ urls="https://sourceforge.net/projects/psmisc/files/${pkgname}/${sources[0]}" md5sums="53eae841735189a896d614cba440eb10" src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/python-3.12.5.PKGBUILD b/lfs/python-3.13.7.PKGBUILD similarity index 77% rename from lfs-12.2-systemd/python-3.12.5.PKGBUILD rename to lfs/python-3.13.7.PKGBUILD index 155def3..559c779 100644 --- a/lfs-12.2-systemd/python-3.12.5.PKGBUILD +++ b/lfs/python-3.13.7.PKGBUILD @@ -1,5 +1,6 @@ pkgname=python -pkgver=3.12.5 +pkgver=3.13.7 +_pybasever=${pkgver%.*} pkgdesc="The Python programming language" license=('PSF-2.0') homepage="https://www.python.org/" @@ -9,13 +10,13 @@ sources=("Python-${pkgver}.tar.xz" urls=("https://www.python.org/ftp/${pkgname}/${pkgver}/${sources[0]}" "https://www.python.org/ftp/${pkgname}/doc/${pkgver}/${sources[1]}" ) -md5sums=("02c7d269e077f4034963bba6befdc715" - "52274d813236ca4a972fb6988480dc56" +md5sums=("256cdb3bbf45cdce7499e52ba6c36ea3" + "b84c0d81b2758398bb7f5b7411d3d908" ) src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 - tar --no-same-owner -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[1]} + tar -xf ${distdir}/${sources[0]} --strip-components=1 + tar --no-same-owner -xf ${distdir}/${sources[1]} } src_build() { @@ -48,7 +49,7 @@ src_install() { ln -s python${_pybasever}.1 "${pkgdir}"/usr/share/man/man1/python.1 # doc - install -v -dm755 "${pkgdir}/usr/share/doc/python-3.12.5/html" + install -v -dm755 "${pkgdir}/usr/share/doc/python-${pkgver}/html" cp -R --no-preserve=mode python-${pkgver}-docs-html/* \ - "${pkgdir}/usr/share/doc/python-3.12.5/html" + "${pkgdir}/usr/share/doc/python-${pkgver}/html" } diff --git a/lfs/python-flit-core-3.12.0.PKGBUILD b/lfs/python-flit-core-3.12.0.PKGBUILD new file mode 100644 index 0000000..47cc9ed --- /dev/null +++ b/lfs/python-flit-core-3.12.0.PKGBUILD @@ -0,0 +1,22 @@ +pkgname=python-flit-core +_name=${pkgname#python-} +pkgver=3.12.0 +pkgdesc="A PEP 517 build backend for packages using Flit" +homepage="https://github.com/pypa/flit/tree/main/flit_core" +license=(BSD-3-Clause) +sources=("flit_core-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/f/${_name}/${sources[0]}") +md5sums=("c538415c1f27bd69cbbbf3cdd5135d39") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --force-reinstall --root ${pkgdir} --find-links dist flit_core +} + diff --git a/lfs/python-jinja2-3.1.6.PKGBUILD b/lfs/python-jinja2-3.1.6.PKGBUILD new file mode 100644 index 0000000..7d72cc0 --- /dev/null +++ b/lfs/python-jinja2-3.1.6.PKGBUILD @@ -0,0 +1,28 @@ +pkgname=python-jinja2 +_name="${pkgname#python-}" +pkgver=3.1.6 +pkgdesc="A simple pythonic template language written in Python" +arch=('any') +homepage="https://palletsprojects.com/p/jinja/" +license=('BSD-3-Clause') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/J/Jinja2/${sources[0]}") +md5sums=("66d4c25ff43d1deaf9637ccda523dec8") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + export PYTHONDONTWRITEBYTECODE=1 + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_check() { + : +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --ignore-installed --root ${pkgdir} --find-links dist Jinja2 + install -vDm 644 LICENSE.txt -t "$pkgdir/usr/share/licenses/$pkgname/" +} diff --git a/lfs/python-markupsafe-3.0.2.PKGBUILD b/lfs/python-markupsafe-3.0.2.PKGBUILD new file mode 100644 index 0000000..c02e4ee --- /dev/null +++ b/lfs/python-markupsafe-3.0.2.PKGBUILD @@ -0,0 +1,28 @@ +pkgname=python-markupsafe +_name=${pkgname#python-} +pkgver=3.0.2 +pkgdesc="Implements a XML/HTML/XHTML Markup safe string for Python" +arch=('x86_64') +homepage="https://pypi.python.org/pypi/MarkupSafe" +license=('BSD-3-Clause') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/M/MarkupSafe/${sources[0]}") +md5sums=("cb0071711b573b155cc8f86e1de72167") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + PYTHONDONTWRITEBYTECODE=1 + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_check() { + : +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --force-reinstall --root ${pkgdir} --find-links dist ${_name} + install -Dm644 LICENSE.txt -t "$pkgdir"/usr/share/licenses/$pkgname/ +} diff --git a/lfs/python-packaging-25.0.PKGBUILD b/lfs/python-packaging-25.0.PKGBUILD new file mode 100644 index 0000000..661ceb4 --- /dev/null +++ b/lfs/python-packaging-25.0.PKGBUILD @@ -0,0 +1,21 @@ +pkgname=python-packaging +_name=${pkgname#python-} +pkgver=25.0 +pkgdesc="Core utilities for Python packages" +homepage="https://pypi.org/project/packaging/" +license=('Apache-2.0') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://files.pythonhosted.org/packages/source/p/${_name}/${sources[0]}") +md5sums=("ab0ef21ddebe09d1803575120d3f99f8") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --force-reinstall --root ${pkgdir} --find-links dist ${_name} +} diff --git a/lfs/python-pip-25.3.PKGBUILD b/lfs/python-pip-25.3.PKGBUILD new file mode 100644 index 0000000..634ece4 --- /dev/null +++ b/lfs/python-pip-25.3.PKGBUILD @@ -0,0 +1,48 @@ +pkgname=python-pip +_name=${pkgname#python-} +pkgver=25.3 +pkgdesc="The PyPA recommended tool for installing Python packages" +homepage="https://pip.pypa.io/" +license=('MIT') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/p/${_name}/${sources[0]}") +md5sums=("31f52f428372020b80cd7518862fbbee") + +src_prepare() { + tar -xf "${distdir}/${sources[0]}" --strip-components=1 +} + +src_build() { + export PYTHONPYCACHEPREFIX="$PWD/.pycache" + export TMPDIR="$PWD/.tmp" + export PIP_CACHE_DIR="$PWD/.pipcache" + export PIP_DISABLE_PIP_VERSION_CHECK=1 + + mkdir -p "$PYTHONPYCACHEPREFIX" "$TMPDIR" "$PIP_CACHE_DIR" + + export PYTHONDONTWRITEBYTECODE=1 + pip3 wheel \ + -w dist \ + --no-cache-dir \ + --no-build-isolation \ + --no-deps \ + "$PWD" +} + +src_install() { + export PYTHONPYCACHEPREFIX="$PWD/.pycache" + export PIP_DISABLE_PIP_VERSION_CHECK=1 + + pip3 install \ + --no-deps \ + --no-warn-script-location \ + --no-index \ + --no-cache-dir \ + --no-user \ + --ignore-installed \ + --root "${pkgdir}" \ + --find-links dist \ + --root-user-action=ignore \ + pip +} + diff --git a/lfs/python-setuptools-80.9.0.PKGBUILD b/lfs/python-setuptools-80.9.0.PKGBUILD new file mode 100644 index 0000000..371e105 --- /dev/null +++ b/lfs/python-setuptools-80.9.0.PKGBUILD @@ -0,0 +1,30 @@ +pkgname=python-setuptools +_name=${pkgname#python-} +pkgver=80.9.0 +pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages" +homepage="https://pypi.org/project/setuptools/" +license=('MIT') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/s/${_name}/${sources[0]}") +md5sums=("82e1d67883b713f9493659b50d13b436") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + #python3 setup.py build + PYTHONDONTWRITEBYTECODE=1 + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_check() { + : +} + +src_install() { + #python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --force-reinstall --root ${pkgdir} --find-links dist ${_name} + install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" +} + diff --git a/lfs/python-wheel-0.46.1.PKGBUILD b/lfs/python-wheel-0.46.1.PKGBUILD new file mode 100644 index 0000000..d769b6f --- /dev/null +++ b/lfs/python-wheel-0.46.1.PKGBUILD @@ -0,0 +1,23 @@ +pkgname=python-wheel +_name=${pkgname#python-} +pkgver=0.46.1 +pkgrel=1 +pkgdesc="A built-package format for Python" +arch=(any) +homepage="https://pypi.python.org/pypi/wheel" +license=('MIT') +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://pypi.org/packages/source/w/${_name}/${sources[0]}") +md5sums=("65e09ee84af36821e3b1e9564aa91bd5") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD +} + +src_install() { + pip3 install --no-deps --no-warn-script-location --no-index --no-cache-dir --no-user --force-reinstall --root ${pkgdir} --find-links dist ${_name} +} diff --git a/lfs-12.2-systemd/readline-8.2.13.PKGBUILD b/lfs/readline-8.3.PKGBUILD similarity index 65% rename from lfs-12.2-systemd/readline-8.2.13.PKGBUILD rename to lfs/readline-8.3.PKGBUILD index d40b225..6e00a75 100644 --- a/lfs-12.2-systemd/readline-8.2.13.PKGBUILD +++ b/lfs/readline-8.3.PKGBUILD @@ -1,16 +1,17 @@ pkgname=readline -_basever=8.2 -_patchlevel=13 -pkgver=${_basever}.${_patchlevel} +_basever=8.3 +#_patchlevel=13 +#pkgver=${_basever}.${_patchlevel} +pkgver=${_basever} pkgdesc='GNU readline library' homepage='https://tiswww.case.edu/php/chet/readline/rltop.html' license=('GPL-3.0-only') sources=("${pkgname}-${pkgver}.tar.gz") -urls=("https://ftp.gnu.org/gnu/readline/readline-${pkgver}.tar.gz") -md5sums=("05080bf3801e6874bb115cd6700b708f") +urls=("https://ftp.gnu.org/gnu/readline/${sources[0]}") +md5sums=("25a73bfb2a3ad7146c5e9d4408d9f6cd") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i '/MV.*old/d' Makefile.in sed -i '/{OLDSUFF}/c:' support/shlib-install sed -i 's/-Wl,-rpath,[^ ]*//' support/shobj-conf @@ -20,11 +21,11 @@ src_build() { ./configure --prefix=/usr \ --disable-static \ --with-curses \ - --docdir=/usr/share/doc/readline-8.2.13 + --docdir=/usr/share/doc/${pkgname}-${pkgver} make SHLIB_LIBS="-lncursesw" } src_install() { make SHLIB_LIBS="-lncursesw" DESTDIR="$pkgdir" install - install -v -m644 doc/*.{ps,pdf,html,dvi} ${pkgdir}/usr/share/doc/readline-8.2.13 + install -v -m644 doc/*.{ps,pdf,html,dvi} ${pkgdir}/usr/share/doc/${pkgname}-${pkgver} } diff --git a/lfs-12.2-systemd/sed-4.9.PKGBUILD b/lfs/sed-4.9.PKGBUILD similarity index 88% rename from lfs-12.2-systemd/sed-4.9.PKGBUILD rename to lfs/sed-4.9.PKGBUILD index 2ea7ebf..7f0438d 100644 --- a/lfs-12.2-systemd/sed-4.9.PKGBUILD +++ b/lfs/sed-4.9.PKGBUILD @@ -8,7 +8,7 @@ urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") md5sums=("6aac9b2dbafcd5b7a67a8a9bcb8036c3") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/shadow-4.16.0.PKGBUILD b/lfs/shadow-4.18.0.PKGBUILD similarity index 71% rename from lfs-12.2-systemd/shadow-4.16.0.PKGBUILD rename to lfs/shadow-4.18.0.PKGBUILD index ee5ffd5..9218e3b 100644 --- a/lfs-12.2-systemd/shadow-4.16.0.PKGBUILD +++ b/lfs/shadow-4.18.0.PKGBUILD @@ -1,21 +1,18 @@ pkgname=shadow -pkgver=4.16.0 +pkgver=4.18.0 pkgdesc="Password and account management tool suite with support for shadow files and PAM" homepage="https://github.com/shadow-maint/shadow" license=(BSD-3-Clause) sources=("${pkgname}-${pkgver}.tar.xz" - "useradd" ) urls=("https://github.com/shadow-maint/shadow/releases/download/${pkgver}/${sources[0]}" - "https://gitea.phywyj.dynv6.net/wyj/LFS-PKGBUILDs/raw/branch/main/lfs-12.2-systemd/shadow-4.16.0/useradd" ) -md5sums=("eb70bad3316d08f0d3bb3d4bbeccb3b4" - "87ed6b2e7cdf479e05d4fe2510adb77f" +md5sums=("30ef46f54363db1d624587be68794ef2" ) src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 sed -i 's/groups$(EXEEXT) //' src/Makefile.in find man -name Makefile.in -exec sed -i 's/groups\.1 / /' {} \; @@ -26,6 +23,10 @@ src_prepare() { -e 's:/var/spool/mail:/var/mail:' \ -e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \ -i etc/login.defs + + if [[ ! -f /usr/bin/passwd ]]; then + touch /usr/bin/passwd + fi } src_build() { @@ -41,5 +42,18 @@ src_install() { make exec_prefix=/usr DESTDIR="${pkgdir}" install make DESTDIR="${pkgdir}" -C man install-man install -vDm 644 COPYING -t "$pkgdir/usr/share/licenses/$pkgname/" - install -vDm 600 "${DIST_DIR}/${pkgname}-${pkgver}/useradd" -t "${pkgdir}/etc/default/" + #install -vDm 600 "${distdir}/useradd" -t "${pkgdir}/etc/default/" + mkdir -pv "${pkgdir}/etc/default" + cat > "${pkgdir}/etc/default/useradd" << EOF +GROUP=999 +GROUPS= +HOME=/home +INACTIVE=-1 +EXPIRE= +SHELL=/bin/bash +SKEL=/etc/skel +USRSKEL=/usr/etc/skel +CREATE_MAIL_SPOOL=no +LOG_INIT=yes +EOF } diff --git a/lfs/systemd-257.8.PKGBUILD b/lfs/systemd-257.8.PKGBUILD new file mode 100644 index 0000000..dd3215c --- /dev/null +++ b/lfs/systemd-257.8.PKGBUILD @@ -0,0 +1,77 @@ +pkgname="systemd" +pkgver=257.8 +pkgdesc="system and service manager" +homepage="https://www.freedesktop.org/wiki/Software/systemd/" +license=("LGPL-2.1-or-laterC" "C0-1.0" "GPL-2.0-or-later" "MIT-0") +sources=("${pkgname}-${pkgver}.tar.gz" + "${pkgname}-man-pages-${pkgver}.tar.xz" +) +urls=("https://github.com/systemd/systemd/archive/v${pkgver}/${sources[0]}" + "https://anduin.linuxfromscratch.org/LFS/${sources[1]}" +) +md5sums=("25fe5d328e22641254761f1baa74cee0" + "a44063e2ec0cf4adfd2ed5c9e9e095c5" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -e 's/GROUP="render"/GROUP="video"/' \ + -e 's/GROUP="sgx", //' \ + -i rules.d/50-udev-default.rules.in +} + +src_build() { + mkdir -p build + cd build + + meson setup .. \ + --prefix=/usr \ + --libdir=/usr/lib \ + --buildtype=release \ + -D default-dnssec=no \ + -D firstboot=false \ + -D install-tests=false \ + -D ldconfig=false \ + -D sysusers=false \ + -D rpmmacrosdir=no \ + -D homed=disabled \ + -D userdb=false \ + -D man=disabled \ + -D mode=release \ + -D pamconfdir=no \ + -D dev-kvm-mode=0660 \ + -D nobody-group=nogroup \ + -D sysupdate=disabled \ + -D ukify=disabled \ + -D docdir=/usr/share/doc/systemd-${pkgver} + + ninja + cd .. +} + +src_check() { + pushd build + if [[ ! -f /etc/os-release ]]; then + echo 'NAME="Linux From Scratch"' > /etc/os-release + fi + ninja test + popd +} + +src_install() { + pushd build + DESTDIR=$pkgdir ninja install + install -d -v -m755 ${pkgdir}/usr/share/man + tar -xf ${distdir}/${sources[1]} \ + --no-same-owner --strip-components=1 \ + -C ${pkgdir}/usr/share/man + popd +} + +src_postinstall() { + if [[ ! -f /etc/machine-id ]]; then + systemd-machine-id-setup + systemctl preset-all + fi +} + diff --git a/lfs/tar-1.35.PKGBUILD b/lfs/tar-1.35.PKGBUILD new file mode 100644 index 0000000..eab12d0 --- /dev/null +++ b/lfs/tar-1.35.PKGBUILD @@ -0,0 +1,28 @@ +pkgname=tar +pkgver=1.35 +pkgdesc='Utility used to store, backup, and transport files' +arch=('x86_64') +homepage='https://www.gnu.org/software/tar/' +license=('GPL3') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("a2d8042658cfd8ea939e6d911eaf4152") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + FORCE_UNSAFE_CONFIGURE=1 ./configure --prefix=/usr + make +} + +src_check() { + leaf_record_message "capabilities: binary store/restore is known to fail. See LFS handbook." + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" -C doc install-html docdir=/usr/share/doc/tar-${pkgver} +} diff --git a/lfs/tcl-8.6.16.PKGBUILD b/lfs/tcl-8.6.16.PKGBUILD new file mode 100644 index 0000000..9828dbd --- /dev/null +++ b/lfs/tcl-8.6.16.PKGBUILD @@ -0,0 +1,67 @@ +pkgname=tcl +_basever=8.6 +pkgver=${_basever}.16 +pkgdesc='Powerful, easy-to-learn dynamic programming language' +homepage='http://tcl.sourceforge.net/' +license=(TCL) +_archive="$pkgname$pkgver" +sources=("${_archive}-src.tar.gz" + "${_archive}-html.tar.gz" +) +urls=("https://downloads.sourceforge.net/sourceforge/tcl/${sources[0]}" + "https://downloads.sourceforge.net/sourceforge/tcl/${sources[0]}" +) +md5sums=("eaef5d0a27239fb840f04af8ec608242" + "750c221bcb6f8737a6791c1fbe98b684" +) + + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + SRCDIR=$(pwd) + cd unix + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --disable-rpath + make + + tdbcver=1.1.10 + itcver=4.3.2 + sed -e "s|$SRCDIR/unix|/usr/lib|" \ + -e "s|$SRCDIR|/usr/include|" \ + -i tclConfig.sh + + sed -e "s|$SRCDIR/unix/pkgs/tdbc${tdbcver}|/usr/lib/tdbc${tdbcver}|" \ + -e "s|$SRCDIR/pkgs/tdbc${tdbcver}/generic|/usr/include|" \ + -e "s|$SRCDIR/pkgs/tdbc${tdbcver}/library|/usr/lib/tcl${_basever}|" \ + -e "s|$SRCDIR/pkgs/tdbc${tdbcver}|/usr/include|" \ + -i pkgs/tdbc${tdbcver}/tdbcConfig.sh + + sed -e "s|$SRCDIR/unix/pkgs/itcl${itcver}|/usr/lib/itcl${itcver}|" \ + -e "s|$SRCDIR/pkgs/itcl${itcver}/generic|/usr/include|" \ + -e "s|$SRCDIR/pkgs/itcl${itcver}|/usr/include|" \ + -i pkgs/itcl${itcver}/itclConfig.sh + + unset SRCDIR +} + +src_check() { + cd "${srcdir}/unix" + make test +} + +src_install() { + cd "${srcdir}/unix" + make INSTALL_ROOT="${pkgdir}" install install-private-headers + chmod -v u+w "${pkgdir}/usr/lib/libtcl${_basever}.so" + ln -sfv tclsh${_basever} "${pkgdir}/usr/bin/tclsh" + mv "${pkgdir}"/usr/share/man/man3/{Thread,Tcl_Thread}.3 + + cd .. + tar -xf ${distdir}/${sources[1]} --strip-components=1 + mkdir -v -p "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}" + cp -v -r ./html/* "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}" +} diff --git a/lfs/texinfo-7.2.PKGBUILD b/lfs/texinfo-7.2.PKGBUILD new file mode 100644 index 0000000..745480b --- /dev/null +++ b/lfs/texinfo-7.2.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=texinfo +pkgver=7.2 +pkgdesc='GNU documentation system for on-line information and printed output' +arch=(x86_64) +homepage='https://www.gnu.org/software/texinfo/' +license=(GPL3) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}") +md5sums=("11939a7624572814912a18e76c8d8972") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed 's/! $output_file eq/$output_file ne/' -i tp/Texinfo/Convert/*.pm + cat > texinfo.HOOK << "EOF" +target=(/usr/share/info/*.info*) +triggers=(install remove) +operation() { + echo -e "${GREEN_COLOR}>>>HOOK: update info cache${CLEAR_COLOR}" + rm -fv /usr/share/info/dir + for _info in /usr/share/info/*.info*; do + /usr/bin/install-info $_info /usr/share/info/dir + done +} +EOF +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="${pkgdir}" install + leaf_install_hook texinfo.HOOK +} diff --git a/lfs/util-linux-2.41.1.PKGBUILD b/lfs/util-linux-2.41.1.PKGBUILD new file mode 100644 index 0000000..e6aeb35 --- /dev/null +++ b/lfs/util-linux-2.41.1.PKGBUILD @@ -0,0 +1,47 @@ +pkgname=util-linux +pkgver=2.41.1 +pkgdesc='Miscellaneous system utilities for Linux' +homepage='https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/' +arch=('x86_64') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://www.kernel.org/pub/linux/utils/${pkgname}/v${pkgver}/$sources[0]") +md5sums=("7e5e68845e2f347cf96f5448165f1764") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + rm tests/ts/kill/decode +} + +src_build() { + ./configure --bindir=/usr/bin \ + --libdir=/usr/lib \ + --runstatedir=/run \ + --sbindir=/usr/sbin \ + --disable-chfn-chsh \ + --disable-login \ + --disable-nologin \ + --disable-su \ + --disable-setpriv \ + --disable-runuser \ + --disable-pylibmount \ + --disable-liblastlog2 \ + --disable-static \ + --without-python \ + ADJTIME_PATH=/var/lib/hwclock/adjtime \ + --docdir=/usr/share/doc/util-linux-${pkgver} + make +} + +src_check() { + leaf_record_message "lsfd: inotify is known to fail without CONFIG_NETLINK_DIAG." + leaf_record_message "kill: decode functions is knwon to fail with >=bash-5.3-rc1." + if [[ ! -f /etc/fstab ]]; then + touch /etc/fstab + fi + chown -R leaf . + su leaf -c "make -k check" +} + +src_install() { + make DESTDIR="${pkgdir}" install +} diff --git a/lfs/vim-9.1.1629.PKGBUILD b/lfs/vim-9.1.1629.PKGBUILD new file mode 100644 index 0000000..e3ca5f6 --- /dev/null +++ b/lfs/vim-9.1.1629.PKGBUILD @@ -0,0 +1,61 @@ +pkgname=vim +pkgver=9.1.1629 +_versiondir=91 +pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor' +home='https://www.vim.org' +arch=('x86_64') +license=('custom:vim') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/vim/vim/archive/v${pkgver}/${sources[0]}") +md5sums=("4f856c3233c1c4570bc17572e4f9e8e4") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h + cat > vimrc << "EOF" +" Begin /etc/vimrc + +" Ensure defaults are set before customizing settings, not after +source $VIMRUNTIME/defaults.vim +let skip_defaults_vim=1 + +set nocompatible +set backspace=2 +set mouse= +syntax on +if (&term == "xterm") || (&term == "putty") + set background=dark +endif + +" End /etc/vimrc +EOF +} + +src_build() { + ./configure --prefix=/usr \ + --disable-gui \ + --with-x=no \ + --with-compiledby='LFS' + make +} + +src_check() { + leaf_record_message "Tests require at least 24 lines with 80 characters." + leaf_record_message "Test_write_backup_symlink is known to fail if BUILD_DIR is under /tmp." + chown -R leaf . + sed '/test_plugin_glvs/d' -i src/testdir/Make_all.mak + echo "Testing... May take a while..." + su leaf -c "TERM=xterm-256color LANG=en_US.UTF-8 make -j1 test" \ + &> vim-test.log +} + +src_install() { + make DESTDIR="${pkgdir}" install + ln -sv vim ${pkgdir}/usr/bin/vi + for L in ${pkgdir}/usr/share/man/{,*/}man1/vim.1; do + ln -sv vim.1 $(dirname $L)/vi.1 + done + install -Dv vimrc ${pkgdir}/etc/vimrc + install -dv ${pkgdir}/usr/share/doc/ + ln -sv ../vim/vim${_versiondir}/doc ${pkgdir}/usr/share/doc/vim-${pkgver} +} diff --git a/lfs-12.2-systemd/xz-5.6.2.PKGBUILD b/lfs/xz-5.8.1.PKGBUILD similarity index 68% rename from lfs-12.2-systemd/xz-5.6.2.PKGBUILD rename to lfs/xz-5.8.1.PKGBUILD index bd32b50..de309f6 100644 --- a/lfs-12.2-systemd/xz-5.6.2.PKGBUILD +++ b/lfs/xz-5.8.1.PKGBUILD @@ -1,20 +1,20 @@ pkgname="xz" -pkgver="5.6.2" +pkgver="5.8.1" pkgdesc='Library and command line tools for XZ and LZMA compressed files' homepage="https://tukaani.org/xz" license=('GPL' 'LGPL' 'custom') -sources=("xz-5.6.2.tar.xz") -urls=("https://github.com//tukaani-project/xz/releases/download/v5.6.2/xz-5.6.2.tar.xz") -md5sums=("bbf73fb28425cebb854328599f85c4cf") +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://github.com//tukaani-project/xz/releases/download/v${pkgver}/${sources[0]}") +md5sums=("cf5e1feb023d22c6bdaa30e84ef3abe3") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { ./configure --prefix=/usr \ --disable-static \ - --docdir=/usr/share/doc/xz-5.6.2 && + --docdir=/usr/share/doc/${pkgname}-${pkgver} && make } diff --git a/lfs-12.2-systemd/zlib-1.3.1.PKGBUILD b/lfs/zlib-1.3.1.PKGBUILD similarity index 77% rename from lfs-12.2-systemd/zlib-1.3.1.PKGBUILD rename to lfs/zlib-1.3.1.PKGBUILD index 99a4b6a..539cfcc 100644 --- a/lfs-12.2-systemd/zlib-1.3.1.PKGBUILD +++ b/lfs/zlib-1.3.1.PKGBUILD @@ -4,11 +4,11 @@ pkgdesc='Compression library implementing the deflate compression method found i homepage="https://www.zlib.net/" license=("Zlib") sources=("zlib-1.3.1.tar.gz") -urls=("https://zlib.net/fossils/zlib-1.3.1.tar.gz") +urls=("https://zlib.net/fossils/${sources[0]}") md5sums=("9855b6d802d7fe5b7bd5b196a2271655") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/lfs-12.2-systemd/zstd-1.5.6.PKGBUILD b/lfs/zstd-1.5.7.PKGBUILD similarity index 50% rename from lfs-12.2-systemd/zstd-1.5.6.PKGBUILD rename to lfs/zstd-1.5.7.PKGBUILD index 2d56d0b..db69810 100644 --- a/lfs-12.2-systemd/zstd-1.5.6.PKGBUILD +++ b/lfs/zstd-1.5.7.PKGBUILD @@ -1,17 +1,17 @@ pkgname=zstd -pkgver=1.5.6 +pkgver=1.5.7 pkgdesc='Zstandard - Fast real-time compression algorithm' -url='https://facebook.github.io/zstd/' +homepage='https://facebook.github.io/zstd/' license=( BSD-3-Clause GPL-2.0-only ) -sources=("zstd-${pkgver}.tar.gz") -urls=("https://github.com/facebook/zstd/releases/download/v1.5.6/zstd-1.5.6.tar.gz") -md5sums=("5a473726b3445d0e5d6296afd1ab6854") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/facebook/zstd/releases/download/v${pkgver}/${sources[0]}") +md5sums=("780fc1896922b1bc52a4e90980cdda48") src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/net/wget-1.24.5.PKGBUILD b/net-misc/wget-1.25.0.PKGBUILD similarity index 66% rename from net/wget-1.24.5.PKGBUILD rename to net-misc/wget-1.25.0.PKGBUILD index f56a549..a7658fd 100644 --- a/net/wget-1.24.5.PKGBUILD +++ b/net-misc/wget-1.25.0.PKGBUILD @@ -1,14 +1,14 @@ pkgname=wget -pkgver=1.24.5 +pkgver=1.25.0 pkgdesc='Network utility to retrieve files from the Web' homepage='https://www.gnu.org/software/wget/wget.html' license=('GPL3') sources=("${pkgname}-${pkgver}.tar.gz") -urls=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('271bf949384d0858c2c3d419f6311365') +urls=(https://ftp.gnu.org/gnu/${pkgname}/${sources[0]}) +md5sums=('c70ba58b36f944e8ba1d655ace552881') src_prepare() { - tar -xf ${DIST_DIR}/${pkgname}-${pkgver}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[0]} --strip-components=1 } src_build() { diff --git a/test/hello-1.0.PKGBUILD b/test/hello-1.0.PKGBUILD new file mode 100644 index 0000000..0938cee --- /dev/null +++ b/test/hello-1.0.PKGBUILD @@ -0,0 +1,25 @@ +pkgname="hello" +pkgver="1.0" +homepage="https://gitea.phywyj.dynv6.net" +pkgdesc="Just a hello world" +license=("GPL") +sourses=() +urls=() +md5sums=() + +src_prepare() { + cat > "hello.c" << "EOF" +#include +int main(){ + printf("Hello! LFS!\n"); +} +EOF +} + +src_build() { + cc ${CFLAGS} hello.c -o hello +} + +src_install() { + install -Dm755 hello ${pkgdir}/usr/bin/hello +} diff --git a/test/just-env-1.0.PKGBUILD b/test/just-env-1.0.PKGBUILD new file mode 100644 index 0000000..8c5e842 --- /dev/null +++ b/test/just-env-1.0.PKGBUILD @@ -0,0 +1,30 @@ + +pkgname="just-env" +pkgver="1.0" +pkgdesc="print env" +homepage="" +license=("GPL") +sources=() +urls=() +md5sums=() + +src_prepare() { + echo ">>> in src_prepare" + env + leaf_clear_flags +} + +src_build() { + echo ">>> in src_build" + env +} + +src_check() { + echo ">>> in src_check" + env +} + +src_install() { + echo ">>> in src_install" + env +} diff --git a/test/just-hook-1.0.PKGBUILD b/test/just-hook-1.0.PKGBUILD new file mode 100644 index 0000000..bf98016 --- /dev/null +++ b/test/just-hook-1.0.PKGBUILD @@ -0,0 +1,26 @@ +pkgname="just-hook" +pkgver="1.0" +homepage="https://gitea.phywyj.dynv6.net" +pkgdesc="Just a Hook file" +license=("GPL") +sourses=() +urls=() +md5sums=() + +src_prepare() { + cat > test.HOOK << "EOF" +target=(/usr/*) +triggers=("install" "remove") +operation() { + echo "This is a hook." +} +EOF +} + +src_build() { + : +} + +src_install() { + leaf_install_hook test.HOOK +} diff --git a/test/just-vars-1.0.PKGBUILD b/test/just-vars-1.0.PKGBUILD new file mode 100644 index 0000000..b54f556 --- /dev/null +++ b/test/just-vars-1.0.PKGBUILD @@ -0,0 +1,28 @@ +pkgname="just-vars" +pkgver="1.0" +pkgdesc="print vars" +homepage="" +license=("GPL") +sources=() +urls=() +md5sums=() + +src_prepare() { + echo ">>> in src_prepare" + echo "distdir is ${distdir}" +} + +src_build() { + echo ">>> in src_build" + echo "distdir is ${distdir}" +} + +src_check() { + echo ">>> in src_check" + echo "distdir is ${distdir}" +} + +src_install() { + echo ">>> in src_install" + echo "distdir is ${distdir}" +}