summaryrefslogtreecommitdiffstats
path: root/source/l
diff options
context:
space:
mode:
Diffstat (limited to 'source/l')
-rw-r--r--source/l/FTBFSlog191
-rwxr-xr-xsource/l/GConf/GConf.SlackBuild2
-rwxr-xr-xsource/l/Imath/Imath.SlackBuild (renamed from source/l/eigen2/eigen2.SlackBuild)63
-rw-r--r--source/l/Imath/Imath.url1
-rw-r--r--source/l/Imath/slack-desc19
-rwxr-xr-xsource/l/LibRaw/LibRaw.SlackBuild7
-rwxr-xr-xsource/l/M2Crypto/M2Crypto.SlackBuild8
-rwxr-xr-xsource/l/Mako/Mako.SlackBuild8
-rwxr-xr-xsource/l/PyQt-builder/PyQt-builder.SlackBuild109
-rw-r--r--source/l/PyQt-builder/PyQt-builder.url1
-rw-r--r--source/l/PyQt-builder/slack-desc19
-rwxr-xr-xsource/l/PyQt5/PyQt5.SlackBuild66
-rw-r--r--source/l/PyQt5/patches/pyqt5-python2-crash.patch13
-rwxr-xr-xsource/l/PyQt5_sip/PyQt5_sip.SlackBuild109
-rw-r--r--source/l/PyQt5_sip/PyQt5_sip.url1
-rw-r--r--source/l/PyQt5_sip/slack-desc (renamed from source/l/eigen2/slack-desc)24
-rwxr-xr-xsource/l/QScintilla/QScintilla.SlackBuild115
-rw-r--r--source/l/QScintilla/QScintilla_qsciscintillabase_qurl.diff11
-rw-r--r--source/l/QtAV/QtAV.url1
-rw-r--r--source/l/QtAV/doinst.sh3
-rw-r--r--source/l/SDL2/SDL2-2.0.9-khrplatform.patch15
-rwxr-xr-xsource/l/SDL2/SDL2.SlackBuild49
-rw-r--r--source/l/SDL2/SDL2.url2
-rwxr-xr-xsource/l/SDL2_gfx/SDL2_gfx.SlackBuild2
-rwxr-xr-xsource/l/SDL2_image/SDL2_image.SlackBuild6
-rw-r--r--source/l/SDL2_image/SDL2_image.url2
-rw-r--r--source/l/SDL2_image/slack-desc2
-rwxr-xr-xsource/l/SDL2_mixer/SDL2_mixer.SlackBuild7
-rw-r--r--source/l/SDL2_mixer/SDL2_mixer.url2
-rw-r--r--source/l/SDL2_mixer/slack-desc2
-rwxr-xr-xsource/l/SDL2_net/SDL2_net.SlackBuild11
-rw-r--r--source/l/SDL2_net/SDL2_net.url1
-rw-r--r--source/l/SDL2_net/slack-desc2
-rwxr-xr-xsource/l/SDL2_ttf/SDL2_ttf.SlackBuild8
-rw-r--r--source/l/SDL2_ttf/SDL2_ttf.url2
-rw-r--r--source/l/SDL2_ttf/slack-desc2
-rwxr-xr-xsource/l/a52dec/a52dec.SlackBuild23
-rw-r--r--source/l/a52dec/a52dec.url1
-rw-r--r--source/l/a52dec/slack-desc2
-rwxr-xr-xsource/l/abseil-cpp/abseil-cpp.SlackBuild118
-rw-r--r--source/l/abseil-cpp/abseil-cpp.url1
-rw-r--r--source/l/abseil-cpp/slack-desc19
-rw-r--r--source/l/accountsservice/7e9058c1edda71cd9aa457717ed8fed50cd49666.patch32
-rwxr-xr-xsource/l/accountsservice/accountsservice.SlackBuild22
-rwxr-xr-xsource/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild28
-rw-r--r--source/l/alsa-lib/alsa-lib.url1
-rwxr-xr-xsource/l/alsa-plugins/alsa-plugins.SlackBuild2
-rwxr-xr-xsource/l/aom/aom.SlackBuild132
-rwxr-xr-xsource/l/aom/fetch-aom.sh52
-rw-r--r--source/l/aom/slack-desc19
-rw-r--r--source/l/apr-util/apr-util-mariadb-upstream.patch128
-rwxr-xr-xsource/l/apr-util/apr-util.SlackBuild8
-rw-r--r--source/l/apr-util/apr-util.url4
-rwxr-xr-xsource/l/apr/apr.SlackBuild3
-rw-r--r--source/l/apr/apr.url4
-rwxr-xr-xsource/l/argon2/argon2.SlackBuild2
-rwxr-xr-xsource/l/aspell/aspell.SlackBuild2
-rw-r--r--source/l/at-spi2-atk/doinst.sh6
-rw-r--r--source/l/atk/slack-desc19
-rwxr-xr-xsource/l/atkmm2/atkmm2.SlackBuild (renamed from source/l/gamin/gamin.SlackBuild)108
-rw-r--r--source/l/atkmm2/slack-desc (renamed from source/l/at-spi2-atk/slack-desc)24
-rwxr-xr-xsource/l/audiofile/audiofile.SlackBuild2
-rwxr-xr-xsource/l/avahi/avahi.SlackBuild185
-rw-r--r--source/l/avahi/avahi.url2
-rw-r--r--source/l/avahi/doinst.sh37
-rwxr-xr-xsource/l/avahi/fetch-avahi.sh49
-rw-r--r--source/l/avahi/fixup_avahi-dnsconfd.action.patch69
-rw-r--r--source/l/avahi/patches/fixup_avahi-dnsconfd.action.patch69
-rw-r--r--source/l/avahi/slack-desc19
-rwxr-xr-xsource/l/babl/babl.SlackBuild3
-rwxr-xr-xsource/l/boost/boost.SlackBuild69
-rw-r--r--source/l/boost/boost.bootstrap.python3.diff11
-rwxr-xr-xsource/l/brotli/brotli.SlackBuild11
-rw-r--r--source/l/brotli/brotli.no.unrecognized.R.diff32
-rwxr-xr-xsource/l/cairo/cairo.SlackBuild76
-rw-r--r--source/l/cairo/cairo.url2
-rwxr-xr-xsource/l/cairomm/cairomm.SlackBuild41
-rwxr-xr-xsource/l/cairomm1/cairomm1.SlackBuild123
-rw-r--r--source/l/cairomm1/slack-desc19
-rwxr-xr-xsource/l/cfitsio/cfitsio.SlackBuild4
-rwxr-xr-xsource/l/clucene/clucene.SlackBuild3
-rw-r--r--source/l/clucene/clucene.ctime.diff10
-rwxr-xr-xsource/l/colord/colord.SlackBuild150
-rw-r--r--source/l/colord/colord.url1
-rw-r--r--source/l/colord/doinst.sh17
-rw-r--r--source/l/colord/slack-desc19
-rwxr-xr-xsource/l/cryfs/cryfs.SlackBuild7
-rw-r--r--source/l/cryfs/cryfs.gcc13.diff10
-rwxr-xr-xsource/l/cryptopp/cryptopp.SlackBuild2
-rwxr-xr-xsource/l/cxxopts/cxxopts.SlackBuild118
-rw-r--r--source/l/cxxopts/cxxopts.url1
-rw-r--r--source/l/cxxopts/slack-desc (renamed from source/l/mozjs78/slack-desc)23
-rwxr-xr-xsource/l/dav1d/dav1d.SlackBuild124
-rw-r--r--source/l/dav1d/dav1d.url1
-rw-r--r--source/l/dav1d/slack-desc19
-rwxr-xr-xsource/l/dbus-python/dbus-python.SlackBuild25
-rwxr-xr-xsource/l/dconf-editor/dconf-editor.SlackBuild2
-rwxr-xr-xsource/l/dconf/dconf.SlackBuild2
-rw-r--r--source/l/dconf/slack-desc2
-rwxr-xr-xsource/l/desktop-file-utils/desktop-file-utils.SlackBuild37
-rwxr-xr-xsource/l/djvulibre/djvulibre.SlackBuild2
-rwxr-xr-xsource/l/dotconf/dotconf.SlackBuild4
-rwxr-xr-xsource/l/duktape/duktape.SlackBuild110
-rw-r--r--source/l/duktape/duktape.url1
-rw-r--r--source/l/duktape/slack-desc19
-rwxr-xr-xsource/l/dvdauthor/dvdauthor.SlackBuild2
-rwxr-xr-xsource/l/eigen3/eigen3.SlackBuild2
-rwxr-xr-xsource/l/enchant/enchant.SlackBuild25
-rw-r--r--source/l/enchant/enchant.url1
-rwxr-xr-xsource/l/espeak-ng/espeak-ng.SlackBuild4
-rwxr-xr-xsource/l/exiv2/exiv2.SlackBuild10
-rw-r--r--source/l/exiv2/exiv2.url1
-rwxr-xr-xsource/l/exiv2/paredown.sh30
-rwxr-xr-xsource/l/expat/expat.SlackBuild3
-rw-r--r--source/l/expat/expat.url2
-rwxr-xr-xsource/l/farstream/farstream.SlackBuild2
-rw-r--r--source/l/ffmpeg/0004-support-nv-codec-headers-12.2.patch291
-rw-r--r--source/l/ffmpeg/250471ea1745fc703eb346a2a662304536a311b1.patch25
-rw-r--r--source/l/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch31
-rwxr-xr-xsource/l/ffmpeg/ffmpeg.SlackBuild85
-rw-r--r--source/l/ffmpeg/ffmpeg.vulkan.diff15
-rwxr-xr-xsource/l/fftw/fftw.SlackBuild34
-rwxr-xr-xsource/l/fluidsynth/fluidsynth.SlackBuild5
-rwxr-xr-xsource/l/fmt/fmt.SlackBuild116
-rw-r--r--source/l/fmt/fmt.url1
-rw-r--r--source/l/fmt/slack-desc19
-rwxr-xr-xsource/l/freecell-solver/freecell-solver.SlackBuild4
-rw-r--r--source/l/freecell-solver/freecell-solver.url2
-rw-r--r--source/l/freetype/6e9d8d314ff6ab23177b9162c0b96616460bb84e.patch42
-rwxr-xr-xsource/l/freetype/freetype.SlackBuild13
-rw-r--r--source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff13
-rw-r--r--source/l/freetype/freetype.csh6
-rw-r--r--source/l/freetype/freetype.sh6
-rw-r--r--source/l/freetype/freetype.url3
-rwxr-xr-xsource/l/frei0r-plugins/frei0r-plugins.SlackBuild27
-rw-r--r--source/l/frei0r-plugins/frei0r-plugins.url4
-rwxr-xr-xsource/l/fribidi/fribidi.SlackBuild16
-rw-r--r--source/l/fribidi/fribidi.url1
-rwxr-xr-xsource/l/fuse/fuse.SlackBuild7
-rw-r--r--source/l/fuse/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch55
-rw-r--r--source/l/fuse3/fuse.url1
-rw-r--r--source/l/gamin/0001-Poll-files-on-nfs4.patch27
-rw-r--r--source/l/gamin/doinst.sh14
-rw-r--r--source/l/gamin/fix-double-lock-in-inotify-helper-c.patch21
-rw-r--r--source/l/gamin/gaminrc37
-rw-r--r--source/l/gamin/no_g_const_return.patch44
-rwxr-xr-xsource/l/gc/gc.SlackBuild7
-rw-r--r--source/l/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch59
-rwxr-xr-xsource/l/gcr/gcr.SlackBuild8
-rw-r--r--source/l/gcr4/doinst.sh20
-rwxr-xr-xsource/l/gcr4/gcr4.SlackBuild125
-rw-r--r--source/l/gcr4/slack-desc19
-rwxr-xr-xsource/l/gd/gd.SlackBuild5
-rw-r--r--source/l/gd/gd.f4bc1f5c26925548662946ed7cfa473c190a104a.patch28
-rwxr-xr-xsource/l/gdbm/gdbm.SlackBuild10
-rwxr-xr-xsource/l/gdk-pixbuf2-xlib/gdk-pixbuf2-xlib.SlackBuild7
-rwxr-xr-xsource/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild6
-rwxr-xr-xsource/l/gegl/gegl.SlackBuild3
-rwxr-xr-xsource/l/gexiv2/gexiv2.SlackBuild2
-rwxr-xr-xsource/l/gi-docgen/gi-docgen.SlackBuild (renamed from source/l/taglib-extras/taglib-extras.SlackBuild)63
-rw-r--r--source/l/gi-docgen/gi-docgen.url1
-rw-r--r--source/l/gi-docgen/slack-desc19
-rw-r--r--source/l/giflib/giflib.GifQuantizeBuffer.diff19
-rwxr-xr-xsource/l/giflib/giflib.SlackBuild2
-rwxr-xr-xsource/l/gjs/gjs.SlackBuild11
-rwxr-xr-xsource/l/glade/glade.SlackBuild10
-rwxr-xr-xsource/l/glib2/glib2.SlackBuild21
-rw-r--r--source/l/glibc/doinst.sh-aaa_glibc-solibs7
-rw-r--r--source/l/glibc/doinst.sh-glibc6
-rw-r--r--source/l/glibc/glibc-c-utf8-locale.patch270
-rwxr-xr-xsource/l/glibc/glibc.SlackBuild89
-rwxr-xr-xsource/l/glibc/libxcrypt.build119
-rw-r--r--source/l/glibc/libxcrypt.url1
-rw-r--r--source/l/glibc/patches/0001-nsswitch-return-result-when-nss-database-is-locked.patch47
-rw-r--r--source/l/glibc/patches/CVE-2021-27645.patch20
-rw-r--r--source/l/glibc/patches/CVE-2021-33574_1.patch71
-rw-r--r--source/l/glibc/patches/CVE-2021-33574_2.patch53
-rw-r--r--source/l/glibc/patches/CVE-2021-35942.patch41
-rw-r--r--source/l/glibc/patches/CVE-2021-38604.patch40
-rw-r--r--source/l/glibc/patches/CVE-2024-2961_glibc2.39.patch217
-rw-r--r--source/l/glibc/patches/cdc31409bd4f878577059e70dbd52a28643ec609.patch237
-rw-r--r--source/l/glibc/patches/reenable_DT_HASH.patch101
-rwxr-xr-xsource/l/glibmm/glibmm.SlackBuild4
-rwxr-xr-xsource/l/glibmm2/glibmm2.SlackBuild128
-rw-r--r--source/l/glibmm2/slack-desc19
-rwxr-xr-xsource/l/gmime/gmime.SlackBuild19
-rw-r--r--source/l/gmime/gmime.url2
-rwxr-xr-xsource/l/gmm/gmm.SlackBuild4
-rwxr-xr-xsource/l/gmp/gmp.SlackBuild2
-rw-r--r--source/l/gnu-efi/gnu-efi.url2
-rwxr-xr-xsource/l/gobject-introspection/gobject-introspection.SlackBuild5
-rw-r--r--source/l/gobject-introspection/slack-desc4
-rwxr-xr-xsource/l/grantlee/grantlee.SlackBuild4
-rwxr-xr-xsource/l/graphene/graphene.SlackBuild2
-rwxr-xr-xsource/l/graphite2/graphite2.SlackBuild2
-rwxr-xr-xsource/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild2
-rwxr-xr-xsource/l/gst-plugins-bad-free/fetch-sources.sh44
-rwxr-xr-xsource/l/gst-plugins-bad-free/gst-p-bad-cleanup.sh193
-rwxr-xr-xsource/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild152
-rw-r--r--source/l/gst-plugins-bad-free/gst-plugins-bad.url1
-rw-r--r--source/l/gst-plugins-bad-free/slack-desc19
-rw-r--r--source/l/gst-plugins-good/slack-desc10
-rwxr-xr-xsource/l/gtk+2/gtk+2.SlackBuild12
-rwxr-xr-xsource/l/gtk+3/gtk+3.SlackBuild12
-rw-r--r--source/l/gtk+3/gtk.array-bounds.gcc11.diff10
-rw-r--r--source/l/gtk+3/gtk.fix.missing.version-check.py.diff39
-rwxr-xr-xsource/l/gtk4/gtk4.SlackBuild25
-rwxr-xr-xsource/l/gtkmm4/gtkmm4.SlackBuild122
-rw-r--r--source/l/gtkmm4/slack-desc19
-rwxr-xr-xsource/l/gtksourceview3/gtksourceview3.SlackBuild2
-rwxr-xr-xsource/l/gtkspell3/gtkspell3.SlackBuild (renamed from source/l/libvisual-plugins/libvisual-plugins.SlackBuild)45
-rw-r--r--source/l/gtkspell3/slack-desc19
-rwxr-xr-xsource/l/gvfs/gvfs.SlackBuild5
-rwxr-xr-xsource/l/harfbuzz/harfbuzz.SlackBuild8
-rw-r--r--source/l/harfbuzz/harfbuzz.url3
-rw-r--r--source/l/hunspell/hunspell.url1
-rwxr-xr-xsource/l/hyphen/hyphen.SlackBuild2
-rwxr-xr-xsource/l/icu4c/icu4c.SlackBuild6
-rw-r--r--source/l/icu4c/icu4c.url3
-rwxr-xr-xsource/l/id3lib/id3lib.SlackBuild2
-rwxr-xr-xsource/l/imagemagick/imagemagick.SlackBuild27
-rw-r--r--source/l/imagemagick/imagemagick.url3
-rw-r--r--source/l/imagemagick/policy.xml.diff32
-rwxr-xr-xsource/l/immer/immer.SlackBuild123
-rw-r--r--source/l/immer/immer.url1
-rw-r--r--source/l/immer/slack-desc (renamed from source/l/gamin/slack-desc)22
-rwxr-xr-xsource/l/isl/isl.SlackBuild2
-rw-r--r--source/l/isl/isl.url3
-rw-r--r--source/l/isl/slack-desc2
-rwxr-xr-xsource/l/iso-codes/iso-codes.SlackBuild21
-rwxr-xr-xsource/l/jansson/jansson.SlackBuild2
-rwxr-xr-xsource/l/jasper/jasper.SlackBuild15
-rw-r--r--source/l/jasper/jasper.url3
-rwxr-xr-xsource/l/jemalloc/jemalloc.SlackBuild11
-rw-r--r--source/l/jemalloc/jemalloc.url1
-rwxr-xr-xsource/l/jmtpfs/jmtpfs.SlackBuild2
-rwxr-xr-xsource/l/json-c/json-c.SlackBuild6
-rwxr-xr-xsource/l/json-glib/json-glib.SlackBuild4
-rwxr-xr-xsource/l/kdsoap/kdsoap.SlackBuild2
-rw-r--r--source/l/kdsoap/kdsoap.url1
-rwxr-xr-xsource/l/keyutils/keyutils.SlackBuild2
-rwxr-xr-xsource/l/lager/lager.SlackBuild125
-rw-r--r--source/l/lager/lager.url1
-rw-r--r--source/l/lager/slack-desc19
-rwxr-xr-xsource/l/lame/lame.SlackBuild2
-rwxr-xr-xsource/l/lcms/lcms.SlackBuild2
-rwxr-xr-xsource/l/lcms2/lcms2.SlackBuild8
-rwxr-xr-xsource/l/lensfun/lensfun.SlackBuild4
-rwxr-xr-xsource/l/libaio/libaio.SlackBuild2
-rw-r--r--source/l/libappindicator/libappindicator-no-python.patch888
-rwxr-xr-xsource/l/libappindicator/libappindicator.SlackBuild11
-rwxr-xr-xsource/l/libarchive/libarchive.SlackBuild13
-rw-r--r--source/l/libarchive/libarchive.url1
-rwxr-xr-xsource/l/libass/libass.SlackBuild120
-rw-r--r--source/l/libass/libass.url1
-rw-r--r--source/l/libass/slack-desc19
-rwxr-xr-xsource/l/libasyncns/libasyncns.SlackBuild2
-rwxr-xr-xsource/l/libburn/libburn.SlackBuild4
-rw-r--r--source/l/libburn/libburn.url2
-rw-r--r--source/l/libcaca/70.patch84
-rw-r--r--source/l/libcaca/libcaca-0.99.beta20-CVE-2022-0856.patch38
-rwxr-xr-xsource/l/libcaca/libcaca.SlackBuild12
-rw-r--r--source/l/libcaca/libcaca.git.20211207.patch188
-rw-r--r--source/l/libcaca/libcaca.url1
-rw-r--r--source/l/libcanberra/libcanberra-0.30-wayland-1.patch77
-rwxr-xr-xsource/l/libcanberra/libcanberra.SlackBuild8
-rwxr-xr-xsource/l/libcap-ng/libcap-ng.SlackBuild9
-rwxr-xr-xsource/l/libclc/libclc.SlackBuild4
-rw-r--r--source/l/libclc/libclc.url2
-rwxr-xr-xsource/l/libcue/libcue.SlackBuild4
-rwxr-xr-xsource/l/libcupsfilters/libcupsfilters.SlackBuild146
-rw-r--r--source/l/libcupsfilters/libcupsfilters.url1
-rw-r--r--source/l/libcupsfilters/slack-desc19
-rwxr-xr-xsource/l/libdaemon/libdaemon.SlackBuild125
-rw-r--r--source/l/libdaemon/libdaemon.url1
-rw-r--r--source/l/libdaemon/slack-desc19
-rwxr-xr-xsource/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild2
-rwxr-xr-xsource/l/libdbusmenu/libdbusmenu.SlackBuild2
-rwxr-xr-xsource/l/libdeflate/libdeflate.SlackBuild116
-rw-r--r--source/l/libdeflate/libdeflate.url1
-rw-r--r--source/l/libdeflate/slack-desc19
-rw-r--r--source/l/libdiscid/b89c145.patch28
-rwxr-xr-xsource/l/libdiscid/libdiscid.SlackBuild11
-rwxr-xr-xsource/l/libdmtx/libdmtx.SlackBuild4
-rw-r--r--source/l/libev/README12
-rwxr-xr-xsource/l/libev/libev.SlackBuild163
-rw-r--r--source/l/libev/libev.url1
-rw-r--r--source/l/libev/slack-desc19
-rwxr-xr-xsource/l/libevent/libevent.SlackBuild4
-rwxr-xr-xsource/l/libexif/libexif.SlackBuild7
-rwxr-xr-xsource/l/libfakekey/libfakekey.SlackBuild2
-rwxr-xr-xsource/l/libffi/libffi.SlackBuild20
-rw-r--r--source/l/libffi/libffi.url2
-rwxr-xr-xsource/l/libgnt/libgnt.SlackBuild3
-rw-r--r--source/l/libgnt/libgnt.url2
-rw-r--r--source/l/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch43
-rw-r--r--source/l/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch11
-rw-r--r--source/l/libgpod/libgpod-0.8.3-pkgconfig_sharp.patch17
-rw-r--r--source/l/libgpod/libgpod-udev.patch15
-rwxr-xr-xsource/l/libgpod/libgpod.SlackBuild11
-rwxr-xr-xsource/l/libgsf/libgsf.SlackBuild2
-rwxr-xr-xsource/l/libgtop/libgtop.SlackBuild2
-rwxr-xr-xsource/l/libgusb/libgusb.SlackBuild125
-rw-r--r--source/l/libgusb/libgusb.url1
-rw-r--r--source/l/libgusb/slack-desc19
-rwxr-xr-xsource/l/libhandy/libhandy.SlackBuild110
-rw-r--r--source/l/libhandy/slack-desc19
-rwxr-xr-xsource/l/libieee1284/libieee1284.SlackBuild5
-rw-r--r--source/l/libieee1284/libieee1284.url1
-rwxr-xr-xsource/l/libimobiledevice-glue/fetch-libimobiledevice-glue.sh50
-rwxr-xr-xsource/l/libimobiledevice-glue/libimobiledevice-glue.SlackBuild (renamed from source/l/atk/atk.SlackBuild)88
-rw-r--r--source/l/libimobiledevice-glue/slack-desc19
-rwxr-xr-xsource/l/libimobiledevice/fetch-libimobiledevice.sh5
-rwxr-xr-xsource/l/libimobiledevice/libimobiledevice.SlackBuild16
-rwxr-xr-xsource/l/libindicator/libindicator.SlackBuild2
-rw-r--r--source/l/libiodbc/libiodbc.url1
-rw-r--r--source/l/libiodbc/slack-desc2
-rwxr-xr-xsource/l/libjpeg-turbo/libjpeg-turbo.SlackBuild2
-rwxr-xr-xsource/l/libmpc/libmpc.SlackBuild2
-rwxr-xr-xsource/l/libmtp/libmtp.SlackBuild2
-rwxr-xr-xsource/l/libnice/libnice.SlackBuild4
-rw-r--r--source/l/libnl/libnl.info2
-rw-r--r--source/l/libnl/libnl.url1
-rw-r--r--source/l/libnl/slack-desc2
-rw-r--r--source/l/libnl3/libnl.url2
-rwxr-xr-xsource/l/libnl3/libnl3.SlackBuild2
-rwxr-xr-xsource/l/libnotify/libnotify.SlackBuild15
-rw-r--r--source/l/libnotify/slack-desc4
-rwxr-xr-xsource/l/libnsl/libnsl.SlackBuild4
-rw-r--r--source/l/libnsl/slack-desc8
-rwxr-xr-xsource/l/libnss_nis/libnss_nis.SlackBuild4
-rwxr-xr-xsource/l/libnvme/libnvme.SlackBuild (renamed from source/l/at-spi2-atk/at-spi2-atk.SlackBuild)47
-rw-r--r--source/l/libnvme/libnvme.url1
-rw-r--r--source/l/libnvme/slack-desc19
-rwxr-xr-xsource/l/libopusenc/libopusenc.SlackBuild2
-rwxr-xr-xsource/l/libpaper/libpaper.SlackBuild (renamed from source/l/QtAV/QtAV.SlackBuild)50
-rw-r--r--source/l/libpaper/libpaper.url2
-rw-r--r--source/l/libpaper/slack-desc19
-rwxr-xr-xsource/l/libplacebo/libplacebo.SlackBuild112
-rw-r--r--source/l/libplacebo/libplacebo.url1
-rw-r--r--source/l/libplacebo/slack-desc19
-rwxr-xr-xsource/l/libplist/libplist.SlackBuild12
-rwxr-xr-xsource/l/libpng/libpng.SlackBuild10
-rwxr-xr-xsource/l/libppd/libppd.SlackBuild147
-rw-r--r--source/l/libppd/libppd.url1
-rw-r--r--source/l/libppd/slack-desc19
-rwxr-xr-xsource/l/libproxy/libproxy.SlackBuild64
-rwxr-xr-xsource/l/libpsl/libpsl.SlackBuild14
-rw-r--r--source/l/libpsl/public_suffix_list.dat6563
-rwxr-xr-xsource/l/libptytty/libptytty.SlackBuild120
-rw-r--r--source/l/libptytty/libptytty.url1
-rw-r--r--source/l/libptytty/slack-desc19
-rwxr-xr-xsource/l/libqalculate/libqalculate.SlackBuild4
-rwxr-xr-xsource/l/librevenge/librevenge.SlackBuild2
-rwxr-xr-xsource/l/librsvg/librsvg.SlackBuild19
-rwxr-xr-xsource/l/libsamplerate/libsamplerate.SlackBuild2
-rwxr-xr-xsource/l/libsass/libsass.SlackBuild2
-rwxr-xr-xsource/l/libseccomp/libseccomp.SlackBuild142
-rw-r--r--source/l/libseccomp/libseccomp.url1
-rw-r--r--source/l/libseccomp/slack-desc19
-rwxr-xr-xsource/l/libsecret/libsecret.SlackBuild45
-rwxr-xr-xsource/l/libsigc++/libsigc++.SlackBuild4
-rw-r--r--source/l/libsigc++/libsigc++.url2
-rw-r--r--source/l/libsigc++3/libsigc++.url2
-rwxr-xr-xsource/l/libsigc++3/libsigc++3.SlackBuild10
-rwxr-xr-xsource/l/libsigsegv/libsigsegv.SlackBuild2
-rwxr-xr-xsource/l/libsndfile/libsndfile.SlackBuild11
-rwxr-xr-xsource/l/libsodium/libsodium.SlackBuild10
-rwxr-xr-xsource/l/libsoup/libsoup.SlackBuild2
-rwxr-xr-xsource/l/libsoup3/libsoup3.SlackBuild116
-rw-r--r--source/l/libsoup3/slack-desc19
-rwxr-xr-xsource/l/libspectre/libspectre.SlackBuild2
-rwxr-xr-xsource/l/libssh2/libssh2.SlackBuild2
-rwxr-xr-xsource/l/libtiff/libtiff.SlackBuild7
-rwxr-xr-xsource/l/libunibreak/libunibreak.SlackBuild134
-rw-r--r--source/l/libunibreak/libunibreak.url2
-rw-r--r--source/l/libunibreak/slack-desc19
-rwxr-xr-xsource/l/libunistring/libunistring.SlackBuild4
-rwxr-xr-xsource/l/libunwind/libunwind.SlackBuild4
-rwxr-xr-xsource/l/liburing/liburing.SlackBuild3
-rwxr-xr-xsource/l/libusb-compat/libusb-compat.SlackBuild11
-rw-r--r--source/l/libusb-compat/libusb-compat.url1
-rw-r--r--source/l/libusb-compat/slack-desc2
-rw-r--r--source/l/libusb/f6d2cb561402c3b6d3627c0eb89e009b503d9067.patch65
-rwxr-xr-xsource/l/libusb/libusb.SlackBuild10
-rwxr-xr-xsource/l/libusbmuxd/fetch-libusbmuxd.sh5
-rwxr-xr-xsource/l/libusbmuxd/libusbmuxd.SlackBuild2
-rwxr-xr-xsource/l/libuv/libuv.SlackBuild2
-rwxr-xr-xsource/l/libvisio/libvisio.SlackBuild2
l---------source/l/libvisual-plugins1
-rw-r--r--source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch18
-rw-r--r--source/l/libvisual-plugins/libvisual-plugins.gstreamer.diff73
-rwxr-xr-xsource/l/libvisual/libvisual-plugins.SlackBuild139
-rwxr-xr-xsource/l/libvisual/libvisual.SlackBuild30
-rw-r--r--source/l/libvisual/libvisual.glib.h.diff11
-rw-r--r--source/l/libvisual/libvisual.url1
-rw-r--r--source/l/libvisual/slack-desc2
-rw-r--r--source/l/libvisual/slack-desc.libvisual-plugins (renamed from source/l/libvisual-plugins/slack-desc)0
-rwxr-xr-xsource/l/libvncserver/libvncserver.SlackBuild8
-rw-r--r--source/l/libvpx/0001-Relax-ABI-check.patch45
-rwxr-xr-xsource/l/libvpx/libvpx.SlackBuild4
-rwxr-xr-xsource/l/libwebp/libwebp.SlackBuild2
-rw-r--r--source/l/libwebp/libwebp.url1
-rwxr-xr-xsource/l/libwmf/libwmf.SlackBuild2
-rw-r--r--source/l/libwnck3/00000000.patch27
-rwxr-xr-xsource/l/libwnck3/libwnck3.SlackBuild9
-rwxr-xr-xsource/l/libwpg/libwpg.SlackBuild2
-rwxr-xr-xsource/l/libxkbcommon/libxkbcommon.SlackBuild2
-rw-r--r--source/l/libxml2/libxml2-2.12.0-python3-unicode-errors.patch34
-rwxr-xr-xsource/l/libxml2/libxml2.SlackBuild58
-rw-r--r--source/l/libxml2/libxml2.do-not-check-crc.diff35
-rw-r--r--source/l/libxml2/libxml2.url4
-rwxr-xr-xsource/l/libxslt/libxslt.SlackBuild35
-rw-r--r--source/l/libxslt/libxslt.url4
-rw-r--r--source/l/libxslt/libxslt.xsltMaxDepth.diff6
-rwxr-xr-xsource/l/libyaml/libyaml.SlackBuild2
-rw-r--r--source/l/lmdb/lmdb-make.patch17
-rwxr-xr-xsource/l/lmdb/lmdb.SlackBuild2
-rw-r--r--source/l/lmdb/lmdb.url2
-rw-r--r--source/l/lmdb/slack-desc2
-rwxr-xr-xsource/l/loudmouth/loudmouth.SlackBuild2
-rwxr-xr-xsource/l/lz4/lz4.SlackBuild2
-rw-r--r--source/l/lz4/lz4.url2
-rwxr-xr-xsource/l/lzo/lzo.SlackBuild2
-rwxr-xr-xsource/l/mlt/mlt.SlackBuild8
-rw-r--r--source/l/mlt/mlt.deps4
-rwxr-xr-xsource/l/mozilla-nss/mozilla-nss.SlackBuild6
-rw-r--r--source/l/mozjs115/autoconf/autoconf-2.13-consolidated_fixes-1.patch (renamed from source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch)0
-rwxr-xr-xsource/l/mozjs115/autoconf/autoconf.build (renamed from source/l/mozjs78/autoconf/autoconf.build)0
-rw-r--r--source/l/mozjs115/double_t.x86.diff13
-rwxr-xr-xsource/l/mozjs115/mozjs115.SlackBuild (renamed from source/l/mozjs78/mozjs78.SlackBuild)40
-rw-r--r--source/l/mozjs115/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch36
-rw-r--r--source/l/mozjs115/patches/copy-headers.patch (renamed from source/l/mozjs78/patches/copy-headers.patch)36
-rw-r--r--source/l/mozjs115/patches/emitter.patch67
-rw-r--r--source/l/mozjs115/patches/fix-soname.patch (renamed from source/l/mozjs78/patches/fix-soname.patch)10
-rw-r--r--source/l/mozjs115/patches/icu_sources_data-Write-command-output-to-our-stderr.patch44
-rw-r--r--source/l/mozjs115/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch (renamed from source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch)7
-rw-r--r--source/l/mozjs115/patches/init_patch.patch28
-rw-r--r--source/l/mozjs115/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch29
-rw-r--r--source/l/mozjs115/patches/spidermonkey_checks_disable.patch22
-rw-r--r--source/l/mozjs115/patches/tests-increase-timeout.patch (renamed from source/l/mozjs78/patches/tests-increase-timeout.patch)12
-rw-r--r--source/l/mozjs115/slack-desc20
-rw-r--r--source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch10
-rw-r--r--source/l/mozjs78/patches/emitter.patch61
-rw-r--r--source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch34
-rw-r--r--source/l/mozjs78/patches/init_patch.patch13
-rw-r--r--source/l/mozjs78/patches/spidermonkey_checks_disable.patch10
-rw-r--r--source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch11
-rwxr-xr-xsource/l/mpfr/mpfr.SlackBuild10
-rw-r--r--source/l/mpfr/mpfr.url1
-rw-r--r--source/l/mpfr/patches.url2
-rwxr-xr-xsource/l/ncurses/aaa_terminfo.SlackBuild2
-rwxr-xr-xsource/l/ncurses/ncurses.SlackBuild2
-rwxr-xr-xsource/l/neon/neon.SlackBuild2
-rw-r--r--source/l/netpbm/netpbm-CAN-2005-2471.patch18
-rw-r--r--source/l/netpbm/netpbm-glibc.patch9
-rw-r--r--source/l/netpbm/netpbm-ppmfadeusage.patch88
-rw-r--r--source/l/netpbm/netpbm-security-scripts.patch267
-rwxr-xr-xsource/l/netpbm/netpbm.SlackBuild1
-rwxr-xr-xsource/l/newt/newt.SlackBuild12
-rwxr-xr-xsource/l/nodejs/nodejs.SlackBuild166
-rw-r--r--source/l/nodejs/nodejs.url1
-rw-r--r--source/l/nodejs/slack-desc19
-rwxr-xr-xsource/l/oniguruma/oniguruma.SlackBuild10
-rw-r--r--source/l/oniguruma/oniguruma.url1
-rwxr-xr-xsource/l/openal-soft/openal-soft.SlackBuild4
-rwxr-xr-xsource/l/opencv/opencv.SlackBuild14
-rwxr-xr-xsource/l/openexr/openexr.SlackBuild9
-rw-r--r--source/l/openexr/slack-desc12
-rwxr-xr-xsource/l/openjpeg/openjpeg.SlackBuild2
-rw-r--r--source/l/openjpeg/openjpeg.url1
-rwxr-xr-xsource/l/opus/opus.SlackBuild53
-rw-r--r--source/l/opus/opus.url1
-rwxr-xr-xsource/l/opusfile/opusfile.SlackBuild4
-rwxr-xr-xsource/l/orc/orc.SlackBuild4
-rw-r--r--source/l/pango/pango.url1
-rw-r--r--source/l/pango/slack-desc2
-rwxr-xr-xsource/l/pangomm/pangomm.SlackBuild2
-rwxr-xr-xsource/l/pangomm2/pangomm2.SlackBuild120
-rw-r--r--source/l/pangomm2/slack-desc19
-rwxr-xr-xsource/l/parted/parted.SlackBuild2
-rwxr-xr-xsource/l/pcaudiolib/pcaudiolib.SlackBuild2
-rwxr-xr-xsource/l/pcre2/pcre2.SlackBuild10
-rw-r--r--source/l/pcre2/pcre2.url3
-rwxr-xr-xsource/l/phonon-backend-gstreamer/phonon-backend-gstreamer.SlackBuild2
-rwxr-xr-xsource/l/phonon/phonon.SlackBuild6
-rw-r--r--source/l/phonon/phonon.deps1
-rwxr-xr-xsource/l/pilot-link/pilot-link.SlackBuild6
-rw-r--r--source/l/pipewire/doinst.sh4
-rw-r--r--source/l/pipewire/pipewire-disable.sh56
-rw-r--r--source/l/pipewire/pipewire-enable.sh48
-rw-r--r--source/l/pipewire/pipewire-pulse.desktop.sample9
-rwxr-xr-xsource/l/pipewire/pipewire.SlackBuild31
-rw-r--r--source/l/pipewire/pipewire.desktop.sample9
-rwxr-xr-xsource/l/polkit-qt-1/polkit-qt-1.SlackBuild2
-rw-r--r--source/l/polkit/0001-configure-fix-elogind-support.patch29
-rw-r--r--source/l/polkit/doinst.sh4
-rw-r--r--source/l/polkit/polkit-124-systemd-fixup.patch28
-rw-r--r--source/l/polkit/polkit-124-systemd.patch50
-rwxr-xr-xsource/l/polkit/polkit.SlackBuild98
-rwxr-xr-xsource/l/poppler/poppler.SlackBuild8
-rw-r--r--source/l/poppler/slack-desc2
-rwxr-xr-xsource/l/popt/popt.SlackBuild2
-rwxr-xr-xsource/l/protobuf/protobuf.SlackBuild137
-rw-r--r--source/l/protobuf/protobuf.url1
-rw-r--r--source/l/protobuf/slack-desc20
-rw-r--r--source/l/protobuf/soversion.patch30
-rw-r--r--source/l/pulseaudio/030_posix-completion.diff4
-rw-r--r--source/l/pulseaudio/doinst.sh1
-rw-r--r--source/l/pulseaudio/ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407.patch64
-rw-r--r--source/l/pulseaudio/f5cacd94abcc47003bd88ad7ca1450de649ffb15.patch95
-rwxr-xr-xsource/l/pulseaudio/pulseaudio.SlackBuild7
-rw-r--r--source/l/pulseaudio/pulseaudio.url1
-rwxr-xr-xsource/l/pycairo/pycairo.SlackBuild26
-rwxr-xr-xsource/l/pycups/pycups.SlackBuild9
-rwxr-xr-xsource/l/pycurl/pycurl.SlackBuild8
-rwxr-xr-xsource/l/pygobject/pygobject.SlackBuild3
-rw-r--r--source/l/pygobject/slack-desc2
-rwxr-xr-xsource/l/pygobject3/pygobject3.SlackBuild37
-rw-r--r--source/l/pygobject3/slack-desc2
-rw-r--r--source/l/pygtk/pygtk.url1
-rwxr-xr-xsource/l/pyparsing/pyparsing.SlackBuild6
-rw-r--r--source/l/python-Jinja2/Jinja2.url1
-rwxr-xr-xsource/l/python-Jinja2/python-Jinja2.SlackBuild84
-rw-r--r--source/l/python-Jinja2/slack-desc19
-rw-r--r--source/l/python-MarkupSafe/MarkupSafe.url1
-rwxr-xr-xsource/l/python-MarkupSafe/python-MarkupSafe.SlackBuild84
-rw-r--r--source/l/python-MarkupSafe/slack-desc19
-rw-r--r--source/l/python-PyYAML/PyYAML.url1
-rw-r--r--source/l/python-PyYAML/cython3.compat.patch39
-rw-r--r--source/l/python-PyYAML/pyproject.toml.cython3.patch7
-rwxr-xr-xsource/l/python-PyYAML/python-PyYAML.SlackBuild88
-rw-r--r--source/l/python-PyYAML/slack-desc19
-rw-r--r--source/l/python-alabaster/alabaster.url1
-rwxr-xr-xsource/l/python-alabaster/python-alabaster.SlackBuild84
-rw-r--r--source/l/python-alabaster/slack-desc20
-rwxr-xr-xsource/l/python-appdirs/python-appdirs.SlackBuild2
-rw-r--r--source/l/python-babel/Babel.url1
-rwxr-xr-xsource/l/python-babel/python-babel.SlackBuild84
-rw-r--r--source/l/python-babel/slack-desc19
-rw-r--r--source/l/python-build/build.url1
-rwxr-xr-xsource/l/python-build/python-build.SlackBuild96
-rw-r--r--source/l/python-build/slack-desc19
-rw-r--r--source/l/python-calver/calver.url1
-rwxr-xr-xsource/l/python-calver/python-calver.SlackBuild96
-rw-r--r--source/l/python-calver/slack-desc19
-rw-r--r--source/l/python-certifi/certifi.url (renamed from source/l/python-certifi/python-certifi.url)0
-rwxr-xr-xsource/l/python-certifi/python-certifi.SlackBuild8
-rw-r--r--source/l/python-cffi/cffi.url1
-rwxr-xr-xsource/l/python-cffi/python-cffi.SlackBuild74
-rw-r--r--source/l/python-cffi/slack-desc19
-rwxr-xr-xsource/l/python-chardet/python-chardet.SlackBuild8
-rwxr-xr-xsource/l/python-charset-normalizer/python-charset-normalizer.SlackBuild8
-rw-r--r--source/l/python-distro/distro.url (renamed from source/l/python-distro/python-distro.url)0
-rwxr-xr-xsource/l/python-distro/python-distro.SlackBuild10
-rwxr-xr-xsource/l/python-dnspython/python-dnspython.SlackBuild8
-rw-r--r--source/l/python-docutils/docutils.url (renamed from source/l/python-docutils/python-docutils.url)0
-rwxr-xr-xsource/l/python-docutils/python-docutils.SlackBuild11
-rw-r--r--source/l/python-doxypypy/doxypypy.url1
-rwxr-xr-xsource/l/python-doxypypy/python-doxypypy.SlackBuild84
-rw-r--r--source/l/python-doxypypy/slack-desc19
-rw-r--r--source/l/python-doxyqml/doxyqml.url1
-rwxr-xr-xsource/l/python-doxyqml/python-doxyqml.SlackBuild84
-rw-r--r--source/l/python-doxyqml/slack-desc19
-rw-r--r--source/l/python-editables/editables.url1
-rwxr-xr-xsource/l/python-editables/python-editables.SlackBuild95
-rw-r--r--source/l/python-editables/slack-desc19
-rw-r--r--source/l/python-flit-core/flit-core.url1
-rwxr-xr-xsource/l/python-flit-core/python-flit-core.SlackBuild101
-rw-r--r--source/l/python-flit-core/slack-desc19
-rw-r--r--source/l/python-future/future.url (renamed from source/l/python-future/python-future.url)0
-rwxr-xr-xsource/l/python-future/python-future.SlackBuild10
-rw-r--r--source/l/python-glad2/glad2.url1
-rwxr-xr-xsource/l/python-glad2/python-glad2.SlackBuild95
-rw-r--r--source/l/python-glad2/slack-desc19
-rw-r--r--source/l/python-hatchling/hatchling.url1
-rwxr-xr-xsource/l/python-hatchling/python-hatchling.SlackBuild95
-rw-r--r--source/l/python-hatchling/slack-desc19
-rw-r--r--source/l/python-html5lib/html5lib.url1
-rwxr-xr-xsource/l/python-html5lib/python-html5lib.SlackBuild91
-rw-r--r--source/l/python-html5lib/slack-desc19
-rw-r--r--source/l/python-idna/idna.url1
-rwxr-xr-xsource/l/python-idna/python-idna.SlackBuild6
-rw-r--r--source/l/python-idna/python-idna.url1
-rw-r--r--source/l/python-imagesize/imagesize.url1
-rwxr-xr-xsource/l/python-imagesize/python-imagesize.SlackBuild84
-rw-r--r--source/l/python-imagesize/slack-desc19
-rw-r--r--source/l/python-importlib_metadata/importlib_metadata.url1
-rwxr-xr-xsource/l/python-importlib_metadata/python-importlib_metadata.SlackBuild84
-rw-r--r--source/l/python-importlib_metadata/slack-desc19
-rw-r--r--source/l/python-installer/installer.url1
-rwxr-xr-xsource/l/python-installer/python-installer.SlackBuild101
-rw-r--r--source/l/python-installer/slack-desc19
-rw-r--r--source/l/python-lxml/lxml.url1
-rwxr-xr-xsource/l/python-lxml/python-lxml.SlackBuild96
-rw-r--r--source/l/python-lxml/slack-desc19
-rwxr-xr-xsource/l/python-markdown/python-markdown.SlackBuild8
-rw-r--r--source/l/python-notify2/notify2.url (renamed from source/l/python-notify2/python-notify2.url)0
-rwxr-xr-xsource/l/python-notify2/python-notify2.SlackBuild2
-rwxr-xr-xsource/l/python-packaging/python-packaging.SlackBuild9
-rw-r--r--source/l/python-pathspec/pathspec.url1
-rwxr-xr-xsource/l/python-pathspec/python-pathspec.SlackBuild93
-rw-r--r--source/l/python-pathspec/slack-desc19
-rw-r--r--source/l/python-pbr/pbr.url1
-rwxr-xr-xsource/l/python-pbr/python-pbr.SlackBuild84
-rw-r--r--source/l/python-pbr/slack-desc19
-rw-r--r--source/l/python-pillow/Pillow.url (renamed from source/l/python-pillow/python-pillow.url)0
-rwxr-xr-xsource/l/python-pillow/python-pillow.SlackBuild6
-rw-r--r--source/l/python-pluggy/pluggy.url1
-rwxr-xr-xsource/l/python-pluggy/python-pluggy.SlackBuild93
-rw-r--r--source/l/python-pluggy/slack-desc19
-rw-r--r--source/l/python-ply/ply.url (renamed from source/l/python-ply/python-ply.url)0
-rwxr-xr-xsource/l/python-ply/python-ply.SlackBuild2
-rw-r--r--source/l/python-psutil/psutil.url1
-rwxr-xr-xsource/l/python-psutil/python-psutil.SlackBuild84
-rw-r--r--source/l/python-psutil/slack-desc19
-rw-r--r--source/l/python-pycparser/pycparser.url1
-rwxr-xr-xsource/l/python-pycparser/python-pycparser.SlackBuild72
-rw-r--r--source/l/python-pycparser/slack-desc19
-rw-r--r--source/l/python-pygments/Pygments.url1
-rw-r--r--source/l/python-pygments/pygments.url1
-rwxr-xr-xsource/l/python-pygments/python-pygments.SlackBuild13
-rw-r--r--source/l/python-pygments/slack-desc2
-rw-r--r--source/l/python-pyproject-hooks/pyproject-hooks.url1
-rwxr-xr-xsource/l/python-pyproject-hooks/python-pyproject-hooks.SlackBuild96
-rw-r--r--source/l/python-pyproject-hooks/slack-desc19
-rwxr-xr-xsource/l/python-pysol_cards/python-pysol_cards.SlackBuild9
-rwxr-xr-xsource/l/python-random2/python-random2.SlackBuild6
-rwxr-xr-xsource/l/python-requests/python-requests.SlackBuild2
-rw-r--r--source/l/python-requests/requests.url (renamed from source/l/python-requests/python-requests.url)0
-rwxr-xr-xsource/l/python-sane/python-sane.SlackBuild2
-rwxr-xr-xsource/l/python-setuptools_scm/python-setuptools_scm.SlackBuild84
-rw-r--r--source/l/python-setuptools_scm/setuptools-scm.url1
-rw-r--r--source/l/python-setuptools_scm/slack-desc19
-rwxr-xr-xsource/l/python-six/python-six.SlackBuild2
-rwxr-xr-xsource/l/python-smartypants/python-smartypants.SlackBuild93
-rw-r--r--source/l/python-smartypants/slack-desc19
-rw-r--r--source/l/python-smartypants/smartypants.url1
-rwxr-xr-xsource/l/python-snowballstemmer/python-snowballstemmer.SlackBuild82
-rw-r--r--source/l/python-snowballstemmer/slack-desc19
-rw-r--r--source/l/python-snowballstemmer/snowballstemmer.url1
-rwxr-xr-xsource/l/python-sphinx/python-sphinx.SlackBuild121
-rw-r--r--source/l/python-sphinx/slack-desc20
-rw-r--r--source/l/python-sphinx/sphinx.url8
-rwxr-xr-xsource/l/python-sphinx_rtd_theme/python-sphinx_rtd_theme.SlackBuild82
-rw-r--r--source/l/python-sphinx_rtd_theme/slack-desc19
-rw-r--r--source/l/python-sphinx_rtd_theme/sphinx_rtd_theme.url2
-rwxr-xr-xsource/l/python-tomli-w/python-tomli-w.SlackBuild95
-rw-r--r--source/l/python-tomli-w/slack-desc19
-rw-r--r--source/l/python-tomli-w/tomli-w.url1
-rwxr-xr-xsource/l/python-trove-classifiers/python-trove-classifiers.SlackBuild93
-rw-r--r--source/l/python-trove-classifiers/slack-desc19
-rw-r--r--source/l/python-trove-classifiers/trove-classifiers.url1
-rwxr-xr-xsource/l/python-typing_extensions/python-typing_extensions.SlackBuild84
-rw-r--r--source/l/python-typing_extensions/slack-desc19
-rw-r--r--source/l/python-typing_extensions/typing_extensions.url1
-rw-r--r--source/l/python-typogrify/jinja-3.1.patch45
-rwxr-xr-xsource/l/python-typogrify/python-typogrify.SlackBuild96
-rw-r--r--source/l/python-typogrify/slack-desc19
-rw-r--r--source/l/python-typogrify/typogrify.url1
-rwxr-xr-xsource/l/python-urllib3/python-urllib3.SlackBuild6
-rwxr-xr-xsource/l/python-webencodings/python-webencodings.SlackBuild91
-rw-r--r--source/l/python-webencodings/slack-desc19
-rw-r--r--source/l/python-webencodings/webencodings.url1
-rwxr-xr-xsource/l/python-wheel/python-wheel.SlackBuild96
-rw-r--r--source/l/python-wheel/slack-desc19
-rw-r--r--source/l/python-wheel/wheel.url1
-rwxr-xr-xsource/l/python-zipp/python-zipp.SlackBuild84
-rw-r--r--source/l/python-zipp/slack-desc19
-rw-r--r--source/l/python-zipp/zipp.url1
-rwxr-xr-xsource/l/python2-module-collection/python2-module-collection.SlackBuild496
-rw-r--r--source/l/python2-module-collection/slack-desc19
-rw-r--r--source/l/python2-pycairo/pycairo.url1
-rwxr-xr-xsource/l/python2-pycairo/python2-pycairo.SlackBuild81
-rw-r--r--source/l/python2-pycairo/slack-desc19
-rw-r--r--source/l/qca/qca.url1
-rw-r--r--source/l/qca/slack-desc19
-rwxr-xr-xsource/l/qrencode/qrencode.SlackBuild2
-rw-r--r--source/l/qt5-webkit/icu68.patch170
-rw-r--r--source/l/qt5-webkit/qt5-webkit-bison-3.7.patch (renamed from source/l/qt5-webkit/qt5-webkit.bison27.patch)4
-rw-r--r--source/l/qt5-webkit/qt5-webkit-python-3.9.patch27
-rwxr-xr-xsource/l/qt5-webkit/qt5-webkit.SlackBuild20
-rw-r--r--source/l/qt5-webkit/qt5-webkit.gcc13.diff10
-rw-r--r--source/l/qt5-webkit/webkit-offlineasm-warnings-ruby27.patch46
-rwxr-xr-xsource/l/qt5/fetch_sources.sh9
-rw-r--r--source/l/qt5/patches/qt5-webengine-ffmpeg5.patch150
-rw-r--r--source/l/qt5/patches/qt5-webengine-gcc12.patch13
-rw-r--r--source/l/qt5/patches/qtwebengine-everywhere-src-5.15.2-%231904652.patch141
-rw-r--r--source/l/qt5/profile.d/qt5.csh10
-rw-r--r--source/l/qt5/profile.d/qt5.sh9
-rwxr-xr-xsource/l/qt5/qt5.SlackBuild19
-rw-r--r--source/l/qt5/slack-desc2
-rw-r--r--source/l/qt6/doinst.sh9
-rwxr-xr-xsource/l/qt6/fetch_sources.sh62
-rw-r--r--source/l/qt6/patches/nodejs-allow-32bit.patch16
-rw-r--r--source/l/qt6/patches/qt5.mysql.h.diff11
-rw-r--r--source/l/qt6/patches/qt6-3d_gcc13.patch11
-rw-r--r--source/l/qt6/patches/qt6-webengine_32bit_compressing_files.patch25
-rw-r--r--source/l/qt6/profile.d/qt6.csh27
-rw-r--r--source/l/qt6/profile.d/qt6.sh26
-rwxr-xr-xsource/l/qt6/qt6.SlackBuild336
-rw-r--r--source/l/qt6/slack-desc (renamed from source/l/QtAV/slack-desc)24
-rwxr-xr-xsource/l/qtkeychain/qtkeychain.SlackBuild4
-rwxr-xr-xsource/l/quazip/quazip.SlackBuild5
-rw-r--r--source/l/readline/readline-8.1-patches/readline81-00192
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00142
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00248
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00343
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00465
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00550
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00699
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00748
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00877
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-00973
-rw-r--r--source/l/readline/readline-8.2-patches/readline82-01067
-rwxr-xr-xsource/l/rpcsvc-proto/rpcsvc-proto.SlackBuild4
-rwxr-xr-xsource/l/rttr/rttr.SlackBuild2
-rw-r--r--source/l/rubygem-asciidoctor/asciidoctor-2.0.15.gembin276480 -> 0 bytes
-rw-r--r--source/l/rubygem-asciidoctor/asciidoctor-2.0.20.gembin0 -> 281600 bytes
-rwxr-xr-xsource/l/rubygem-asciidoctor/rubygem-asciidoctor.SlackBuild2
-rwxr-xr-xsource/l/sbc/sbc.SlackBuild2
-rw-r--r--source/l/sdl/CVE-2021-33657.patch35
-rwxr-xr-xsource/l/sdl/sdl.SlackBuild5
-rw-r--r--source/l/serf/serf.SConstruct.python3.diff24
-rwxr-xr-xsource/l/serf/serf.SlackBuild7
-rw-r--r--source/l/serf/slack-desc2
-rwxr-xr-xsource/l/shared-mime-info/shared-mime-info.SlackBuild7
-rw-r--r--source/l/shared-mime-info/shared-mime-info.skip_tests.diff11
-rwxr-xr-xsource/l/sip/sip.SlackBuild93
-rw-r--r--source/l/sip/sip.url1
-rwxr-xr-xsource/l/slang/slang.SlackBuild2
-rw-r--r--source/l/slang/slang.url1
-rw-r--r--source/l/sof-firmware/slack-desc19
-rwxr-xr-xsource/l/sof-firmware/sof-firmware.SlackBuild100
-rw-r--r--source/l/sof-firmware/sof-firmware.url2
-rw-r--r--source/l/speech-dispatcher/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch102
-rwxr-xr-xsource/l/speech-dispatcher/speech-dispatcher.SlackBuild7
-rwxr-xr-xsource/l/speex/speex.SlackBuild22
-rw-r--r--source/l/speex/speex.url1
-rwxr-xr-xsource/l/speexdsp/speexdsp.SlackBuild21
-rw-r--r--source/l/speexdsp/speexdsp.url1
-rw-r--r--source/l/spirv-llvm-translator/SPIRV-LLVM-Translator.url1
-rwxr-xr-xsource/l/spirv-llvm-translator/fetch-SPIRV-LLVM-Translator.sh (renamed from source/l/QtAV/fetch-QtAV.sh)8
-rwxr-xr-xsource/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild10
-rw-r--r--source/l/spirv-llvm-translator/spirv-llvm-translator.url1
-rw-r--r--source/l/svgalib/svgalib-1.9.21-demos.patch431
-rw-r--r--source/l/svgalib/svgalib-1.9.25.no_asm.patch11
-rwxr-xr-xsource/l/svgalib/svgalib.SlackBuild10
-rwxr-xr-xsource/l/system-config-printer/system-config-printer.SlackBuild17
-rw-r--r--source/l/taglib-extras/slack-desc19
-rw-r--r--source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch20
-rw-r--r--source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch25
-rw-r--r--source/l/taglib-extras/taglib-extras-1.0.1-version.patch12
-rw-r--r--source/l/taglib/slack-desc2
-rw-r--r--source/l/taglib/taglib.url1
-rwxr-xr-xsource/l/talloc/talloc.SlackBuild4
-rwxr-xr-xsource/l/tdb/tdb.SlackBuild4
-rwxr-xr-xsource/l/tevent/tevent.SlackBuild4
-rwxr-xr-xsource/l/tidy-html5/tidy-html5.SlackBuild2
-rwxr-xr-xsource/l/unicode-ucd/fetch-sources.sh11
-rw-r--r--source/l/unicode-ucd/license.txt39
-rw-r--r--source/l/unicode-ucd/slack-desc19
-rwxr-xr-xsource/l/unicode-ucd/unicode-ucd.SlackBuild75
-rwxr-xr-xsource/l/utf8proc/utf8proc.SlackBuild4
-rwxr-xr-xsource/l/v4l-utils/v4l-utils.SlackBuild53
-rw-r--r--source/l/v4l-utils/v4l-utils.gconv.link.patch10
-rwxr-xr-xsource/l/vid.stab/vid.stab.SlackBuild4
-rw-r--r--source/l/vid.stab/vid.stab.url2
-rwxr-xr-xsource/l/vte/vte.SlackBuild5
-rw-r--r--source/l/vte/vte.url1
-rwxr-xr-xsource/l/wavpack/wavpack.SlackBuild7
-rw-r--r--source/l/wavpack/wavpack.url1
-rw-r--r--source/l/wireplumber/doinst.sh4
-rw-r--r--source/l/wireplumber/slack-desc19
-rwxr-xr-xsource/l/wireplumber/wireplumber.SlackBuild147
-rw-r--r--source/l/wireplumber/wireplumber.desktop.sample9
-rw-r--r--source/l/wireplumber/wireplumber.url1
-rwxr-xr-xsource/l/woff2/woff2.SlackBuild14
-rwxr-xr-xsource/l/xapian-core/xapian-core.SlackBuild2
-rwxr-xr-xsource/l/xxHash/xxHash.SlackBuild15
-rwxr-xr-xsource/l/zlib/zlib.SlackBuild2
-rwxr-xr-xsource/l/zstd/zstd.SlackBuild43
-rw-r--r--source/l/zug/slack-desc19
-rwxr-xr-xsource/l/zug/zug.SlackBuild125
-rw-r--r--source/l/zug/zug.url1
-rw-r--r--source/l/zxing-cpp/slack-desc19
-rwxr-xr-xsource/l/zxing-cpp/zxing-cpp.SlackBuild (renamed from source/l/qca/qca.SlackBuild)27
-rw-r--r--source/l/zxing-cpp/zxing-cpp.url1
788 files changed, 22444 insertions, 7116 deletions
diff --git a/source/l/FTBFSlog b/source/l/FTBFSlog
index aa234b8cd..a5dfbce42 100644
--- a/source/l/FTBFSlog
+++ b/source/l/FTBFSlog
@@ -1,127 +1,70 @@
-Tue Apr 6 18:11:11 UTC 2021
- speech-dispatcher: Fix build with glib-2.68.0. Thanks to nobodino and ponce.
+Fri Mar 22 18:04:34 UTC 2024
+ qt5-webkit: Patched to built with python3.
+--------------------------+
-Sun Apr 4 19:03:17 UTC 2021
- qt5-webkit: Patched to fix building with glib-2.68.0.
- Thanks to nobodino and ponce.
+Thu Mar 14 19:58:14 UTC 2024
+ quazip: -DQUAZIP_QT_MAJOR_VERSION=5
+--------------------------+
-Sun Mar 7 05:59:54 UTC 2021
- dconf-editor: upstream patch to fix building with vala-0.50.4.
- Thanks to nobodino.
+Thu Mar 14 19:22:30 UTC 2024
+ libieee1284: drop unmaintained python support, following other distros
+ libimobiledevice: build --without-cython
+ opencv: Build with -DOpenGL_GL_PREFERENCE=LEGACY
++--------------------------+
+Mon Mar 4 18:48:34 UTC 2024
+ giflib: fix build with NUMJOBS=-j1. Thanks to lucabon.
++--------------------------+
+Mon Mar 4 02:27:43 UTC 2024
+ OK, some of these are in the D series, but I'll drop this hint here.
+ Upon upgrading to a new Python version, this is the magic build order
+ to prop up the build system. Hi nobodino! :-)
+ python-flit-core
+ python-installer
+ python-packaging
+ python-build
+ python-setuptools
+ python-pip
+ python-pyproject-hooks
++--------------------------+
+Thu Jan 4 20:38:00 UTC 2024
+ libcap-ng: patch to fix build with swig-4.2.0. Thanks to lucabon.
++--------------------------+
+Tue Dec 12 19:23:30 UTC 2023
+ libsoup: patch to fix build with libxml2-2.12. Thanks to marav.
++--------------------------+
+Fri Oct 27 17:55:58 UTC 2023
+ ffmpeg: fix building HTML documentation with texinfo-7.1.
+ Thanks to rizitis.
++--------------------------+
+Sat Oct 14 19:43:09 UTC 2023
+ qt5: fix build with libxkbcommon-1.6.0. Thanks to lucabon.
++--------------------------+
+Tue Aug 15 02:20:40 UTC 2023
+ rinutils: use release tarball from github since tar.gz pull is missing needed
+ components. Thanks to lucabon.
++--------------------------+
+Fri Aug 4 04:22:19 UTC 2023
+ ffmpeg: applied patch to build with binutils-2.41. Thanks to marav.
++--------------------------+
+Thu May 4 03:21:41 UTC 2023
+ qt5-webkit: Fix build with gcc13. Thanks to nobodino.
++--------------------------+
+Tue May 2 19:04:09 UTC 2023
+ qt5: fix build with gcc13. Thanks to marav and nobodino.
++--------------------------+
+Tue May 2 18:47:43 UTC 2023
+ cryfs: patch for gcc13. Thanks to nobodino.
++--------------------------+
+Sun Feb 5 20:29:10 UTC 2023
+ qt5-webkit: Fix build with ruby-3.2.0. Thanks to nobodino and marav.
++--------------------------+
+Tue Nov 1 18:49:18 UTC 2022
+ glibc: fix build with make-4.4. Thanks to nobodino and marav.
++--------------------------+
+Sun Oct 9 20:08:52 UTC 2022
+ clucene: add #include <ctime>. Thanks to nobodino.
++--------------------------+
+Tue Apr 12 00:21:44 UTC 2022
+ babl: fix to build with meson 0.62.0. Thanks to nobodino.
++--------------------------+
+Mon Feb 7 20:57:55 UTC 2022
+ All packages tested and found to compile properly.
+--------------------------+
-Sat Jan 16 18:38:19 UTC 2021
- libnih: add -fcommon to CFLAGS.
- libunwind: add -fcommon to CFLAGS.
- libvisual-plugins: add -fcommon to CFLAGS.
- ocl-icd: add -fcommon to CFLAGS.
- Thanks to nobodino.
-+--------------------------+
-Fri Jan 15 20:07:01 UTC 2021
- pygtk: patched for recent pango. Thanks to nobodino.
-+--------------------------+
-Wed Mar 25 19:00:00 UTC 2020
- serf: fix for python3 based scons. Thanks to nobodino and ponce.
-+--------------------------+
-Tue Jan 14 18:38:45 UTC 2020
- libplist: added export PYTHONWARNINGS=ignore:::pkg_resources.py2_warn
- to avoid a fatal warning about Python 2.7 EOL. At least this new
- setuptools warning is likely to light a fire under various upstreams to
- expedite dropping Python 2.7... we simply can't "just do that" yet
- without breaking many Python-using things.
- Thanks to nobodino and ponce.
-+--------------------------+
-Mon Jan 13 00:10:54 UTC 2020
- dconf: also fix duplicate symbols for meson-0.53.0.
-+--------------------------+
-Tue Dec 3 18:47:08 UTC 2019
- dconf: also fix duplicate symbols for meson-0.52.1.
-+--------------------------+
-Thu Nov 21 22:04:10 UTC 2019
- dconf: fix duplicate symbols building with meson.
-+--------------------------+
-Tue Sep 10 17:55:47 UTC 2019
- gst-plugins-good: Fix type compatibility issue with glibc 2.30.
-+--------------------------+
-Mon Jun 3 17:08:10 UTC 2019
- glib: patch for gcc9. Thanks to Matteo Bernardini.
- Note that on 32-bit x86, xmms and normalize will not recompile until glib-1
- has been rebuilt with this patch.
-+--------------------------+
-Mon May 20 04:25:26 UTC 2019
- mozjs52: --disable-tests. Thanks to Matteo Bernardini.
-+--------------------------+
-Mon Apr 22 01:42:38 UTC 2019
- qt-gstreamer: Fix for gstreamer-1.16.x API change.
- Thanks to nobodino.
-+--------------------------+
-Mon Mar 4 23:07:37 UTC 2019
- qt: tested and found to compile with newly patched gcc.
- Thanks to nobodino.
-+--------------------------+
-Sun Feb 10 20:16:20 UTC 2019
- gtkspell: regenerate build to fix newer gtk-doc dropping gtkdoc-mktmpl.
- Thanks to nobodino.
-+--------------------------+
-Sat Feb 9 21:52:22 UTC 2019
- libglade: regenerate build to fix newer gtk-doc dropping gtkdoc-mktmpl.
- Thanks to nobodino.
-+--------------------------+
-Sat Jan 19 18:55:07 UTC 2019
- liblastfm: use a build directory to fix building with latest cmake.
- Thanks to nobodino.
-+--------------------------+
-Sat Jul 28 16:30:36 UTC 2018
- glibc: updated gcc version number to 8.2.0 so that --disable-werror is used.
- Thanks to ponce and nobodino.
-+--------------------------+
-Thu Jun 28 17:35:27 UTC 2018
- glibc: removed patch for libc.texinfo since the bug is fixed properly in
- the texinfo package now.
-+--------------------------+
-Wed Jun 27 19:03:51 UTC 2018
- glibc: don't request UTF-8 in libc.texinfo since it is built using
- LANGUAGE=C LC_ALL=C which are non-UTF-8. This leads to a hang if makeinfo
- is using perl-5.28.
- FIXME: look for a way to fix this properly in the texinfo package.
-+--------------------------+
-Tue Jun 26 09:10:33 UTC 2018
- db48: Fix symbol collision in atomic.h with gcc8
- glibc: fix FTBFS with gcc8 by adding --disable-werror
- libodfgen: fix FTBFS with gcc8 by adding --disable-werror
-+--------------------------+
-Mon Apr 9 17:01:51 UTC 2018
- db48: patch docs install out of Makefile, as it's causing a build failure
- and they would just be deleted before packaging anyway.
-+--------------------------+
-Thu Mar 29 17:26:28 UTC 2018
- apr-util: merged upstream patch to fix httpd build.
- Thanks to nobodino.
-+--------------------------+
-Sat Mar 24 17:44:29 UTC 2018
- gst-plugins-base: --disable-examples (they aren't installed anyway).
- Thanks to nobodino.
-+--------------------------+
-Sat Feb 24 20:44:54 UTC 2018
- Fix all packages that fail to build from source:
- gst-plugins-base0: fix build on 32-bit x86
-+--------------------------+
-Mon Feb 12 02:25:34 UTC 2018
- Fix all packages that fail to build from source:
- pulseaudio: patch to prevent collision with glibc-2.27's memfd_create()
-+--------------------------+
-Fri Feb 2 19:06:56 UTC 2018
- Fix all packages that fail to build from source:
- aspell: build with -fpermissive
- audiofile: build with -fpermissive
- glib: patches to fix libtool breakage
- gtk+: merge patches from Fedora
- gstreamer0: patched to build with bison-3.x.
- js185: build with -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks
- libcap: disable broken gperf support
- libmad: remove obsolete --force-mem optimization
- librevenge: --disable-werror
- libtheora: patch for libpng1.6 and new LaTeX.
- libvisio: kludge build to work around doxygen segfault
- svgalib: fix math redefinitions
- taglib-extras: patched to allow newer taglib version
- qt: Fix building with gcc-7.3.0 and against icu4c-59+
diff --git a/source/l/GConf/GConf.SlackBuild b/source/l/GConf/GConf.SlackBuild
index b8e48b829..a8f8962a0 100755
--- a/source/l/GConf/GConf.SlackBuild
+++ b/source/l/GConf/GConf.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=GConf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-7}
+BUILD=${BUILD:-8}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/eigen2/eigen2.SlackBuild b/source/l/Imath/Imath.SlackBuild
index 36f56b566..9e7657210 100755
--- a/source/l/eigen2/eigen2.SlackBuild
+++ b/source/l/Imath/Imath.SlackBuild
@@ -1,9 +1,9 @@
#!/bin/bash
-# Copyright 2007, 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2007, 2013, 2014 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008, 2009, 2010, 2014, 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
-
+#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
@@ -21,11 +21,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Modified by Robby Workman <rworkman@slackware.com>
+
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=eigen2
-VERSION=2.0.17
-BUILD=${BUILD:-4}
+PKGNAM=Imath
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -45,18 +47,20 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
TMP=${TMP:-/tmp}
-PKG=$TMP/package-eigen2
+PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX=""
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -64,10 +68,10 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
-cd $TMP || exit 1
-rm -rf eigen-eigen-*
-tar xvf $CWD/eigen2-$VERSION.tar.?z* || exit 1
-cd eigen-eigen-* || exit 1
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,29 +79,32 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-mkdir -p build
-cd build
- QTDIR=/usr/lib${LIBDIRSUFFIX}/qt \
- PATH=$QTDIR/bin:$PATH \
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
cmake \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- ..
- make || exit 1
- make install DESTDIR=$PKG || exit 1
-cd -
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mkdir -p $PKG/usr/doc/eigen2-$VERSION
-cp -a COPYING* $PKG/usr/doc/eigen2-$VERSION
+# If there's a CHANGES.md file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.md ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.md | head -n 1000 > $DOCSDIR/CHANGES.md
+ touch -r CHANGES.md $DOCSDIR/CHANGES.md
+fi
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n /tmp/eigen2-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/Imath/Imath.url b/source/l/Imath/Imath.url
new file mode 100644
index 000000000..8515491d2
--- /dev/null
+++ b/source/l/Imath/Imath.url
@@ -0,0 +1 @@
+https://github.com/AcademySoftwareFoundation/Imath
diff --git a/source/l/Imath/slack-desc b/source/l/Imath/slack-desc
new file mode 100644
index 000000000..e0153de92
--- /dev/null
+++ b/source/l/Imath/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+Imath: Imath (Math library for graphics)
+Imath:
+Imath: Imath is a basic, light-weight, and efficient C++ representation of 2D
+Imath: and 3D vectors and matrices and other simple but useful mathematical
+Imath: objects, functions, and data types common in computer graphics
+Imath: applications, including the half 16-bit floating-point type. Imath
+Imath: also includes optional python bindings for all types and functions,
+Imath: including optimized implementations of vector and matrix arrays.
+Imath:
+Imath: Homepage: https:://github.com/AcademySoftwareFoundation/Imath
+Imath:
diff --git a/source/l/LibRaw/LibRaw.SlackBuild b/source/l/LibRaw/LibRaw.SlackBuild
index a6356aaf6..cccdcacad 100755
--- a/source/l/LibRaw/LibRaw.SlackBuild
+++ b/source/l/LibRaw/LibRaw.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2015, 2016, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2013 Eric Hameleers, Eindhoven, NL
# All rights reserved.
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=LibRaw
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -93,8 +93,6 @@ find . \
# Don't use icecream:
PATH=$(echo $PATH | sed "s|/usr/libexec/icecc/bin||g" | tr -s : | sed "s/^://g" | sed "s/:$//g")
-autoreconf -vif
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -107,7 +105,6 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-static \
--enable-jasper \
--enable-lcms \
- --disable-examples \
--build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
diff --git a/source/l/M2Crypto/M2Crypto.SlackBuild b/source/l/M2Crypto/M2Crypto.SlackBuild
index 5b0cd553a..6119b1250 100755
--- a/source/l/M2Crypto/M2Crypto.SlackBuild
+++ b/source/l/M2Crypto/M2Crypto.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2009 Robby Workman, Northport, Alabama, USA
-# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=M2Crypto
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -61,7 +61,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /
diff --git a/source/l/Mako/Mako.SlackBuild b/source/l/Mako/Mako.SlackBuild
index 75e768196..95a42a341 100755
--- a/source/l/Mako/Mako.SlackBuild
+++ b/source/l/Mako/Mako.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=Mako
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -59,7 +59,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a AUTHORS CHANGES LICENSE PKG-INFO *.rst *.txt \
diff --git a/source/l/PyQt-builder/PyQt-builder.SlackBuild b/source/l/PyQt-builder/PyQt-builder.SlackBuild
new file mode 100755
index 000000000..ff82a960f
--- /dev/null
+++ b/source/l/PyQt-builder/PyQt-builder.SlackBuild
@@ -0,0 +1,109 @@
+#!/bin/sh
+
+# Copyright 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=PyQt-builder
+SRCNAM=pyqt_builder
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+else
+ SLKCFLAGS="-O2"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Remove Windows garbage:
+find $PKG . -name "*.exe" -exec rm -f "{}" \;
+find $PKG . -name "*.dll" -exec rm -f "{}" \;
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ LICENSE* COPYING* ChangeLog NEWS README TODO doc/* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+chown -R root:root $PKG/usr/doc
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz
diff --git a/source/l/PyQt-builder/PyQt-builder.url b/source/l/PyQt-builder/PyQt-builder.url
new file mode 100644
index 000000000..076330f31
--- /dev/null
+++ b/source/l/PyQt-builder/PyQt-builder.url
@@ -0,0 +1 @@
+https://pypi.org/project/PyQt-builder/
diff --git a/source/l/PyQt-builder/slack-desc b/source/l/PyQt-builder/slack-desc
new file mode 100644
index 000000000..6a7cb4114
--- /dev/null
+++ b/source/l/PyQt-builder/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+PyQt-builder: PyQt-builder (PEP 517 Compliant PyQt Builder)
+PyQt-builder:
+PyQt-builder: PyQt-builder is the PEP 517 compliant build system for PyQt and
+PyQt-builder: projects that extend PyQt. It extends the SIP build system and uses
+PyQt-builder: Qt's qmake to perform the actual compilation and installation of
+PyQt-builder: extension modules.
+PyQt-builder:
+PyQt-builder: Homepage: https://www.riverbankcomputing.com/software/pyqt-builder/
+PyQt-builder:
+PyQt-builder:
+PyQt-builder:
diff --git a/source/l/PyQt5/PyQt5.SlackBuild b/source/l/PyQt5/PyQt5.SlackBuild
index a698d754c..8e0094677 100755
--- a/source/l/PyQt5/PyQt5.SlackBuild
+++ b/source/l/PyQt5/PyQt5.SlackBuild
@@ -1,9 +1,7 @@
#!/bin/sh
-# Slackware build script for PyQt
-
# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011, 2015, 2016, 2017, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2016, 2017, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,13 +28,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=PyQt5
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -45,16 +43,22 @@ fi
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
elif [ "$ARCH" = "armv7hl" ]; then
SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
fi
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
@@ -70,7 +74,6 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-PYTHON2LIB=$( python2 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' 2>/dev/null )
PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' 2>/dev/null )
rm -rf $PKG
@@ -80,10 +83,6 @@ rm -rf ${PKGNAM}-$VERSION
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION || exit 1
-# Remove code that is unneeded if Qt is not bundled and crashes on python2
-# https://www.riverbankcomputing.com/pipermail/pyqt/2019-July/041896.html
-zcat $CWD/patches/pyqt5-python2-crash.patch.gz | patch -p1 --verbose || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -92,48 +91,29 @@ find . \
-exec chmod 644 {} \+
# This avoids compiling a version number into KDE's .la files:
-export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt5
export QT5DIR=/usr/lib${LIBDIRSUFFIX}/qt5
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
-## I see no reason at this point to include python2 support. We'll see later if
-## we can get away with that or not...
-## AND... it appears that we might not be able to, at least Plasma 5 does not
-## like to build that way, so we will add it back for now to fix using this
-## package with ktown. Better to merge Plasma in a working state (hopefully
-## soonish) and then worry about trying to get the last bits of python2 out
-## of the distribution, though honestly that may not occur until Slackware 15.1.
-python2 configure.py \
+sip-build \
--confirm-license \
- --verbose \
- --qsci-api \
- -q /usr/bin/qmake-qt5 \
+ --no-make \
+ --api-dir /usr/share/qt5/qsci/api/python \
+ --pep484-pyi \
|| exit 1
-make $NUMJOBS || make || exit 1
-# INSTALL_ROOT is needed for QtDesigner, the other Makefiles use DESTDIR
-make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
-
-mv $PKG/usr/bin/pyrcc5 $PKG/usr/bin/pyrcc5-py2
-mv $PKG/usr/bin/pyuic5 $PKG/usr/bin/pyuic5-py2
-mv $PKG/usr/bin/pylupdate5 $PKG/usr/bin/pylupdate5-py2
-rm -rf $PKG/$PYTHON2LIB/${PKGNAM}/uic/port_v3/
-make clean
-
-python3 configure.py \
- --confirm-license \
- --verbose \
- --qsci-api \
- -q /usr/bin/qmake-qt5 \
- || exit 1
+cd build || exit 1
+make $NUMJOBS || exit 1
+make INSTALL_ROOT=$PKG install || exit 1
+cd ..
-make $NUMJOBS || make || exit 1
-# INSTALL_ROOT is needed for QtDesigner, the other Makefiles use DESTDIR
-make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
+# Remove obsolete python2 uic modules:
+rm -rf $PKG/$PYTHON3LIB/PyQt5/uic/port_v2
-rm -rf $PKG/$PYTHON3LIB/${PKGNAM}/uic/port_v2/
+# Compile Python bytecode:
+python -m compileall -d / $PKG/usr/lib$LIBDIRSUFFIX
+python -O -m compileall -d / $PKG/usr/lib$LIBDIRSUFFIX
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -147,7 +127,7 @@ done
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- ChangeLog LICENSE* NEWS* README* \
+ ChangeLog LICENSE* NEWS* PKG-INFO* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/PyQt5/patches/pyqt5-python2-crash.patch b/source/l/PyQt5/patches/pyqt5-python2-crash.patch
deleted file mode 100644
index 14462f756..000000000
--- a/source/l/PyQt5/patches/pyqt5-python2-crash.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur PyQt5_gpl-5.12.3/qpy/QtCore/qpycore_post_init.cpp.in PyQt5_gpl-5.12.3b/qpy/QtCore/qpycore_post_init.cpp.in
---- PyQt5_gpl-5.12.3/qpy/QtCore/qpycore_post_init.cpp.in 2019-06-25 14:41:02.000000000 +0200
-+++ PyQt5_gpl-5.12.3b/qpy/QtCore/qpycore_post_init.cpp.in 2019-07-01 17:06:34.882644535 +0200
-@@ -151,8 +151,4 @@
- // initialised first (at least for Windows) and this is the only way to
- // guarantee things are done in the right order.
- PyQtSlotProxy::mutex = new QMutex(QMutex::Recursive);
--
-- // Load the embedded qt.conf file if there is a bundled copy of Qt.
-- if (!qpycore_qt_conf())
-- Py_FatalError("PyQt5.QtCore: Unable to embed qt.conf");
- }
-
diff --git a/source/l/PyQt5_sip/PyQt5_sip.SlackBuild b/source/l/PyQt5_sip/PyQt5_sip.SlackBuild
new file mode 100755
index 000000000..f10ff7f7e
--- /dev/null
+++ b/source/l/PyQt5_sip/PyQt5_sip.SlackBuild
@@ -0,0 +1,109 @@
+#!/bin/sh
+
+# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
+# Copyright 2008, 2009, 2010, 2011, 2017, 2018, 2019, 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Modified by Robby Workman <rworkman@slackware.com>
+# Modified by Eric Hameleers <alien@slackware.com>
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=PyQt5_sip
+SRCNAM=PyQt5_sip
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+else
+ SLKCFLAGS="-O2"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ LICENSE* COPYING* ChangeLog NEWS README TODO doc/* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+chown -R root:root $PKG/usr/doc
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz
diff --git a/source/l/PyQt5_sip/PyQt5_sip.url b/source/l/PyQt5_sip/PyQt5_sip.url
new file mode 100644
index 000000000..da1ef0fab
--- /dev/null
+++ b/source/l/PyQt5_sip/PyQt5_sip.url
@@ -0,0 +1 @@
+https://pypi.org/project/PyQt5-sip/
diff --git a/source/l/eigen2/slack-desc b/source/l/PyQt5_sip/slack-desc
index 4065a72d0..4ea22477f 100644
--- a/source/l/eigen2/slack-desc
+++ b/source/l/PyQt5_sip/slack-desc
@@ -5,15 +5,15 @@
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
- |-----handy-ruler----------------------------------------------------|
-eigen2: eigen2 (c++ math library)
-eigen2:
-eigen2: Eigen 2 is a lightweight C++ template library for vector and matrix
-eigen2: math, a.k.a. linear algebra.
-eigen2:
-eigen2: See the website: http://eigen.tuxfamily.org
-eigen2:
-eigen2:
-eigen2:
-eigen2:
-eigen2:
+ |-----handy-ruler------------------------------------------------------|
+PyQt5_sip: PyQt5_sip (PyQt5 sip Extension Module)
+PyQt5_sip:
+PyQt5_sip: The sip extension module provides support for the PyQt5 package.
+PyQt5_sip:
+PyQt5_sip: Homepage: https://pypi.org/project/PyQt5-sip/
+PyQt5_sip:
+PyQt5_sip:
+PyQt5_sip:
+PyQt5_sip:
+PyQt5_sip:
+PyQt5_sip:
diff --git a/source/l/QScintilla/QScintilla.SlackBuild b/source/l/QScintilla/QScintilla.SlackBuild
index e6ed9decf..f3a8c20c8 100755
--- a/source/l/QScintilla/QScintilla.SlackBuild
+++ b/source/l/QScintilla/QScintilla.SlackBuild
@@ -1,9 +1,7 @@
#!/bin/sh
-# Slackware build script for QScintilla
-
# Copyright 2008 Robby Workman <rworkman@slackware.com> Northport, AL, USA
-# Copyright 2008, 2009, 2010, 2011, 2012, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018, 2019, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=QScintilla
-VERSION=${VERSION:-$(echo ${PKGNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+SRCNAM=QScintilla_src
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -40,7 +39,7 @@ PKG=$TMP/package-$PKGNAM
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -75,12 +74,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf ${PKGNAM}-$VERSION
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
-cd ${PKGNAM}-$VERSION || exit 1
-
-# Fix compilation:
-zcat $CWD/QScintilla_qsciscintillabase_qurl.diff.gz | patch -p1 --verbose || exit 1
+rm -rf ${SRCNAM}-$VERSION
+tar xvf $CWD/${SRCNAM}-$VERSION.tar.?z || exit 1
+cd ${SRCNAM}-$VERSION || exit 1
chown -R root:root .
find . \
@@ -89,70 +85,59 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Prevent Qsci from failing to generate the bindings.
+# If there's a QScintilla package already installed that provides the needed
+# library, then this isn't strictly needed. It doesn't hurt, though.
+export LD_LIBRARY_PATH=$TMP/${SRCNAM}-$VERSION/src
+
# Define QMAKEFEATURES to that we can re-use already built libs
# without spamming the harddisk:
-export QMAKEFEATURES=${PWD}/Qt4Qt5/features/
-
-# Conditional build of Qt5 support:
-if qtpaths-qt5 --qt-version 1>/dev/null 2>/dev/null ; then
- echo "-- Compiling Qt5 support --"
- # QT5 support first:
- cd Qt4Qt5
- echo "-- >> Qt4Qt5 --"
- qmake-qt5 \
- -o Makefile \
- QMAKE_CFLAGS+="$SLKCFLAGS" \
- QMAKE_CXXFLAGS+="$SLKCFLAGS -std=c++11" \
- qscintilla.pro || exit 1
- make $NUMJOBS || exit 1
- make install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
- cd -
-
- cd designer-Qt4Qt5
- echo "-- >> designer-Qt4Qt5 --"
- qmake-qt5 \
- -o Makefile \
- INCLUDEPATH+=../Qt4Qt5 QMAKE_LIBDIR+=../Qt4Qt5 \
- QMAKE_CFLAGS+="$SLKCFLAGS" \
- QMAKE_CXXFLAGS+="$SLKCFLAGS -std=c++11" \
- designer.pro || exit 1
- make $NUMJOBS || exit 1
- make install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
- cd -
-
- cd Python
- echo "-- >> Python --"
- python3 configure.py \
- --verbose \
- --qmake /usr/bin/qmake-qt5 \
- --pyqt=PyQt5 \
- -n ../Qt4Qt5/ -o ../Qt4Qt5/ -c \
- || exit 1
- make || exit 1
- make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
-
- make clean || exit 1
- ## No Qt5 python2 support!
- #python2 configure.py \
- # --verbose \
- # --qmake /usr/bin/qmake-qt5 \
- # --pyqt=PyQt5 \
- # -n ../Qt4Qt5/ -o ../Qt4Qt5/ -c \
- # || exit 1
- #make || exit 1
- #make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
- cd -
-fi
+export QMAKEFEATURES=${PWD}/src/features/
+cd src
+qmake-qt5
+make $NUMJOBS || exit 1
+
+cd ../designer
+qmake-qt5 INCLUDEPATH+=../src QMAKE_LIBDIR+=../src
+make $NUMJOBS || exit 1
+
+cd ../Python
+mv pyproject-qt5.toml pyproject.toml
+sip-build \
+ --no-make \
+ --qsci-features-dir ../src/features \
+ --qsci-include-dir ../src \
+ --qsci-library-dir ../src \
+ --api-dir /usr/share/qt5/qsci/api/python || exit 1
+cd build
+make $NUMJOBS || exit 1
+
+# Install:
+cd ../../src
+make DESTDIR=$PKG INSTALL_ROOT=$PKG install || exit 1
+cd ../designer
+make DESTDIR=$PKG INSTALL_ROOT=$PKG install || exit 1
+cd ../Python/build
+make DESTDIR=$PKG INSTALL_ROOT=$PKG install || exit 1
+cd ../..
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- LICENSE NEWS README* \
- doc/html-Qt4Qt5 doc/Scintilla \
+ LICENSE* NEWS* README* \
+ doc/README.doc doc/Scintilla doc/html \
$PKG/usr/doc/$PKGNAM-$VERSION
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/QScintilla/QScintilla_qsciscintillabase_qurl.diff b/source/l/QScintilla/QScintilla_qsciscintillabase_qurl.diff
deleted file mode 100644
index 9720a4ba1..000000000
--- a/source/l/QScintilla/QScintilla_qsciscintillabase_qurl.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- QScintilla_gpl-2.11.1/Qt4Qt5/qsciscintillabase.cpp.orig
-+++ QScintilla_gpl-2.11.1/Qt4Qt5/qsciscintillabase.cpp
-@@ -37,6 +37,7 @@
- #include <QScrollBar>
- #include <QStyle>
- #include <QTextCodec>
-+#include <QUrl>
-
- #include "SciAccessibility.h"
- #include "ScintillaQt.h"
-
diff --git a/source/l/QtAV/QtAV.url b/source/l/QtAV/QtAV.url
deleted file mode 100644
index 8927fd5b6..000000000
--- a/source/l/QtAV/QtAV.url
+++ /dev/null
@@ -1 +0,0 @@
-https://github.com/wang-bin/QtAV
diff --git a/source/l/QtAV/doinst.sh b/source/l/QtAV/doinst.sh
deleted file mode 100644
index 5fb28930d..000000000
--- a/source/l/QtAV/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
diff --git a/source/l/SDL2/SDL2-2.0.9-khrplatform.patch b/source/l/SDL2/SDL2-2.0.9-khrplatform.patch
deleted file mode 100644
index b6c39278b..000000000
--- a/source/l/SDL2/SDL2-2.0.9-khrplatform.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -up SDL2-2.0.9/include/SDL_opengl_glext.h.khrplatform SDL2-2.0.9/include/SDL_opengl_glext.h
---- SDL2-2.0.9/include/SDL_opengl_glext.h.khrplatform 2019-02-15 20:22:39.173773779 -0500
-+++ SDL2-2.0.9/include/SDL_opengl_glext.h 2019-02-15 20:22:58.176399330 -0500
-@@ -469,8 +469,9 @@ GLAPI void APIENTRY glBlendEquation (GLe
- typedef long GLsizeiptr;
- typedef long GLintptr;
- #else
--typedef ptrdiff_t GLsizeiptr;
--typedef ptrdiff_t GLintptr;
-+#include <KHR/khrplatform.h>
-+typedef khronos_intptr_t GLintptr;
-+typedef khronos_ssize_t GLsizeiptr;
- #endif
- #define GL_BUFFER_SIZE 0x8764
- #define GL_BUFFER_USAGE 0x8765
diff --git a/source/l/SDL2/SDL2.SlackBuild b/source/l/SDL2/SDL2.SlackBuild
index 984c58803..342626290 100755
--- a/source/l/SDL2/SDL2.SlackBuild
+++ b/source/l/SDL2/SDL2.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2019, 2020, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -85,31 +85,21 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Fix video-opengles1 build failure:
-zcat $CWD/SDL2-2.0.9-khrplatform.patch.gz | patch -p1 --verbose || exit 1
-
-# Configure:
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't package the static libraries:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- for file in *.so ; do
- rm -f $(basename $file .so).a
- done
-)
-
-# Don't package .la files:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DSDL_STATIC=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
# Strip binaries:
( cd $PKG
@@ -135,9 +125,12 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* LICENSE* NEWS* README* TODO* WhatsNew* \
$PKG/usr/doc/${PKGNAM}-$VERSION
+# Drop this duplicate that's also in a directory we don't use:
+rm -r $PKG/usr/share/licenses
+
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
if [ -r ChangeLog ]; then
diff --git a/source/l/SDL2/SDL2.url b/source/l/SDL2/SDL2.url
new file mode 100644
index 000000000..1cfab442e
--- /dev/null
+++ b/source/l/SDL2/SDL2.url
@@ -0,0 +1,2 @@
+https://github.com/libsdl-org/SDL
+https://github.com/libsdl-org/SDL/releases/download/release-2.30.2/SDL2-2.30.2.tar.gz
diff --git a/source/l/SDL2_gfx/SDL2_gfx.SlackBuild b/source/l/SDL2_gfx/SDL2_gfx.SlackBuild
index aeffba6b9..fd19bc4c5 100755
--- a/source/l/SDL2_gfx/SDL2_gfx.SlackBuild
+++ b/source/l/SDL2_gfx/SDL2_gfx.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/SDL2_image/SDL2_image.SlackBuild b/source/l/SDL2_image/SDL2_image.SlackBuild
index 9e605ae46..3df413b49 100755
--- a/source/l/SDL2_image/SDL2_image.SlackBuild
+++ b/source/l/SDL2_image/SDL2_image.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=SDL2_image
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -131,7 +131,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* LICENSE* NEWS* README* TODO* WhatsNew* \
$PKG/usr/doc/${PKGNAM}-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/SDL2_image/SDL2_image.url b/source/l/SDL2_image/SDL2_image.url
new file mode 100644
index 000000000..6477404b1
--- /dev/null
+++ b/source/l/SDL2_image/SDL2_image.url
@@ -0,0 +1,2 @@
+https://github.com/libsdl-org/SDL_image
+https://github.com/libsdl-org/SDL_image/releases/download/release-2.8.2/SDL2_image-2.8.2.tar.gz
diff --git a/source/l/SDL2_image/slack-desc b/source/l/SDL2_image/slack-desc
index 191162629..732a8efce 100644
--- a/source/l/SDL2_image/slack-desc
+++ b/source/l/SDL2_image/slack-desc
@@ -12,7 +12,7 @@ SDL2_image: This is a simple library to load images of various formats as SDL
SDL2_image: surfaces. This library supports BMP, PNM (PPM/PGM/PBM), XPM, LBM,
SDL2_image: PCX, GIF, JPEG, PNG, TGA, and TIFF formats.
SDL2_image:
-SDL2_image: Homepage: http://www.libsdl.org/projects/SDL_image/
+SDL2_image: Homepage: https://github.com/libsdl-org/SDL_image
SDL2_image:
SDL2_image:
SDL2_image:
diff --git a/source/l/SDL2_mixer/SDL2_mixer.SlackBuild b/source/l/SDL2_mixer/SDL2_mixer.SlackBuild
index e3860ba56..2efeaa463 100755
--- a/source/l/SDL2_mixer/SDL2_mixer.SlackBuild
+++ b/source/l/SDL2_mixer/SDL2_mixer.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=SDL2_mixer
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -128,7 +128,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* LICENSE* NEWS* README* TODO* WhatsNew* \
$PKG/usr/doc/${PKGNAM}-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
@@ -144,4 +144,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/SDL2_mixer/SDL2_mixer.url b/source/l/SDL2_mixer/SDL2_mixer.url
new file mode 100644
index 000000000..331fb811c
--- /dev/null
+++ b/source/l/SDL2_mixer/SDL2_mixer.url
@@ -0,0 +1,2 @@
+https://github.com/libsdl-org/SDL_mixer
+https://github.com/libsdl-org/SDL_mixer/releases/download/release-2.8.0/SDL2_mixer-2.8.0.tar.gz
diff --git a/source/l/SDL2_mixer/slack-desc b/source/l/SDL2_mixer/slack-desc
index 267f6fe77..1e16f616e 100644
--- a/source/l/SDL2_mixer/slack-desc
+++ b/source/l/SDL2_mixer/slack-desc
@@ -12,7 +12,7 @@ SDL2_mixer: SDL_mixer is a simple multi-channel audio mixer library. It supports
SDL2_mixer: any number of simultaneously playing channels of 16 bit stereo audio,
SDL2_mixer: plus a single channel of music.
SDL2_mixer:
-SDL2_mixer: Homepage: http://www.libsdl.org/projects/SDL_mixer/
+SDL2_mixer: Homepage: https://github.com/libsdl-org/SDL_mixer
SDL2_mixer:
SDL2_mixer:
SDL2_mixer:
diff --git a/source/l/SDL2_net/SDL2_net.SlackBuild b/source/l/SDL2_net/SDL2_net.SlackBuild
index 96a6236bb..53544c2dc 100755
--- a/source/l/SDL2_net/SDL2_net.SlackBuild
+++ b/source/l/SDL2_net/SDL2_net.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +23,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=SDL2_net
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -75,7 +75,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -143,4 +143,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/SDL2_net/SDL2_net.url b/source/l/SDL2_net/SDL2_net.url
new file mode 100644
index 000000000..85f56f308
--- /dev/null
+++ b/source/l/SDL2_net/SDL2_net.url
@@ -0,0 +1 @@
+https://github.com/libsdl-org/SDL_net
diff --git a/source/l/SDL2_net/slack-desc b/source/l/SDL2_net/slack-desc
index 5a31ec314..0541f5c96 100644
--- a/source/l/SDL2_net/slack-desc
+++ b/source/l/SDL2_net/slack-desc
@@ -10,7 +10,7 @@ SDL2_net: SDL2_net (SDL2 network library)
SDL2_net:
SDL2_net: This is an example portable network library for use with SDL.
SDL2_net:
-SDL2_net: Homepage: http://www.libsdl.org/projects/SDL_net/
+SDL2_net: Homepage: https://github.com/libsdl-org/SDL_net
SDL2_net:
SDL2_net:
SDL2_net:
diff --git a/source/l/SDL2_ttf/SDL2_ttf.SlackBuild b/source/l/SDL2_ttf/SDL2_ttf.SlackBuild
index cef837727..b912791fb 100755
--- a/source/l/SDL2_ttf/SDL2_ttf.SlackBuild
+++ b/source/l/SDL2_ttf/SDL2_ttf.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=SDL2_ttf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -94,6 +94,8 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--disable-static \
--disable-dependency-tracking \
+ --enable-harfbuzz-builtin=no \
+ --enable-freetype-builtin=no \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
@@ -127,7 +129,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* LICENSE* \
$PKG/usr/doc/${PKGNAM}-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/SDL2_ttf/SDL2_ttf.url b/source/l/SDL2_ttf/SDL2_ttf.url
new file mode 100644
index 000000000..7eec9c56c
--- /dev/null
+++ b/source/l/SDL2_ttf/SDL2_ttf.url
@@ -0,0 +1,2 @@
+https://github.com/libsdl-org/SDL_ttf
+https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.22.0/SDL2_ttf-2.22.0.tar.gz
diff --git a/source/l/SDL2_ttf/slack-desc b/source/l/SDL2_ttf/slack-desc
index 6231947ed..330384c91 100644
--- a/source/l/SDL2_ttf/slack-desc
+++ b/source/l/SDL2_ttf/slack-desc
@@ -11,7 +11,7 @@ SDL2_ttf:
SDL2_ttf: This library allows you to use TrueType fonts to render text in SDL2
SDL2_ttf: applications.
SDL2_ttf:
-SDL2_ttf: Homepage: http://www.libsdl.org/projects/SDL_ttf/
+SDL2_ttf: Homepage: https://github.com/libsdl-org/SDL_ttf
SDL2_ttf:
SDL2_ttf:
SDL2_ttf:
diff --git a/source/l/a52dec/a52dec.SlackBuild b/source/l/a52dec/a52dec.SlackBuild
index 78822c6c1..eea35d85c 100755
--- a/source/l/a52dec/a52dec.SlackBuild
+++ b/source/l/a52dec/a52dec.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for a52dec
#
# Copyright 2007 Niklas "Nille" Åkerström
-# Copyright 2014, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2016, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -27,8 +27,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=a52dec
-VERSION=${VERSION:-$(echo a52dec*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
-BUILD=${BUILD:-5}
+VERSION=${VERSION:-$(echo a52dec*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d- | rev | tr -d v)}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -69,8 +69,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION || exit 1
+tar xvf $CWD/$PKGNAM-v$VERSION.tar.?z* || exit 1
+cd $PKGNAM-v$VERSION || exit 1
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -78,11 +78,22 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
--enable-shared \
--disable-static \
--build=$ARCH-slackware-linux || exit 1
@@ -116,7 +127,7 @@ fi
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* ChangeLog HISTORY INSTALL NEWS README* TODO \
+ AUTHORS* COPYING* ChangeLog* HISTORY* INSTALL* NEWS* README* TODO* \
$PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/a52dec/a52dec.url b/source/l/a52dec/a52dec.url
new file mode 100644
index 000000000..b237e1986
--- /dev/null
+++ b/source/l/a52dec/a52dec.url
@@ -0,0 +1 @@
+https://git.adelielinux.org/community/a52dec/
diff --git a/source/l/a52dec/slack-desc b/source/l/a52dec/slack-desc
index 998e1ec58..fd6b8bc1d 100644
--- a/source/l/a52dec/slack-desc
+++ b/source/l/a52dec/slack-desc
@@ -8,5 +8,5 @@ a52dec: library for decoding ATSC A/52 streams. The A/52 standard is used
a52dec: in a variety of applications, including digital television and DVD.
a52dec: It is also known as AC-3.
a52dec:
-a52dec: Homepage: http://liba52.sourceforge.net/
+a52dec: Homepage: https://git.adelielinux.org/community/a52dec/
a52dec:
diff --git a/source/l/abseil-cpp/abseil-cpp.SlackBuild b/source/l/abseil-cpp/abseil-cpp.SlackBuild
new file mode 100755
index 000000000..6523fff5b
--- /dev/null
+++ b/source/l/abseil-cpp/abseil-cpp.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=abseil-cpp
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS -DNDEBUG" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_CXX_STANDARD=17 \
+ -DBUILD_SHARED_LIBS=ON \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ ABSEIL_ISSUE_TEMPLATE* AUTHORS* CONTRIBUTING* FAQ* LICENSE* README* UPGRADES* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/abseil-cpp/abseil-cpp.url b/source/l/abseil-cpp/abseil-cpp.url
new file mode 100644
index 000000000..c2f224ddc
--- /dev/null
+++ b/source/l/abseil-cpp/abseil-cpp.url
@@ -0,0 +1 @@
+https://github.com/abseil/abseil-cpp
diff --git a/source/l/abseil-cpp/slack-desc b/source/l/abseil-cpp/slack-desc
new file mode 100644
index 000000000..6f42822ec
--- /dev/null
+++ b/source/l/abseil-cpp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+abseil-cpp: abseil-cpp (Abseil C++ library)
+abseil-cpp:
+abseil-cpp: The repository contains the Abseil C++ library code. Abseil is an
+abseil-cpp: open-source collection of C++ code designed to augment the C++
+abseil-cpp: standard library. The Abseil library code is collected from Google's
+abseil-cpp: own C++ code base, has been extensively tested and used in production,
+abseil-cpp: and is the same code we depend on in our daily coding lives.
+abseil-cpp:
+abseil-cpp: Homepage: https://abseil.io
+abseil-cpp:
+abseil-cpp:
diff --git a/source/l/accountsservice/7e9058c1edda71cd9aa457717ed8fed50cd49666.patch b/source/l/accountsservice/7e9058c1edda71cd9aa457717ed8fed50cd49666.patch
new file mode 100644
index 000000000..3cbbd4e01
--- /dev/null
+++ b/source/l/accountsservice/7e9058c1edda71cd9aa457717ed8fed50cd49666.patch
@@ -0,0 +1,32 @@
+From 7e9058c1edda71cd9aa457717ed8fed50cd49666 Mon Sep 17 00:00:00 2001
+From: nater1983 <naterussell83@gmail.com>
+Date: Sun, 25 Feb 2024 20:42:49 +0000
+Subject: [PATCH] Add option to disable Unit Tests
+
+- /meson.build
+- /meson_options.txt
+---
+meson.build | 4 +++-
+meson_options.txt | 1 +
+2 files changed, 4 insertions(+), 1 deletion(-)
+
+--- ./meson.build.orig 2023-03-27 14:27:39.000000000 -0500
++++ ./meson.build 2024-02-27 12:42:47.098937158 -0600
+@@ -232,7 +232,9 @@
+ subdir('doc/libaccountsservice')
+ endif
+
+-subdir('tests')
++if get_option('tests')
++ subdir('tests')
++endif
+
+ configure_file(
+ output: 'config.h',
+--- ./meson_options.txt.orig 2023-03-27 14:27:39.000000000 -0500
++++ ./meson_options.txt 2024-02-27 12:43:12.139935773 -0600
+@@ -13,3 +13,4 @@
+
+ option('docbook', type: 'boolean', value: false, description: 'build documentation (requires xmlto)')
+ option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
++option('tests', type: 'boolean', value: true, description : 'Build unit tests')
diff --git a/source/l/accountsservice/accountsservice.SlackBuild b/source/l/accountsservice/accountsservice.SlackBuild
index c608a4b07..46b7a2a95 100755
--- a/source/l/accountsservice/accountsservice.SlackBuild
+++ b/source/l/accountsservice/accountsservice.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2017, 2020 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=accountsservice
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -86,6 +86,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Build without unit tests:
+cat $CWD/7e9058c1edda71cd9aa457717ed8fed50cd49666.patch | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
@@ -103,13 +106,12 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
- -D admin_group=wheel \
- -D docbook=false \
- -D gtk_doc=true \
- -D elogind=true \
- -D systemd=false \
- -D systemdsystemunitdir=no \
- -D user_heuristics=false \
+ -Dadmin_group=wheel \
+ -Ddocbook=false \
+ -Dtests=false \
+ -Dgtk_doc=true \
+ -Delogind=true \
+ -Dsystemdsystemunitdir=no \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild b/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
index e07c1817a..27350f954 100755
--- a/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
+++ b/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2013, 2018 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2013, 2018, 2023 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -70,15 +70,27 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
# Add some extra icons that are missing for Xfce.
# Copy from the main tree and back to make sure that we
@@ -96,6 +108,8 @@ make install DESTDIR=$PKG || exit 1
rm -r tmpicons
)
+find $PKG -name .icon-theme.cache -exec rm "{}" \;
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS COPYING* NEWS README* TODO \
diff --git a/source/l/alsa-lib/alsa-lib.url b/source/l/alsa-lib/alsa-lib.url
new file mode 100644
index 000000000..1d4f43aeb
--- /dev/null
+++ b/source/l/alsa-lib/alsa-lib.url
@@ -0,0 +1 @@
+ftp://ftp.alsa-project.org/pub
diff --git a/source/l/alsa-plugins/alsa-plugins.SlackBuild b/source/l/alsa-plugins/alsa-plugins.SlackBuild
index 96b3bb654..dc83faeba 100755
--- a/source/l/alsa-plugins/alsa-plugins.SlackBuild
+++ b/source/l/alsa-plugins/alsa-plugins.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=alsa-plugins
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/aom/aom.SlackBuild b/source/l/aom/aom.SlackBuild
new file mode 100755
index 000000000..075486ed9
--- /dev/null
+++ b/source/l/aom/aom.SlackBuild
@@ -0,0 +1,132 @@
+#!/bin/bash
+
+# Copyright 2018-2023 Andrew Strong, Blue Mountains, Australia
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=aom
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DENABLE_NASM=1 \
+ -DENABLE_DOCS=0 \
+ -DBUILD_SHARED_LIBS=1 \
+ -DENABLE_TESTS=0 \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# No static libraries:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* CHANGELOG* LICENSE* PATENTS* README* \
+ doc/AlgorithmDescription* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGELOG file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGELOG ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGELOG | head -n 1000 > $DOCSDIR/CHANGELOG
+ touch -r CHANGELOG $DOCSDIR/CHANGELOG
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/aom/fetch-aom.sh b/source/l/aom/fetch-aom.sh
new file mode 100755
index 000000000..580c7e55f
--- /dev/null
+++ b/source/l/aom/fetch-aom.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+PKGNAM=aom
+
+# Pull a stable branch + patches
+BRANCH=${1:-3.9.0}
+
+# Clear download area:
+rm -rf ${PKGNAM}
+
+# Clone repository:
+git clone https://aomedia.googlesource.com/aom
+
+# checkout $BRANCH:
+( cd ${PKGNAM}
+ git checkout v${BRANCH} || exit 1
+)
+
+HEADISAT="$( cd ${PKGNAM} && git log -1 --format=%h )"
+DATE="$( cd ${PKGNAM} && git log -1 --format=%cd --date=format:%Y%m%d )"
+LONGDATE="$( cd ${PKGNAM} && git log -1 --format=%cd --date=format:%c )"
+# Cleanup. We're not packing up the whole git repo.
+( cd ${PKGNAM} && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+mv ${PKGNAM} ${PKGNAM}-${BRANCH}
+tar cf ${PKGNAM}-${BRANCH}.tar ${PKGNAM}-${BRANCH}
+plzip -9 -f ${PKGNAM}-${BRANCH}.tar
+rm -rf ${PKGNAM}-${BRANCH}
+touch -d "$LONGDATE" ${PKGNAM}-${BRANCH}.tar.lz
+echo
+echo "${PKGNAM} branch $BRANCH with HEAD at $HEADISAT packaged as ${PKGNAM}-${BRANCH}.tar.lz"
+echo
diff --git a/source/l/aom/slack-desc b/source/l/aom/slack-desc
new file mode 100644
index 000000000..b87dcaf2a
--- /dev/null
+++ b/source/l/aom/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+aom: aom (AV1 video codec library)
+aom:
+aom: AOMedia Video 1 (AV1) is an open and royalty free video encoding
+aom: format optimized for the Internet and the successor of VP9. aom is the
+aom: reference encoder and decoder implementation published by the Alliance
+aom: for Open Media.
+aom:
+aom: Homepage: https://aomedia.org/av1/
+aom:
+aom:
+aom:
diff --git a/source/l/apr-util/apr-util-mariadb-upstream.patch b/source/l/apr-util/apr-util-mariadb-upstream.patch
deleted file mode 100644
index dd1c5a3aa..000000000
--- a/source/l/apr-util/apr-util-mariadb-upstream.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-Upstream patch for building with mariadb:
-Taken from https://bz.apache.org/bugzilla/show_bug.cgi?id=61517
-BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1494093
-
---- a/build/dbd.m4 2017-05-03 19:18:52.000000000 -0400
-+++ a/build/dbd.m4 2017-09-13 16:58:07.369546391 -0400
-@@ -163,10 +163,15 @@
- old_cppflags="$CPPFLAGS"
- old_ldflags="$LDFLAGS"
-
-+ my_library="mysqlclient"
-+
- AC_ARG_WITH([mysql], APR_HELP_STRING([--with-mysql=DIR], [enable MySQL DBD driver]),
- [
- if test "$withval" = "yes"; then
- AC_PATH_PROG([MYSQL_CONFIG],[mysql_config])
-+ if test "x$MYSQL_CONFIG" = "x"; then
-+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config])
-+ fi
- if test "x$MYSQL_CONFIG" != 'x'; then
- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-@@ -174,32 +179,40 @@
-
- APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
- APR_ADDTO(LIBS, [$mysql_LIBS])
-+
-+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
-+ my_library="mariadb"
-+ fi
- fi
-
-- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <my_global.h>])
-- if test "$apu_have_mysql" = "0"; then
-- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <mysql/my_global.h>])
-+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ if test "$apr_have_mysql" = "0"; then
-+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
- fi
-- if test "$apu_have_mysql" != "0" && test "x$MYSQL_CONFIG" != 'x'; then
-- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
-+ if test "$apr_have_mysql" = "1"; then
-+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
-+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
-+ fi
-+ if test "$apu_have_mysql" = "1" && test "x$MYSQL_CONFIG" != 'x'; then
-+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
- fi
- elif test "$withval" = "no"; then
- :
- else
- AC_PATH_PROG([MYSQL_CONFIG],[mysql_config],,[$withval/bin])
-+ if test "x$MYSQL_CONFIG" = "x"; then
-+ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
-+ fi
- if test "x$MYSQL_CONFIG" != 'x'; then
-- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
-- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-- mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
-+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
-+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
-+ mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
-+ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
-+ my_library="mariadb"
-+ fi
- else
-- mysql_CPPFLAGS="-I$withval/include"
-- mysql_LDFLAGS="-L$withval/lib "
-+ mysql_CPPFLAGS="-I$withval/include"
-+ mysql_LDFLAGS="-L$withval/lib "
- fi
-
- APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
-@@ -207,18 +220,15 @@
- APR_ADDTO(LIBS, [$mysql_LIBS])
-
- AC_MSG_NOTICE(checking for mysql in $withval)
-- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <my_global.h>])
--
-- if test "$apu_have_mysql" != "1"; then
-- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
-- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
-- [apu_have_mysql=0; break],
-- [#include <mysql/my_global.h>])
-+ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ if test "$apr_have_mysql" = "0"; then
-+ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
-+ fi
-+ if test "$apr_have_mysql" = "1"; then
-+ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
-+ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
- fi
-- if test "$apu_have_mysql" != "0"; then
-+ if test "$apu_have_mysql" = "1"; then
- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
- fi
- fi
-@@ -229,7 +239,7 @@
- dnl Since we have already done the AC_CHECK_LIB tests, if we have it,
- dnl we know the library is there.
- if test "$apu_have_mysql" = "1"; then
-- APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -lmysqlclient $mysql_LIBS])
-+ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
- fi
- AC_SUBST(LDADD_dbd_mysql)
-
---- a/dbd/apr_dbd_mysql.c 2017-05-03 19:18:52.000000000 -0400
-+++ a/dbd/apr_dbd_mysql.c 2017-09-13 19:15:20.894368809 -0400
-@@ -1262,7 +1262,9 @@
-
- static void dbd_mysql_init(apr_pool_t *pool)
- {
-+#if MYSQL_VERSION_ID < 100000
- my_init();
-+#endif
- mysql_thread_init();
-
- /* FIXME: this is a guess; find out what it really does */
-
diff --git a/source/l/apr-util/apr-util.SlackBuild b/source/l/apr-util/apr-util.SlackBuild
index 393ff0c80..f41d51986 100755
--- a/source/l/apr-util/apr-util.SlackBuild
+++ b/source/l/apr-util/apr-util.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=apr-util
VERSION=${VERSION:-$(echo apr-util-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-10}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -71,9 +71,6 @@ rm -rf apr-util-$VERSION
tar xvf $CWD/apr-util-$VERSION.tar.bz2 || exit 1
cd apr-util-$VERSION || exit 1
-# Fix issues using recent mariadb:
-zcat $CWD/apr-util-mariadb-upstream.patch.gz | patch -p1 --verbose || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -127,4 +124,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
# Build the package:
cd $PKG
/sbin/makepkg -l y -c n $TMP/apr-util-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/apr-util/apr-util.url b/source/l/apr-util/apr-util.url
index 6a5299df2..9f0e7e332 100644
--- a/source/l/apr-util/apr-util.url
+++ b/source/l/apr-util/apr-util.url
@@ -1,2 +1,2 @@
-http://www.apache.org/dist/apr/apr-util-1.6.1.tar.bz2
-http://www.apache.org/dist/apr/apr-util-1.6.1.tar.bz2.asc
+http://www.apache.org/dist/apr/apr-util-1.6.3.tar.bz2
+http://www.apache.org/dist/apr/apr-util-1.6.3.tar.bz2.asc
diff --git a/source/l/apr/apr.SlackBuild b/source/l/apr/apr.SlackBuild
index 22b645946..3a88f6850 100755
--- a/source/l/apr/apr.SlackBuild
+++ b/source/l/apr/apr.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=apr
VERSION=${VERSION:-$(echo apr-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -119,4 +119,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
# Build the package:
cd $PKG
/sbin/makepkg -l y -c n $TMP/apr-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/apr/apr.url b/source/l/apr/apr.url
index 6b19f30a1..dea6b4dc2 100644
--- a/source/l/apr/apr.url
+++ b/source/l/apr/apr.url
@@ -1,2 +1,2 @@
-http://www.apache.org/dist/apr/apr-1.7.0.tar.bz2
-http://www.apache.org/dist/apr/apr-1.7.0.tar.bz2.asc
+http://www.apache.org/dist/apr/apr-1.7.4.tar.bz2
+http://www.apache.org/dist/apr/apr-1.7.4.tar.bz2.asc
diff --git a/source/l/argon2/argon2.SlackBuild b/source/l/argon2/argon2.SlackBuild
index d01b8d265..0e6fa6faf 100755
--- a/source/l/argon2/argon2.SlackBuild
+++ b/source/l/argon2/argon2.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-5}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/aspell/aspell.SlackBuild b/source/l/aspell/aspell.SlackBuild
index f78b8dfe6..829a920f1 100755
--- a/source/l/aspell/aspell.SlackBuild
+++ b/source/l/aspell/aspell.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=aspell
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/at-spi2-atk/doinst.sh b/source/l/at-spi2-atk/doinst.sh
deleted file mode 100644
index 56b9e419c..000000000
--- a/source/l/at-spi2-atk/doinst.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-if [ -e usr/share/glib-2.0/schemas ]; then
- if [ -x /usr/bin/glib-compile-schemas ]; then
- /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
- fi
-fi
-
diff --git a/source/l/atk/slack-desc b/source/l/atk/slack-desc
deleted file mode 100644
index 2f08aef3f..000000000
--- a/source/l/atk/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
-# leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-atk: atk (accessibility functions library)
-atk:
-atk: atk is a library of accessibility functions that is used by the
-atk: GTK+-2 toolkit.
-atk:
-atk:
-atk:
-atk:
-atk:
-atk:
-atk:
diff --git a/source/l/gamin/gamin.SlackBuild b/source/l/atkmm2/atkmm2.SlackBuild
index f6666d8da..77b2b8fb1 100755
--- a/source/l/gamin/gamin.SlackBuild
+++ b/source/l/atkmm2/atkmm2.SlackBuild
@@ -1,7 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2009 Robby Workman, Northport, AL, USA
-# Copyright 2007, 2008, 2009, 2010, 2011, 2018 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018, 2020, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,17 +22,16 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=gamin
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-9}
+PKGNAM=atkmm2
+SRCNAM=atkmm
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
-# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
@@ -47,11 +45,14 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
@@ -61,67 +62,48 @@ else
LIBDIRSUFFIX=""
fi
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
rm -rf $PKG
mkdir -p $TMP $PKG
-
-cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION || exit 1
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-
-# https://bugzilla.redhat.com/show_bug.cgi?id=786170
-zcat $CWD/fix-double-lock-in-inotify-helper-c.patch.gz | patch -p1 --verbose || exit 1
-
-# Fix a build error with newer toolchain
-zcat $CWD/no_g_const_return.patch.gz | patch -p1 --verbose || exit 1
-
-# Poll files on NFSv4:
-zcat $CWD/0001-Poll-files-on-nfs4.patch.gz | patch -p1 --verbose || exit 1
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-shared=yes \
- --enable-static=no \
- --enable-inotify \
- --disable-dnotify \
- --enable-docs \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-
-mkdir -p $PKG/etc/gamin
-zcat $CWD/gaminrc.gz > $PKG/etc/gamin/gaminrc.new
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/html
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* Copyright NEWS README* TODO doc/*.txt \
+ AUTHORS COPYING* NEWS README* \
$PKG/usr/doc/$PKGNAM-$VERSION
-cp -a \
- doc/*.html doc/*.gif \
- $PKG/usr/doc/$PKGNAM-$VERSION/html
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
@@ -133,8 +115,6 @@ fi
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/at-spi2-atk/slack-desc b/source/l/atkmm2/slack-desc
index a2dd0e960..d8a13ff09 100644
--- a/source/l/at-spi2-atk/slack-desc
+++ b/source/l/atkmm2/slack-desc
@@ -5,15 +5,15 @@
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
- |-----handy-ruler------------------------------------------------------|
-at-spi2-atk: at-spi2-atk (AT-SPI2 bridge to ATK)
-at-spi2-atk:
-at-spi2-atk: The At-Spi2 Atk package contains a library that bridges ATK to the
-at-spi2-atk: At-Spi2 D-Bus service.
-at-spi2-atk:
-at-spi2-atk:
-at-spi2-atk:
-at-spi2-atk:
-at-spi2-atk:
-at-spi2-atk:
-at-spi2-atk:
+ |-----handy-ruler------------------------------------------------------|
+atkmm2: atkmm2 (C++ bindings for ATK, ABI 2.36)
+atkmm2:
+atkmm2: atkmm2 is the C++ binding for the ATK library.
+atkmm2: This module is part of the GNOME C++ bindings effort.
+atkmm2:
+atkmm2: Homepage: http://www.gtkmm.org/
+atkmm2:
+atkmm2:
+atkmm2:
+atkmm2:
+atkmm2:
diff --git a/source/l/audiofile/audiofile.SlackBuild b/source/l/audiofile/audiofile.SlackBuild
index b221847db..ef2912dc6 100755
--- a/source/l/audiofile/audiofile.SlackBuild
+++ b/source/l/audiofile/audiofile.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=audiofile
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/avahi/avahi.SlackBuild b/source/l/avahi/avahi.SlackBuild
new file mode 100755
index 000000000..d0405efc1
--- /dev/null
+++ b/source/l/avahi/avahi.SlackBuild
@@ -0,0 +1,185 @@
+#!/bin/bash
+
+# Copyright 2008-2012 David Somero (dsomero@hotmail.com) Athens, TN, USA
+# Copyright 2008, 2009, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=avahi
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Adjust for our netconfig, thanks to rworkman:
+cat $CWD/patches/fixup_avahi-dnsconfd.action.patch | patch -p1 --verbose || exit 1
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+export PYTHON=python3
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --with-systemdsystemunitdir=no \
+ --enable-tests \
+ --disable-static \
+ --disable-mono \
+ --disable-monodoc \
+ --disable-autoipd \
+ --disable-libsystemd \
+ --enable-compat-libdns_sd \
+ --enable-python-dbus \
+ --enable-glib \
+ --enable-dbus \
+ --enable-python \
+ --enable-gtk \
+ --enable-gtk3 \
+ --enable-qt5 \
+ --disable-qt4 \
+ --disable-qt3 \
+ --enable-core-docs \
+ --with-dbus-sys=/usr/share/dbus-1/system.d \
+ --with-avahi-user=avahi \
+ --with-avahi-group=avahi \
+ --with-avahi-priv-access-group=netdev \
+ --with-distro=slackware \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# 20220414 bkw: if this dir is empty, it doesn't need to be included
+# in the package.
+rmdir $PKG/run &> /dev/null || true
+
+# Install these files as .new:
+mv $PKG/etc/rc.d/rc.avahidaemon $PKG/etc/rc.d/rc.avahidaemon.new
+mv $PKG/etc/rc.d/rc.avahidnsconfd $PKG/etc/rc.d/rc.avahidnsconfd.new
+mv $PKG/etc/avahi/avahi-daemon.conf $PKG/etc/avahi/avahi-daemon.conf.new
+
+# Fix python3 shebangs:
+sed -i "s|#!python3|#!/usr/bin/python3|g" $PKG/usr/bin/avahi-{discover,bookmarks}
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ docs/* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Useless (?)
+#rm -f $PKG/usr/doc/${PKGNAM}-$VERSION/INSTALL
+
+# Prevent overwrite:
+mv $PKG/usr/doc/${PKGNAM}-$VERSION/README $PKG/usr/doc/${PKGNAM}-$VERSION/README.too
+
+cp -a \
+ LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/avahi/avahi.url b/source/l/avahi/avahi.url
new file mode 100644
index 000000000..5e829acca
--- /dev/null
+++ b/source/l/avahi/avahi.url
@@ -0,0 +1,2 @@
+https://github.com/avahi/avahi
+https://github.com/avahi/avahi/releases/download/v0.8/avahi-0.8.tar.gz
diff --git a/source/l/avahi/doinst.sh b/source/l/avahi/doinst.sh
new file mode 100644
index 000000000..77c716128
--- /dev/null
+++ b/source/l/avahi/doinst.sh
@@ -0,0 +1,37 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+preserve_perms() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ -e $OLD ]; then
+ cp -a $OLD ${NEW}.incoming
+ cat $NEW > ${NEW}.incoming
+ mv ${NEW}.incoming $NEW
+ fi
+ config $NEW
+}
+
+preserve_perms etc/rc.d/rc.avahidaemon.new
+preserve_perms etc/rc.d/rc.avahidnsconfd.new
+preserve_perms etc/avahi/avahi-daemon.conf.new
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+# Reload messagebus service:
+if [ -x /etc/rc.d/rc.messagebus ]; then
+ sh /etc/rc.d/rc.messagebus reload 1> /dev/null 2> /dev/null
+fi
+
diff --git a/source/l/avahi/fetch-avahi.sh b/source/l/avahi/fetch-avahi.sh
new file mode 100755
index 000000000..17879756d
--- /dev/null
+++ b/source/l/avahi/fetch-avahi.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+
+# Copyright 2019, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Pull a stable branch + patches
+BRANCH=${1:-master}
+
+# Clear download area:
+rm -rf avahi
+
+# Clone repository:
+git clone https://github.com/avahi/avahi
+
+# checkout $BRANCH:
+( cd avahi
+ git checkout $BRANCH || exit 1
+)
+
+HEADISAT="$( cd avahi && git log -1 --format=%h )"
+DATE="$( cd avahi && git log -1 --format=%cd --date=format:%Y%m%d )"
+LONGDATE="$( cd avahi && git log -1 --format=%cd --date=format:%c )"
+# Cleanup. We're not packing up the whole git repo.
+( cd avahi && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+mv avahi avahi-${DATE}_${HEADISAT}
+tar cf avahi-${DATE}_${HEADISAT}.tar avahi-${DATE}_${HEADISAT}
+plzip -9 -f avahi-${DATE}_${HEADISAT}.tar
+rm -rf avahi-${DATE}_${HEADISAT}
+touch -d "$LONGDATE" avahi-${DATE}_${HEADISAT}.tar.lz
+echo
+echo "avahi branch $BRANCH with HEAD at $HEADISAT packaged as avahi-${DATE}_${HEADISAT}.tar.lz"
+echo
diff --git a/source/l/avahi/fixup_avahi-dnsconfd.action.patch b/source/l/avahi/fixup_avahi-dnsconfd.action.patch
new file mode 100644
index 000000000..88f9b5f80
--- /dev/null
+++ b/source/l/avahi/fixup_avahi-dnsconfd.action.patch
@@ -0,0 +1,69 @@
+avahi-dnsconfd.action looks for /sbin/netconfig, and if found, attempts to
+use it to modify /etc/resolv.conf. While *our* netconfig and SuSE's
+netconfig started out the same, they're quite different these days, and
+thus the result is /etc/HOSTNAME getting set to some nonsense such as:
+ INTERFACE='eth0'.DNSSERVERS='192.168.13.1'
+This was quite some fun tracking down, by the way... :-) --rworkman
+
+
+diff -Nur avahi-0.6.30.orig/avahi-dnsconfd/avahi-dnsconfd.action avahi-0.6.30/avahi-dnsconfd/avahi-dnsconfd.action
+--- avahi-0.6.30.orig/avahi-dnsconfd/avahi-dnsconfd.action 2010-06-28 22:30:34.000000000 -0500
++++ avahi-0.6.30/avahi-dnsconfd/avahi-dnsconfd.action 2012-01-21 16:18:24.337986754 -0600
+@@ -33,48 +33,16 @@
+ # $AVAHI_INTERFACE_DNS_SERVERS A whitespace seperated list of DNS servers on $AVAHI_INTERFACE
+ # $AVAHI_DNS_SERVERS The complete list of all DNS servers found on all interfaces
+
+-if [ -x /sbin/netconfig ]; then
+- # SUSE method on 11.1+
+- if [ -n "$AVAHI_INTERFACE_DNS_SERVERS" ]; then
+- /sbin/netconfig modify -s avahi -i "$AVAHI_INTERFACE" <<-EOF
+- INTERFACE='$AVAHI_INTERFACE'
+- DNSSERVERS='$AVAHI_INTERFACE_DNS_SERVERS'
+- EOF
+- else
+- /sbin/netconfig remove -s avahi -i "$AVAHI_INTERFACE"
+- fi
+-elif [ -x /sbin/modify_resolvconf ] ; then
+- # method for SUSE <= 11.0
+- if [ -n "$AVAHI_DNS_SERVERS" ]; then
+- /sbin/modify_resolvconf modify -s avahi -t - -p avahi-dnsconfd -n "$AVAHI_DNS_SERVERS" <<-EOF
+- if you don't like avahi to update your Nameservers
+- disable the avahi-dnsconfd init script
+- EOF
+- else
+- /sbin/modify_resolvconf restore -s avahi
+- fi
+-elif [ -x /sbin/resolvconf ] ; then
+
+- # We have Debian's resolvconf tool
+-
+- if [ "x$AVAHI_INTERFACE_DNS_SERVERS" = "x" ] ; then
+- /sbin/resolvconf -d "$AVAHI_INTERFACE.avahi"
+- else
+- for n in $AVAHI_INTERFACE_DNS_SERVERS ; do
+- echo "nameserver $n"
+- done | /sbin/resolvconf -a "$AVAHI_INTERFACE.avahi"
+- fi
+-else
+-
+- # No resolvconf tool available
+-
+- if [ "x$AVAHI_DNS_SERVERS" = "x" ] ; then
++if [ "x$AVAHI_DNS_SERVERS" = "x" ] ; then
+ test -f /etc/resolv.conf.avahi && mv /etc/resolv.conf.avahi /etc/resolv.conf
+- else
++else
+ test -f /etc/resolv.conf.avahi || mv /etc/resolv.conf /etc/resolv.conf.avahi
+
+- for n in $AVAHI_DNS_SERVERS ; do
+- echo "nameserver $n"
+- done > /etc/resolv.conf
+- fi
++ grep -v ^nameserver /etc/resolv.conf.avahi > /etc/resolv.conf
++
++ for n in $AVAHI_DNS_SERVERS ; do
++ echo "nameserver $n"
++ done >> /etc/resolv.conf
+ fi
++
+
diff --git a/source/l/avahi/patches/fixup_avahi-dnsconfd.action.patch b/source/l/avahi/patches/fixup_avahi-dnsconfd.action.patch
new file mode 100644
index 000000000..88f9b5f80
--- /dev/null
+++ b/source/l/avahi/patches/fixup_avahi-dnsconfd.action.patch
@@ -0,0 +1,69 @@
+avahi-dnsconfd.action looks for /sbin/netconfig, and if found, attempts to
+use it to modify /etc/resolv.conf. While *our* netconfig and SuSE's
+netconfig started out the same, they're quite different these days, and
+thus the result is /etc/HOSTNAME getting set to some nonsense such as:
+ INTERFACE='eth0'.DNSSERVERS='192.168.13.1'
+This was quite some fun tracking down, by the way... :-) --rworkman
+
+
+diff -Nur avahi-0.6.30.orig/avahi-dnsconfd/avahi-dnsconfd.action avahi-0.6.30/avahi-dnsconfd/avahi-dnsconfd.action
+--- avahi-0.6.30.orig/avahi-dnsconfd/avahi-dnsconfd.action 2010-06-28 22:30:34.000000000 -0500
++++ avahi-0.6.30/avahi-dnsconfd/avahi-dnsconfd.action 2012-01-21 16:18:24.337986754 -0600
+@@ -33,48 +33,16 @@
+ # $AVAHI_INTERFACE_DNS_SERVERS A whitespace seperated list of DNS servers on $AVAHI_INTERFACE
+ # $AVAHI_DNS_SERVERS The complete list of all DNS servers found on all interfaces
+
+-if [ -x /sbin/netconfig ]; then
+- # SUSE method on 11.1+
+- if [ -n "$AVAHI_INTERFACE_DNS_SERVERS" ]; then
+- /sbin/netconfig modify -s avahi -i "$AVAHI_INTERFACE" <<-EOF
+- INTERFACE='$AVAHI_INTERFACE'
+- DNSSERVERS='$AVAHI_INTERFACE_DNS_SERVERS'
+- EOF
+- else
+- /sbin/netconfig remove -s avahi -i "$AVAHI_INTERFACE"
+- fi
+-elif [ -x /sbin/modify_resolvconf ] ; then
+- # method for SUSE <= 11.0
+- if [ -n "$AVAHI_DNS_SERVERS" ]; then
+- /sbin/modify_resolvconf modify -s avahi -t - -p avahi-dnsconfd -n "$AVAHI_DNS_SERVERS" <<-EOF
+- if you don't like avahi to update your Nameservers
+- disable the avahi-dnsconfd init script
+- EOF
+- else
+- /sbin/modify_resolvconf restore -s avahi
+- fi
+-elif [ -x /sbin/resolvconf ] ; then
+
+- # We have Debian's resolvconf tool
+-
+- if [ "x$AVAHI_INTERFACE_DNS_SERVERS" = "x" ] ; then
+- /sbin/resolvconf -d "$AVAHI_INTERFACE.avahi"
+- else
+- for n in $AVAHI_INTERFACE_DNS_SERVERS ; do
+- echo "nameserver $n"
+- done | /sbin/resolvconf -a "$AVAHI_INTERFACE.avahi"
+- fi
+-else
+-
+- # No resolvconf tool available
+-
+- if [ "x$AVAHI_DNS_SERVERS" = "x" ] ; then
++if [ "x$AVAHI_DNS_SERVERS" = "x" ] ; then
+ test -f /etc/resolv.conf.avahi && mv /etc/resolv.conf.avahi /etc/resolv.conf
+- else
++else
+ test -f /etc/resolv.conf.avahi || mv /etc/resolv.conf /etc/resolv.conf.avahi
+
+- for n in $AVAHI_DNS_SERVERS ; do
+- echo "nameserver $n"
+- done > /etc/resolv.conf
+- fi
++ grep -v ^nameserver /etc/resolv.conf.avahi > /etc/resolv.conf
++
++ for n in $AVAHI_DNS_SERVERS ; do
++ echo "nameserver $n"
++ done >> /etc/resolv.conf
+ fi
++
+
diff --git a/source/l/avahi/slack-desc b/source/l/avahi/slack-desc
new file mode 100644
index 000000000..7e2b027fe
--- /dev/null
+++ b/source/l/avahi/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+avahi: avahi (service discovery aka Zeroconf)
+avahi:
+avahi: Avahi is a system which facilitates service discovery on a local
+avahi: network via the mDNS/DNS-SD protocol suite. This enables you to plug
+avahi: your laptop or computer into a network and instantly be able to view
+avahi: other people who you can chat with, find printers to print to, or find
+avahi: files being shared.
+avahi:
+avahi: Homepage: https://avahi.org
+avahi:
+avahi:
diff --git a/source/l/babl/babl.SlackBuild b/source/l/babl/babl.SlackBuild
index e8902f38c..cfd97ce72 100755
--- a/source/l/babl/babl.SlackBuild
+++ b/source/l/babl/babl.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018, 2019, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2008, 2009 Robby Workman, Northport, Alabama, USA
# All rights reserved.
#
@@ -96,6 +96,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dgi-docgen=disabled \
$XTRA_OPTIONS \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
diff --git a/source/l/boost/boost.SlackBuild b/source/l/boost/boost.SlackBuild
index 41e0ccbb8..a438ab808 100755
--- a/source/l/boost/boost.SlackBuild
+++ b/source/l/boost/boost.SlackBuild
@@ -2,7 +2,7 @@
# Copyright 2007, 2008, 2012 Eric Hameleers, Eindhoven, NL
# Copyright 2007-2008, 2013, 2014, 2017 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2013, 2014, 2015, 2017, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2013, 2014, 2015, 2017, 2018, 2020, 2021, 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -72,8 +72,7 @@ else
LIBDIRSUFFIX=""
fi
-PYTHON_VERSION=$(python -c 'import sys; print(sys.version[:3])')
-PYTHON3_VERSION=$(python3 -c 'import sys; print(sys.version[:3])')
+PYTHON3_VERSION=$(python3 -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')
TMP=${TMP:-/tmp}
PKG=$TMP/package-boost
@@ -82,7 +81,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf boost_$VERSION
-tar xvf $CWD/boost_$VERSION.tar.?z || exit 1
+echo "Extracting $CWD/boost_$VERSION.tar.?z..."
+tar xf $CWD/boost_$VERSION.tar.?z || exit 1
cd boost_$VERSION || exit 1
chown -R root:root .
@@ -92,64 +92,19 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# First build bjam, the boost build system:
-./bootstrap.sh \
- --with-toolset=gcc \
- --with-icu \
- --with-python=/usr/bin/python2 || exit 1
-
-# # Next, we build boost using bjam
-./b2 \
- $NUMJOBS \
- --layout=system \
- --build-dir=build-python2 \
- --prefix=/usr \
- --libdir=/usr/lib$LIBDIRSUFFIX \
- --build-type=minimal \
- toolset=gcc \
- variant=release \
- debug-symbols=off \
- link=shared \
- threading=multi \
- runtime-link=shared \
- python=$PYTHON_VERSION \
- cflags="$SLKCFLAGS" \
- cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
- stage || exit 1
-
-# # And then install boost..
-./b2 \
- $NUMJOBS \
- --layout=system \
- --build-dir=build-python2 \
- --prefix=$PKG/usr \
- --libdir=$PKG/usr/lib$LIBDIRSUFFIX \
- --build-type=minimal \
- toolset=gcc \
- variant=release \
- debug-symbols=off \
- link=shared \
- threading=multi \
- runtime-link=shared \
- python=$PYTHON_VERSION \
- cflags="$SLKCFLAGS" \
- cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
- install || exit 1
-
-# one more run to build libboost_python3..
-sed -e '/using python/ s@;@: /usr/include/python${PYTHON_VERSION/3*/${PYTHON_VERSION}} ;@' \
- -i bootstrap.sh
+# Fix hardcorded python:
+zcat $CWD/boost.bootstrap.python3.diff.gz | patch -p1 --verbose || exit 1
+# First build bjam, the boost build system:
./bootstrap.sh \
--with-toolset=gcc \
- --with-icu \
- --with-python=/usr/bin/python3 \
- --with-libraries=python || exit 1
+ --with-python=/usr/bin/python3 || exit 1
+# Next, we build boost using bjam:
./b2 \
$NUMJOBS \
--layout=system \
- --build-dir=build-python3 \
+ --build-dir=tmp-build-directory \
--prefix=/usr \
--libdir=/usr/lib$LIBDIRSUFFIX \
--build-type=minimal \
@@ -164,10 +119,11 @@ sed -e '/using python/ s@;@: /usr/include/python${PYTHON_VERSION/3*/${PYTHON_VER
cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
stage || exit 1
+# And then install boost:
./b2 \
$NUMJOBS \
--layout=system \
- --build-dir=build-python3 \
+ --build-dir=tmp-build-directory \
--prefix=$PKG/usr \
--libdir=$PKG/usr/lib$LIBDIRSUFFIX \
--build-type=minimal \
@@ -195,4 +151,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n /tmp/boost-$PKG_VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/boost/boost.bootstrap.python3.diff b/source/l/boost/boost.bootstrap.python3.diff
new file mode 100644
index 000000000..8f6103860
--- /dev/null
+++ b/source/l/boost/boost.bootstrap.python3.diff
@@ -0,0 +1,11 @@
+--- ./bootstrap.sh.orig 2023-12-06 15:02:59.000000000 -0600
++++ ./bootstrap.sh 2024-03-22 12:11:17.510203315 -0500
+@@ -17,7 +17,7 @@
+ LIBDIR=
+ INCLUDEDIR=
+ LIBS=""
+-PYTHON=python
++PYTHON=python3
+ PYTHON_VERSION=
+ PYTHON_ROOT=
+ ICU_ROOT=
diff --git a/source/l/brotli/brotli.SlackBuild b/source/l/brotli/brotli.SlackBuild
index c6748fa96..e9543ac71 100755
--- a/source/l/brotli/brotli.SlackBuild
+++ b/source/l/brotli/brotli.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2019 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=brotli
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -86,9 +86,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Remove -R that is not accepted by the C compiler:
-zcat $CWD/brotli.no.unrecognized.R.diff.gz | patch -p1 --verbose || exit 1
-
# Configure, build, and install:
mkdir cmake-build
cd cmake-build
@@ -110,7 +107,7 @@ cd cmake-build
cd ..
# Only add python3 support. We're not adding any Python 2 junk now...
-python3 setup.py install --root=$PKG
+python3 setup.py install --root=$PKG || exit 1
# No static libraries:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
diff --git a/source/l/brotli/brotli.no.unrecognized.R.diff b/source/l/brotli/brotli.no.unrecognized.R.diff
deleted file mode 100644
index 3d2835a68..000000000
--- a/source/l/brotli/brotli.no.unrecognized.R.diff
+++ /dev/null
@@ -1,32 +0,0 @@
-diff -u -r --new-file brotli-1.0.9.orig/scripts/libbrotlicommon.pc.in brotli-1.0.9/scripts/libbrotlicommon.pc.in
---- brotli-1.0.9.orig/scripts/libbrotlicommon.pc.in 2020-08-27 09:12:55.000000000 -0500
-+++ brotli-1.0.9/scripts/libbrotlicommon.pc.in 2020-11-26 14:45:56.933004919 -0600
-@@ -7,5 +7,5 @@
- URL: https://github.com/google/brotli
- Description: Brotli common dictionary library
- Version: @PACKAGE_VERSION@
--Libs: -L${libdir} -R${libdir} -lbrotlicommon
-+Libs: -L${libdir} -lbrotlicommon
- Cflags: -I${includedir}
-diff -u -r --new-file brotli-1.0.9.orig/scripts/libbrotlidec.pc.in brotli-1.0.9/scripts/libbrotlidec.pc.in
---- brotli-1.0.9.orig/scripts/libbrotlidec.pc.in 2020-08-27 09:12:55.000000000 -0500
-+++ brotli-1.0.9/scripts/libbrotlidec.pc.in 2020-11-26 14:45:56.933004919 -0600
-@@ -7,6 +7,6 @@
- URL: https://github.com/google/brotli
- Description: Brotli decoder library
- Version: @PACKAGE_VERSION@
--Libs: -L${libdir} -R${libdir} -lbrotlidec
-+Libs: -L${libdir} -lbrotlidec
- Requires.private: libbrotlicommon >= 1.0.2
- Cflags: -I${includedir}
-diff -u -r --new-file brotli-1.0.9.orig/scripts/libbrotlienc.pc.in brotli-1.0.9/scripts/libbrotlienc.pc.in
---- brotli-1.0.9.orig/scripts/libbrotlienc.pc.in 2020-08-27 09:12:55.000000000 -0500
-+++ brotli-1.0.9/scripts/libbrotlienc.pc.in 2020-11-26 14:45:56.933004919 -0600
-@@ -7,6 +7,6 @@
- URL: https://github.com/google/brotli
- Description: Brotli encoder library
- Version: @PACKAGE_VERSION@
--Libs: -L${libdir} -R${libdir} -lbrotlienc
-+Libs: -L${libdir} -lbrotlienc
- Requires.private: libbrotlicommon >= 1.0.2
- Cflags: -I${includedir}
diff --git a/source/l/cairo/cairo.SlackBuild b/source/l/cairo/cairo.SlackBuild
index f07751eae..4dc3f3c25 100755
--- a/source/l/cairo/cairo.SlackBuild
+++ b/source/l/cairo/cairo.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2015, 2016, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=cairo
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -76,57 +76,38 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-CFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
--mandir=/usr/man \
--sysconfdir=/etc \
- --disable-gtk-doc \
- --disable-quartz \
- --disable-static \
- --disable-win32 \
- --disable-trace \
- --enable-xlib \
- --enable-xcb \
- --enable-ps \
- --enable-pdf \
- --enable-svg \
- --enable-tee \
- --enable-ft \
- --enable-gl \
- --enable-gobject \
- --enable-xml \
- --build=$ARCH-slackware-linux || exit 1
-
-# None of these are 'stable' yet...
-# --enable-qt \
-# --enable-drm \
-
-# Not sure if these two are needed / useful yet; --enable-xcb is now default
-# --enable-xcb-shm \
-# ^^ may cause GTK+3 instability
-# --enable-xlib-xcb \
-# ^^ this one caused a GIMP slowdown
-
-# Skipping this, because it causes a dependency on the specific
-# version of binutils installed at compile time:
-# --enable-trace
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dgtk_doc=false \
+ -Dsymbol-lookup=disabled \
+ -Dtests=disabled \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS BIBLIOGRAPHY BUGS CODING_STYLE COPYING* HACKING NEWS PORTING_GUIDE README RELEASING \
+ AUTHORS* BIBLIOGRAPHY* BUGS* ChangeLog CODING_STYLE* COPYING* HACKING* NEWS* PORTING_GUIDE* README* RELEASING* \
$PKG/usr/doc/$PKGNAM-$VERSION
-( cd $PKG/usr/doc/$PKGNAM-$VERSION ; ln -sf /usr/share/gtk-doc/html/cairo html )
# We do not need the entire NEWS file.
if [ -r NEWS ]; then
@@ -135,9 +116,16 @@ if [ -r NEWS ]; then
touch -r NEWS $DOCSDIR/NEWS
fi
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/cairo/cairo.url b/source/l/cairo/cairo.url
new file mode 100644
index 000000000..747ded371
--- /dev/null
+++ b/source/l/cairo/cairo.url
@@ -0,0 +1,2 @@
+https://cairographics.org/releases
+https://download.gnome.org/sources/cairo
diff --git a/source/l/cairomm/cairomm.SlackBuild b/source/l/cairomm/cairomm.SlackBuild
index 809d45a42..bde5a4425 100755
--- a/source/l/cairomm/cairomm.SlackBuild
+++ b/source/l/cairomm/cairomm.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=cairomm
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -65,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
@@ -74,26 +74,33 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
- ./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-static=no \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS libdocdir=/usr/doc/$PKGNAM-$VERSION || make libdocdir=/usr/doc/$PKGNAM-$VERSION || exit 1
-make install libdocdir=/usr/doc/$PKGNAM-$VERSION DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+ --buildtype=release \
+ -Dboost-shared=true \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS COPYING* NEWS README* \
$PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/cairomm1/cairomm1.SlackBuild b/source/l/cairomm1/cairomm1.SlackBuild
new file mode 100755
index 000000000..a3c5fe101
--- /dev/null
+++ b/source/l/cairomm1/cairomm1.SlackBuild
@@ -0,0 +1,123 @@
+#!/bin/bash
+
+# Copyright 2015, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+SRCNAM=cairomm
+PKGNAM=cairomm1
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dboost-shared=true \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+# Remove images, API docs, and useless html file
+rm -rf $PKG/usr/doc/$PKGNAM-$VERSION/{images,reference,index.html}
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/cairomm1/slack-desc b/source/l/cairomm1/slack-desc
new file mode 100644
index 000000000..5c8cbd46a
--- /dev/null
+++ b/source/l/cairomm1/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+cairomm1: cairomm1 (C++ wrapper for cairo, ABI 1.16)
+cairomm1:
+cairomm1: cairomm1 is a C++ wrapper for the cairo graphics library. It offers
+cairomm1: all the power of cairo with an interface familiar to C++ developers,
+cairomm1: including use of the Standard Template Library where it makes sense.
+cairomm1:
+cairomm1: Homepage: http://cairographics.org/cairomm/
+cairomm1:
+cairomm1:
+cairomm1:
+cairomm1:
diff --git a/source/l/cfitsio/cfitsio.SlackBuild b/source/l/cfitsio/cfitsio.SlackBuild
index 37df164ab..71395e302 100755
--- a/source/l/cfitsio/cfitsio.SlackBuild
+++ b/source/l/cfitsio/cfitsio.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=cfitsio
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/clucene/clucene.SlackBuild b/source/l/clucene/clucene.SlackBuild
index f616dc495..cb2b42a0c 100755
--- a/source/l/clucene/clucene.SlackBuild
+++ b/source/l/clucene/clucene.SlackBuild
@@ -86,6 +86,9 @@ zcat $CWD/clucene.pkgconfig.patch.gz | patch -p1 --verbose || exit 1
# Fix contrib-libs installation:
zcat $CWD/clucene.install_contribs_lib.diff.gz | patch -p1 --verbose || exit 1
+# Fix FTBFS:
+zcat $CWD/clucene.ctime.diff.gz | patch -p1 --verbose || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/l/clucene/clucene.ctime.diff b/source/l/clucene/clucene.ctime.diff
new file mode 100644
index 000000000..408895fe6
--- /dev/null
+++ b/source/l/clucene/clucene.ctime.diff
@@ -0,0 +1,10 @@
+--- ./src/core/CLucene/document/DateTools.cpp.orig 2011-03-16 19:21:07.000000000 -0500
++++ ./src/core/CLucene/document/DateTools.cpp 2022-10-09 15:08:11.827250428 -0500
+@@ -8,6 +8,7 @@
+
+ #include "DateTools.h"
+ #include "CLucene/util/Misc.h"
++#include <ctime>
+
+ CL_NS_USE(util)
+ CL_NS_DEF(document)
diff --git a/source/l/colord/colord.SlackBuild b/source/l/colord/colord.SlackBuild
new file mode 100755
index 000000000..8e312e105
--- /dev/null
+++ b/source/l/colord/colord.SlackBuild
@@ -0,0 +1,150 @@
+#!/bin/bash
+
+# Copyright 2015-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=colord
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --buildtype=release \
+ --localstatedir=/var \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/lib${LIBDIRSUFFIX}/colord \
+ --mandir=/usr/man \
+ -Dlibcolordcompat=true \
+ -Dsane=true \
+ -Dvapi=true \
+ -Dsystemd=false \
+ -Dargyllcms_sensor=false \
+ -Dprint_profiles=false \
+ -Dtests=false \
+ -Dbash_completion=false \
+ -Ddaemon_user=colord \
+ -Dman=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# I'm not sure why bash-completion needs to be installed in order for meson to
+# install this harmless runtime file. One of those annoying things.
+mkdir -p $PKG/usr/share/bash-completion/completions
+cp -a data/colormgr $PKG/usr/share/bash-completion/completions
+chown root:root $PKG/usr/share/bash-completion/completions/colormgr
+chmod 644 $PKG/usr/share/bash-completion/completions/colormgr
+
+# Make this config file .new:
+mv $PKG/usr/share/dbus-1/system.d/org.freedesktop.ColorManager.conf $PKG/usr/share/dbus-1/system.d/org.freedesktop.ColorManager.conf.new
+
+# It almost gets this right.
+chown -R colord:colord $PKG/var/lib/colord
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* CODE_OF_CONDUCT* COMMITMENT* COPYING* MAINTAINERS* NEWS* README* RELEASE* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/colord/colord.url b/source/l/colord/colord.url
new file mode 100644
index 000000000..5259ace1b
--- /dev/null
+++ b/source/l/colord/colord.url
@@ -0,0 +1 @@
+https://www.freedesktop.org/software/colord/releases/
diff --git a/source/l/colord/doinst.sh b/source/l/colord/doinst.sh
new file mode 100644
index 000000000..3560c635b
--- /dev/null
+++ b/source/l/colord/doinst.sh
@@ -0,0 +1,17 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+config usr/share/dbus-1/system.d/org.freedesktop.ColorManager.conf.new
+
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/source/l/colord/slack-desc b/source/l/colord/slack-desc
new file mode 100644
index 000000000..9c961fdd7
--- /dev/null
+++ b/source/l/colord/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+colord: colord (color profile daemon)
+colord:
+colord: colord is a system service that makes it easy to manage, install and
+colord: generate color profiles to accurately color manage input and output
+colord: devices.
+colord:
+colord: Homepage: http://www.freedesktop.org/software/colord
+colord:
+colord:
+colord:
+colord:
diff --git a/source/l/cryfs/cryfs.SlackBuild b/source/l/cryfs/cryfs.SlackBuild
index e37b529b2..45843e613 100755
--- a/source/l/cryfs/cryfs.SlackBuild
+++ b/source/l/cryfs/cryfs.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=cryfs
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-11}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -95,6 +95,9 @@ zcat $CWD/27587ea1acec5f939a31217f1c43953378f18821.patch.gz | patch -p1 --verbos
# Boost 1.77.0 fix:
zcat $CWD/041b5baea5a4efceff33df2f316646b47a1cd7c0.patch.gz | patch -p1 --verbose || exit 1
+# Fix for gcc13 in case we're still using this since we don't want conan ;-)
+zcat $CWD/cryfs.gcc13.diff.gz | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
mkdir cmake-build
cd cmake-build
diff --git a/source/l/cryfs/cryfs.gcc13.diff b/source/l/cryfs/cryfs.gcc13.diff
new file mode 100644
index 000000000..ec50e92c2
--- /dev/null
+++ b/source/l/cryfs/cryfs.gcc13.diff
@@ -0,0 +1,10 @@
+--- ./src/cpp-utils/thread/LeftRight.h.orig 2021-04-02 12:08:08.000000000 -0500
++++ ./src/cpp-utils/thread/LeftRight.h 2023-05-02 13:45:16.074519135 -0500
+@@ -4,6 +4,7 @@
+ #include <thread>
+ #include <cpp-utils/macros.h>
+ #include <array>
++#include <stdexcept>
+
+ namespace cpputils {
+
diff --git a/source/l/cryptopp/cryptopp.SlackBuild b/source/l/cryptopp/cryptopp.SlackBuild
index 8d3ced299..7412c3f1c 100755
--- a/source/l/cryptopp/cryptopp.SlackBuild
+++ b/source/l/cryptopp/cryptopp.SlackBuild
@@ -37,7 +37,7 @@ PKG=$TMP/package-$PKGNAM
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/cxxopts/cxxopts.SlackBuild b/source/l/cxxopts/cxxopts.SlackBuild
new file mode 100755
index 000000000..960d5d9cb
--- /dev/null
+++ b/source/l/cxxopts/cxxopts.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=cxxopts
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCXXOPTS_BUILD_EXAMPLES=OFF \
+ -DCXXOPTS_BUILD_TESTS=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ CHANGELOG* INSTALL* LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/cxxopts/cxxopts.url b/source/l/cxxopts/cxxopts.url
new file mode 100644
index 000000000..370cbdd29
--- /dev/null
+++ b/source/l/cxxopts/cxxopts.url
@@ -0,0 +1 @@
+https://github.com/jarro2783/cxxopts
diff --git a/source/l/mozjs78/slack-desc b/source/l/cxxopts/slack-desc
index 94125293d..944c36ed7 100644
--- a/source/l/mozjs78/slack-desc
+++ b/source/l/cxxopts/slack-desc
@@ -6,15 +6,14 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-mozjs78: mozjs78 (Mozilla's JavaScript Engine)
-mozjs78:
-mozjs78: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is
-mozjs78: used in various Mozilla products (including Firefox) and is available
-mozjs78: under MPL/GPL/LGPL tri-license.
-mozjs78:
-mozjs78: Homepage:
-mozjs78: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
-mozjs78:
-mozjs78:
-mozjs78:
-mozjs78:
+cxxopts: cxxopts (C++ command line option parser)
+cxxopts:
+cxxopts: This is a lightweight C++ option parser library, supporting the
+cxxopts: standard GNU style syntax for options.
+cxxopts:
+cxxopts: Homepage: https://github.com/jarro2783/cxxopts
+cxxopts:
+cxxopts:
+cxxopts:
+cxxopts:
+cxxopts:
diff --git a/source/l/dav1d/dav1d.SlackBuild b/source/l/dav1d/dav1d.SlackBuild
new file mode 100755
index 000000000..8877ec7bb
--- /dev/null
+++ b/source/l/dav1d/dav1d.SlackBuild
@@ -0,0 +1,124 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=dav1d
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ CONTRIBUTING* COPYING* NEWS* README* THANKS* \
+ doc/PATENTS* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/dav1d/dav1d.url b/source/l/dav1d/dav1d.url
new file mode 100644
index 000000000..b241eeae0
--- /dev/null
+++ b/source/l/dav1d/dav1d.url
@@ -0,0 +1 @@
+http://downloads.videolan.org/pub/videolan/dav1d
diff --git a/source/l/dav1d/slack-desc b/source/l/dav1d/slack-desc
new file mode 100644
index 000000000..3afb21a99
--- /dev/null
+++ b/source/l/dav1d/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+dav1d: dav1d (AV1 decoder)
+dav1d:
+dav1d: dav1d is an AV1 decoder focused on speed and correctness. It supports
+dav1d: all features from AV1, including all subsampling and bit-depth
+dav1d: parameters.
+dav1d:
+dav1d: Homepage: https://code.videolan.org/videolan/dav1d
+dav1d:
+dav1d:
+dav1d:
+dav1d:
diff --git a/source/l/dbus-python/dbus-python.SlackBuild b/source/l/dbus-python/dbus-python.SlackBuild
index f3eaafe31..9954235b2 100755
--- a/source/l/dbus-python/dbus-python.SlackBuild
+++ b/source/l/dbus-python/dbus-python.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2018, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=dbus-python
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -89,26 +89,7 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-html-docs \
- --enable-shared=yes \
- --enable-static=no \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux \
- || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-make clean
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --disable-html-docs \
+ --disable-documentation \
--enable-shared=yes \
--enable-static=no \
--build=$ARCH-slackware-linux \
diff --git a/source/l/dconf-editor/dconf-editor.SlackBuild b/source/l/dconf-editor/dconf-editor.SlackBuild
index 119b81ccb..0c09937c8 100755
--- a/source/l/dconf-editor/dconf-editor.SlackBuild
+++ b/source/l/dconf-editor/dconf-editor.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/dconf/dconf.SlackBuild b/source/l/dconf/dconf.SlackBuild
index c0ad9a1c1..ef102e0f3 100755
--- a/source/l/dconf/dconf.SlackBuild
+++ b/source/l/dconf/dconf.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/dconf/slack-desc b/source/l/dconf/slack-desc
index 244468909..426839ec7 100644
--- a/source/l/dconf/slack-desc
+++ b/source/l/dconf/slack-desc
@@ -11,7 +11,7 @@ dconf:
dconf: dconf is a low-level configuration system. Its main purpose is to
dconf: provide a backend to the GSettings API in GLib.
dconf:
-dconf: Homepage: http://live.gnome.org/dconf
+dconf: Homepage: https://wiki.gnome.org/Projects/dconf
dconf:
dconf:
dconf:
diff --git a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
index db23c76e8..f1e3775b2 100755
--- a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
+++ b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=desktop-file-utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -76,22 +76,27 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-if [ ! -r configure ]; then
- NOCONFIGURE=1 ./autogen.sh
-fi
-
-# Configure:
-CFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
--mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
mkdir -p $PKG/var/log/setup
cat << EOF > $PKG/var/log/setup/setup.07.update-desktop-database
diff --git a/source/l/djvulibre/djvulibre.SlackBuild b/source/l/djvulibre/djvulibre.SlackBuild
index 9324688ac..0e38af123 100755
--- a/source/l/djvulibre/djvulibre.SlackBuild
+++ b/source/l/djvulibre/djvulibre.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=djvulibre
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/dotconf/dotconf.SlackBuild b/source/l/dotconf/dotconf.SlackBuild
index 797945c92..3acc23e0d 100755
--- a/source/l/dotconf/dotconf.SlackBuild
+++ b/source/l/dotconf/dotconf.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=dotconf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/duktape/duktape.SlackBuild b/source/l/duktape/duktape.SlackBuild
new file mode 100755
index 000000000..ad88217e7
--- /dev/null
+++ b/source/l/duktape/duktape.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=duktape
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Don't use tools/configure.py, because it still requires python2.
+# Instead, make a couple needed changes directly:
+
+sed -i 's/^#undef DUK_USE_FASTINT$/#define DUK_USE_FASTINT/' src/duk_config.h
+sed -i 's/duktape\.c/& -lm/' Makefile.sharedlibrary
+
+make $NUMJOBS -f Makefile.sharedlibrary LIBDIR=/lib${LIBDIRSUFFIX} INSTALL_PREFIX=/usr || exit 1
+make -f Makefile.sharedlibrary LIBDIR=/lib${LIBDIRSUFFIX} INSTALL_PREFIX=/usr DESTDIR=$PKG install || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/duktape/duktape.url b/source/l/duktape/duktape.url
new file mode 100644
index 000000000..caeb1f2b8
--- /dev/null
+++ b/source/l/duktape/duktape.url
@@ -0,0 +1 @@
+https://duktape.org
diff --git a/source/l/duktape/slack-desc b/source/l/duktape/slack-desc
new file mode 100644
index 000000000..dc1390b22
--- /dev/null
+++ b/source/l/duktape/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+duktape: duktape (embeddable JavaScript engine)
+duktape:
+duktape: Duktape is a small and portable ECMAScript E5/E5.1 implementation. It
+duktape: is intended to be easily embeddable into C programs, with a C API
+duktape: similar in spirit to Lua's.
+duktape:
+duktape: Homepage: https://duktape.org
+duktape:
+duktape:
+duktape:
+duktape:
diff --git a/source/l/dvdauthor/dvdauthor.SlackBuild b/source/l/dvdauthor/dvdauthor.SlackBuild
index e744fb55b..1ddf81ae2 100755
--- a/source/l/dvdauthor/dvdauthor.SlackBuild
+++ b/source/l/dvdauthor/dvdauthor.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-5}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/eigen3/eigen3.SlackBuild b/source/l/eigen3/eigen3.SlackBuild
index ea0e66a0e..30ce46284 100755
--- a/source/l/eigen3/eigen3.SlackBuild
+++ b/source/l/eigen3/eigen3.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=eigen
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
diff --git a/source/l/enchant/enchant.SlackBuild b/source/l/enchant/enchant.SlackBuild
index 2213d2a86..54fc62562 100755
--- a/source/l/enchant/enchant.SlackBuild
+++ b/source/l/enchant/enchant.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2007 Alex Elliott <alex@alex-elliott.co.uk>
-# Copyright 2008, 2009, 2013, 2018, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2013, 2018, 2021, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -79,15 +79,15 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-./bootstrap
+#./bootstrap
-if [ ! -r configure ]; then
- if [ -x ./autogen.sh ]; then
- NOCONFIGURE=1 ./autogen.sh
- else
- autoreconf -vif
- fi
-fi
+#if [ ! -r configure ]; then
+# if [ -x ./autogen.sh ]; then
+# NOCONFIGURE=1 ./autogen.sh
+# else
+# autoreconf -vif
+# fi
+#fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -97,7 +97,6 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --with-aspell-prefix=/usr \
--enable-static=no \
--build=$ARCH-slackware-linux || exit 1
@@ -118,8 +117,10 @@ rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
)
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
-cp -a AUTHORS BUGS COPYING* HACKING MAINTAINERS NEWS README TODO \
- $PKG/usr/doc/${PKGNAM}-$VERSION || true
+cp -a AUTHORS* BUGS* COPYING* HACKING* MAINTAINERS* NEWS* README* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+mv $PKG/usr/share/doc/enchant/* $PKG/usr/doc/${PKGNAM}-$VERSION
+rmdir $PKG/usr/share/doc/enchant $PKG/usr/share/doc
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/enchant/enchant.url b/source/l/enchant/enchant.url
index b40fed97c..8c731a50c 100644
--- a/source/l/enchant/enchant.url
+++ b/source/l/enchant/enchant.url
@@ -1 +1,2 @@
https://github.com/AbiWord/enchant
+https://github.com/AbiWord/enchant/releases/download/v2.6.9/enchant-2.6.9.tar.gz
diff --git a/source/l/espeak-ng/espeak-ng.SlackBuild b/source/l/espeak-ng/espeak-ng.SlackBuild
index 13b3505e5..0fd2e4554 100755
--- a/source/l/espeak-ng/espeak-ng.SlackBuild
+++ b/source/l/espeak-ng/espeak-ng.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=espeak-ng
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/exiv2/exiv2.SlackBuild b/source/l/exiv2/exiv2.SlackBuild
index 6d49c6900..b3e0502d8 100755
--- a/source/l/exiv2/exiv2.SlackBuild
+++ b/source/l/exiv2/exiv2.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2007 Frank Caraballo <fecaraballo{at}gmail{dot}com>
-# Copyright 2008, 2009, 2011, 2015, 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2011, 2015, 2017, 2018, 2019, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=exiv2
-VERSION=${VERSION:-$(echo $PKGNAM-*-Source.tar.?z | rev | cut -f 3- -d . | cut -f 2 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -68,10 +68,10 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION-Source
+rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION-Source.tar.?z || exit 1
-cd $PKGNAM-$VERSION-Source || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
diff --git a/source/l/exiv2/exiv2.url b/source/l/exiv2/exiv2.url
new file mode 100644
index 000000000..812250611
--- /dev/null
+++ b/source/l/exiv2/exiv2.url
@@ -0,0 +1 @@
+https://github.com/Exiv2/exiv2
diff --git a/source/l/exiv2/paredown.sh b/source/l/exiv2/paredown.sh
index a40aa335c..64b293821 100755
--- a/source/l/exiv2/paredown.sh
+++ b/source/l/exiv2/paredown.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2013, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2019, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,24 +21,24 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PKGNAM=exiv2
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.gz | rev | cut -f 3- -d . | cut -f 2 -d - | rev)}
+VERSION=${VERSION:-$(echo v*.tar.gz | cut -f 2- -d v | rev | cut -f 3- -d . | rev)}
-if [ ! -r $PKGNAM-${VERSION}-Source.tar.gz ]; then
- echo "$PKGNAM-${VERSION}-Source.tar.gz does not exist. Exiting."
+if [ ! -r v${VERSION}.tar.gz ]; then
+ echo "v${VERSION}.tar.gz does not exist. Exiting."
exit 1
fi
-touch -r $PKGNAM-${VERSION}-Source.tar.gz tmp-timestamp || exit 1
+OUTPUT_TIMESTAMP=$(tar tvvf v${VERSION}.tar.gz | head -n 1 | tr -d / | rev | cut -f 2,3 -d ' ' | rev)
-rm -rf $PKGNAM-${VERSION}-Source
-tar xf $PKGNAM-${VERSION}-Source.tar.gz || exit 1
-rm -rf $PKGNAM-${VERSION}-Source/test/data/*
-rm -rf $PKGNAM-${VERSION}-Source/tests/bugfixes/*
-rm -f $PKGNAM-${VERSION}-Source.tar.lz
-tar cf $PKGNAM-${VERSION}-Source.tar $PKGNAM-${VERSION}-Source
-touch -r tmp-timestamp $PKGNAM-${VERSION}-Source.tar
-plzip -9 -v $PKGNAM-${VERSION}-Source.tar
-rm -rf $PKGNAM-${VERSION}-Source tmp-timestamp
+rm -rf $PKGNAM-${VERSION}
+tar xf v${VERSION}.tar.gz || exit 1
+rm -rf $PKGNAM-${VERSION}/test/data/*
+rm -rf $PKGNAM-${VERSION}/tests/bugfixes/*
+rm -f $PKGNAM-${VERSION}.tar.lz
+tar cf $PKGNAM-${VERSION}.tar $PKGNAM-${VERSION}
+touch -d "$OUTPUT_TIMESTAMP" $PKGNAM-${VERSION}.tar
+plzip -9 -v $PKGNAM-${VERSION}.tar
+rm -rf $PKGNAM-${VERSION} v${VERSION}.tar.gz
-echo "Repacking of $PKGNAM-${VERSION}-Source.tar.lz complete."
+echo "Repacking of v${VERSION}.tar.gz complete."
diff --git a/source/l/expat/expat.SlackBuild b/source/l/expat/expat.SlackBuild
index ac9926fa2..167c9c5c6 100755
--- a/source/l/expat/expat.SlackBuild
+++ b/source/l/expat/expat.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -73,6 +73,7 @@ cd expat-$VERSION || exit 1
chown -R root:root .
find . -perm 777 -exec chmod 755 {} \+
find . -perm 664 -exec chmod 644 {} \+
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/expat/expat.url b/source/l/expat/expat.url
new file mode 100644
index 000000000..9493fbccd
--- /dev/null
+++ b/source/l/expat/expat.url
@@ -0,0 +1,2 @@
+https://github.com/libexpat/libexpat/releases/download/R_2_6_2/expat-2.6.2.tar.lz
+https://github.com/libexpat/libexpat/releases/download/R_2_6_2/expat-2.6.2.tar.lz.asc
diff --git a/source/l/farstream/farstream.SlackBuild b/source/l/farstream/farstream.SlackBuild
index cca8c137c..9577f62e7 100755
--- a/source/l/farstream/farstream.SlackBuild
+++ b/source/l/farstream/farstream.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/ffmpeg/0004-support-nv-codec-headers-12.2.patch b/source/l/ffmpeg/0004-support-nv-codec-headers-12.2.patch
new file mode 100644
index 000000000..80352e8c5
--- /dev/null
+++ b/source/l/ffmpeg/0004-support-nv-codec-headers-12.2.patch
@@ -0,0 +1,291 @@
+diff -Nru a/libavcodec/nvenc.c b/libavcodec/nvenc.c
+--- a/libavcodec/nvenc.c 2024-04-03 12:14:22.766521297 +0900
++++ b/libavcodec/nvenc.c 2024-04-03 12:14:01.727470507 +0900
+@@ -242,8 +242,20 @@
+
+ static void nvenc_print_driver_requirement(AVCodecContext *avctx, int level)
+ {
+-#if NVENCAPI_CHECK_VERSION(12, 1)
++#if NVENCAPI_CHECK_VERSION(12, 3)
+ const char *minver = "(unknown)";
++#elif NVENCAPI_CHECK_VERSION(12, 2)
++# if defined(_WIN32) || defined(__CYGWIN__)
++ const char *minver = "551.76";
++# else
++ const char *minver = "550.54.14";
++# endif
++#elif NVENCAPI_CHECK_VERSION(12, 1)
++# if defined(_WIN32) || defined(__CYGWIN__)
++ const char *minver = "531.61";
++# else
++ const char *minver = "530.41.03";
++# endif
+ #elif NVENCAPI_CHECK_VERSION(12, 0)
+ # if defined(_WIN32) || defined(__CYGWIN__)
+ const char *minver = "522.25";
+@@ -594,6 +606,33 @@
+ return AVERROR(ENOSYS);
+ }
+
++#ifdef NVENC_HAVE_TEMPORAL_FILTER
++ ret = nvenc_check_cap(avctx, NV_ENC_CAPS_SUPPORT_TEMPORAL_FILTER);
++ if(ctx->tf_level > 0 && ret <= 0) {
++ av_log(avctx, AV_LOG_WARNING, "Temporal filtering not supported by the device\n");
++ return AVERROR(ENOSYS);
++ }
++#endif
++
++#ifdef NVENC_HAVE_LOOKAHEAD_LEVEL
++ ret = nvenc_check_cap(avctx, NV_ENC_CAPS_SUPPORT_LOOKAHEAD_LEVEL);
++ if(ctx->rc_lookahead > 0 && ctx->lookahead_level > 0 &&
++ ctx->lookahead_level != NV_ENC_LOOKAHEAD_LEVEL_AUTOSELECT &&
++ ctx->lookahead_level > ret)
++ {
++ av_log(avctx, AV_LOG_WARNING, "Lookahead level not supported. Maximum level: %d\n", ret);
++ return AVERROR(ENOSYS);
++ }
++#endif
++
++#ifdef NVENC_HAVE_UNIDIR_B
++ ret = nvenc_check_cap(avctx, NV_ENC_CAPS_SUPPORT_UNIDIRECTIONAL_B);
++ if(ctx->unidir_b && ret <= 0) {
++ av_log(avctx, AV_LOG_WARNING, "Unidirectional B-Frames not supported by the device\n");
++ return AVERROR(ENOSYS);
++ }
++#endif
++
+ ctx->support_dyn_bitrate = nvenc_check_cap(avctx, NV_ENC_CAPS_SUPPORT_DYN_BITRATE_CHANGE);
+
+ return 0;
+@@ -987,7 +1026,7 @@
+ return 0;
+ }
+
+-static av_cold void nvenc_setup_rate_control(AVCodecContext *avctx)
++static av_cold int nvenc_setup_rate_control(AVCodecContext *avctx)
+ {
+ NvencContext *ctx = avctx->priv_data;
+
+@@ -1116,6 +1155,24 @@
+ if (ctx->encode_config.rcParams.lookaheadDepth < ctx->rc_lookahead)
+ av_log(avctx, AV_LOG_WARNING, "Clipping lookahead depth to %d (from %d) due to lack of surfaces/delay",
+ ctx->encode_config.rcParams.lookaheadDepth, ctx->rc_lookahead);
++
++#ifdef NVENC_HAVE_LOOKAHEAD_LEVEL
++ if (ctx->lookahead_level >= 0) {
++ switch (ctx->lookahead_level) {
++ case NV_ENC_LOOKAHEAD_LEVEL_0:
++ case NV_ENC_LOOKAHEAD_LEVEL_1:
++ case NV_ENC_LOOKAHEAD_LEVEL_2:
++ case NV_ENC_LOOKAHEAD_LEVEL_3:
++ case NV_ENC_LOOKAHEAD_LEVEL_AUTOSELECT:
++ break;
++ default:
++ av_log(avctx, AV_LOG_ERROR, "Invalid lookahead level.\n");
++ return AVERROR(EINVAL);
++ }
++
++ ctx->encode_config.rcParams.lookaheadLevel = ctx->lookahead_level;
++ }
++#endif
+ }
+ }
+
+@@ -1143,6 +1200,8 @@
+ ctx->encode_config.rcParams.vbvBufferSize = avctx->rc_buffer_size = 0;
+ ctx->encode_config.rcParams.maxBitRate = avctx->rc_max_rate;
+ }
++
++ return 0;
+ }
+
+ static av_cold int nvenc_setup_h264_config(AVCodecContext *avctx)
+@@ -1255,6 +1314,11 @@
+
+ h264->level = ctx->level;
+
++#ifdef NVENC_HAVE_NEW_BIT_DEPTH_API
++ h264->inputBitDepth = h264->outputBitDepth =
++ IS_10BIT(ctx->data_pix_fmt) ? NV_ENC_BIT_DEPTH_10 : NV_ENC_BIT_DEPTH_8;
++#endif
++
+ if (ctx->coder >= 0)
+ h264->entropyCodingMode = ctx->coder;
+
+@@ -1370,7 +1434,12 @@
+
+ hevc->chromaFormatIDC = IS_YUV444(ctx->data_pix_fmt) ? 3 : 1;
+
++#ifdef NVENC_HAVE_NEW_BIT_DEPTH_API
++ hevc->inputBitDepth = hevc->outputBitDepth =
++ IS_10BIT(ctx->data_pix_fmt) ? NV_ENC_BIT_DEPTH_10 : NV_ENC_BIT_DEPTH_8;
++#else
+ hevc->pixelBitDepthMinus8 = IS_10BIT(ctx->data_pix_fmt) ? 2 : 0;
++#endif
+
+ hevc->level = ctx->level;
+
+@@ -1386,6 +1455,25 @@
+ hevc->numRefL1 = avctx->refs;
+ #endif
+
++#ifdef NVENC_HAVE_TEMPORAL_FILTER
++ if (ctx->tf_level >= 0) {
++ hevc->tfLevel = ctx->tf_level;
++
++ switch (ctx->tf_level)
++ {
++ case NV_ENC_TEMPORAL_FILTER_LEVEL_0:
++ case NV_ENC_TEMPORAL_FILTER_LEVEL_4:
++ break;
++ default:
++ av_log(avctx, AV_LOG_ERROR, "Invalid temporal filtering level.\n");
++ return AVERROR(EINVAL);
++ }
++
++ if (ctx->encode_config.frameIntervalP < 5)
++ av_log(avctx, AV_LOG_WARNING, "Temporal filtering needs at least 4 B-Frames (-bf 4).\n");
++ }
++#endif
++
+ return 0;
+ }
+
+@@ -1455,8 +1543,13 @@
+
+ av1->chromaFormatIDC = IS_YUV444(ctx->data_pix_fmt) ? 3 : 1;
+
++#ifdef NVENC_HAVE_NEW_BIT_DEPTH_API
++ av1->inputBitDepth = IS_10BIT(ctx->data_pix_fmt) ? NV_ENC_BIT_DEPTH_10 : NV_ENC_BIT_DEPTH_8;
++ av1->outputBitDepth = (IS_10BIT(ctx->data_pix_fmt) || ctx->highbitdepth) ? NV_ENC_BIT_DEPTH_10 : NV_ENC_BIT_DEPTH_8;
++#else
+ av1->inputPixelBitDepthMinus8 = IS_10BIT(ctx->data_pix_fmt) ? 2 : 0;
+ av1->pixelBitDepthMinus8 = (IS_10BIT(ctx->data_pix_fmt) || ctx->highbitdepth) ? 2 : 0;
++#endif
+
+ if (ctx->b_ref_mode >= 0)
+ av1->useBFramesAsRef = ctx->b_ref_mode;
+@@ -1585,6 +1678,10 @@
+ FF_ENABLE_DEPRECATION_WARNINGS
+ }
+
++#ifdef NVENC_HAVE_UNIDIR_B
++ ctx->init_encode_params.enableUniDirectionalB = ctx->unidir_b;
++#endif
++
+ ctx->init_encode_params.enableEncodeAsync = 0;
+ ctx->init_encode_params.enablePTD = 1;
+
+@@ -1633,7 +1730,9 @@
+
+ nvenc_recalc_surfaces(avctx);
+
+- nvenc_setup_rate_control(avctx);
++ res = nvenc_setup_rate_control(avctx);
++ if (res < 0)
++ return res;
+
+ if (avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) {
+ ctx->encode_config.frameFieldMode = NV_ENC_PARAMS_FRAME_FIELD_MODE_FIELD;
+@@ -1689,15 +1788,15 @@
+ {
+ switch (pix_fmt) {
+ case AV_PIX_FMT_YUV420P:
+- return NV_ENC_BUFFER_FORMAT_YV12_PL;
++ return NV_ENC_BUFFER_FORMAT_YV12;
+ case AV_PIX_FMT_NV12:
+- return NV_ENC_BUFFER_FORMAT_NV12_PL;
++ return NV_ENC_BUFFER_FORMAT_NV12;
+ case AV_PIX_FMT_P010:
+ case AV_PIX_FMT_P016:
+ return NV_ENC_BUFFER_FORMAT_YUV420_10BIT;
+ case AV_PIX_FMT_GBRP:
+ case AV_PIX_FMT_YUV444P:
+- return NV_ENC_BUFFER_FORMAT_YUV444_PL;
++ return NV_ENC_BUFFER_FORMAT_YUV444;
+ case AV_PIX_FMT_GBRP16:
+ case AV_PIX_FMT_YUV444P16:
+ return NV_ENC_BUFFER_FORMAT_YUV444_10BIT;
+@@ -2282,12 +2381,6 @@
+ frame_data->duration = frame->duration;
+ frame_data->frame_opaque = frame->opaque;
+
+-#if FF_API_REORDERED_OPAQUE
+-FF_DISABLE_DEPRECATION_WARNINGS
+- frame_data->reordered_opaque = frame->reordered_opaque;
+-FF_ENABLE_DEPRECATION_WARNINGS
+-#endif
+-
+ ctx->frame_data_array_pos = (ctx->frame_data_array_pos + 1) % ctx->frame_data_array_nb;
+ pic_params->inputDuration = idx;
+
+@@ -2304,12 +2397,6 @@
+
+ pkt->duration = frame_data->duration;
+
+-#if FF_API_REORDERED_OPAQUE
+-FF_DISABLE_DEPRECATION_WARNINGS
+- avctx->reordered_opaque = frame_data->reordered_opaque;
+-FF_ENABLE_DEPRECATION_WARNINGS
+-#endif
+-
+ if (avctx->flags & AV_CODEC_FLAG_COPY_OPAQUE) {
+ pkt->opaque = frame_data->frame_opaque;
+ pkt->opaque_ref = frame_data->frame_opaque_ref;
+@@ -2697,6 +2784,7 @@
+ pic_params.encodePicFlags = 0;
+ }
+
++ pic_params.frameIdx = ctx->frame_idx_counter++;
+ pic_params.inputTimeStamp = frame->pts;
+
+ if (ctx->extra_sei) {
+diff -Nru a/libavcodec/nvenc.h b/libavcodec/nvenc.h
+--- a/libavcodec/nvenc.h 2024-04-03 12:14:27.574532897 +0900
++++ b/libavcodec/nvenc.h 2024-04-03 12:14:07.102483487 +0900
+@@ -83,6 +83,15 @@
+ #define NVENC_NO_DEPRECATED_RC
+ #endif
+
++// SDK 12.2 compile time feature checks
++#if NVENCAPI_CHECK_VERSION(12, 2)
++#define NVENC_HAVE_NEW_BIT_DEPTH_API
++#define NVENC_HAVE_TEMPORAL_FILTER
++#define NVENC_HAVE_LOOKAHEAD_LEVEL
++#define NVENC_HAVE_UHQ_TUNING
++#define NVENC_HAVE_UNIDIR_B
++#endif
++
+ typedef struct NvencSurface
+ {
+ NV_ENC_INPUT_PTR input_surface;
+@@ -100,10 +109,6 @@
+ {
+ int64_t duration;
+
+-#if FF_API_REORDERED_OPAQUE
+- int64_t reordered_opaque;
+-#endif
+-
+ void *frame_opaque;
+ AVBufferRef *frame_opaque_ref;
+ } NvencFrameData;
+@@ -221,6 +226,8 @@
+
+ void *nvencoder;
+
++ uint32_t frame_idx_counter;
++
+ int preset;
+ int profile;
+ int level;
+@@ -270,6 +277,9 @@
+ int highbitdepth;
+ int max_slice_size;
+ int rgb_mode;
++ int tf_level;
++ int lookahead_level;
++ int unidir_b;
+ } NvencContext;
+
+ int ff_nvenc_encode_init(AVCodecContext *avctx);
diff --git a/source/l/ffmpeg/250471ea1745fc703eb346a2a662304536a311b1.patch b/source/l/ffmpeg/250471ea1745fc703eb346a2a662304536a311b1.patch
new file mode 100644
index 000000000..b735415ae
--- /dev/null
+++ b/source/l/ffmpeg/250471ea1745fc703eb346a2a662304536a311b1.patch
@@ -0,0 +1,25 @@
+From 250471ea1745fc703eb346a2a662304536a311b1 Mon Sep 17 00:00:00 2001
+From: Sebastian Ramacher <sramacher@debian.org>
+Date: Sun, 12 Nov 2023 18:46:28 +0100
+Subject: [PATCH] avcoded/fft: Fix memory leak if ctx2 is used
+
+Signed-off-by: James Almer <jamrial@gmail.com>
+---
+ libavcodec/avfft.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libavcodec/avfft.c b/libavcodec/avfft.c
+index 3ef076d222..999b5ed79a 100644
+--- a/libavcodec/avfft.c
++++ b/libavcodec/avfft.c
+@@ -130,6 +130,7 @@ av_cold void av_mdct_end(FFTContext *s)
+ {
+ if (s) {
+ AVTXWrapper *w = (AVTXWrapper *)s;
++ av_tx_uninit(&w->ctx2);
+ av_tx_uninit(&w->ctx);
+ av_free(w);
+ }
+--
+2.25.1
+
diff --git a/source/l/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch b/source/l/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch
new file mode 100644
index 000000000..20ea725da
--- /dev/null
+++ b/source/l/ffmpeg/add-av_stream_get_first_dts-for-chromium.patch
@@ -0,0 +1,31 @@
+diff '--color=auto' -rupN ffmpeg.orig/libavformat/avformat.h ffmpeg/libavformat/avformat.h
+--- ffmpeg.orig/libavformat/avformat.h 2022-08-19 17:42:47.323422603 +0200
++++ ffmpeg/libavformat/avformat.h 2022-08-19 17:42:51.347130436 +0200
+@@ -1128,6 +1128,10 @@ struct AVCodecParserContext *av_stream_g
+ */
+ int64_t av_stream_get_end_pts(const AVStream *st);
+
++// Chromium: We use the internal field first_dts vvv
++int64_t av_stream_get_first_dts(const AVStream *st);
++// Chromium: We use the internal field first_dts ^^^
++
+ #define AV_PROGRAM_RUNNING 1
+
+ /**
+diff '--color=auto' -rupN ffmpeg.orig/libavformat/mux_utils.c ffmpeg/libavformat/mux_utils.c
+--- ffmpeg.orig/libavformat/mux_utils.c 2022-08-19 17:42:47.346758108 +0200
++++ ffmpeg/libavformat/mux_utils.c 2022-08-19 17:47:28.549589002 +0200
+@@ -37,6 +37,13 @@ int64_t av_stream_get_end_pts(const AVSt
+ return AV_NOPTS_VALUE;
+ }
+
++// Chromium: We use the internal field first_dts vvv
++int64_t av_stream_get_first_dts(const AVStream *st)
++{
++ return cffstream(st)->first_dts;
++}
++// Chromium: We use the internal field first_dts ^^^
++
+ int avformat_query_codec(const AVOutputFormat *ofmt, enum AVCodecID codec_id,
+ int std_compliance)
+ {
diff --git a/source/l/ffmpeg/ffmpeg.SlackBuild b/source/l/ffmpeg/ffmpeg.SlackBuild
index 49bfcc602..ca1e1356c 100755
--- a/source/l/ffmpeg/ffmpeg.SlackBuild
+++ b/source/l/ffmpeg/ffmpeg.SlackBuild
@@ -2,8 +2,8 @@
# Slackware build script for ffmpeg
-# Copyright 2010-2017 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010-2024 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2017, 2018, 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=ffmpeg
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,10 +46,10 @@ PKG=$TMP/package-$PKGNAM
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -fPIC"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686 -fPIC"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
@@ -89,13 +89,25 @@ fi
# - xz
# - zlib
+# Select one of these for HTTPS support
+ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
+ { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
+gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls"
+
+# Select one of these for RTMP[E] support
+librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
+gmp="" ; [ "${GMP:-no}" != "no" ] && gmp="--enable-gmp"
+libgcrypt="" ; [ "${GCRYPT:-yes}" != "no" ] && libgcrypt="--enable-gcrypt"
+
+# Select one of these for GLSL->SPIRV compilation (Required for Vulkan support)
+libglslang="" ; [ "${GLSLANG:-no}" != "no" ] && libglslang="--enable-libglslang"
+shaderc="" ; [ "${SHADERC:-yes}" != "no" ] && libshaderc="--enable-libshaderc"
+
libx264="" ; [ "${X264:-no}" != "no" ] && libx264="--enable-libx264"
libcelt="" ; [ "${CELT:-no}" != "no" ] && libcelt="--enable-libcelt"
libdc1394="" ; [ "${DC1394:-no}" != "no" ] && libdc1394="--enable-libdc1394"
libgsm="" ; [ "${GSM:-no}" != "no" ] && libgsm="--enable-libgsm"
-librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
libxvid="" ; [ "${XVID:-no}" != "no" ] && libxvid="--enable-libxvid"
-libass="" ; [ "${ASS:-no}" != "no" ] && libass="--enable-libass"
libiec61883=""; [ "${IEC61883:-no}" != "no" ] && libiec61883="--enable-libiec61883"
libilbc="" ; [ "${ILBC:-no}" != "no" ] && libilbc="--enable-libilbc"
libmodplug="" ; [ "${MODPLUG:-no}" != "no" ] && libmodplug="--enable-libmodplug"
@@ -104,7 +116,6 @@ ladspa="" ; [ "${LADSPA:-no}" != "no" ] && ladspa="--enable-ladspa"
libflite="" ; [ "${FLITE:-no}" != "no" ] && libflite="--enable-libflite"
libx265="" ; [ "${X265:-no}" != "no" ] && libx265="--enable-libx265"
libzvbi="" ; [ "${ZVBI:-no}" != "no" ] && libzvbi="--enable-libzvbi"
-libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
libgme="" ; [ "${GME:-no}" != "no" ] && libgme="--enable-libgme"
libsnappy="" ; [ "${SNAPPY:-no}" != "no" ] && libsnappy="--enable-libsnappy"
libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq"
@@ -112,9 +123,7 @@ libbs2b="" ; [ "${BS2B:-no}" != "no" ] && libbs2b="--enable-libbs2b"
rubberband="" ; [ "${RUBBERBAND:-no}" != "no" ] && rubberband="--enable-librubberband"
tesseract="" ; [ "${TESSERACT:-no}" != "no" ] && tesseract="--enable-libtesseract"
libjack="" ; [ "${JACK:-no}" != "no" ] && libjack="--enable-libjack"
-libaom="" ; [ "${AOM:-no}" != "no" ] && libaom="--enable-libaom"
lv2="" ; [ "${LV2:-no}" != "no" ] && lv2="--enable-lv2"
-libdav1d="" ; [ "${DAV1D:-no}" != "no" ] && libdav1d="--enable-libdav1d"
rabbitmq="" ; [ "${RABBITMQ:-no}" != "no" ] && rabbitmq="--enable-librabbitmq"
libcodec2="" ; [ "${CODEC2:-no}" != "no" ] && libcodec2="--enable-libcodec2"
libsoxr="" ; [ "${SOXR:-no}" != "no" ] && libsoxr="--enable-libsoxr"
@@ -126,23 +135,33 @@ opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
fdk="" ; [ "${FDK_AAC:-no}" != "no" ] && \
{ fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
-ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
- { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
decklink="" ; [ "${DECKLINK:-no}" != "no" ] && \
{ decklink="--enable-decklink" ; \
SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink" ; }
-vulkan="" ; [ "${VULKAN:-no}" != "no" ] && vulkan="--enable-vulkan"
-libglslang="" ; [ "${GLSLANG:-no}" != "no" ] && libglslang="--enable-libglslang"
+libaribb24="" ; [ "${ARIBB24:-no}" != "no" ] && libaribb24="--enable-libaribb24"
+libjxl="" ; [ "${JXL:-no}" != "no" ] && libjxl="--enable-libjxl"
+librist="" ; [ "${RIST:-no}" != "no" ] && librist="--enable-librist"
+libshine="" ; [ "${SHINE:-no}" != "no" ] && libshine="--enable-libshine"
+svtav1="" ; [ "${SVTAV1:-no}" != "no" ] && svtav1="--enable-libsvtav1"
+libmysofa="" ; [ "${MYSOFA:-no}" != "no" ] && libmysofa="--enable-libmysofa"
+libxavs2="" ; [ "${XAVS2:-no}" != "no" ] && libxavs2="--enable-libxavs2"
+libvmaf="" ; [ "${VMAF:-no}" != "no" ] && libvmaf="--enable-libvmaf"
+
+# Needs older opencv than we ship. See https://trac.ffmpeg.org/ticket/7059
+libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
+
+# Needs newer lensfun than we ship. See https://trac.ffmpeg.org/ticket/9112
liblensfun="" ; [ "${LENSFUN:-no}" != "no" ] && liblensfun="--enable-liblensfun"
# Default enabled features:
fontconfig="" ; [ "${FONTCONFIG:-yes}" != "no" ] && fontconfig="--enable-libfontconfig"
freetype="" ; [ "${FREETYPE:-yes}" != "no" ] && freetype="--enable-libfreetype"
fribidi="" ; [ "${FRIBIDI:-yes}" != "no" ] && fribidi="--enable-libfribidi"
-gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls"
+libaom="" ; [ "${AOM:-yes}" != "no" ] && libaom="--enable-libaom"
libbluray="" ; [ "${BLURAY:-yes}" != "no" ] && libbluray="--enable-libbluray"
libcaca="" ; [ "${CACA:-yes}" != "no" ] && libcaca="--enable-libcaca"
libcdio="" ; [ "${LIBCDIO:-yes}" != "no" ] && libcdio="--enable-libcdio"
+libdav1d="" ; [ "${DAV1D:-yes}" != "no" ] && libdav1d="--enable-libdav1d"
libssh="" ; [ "${LIBSSH:-yes}" != "no" ] && libssh="--enable-libssh"
libtheora="" ; [ "${THEORA:-yes}" != "no" ] && libtheora="--enable-libtheora"
libv4l2="" ; [ "${V4L2:-yes}" != "no" ] && libv4l2="--enable-libv4l2"
@@ -163,6 +182,10 @@ libvidstab="" ; [ "${VIDSTAB:-yes}" != "no" ] && libvidstab="--enable-libvid
libxml2="" ; [ "${LIBXML2:-yes}" != "no" ] && libxml2="--enable-libxml2"
librsvg="" ; [ "${LIBRSVG:-yes}" != "no" ] && librsvg="--enable-librsvg"
libdrm="" ; [ "${LIBDRM:-yes}" != "no" ] && libdrm="--enable-libdrm"
+vulkan="" ; [ "${VULKAN:-yes}" != "no" ] && vulkan="--enable-vulkan"
+libass="" ; [ "${ASS:-yes}" != "no" ] && libass="--enable-libass"
+libplacebo="" ; [ "${PLACEBO:-yes}" != "no" ] && libplacebo="--enable-libplacebo"
+lcms2="" ; [ "${LCMS2:-yes}" != "no" ] && lcms2="--enable-lcms2"
# No default patent encumbered features:
aac="" ; [ "${AAC:-no}" = "no" ] && aac="--disable-encoder=aac"
@@ -171,7 +194,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -181,9 +204,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Fix linking with flite:
-sed -i "s| -lflite\"| -lflite -lm -lasound\"|" \
- ./configure
+# Restore missing function needed by Chromium and qt-webengine:
+zcat $CWD/add-av_stream_get_first_dts-for-chromium.patch.gz | patch -p1 --verbose || exit 1
+
+# Build against recent Vulkan:
+zcat $CWD/ffmpeg.vulkan.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix ctx memory leak:
+zcat $CWD/250471ea1745fc703eb346a2a662304536a311b1.patch | patch -p1 --verbose || exit 1
+
+# Patch for recent nv-codec-headers:
+zcat $CWD/0004-support-nv-codec-headers-12.2.patch.gz | patch -p1 --verbose || exit 1
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -198,7 +229,6 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-static \
--enable-gpl \
--enable-version3 \
- --enable-avresample \
--arch=$ARCH \
$non_free \
$aac \
@@ -268,7 +298,20 @@ CXXFLAGS="$SLKCFLAGS" \
$libsoxr \
$libsrt \
$libzimg \
- $vapoursynth || exit 1
+ $vapoursynth \
+ $libshaderc \
+ $libgcrypt \
+ $libplacebo \
+ $lcms2 \
+ $gmp \
+ $libaribb24 \
+ $libjxl \
+ $librist \
+ $libshine \
+ $svtav1 \
+ $libmysofa \
+ $libxavs2 \
+ $libvmaf || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/ffmpeg/ffmpeg.vulkan.diff b/source/l/ffmpeg/ffmpeg.vulkan.diff
new file mode 100644
index 000000000..afd963664
--- /dev/null
+++ b/source/l/ffmpeg/ffmpeg.vulkan.diff
@@ -0,0 +1,15 @@
+--- ./configure.orig 2023-03-26 09:21:00.000000000 -0500
++++ ./configure 2023-08-29 13:13:08.176019532 -0500
+@@ -6551,10 +6551,10 @@
+ enabled libfreetype && require_pkg_config libfreetype freetype2 "ft2build.h FT_FREETYPE_H" FT_Init_FreeType
+ enabled libfribidi && require_pkg_config libfribidi fribidi fribidi.h fribidi_version_info
+ enabled libglslang && { check_lib spirv_compiler glslang/Include/glslang_c_interface.h glslang_initialize_process \
+- -lglslang -lMachineIndependent -lOSDependent -lHLSL -lOGLCompiler -lGenericCodeGen \
++ -lglslang -lMachineIndependent -lHLSL -lGenericCodeGen \
+ -lSPVRemapper -lSPIRV -lSPIRV-Tools-opt -lSPIRV-Tools -lpthread -lstdc++ -lm ||
+ require spirv_compiler glslang/Include/glslang_c_interface.h glslang_initialize_process \
+- -lglslang -lOSDependent -lHLSL -lOGLCompiler \
++ -lglslang -lHLSL \
+ -lSPVRemapper -lSPIRV -lSPIRV-Tools-opt -lSPIRV-Tools -lpthread -lstdc++ -lm; }
+ enabled libgme && { check_pkg_config libgme libgme gme/gme.h gme_new_emu ||
+ require libgme gme/gme.h gme_new_emu -lgme -lstdc++; }
diff --git a/source/l/fftw/fftw.SlackBuild b/source/l/fftw/fftw.SlackBuild
index 1fae73a71..9ff6a8500 100755
--- a/source/l/fftw/fftw.SlackBuild
+++ b/source/l/fftw/fftw.SlackBuild
@@ -1,5 +1,5 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=fftw
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 2- -d - | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# Automatically determine the architecture we're building on:
@@ -49,7 +49,7 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM-$VERSION
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-$TMP}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -164,6 +164,34 @@ make install-strip DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Generate the cmake files and install any that are missing:
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DENABLE_OPENMP=ON \
+ -DENABLE_THREADS=ON \
+ -DENABLE_FLOAT=ON \
+ -DENABLE_LONG_DOUBLE=ON \
+ -DENABLE_QUAD_PRECISION=ON \
+ -DENABLE_SSE=ON \
+ -DENABLE_SSE2=ON \
+ -DENABLE_AVX=ON \
+ -DENABLE_AVX2=ON \
+ . || exit 1
+if [ ! -d $PKG/usr/lib${LIBDIRSUFFIX}/cmake/fftw3 ]; then
+ mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/cmake/fftw3
+fi
+for file in FFTW3*cmake ; do
+ if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/cmake/fftw3/$file ]; then
+ echo "Copying cmake file $file:"
+ cp -a --verbose $file $PKG/usr/lib${LIBDIRSUFFIX}/cmake/fftw3
+ fi
+done
+
( cd $PKG/usr/man
find . -type f -exec gzip -9 {} \+
for i in $(find . -type l); do \
diff --git a/source/l/fluidsynth/fluidsynth.SlackBuild b/source/l/fluidsynth/fluidsynth.SlackBuild
index 2cb19551e..da41285a4 100755
--- a/source/l/fluidsynth/fluidsynth.SlackBuild
+++ b/source/l/fluidsynth/fluidsynth.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for fluidsynth
# Copyright 2008-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2021, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -91,8 +91,7 @@ cd build
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX="$LIBDIRSUFFIX" \
- -DDOC_INSTALL_DIR="doc" \
- -DMAN_INSTALL_DIR="man/man1" \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
-Denable-ladspa=ON \
.. || exit 1
diff --git a/source/l/fmt/fmt.SlackBuild b/source/l/fmt/fmt.SlackBuild
new file mode 100755
index 000000000..f73fb1026
--- /dev/null
+++ b/source/l/fmt/fmt.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Copyright 2019-2021 Hunter Sezen California, USA
+# Copyright 2022 Steven Voges <svoges.sbo@gmail.com>
+# Copyright 2022 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=fmt
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
+BUILD=${BUILD:-1}
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+# Automatically determine the architecture we're building on:
+MARCH=$( uname -m )
+if [ -z "$ARCH" ]; then
+ case "$MARCH" in
+ i?86) export ARCH=i586 ;;
+ armv7hl) export ARCH=$MARCH ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$MARCH ;;
+ esac
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-fmt
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf fmt-$VERSION
+tar xvf $CWD/fmt-$VERSION.tar.?z || exit 1
+cd fmt-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_SKIP_RPATH=TRUE \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DFMT_TEST=OFF \
+ ..
+ make $NUMJOBS || make || exit 1
+ make install/strip DESTDIR=$PKG || exit 1
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a CONTRIBUTING.md ChangeLog.rst LICENSE.rst README.rst \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/fmt/fmt.url b/source/l/fmt/fmt.url
new file mode 100644
index 000000000..dacb917b0
--- /dev/null
+++ b/source/l/fmt/fmt.url
@@ -0,0 +1 @@
+https://github.com/fmtlib/fmt
diff --git a/source/l/fmt/slack-desc b/source/l/fmt/slack-desc
new file mode 100644
index 000000000..01b96bb24
--- /dev/null
+++ b/source/l/fmt/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+fmt: fmt (A modern formatting library)
+fmt:
+fmt: {fmt} is an open-source formatting library for C++. It can be used as
+fmt: a safe and fast alternative to (s)printf and iostreams.
+fmt:
+fmt: Homepage: https://fmt.dev/
+fmt:
+fmt:
+fmt:
+fmt:
+fmt:
diff --git a/source/l/freecell-solver/freecell-solver.SlackBuild b/source/l/freecell-solver/freecell-solver.SlackBuild
index 8423498a0..060f9d093 100755
--- a/source/l/freecell-solver/freecell-solver.SlackBuild
+++ b/source/l/freecell-solver/freecell-solver.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=freecell-solver
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/freecell-solver/freecell-solver.url b/source/l/freecell-solver/freecell-solver.url
index 897d13407..f27013454 100644
--- a/source/l/freecell-solver/freecell-solver.url
+++ b/source/l/freecell-solver/freecell-solver.url
@@ -1 +1 @@
-https://fc-solve.shlomifish.org/downloads/fc-solve/
+https://fc-solve.shlomifish.org/download.html
diff --git a/source/l/freetype/6e9d8d314ff6ab23177b9162c0b96616460bb84e.patch b/source/l/freetype/6e9d8d314ff6ab23177b9162c0b96616460bb84e.patch
deleted file mode 100644
index b91780f14..000000000
--- a/source/l/freetype/6e9d8d314ff6ab23177b9162c0b96616460bb84e.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 6e9d8d314ff6ab23177b9162c0b96616460bb84e Mon Sep 17 00:00:00 2001
-From: Alexei Podtelezhnikov <apodtele@gmail.com>
-Date: Fri, 20 Aug 2021 16:01:32 -0400
-Subject: [PATCH] [base] Restore quiet no-op rendering of bitmap glyphs.
-
-Fixes #1076.
-
-* src/base/ftobjs.c (FT_Render_Glyph_Internal): Discard an error when
-rendering a bitmap glyph.
----
- src/base/ftobjs.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
-index 342ac4a27..7b40c6421 100644
---- a/src/base/ftobjs.c
-+++ b/src/base/ftobjs.c
-@@ -4703,7 +4703,7 @@
- else
- renderer = FT_Lookup_Renderer( library, slot->format, &node );
-
-- error = FT_ERR( Unimplemented_Feature );
-+ error = FT_ERR( Cannot_Render_Glyph );
- while ( renderer )
- {
- error = renderer->render( renderer, slot, render_mode, NULL );
-@@ -4719,6 +4719,11 @@
- /* format. */
- renderer = FT_Lookup_Renderer( library, slot->format, &node );
- }
-+
-+ /* it is not an error if we cannot render a bitmat glyph */
-+ if ( FT_ERR_EQ( error, Cannot_Render_Glyph ) &&
-+ slot->format == FT_GLYPH_FORMAT_BITMAP )
-+ error = FT_Err_Ok;
- }
- }
-
---
-GitLab
-
-
diff --git a/source/l/freetype/freetype.SlackBuild b/source/l/freetype/freetype.SlackBuild
index 4c9fdb9cb..1e6b04318 100755
--- a/source/l/freetype/freetype.SlackBuild
+++ b/source/l/freetype/freetype.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=freetype
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -85,15 +85,6 @@ find . \
# http://www.freetype.org/patents.html
#zcat $CWD/freetype.subpixel.rendering.diff.gz | patch -p1 --verbose || exit 1
-# Compile support into the Freetype library for both the Infinality and
-# new 2.7.x (default) subpixel hinting modes. To adjust your preferences
-# (the classic hinting mode is also available), see the freetype profile
-# scripts in /etc/profile.d/.
-zcat $CWD/freetype.compile.both.subpixel.hinting.methods.diff.gz | patch -p1 --verbose || exit 1
-
-# Fix bitmap font rendering:
-zcat $CWD/6e9d8d314ff6ab23177b9162c0b96616460bb84e.patch.gz | patch -p1 --verbose || exit 1
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -151,7 +142,7 @@ cp -a \
ChangeLog LICENSE* README* \
$PKG/usr/doc/freetype-$VERSION
# too much
-rm -rf $PKG/usr/doc/freetype-$VERSION/docs/reference $PKG/usr/doc/freetype-2.11.0/docs/oldlogs
+rm -rf $PKG/usr/doc/freetype-$VERSION/docs/reference $PKG/usr/doc/freetype-$VERSION/docs/oldlogs
# If there's a ChangeLog file, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff b/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff
deleted file mode 100644
index d7a52dbf2..000000000
--- a/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- ./include/freetype/config/ftoption.h.orig 2016-12-11 00:53:49.000000000 -0600
-+++ ./include/freetype/config/ftoption.h 2017-04-26 16:14:07.214503123 -0500
-@@ -675,8 +675,8 @@
- /* [1] http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */
- /* */
- /* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 1 */
--#define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2
--/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 ) */
-+/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2 */
-+#define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 )
-
-
- /*************************************************************************/
diff --git a/source/l/freetype/freetype.csh b/source/l/freetype/freetype.csh
index d39e8e213..ca10b5138 100644
--- a/source/l/freetype/freetype.csh
+++ b/source/l/freetype/freetype.csh
@@ -3,15 +3,11 @@
# for font hinting. Other controllable properties are listed in the section
# 'Controlling FreeType Modules' in the reference's table of contents.
#
-# Three hinting settings are available:
+# Two hinting settings are available:
# This is the classic hinting mode used in Freetype 2.6.x:
#setenv FREETYPE_PROPERTIES "truetype:interpreter-version=35"
-# This is Infinality mode, which was never enabled by default. It is slower
-# than the new subpixel hinting mode, but said to be more accurate:
-#setenv FREETYPE_PROPERTIES "truetype:interpreter-version=38"
-
# This is the new default subpixel hinting mode used in Freetype 2.7.x. It is
# derived from the Infinality code base stripped to the bare minimum with all
# configurability removed in the name of speed and simplicity:
diff --git a/source/l/freetype/freetype.sh b/source/l/freetype/freetype.sh
index e304a9f56..68bfc804e 100644
--- a/source/l/freetype/freetype.sh
+++ b/source/l/freetype/freetype.sh
@@ -3,15 +3,11 @@
# for font hinting. Other controllable properties are listed in the section
# 'Controlling FreeType Modules' in the reference's table of contents.
#
-# Three hinting settings are available:
+# Two hinting settings are available:
# This is the classic hinting mode used in Freetype 2.6.x:
#export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
-# This is Infinality mode, which was never enabled by default. It is slower
-# than the new subpixel hinting mode, but said to be more accurate:
-#export FREETYPE_PROPERTIES="truetype:interpreter-version=38"
-
# This is the new default subpixel hinting mode used in Freetype 2.7.x. It is
# derived from the Infinality code base stripped to the bare minimum with all
# configurability removed in the name of speed and simplicity:
diff --git a/source/l/freetype/freetype.url b/source/l/freetype/freetype.url
new file mode 100644
index 000000000..671229d71
--- /dev/null
+++ b/source/l/freetype/freetype.url
@@ -0,0 +1,3 @@
+#https://download.savannah.gnu.org/releases/freetype/
+#https://gitlab.freedesktop.org/freetype/freetype
+https://sourceforge.net/projects/freetype/files/
diff --git a/source/l/frei0r-plugins/frei0r-plugins.SlackBuild b/source/l/frei0r-plugins/frei0r-plugins.SlackBuild
index 1edc31878..f214929d9 100755
--- a/source/l/frei0r-plugins/frei0r-plugins.SlackBuild
+++ b/source/l/frei0r-plugins/frei0r-plugins.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2017, 2019 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,14 +24,15 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=frei0r-plugins
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+SRCNAM=frei0r
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -75,9 +76,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$VERSION || exit 1
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -98,7 +99,7 @@ cd cmake-build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DWITHOUT_OPENCV=ON \
+ -DWITHOUT_OPENCV=OFF \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -110,15 +111,15 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cu
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- COPYING* NEWS* *.txt \
+ AUTHORS* BUILD* COPYING* ChangeLog README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
-# If there's a ChangeLog.txt, installing at least part of the recent history
+# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog.txt ]; then
+if [ -r ChangeLog ]; then
DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog.txt | head -n 1000 > $DOCSDIR/ChangeLog.txt
- touch -r ChangeLog.txt $DOCSDIR/ChangeLog.txt
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
fi
mkdir -p $PKG/install
diff --git a/source/l/frei0r-plugins/frei0r-plugins.url b/source/l/frei0r-plugins/frei0r-plugins.url
index df2f24cae..0b6de368e 100644
--- a/source/l/frei0r-plugins/frei0r-plugins.url
+++ b/source/l/frei0r-plugins/frei0r-plugins.url
@@ -1 +1,3 @@
-https://files.dyne.org/frei0r
+#https://files.dyne.org/frei0r
+https://github.com/dyne/frei0r
+https://github.com/dyne/frei0r/archive/v2.3.2/frei0r-plugins-2.3.2.tar.gz
diff --git a/source/l/fribidi/fribidi.SlackBuild b/source/l/fribidi/fribidi.SlackBuild
index 3aecd01a5..d479693df 100755
--- a/source/l/fribidi/fribidi.SlackBuild
+++ b/source/l/fribidi/fribidi.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2018, 2021, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=fribidi
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -67,15 +67,21 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf fribidi-$VERSION
-tar xvf $CWD/fribidi-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/fribidi-$VERSION.tar.?z || exit 1
cd fribidi-$VERSION || exit 1
-chown -R root:root .
find . -perm 777 -exec chmod 755 {} \+
find . -perm 775 -exec chmod 755 {} \+
find . -perm 664 -exec chmod 644 {} \+
chown -R root:root .
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure --prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/fribidi/fribidi.url b/source/l/fribidi/fribidi.url
new file mode 100644
index 000000000..deab3e5a8
--- /dev/null
+++ b/source/l/fribidi/fribidi.url
@@ -0,0 +1 @@
+https://github.com/fribidi/fribidi/releases/download/v1.0.14/fribidi-1.0.14.tar.xz
diff --git a/source/l/fuse/fuse.SlackBuild b/source/l/fuse/fuse.SlackBuild
index c5f67f1c2..0f6b50179 100755
--- a/source/l/fuse/fuse.SlackBuild
+++ b/source/l/fuse/fuse.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=fuse
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -79,6 +79,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# patch to build with glibc-2.34 from https://src.fedoraproject.org/rpms/fuse/raw/rawhide/f/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch
+zcat $CWD/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch.gz | patch -Esp1 --verbose || exit 1
+
+autoreconf -vif
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/fuse/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch b/source/l/fuse/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch
new file mode 100644
index 000000000..4cc2f8f6e
--- /dev/null
+++ b/source/l/fuse/fuse2-0007-util-ulockmgr_server.c-conditionally-define-closefro.patch
@@ -0,0 +1,55 @@
+From: Sam James <sam@gentoo.org>
+Date: Sat, 24 Jul 2021 22:02:45 +0100
+Subject: [PATCH] util/ulockmgr_server.c: conditionally define closefrom (fix
+ glibc-2.34+)
+
+closefrom(3) has joined us in glibc-land from *BSD and Solaris. Since
+it's available in glibc 2.34+, we want to detect it and only define our
+fallback if the libc doesn't provide it.
+
+Bug: https://bugs.gentoo.org/803923
+Signed-off-by: Sam James <sam@gentoo.org>
+
+diff --git a/configure.ac b/configure.ac
+index 9946a0e..a2d481a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,6 +55,7 @@ fi
+
+ AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat])
+ AC_CHECK_FUNCS([posix_fallocate])
++AC_CHECK_FUNCS([closefrom])
+ AC_CHECK_MEMBERS([struct stat.st_atim])
+ AC_CHECK_MEMBERS([struct stat.st_atimespec])
+
+diff --git a/util/ulockmgr_server.c b/util/ulockmgr_server.c
+index 273c7d9..a04dac5 100644
+--- a/util/ulockmgr_server.c
++++ b/util/ulockmgr_server.c
+@@ -22,6 +22,10 @@
+ #include <sys/socket.h>
+ #include <sys/wait.h>
+
++#ifdef HAVE_CONFIG_H
++ #include "config.h"
++#endif
++
+ struct message {
+ unsigned intr : 1;
+ unsigned nofd : 1;
+@@ -124,6 +128,7 @@ static int receive_message(int sock, void *buf, size_t buflen, int *fdp,
+ return res;
+ }
+
++#if !defined(HAVE_CLOSEFROM)
+ static int closefrom(int minfd)
+ {
+ DIR *dir = opendir("/proc/self/fd");
+@@ -141,6 +146,7 @@ static int closefrom(int minfd)
+ }
+ return 0;
+ }
++#endif
+
+ static void send_reply(int cfd, struct message *msg)
+ {
diff --git a/source/l/fuse3/fuse.url b/source/l/fuse3/fuse.url
new file mode 100644
index 000000000..de087e9d4
--- /dev/null
+++ b/source/l/fuse3/fuse.url
@@ -0,0 +1 @@
+https://github.com/libfuse/libfuse/releases/download/fuse-3.16.2/fuse-3.16.2.tar.gz
diff --git a/source/l/gamin/0001-Poll-files-on-nfs4.patch b/source/l/gamin/0001-Poll-files-on-nfs4.patch
deleted file mode 100644
index f776732c8..000000000
--- a/source/l/gamin/0001-Poll-files-on-nfs4.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From b92b17ecced6df463da73d6de566740cf5cd00d4 Mon Sep 17 00:00:00 2001
-From: Marek Kasik <mkasik@redhat.com>
-Date: Fri, 1 Feb 2013 15:19:58 +0100
-Subject: [PATCH 1/2] Poll files on nfs4
-
-Add nfs4 among polled filesystems.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=693006
----
- server/gam_fs.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/server/gam_fs.c b/server/gam_fs.c
-index c8ca704..143a603 100644
---- a/server/gam_fs.c
-+++ b/server/gam_fs.c
-@@ -178,6 +178,7 @@ gam_fs_init (void)
- gam_fs_set ("reiserfs", GFS_MT_DEFAULT, 0);
- gam_fs_set ("novfs", GFS_MT_POLL, 30);
- gam_fs_set ("nfs", GFS_MT_POLL, 5);
-+ gam_fs_set ("nfs4", GFS_MT_POLL, 5);
- if (stat("/etc/mtab", &mtab_sbuf) != 0)
- {
- GAM_DEBUG(DEBUG_INFO, "Could not stat /etc/mtab\n");
---
-1.8.1.2
-
diff --git a/source/l/gamin/doinst.sh b/source/l/gamin/doinst.sh
deleted file mode 100644
index 75e3fcba2..000000000
--- a/source/l/gamin/doinst.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-config() {
- NEW="$1"
- OLD="`dirname $NEW`/`basename $NEW .new`"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-config etc/gamin/gaminrc.new
-
diff --git a/source/l/gamin/fix-double-lock-in-inotify-helper-c.patch b/source/l/gamin/fix-double-lock-in-inotify-helper-c.patch
deleted file mode 100644
index 8d2ef2d3f..000000000
--- a/source/l/gamin/fix-double-lock-in-inotify-helper-c.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -rupN gamin-0.1.10/server/inotify-helper.c gamin-0.1.10-new/server/inotify-helper.c
---- gamin-0.1.10/server/inotify-helper.c 2008-11-12 21:45:28.000000000 +0100
-+++ gamin-0.1.10-new/server/inotify-helper.c 2012-02-02 23:11:47.247757385 +0100
-@@ -127,9 +127,6 @@ ih_sub_add (ih_sub_t * sub)
- gboolean
- ih_sub_cancel (ih_sub_t * sub)
- {
-- G_LOCK(inotify_lock);
--
--
- if (!sub->cancelled)
- {
- IH_W("cancelling %s\n", sub->pathname);
-@@ -140,7 +137,6 @@ ih_sub_cancel (ih_sub_t * sub)
- sub_list = g_list_remove (sub_list, sub);
- }
-
-- G_UNLOCK(inotify_lock);
- return TRUE;
- }
-
diff --git a/source/l/gamin/gaminrc b/source/l/gamin/gaminrc
deleted file mode 100644
index 1686dd57e..000000000
--- a/source/l/gamin/gaminrc
+++ /dev/null
@@ -1,37 +0,0 @@
-# configuration for gamin
-# Can be used to override the default behaviour.
-# notify filepath(s) : indicate to use kernel notification
-# poll filepath(s) : indicate to use polling instead
-# fsset fsname method poll_limit : indicate what method of notification for the filesystem
-# kernel - use the kernel for notification
-# poll - use polling for notification
-# none - don't use any notification
-#
-# the poll_limit is the number of seconds
-# that must pass before a resource is polled again.
-# It is optional, and if it is not present the previous
-# value will be used or the default.
-
-#notify /mnt/local* /mnt/pictures* # use kernel notification on these paths
-#poll /tmp/* /var/* # use poll notification on these paths
-
-# A safe default is to poll filesystems once every 15 seconds:
-fsset btrfs poll 15
-fsset cifs poll 15
-fsset ext2 poll 15
-fsset ext3 poll 15
-fsset ext4 poll 15
-fsset hfs poll 15
-fsset hfsplus poll 15
-fsset iso9660 poll 15
-fsset jfs poll 15
-fsset nfs poll 15
-fsset nfs4 poll 15
-fsset ntfs poll 15
-fsset ntfs-3g poll 15
-fsset ocfs2 poll 15
-fsset reiserfs poll 15
-fsset udf poll 15
-fsset vfat poll 15
-fsset xfs poll 15
-
diff --git a/source/l/gamin/no_g_const_return.patch b/source/l/gamin/no_g_const_return.patch
deleted file mode 100644
index f8430a79b..000000000
--- a/source/l/gamin/no_g_const_return.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- ./server/gam_node.h.orig 2007-07-04 15:36:49.000000000 +0200
-+++ ./server/gam_node.h 2011-08-26 01:49:59.504423790 +0200
-@@ -58,7 +58,7 @@
- void gam_node_set_is_dir (GamNode *node,
- gboolean is_dir);
-
--G_CONST_RETURN char *gam_node_get_path (GamNode *node);
-+const char *gam_node_get_path (GamNode *node);
-
- GList *gam_node_get_subscriptions (GamNode *node);
-
---- ./server/gam_subscription.h.orig 2007-07-04 15:36:49.000000000 +0200
-+++ ./server/gam_subscription.h 2011-08-26 01:49:59.504423790 +0200
-@@ -21,7 +21,7 @@
-
- int gam_subscription_get_reqno (GamSubscription *sub);
-
--G_CONST_RETURN char *gam_subscription_get_path (GamSubscription *sub);
-+const char *gam_subscription_get_path (GamSubscription *sub);
-
- GamListener *gam_subscription_get_listener (GamSubscription *sub);
-
---- ./server/gam_node.c.orig 2007-07-04 15:36:49.000000000 +0200
-+++ ./server/gam_node.c 2011-08-26 01:49:59.504423790 +0200
-@@ -122,7 +122,7 @@
- * it has finished with the string. If it must keep it longer, it
- * should makes its own copy. The returned string must not be freed.
- */
--G_CONST_RETURN char *
-+const char *
- gam_node_get_path(GamNode * node)
- {
- g_assert(node);
---- ./server/gam_subscription.c.orig 2007-07-04 15:36:49.000000000 +0200
-+++ ./server/gam_subscription.c 2011-08-26 01:49:59.504423790 +0200
-@@ -141,7 +141,7 @@
- * @param sub the GamSubscription
- * @returns The path being monitored. It should not be freed.
- */
--G_CONST_RETURN char *
-+const char *
- gam_subscription_get_path(GamSubscription * sub)
- {
- if (sub == NULL)
diff --git a/source/l/gc/gc.SlackBuild b/source/l/gc/gc.SlackBuild
index 112e44475..b2a0a9f22 100755
--- a/source/l/gc/gc.SlackBuild
+++ b/source/l/gc/gc.SlackBuild
@@ -25,9 +25,9 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
-LAO_VERSION="7.6.10" # libatomic_ops version
+LAO_VERSION="7.8.2" # libatomic_ops version
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -74,6 +74,7 @@ tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION 2> /dev/null || cd $PKGNAM-$(echo $VERSION | cut -b 1-3) || exit 1
tar xvf $CWD/libatomic_ops-$LAO_VERSION.tar.?z || exit 1
mv libatomic_ops-$LAO_VERSION libatomic_ops
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -83,7 +84,7 @@ find . \
sed -i 's#pkgdata#doc#' doc/doc.am
sed -i 's#pkgdata#doc#' libatomic_ops/Makefile.am
-sed -i 's#pkgdata#doc#' libatomic_ops/doc/Makefile.am
+#sed -i 's#pkgdata#doc#' libatomic_ops/doc/Makefile.am
autoreconf -vif
automake --add-missing
diff --git a/source/l/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch b/source/l/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch
new file mode 100644
index 000000000..548368b7b
--- /dev/null
+++ b/source/l/gcr/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch
@@ -0,0 +1,59 @@
+From b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8 Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Wed, 12 Jan 2022 00:24:20 +0100
+Subject: [PATCH] meson: Fix unknown kw argument in gnome.generate_gir
+
+This argument has been removed in Meson 0.61.0:
+
+ gck/meson.build:130:2: ERROR: gnome.generate_gir got unknown keyword arguments "packages"
+
+https://github.com/mesonbuild/meson/commit/f8fc5cb860465718fe7c79a1bf1fe00659f138de:
+
+> The packages argument to gnome.generate_gir was allowed, but never did anything, so stop passing it.
+
+Fixes #89
+---
+ gck/meson.build | 1 -
+ gcr/meson.build | 1 -
+ ui/meson.build | 1 -
+ 3 files changed, 3 deletions(-)
+
+diff --git a/gck/meson.build b/gck/meson.build
+index 756b4866..a21a1e9d 100644
+--- a/gck/meson.build
++++ b/gck/meson.build
+@@ -131,7 +131,6 @@ if get_option('introspection')
+ sources: gck_gir_sources,
+ namespace: 'Gck',
+ nsversion: '@0@'.format(gck_major_version),
+- packages: gck_deps,
+ export_packages: 'gck-@0@'.format(gck_major_version),
+ includes: [ 'GObject-2.0', 'Gio-2.0' ],
+ header: 'gck/gck.h',
+diff --git a/gcr/meson.build b/gcr/meson.build
+index 2233a445..c83641ba 100644
+--- a/gcr/meson.build
++++ b/gcr/meson.build
+@@ -190,7 +190,6 @@ if get_option('introspection')
+ sources: [ gcr_base_public_sources, gcr_base_headers ],
+ namespace: 'Gcr',
+ nsversion: '@0@'.format(gcr_major_version),
+- packages: gcr_base_deps,
+ export_packages: 'gcr-base-@0@'.format(gcr_major_version),
+ includes: [
+ 'GObject-2.0',
+diff --git a/ui/meson.build b/ui/meson.build
+index e656ea23..32ee057f 100644
+--- a/ui/meson.build
++++ b/ui/meson.build
+@@ -152,7 +152,6 @@ if get_option('introspection')
+ export_packages: 'gcr-ui-@0@'.format(gcr_major_version),
+ identifier_prefix: 'Gcr',
+ symbol_prefix: 'gcr',
+- packages: gcr_ui_deps,
+ includes: [
+ 'GObject-2.0',
+ 'Gio-2.0',
+--
+GitLab
+
diff --git a/source/l/gcr/gcr.SlackBuild b/source/l/gcr/gcr.SlackBuild
index 857116c79..7325aa2c5 100755
--- a/source/l/gcr/gcr.SlackBuild
+++ b/source/l/gcr/gcr.SlackBuild
@@ -1,8 +1,7 @@
#!/bin/bash
-# Slackware build script for gcr
-
# Copyright 2012 Robby Workman, Northport, Alabama, USA
+# Copyright 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gcr
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -80,6 +79,9 @@ find . \
# meson.
zcat $CWD/gcr.meson.disable.schemas-compile.update-mime.update-icon-cache.diff.gz | patch -p1 --verbose || exit 1
+# Fix for recent meson:
+zcat $CWD/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch.gz | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
diff --git a/source/l/gcr4/doinst.sh b/source/l/gcr4/doinst.sh
new file mode 100644
index 000000000..e9e235924
--- /dev/null
+++ b/source/l/gcr4/doinst.sh
@@ -0,0 +1,20 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x usr/bin/gtk-update-icon-cache ]; then
+ chroot . /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
+
diff --git a/source/l/gcr4/gcr4.SlackBuild b/source/l/gcr4/gcr4.SlackBuild
new file mode 100755
index 000000000..52593278f
--- /dev/null
+++ b/source/l/gcr4/gcr4.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright 2012 Robby Workman, Northport, Alabama, USA
+# Copyright 2022, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=gcr4
+SRCNAM=gcr
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dintrospection=true \
+ -Dgtk4=true \
+ -Dgtk_doc=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* HACKING INSTALL NEWS README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/gcr4/slack-desc b/source/l/gcr4/slack-desc
new file mode 100644
index 000000000..2119f5ee6
--- /dev/null
+++ b/source/l/gcr4/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gcr4: gcr4 (crypto library and ui for gnome-keyring)
+gcr4:
+gcr4: GCR is a library for displaying certificates and crypto UI accessing
+gcr4: key stores. It also provides the viewer for crypto files on the GNOME
+gcr4: desktop.
+gcr4:
+gcr4: GCK is a library for accessing PKCS#11 modules like smart cards, in a
+gcr4: (G)object oriented way.
+gcr4:
+gcr4:
+gcr4:
diff --git a/source/l/gd/gd.SlackBuild b/source/l/gd/gd.SlackBuild
index 2f11fd5d2..ca3b7a8a0 100755
--- a/source/l/gd/gd.SlackBuild
+++ b/source/l/gd/gd.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gd
VERSION=${VERSION:-$(echo libgd-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -79,6 +79,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Restore macros used by PHP:
+zcat $CWD/gd.f4bc1f5c26925548662946ed7cfa473c190a104a.patch.gz | patch -p1 --verbose || exit
+
#./bootstrap.sh
# Configure:
diff --git a/source/l/gd/gd.f4bc1f5c26925548662946ed7cfa473c190a104a.patch b/source/l/gd/gd.f4bc1f5c26925548662946ed7cfa473c190a104a.patch
new file mode 100644
index 000000000..b377bd761
--- /dev/null
+++ b/source/l/gd/gd.f4bc1f5c26925548662946ed7cfa473c190a104a.patch
@@ -0,0 +1,28 @@
+From f4bc1f5c26925548662946ed7cfa473c190a104a Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Mon, 13 Sep 2021 14:57:52 +0200
+Subject: [PATCH] Revert "Fix #318, these macros are not used as planed, we
+ have separate functions for each"
+
+This reverts commit bdc281eadb1d58d5c0c7bbc1125ee4674256df08.
+---
+ src/gd.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/gd.h b/src/gd.h
+index 30560395..1ad9e637 100644
+--- a/src/gd.h
++++ b/src/gd.h
+@@ -1604,6 +1604,11 @@ BGD_DECLARE(void) gdImageFlipHorizontal(gdImagePtr im);
+ BGD_DECLARE(void) gdImageFlipVertical(gdImagePtr im);
+ BGD_DECLARE(void) gdImageFlipBoth(gdImagePtr im);
+
++#define GD_FLIP_HORINZONTAL 1 /* typo, kept for BC */
++#define GD_FLIP_HORIZONTAL 1
++#define GD_FLIP_VERTICAL 2
++#define GD_FLIP_BOTH 3
++
+ /**
+ * Group: Crop
+ *
+
diff --git a/source/l/gdbm/gdbm.SlackBuild b/source/l/gdbm/gdbm.SlackBuild
index 8c78f0e0c..1a446bda5 100755
--- a/source/l/gdbm/gdbm.SlackBuild
+++ b/source/l/gdbm/gdbm.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gdbm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -86,6 +86,7 @@ CFLAGS="$SLKCFLAGS" \
--infodir=/usr/info \
--mandir=/usr/man \
--disable-static \
+ --enable-libgdbm-compat \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -95,13 +96,6 @@ make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-# I'm not sure what out there would need the "libgdbm_compat" library,
-# but it causes versions of ndbm.h and dbm.h to be installed that break
-# compiling nearly everything with any dbm support (like python's dbm.so,
-# and mod_ssl). Putting 'em in /usr/include/gdbm/ doesn't isolate them
-# enough, either. File this one under "not worth it".
-#make install-compat INSTALL_ROOT=$PKG
-
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gdk-pixbuf2-xlib/gdk-pixbuf2-xlib.SlackBuild b/source/l/gdk-pixbuf2-xlib/gdk-pixbuf2-xlib.SlackBuild
index 4f365d906..a7a37f5c9 100755
--- a/source/l/gdk-pixbuf2-xlib/gdk-pixbuf2-xlib.SlackBuild
+++ b/source/l/gdk-pixbuf2-xlib/gdk-pixbuf2-xlib.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gdk-pixbuf2-xlib
SRCNAM=gdk-pixbuf-xlib
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -95,10 +95,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
- -Ddocs=true \
- -Dgir=true \
- -Dx11=true \
- -Dinstalled_tests=false \
+ -Dgtk_doc=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
index 08bf9a8c4..59032f628 100755
--- a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
+++ b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gdk-pixbuf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -95,9 +95,9 @@ meson setup \
--localstatedir=/var \
--buildtype=release \
-Dgtk_doc=false \
- -Dgir=true \
- -Dx11=true \
+ -Dtests=false \
-Dinstalled_tests=false \
+ -Dothers=enabled \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/gegl/gegl.SlackBuild b/source/l/gegl/gegl.SlackBuild
index 673123432..c9866cfd1 100755
--- a/source/l/gegl/gegl.SlackBuild
+++ b/source/l/gegl/gegl.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2008, 2009 Robby Workman, Northport, Alabama, USA
+# Copyright 2008, 2009, 2024 Robby Workman, Northport, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -99,6 +99,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dgi-docgen=disabled \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/gexiv2/gexiv2.SlackBuild b/source/l/gexiv2/gexiv2.SlackBuild
index 2e1d0862b..4a5c4a76f 100755
--- a/source/l/gexiv2/gexiv2.SlackBuild
+++ b/source/l/gexiv2/gexiv2.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gexiv2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/taglib-extras/taglib-extras.SlackBuild b/source/l/gi-docgen/gi-docgen.SlackBuild
index 8093fdeaf..4e1156e30 100755
--- a/source/l/taglib-extras/taglib-extras.SlackBuild
+++ b/source/l/gi-docgen/gi-docgen.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2009, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=taglib-extras
-VERSION=${VERSION:-1.0.1}
-BUILD=${BUILD:-4}
+PKGNAM=gi-docgen
+VERSION=${VERSION:-$(echo gi-docgen-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -44,8 +44,6 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -60,52 +58,45 @@ else
LIBDIRSUFFIX=""
fi
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
TMP=${TMP:-/tmp}
-PKG=/tmp/package-taglib-extras
+PKG=$TMP/package-$PKGNAM
rm -rf $PKG
-mkdir -p $TMP $PKG
+mkdir -p $TMP $PKG/usr
cd $TMP
-rm -rf taglib-extras
-tar xvf $CWD/taglib-extras-$VERSION.tar.?z* || exit 1
-cd taglib-extras-${VERSION} || exit 1
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
+ -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-
-zcat $CWD/taglib-extras-0.1-multilib-1.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/taglib-extras-1.0.1-taglib_ver.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/taglib-extras-1.0.1-version.patch.gz | patch -p1 --verbose || exit 1
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DMAN_INSTALL_DIR=/usr/man \
- -DSYSCONF_INSTALL_DIR=/etc/kde \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- .. || exit 1
- make $NUMJOBS || make || exit 1
- make install DESTDIR=$PKG || exit 1
-cd -
+ -exec chmod 644 {} \;
+
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mv $PKG/usr/share/man $PKG/usr/
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mkdir -p $PKG/usr/doc/taglib-extras-$VERSION
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* \
- $PKG/usr/doc/taglib-extras-$VERSION
+ *.md *.rst LICENSES PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/taglib-extras-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n --prepend $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/gi-docgen/gi-docgen.url b/source/l/gi-docgen/gi-docgen.url
new file mode 100644
index 000000000..c98628d4d
--- /dev/null
+++ b/source/l/gi-docgen/gi-docgen.url
@@ -0,0 +1 @@
+https://download.gnome.org/sources/gi-docgen/
diff --git a/source/l/gi-docgen/slack-desc b/source/l/gi-docgen/slack-desc
new file mode 100644
index 000000000..af9751042
--- /dev/null
+++ b/source/l/gi-docgen/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gi-docgen: gi-docgen (Document generator for GObject-based libraries)
+gi-docgen:
+gi-docgen: GI-DocGen is a document generator for GObject-based libraries.
+gi-docgen: GObject is the base type system of the GNOME project. GI-Docgen
+gi-docgen: reuses the introspection data generated by GObject-based libraries
+gi-docgen: to generate the API reference of these libraries, as well as other
+gi-docgen: ancillary documentation.
+gi-docgen:
+gi-docgen: Homepage: https://gnome.pages.gitlab.gnome.org/gi-docgen/
+gi-docgen:
+gi-docgen:
diff --git a/source/l/giflib/giflib.GifQuantizeBuffer.diff b/source/l/giflib/giflib.GifQuantizeBuffer.diff
index e79b4278f..b9f233770 100644
--- a/source/l/giflib/giflib.GifQuantizeBuffer.diff
+++ b/source/l/giflib/giflib.GifQuantizeBuffer.diff
@@ -1,13 +1,16 @@
---- ./Makefile.orig 2019-03-28 13:57:23.000000000 -0500
-+++ ./Makefile 2019-04-15 13:39:08.565931109 -0500
-@@ -67,8 +67,8 @@
+--- ./Makefile.orig 2024-02-18 19:01:50.000000000 -0600
++++ ./Makefile 2024-03-04 12:47:11.902036930 -0600
+@@ -95,11 +95,11 @@
$(UTILS):: libgif.a libutil.a
--libgif.so: $(OBJECTS) $(HEADERS)
-- $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS)
-+libgif.so: $(OBJECTS) $(HEADERS) $(UOBJECTS)
-+ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS) $(UOBJECTS)
+-$(LIBGIFSO): $(OBJECTS) $(HEADERS)
++$(LIBGIFSO): $(OBJECTS) $(UOBJECTS) $(HEADERS)
+ ifeq ($(UNAME), Darwin)
+ $(CC) $(CFLAGS) -dynamiclib -current_version $(LIBVER) $(OBJECTS) -o $(LIBGIFSO)
+ else
+- $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBGIFSOMAJOR) -o $(LIBGIFSO) $(OBJECTS)
++ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,$(LIBGIFSOMAJOR) -o $(LIBGIFSO) $(OBJECTS) $(UOBJECTS)
+ endif
libgif.a: $(OBJECTS) $(HEADERS)
- $(AR) rcs libgif.a $(OBJECTS)
diff --git a/source/l/giflib/giflib.SlackBuild b/source/l/giflib/giflib.SlackBuild
index c8883db35..cfdcf2318 100755
--- a/source/l/giflib/giflib.SlackBuild
+++ b/source/l/giflib/giflib.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=giflib
VERSION=${VERSION:-$(echo giflib-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/gjs/gjs.SlackBuild b/source/l/gjs/gjs.SlackBuild
index 3786e79de..8b3c5d146 100755
--- a/source/l/gjs/gjs.SlackBuild
+++ b/source/l/gjs/gjs.SlackBuild
@@ -1,8 +1,6 @@
#!/bin/sh
#
-# Slackware build script for gjs
-#
-# Copyright 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -85,7 +83,8 @@ export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
mkdir meson-build
cd meson-build
-meson setup \
+# Use "unshare -n" to avoid downloading sysprof:
+unshare -n meson setup \
--prefix=/usr \
--libdir=lib${LIBDIRSUFFIX} \
--libexecdir=/usr/libexec \
@@ -97,14 +96,12 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dinstalled_tests=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/glade/glade.SlackBuild b/source/l/glade/glade.SlackBuild
index c47e1cf1e..cda119f2a 100755
--- a/source/l/glade/glade.SlackBuild
+++ b/source/l/glade/glade.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for glade
-
# Copyright 2011, 2020 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2022 Patrick J. Volkerding, Sebeka, MN, USA
+#
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=glade
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -79,9 +79,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Well, this is dumb:
-sed -i "s,python-3.8-embed,python-3.9-embed," meson.build
-
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
@@ -100,6 +97,7 @@ meson setup \
--localstatedir=/var \
--buildtype=release \
-Dgladeui=true \
+ -Dgtk_doc=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/glib2/glib2.SlackBuild b/source/l/glib2/glib2.SlackBuild
index 6beafe56d..83bb0ba32 100755
--- a/source/l/glib2/glib2.SlackBuild
+++ b/source/l/glib2/glib2.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2017, 2018, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=glib2
VERSION=${VERSION:-$(echo glib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -95,22 +95,23 @@ meson setup \
--localstatedir=/var \
--buildtype=release \
-Dselinux=disabled \
- -Dfam=false \
- -Dman=true \
- -Dgtk_doc=true \
+ -Dman-pages=enabled \
+ -Ddocumentation=false \
-Dinstalled_tests=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-
# Since meson isn't listening to options:
rm -rf $PKG/usr/libexec/installed-tests
rmdir $PKG/usr/libexec
+# Relocate some docs:
+mkdir -p $PKG/usr/doc/glib-$VERSION
+mv $PKG/usr/share/doc/glib-2.0 $PKG/usr/doc/glib-$VERSION
+rmdir $PKG/usr/share/doc
+
# Install profile scripts:
mkdir -p $PKG/etc/profile.d/
cp -a $CWD/libglib2.{csh,sh} $PKG/etc/profile.d/
@@ -137,9 +138,9 @@ if [ -d $PKG/usr/man ]; then
)
fi
-mkdir -p $PKG/usr/doc/glib-$VERSION
+mkdir -p $PKG/usr/doc/glib-$VERSION/LICENSES
cp -a \
- AUTHORS COPYING* NEWS README* \
+ AUTHORS COPYING* LICENSES NEWS README* \
$PKG/usr/doc/glib-$VERSION
rm -f $PKG/usr/doc/glib-$VERSION/README.{in,win32}
diff --git a/source/l/glibc/doinst.sh-aaa_glibc-solibs b/source/l/glibc/doinst.sh-aaa_glibc-solibs
index d5fea2e5f..fe8fc1f37 100644
--- a/source/l/glibc/doinst.sh-aaa_glibc-solibs
+++ b/source/l/glibc/doinst.sh-aaa_glibc-solibs
@@ -72,6 +72,8 @@ if [ -x /sbin/ldconfig -a -d lib/incoming ]; then # swap on the fly
rm -f $LIBRARY
done
done
+ # Remove stale versions of libcrypt from Slackware 14.2 or newer:
+ rm -f libcrypt-{2.23,2.24,2.25,2.26,2.27,2.28,2.29,2.30,2.31,2.32,2.33,2.34,2.35,2.36,2.37}.so
)
fi
# Finally, rename them and clean up:
@@ -136,7 +138,9 @@ if [ ! -x /sbin/ldconfig ]; then
( cd lib ; rm -rf libanl.so.1 )
( cd lib ; ln -sf libanl-@@VERSION@@.so libanl.so.1 )
( cd lib ; rm -rf libcrypt.so.1 )
-( cd lib ; ln -sf libcrypt-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; ln -sf libcrypt1-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; rm -rf libcrypt.so.2 )
+( cd lib ; ln -sf libcrypt2-@@VERSION@@.so libcrypt.so.2 )
( cd lib ; rm -rf libBrokenLocale.so.1 )
( cd lib ; ln -sf libBrokenLocale-@@VERSION@@.so libBrokenLocale.so.1 )
( cd lib ; rm -rf ld-linux.so.2 )
@@ -152,4 +156,3 @@ if [ ! -x /sbin/ldconfig ]; then
( cd lib ; rm -rf librt.so.1 )
( cd lib ; ln -sf librt-@@VERSION@@.so librt.so.1 )
fi
-
diff --git a/source/l/glibc/doinst.sh-glibc b/source/l/glibc/doinst.sh-glibc
index 2ed07ad03..5fa7d2f86 100644
--- a/source/l/glibc/doinst.sh-glibc
+++ b/source/l/glibc/doinst.sh-glibc
@@ -72,6 +72,8 @@ if [ -x /sbin/ldconfig -a -d lib/incoming ]; then # swap on the fly
rm -f $LIBRARY
done
done
+ # Remove stale versions of libcrypt from Slackware 14.2 or newer:
+ rm -f libcrypt-{2.23,2.24,2.25,2.26,2.27,2.28,2.29,2.30,2.31,2.32,2.33,2.34,2.35,2.36,2.37}.so
)
fi
# Finally, rename them and clean up:
@@ -138,7 +140,9 @@ if [ ! -x /sbin/ldconfig ]; then
( cd lib ; rm -rf libanl.so.1 )
( cd lib ; ln -sf libanl-@@VERSION@@.so libanl.so.1 )
( cd lib ; rm -rf libcrypt.so.1 )
-( cd lib ; ln -sf libcrypt-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; ln -sf libcrypt1-@@VERSION@@.so libcrypt.so.1 )
+( cd lib ; rm -rf libcrypt.so.2 )
+( cd lib ; ln -sf libcrypt2-@@VERSION@@.so libcrypt.so.2 )
( cd lib ; rm -rf libBrokenLocale.so.1 )
( cd lib ; ln -sf libBrokenLocale-@@VERSION@@.so libBrokenLocale.so.1 )
( cd lib ; rm -rf ld-linux.so.2 )
diff --git a/source/l/glibc/glibc-c-utf8-locale.patch b/source/l/glibc/glibc-c-utf8-locale.patch
deleted file mode 100644
index 7fabf303f..000000000
--- a/source/l/glibc/glibc-c-utf8-locale.patch
+++ /dev/null
@@ -1,270 +0,0 @@
-From 2eda7b462b415105f5a05c1323372d4e39d46439 Mon Sep 17 00:00:00 2001
-From: Mike FABIAN <mfabian@redhat.com>
-Date: Mon, 10 Aug 2015 15:58:12 +0200
-Subject: [PATCH] Add a C.UTF-8 locale
-
----
- localedata/SUPPORTED | 1 +
- localedata/locales/C | 238 +++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 239 insertions(+)
- create mode 100644 localedata/locales/C
-
-diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
-index 8ca023e..2a78391 100644
---- a/localedata/SUPPORTED
-+++ b/localedata/SUPPORTED
-@@ -1,6 +1,7 @@
- # This file names the currently supported and somewhat tested locales.
- # If you have any additions please file a glibc bug report.
- SUPPORTED-LOCALES=\
-+C.UTF-8/UTF-8 \
- aa_DJ.UTF-8/UTF-8 \
- aa_DJ/ISO-8859-1 \
- aa_ER/UTF-8 \
-diff --git a/localedata/locales/C b/localedata/locales/C
-new file mode 100644
-index 0000000..fdf460e
---- /dev/null
-+++ b/localedata/locales/C
-@@ -0,0 +1,238 @@
-+escape_char /
-+comment_char %
-+% Locale for C locale in UTF-8
-+
-+LC_IDENTIFICATION
-+title "C locale"
-+source ""
-+address ""
-+contact ""
-+email "mfabian@redhat.com"
-+tel ""
-+fax ""
-+language "C"
-+territory ""
-+revision "1.0"
-+date "2015-08-10"
-+%
-+category "i18n:2012";LC_IDENTIFICATION
-+category "i18n:2012";LC_CTYPE
-+category "i18n:2012";LC_COLLATE
-+category "i18n:2012";LC_TIME
-+category "i18n:2012";LC_NUMERIC
-+category "i18n:2012";LC_MONETARY
-+category "i18n:2012";LC_MESSAGES
-+category "i18n:2012";LC_PAPER
-+category "i18n:2012";LC_NAME
-+category "i18n:2012";LC_ADDRESS
-+category "i18n:2012";LC_TELEPHONE
-+category "i18n:2012";LC_MEASUREMENT
-+END LC_IDENTIFICATION
-+
-+LC_CTYPE
-+copy "i18n"
-+
-+translit_start
-+include "translit_combining";""
-+translit_end
-+
-+END LC_CTYPE
-+
-+LC_COLLATE
-+order_start forward
-+<U0000>
-+..
-+<UFFFF>
-+<U10000>
-+..
-+<U1FFFF>
-+<U20000>
-+..
-+<U2FFFF>
-+<UE0000>
-+..
-+<UEFFFF>
-+<UF0000>
-+..
-+<UFFFFF>
-+<U100000>
-+..
-+<U10FFFF>
-+UNDEFINED
-+order_end
-+END LC_COLLATE
-+
-+LC_MONETARY
-+% This is the 14652 i18n fdcc-set definition for
-+% the LC_MONETARY category
-+% (except for the int_curr_symbol and currency_symbol, they are empty in
-+% the 14652 i18n fdcc-set definition and also empty in
-+% glibc/locale/C-monetary.c. But localedef complains in that case).
-+%
-+% Using "USD" for int_curr_symbol. But maybe "XXX" would be better?
-+% XXX is "No currency" (https://en.wikipedia.org/wiki/ISO_4217)
-+int_curr_symbol "<U0055><U0053><U0044><U0020>"
-+% Using "$" for currency_symbol. But maybe <U00A4> would be better?
-+% U+00A4 is the "generic currency symbol"
-+% (https://en.wikipedia.org/wiki/Currency_sign_%28typography%29)
-+currency_symbol "<U0024>"
-+mon_decimal_point "<U002E>"
-+mon_thousands_sep ""
-+mon_grouping -1
-+positive_sign ""
-+negative_sign "<U002D>"
-+int_frac_digits -1
-+frac_digits -1
-+p_cs_precedes -1
-+int_p_sep_by_space -1
-+p_sep_by_space -1
-+n_cs_precedes -1
-+int_n_sep_by_space -1
-+n_sep_by_space -1
-+p_sign_posn -1
-+n_sign_posn -1
-+%
-+END LC_MONETARY
-+
-+LC_NUMERIC
-+% This is the POSIX Locale definition for
-+% the LC_NUMERIC category.
-+%
-+decimal_point "<U002E>"
-+thousands_sep ""
-+grouping -1
-+END LC_NUMERIC
-+
-+LC_TIME
-+% This is the POSIX Locale definition for
-+% the LC_TIME category.
-+%
-+% Abbreviated weekday names (%a)
-+abday "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/
-+ "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
-+ "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
-+ "<U0053><U0061><U0074>"
-+
-+% Full weekday names (%A)
-+day "<U0053><U0075><U006E><U0064><U0061><U0079>";/
-+ "<U004D><U006F><U006E><U0064><U0061><U0079>";/
-+ "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/
-+ "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
-+ "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/
-+ "<U0046><U0072><U0069><U0064><U0061><U0079>";/
-+ "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
-+
-+% Abbreviated month names (%b)
-+abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
-+ "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
-+ "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
-+ "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
-+ "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
-+ "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
-+
-+% Full month names (%B)
-+mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/
-+ "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
-+ "<U004D><U0061><U0072><U0063><U0068>";/
-+ "<U0041><U0070><U0072><U0069><U006C>";/
-+ "<U004D><U0061><U0079>";/
-+ "<U004A><U0075><U006E><U0065>";/
-+ "<U004A><U0075><U006C><U0079>";/
-+ "<U0041><U0075><U0067><U0075><U0073><U0074>";/
-+ "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
-+ "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
-+ "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
-+ "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
-+
-+% Week description, consists of three fields:
-+% 1. Number of days in a week.
-+% 2. Gregorian date that is a first weekday (19971130 for Sunday, 19971201 for Monday).
-+% 3. The weekday number to be contained in the first week of the year.
-+%
-+% ISO 8601 conforming applications should use the values 7, 19971201 (a
-+% Monday), and 4 (Thursday), respectively.
-+week 7;19971201;4
-+first_weekday 1
-+first_workday 1
-+
-+% Appropriate date and time representation (%c)
-+% "%a %b %e %H:%M:%S %Y"
-+d_t_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0059>"
-+
-+% Appropriate date representation (%x)
-+% "%m/%d/%y"
-+d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0079>"
-+
-+% Appropriate time representation (%X)
-+% "%H:%M:%S"
-+t_fmt "<U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053>"
-+
-+% Appropriate AM/PM time representation (%r)
-+% "%I:%M:%S %p"
-+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
-+
-+% Equivalent of AM/PM (%p) "AM"/"PM"
-+%
-+am_pm "<U0041><U004D>";"<U0050><U004D>"
-+
-+% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y"
-+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
-+END LC_TIME
-+
-+LC_MESSAGES
-+% This is the POSIX Locale definition for
-+% the LC_NUMERIC category.
-+%
-+yesexpr "<U005E><U005B><U0079><U0059><U005D>"
-+noexpr "<U005E><U005B><U006E><U004E><U005D>"
-+yesstr "<U0059><U0065><U0073>"
-+nostr "<U004E><U006F>"
-+END LC_MESSAGES
-+
-+LC_PAPER
-+% This is the ISO/IEC 14652 "i18n" definition for
-+% the LC_PAPER category.
-+% (A4 paper, this is also used in the built in C/POSIX
-+% locale in glibc/locale/C-paper.c)
-+height 297
-+width 210
-+END LC_PAPER
-+
-+LC_NAME
-+% This is the ISO/IEC 14652 "i18n" definition for
-+% the LC_NAME category.
-+% "%p%t%g%t%m%t%f"
-+% (also used in the built in C/POSIX locale in glibc/locale/C-name.c)
-+name_fmt "<U0025><U0070><U0025><U0074><U0025><U0067><U0025><U0074>/
-+<U0025><U006D><U0025><U0074><U0025><U0066>"
-+END LC_NAME
-+
-+LC_ADDRESS
-+% This is the ISO/IEC 14652 "i18n" definition for
-+% the LC_ADDRESS category.
-+% "%a%N%f%N%d%N%b%N%s %h %e %r%N%C-%z %T%N%c%N"
-+% (also used in the built in C/POSIX locale in glibc/locale/C-address.c)
-+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
-+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
-+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
-+<U004E><U0025><U0043><U002D><U0025><U007A><U0020><U0025><U0054><U0025>/
-+<U004E><U0025><U0063><U0025><U004E>"
-+END LC_ADDRESS
-+
-+LC_TELEPHONE
-+% This is the ISO/IEC 14652 "i18n" definition for
-+% the LC_TELEPHONE category.
-+% "+%c %a %l"
-+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
-+<U006C>"
-+% (also used in the built in C/POSIX locale in glibc/locale/C-telephone.c)
-+END LC_TELEPHONE
-+
-+LC_MEASUREMENT
-+% This is the ISO/IEC 14652 "i18n" definition for
-+% the LC_MEASUREMENT category.
-+% (same as in the built in C/POSIX locale in glibc/locale/C-measurement.c)
-+%metric
-+measurement 1
-+END LC_MEASUREMENT
-+
---
-2.4.3
-
diff --git a/source/l/glibc/glibc.SlackBuild b/source/l/glibc/glibc.SlackBuild
index d0f49b5c6..d226405b7 100755
--- a/source/l/glibc/glibc.SlackBuild
+++ b/source/l/glibc/glibc.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=glibc
VERSION=${VERSION:-$(echo glibc-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
CHECKOUT=${CHECKOUT:-""}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-2}
# I was considering disabling NSCD, but MoZes talked me out of it. :)
#DISABLE_NSCD=" --disable-nscd "
@@ -151,8 +151,6 @@ apply_patches() {
zcat $CWD/glibc.locale.no-archive.diff.gz | patch -p1 --verbose || exit 1
# Support ru_RU.CP1251 locale:
zcat $CWD/glibc.ru_RU.CP1251.diff.gz | patch -p1 --verbose || exit 1
- # Add a C.UTF-8 locale:
- zcat $CWD/glibc-c-utf8-locale.patch.gz | patch -p1 --verbose || exit 1
# Don't use AM/PM format for date(1). That's just plain crazy.
zcat $CWD/glibc-2.32.en_US.no.am.pm.date.format.diff.gz | patch -p1 --verbose || exit 1
# Other regression fixes from git:
@@ -196,10 +194,10 @@ mkdir -p $PKG/var/run/nscd
# Begin extract/compile:
cd $TMP
rm -rf glibc-$CVSVER
-tar xvf $CWD/glibc-$CVSVER.tar.xz \
- || tar xvf $CWD/glibc-$CVSVER.tar.lz \
- || tar xvf $CWD/glibc-$CVSVER.tar.bz2 \
- || tar xvf $CWD/glibc-$CVSVER.tar.gz
+echo "Extracting $CWD/glibc-$CVSVER.tar.?z..."
+tar xf $CWD/glibc-$CVSVER.tar.xz \
+ || tar xf $CWD/glibc-$CVSVER.tar.lz \
+ || tar xf $CWD/glibc-$CVSVER.tar.gz
cd glibc-$CVSVER
# Apply patches; exit if any fail.
@@ -232,7 +230,7 @@ CFLAGS="-g $OPTIMIZ" \
../configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --enable-kernel=2.6.32 \
+ --enable-kernel=4.4 \
--with-headers=/usr/include \
--enable-add-ons \
--enable-profile \
@@ -253,6 +251,11 @@ make $NUMJOBS install install_root=$PKG || exit 1
# completes much faster. :)
make $NUMJOBS localedata/install-locales install_root=$PKG DESTDIR=$PKG || exit 1
+# Build and install libxcrypt:
+pushd $CWD
+ARCH=$SLACKWARE_ARCH LIBDIRSUFFIX=$LIBDIRSUFFIX SLKCFLAGS=$OPTIMIZ ./libxcrypt.build
+popd
+
# We've always had an sln symlink in /bin, so let's make sure it
# remains there so as not to break any scripts that might need it:
mkdir -p $PKG/bin
@@ -308,8 +311,7 @@ cat nscd/nscd.conf > $PKG/etc/nscd.conf.new
# Install docs:
( mkdir -p $PKG/usr/doc/glibc-$VERSION
cp -a \
- BUGS CONFORMANCE COPYING* FAQ INSTALL LICENSES NAMESPACE \
- NEWS NOTES PROJECTS README* \
+ CONTRIBUTED-BY* COPYING* INSTALL* LICENSES* MAINTAINERS* NEWS* README* SECURITY* SHARED-FILES* \
$PKG/usr/doc/glibc-$VERSION
)
@@ -340,9 +342,20 @@ fi
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip -g 2> /dev/null
)
-# Fix info dir:
-rm $PKG/usr/info/dir
-gzip -9 $PKG/usr/info/*
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
# This is junk
rm $PKG/etc/ld.so.cache
@@ -404,7 +417,29 @@ cp -a $PKG/lib${LIBDIRSUFFIX}/* lib${LIBDIRSUFFIX}
( cd lib${LIBDIRSUFFIX}
mkdir incoming
mv *so* incoming
- mv incoming/libSegFault.so .
+ mv incoming/libmemusage.so .
+ # Beginning with glibc-2.34, shared objects are using their ABI sonames
+ # directly, which is frankly, a terrible idea. It might help other package
+ # managers, but doesn't do us any favors where we already had a system for
+ # dealing with upgrades (and downgrades!). We'll change these libraries to
+ # use the versioned naming system of glibc-2.33 and earlier so that we don't
+ # have to handle these files differently and so that it's easy to see what
+ # version of glibc is in use at a glance.
+ cd incoming
+ # First do the new libxcrypt links (a little bit differently):
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ # This one is a special case. We don't want an $ARCH embedded in the
+ # filename. It prevents using the same install scripts on all $ARCH
+ # and does no good since we'll never have multiple $ARCH libraries
+ # installed in the same directory anyway. So give it the previous name
+ # format:
+ mv ld-linux*-${VERSION}.so ld-${VERSION}.so
)
mkdir -p usr
cp -a $PKG/usr/bin usr
@@ -460,7 +495,29 @@ fix_doinst
( cd lib${LIBDIRSUFFIX}
mkdir incoming
mv *so* incoming
- mv incoming/libSegFault.so .
+ mv incoming/libmemusage.so .
+ # Beginning with glibc-2.34, shared objects are using their ABI sonames
+ # directly, which is frankly, a terrible idea. It might help other package
+ # managers, but doesn't do us any favors where we already had a system for
+ # dealing with upgrades (and downgrades!). We'll change these libraries to
+ # use the versioned naming system of glibc-2.33 and earlier so that we don't
+ # have to handle these files differently and so that it's easy to see what
+ # version of glibc is in use at a glance.
+ cd incoming
+ # First do the new libxcrypt links (a little bit differently):
+ for cryptlib in libcrypt.so.* ; do
+ CRYPTSO=$(echo $cryptlib | cut -f 3 -d .)
+ mv $cryptlib libcrypt${CRYPTSO}-${VERSION}.so
+ done
+ for library in *.so.* ; do
+ mv $library $(echo $library | cut -f 1 -d .)-${VERSION}.so
+ done
+ # This one is a special case. We don't want an $ARCH embedded in the
+ # filename. It prevents using the same install scripts on all $ARCH
+ # and does no good since we'll never have multiple $ARCH libraries
+ # installed in the same directory anyway. So give it the previous name
+ # format:
+ mv ld-linux*-${VERSION}.so ld-${VERSION}.so
)
# Build the package:
/sbin/makepkg -l y -c n $TMP/glibc-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
diff --git a/source/l/glibc/libxcrypt.build b/source/l/glibc/libxcrypt.build
new file mode 100755
index 000000000..f4b7cc927
--- /dev/null
+++ b/source/l/glibc/libxcrypt.build
@@ -0,0 +1,119 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libxcrypt
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-glibc-incoming-tree
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+
+# First, build and install the compat library:
+mkdir build-libxcrypt-compat
+cd build-libxcrypt-compat
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --enable-hashes=strong,glibc \
+ --enable-obsolete-api=glibc \
+ --disable-failure-tokens \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Next, build the next-gen crypt library. We'll see what can link to it. :)
+mkdir build-libxcrypt
+cd build-libxcrypt
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+../configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --enable-hashes=strong,glibc \
+ --enable-obsolete-api=no \
+ --disable-failure-tokens \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/libcrypt*.la
+
+# Strip binaries:
+find $PKG -name "libcrypt*" | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip -g 2> /dev/null
+
+# Move libraries out of /usr:
+mkdir -p $PKG/lib${LIBDIRSUFFIX}
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ ## Actually, glibc always had libcrypt.a, so...
+ ## No static crypt() libraries:
+ #rm libcrypt*.a
+ # No .so symlinks (yet):
+ rm libcrypt*.so
+ # Move libraries and remaining symlinks:
+ mv libcrypt*so* ../../lib${LIBDIRSUFFIX}
+ # Add .so symlinks for libcrypt and libxcrypt:
+ ln -sf ../../lib${LIBDIRSUFFIX}/libcrypt.so.2 libcrypt.so
+ ln -sf ../../lib${LIBDIRSUFFIX}/libcrypt.so.2 libxcrypt.so
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* ChangeLog COPYING* LICENSING* NEWS* README* THANKS* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
diff --git a/source/l/glibc/libxcrypt.url b/source/l/glibc/libxcrypt.url
new file mode 100644
index 000000000..4e0d180af
--- /dev/null
+++ b/source/l/glibc/libxcrypt.url
@@ -0,0 +1 @@
+https://github.com/besser82/libxcrypt
diff --git a/source/l/glibc/patches/0001-nsswitch-return-result-when-nss-database-is-locked.patch b/source/l/glibc/patches/0001-nsswitch-return-result-when-nss-database-is-locked.patch
deleted file mode 100644
index 458369251..000000000
--- a/source/l/glibc/patches/0001-nsswitch-return-result-when-nss-database-is-locked.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From c3479fb7939898ec22c655c383454d6e8b982a67 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Fri, 5 Feb 2021 07:32:18 +0000
-Subject: [PATCH] nsswitch: return result when nss database is locked [BZ
- #27343]
-
-Before the change nss_database_check_reload_and_get() did not populate
-the '*result' value when it returned success in a case of chroot
-detection. This caused initgroups() to use garage pointer in the
-following test (extracted from unbound):
-
-```
-
-int main() {
- // load some NSS modules
- struct passwd * pw = getpwnam("root");
-
- chdir("/tmp");
- chroot("/tmp");
- chdir("/");
- // access nsswitch.conf in a chroot
- initgroups("root", 0);
-}
-```
-
-Reviewed-by: DJ Delorie <dj@redhat.com>
----
- nss/nss_database.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/nss/nss_database.c b/nss/nss_database.c
-index cf0306adc4..e1bef6bd75 100644
---- a/nss/nss_database.c
-+++ b/nss/nss_database.c
-@@ -398,8 +398,9 @@ nss_database_check_reload_and_get (struct nss_database_state *local,
- && (str.st_ino != local->root_ino
- || str.st_dev != local->root_dev)))
- {
-- /* Change detected; disable reloading. */
-+ /* Change detected; disable reloading and return current state. */
- atomic_store_release (&local->data.reload_disabled, 1);
-+ *result = local->data.services[database_index];
- __libc_lock_unlock (local->lock);
- __nss_module_disable_loading ();
- return true;
---
-2.27.0
diff --git a/source/l/glibc/patches/CVE-2021-27645.patch b/source/l/glibc/patches/CVE-2021-27645.patch
deleted file mode 100644
index c568dd16b..000000000
--- a/source/l/glibc/patches/CVE-2021-27645.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./nscd/netgroupcache.c.orig 2021-08-07 13:20:02.459057859 -0500
-+++ ./nscd/netgroupcache.c 2021-08-07 13:22:08.983060689 -0500
-@@ -248,7 +248,7 @@
- : NULL);
- ndomain = (ndomain ? newbuf + ndomaindiff
- : NULL);
-- buffer = newbuf;
-+ *tofreep = buffer = newbuf;
- }
-
- nhost = memcpy (buffer + bufused,
-@@ -319,7 +319,7 @@
- else if (status == NSS_STATUS_TRYAGAIN && e == ERANGE)
- {
- buflen *= 2;
-- buffer = xrealloc (buffer, buflen);
-+ *tofreep = buffer = xrealloc (buffer, buflen);
- }
- else if (status == NSS_STATUS_RETURN
- || status == NSS_STATUS_NOTFOUND
diff --git a/source/l/glibc/patches/CVE-2021-33574_1.patch b/source/l/glibc/patches/CVE-2021-33574_1.patch
deleted file mode 100644
index 20f1889ce..000000000
--- a/source/l/glibc/patches/CVE-2021-33574_1.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 42d359350510506b87101cf77202fefcbfc790cb Mon Sep 17 00:00:00 2001
-From: Andreas Schwab <schwab@linux-m68k.org>
-Date: Thu, 27 May 2021 12:49:47 +0200
-Subject: [PATCH] Use __pthread_attr_copy in mq_notify (bug 27896)
-
-Make a deep copy of the pthread attribute object to remove a potential
-use-after-free issue.
----
- NEWS | 4 ++++
- sysdeps/unix/sysv/linux/mq_notify.c | 15 ++++++++++-----
- 2 files changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/NEWS b/NEWS
-index 6f4d325d55..1bf3daa502 100644
---- a/NEWS
-+++ b/NEWS
-@@ -62,6 +62,10 @@ Security related changes:
- potentially resulting in degraded service or Denial of Service on the
- local system. Reported by Chris Schanzle.
-
-+ CVE-2021-33574: The mq_notify function has a potential use-after-free
-+ issue when using a notification type of SIGEV_THREAD and a thread
-+ attribute with a non-default affinity mask.
-+
- The following bugs are resolved with this release:
-
- [The release manager will add the list generated by
-diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
-index cc575a0cdd..f7ddfe5a6c 100644
---- a/sysdeps/unix/sysv/linux/mq_notify.c
-+++ b/sysdeps/unix/sysv/linux/mq_notify.c
-@@ -133,8 +133,11 @@ helper_thread (void *arg)
- (void) __pthread_barrier_wait (&notify_barrier);
- }
- else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
-- /* The only state we keep is the copy of the thread attributes. */
-- free (data.attr);
-+ {
-+ /* The only state we keep is the copy of the thread attributes. */
-+ pthread_attr_destroy (data.attr);
-+ free (data.attr);
-+ }
- }
- return NULL;
- }
-@@ -255,8 +258,7 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
- if (data.attr == NULL)
- return -1;
-
-- memcpy (data.attr, notification->sigev_notify_attributes,
-- sizeof (pthread_attr_t));
-+ __pthread_attr_copy (data.attr, notification->sigev_notify_attributes);
- }
-
- /* Construct the new request. */
-@@ -270,7 +272,10 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
-
- /* If it failed, free the allocated memory. */
- if (__glibc_unlikely (retval != 0))
-- free (data.attr);
-+ {
-+ pthread_attr_destroy (data.attr);
-+ free (data.attr);
-+ }
-
- return retval;
- }
---
-2.27.0
-
-
diff --git a/source/l/glibc/patches/CVE-2021-33574_2.patch b/source/l/glibc/patches/CVE-2021-33574_2.patch
deleted file mode 100644
index 608dbfdc5..000000000
--- a/source/l/glibc/patches/CVE-2021-33574_2.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 217b6dc298156bdb0d6aea9ea93e7e394a5ff091 Mon Sep 17 00:00:00 2001
-From: Florian Weimer <fweimer@redhat.com>
-Date: Tue, 1 Jun 2021 17:51:41 +0200
-Subject: [PATCH] Fix use of __pthread_attr_copy in mq_notify (bug 27896)
-
-__pthread_attr_copy can fail and does not initialize the attribute
-structure in that case.
-
-If __pthread_attr_copy is never called and there is no allocated
-attribute, pthread_attr_destroy should not be called, otherwise
-there is a null pointer dereference in rt/tst-mqueue6.
-
-Fixes commit 42d359350510506b87101cf77202fefcbfc790cb
-("Use __pthread_attr_copy in mq_notify (bug 27896)").
-
-Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
----
- sysdeps/unix/sysv/linux/mq_notify.c | 11 +++++++++--
- 1 file changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
-index f7ddfe5a6c..6f46d29d1d 100644
---- a/sysdeps/unix/sysv/linux/mq_notify.c
-+++ b/sysdeps/unix/sysv/linux/mq_notify.c
-@@ -258,7 +258,14 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
- if (data.attr == NULL)
- return -1;
-
-- __pthread_attr_copy (data.attr, notification->sigev_notify_attributes);
-+ int ret = __pthread_attr_copy (data.attr,
-+ notification->sigev_notify_attributes);
-+ if (ret != 0)
-+ {
-+ free (data.attr);
-+ __set_errno (ret);
-+ return -1;
-+ }
- }
-
- /* Construct the new request. */
-@@ -271,7 +278,7 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
- int retval = INLINE_SYSCALL (mq_notify, 2, mqdes, &se);
-
- /* If it failed, free the allocated memory. */
-- if (__glibc_unlikely (retval != 0))
-+ if (retval != 0 && data.attr != NULL)
- {
- pthread_attr_destroy (data.attr);
- free (data.attr);
---
-2.27.0
-
-
diff --git a/source/l/glibc/patches/CVE-2021-35942.patch b/source/l/glibc/patches/CVE-2021-35942.patch
deleted file mode 100644
index fde0fbdb3..000000000
--- a/source/l/glibc/patches/CVE-2021-35942.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 5adda61f62b77384718b4c0d8336ade8f2b4b35c Mon Sep 17 00:00:00 2001
-From: Andreas Schwab <schwab@linux-m68k.org>
-Date: Fri, 25 Jun 2021 15:02:47 +0200
-Subject: [PATCH] wordexp: handle overflow in positional parameter number (bug
- 28011)
-
-Use strtoul instead of atoi so that overflow can be detected.
----
- posix/wordexp-test.c | 1 +
- posix/wordexp.c | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c
-index f93a546d7e..9df02dbbb3 100644
---- a/posix/wordexp-test.c
-+++ b/posix/wordexp-test.c
-@@ -183,6 +183,7 @@ struct test_case_struct
- { 0, NULL, "$var", 0, 0, { NULL, }, IFS },
- { 0, NULL, "\"\\n\"", 0, 1, { "\\n", }, IFS },
- { 0, NULL, "", 0, 0, { NULL, }, IFS },
-+ { 0, NULL, "${1234567890123456789012}", 0, 0, { NULL, }, IFS },
-
- /* Flags not already covered (testit() has special handling for these) */
- { 0, NULL, "one two", WRDE_DOOFFS, 2, { "one", "two", }, IFS },
-diff --git a/posix/wordexp.c b/posix/wordexp.c
-index bcbe96e48d..1f3b09f721 100644
---- a/posix/wordexp.c
-+++ b/posix/wordexp.c
-@@ -1399,7 +1399,7 @@ envsubst:
- /* Is it a numeric parameter? */
- else if (isdigit (env[0]))
- {
-- int n = atoi (env);
-+ unsigned long n = strtoul (env, NULL, 10);
-
- if (n >= __libc_argc)
- /* Substitute NULL. */
---
-2.27.0
-
-
diff --git a/source/l/glibc/patches/CVE-2021-38604.patch b/source/l/glibc/patches/CVE-2021-38604.patch
deleted file mode 100644
index ad0a81588..000000000
--- a/source/l/glibc/patches/CVE-2021-38604.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From b805aebd42364fe696e417808a700fdb9800c9e8 Mon Sep 17 00:00:00 2001
-From: Nikita Popov <npv1310@gmail.com>
-Date: Mon, 9 Aug 2021 20:17:34 +0530
-Subject: [PATCH] librt: fix NULL pointer dereference (bug 28213)
-
-Helper thread frees copied attribute on NOTIFY_REMOVED message
-received from the OS kernel. Unfortunately, it fails to check whether
-copied attribute actually exists (data.attr != NULL). This worked
-earlier because free() checks passed pointer before actually
-attempting to release corresponding memory. But
-__pthread_attr_destroy assumes pointer is not NULL.
-
-So passing NULL pointer to __pthread_attr_destroy will result in
-segmentation fault. This scenario is possible if
-notification->sigev_notify_attributes == NULL (which means default
-thread attributes should be used).
-
-Signed-off-by: Nikita Popov <npv1310@gmail.com>
-Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
----
- sysdeps/unix/sysv/linux/mq_notify.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
-index 9799dcdaa4..eccae2e4c6 100644
---- a/sysdeps/unix/sysv/linux/mq_notify.c
-+++ b/sysdeps/unix/sysv/linux/mq_notify.c
-@@ -131,7 +131,7 @@ helper_thread (void *arg)
- to wait until it is done with it. */
- (void) __pthread_barrier_wait (&notify_barrier);
- }
-- else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
-+ else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED && data.attr != NULL)
- {
- /* The only state we keep is the copy of the thread attributes. */
- __pthread_attr_destroy (data.attr);
---
-2.27.0
-
-
diff --git a/source/l/glibc/patches/CVE-2024-2961_glibc2.39.patch b/source/l/glibc/patches/CVE-2024-2961_glibc2.39.patch
new file mode 100644
index 000000000..5a8c179a6
--- /dev/null
+++ b/source/l/glibc/patches/CVE-2024-2961_glibc2.39.patch
@@ -0,0 +1,217 @@
+From 31da30f23cddd36db29d5b6a1c7619361b271fb4 Mon Sep 17 00:00:00 2001
+From: Charles Fol <folcharles@gmail.com>
+Date: Thu, 28 Mar 2024 12:25:38 -0300
+Subject: [PATCH] iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing
+ escape sequence (CVE-2024-2961)
+
+ISO-2022-CN-EXT uses escape sequences to indicate character set changes
+(as specified by RFC 1922). While the SOdesignation has the expected
+bounds checks, neither SS2designation nor SS3designation have its;
+allowing a write overflow of 1, 2, or 3 bytes with fixed values:
+'$+I', '$+J', '$+K', '$+L', '$+M', or '$*H'.
+
+Checked on aarch64-linux-gnu.
+
+Co-authored-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Reviewed-by: Carlos O'Donell <carlos@redhat.com>
+Tested-by: Carlos O'Donell <carlos@redhat.com>
+
+(cherry picked from commit f9dc609e06b1136bb0408be9605ce7973a767ada)
+---
+ iconvdata/Makefile | 5 +-
+ iconvdata/iso-2022-cn-ext.c | 12 +++
+ iconvdata/tst-iconv-iso-2022-cn-ext.c | 128 ++++++++++++++++++++++++++
+ 3 files changed, 144 insertions(+), 1 deletion(-)
+ create mode 100644 iconvdata/tst-iconv-iso-2022-cn-ext.c
+
+diff --git a/iconvdata/Makefile b/iconvdata/Makefile
+index ea019ce5c0..7196a8744b 100644
+--- a/iconvdata/Makefile
++++ b/iconvdata/Makefile
+@@ -75,7 +75,8 @@ ifeq (yes,$(build-shared))
+ tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \
+ tst-iconv6 bug-iconv5 bug-iconv6 tst-iconv7 bug-iconv8 bug-iconv9 \
+ bug-iconv10 bug-iconv11 bug-iconv12 tst-iconv-big5-hkscs-to-2ucs4 \
+- bug-iconv13 bug-iconv14 bug-iconv15
++ bug-iconv13 bug-iconv14 bug-iconv15 \
++ tst-iconv-iso-2022-cn-ext
+ ifeq ($(have-thread-library),yes)
+ tests += bug-iconv3
+ endif
+@@ -330,6 +331,8 @@ $(objpfx)bug-iconv14.out: $(addprefix $(objpfx), $(gconv-modules)) \
+ $(addprefix $(objpfx),$(modules.so))
+ $(objpfx)bug-iconv15.out: $(addprefix $(objpfx), $(gconv-modules)) \
+ $(addprefix $(objpfx),$(modules.so))
++$(objpfx)tst-iconv-iso-2022-cn-ext.out: $(addprefix $(objpfx), $(gconv-modules)) \
++ $(addprefix $(objpfx),$(modules.so))
+
+ $(objpfx)iconv-test.out: run-iconv-test.sh \
+ $(addprefix $(objpfx), $(gconv-modules)) \
+diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c
+index b34c8a36f4..cce29b1969 100644
+--- a/iconvdata/iso-2022-cn-ext.c
++++ b/iconvdata/iso-2022-cn-ext.c
+@@ -574,6 +574,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized");
+ { \
+ const char *escseq; \
+ \
++ if (outptr + 4 > outend) \
++ { \
++ result = __GCONV_FULL_OUTPUT; \
++ break; \
++ } \
++ \
+ assert (used == CNS11643_2_set); /* XXX */ \
+ escseq = "*H"; \
+ *outptr++ = ESC; \
+@@ -587,6 +593,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized");
+ { \
+ const char *escseq; \
+ \
++ if (outptr + 4 > outend) \
++ { \
++ result = __GCONV_FULL_OUTPUT; \
++ break; \
++ } \
++ \
+ assert ((used >> 5) >= 3 && (used >> 5) <= 7); \
+ escseq = "+I+J+K+L+M" + ((used >> 5) - 3) * 2; \
+ *outptr++ = ESC; \
+diff --git a/iconvdata/tst-iconv-iso-2022-cn-ext.c b/iconvdata/tst-iconv-iso-2022-cn-ext.c
+new file mode 100644
+index 0000000000..96a8765fd5
+--- /dev/null
++++ b/iconvdata/tst-iconv-iso-2022-cn-ext.c
+@@ -0,0 +1,128 @@
++/* Verify ISO-2022-CN-EXT does not write out of the bounds.
++ Copyright (C) 2024 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, see
++ <https://www.gnu.org/licenses/>. */
++
++#include <stdio.h>
++#include <string.h>
++
++#include <errno.h>
++#include <iconv.h>
++#include <sys/mman.h>
++
++#include <support/xunistd.h>
++#include <support/check.h>
++#include <support/support.h>
++
++/* The test sets up a two memory page buffer with the second page marked
++ PROT_NONE to trigger a fault if the conversion writes beyond the exact
++ expected amount. Then we carry out various conversions and precisely
++ place the start of the output buffer in order to trigger a SIGSEGV if the
++ process writes anywhere between 1 and page sized bytes more (only one
++ PROT_NONE page is setup as a canary) than expected. These tests exercise
++ all three of the cases in ISO-2022-CN-EXT where the converter must switch
++ character sets and may run out of buffer space while doing the
++ operation. */
++
++static int
++do_test (void)
++{
++ iconv_t cd = iconv_open ("ISO-2022-CN-EXT", "UTF-8");
++ TEST_VERIFY_EXIT (cd != (iconv_t) -1);
++
++ char *ntf;
++ size_t ntfsize;
++ char *outbufbase;
++ {
++ int pgz = getpagesize ();
++ TEST_VERIFY_EXIT (pgz > 0);
++ ntfsize = 2 * pgz;
++
++ ntf = xmmap (NULL, ntfsize, PROT_READ | PROT_WRITE, MAP_PRIVATE
++ | MAP_ANONYMOUS, -1);
++ xmprotect (ntf + pgz, pgz, PROT_NONE);
++
++ outbufbase = ntf + pgz;
++ }
++
++ /* Check if SOdesignation escape sequence does not trigger an OOB write. */
++ {
++ char inbuf[] = "\xe4\xba\xa4\xe6\x8d\xa2";
++
++ for (int i = 0; i < 9; i++)
++ {
++ char *inp = inbuf;
++ size_t inleft = sizeof (inbuf) - 1;
++
++ char *outp = outbufbase - i;
++ size_t outleft = i;
++
++ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++ == (size_t) -1);
++ TEST_COMPARE (errno, E2BIG);
++
++ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++ }
++ }
++
++ /* Same as before for SS2designation. */
++ {
++ char inbuf[] = "ã´½ \xe3\xb4\xbd";
++
++ for (int i = 0; i < 14; i++)
++ {
++ char *inp = inbuf;
++ size_t inleft = sizeof (inbuf) - 1;
++
++ char *outp = outbufbase - i;
++ size_t outleft = i;
++
++ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++ == (size_t) -1);
++ TEST_COMPARE (errno, E2BIG);
++
++ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++ }
++ }
++
++ /* Same as before for SS3designation. */
++ {
++ char inbuf[] = "劄 \xe5\x8a\x84";
++
++ for (int i = 0; i < 14; i++)
++ {
++ char *inp = inbuf;
++ size_t inleft = sizeof (inbuf) - 1;
++
++ char *outp = outbufbase - i;
++ size_t outleft = i;
++
++ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++ == (size_t) -1);
++ TEST_COMPARE (errno, E2BIG);
++
++ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++ }
++ }
++
++ TEST_VERIFY_EXIT (iconv_close (cd) != -1);
++
++ xmunmap (ntf, ntfsize);
++
++ return 0;
++}
++
++#include <support/test-driver.c>
+--
+2.39.3
+
+
diff --git a/source/l/glibc/patches/cdc31409bd4f878577059e70dbd52a28643ec609.patch b/source/l/glibc/patches/cdc31409bd4f878577059e70dbd52a28643ec609.patch
deleted file mode 100644
index 96f56ce73..000000000
--- a/source/l/glibc/patches/cdc31409bd4f878577059e70dbd52a28643ec609.patch
+++ /dev/null
@@ -1,237 +0,0 @@
-From cdc31409bd4f878577059e70dbd52a28643ec609 Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Wed, 31 Mar 2021 13:53:34 -0300
-Subject: [PATCH] linux: Normalize and return timeout on select (BZ #27651)
-
-The commit 2433d39b697, which added time64 support to select, changed
-the function to use __NR_pselect6 (or __NR_pelect6_time64) on all
-architectures. However, on architectures where the symbol was
-implemented with __NR_select the kernel normalizes the passed timeout
-instead of return EINVAL. For instance, the input timeval
-{ 0, 5000000 } is interpreted as { 5, 0 }.
-
-And as indicated by BZ #27651, this semantic seems to be expected
-and changing it results in some performance issues (most likely
-the program does not check the return code and keeps issuing
-select with unormalized tv_usec argument).
-
-To avoid a different semantic depending whether which syscall the
-architecture used to issue, select now always normalize the timeout
-input. This is a slight change for some ABIs (for instance aarch64).
-
-Checked on x86_64-linux-gnu and i686-linux-gnu.
----
- include/time.h | 5 +++
- sunrpc/svcauth_des.c | 1 -
- support/Makefile | 2 ++
- support/support.h | 8 +++++
- support/support_select_modify_timeout.c | 29 ++++++++++++++++
- support/support_select_normalize_timeout.c | 29 ++++++++++++++++
- sysdeps/unix/sysv/linux/select.c | 40 ++++++++++++++++++----
- 8 files changed, 123 insertions(+), 8 deletions(-)
- create mode 100644 support/support_select_modify_timeout.c
- create mode 100644 support/support_select_normalize_timeout.c
-
-diff --git a/include/time.h b/include/time.h
-index caf2af5e74..e0636132a6 100644
---- a/include/time.h
-+++ b/include/time.h
-@@ -502,6 +502,11 @@ time_now (void)
- __clock_gettime (TIME_CLOCK_GETTIME_CLOCKID, &ts);
- return ts.tv_sec;
- }
-+
-+#define NSEC_PER_SEC 1000000000L /* Nanoseconds per second. */
-+#define USEC_PER_SEC 1000000L /* Microseconds per second. */
-+#define NSEC_PER_USEC 1000L /* Nanoseconds per microsecond. */
-+
- #endif
-
- #endif
-diff --git a/sunrpc/svcauth_des.c b/sunrpc/svcauth_des.c
-index 7607abc818..25a85c9097 100644
---- a/sunrpc/svcauth_des.c
-+++ b/sunrpc/svcauth_des.c
-@@ -58,7 +58,6 @@
-
- #define debug(msg) /*printf("svcauth_des: %s\n", msg) */
-
--#define USEC_PER_SEC ((uint32_t) 1000000L)
- #define BEFORE(t1, t2) timercmp(t1, t2, <)
-
- /*
-diff --git a/support/Makefile b/support/Makefile
-index 900e17f94f..1e2fc97ee6 100644
---- a/support/Makefile
-+++ b/support/Makefile
-@@ -68,6 +68,8 @@ libsupport-routines = \
- support_quote_string \
- support_record_failure \
- support_run_diff \
-+ support_select_modify_timeout \
-+ support_select_normalize_timeout \
- support_set_small_thread_stack_size \
- support_shared_allocate \
- support_small_stack_thread_attribute \
-diff --git a/support/support.h b/support/support.h
-index e023d00857..f983783d64 100644
---- a/support/support.h
-+++ b/support/support.h
-@@ -144,6 +144,14 @@ static __inline bool support_path_support_time64 (const char *path)
- /* Return true if stat supports nanoseconds resolution. */
- extern bool support_stat_nanoseconds (const char *path);
-
-+/* Return true if select modify the timeout to reflect the amount of time
-+ no slept. */
-+extern bool support_select_modify_timeout (void);
-+
-+/* Return true if select normalize the timeout input by taking in account
-+ tv_usec larger than 1000000. */
-+extern bool support_select_normalize_timeout (void);
-+
- __END_DECLS
-
- #endif /* SUPPORT_H */
-diff --git a/support/support_select_modify_timeout.c b/support/support_select_modify_timeout.c
-new file mode 100644
-index 0000000000..d70a5a5068
---- /dev/null
-+++ b/support/support_select_modify_timeout.c
-@@ -0,0 +1,29 @@
-+/* Return whether select modify the timeout.
-+ Copyright (C) 2021 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <https://www.gnu.org/licenses/>. */
-+
-+#include <stdbool.h>
-+
-+bool
-+support_select_modify_timeout (void)
-+{
-+#ifdef __linux__
-+ return true;
-+#else
-+ return false;
-+#endif
-+}
-diff --git a/support/support_select_normalize_timeout.c b/support/support_select_normalize_timeout.c
-new file mode 100644
-index 0000000000..447e3ec3e3
---- /dev/null
-+++ b/support/support_select_normalize_timeout.c
-@@ -0,0 +1,29 @@
-+/* Return whether select normalize the timeout.
-+ Copyright (C) 2021 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <https://www.gnu.org/licenses/>. */
-+
-+#include <stdbool.h>
-+
-+bool
-+support_select_normalize_timeout (void)
-+{
-+#ifdef __linux__
-+ return true;
-+#else
-+ return false;
-+#endif
-+}
-diff --git a/sysdeps/unix/sysv/linux/select.c b/sysdeps/unix/sysv/linux/select.c
-index 415aa87d3c..d075270ff4 100644
---- a/sysdeps/unix/sysv/linux/select.c
-+++ b/sysdeps/unix/sysv/linux/select.c
-@@ -33,12 +33,34 @@ int
- __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
- struct __timeval64 *timeout)
- {
-- struct __timespec64 ts64, *pts64 = NULL;
-- if (timeout != NULL)
-+ __time64_t s = timeout != NULL ? timeout->tv_sec : 0;
-+ int32_t us = timeout != NULL ? timeout->tv_usec : 0;
-+ int32_t ns;
-+
-+ if (s < 0 || us < 0)
-+ return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL);
-+
-+ /* Normalize the timeout, as legacy Linux __NR_select and __NR__newselect.
-+ Different than syscall, it also handle possible overflow. */
-+ if (us / USEC_PER_SEC > INT64_MAX - s)
- {
-- ts64 = timeval64_to_timespec64 (*timeout);
-- pts64 = &ts64;
-+ s = INT64_MAX;
-+ ns = NSEC_PER_SEC - 1;
- }
-+ else
-+ {
-+ s += us / USEC_PER_SEC;
-+ us = us % USEC_PER_SEC;
-+ ns = us * NSEC_PER_USEC;
-+ }
-+
-+ struct __timespec64 ts64, *pts64 = NULL;
-+ if (timeout != NULL)
-+ {
-+ ts64.tv_sec = s;
-+ ts64.tv_nsec = ns;
-+ pts64 = &ts64;
-+ }
-
- #ifndef __NR_pselect6_time64
- # define __NR_pselect6_time64 __NR_pselect6
-@@ -52,10 +74,13 @@ __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
- (though the pselect() glibc call suppresses this behavior).
- Since select() on Linux has the same behavior as the pselect6
- syscall, we update the timeout here. */
-- if (r == 0 || errno != ENOSYS)
-+ if (r >= 0 || errno != ENOSYS)
- {
- if (timeout != NULL)
-- TIMEVAL_TO_TIMESPEC (timeout, &ts64);
-+ {
-+ timeout->tv_sec = ts64.tv_sec;
-+ timeout->tv_usec = ts64.tv_nsec / NSEC_PER_USEC;
-+ }
- return r;
- }
-
-@@ -71,7 +96,8 @@ __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
- __set_errno (EINVAL);
- return -1;
- }
-- ts32 = valid_timespec64_to_timespec (ts64);
-+ ts32.tv_sec = s;
-+ ts32.tv_nsec = ns;
- pts32 = &ts32;
- }
- # ifndef __ASSUME_PSELECT
---
-2.27.0
-
-
diff --git a/source/l/glibc/patches/reenable_DT_HASH.patch b/source/l/glibc/patches/reenable_DT_HASH.patch
new file mode 100644
index 000000000..7b7fe9ee4
--- /dev/null
+++ b/source/l/glibc/patches/reenable_DT_HASH.patch
@@ -0,0 +1,101 @@
+diff -up glibc-2.38/Makeconfig.45~ glibc-2.38/Makeconfig
+--- glibc-2.38/Makeconfig.45~ 2023-08-01 01:02:58.246719027 +0200
++++ glibc-2.38/Makeconfig 2023-08-01 01:02:58.303719582 +0200
+@@ -381,6 +381,15 @@ relro-LDFLAGS = -Wl,-z,relro
+ LDFLAGS.so += $(relro-LDFLAGS)
+ LDFLAGS-rtld += $(relro-LDFLAGS)
+
++ifeq (yes,$(have-hash-style))
++# For the time being we unconditionally use 'both'. At some time we
++# should declare statically linked code as 'out of luck' and compile
++# with --hash-style=gnu only.
++hashstyle-LDFLAGS = -Wl,--hash-style=both
++LDFLAGS.so += $(hashstyle-LDFLAGS)
++LDFLAGS-rtld += $(hashstyle-LDFLAGS)
++endif
++
+ # Linker options to enable and disable DT_RELR.
+ ifeq ($(have-dt-relr),yes)
+ dt-relr-ldflag = -Wl,-z,pack-relative-relocs
+diff -up glibc-2.38/Makerules.45~ glibc-2.38/Makerules
+diff -up glibc-2.38/config.make.in.45~ glibc-2.38/config.make.in
+--- glibc-2.38/config.make.in.45~ 2023-08-01 01:02:58.301719562 +0200
++++ glibc-2.38/config.make.in 2023-08-01 01:03:54.721267748 +0200
+@@ -71,6 +71,7 @@ have-libaudit = @have_libaudit@
+ have-libcap = @have_libcap@
+ have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
+ bind-now = @bindnow@
++have-hash-style = @libc_cv_hashstyle@
+ have-cxx-thread_local = @libc_cv_cxx_thread_local@
+ have-loop-to-function = @libc_cv_cc_loop_to_function@
+ have-textrel_ifunc = @libc_cv_textrel_ifunc@
+diff -up glibc-2.38/configure.45~ glibc-2.38/configure
+--- glibc-2.38/configure.45~ 2023-07-31 19:54:16.000000000 +0200
++++ glibc-2.38/configure 2023-08-01 01:04:54.904850299 +0200
+@@ -655,6 +655,7 @@ libc_cv_cc_submachine
+ libc_cv_cc_nofma
+ libc_cv_mtls_dialect_gnu2
+ libc_cv_has_glob_dat
++libc_cv_hashstyle
+ libc_cv_fpie
+ libc_cv_z_execstack
+ ASFLAGS_config
+@@ -7107,6 +7108,32 @@ fi
+ printf "%s\n" "$libc_cv_fpie" >&6; }
+
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --hash-style option" >&5
++$as_echo_n "checking for --hash-style option... " >&6; }
++if ${libc_cv_hashstyle+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
++ -fPIC -shared -o conftest.so conftest.c
++ -Wl,--hash-style=both -nostdlib 1>&5'
++ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++ test $ac_status = 0; }; }
++then
++ libc_cv_hashstyle=yes
++else
++ libc_cv_hashstyle=no
++fi
++rm -f conftest*
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_hashstyle" >&5
++$as_echo "$libc_cv_hashstyle" >&6; }
++
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GLOB_DAT reloc" >&5
+ printf %s "checking for GLOB_DAT reloc... " >&6; }
+diff -up glibc-2.38/configure.ac.45~ glibc-2.38/configure.ac
+--- glibc-2.38/configure.ac.45~ 2023-07-31 19:54:16.000000000 +0200
++++ glibc-2.38/configure.ac 2023-08-01 01:02:58.303719582 +0200
+@@ -1339,6 +1339,22 @@ LIBC_TRY_CC_OPTION([-fpie], [libc_cv_fpi
+
+ AC_SUBST(libc_cv_fpie)
+
++AC_CACHE_CHECK(for --hash-style option,
++ libc_cv_hashstyle, [dnl
++cat > conftest.c <<EOF
++int _start (void) { return 42; }
++EOF
++if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
++ -fPIC -shared -o conftest.so conftest.c
++ -Wl,--hash-style=both -nostdlib 1>&AS_MESSAGE_LOG_FD])
++then
++ libc_cv_hashstyle=yes
++else
++ libc_cv_hashstyle=no
++fi
++rm -f conftest*])
++AC_SUBST(libc_cv_hashstyle)
++
+ AC_CACHE_CHECK(for GLOB_DAT reloc,
+ libc_cv_has_glob_dat, [dnl
+ cat > conftest.c <<EOF
diff --git a/source/l/glibmm/glibmm.SlackBuild b/source/l/glibmm/glibmm.SlackBuild
index 6299f3426..27c656019 100755
--- a/source/l/glibmm/glibmm.SlackBuild
+++ b/source/l/glibmm/glibmm.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=glibmm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -101,7 +101,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
rm -rf $PKG/usr/share/doc
-cp -a AUTHORS COPYING* NEWS README* \
+cp -a AUTHORS* COPYING* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/glibmm2/glibmm2.SlackBuild b/source/l/glibmm2/glibmm2.SlackBuild
new file mode 100755
index 000000000..7a89fc200
--- /dev/null
+++ b/source/l/glibmm2/glibmm2.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Copyright 2015, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+SRCNAM=glibmm
+PKGNAM=glibmm2
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
+cp -a AUTHORS* COPYING* NEWS* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+# If there's a NEWS file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r NEWS ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat NEWS | head -n 1000 > $DOCSDIR/NEWS
+ touch -r NEWS $DOCSDIR/NEWS
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/glibmm2/slack-desc b/source/l/glibmm2/slack-desc
new file mode 100644
index 000000000..4fabd9267
--- /dev/null
+++ b/source/l/glibmm2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+glibmm2: glibmm2 (C++ bindings for glib, ABI 2.68)
+glibmm2:
+glibmm2: glibmm2 is a set of C++ bindings for glib, including cross-platform
+glibmm2: APIs such as a std::string-like UTF8 string class, string utility
+glibmm2: methods, such as a text encoding converter API, file access,
+glibmm2: and threads.
+glibmm2:
+glibmm2: Homepage: http://www.gtkmm.org/
+glibmm2:
+glibmm2:
+glibmm2:
diff --git a/source/l/gmime/gmime.SlackBuild b/source/l/gmime/gmime.SlackBuild
index f15771eb8..2429c3033 100755
--- a/source/l/gmime/gmime.SlackBuild
+++ b/source/l/gmime/gmime.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmime
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -66,7 +66,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION
# Make sure ownerships and permissions are sane:
@@ -78,6 +78,13 @@ find . \
-exec chmod 644 {} \+
# Configure:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -85,6 +92,7 @@ CFLAGS="$SLKCFLAGS" \
--localstatedir=/var/lib \
--sysconfdir=/etc \
--mandir=/usr/man \
+ --disable-gtk-doc \
--disable-static \
--program-prefix= \
--program-suffix= \
@@ -127,7 +135,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS COPYING INSTALL NEWS PORTING README TODO \
+ AUTHORS* COPYING* INSTALL* NEWS* PORTING* README* TODO* \
$PKG/usr/doc/${PKGNAM}-$VERSION
mkdir -p $PKG/install
@@ -135,4 +143,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/gmime/gmime.url b/source/l/gmime/gmime.url
new file mode 100644
index 000000000..92b3e8877
--- /dev/null
+++ b/source/l/gmime/gmime.url
@@ -0,0 +1,2 @@
+https://github.com/jstedfast/gmime
+https://github.com/jstedfast/gmime/releases/download/3.2.14/gmime-3.2.14.tar.xz
diff --git a/source/l/gmm/gmm.SlackBuild b/source/l/gmm/gmm.SlackBuild
index 36f1dd3da..692621257 100755
--- a/source/l/gmm/gmm.SlackBuild
+++ b/source/l/gmm/gmm.SlackBuild
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
ARCH=noarch
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
@@ -41,7 +41,7 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-$TMP}
rm -rf $PKG
mkdir -p $TMP $PKG
diff --git a/source/l/gmp/gmp.SlackBuild b/source/l/gmp/gmp.SlackBuild
index 117f4ea50..aed3e8516 100755
--- a/source/l/gmp/gmp.SlackBuild
+++ b/source/l/gmp/gmp.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmp
VERSION=${VERSION:-$(echo gmp-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
diff --git a/source/l/gnu-efi/gnu-efi.url b/source/l/gnu-efi/gnu-efi.url
index 6c55abd35..15616bc70 100644
--- a/source/l/gnu-efi/gnu-efi.url
+++ b/source/l/gnu-efi/gnu-efi.url
@@ -1 +1 @@
-https://downloads.sourceforge.net/gnu-efi/gnu-efi-3.0.14.tar.bz2
+https://downloads.sourceforge.net/gnu-efi/gnu-efi-3.0.18.tar.bz2
diff --git a/source/l/gobject-introspection/gobject-introspection.SlackBuild b/source/l/gobject-introspection/gobject-introspection.SlackBuild
index 9396474d3..f1b95dd9a 100755
--- a/source/l/gobject-introspection/gobject-introspection.SlackBuild
+++ b/source/l/gobject-introspection/gobject-introspection.SlackBuild
@@ -1,8 +1,7 @@
#!/bin/bash
-# Slackware build script for gobject-introspection
-
# Copyright 2009 Andrew Psaltis <ampsaltis@gmail.com>
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -104,7 +103,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
- -Dgtk_doc=true \
+ -Dgtk_doc=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/gobject-introspection/slack-desc b/source/l/gobject-introspection/slack-desc
index 0826a8cd8..7fb398dce 100644
--- a/source/l/gobject-introspection/slack-desc
+++ b/source/l/gobject-introspection/slack-desc
@@ -13,7 +13,7 @@ gobject-introspection: introspection data of the API of C libraries. This intros
gobject-introspection: can be used for automatic code generation for bindings, API
gobject-introspection: verification, and documentation generation.
gobject-introspection:
-gobject-introspection: For more information, check out:
-gobject-introspection: http://live.gnome.org/GObjectIntrospection
+gobject-introspection: Homepage: https://gi.readthedocs.io/en/latest/
+gobject-introspection:
gobject-introspection:
gobject-introspection:
diff --git a/source/l/grantlee/grantlee.SlackBuild b/source/l/grantlee/grantlee.SlackBuild
index 175ccb623..83899e853 100755
--- a/source/l/grantlee/grantlee.SlackBuild
+++ b/source/l/grantlee/grantlee.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=grantlee
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/graphene/graphene.SlackBuild b/source/l/graphene/graphene.SlackBuild
index f229fc6e8..40f623cc1 100755
--- a/source/l/graphene/graphene.SlackBuild
+++ b/source/l/graphene/graphene.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/graphite2/graphite2.SlackBuild b/source/l/graphite2/graphite2.SlackBuild
index 7619449cf..f3911e4ce 100755
--- a/source/l/graphite2/graphite2.SlackBuild
+++ b/source/l/graphite2/graphite2.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild b/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
index 2a56856d5..1e55b33a5 100755
--- a/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
+++ b/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
@@ -32,7 +32,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/gst-plugins-bad-free/fetch-sources.sh b/source/l/gst-plugins-bad-free/fetch-sources.sh
new file mode 100755
index 000000000..1ba85d7ce
--- /dev/null
+++ b/source/l/gst-plugins-bad-free/fetch-sources.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Call this script with the version of the gst-plugins-bad that you would
+# like to fetch the sources for. This will fetch the base source from
+# github, and then remove the non-free sources.
+#
+# Example: VERSION=1.18.5 ./fetch-sources.sh
+
+VERSION=${VERSION:-1.24.2}
+
+rm -rf rm -rf gst-plugins-bad-free-$VERSION gst-plugins-bad-$VERSION
+
+wget https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-$VERSION.tar.xz
+
+tar xvf gst-plugins-bad-$VERSION.tar.xz
+rm -f gst-plugins-bad-$VERSION.tar.xz
+
+./gst-p-bad-cleanup.sh gst-plugins-bad-$VERSION
+
+mv gst-plugins-bad-$VERSION gst-plugins-bad-free-$VERSION
+
+tar cf gst-plugins-bad-free-$VERSION.tar gst-plugins-bad-free-$VERSION
+rm -rf gst-plugins-bad-free-$VERSION
+plzip -9 gst-plugins-bad-free-$VERSION.tar
diff --git a/source/l/gst-plugins-bad-free/gst-p-bad-cleanup.sh b/source/l/gst-plugins-bad-free/gst-p-bad-cleanup.sh
new file mode 100755
index 000000000..5c24c2269
--- /dev/null
+++ b/source/l/gst-plugins-bad-free/gst-p-bad-cleanup.sh
@@ -0,0 +1,193 @@
+#!/bin/sh
+
+# Process a gst-plugins-bad tarball to remove
+# unwanted GStreamer plugins.
+#
+# See https://bugzilla.redhat.com/show_bug.cgi?id=532470
+# for details
+#
+# Bastien Nocera <bnocera@redhat.com> - 2010
+#
+
+DIRECTORY="$1"
+
+ALLOWED="
+aacparse
+accurip
+adpcmdec
+adpcmenc
+aiff
+aiffparse
+amrparse
+asfmux
+audiobuffersplit
+audiofxbad
+audiolatency
+audiomixer
+audiomixmatrix
+audioparsers
+audiovisualizers
+autoconvert
+bayer
+camerabin
+camerabin2
+cdxaparse
+codecalpha
+codectimestamper
+coloreffects
+colorspace
+compositor
+dataurisrc
+dccp
+debugutils
+dtmf
+dvbsubenc
+faceoverlay
+festival
+fieldanalysis
+freeverb
+freeze
+frei0r
+gaudieffects
+gdp
+geometrictransform
+h264parse
+hdvparse
+hls
+id3tag
+insertbin
+inter
+interlace
+invtelecine
+ivfparse
+ivtc
+jpegformat
+jp2kdecimator
+legacyresample
+librfb
+liveadder
+midi
+mve
+mpegdemux
+mpeg4videoparse
+mpegpsmux
+mpegtsdemux
+mpegtsmux
+mpegvideoparse
+mse
+mxf
+netsim
+nsf
+nuvdemux
+onvif
+patchdetect
+pcapparse
+pnm
+proxy
+qtmux
+rawparse
+removesilence
+rist
+rtmp2
+rtp
+rtpmux
+rtpvp8
+scaletempo
+sdi
+sdp
+segmentclip
+selector
+smooth
+speed
+stereo
+subenc
+switchbin
+timecode
+transcode
+tta
+unixfd
+valve
+videofilters
+videoframe_audiolevel
+videomaxrate
+videomeasure
+videoparsers
+videosignal
+vmnc
+yadif
+y4m
+"
+
+NOT_ALLOWED="
+dvbsuboverlay
+dvdspu
+real
+siren
+"
+
+error()
+{
+ MESSAGE=$1
+ echo $MESSAGE
+ exit 1
+}
+
+check_allowed()
+{
+ MODULE=$1
+ for i in $ALLOWED ; do
+ if test x$MODULE = x$i ; then
+ return 0;
+ fi
+ done
+ # Ignore errors coming from ext/ directory
+ # they require external libraries so are ineffective anyway
+ return 1;
+}
+
+check_not_allowed()
+{
+ MODULE=$1
+ for i in $NOT_ALLOWED ; do
+ if test x$MODULE = x$i ; then
+ return 0;
+ fi
+ done
+ return 1;
+}
+
+pushd $DIRECTORY > /dev/null || error "Cannot open directory \"$DIRECTORY\""
+
+unknown=""
+for subdir in gst ext sys; do
+ for dir in $subdir/* ; do
+ # Don't touch non-directories
+ if ! [ -d $dir ] ; then
+ continue;
+ fi
+ MODULE=`basename $dir`
+ if ( check_not_allowed $MODULE ) ; then
+ echo "**** Removing $MODULE ****"
+ echo "Removing directory $dir"
+ rm -r $dir || error "Cannot remove $dir"
+ echo
+ elif test $subdir = ext || test $subdir = sys; then
+ # Ignore library or system non-blacklisted plugins
+ continue;
+ elif ! ( check_allowed $MODULE ) ; then
+ echo "Unknown module in $dir"
+ unknown="$unknown $dir"
+ fi
+ done
+done
+
+echo
+
+if test "x$unknown" != "x"; then
+ echo -n "Aborting due to unknown modules: "
+ echo "$unknown" | sed "s/ /\n /g"
+ exit 1
+fi
+
+popd > /dev/null
+
diff --git a/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild b/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
new file mode 100755
index 000000000..17d9735ba
--- /dev/null
+++ b/source/l/gst-plugins-bad-free/gst-plugins-bad-free.SlackBuild
@@ -0,0 +1,152 @@
+#!/bin/bash
+
+# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=gst-plugins-bad-free
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -D dvbsuboverlay=disabled \
+ -D dvdspu=disabled \
+ -D siren=disabled \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and if needed symlink the man pages:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS* COPYING* ChangeLog NEWS* README* RELEASE* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
+
diff --git a/source/l/gst-plugins-bad-free/gst-plugins-bad.url b/source/l/gst-plugins-bad-free/gst-plugins-bad.url
new file mode 100644
index 000000000..06dd75495
--- /dev/null
+++ b/source/l/gst-plugins-bad-free/gst-plugins-bad.url
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/
diff --git a/source/l/gst-plugins-bad-free/slack-desc b/source/l/gst-plugins-bad-free/slack-desc
new file mode 100644
index 000000000..3ac60288c
--- /dev/null
+++ b/source/l/gst-plugins-bad-free/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gst-plugins-bad-free: gst-plugins-bad-free (bad set of GStreamer plugins)
+gst-plugins-bad-free:
+gst-plugins-bad-free: GStreamer Bad Plug-ins is a set of plug-ins that aren't tested well
+gst-plugins-bad-free: enough, or the code is not of good enough quality. They might be close
+gst-plugins-bad-free: to being good quality, but they're missing something - be it a good
+gst-plugins-bad-free: code review, some documentation, a set of tests, a real live
+gst-plugins-bad-free: maintainer, or some actual wide use.
+gst-plugins-bad-free:
+gst-plugins-bad-free: gst-plugins-bad-free packages the bad plugins with licenses that are
+gst-plugins-bad-free: free enough to ship.
+gst-plugins-bad-free:
diff --git a/source/l/gst-plugins-good/slack-desc b/source/l/gst-plugins-good/slack-desc
index 6698c01fb..a7769a91b 100644
--- a/source/l/gst-plugins-good/slack-desc
+++ b/source/l/gst-plugins-good/slack-desc
@@ -5,13 +5,13 @@
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
- |-----handy-ruler---------------------------------------------|
+ |-----handy-ruler------------------------------------------------------|
gst-plugins-good: gst-plugins-good (good set of GStreamer plugins)
gst-plugins-good:
-gst-plugins-good: GStreamer Good Plug-ins is a set of plug-ins that have good
-gst-plugins-good: quality code, correct functionality, and a good license
-gst-plugins-good: (LGPL for the plug-in code, LGPL or LGPL-compatible for the
-gst-plugins-good: supporting library).
+gst-plugins-good: GStreamer Good Plug-ins is a set of plug-ins that have good quality
+gst-plugins-good: code, correct functionality, and a good license (LGPL for the plug-in
+gst-plugins-good: code, LGPL or LGPL-compatible for the supporting library).
+gst-plugins-good:
gst-plugins-good:
gst-plugins-good:
gst-plugins-good:
diff --git a/source/l/gtk+2/gtk+2.SlackBuild b/source/l/gtk+2/gtk+2.SlackBuild
index 7eff8c4c9..a0ceb0f05 100755
--- a/source/l/gtk+2/gtk+2.SlackBuild
+++ b/source/l/gtk+2/gtk+2.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2016, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gtk+2
VERSION=${VERSION:-$(echo gtk+-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -103,10 +103,6 @@ zcat $CWD/gtk.gtk-tut.diff.gz | patch -p1 --verbose || exit 1
libtoolize --force
autoreconf -vif
-# Autoconf changes linux to linux-gnu.
-# Our host is $ARCH-slackware-linux not $ARCH-slackware-linux-gnu:
-sed -i -e 's#linux|linux-gnu|#linux|linux|#' config.sub
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -116,12 +112,12 @@ CFLAGS="$SLKCFLAGS" \
--with-xinput=yes \
--enable-xkb \
--enable-introspection \
- --build=$ARCH-slackware-linux || exit 1
+ --build=$ARCH-slackware-linux-gnu || exit 1
make $NUMJOBS || make || exit 1
# Check the host value that is passed to the compile to the one in this script:
-host="$ARCH-slackware-linux"
+host="$ARCH-slackware-linux-gnu"
compile_host=$(grep 'host_triplet =' gtk/Makefile | sed -e "s/.* = //")
if [ "x$compile_host" != "x$host" ]; then
echo "Host mismatch: compile='$compile_host', SlackBuild='$host'" && exit 1
diff --git a/source/l/gtk+3/gtk+3.SlackBuild b/source/l/gtk+3/gtk+3.SlackBuild
index 740909808..6d4702911 100755
--- a/source/l/gtk+3/gtk+3.SlackBuild
+++ b/source/l/gtk+3/gtk+3.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2020, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -77,14 +77,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# The version-check.py seems to be missing from the top-level directory, but
-# since we've checked the version numbers manually we'll just fix things so
-# the configure process doesn't try to call it:
-zcat $CWD/gtk.fix.missing.version-check.py.diff.gz | patch -p1 --verbose || exit 1
-
-# Loosen this up for gcc11:
-zcat $CWD/gtk.array-bounds.gcc11.diff.gz | patch -p1 --verbose || exit 1
-
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS"
export CXXFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS"
@@ -153,7 +145,7 @@ done
# Copy extra documentation into package.
mkdir -p $PKG/usr/doc/gtk+3-$VERSION
cp -a \
- AUTHORS COPYING NEWS README \
+ AUTHORS* CONTRIBUTING* COPYING* INSTALL* NEWS* README* \
$PKG/usr/doc/gtk+3-$VERSION
( cd $PKG/usr/doc/gtk+3-$VERSION
ln -s /usr/share/gtk-doc/html/gail-libgail-util .
diff --git a/source/l/gtk+3/gtk.array-bounds.gcc11.diff b/source/l/gtk+3/gtk.array-bounds.gcc11.diff
deleted file mode 100644
index 99392a31f..000000000
--- a/source/l/gtk+3/gtk.array-bounds.gcc11.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./meson.build.orig 2021-08-05 23:49:52.169416580 -0500
-+++ ./meson.build 2021-08-05 23:50:01.955416038 -0500
-@@ -309,7 +309,6 @@
- '-Werror=sequence-point',
- '-Werror=return-type',
- '-Werror=trigraphs',
-- '-Werror=array-bounds',
- '-Werror=write-strings',
- '-Werror=address',
- '-Werror=int-to-pointer-cast',
diff --git a/source/l/gtk+3/gtk.fix.missing.version-check.py.diff b/source/l/gtk+3/gtk.fix.missing.version-check.py.diff
deleted file mode 100644
index 296932324..000000000
--- a/source/l/gtk+3/gtk.fix.missing.version-check.py.diff
+++ /dev/null
@@ -1,39 +0,0 @@
---- ./Makefile.in.orig 2020-04-27 09:37:05.000000000 -0500
-+++ ./Makefile.in 2020-04-27 13:08:49.593281753 -0500
-@@ -1241,7 +1241,6 @@
- dist-hook:
- mkdir $(distdir)/subprojects
- cp -p $(srcdir)/subprojects/*.wrap $(distdir)/subprojects
-- $(top_srcdir)/check-version.py $(top_srcdir)/configure.ac $(top_srcdir)/meson.build
-
- distclean-local:
- if test "$(srcdir)" = "."; then :; else \
---- ./meson.build.orig 2020-04-27 09:35:59.000000000 -0500
-+++ ./meson.build 2020-04-27 13:09:29.805285185 -0500
-@@ -987,16 +987,6 @@
- install_dir : join_paths(gtk_datadir, 'gtk-3.0', 'valgrind'))
- endif
-
--test(
-- 'version-check',
-- find_program('check-version.py'),
-- args: [
-- join_paths(meson.current_source_dir(), 'configure.ac'),
-- join_paths(meson.current_source_dir(), 'meson.build'),
-- ],
-- suite: 'gtk',
--)
--
- summary = [
- '',
- '------',
---- ./Makefile.am.orig 2020-04-23 12:14:53.000000000 -0500
-+++ ./Makefile.am 2020-04-27 13:08:28.015279911 -0500
-@@ -84,7 +84,6 @@
- dist-hook:
- mkdir $(distdir)/subprojects
- cp -p $(srcdir)/subprojects/*.wrap $(distdir)/subprojects
-- $(top_srcdir)/check-version.py $(top_srcdir)/configure.ac $(top_srcdir)/meson.build
-
- distclean-local:
- if test "$(srcdir)" = "."; then :; else \
diff --git a/source/l/gtk4/gtk4.SlackBuild b/source/l/gtk4/gtk4.SlackBuild
index 6f6101b1d..0e26a9b00 100755
--- a/source/l/gtk4/gtk4.SlackBuild
+++ b/source/l/gtk4/gtk4.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018, 2020, 2021, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -67,7 +67,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf gtk-$VERSION
-tar xvf $CWD/gtk-$VERSION.tar.?z || exit 1
+echo "Extracting $CWD/gtk-$VERSION.tar.?z..."
+tar xf $CWD/gtk-$VERSION.tar.?z || exit 1
cd gtk-$VERSION || exit 1
chown -R root:root .
@@ -82,7 +83,7 @@ export CFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG"
export CXXFLAGS="$SLKCFLAGS -DG_ENABLE_DEBUG"
mkdir meson-build
cd meson-build
-meson setup \
+unshare -n meson setup \
--prefix=/usr \
--libdir=lib${LIBDIRSUFFIX} \
--libexecdir=/usr/libexec \
@@ -95,13 +96,13 @@ meson setup \
--localstatedir=/var \
--buildtype=release \
-Dman-pages=true \
- -Ddemos=true \
- -Dgtk_doc=false \
- -Dbroadway_backend=true \
- -Dexamples=false \
- -Dtests=false \
- -Dinstalled_tests=false \
- -Dwayland_backend=true \
+ -Dbuild-demos=true \
+ -Ddocumentation=false \
+ -Dbroadway-backend=true \
+ -Dbuild-examples=false \
+ -Dbuild-tests=false \
+ -Dwayland-backend=true \
+ -Dintrospection=enabled \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
@@ -138,6 +139,10 @@ cd ..
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+# It seems that --mandir is ignored:
+rsync -lprvt $PKG/usr/share/man/ $PKG/usr/man/
+rm -rf $PKG/usr/share/man/
+
# Compress manual pages:
find $PKG/usr/man -type f -exec gzip -9 {} \+
for i in $( find $PKG/usr/man -type l ) ; do
diff --git a/source/l/gtkmm4/gtkmm4.SlackBuild b/source/l/gtkmm4/gtkmm4.SlackBuild
new file mode 100755
index 000000000..2e5060740
--- /dev/null
+++ b/source/l/gtkmm4/gtkmm4.SlackBuild
@@ -0,0 +1,122 @@
+#!/bin/bash
+
+# Copyright 2015, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+SRCNAM=gtkmm
+PKGNAM=gtkmm4
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+SRCNAM=gtkmm
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$SRCNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS PORTING README* \
+ $PKG/usr/doc/$SRCNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${SRCNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/gtkmm4/slack-desc b/source/l/gtkmm4/slack-desc
new file mode 100644
index 000000000..920c473c6
--- /dev/null
+++ b/source/l/gtkmm4/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gtkmm4: gtkmm4 (C++ interface for GTK4)
+gtkmm4:
+gtkmm4: gtkmm4 is the official C++ interface for the popular GUI library
+gtkmm4: GTK4. Highlights include typesafe callbacks, and a comprehensive set
+gtkmm4: of widgets that are easily extensible via inheritance.
+gtkmm4:
+gtkmm4: Homepage: http://www.gtkmm.org/
+gtkmm4:
+gtkmm4:
+gtkmm4:
+gtkmm4:
diff --git a/source/l/gtksourceview3/gtksourceview3.SlackBuild b/source/l/gtksourceview3/gtksourceview3.SlackBuild
index cfb192ce9..a16b6a2f2 100755
--- a/source/l/gtksourceview3/gtksourceview3.SlackBuild
+++ b/source/l/gtksourceview3/gtksourceview3.SlackBuild
@@ -32,7 +32,7 @@ BUILD=${BUILD:-4}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild b/source/l/gtkspell3/gtkspell3.SlackBuild
index 169ebdc79..ba1f74612 100755
--- a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
+++ b/source/l/gtkspell3/gtkspell3.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2018, 2019, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018, 2021 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=libvisual-plugins
+PKGNAM=gtkspell3
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-7}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -46,25 +46,25 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686 -fcommon"
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2 -fcommon"
+ SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC -fcommon"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
- SLKCFLAGS="-O2 -fcommon"
+ SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
-rm -rf $PKG
-mkdir -p $PKG
-
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
@@ -78,22 +78,23 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-zcat $CWD/libvisual-plugins.gstreamer.diff.gz | patch -p1 --verbose || exit 1
-zcat $CWD/60_no-const-vispluginfo-in-nastyfft.patch.gz | patch -p1 --verbose || exit 1
-
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --disable-corona \
- --disable-gforce \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -113,10 +114,18 @@ if [ -d $PKG/usr/man ]; then
)
fi
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS COPYING* NEWS README* TODO \
+ AUTHORS* COPYING* ChangeLog NEWS* README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/gtkspell3/slack-desc b/source/l/gtkspell3/slack-desc
new file mode 100644
index 000000000..62e8fe436
--- /dev/null
+++ b/source/l/gtkspell3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gtkspell3: gtkspell3 (GTK3 spell checker interface library)
+gtkspell3:
+gtkspell3: GtkSpell3 provides MSWord/MacOSX-style highlighting of misspelled
+gtkspell3: words in a GtkTextView widget. Right-clicking a misspelled word pops
+gtkspell3: up a menu of suggested replacements.
+gtkspell3:
+gtkspell3: Homepage: http://gtkspell.sourceforge.net
+gtkspell3:
+gtkspell3:
+gtkspell3:
+gtkspell3:
diff --git a/source/l/gvfs/gvfs.SlackBuild b/source/l/gvfs/gvfs.SlackBuild
index 199ebdbfc..ae7e3ed2c 100755
--- a/source/l/gvfs/gvfs.SlackBuild
+++ b/source/l/gvfs/gvfs.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2009-2012 Robby Workman, Northport, Alabama, USA
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -92,7 +92,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
- -Ddnssd=false \
+ -Ddnssd=true \
-Dgoa=false \
-Dgoogle=false \
-Dlogind=true \
@@ -100,6 +100,7 @@ meson setup \
-Dnfs=false \
-Dsystemduserunitdir=no \
-Dtmpfilesdir=no \
+ -Donedrive=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/harfbuzz/harfbuzz.SlackBuild b/source/l/harfbuzz/harfbuzz.SlackBuild
index 4e0ccddbd..6797564eb 100755
--- a/source/l/harfbuzz/harfbuzz.SlackBuild
+++ b/source/l/harfbuzz/harfbuzz.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2013, 2017, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2013, 2017, 2018, 2020, 2021, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -96,7 +96,7 @@ meson setup \
--buildtype=release \
-Dglib=enabled \
-Dgobject=enabled \
- -Dgraphite=enabled \
+ -Dgraphite2=enabled \
-Dintrospection=enabled \
-Dtests=disabled \
-Dbenchmark=disabled \
@@ -110,7 +110,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS* COPYING* INSTALL* NEWS* README* THANKS* TODO* \
+ AUTHORS* CONFIG* COPYING* INSTALL* NEWS* README* THANKS* TODO* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/harfbuzz/harfbuzz.url b/source/l/harfbuzz/harfbuzz.url
index 29ce27a5a..359c726db 100644
--- a/source/l/harfbuzz/harfbuzz.url
+++ b/source/l/harfbuzz/harfbuzz.url
@@ -1 +1,2 @@
-https://github.com/harfbuzz/harfbuzz/releases
+#https://github.com/harfbuzz/harfbuzz/releases
+https://github.com/harfbuzz/harfbuzz/tags
diff --git a/source/l/hunspell/hunspell.url b/source/l/hunspell/hunspell.url
new file mode 100644
index 000000000..bce7bdda2
--- /dev/null
+++ b/source/l/hunspell/hunspell.url
@@ -0,0 +1 @@
+https://github.com/hunspell/hunspell
diff --git a/source/l/hyphen/hyphen.SlackBuild b/source/l/hyphen/hyphen.SlackBuild
index a12db05d4..93b803011 100755
--- a/source/l/hyphen/hyphen.SlackBuild
+++ b/source/l/hyphen/hyphen.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/icu4c/icu4c.SlackBuild b/source/l/icu4c/icu4c.SlackBuild
index 9b2a2f1a9..a43d2d4e3 100755
--- a/source/l/icu4c/icu4c.SlackBuild
+++ b/source/l/icu4c/icu4c.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for icu4c
# Copyright 2007-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2012, 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2013, 2015, 2016, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -81,8 +81,8 @@ find . \
-o -perm 400 \) -exec chmod 644 {} \+
cd source/
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
+ CFLAGS="$SLKCFLAGS -Wno-gnu-line-marker" \
+ CXXFLAGS="$SLKCFLAGS -Wno-gnu-line-marker" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/icu4c/icu4c.url b/source/l/icu4c/icu4c.url
index 45fce69fe..69c9c8d0f 100644
--- a/source/l/icu4c/icu4c.url
+++ b/source/l/icu4c/icu4c.url
@@ -1 +1,2 @@
-http://site.icu-project.org/download
+https://github.com/unicode-org/icu
+https://github.com/unicode-org/icu/releases/download/release-74-2/icu4c-74_2-src.tgz
diff --git a/source/l/id3lib/id3lib.SlackBuild b/source/l/id3lib/id3lib.SlackBuild
index 04fb0164a..e2942abdd 100755
--- a/source/l/id3lib/id3lib.SlackBuild
+++ b/source/l/id3lib/id3lib.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-4}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/imagemagick/imagemagick.SlackBuild b/source/l/imagemagick/imagemagick.SlackBuild
index ac150648e..c1fb53430 100755
--- a/source/l/imagemagick/imagemagick.SlackBuild
+++ b/source/l/imagemagick/imagemagick.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016, 2017, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -42,6 +42,9 @@ BASEVER=$FILEVER
# contain a '-'. We'll try to autogenerate this one.
PKGVER=$(echo $FILEVER | tr - _)
+# Default security policy to install as policy.xml:
+POLICY=${POLICY:-limited}
+
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -93,9 +96,6 @@ rm -rf ImageMagick-$BASEVER
tar xvf $CWD/ImageMagick-$FILEVER.tar.?z || exit 1
cd ImageMagick-$BASEVER || exit 1
-# Harden the default settings in policy.xml to prevent security issues:
-zcat $CWD/policy.xml.diff.gz | patch -p1 --verbose || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -114,28 +114,30 @@ CXXFLAGS="$SLKCFLAGS" \
--with-x \
--with-frozenpaths=no \
--with-modules \
- --disable-opencl \
+ --enable-opencl \
--enable-hdri \
--enable-static=no \
--enable-shared \
+ --with-fftw \
--with-gcc-arch=$ARCH \
--with-perl \
--with-perl-options="INSTALLDIRS=vendor" \
--with-rsvg \
+ --with-security-policy=$POLICY \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
# First, spam the running development system, as ImageMagick is unable to
# properly link the utilities against a new shared library major version
# otherwise which has led to several broken packages over the years:
-make install || exit 1
+make $NUMJOBS install || exit 1
rm -f /usr/lib${LIBDIRSUFFIX}/libMagick*.la
/sbin/ldconfig
# Now build again against the new libraries and headers:
make clean
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+make $NUMJOBS install DESTDIR=$PKG || exit 1
# This should certainly not be included.
# It stomps on the libtool package.
@@ -146,6 +148,14 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libltdl.*
# to locate modules.
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+# Make sure the proper security policy.xml is installed:
+cp -a config/policy-${POLICY}.xml $PKG/etc/ImageMagick-7/policy.xml
+
+# Provide all the security policy XML files as examples:
+for file in config/policy*xml ; do
+ cp -a $file $PKG/etc/ImageMagick-7/$(basename ${file}).example
+done
+
( cd $PKG
# Nothing but a perl upgrade should replace this (and maybe not even that)
find . -name perllocal.pod | xargs rm -f
@@ -189,7 +199,7 @@ fi
# Move config files to .new:
( cd $PKG/etc/ImageMagick*
- for file in * ; do
+ for file in *.xml ; do
mv ${file} ${file}.new
done
)
@@ -214,4 +224,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/imagemagick-$PKGVER-$ARCH-$BUILD.txz
-
diff --git a/source/l/imagemagick/imagemagick.url b/source/l/imagemagick/imagemagick.url
index 5378667d1..a4f4109ca 100644
--- a/source/l/imagemagick/imagemagick.url
+++ b/source/l/imagemagick/imagemagick.url
@@ -1 +1,2 @@
-https://github.com/ImageMagick/ImageMagick
+https://github.com/ImageMagick/ImageMagick/tags
+https://imagemagick.org/archive/
diff --git a/source/l/imagemagick/policy.xml.diff b/source/l/imagemagick/policy.xml.diff
deleted file mode 100644
index 95a02f279..000000000
--- a/source/l/imagemagick/policy.xml.diff
+++ /dev/null
@@ -1,32 +0,0 @@
---- ./config/policy.xml.orig 2020-11-14 07:53:19.000000000 -0600
-+++ ./config/policy.xml 2020-11-16 13:45:10.032089547 -0600
-@@ -52,6 +52,21 @@
- <policy domain="coder" rights="read|write" pattern="{GIF,JPEG,PNG,WEBP}" />
- -->
- <policymap>
-+ <policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/>
-+ <!-- SECURITY: disable potentially insecure coders: -->
-+ <policy domain="coder" rights="none" pattern="EPHEMERAL" />
-+ <policy domain="coder" rights="none" pattern="HTTPS" />
-+ <policy domain="coder" rights="none" pattern="MVG" />
-+ <policy domain="coder" rights="none" pattern="MSL" />
-+ <policy domain="coder" rights="none" pattern="TEXT" />
-+ <policy domain="coder" rights="none" pattern="SHOW" />
-+ <policy domain="coder" rights="none" pattern="WIN" />
-+ <policy domain="coder" rights="none" pattern="PLT" />
-+ <!-- SECURITY: prevent indirect reads: -->
-+ <policy domain="path" rights="none" pattern="@*" />
-+ <!-- SECURITY: prevent pipe to shell: -->
-+ <policy domain="path" rights="none" pattern="|*" />
-+ <!-- Some examples: -->
- <!-- <policy domain="resource" name="temporary-path" value="/tmp"/> -->
- <!-- <policy domain="resource" name="memory" value="2GiB"/> -->
- <!-- <policy domain="resource" name="map" value="4GiB"/> -->
-@@ -70,7 +85,6 @@
- <!-- <policy domain="path" rights="none" pattern="@*" /> -->
- <!-- <policy domain="cache" name="memory-map" value="anonymous"/> -->
- <!-- <policy domain="cache" name="synchronize" value="True"/> -->
-- <!-- <policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/> -->
- <!-- <policy domain="system" name="max-memory-request" value="256MiB"/> -->
- <!-- <policy domain="system" name="shred" value="2"/> -->
- <!-- <policy domain="system" name="precision" value="6"/> -->
diff --git a/source/l/immer/immer.SlackBuild b/source/l/immer/immer.SlackBuild
new file mode 100755
index 000000000..793339fcd
--- /dev/null
+++ b/source/l/immer/immer.SlackBuild
@@ -0,0 +1,123 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=immer
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib${LIBDIRSUFFIX} \
+ -Dimmer_BUILD_TESTS=OFF \
+ -Dimmer_BUILD_EXAMPLES=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/immer/immer.url b/source/l/immer/immer.url
new file mode 100644
index 000000000..49b677189
--- /dev/null
+++ b/source/l/immer/immer.url
@@ -0,0 +1 @@
+https://github.com/arximboldi/immer
diff --git a/source/l/gamin/slack-desc b/source/l/immer/slack-desc
index 0d4d257f3..c14f9d2fa 100644
--- a/source/l/gamin/slack-desc
+++ b/source/l/immer/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-gamin: gamin (A minimalist FAM replacement)
-gamin:
-gamin: Gamin is a file and directory monitoring system defined to be a subset
-gamin: of the FAM (File Alteration Monitor) system.
-gamin:
-gamin: The homepage for Gamin is: http://www.gnome.org/~veillard/gamin/
-gamin:
-gamin:
-gamin:
-gamin:
-gamin:
+immer: immer (persistent and immutable data structures for C++)
+immer:
+immer: immer is a library of persistent and immutable data structures written
+immer: in C++. These enable whole new kinds of architectures for interactive
+immer: and concurrent programs of striking simplicity, correctness, and
+immer: performance.
+immer:
+immer: Homepage: https://github.com/arximboldi/immer
+immer:
+immer:
+immer:
diff --git a/source/l/isl/isl.SlackBuild b/source/l/isl/isl.SlackBuild
index 27c2666f7..bc5dd15dc 100755
--- a/source/l/isl/isl.SlackBuild
+++ b/source/l/isl/isl.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/isl/isl.url b/source/l/isl/isl.url
index bfb80fc60..00a403117 100644
--- a/source/l/isl/isl.url
+++ b/source/l/isl/isl.url
@@ -1 +1,2 @@
-http://isl.gforge.inria.fr
+https://libisl.sourceforge.io
+#http://isl.gforge.inria.fr
diff --git a/source/l/isl/slack-desc b/source/l/isl/slack-desc
index f96ea71e9..0fb15f177 100644
--- a/source/l/isl/slack-desc
+++ b/source/l/isl/slack-desc
@@ -14,6 +14,6 @@ isl: the sets and relations may involve both parameters and existentially
isl: quantified variables. All computations are performed in exact integer
isl: arithmetic using GMP.
isl:
-isl: Homepage: http://isl.gforge.inria.fr
+isl: Homepage: https://libisl.sourceforge.io
isl:
isl:
diff --git a/source/l/iso-codes/iso-codes.SlackBuild b/source/l/iso-codes/iso-codes.SlackBuild
index 31e7aab06..ebf2b100f 100755
--- a/source/l/iso-codes/iso-codes.SlackBuild
+++ b/source/l/iso-codes/iso-codes.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2008, 2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2011, 2015, 2018, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -32,7 +32,7 @@ BUILD=${BUILD:-1}
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ echo "$PKGNAM-$(echo $VERSION | tr -d v)-$ARCH-$BUILD.txz"
exit 0
fi
@@ -43,9 +43,9 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$VERSION || exit 1
+rm -rf $PKGNAM-${VERSION}
+tar xvf $CWD/$PKGNAM-${VERSION}.tar.?z || exit 1
+cd $PKGNAM-${VERSION} || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -63,15 +63,15 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+mkdir -p $PKG/usr/doc/$PKGNAM-$(echo $VERSION | tr -d v)
cp -a \
- COPYING* LICENSE README* TODO \
- $PKG/usr/doc/$PKGNAM-$VERSION
+ COPYING* LICENSE* README* TODO* \
+ $PKG/usr/doc/$PKGNAM-$(echo $VERSION | tr -d v)
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$(echo $VERSION | tr -d v))
cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
@@ -80,5 +80,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION | tr -d v)-$ARCH-$BUILD.txz
diff --git a/source/l/jansson/jansson.SlackBuild b/source/l/jansson/jansson.SlackBuild
index a8edd6c06..9cd92ca7e 100755
--- a/source/l/jansson/jansson.SlackBuild
+++ b/source/l/jansson/jansson.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/jasper/jasper.SlackBuild b/source/l/jasper/jasper.SlackBuild
index b42ca47f5..f6ca77fe9 100755
--- a/source/l/jasper/jasper.SlackBuild
+++ b/source/l/jasper/jasper.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2007, 2008 Eric Hameleers, Eijdhoven, NL
-# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Permission to use, copy, modify, and distribute this software for
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=jasper
-SRCNAM=jasper-version
+SRCNAM=jasper
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
@@ -93,6 +93,7 @@ cd builder
-DCMAKE_INSTALL_DOCDIR=/usr/doc/$PKGNAM-$VERSION \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DLATEX_FOUND=NO \
+ -DALLOW_IN_SOURCE_BUILD=YES \
.. || exit 1
make $NUMJOBS VERBOSE=1 || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -100,10 +101,18 @@ cd -
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- COPYRIGHT INSTALL LICENSE README* \
+ COPYRIGHT* ChangeLog INSTALL* LICENSE* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
find $PKG/usr/doc -type f -exec chmod 644 {} \+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \+
for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
diff --git a/source/l/jasper/jasper.url b/source/l/jasper/jasper.url
index cbaf82d0b..0af23128e 100644
--- a/source/l/jasper/jasper.url
+++ b/source/l/jasper/jasper.url
@@ -1 +1,2 @@
-https://github.com/mdadams/jasper/releases
+https://github.com/jasper-software/jasper/releases
+https://github.com/jasper-software/jasper/releases/download/version-4.2.3/jasper-4.2.3.tar.gz
diff --git a/source/l/jemalloc/jemalloc.SlackBuild b/source/l/jemalloc/jemalloc.SlackBuild
index 6eb9a4f04..ced888855 100755
--- a/source/l/jemalloc/jemalloc.SlackBuild
+++ b/source/l/jemalloc/jemalloc.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for jemalloc
# Copyright 2012-2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=jemalloc
VERSION=${VERSION:-$(echo jemalloc-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -78,6 +78,13 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/jemalloc/jemalloc.url b/source/l/jemalloc/jemalloc.url
index 9334dde38..566e184a0 100644
--- a/source/l/jemalloc/jemalloc.url
+++ b/source/l/jemalloc/jemalloc.url
@@ -1 +1,2 @@
+# Use .bz2 tarball or the VERSION file is bad!
https://github.com/jemalloc/jemalloc
diff --git a/source/l/jmtpfs/jmtpfs.SlackBuild b/source/l/jmtpfs/jmtpfs.SlackBuild
index eca19b277..8f71c8ffe 100755
--- a/source/l/jmtpfs/jmtpfs.SlackBuild
+++ b/source/l/jmtpfs/jmtpfs.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/json-c/json-c.SlackBuild b/source/l/json-c/json-c.SlackBuild
index c6dd70644..4764c7dfb 100755
--- a/source/l/json-c/json-c.SlackBuild
+++ b/source/l/json-c/json-c.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=json-c
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 3- -d - | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -71,9 +71,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAME-$PKGNAM-$VERSION
+rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$PKGNAM-$VERSION || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/l/json-glib/json-glib.SlackBuild b/source/l/json-glib/json-glib.SlackBuild
index e0cbd9f7d..0fc1c440b 100755
--- a/source/l/json-glib/json-glib.SlackBuild
+++ b/source/l/json-glib/json-glib.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -102,7 +102,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
- -Ddocs=false \
+ -Dgtk_doc=disabled \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/kdsoap/kdsoap.SlackBuild b/source/l/kdsoap/kdsoap.SlackBuild
index c6df5a089..c2f2736fe 100755
--- a/source/l/kdsoap/kdsoap.SlackBuild
+++ b/source/l/kdsoap/kdsoap.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/kdsoap/kdsoap.url b/source/l/kdsoap/kdsoap.url
index dc0f8926e..02920492b 100644
--- a/source/l/kdsoap/kdsoap.url
+++ b/source/l/kdsoap/kdsoap.url
@@ -1 +1,2 @@
https://github.com/KDAB/KDSoap
+https://github.com/KDAB/KDSoap/releases/download/kdsoap-2.2.0/kdsoap-2.2.0.tar.gz
diff --git a/source/l/keyutils/keyutils.SlackBuild b/source/l/keyutils/keyutils.SlackBuild
index 53106d42e..43cfeef0d 100755
--- a/source/l/keyutils/keyutils.SlackBuild
+++ b/source/l/keyutils/keyutils.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/lager/lager.SlackBuild b/source/l/lager/lager.SlackBuild
new file mode 100755
index 000000000..292f0d6d1
--- /dev/null
+++ b/source/l/lager/lager.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=lager
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Account for $LIBDIRSUFFIX:
+sed -i "s|lib/cmake/Lager|lib$LIBDIRSUFFIX/cmake/Lager|g" CMakeLists.txt
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -Dlager_BUILD_TESTS=OFF \
+ -Dlager_BUILD_EXAMPLES=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/lager/lager.url b/source/l/lager/lager.url
new file mode 100644
index 000000000..5792be37c
--- /dev/null
+++ b/source/l/lager/lager.url
@@ -0,0 +1 @@
+https://github.com/arximboldi/lager
diff --git a/source/l/lager/slack-desc b/source/l/lager/slack-desc
new file mode 100644
index 000000000..84e164a47
--- /dev/null
+++ b/source/l/lager/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+lager: lager (C++ library using the unidirectional data-flow architecture)
+lager:
+lager: lager is a C++ library to assist 'value-oriented design' by
+lager: implementing the 'unidirectional data-flow architecture.' It is
+lager: heavily inspired by Elm and Redux, and enables composable designs by
+lager: promoting the use of simple value types and testable application logic
+lager: via pure functions. And you get time-travel for free!
+lager:
+lager: Homepage: https://github.com/arximboldi/lager
+lager:
+lager:
diff --git a/source/l/lame/lame.SlackBuild b/source/l/lame/lame.SlackBuild
index 00fe338db..c41b6d436 100755
--- a/source/l/lame/lame.SlackBuild
+++ b/source/l/lame/lame.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-4}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/lcms/lcms.SlackBuild b/source/l/lcms/lcms.SlackBuild
index b4609fc7e..4bd50d511 100755
--- a/source/l/lcms/lcms.SlackBuild
+++ b/source/l/lcms/lcms.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lcms
VERSION=${VERSION:-$(echo lcms-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/lcms2/lcms2.SlackBuild b/source/l/lcms2/lcms2.SlackBuild
index 64a22a5f6..82e74f89d 100755
--- a/source/l/lcms2/lcms2.SlackBuild
+++ b/source/l/lcms2/lcms2.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lcms2
-VERSION=${VERSION:-$(echo Little-CMS-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -79,9 +79,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf Little-CMS-${VERSION}
-tar xvf $CWD/Little-CMS-$VERSION.tar.?z || exit 1
-cd Little-CMS-${VERSION} || exit 1
+rm -rf ${PKGNAM}-${VERSION}
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-${VERSION} || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/l/lensfun/lensfun.SlackBuild b/source/l/lensfun/lensfun.SlackBuild
index 9b686727f..00377fee5 100755
--- a/source/l/lensfun/lensfun.SlackBuild
+++ b/source/l/lensfun/lensfun.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lensfun
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libaio/libaio.SlackBuild b/source/l/libaio/libaio.SlackBuild
index a19f49c91..f61cc917b 100755
--- a/source/l/libaio/libaio.SlackBuild
+++ b/source/l/libaio/libaio.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libaio
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libappindicator/libappindicator-no-python.patch b/source/l/libappindicator/libappindicator-no-python.patch
new file mode 100644
index 000000000..587cddec3
--- /dev/null
+++ b/source/l/libappindicator/libappindicator-no-python.patch
@@ -0,0 +1,888 @@
+diff --git a/bindings/Makefile.am b/bindings/Makefile.am
+index d1f6d73..dccca6c 100644
+--- a/bindings/Makefile.am
++++ b/bindings/Makefile.am
+@@ -3,7 +3,6 @@ SUBDIRS = \
+ vala
+ else
+ SUBDIRS = \
+- python \
+ vala
+ endif
+
+diff --git a/bindings/python/Makefile.am b/bindings/python/Makefile.am
+deleted file mode 100644
+index fe95c02..0000000
+--- a/bindings/python/Makefile.am
++++ /dev/null
+@@ -1,39 +0,0 @@
+-defsdir = $(datadir)/pygtk/2.0/defs
+-defs_DATA = appindicator.defs
+-
+-#CFLAGS = -Wall -Werror
+-INCLUDES = \
+- -I$(top_srcdir)/src \
+- -DG_LOG_DOMAIN=\"appindicator-python\" \
+- -DDATADIR=\"$(datadir)\" \
+- -DLIBDIR=\"$(libdir)\" \
+- $(APPINDICATOR_PYTHON_CFLAGS) \
+- $(PYTHON_INCLUDES)
+-
+-pkgpythondir = $(pyexecdir)
+-pkgpyexecdir = $(pyexecdir)
+-
+-pkgappindicatordir = $(pkgpythondir)/appindicator
+-pkgappindicator_PYTHON = __init__.py
+-
+-appindicatordir = $(pkgpyexecdir)/appindicator
+-appindicator_LTLIBRARIES = _appindicator.la
+-
+-_appindicator_la_LDFLAGS = -module -avoid-version -export-symbols-regex init_appindicator
+-_appindicator_la_LIBADD = $(APPINDICATOR_PYTHON_LIBS) -L$(top_builddir)/src/.libs -lappindicator
+-_appindicator_la_SOURCES = appindicatormodule.c
+-nodist__appindicator_la_SOURCES = appindicator.c
+-
+-CLEANFILES = appindicator.c
+-EXTRA_DIST = appindicator.override.in appindicator-arg-types.py $(defs_DATA)
+-appindicator.c: $(defs_DATA) appindicator.override
+-
+-%.c: %.defs
+- ($(PYGTK_CODEGEN) \
+- --register $(PYGTK_DEFSDIR)/gtk-types.defs \
+- --register $(PYGTK_DEFSDIR)/gdk-types.defs \
+- --load-types $(srcdir)/appindicator-arg-types.py \
+- --override $*.override \
+- --prefix py$* $(srcdir)/$*.defs) > gen-$*.c \
+- && cp gen-$*.c $*.c \
+- && rm -f gen-$*.c
+diff --git a/bindings/python/__init__.py b/bindings/python/__init__.py
+deleted file mode 100644
+index 20e2140..0000000
+--- a/bindings/python/__init__.py
++++ /dev/null
+@@ -1,27 +0,0 @@
+-# Python bindings for libappindicator.
+-#
+-# Copyright 2009 Canonical Ltd.
+-#
+-# Authors:
+-# Eitan Isaacson <eitan@ascender.com>
+-# Neil Jagdish Patel <neil.patel@canonical.com>
+-#
+-# This program is free software: you can redistribute it and/or modify it
+-# under the terms of either or both of the following licenses:
+-#
+-# 1) the GNU Lesser General Public License version 3, as published by the
+-# Free Software Foundation; and/or
+-# 2) the GNU Lesser General Public License version 2.1, as published by
+-# the Free Software Foundation.
+-#
+-# This program is distributed in the hope that it will be useful, but
+-# WITHOUT ANY WARRANTY; without even the implied warranties of
+-# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+-# PURPOSE. See the applicable version of the GNU Lesser General Public
+-# License for more details.
+-#
+-# You should have received a copy of both the GNU Lesser General Public
+-# License version 3 and version 2.1 along with this program. If not, see
+-# <http://www.gnu.org/licenses/>
+-
+-from _appindicator import *
+diff --git a/bindings/python/appindicator-arg-types.py b/bindings/python/appindicator-arg-types.py
+deleted file mode 100644
+index 9d74aa0..0000000
+--- a/bindings/python/appindicator-arg-types.py
++++ /dev/null
+@@ -1,27 +0,0 @@
+-# Python bindings for libappindicator.
+-#
+-# Copyright 2009 Canonical Ltd.
+-#
+-# Authors:
+-# Eitan Isaacson <eitan@ascender.com>
+-#
+-# This program is free software: you can redistribute it and/or modify it
+-# under the terms of either or both of the following licenses:
+-#
+-# 1) the GNU Lesser General Public License version 3, as published by the
+-# Free Software Foundation; and/or
+-# 2) the GNU Lesser General Public License version 2.1, as published by
+-# the Free Software Foundation.
+-#
+-# This program is distributed in the hope that it will be useful, but
+-# WITHOUT ANY WARRANTY; without even the implied warranties of
+-# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+-# PURPOSE. See the applicable version of the GNU Lesser General Public
+-# License for more details.
+-#
+-# You should have received a copy of both the GNU Lesser General Public
+-# License version 3 and version 2.1 along with this program. If not, see
+-# <http://www.gnu.org/licenses/>
+-
+-import argtypes
+-
+diff --git a/bindings/python/appindicator.defs b/bindings/python/appindicator.defs
+deleted file mode 100644
+index 4fcc2d5..0000000
+--- a/bindings/python/appindicator.defs
++++ /dev/null
+@@ -1,200 +0,0 @@
+-;; -*- scheme -*-
+-; object definitions ...
+-(define-object Indicator
+- (in-module "App")
+- (parent "GObject")
+- (c-name "AppIndicator")
+- (gtype-id "APP_TYPE_INDICATOR")
+-)
+-
+-;; Enumerations and flags ...
+-
+-(define-enum IndicatorCategory
+- (in-module "App")
+- (c-name "AppIndicatorCategory")
+- (gtype-id "APP_INDICATOR_TYPE_INDICATOR_CATEGORY")
+- (values
+- '("ApplicationStatus" "APP_INDICATOR_CATEGORY_APPLICATION_STATUS")
+- '("Communications" "APP_INDICATOR_CATEGORY_COMMUNICATIONS")
+- '("SystemServices" "APP_INDICATOR_CATEGORY_SYSTEM_SERVICES")
+- '("Hardware" "APP_INDICATOR_CATEGORY_HARDWARE")
+- '("Other" "APP_INDICATOR_CATEGORY_OTHER")
+- )
+-)
+-
+-(define-enum IndicatorStatus
+- (in-module "App")
+- (c-name "AppIndicatorStatus")
+- (gtype-id "APP_INDICATOR_TYPE_INDICATOR_STATUS")
+- (values
+- '("Passive" "APP_INDICATOR_STATUS_PASSIVE")
+- '("Active" "APP_INDICATOR_STATUS_ACTIVE")
+- '("NeedsAttention" "APP_INDICATOR_STATUS_ATTENTION")
+- )
+-)
+-
+-;; From app-indicator.h
+-
+-(define-function app_indicator_get_type
+- (c-name "app_indicator_get_type")
+- (return-type "GType")
+-)
+-
+-(define-function app_indicator_new_with_path
+- (c-name "app_indicator_new_with_path")
+- (is-constructor-of "AppIndicator")
+- (return-type "AppIndicator*")
+- (parameters
+- '("const-gchar*" "id")
+- '("const-gchar*" "icon_name")
+- '("AppIndicatorCategory" "category")
+- '("const-gchar*" "icon_theme_path" (null-ok) (default "NULL"))
+- )
+-)
+-
+-(define-method set_status
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_status")
+- (return-type "none")
+- (parameters
+- '("AppIndicatorStatus" "status")
+- )
+-)
+-
+-(define-method set_attention_icon
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_attention_icon_full")
+- (return-type "none")
+- (parameters
+- '("const-gchar*" "icon_name")
+- '("const-gchar*" "icon_desc" (null-ok) (default "NULL"))
+- )
+-)
+-
+-(define-method set_menu
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_menu")
+- (return-type "none")
+- (parameters
+- '("GtkMenu*" "menu")
+- )
+-)
+-
+-(define-method set_icon
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_icon_full")
+- (return-type "none")
+- (parameters
+- '("const-gchar*" "icon_name")
+- '("const-gchar*" "icon_desc" (null-ok) (default "NULL"))
+- )
+-)
+-
+-(define-method set_label
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_label")
+- (return-type "none")
+- (parameters
+- '("const-gchar*" "label" (null-ok))
+- '("const-gchar*" "guide" (null-ok) (default "NULL"))
+- )
+-)
+-
+-(define-method set_ordering_index
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_ordering_index")
+- (parameters
+- '("guint32" "ordering_index")
+- )
+-)
+-
+-(define-method set_icon_theme_path
+- (of-object "AppIndicator")
+- (c-name "app_indicator_set_icon_theme_path")
+- (return-type "none")
+- (parameters
+- '("const-gchar*" "icon_theme_path" (null-ok))
+- )
+-)
+-
+-(define-method get_id
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_id")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_category
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_category")
+- (return-type "AppIndicatorCategory")
+-)
+-
+-(define-method get_status
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_status")
+- (return-type "AppIndicatorStatus")
+-)
+-
+-(define-method get_icon
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_icon")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_icon_desc
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_icon_desc")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_icon_theme_path
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_icon_theme_path")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_attention_icon
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_attention_icon")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_attention_icon_desc
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_attention_icon_desc")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_menu
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_menu")
+- (return-type "GtkMenu*")
+-)
+-
+-(define-method get_label
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_label")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_label_guide
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_label_guide")
+- (return-type "const-gchar*")
+-)
+-
+-(define-method get_ordering_index
+- (of-object "AppIndicator")
+- (c-name "app_indicator_get_ordering_index")
+- (return-type "guint32")
+-)
+-
+-(define-method build_menu_from_desktop
+- (of-object "AppIndicator")
+- (c-name "app_indicator_build_menu_from_desktop")
+- (return-type "none")
+- (parameters
+- '("const-gchar*" "desktop_file")
+- '("const-gchar*" "desktop_profile")
+- )
+-)
+diff --git a/bindings/python/appindicator.override.in b/bindings/python/appindicator.override.in
+deleted file mode 100644
+index 84d3159..0000000
+--- a/bindings/python/appindicator.override.in
++++ /dev/null
+@@ -1,65 +0,0 @@
+-/*
+-Python bindings for libappindicator.
+-
+-Copyright 2009 Canonical Ltd.
+-
+-Authors:
+- Eitan Isaacson <eitan@ascender.com> (original)
+- Neil Jagdish Patel <neil.patel@canonical.com>
+-
+-This program is free software: you can redistribute it and/or modify it
+-under the terms of either or both of the following licenses:
+-
+-1) the GNU Lesser General Public License version 3, as published by the
+-Free Software Foundation; and/or
+-2) the GNU Lesser General Public License version 2.1, as published by
+-the Free Software Foundation.
+-
+-This program is distributed in the hope that it will be useful, but
+-WITHOUT ANY WARRANTY; without even the implied warranties of
+-MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+-PURPOSE. See the applicable version of the GNU Lesser General Public
+-License for more details.
+-
+-You should have received a copy of both the GNU Lesser General Public
+-License version 3 and version 2.1 along with this program. If not, see
+-<http://www.gnu.org/licenses/>
+-*/
+-%%
+-headers
+-#include <Python.h>
+-#include "@top_srcdir@/src/app-indicator.h"
+-#include "@top_builddir@/src/app-indicator-enum-types.h"
+-#include <glib.h>
+-#include "pygobject.h"
+-#include "pyglib.h"
+-#include <pygtk/pygtk.h>
+-
+-typedef PyObject* (*to_pyobject_func) (gpointer data);
+-
+-#define APP_TYPE_INDICATOR APP_INDICATOR_TYPE
+-
+-void
+-_appindicator_add_constants(PyObject *module, const gchar *strip_prefix)
+-{
+-#ifdef VERSION
+- PyModule_AddStringConstant(module, "__version__", VERSION);
+-#endif
+- pyg_enum_add(module,
+- "IndicatorCategory",
+- strip_prefix,
+- APP_INDICATOR_TYPE_INDICATOR_CATEGORY);
+-
+- pyg_enum_add(module,
+- "IndicatorStatus",
+- strip_prefix,
+- APP_INDICATOR_TYPE_INDICATOR_STATUS);
+-
+- if (PyErr_Occurred())
+- PyErr_Print();
+-}
+-%%
+-modulename appindicator
+-%%
+-import gobject.GObject as PyGObject_Type
+-import gtk.Menu as PyGtkMenu_Type
+diff --git a/bindings/python/appindicatormodule.c b/bindings/python/appindicatormodule.c
+deleted file mode 100644
+index b66639c..0000000
+--- a/bindings/python/appindicatormodule.c
++++ /dev/null
+@@ -1,49 +0,0 @@
+-/*
+-Python bindings for libappindicator.
+-
+-Copyright 2009 Canonical Ltd.
+-
+-Authors:
+- Eitan Isaacson <eitan@ascender.com>
+- Neil Jagdish Patel <neil.patel@canonical.com>
+-
+-This program is free software: you can redistribute it and/or modify it
+-under the terms of either or both of the following licenses:
+-
+-1) the GNU Lesser General Public License version 3, as published by the
+-Free Software Foundation; and/or
+-2) the GNU Lesser General Public License version 2.1, as published by
+-the Free Software Foundation.
+-
+-This program is distributed in the hope that it will be useful, but
+-WITHOUT ANY WARRANTY; without even the implied warranties of
+-MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+-PURPOSE. See the applicable version of the GNU Lesser General Public
+-License for more details.
+-
+-You should have received a copy of both the GNU Lesser General Public
+-License version 3 and version 2.1 along with this program. If not, see
+-<http://www.gnu.org/licenses/>
+-*/
+-#include <pygobject.h>
+-
+-void pyappindicator_register_classes (PyObject *d);
+-extern PyMethodDef pyappindicator_functions[];
+-
+-DL_EXPORT(void)
+-init_appindicator(void)
+-{
+- PyObject *m, *d;
+-
+- init_pygobject ();
+-
+- m = Py_InitModule ("_appindicator", pyappindicator_functions);
+- d = PyModule_GetDict (m);
+-
+- pyappindicator_register_classes (d);
+-
+- _appindicator_add_constants (m, "APP_INDICATOR_");
+- if (PyErr_Occurred ()) {
+- Py_FatalError ("can't initialise module appindicator");
+- }
+-}
+diff --git a/configure b/configure
+index 5174b3f..8ff732c 100755
+--- a/configure
++++ b/configure
+@@ -13703,363 +13703,6 @@ else
+ fi
+
+
+-###########################
+-# Python
+-###########################
+-
+-PYGTK_REQUIRED=2.14.0
+-PYGOBJECT_REQUIRED=0.22
+-
+-
+-
+-
+-
+- if test -n "$PYTHON"; then
+- # If the user set $PYTHON, use it and don't search something else.
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version >= 2.3.5" >&5
+-$as_echo_n "checking whether $PYTHON version >= 2.3.5... " >&6; }
+- prog="import sys, string
+-# split strings by '.' and convert to numeric. Append some zeros
+-# because we need at least 4 digits for the hex conversion.
+-minver = map(int, string.split('2.3.5', '.')) + [0, 0, 0]
+-minverhex = 0
+-for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
+-sys.exit(sys.hexversion < minverhex)"
+- if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5
+- ($PYTHON -c "$prog") >&5 2>&5
+- ac_status=$?
+- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+- (exit $ac_status); }; then :
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+-$as_echo "yes" >&6; }
+-else
+- as_fn_error $? "too old" "$LINENO" 5
+-fi
+- am_display_PYTHON=$PYTHON
+- else
+- # Otherwise, try each interpreter until we find one that satisfies
+- # VERSION.
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.3.5" >&5
+-$as_echo_n "checking for a Python interpreter with version >= 2.3.5... " >&6; }
+-if ${am_cv_pathless_PYTHON+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+-
+- for am_cv_pathless_PYTHON in python python2 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 none; do
+- test "$am_cv_pathless_PYTHON" = none && break
+- prog="import sys, string
+-# split strings by '.' and convert to numeric. Append some zeros
+-# because we need at least 4 digits for the hex conversion.
+-minver = map(int, string.split('2.3.5', '.')) + [0, 0, 0]
+-minverhex = 0
+-for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
+-sys.exit(sys.hexversion < minverhex)"
+- if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5
+- ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
+- ac_status=$?
+- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+- (exit $ac_status); }; then :
+- break
+-fi
+- done
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
+-$as_echo "$am_cv_pathless_PYTHON" >&6; }
+- # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
+- if test "$am_cv_pathless_PYTHON" = none; then
+- PYTHON=:
+- else
+- # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
+-set dummy $am_cv_pathless_PYTHON; ac_word=$2
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+-$as_echo_n "checking for $ac_word... " >&6; }
+-if ${ac_cv_path_PYTHON+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- case $PYTHON in
+- [\\/]* | ?:[\\/]*)
+- ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
+- ;;
+- *)
+- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
+- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+- done
+-IFS=$as_save_IFS
+-
+- ;;
+-esac
+-fi
+-PYTHON=$ac_cv_path_PYTHON
+-if test -n "$PYTHON"; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+-$as_echo "$PYTHON" >&6; }
+-else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+-$as_echo "no" >&6; }
+-fi
+-
+-
+- fi
+- am_display_PYTHON=$am_cv_pathless_PYTHON
+- fi
+-
+-
+- if test "$PYTHON" = :; then
+- as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
+- else
+-
+-
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
+-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
+-if ${am_cv_python_version+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- am_cv_python_version=`$PYTHON -c "import sys; print sys.version[:3]"`
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
+-$as_echo "$am_cv_python_version" >&6; }
+- PYTHON_VERSION=$am_cv_python_version
+-
+-
+-
+- PYTHON_PREFIX='${prefix}'
+-
+- PYTHON_EXEC_PREFIX='${exec_prefix}'
+-
+-
+-
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
+-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
+-if ${am_cv_python_platform+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
+-$as_echo "$am_cv_python_platform" >&6; }
+- PYTHON_PLATFORM=$am_cv_python_platform
+-
+-
+-
+-
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
+-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
+-if ${am_cv_python_pythondir+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null ||
+- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
+-$as_echo "$am_cv_python_pythondir" >&6; }
+- pythondir=$am_cv_python_pythondir
+-
+-
+-
+- pkgpythondir=\${pythondir}/$PACKAGE
+-
+-
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
+-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
+-if ${am_cv_python_pyexecdir+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null ||
+- echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
+-$as_echo "$am_cv_python_pyexecdir" >&6; }
+- pyexecdir=$am_cv_python_pyexecdir
+-
+-
+-
+- pkgpyexecdir=\${pyexecdir}/$PACKAGE
+-
+-
+-
+- fi
+-
+-
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for headers required to compile python extensions" >&5
+-$as_echo_n "checking for headers required to compile python extensions... " >&6; }
+-py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
+-py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
+-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
+-if test "$py_prefix" != "$py_exec_prefix"; then
+- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
+-fi
+-
+-save_CPPFLAGS="$CPPFLAGS"
+-CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-#include <Python.h>
+-_ACEOF
+-if ac_fn_c_try_cpp "$LINENO"; then :
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
+-$as_echo "found" >&6; }
+-
+-else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+-$as_echo "not found" >&6; }
+-as_fn_error $? "could not find Python headers" "$LINENO" 5
+-fi
+-rm -f conftest.err conftest.i conftest.$ac_ext
+-CPPFLAGS="$save_CPPFLAGS"
+-
+-
+-
+-pkg_failed=no
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for APPINDICATOR_PYTHON" >&5
+-$as_echo_n "checking for APPINDICATOR_PYTHON... " >&6; }
+-
+-if test -n "$APPINDICATOR_PYTHON_CFLAGS"; then
+- pkg_cv_APPINDICATOR_PYTHON_CFLAGS="$APPINDICATOR_PYTHON_CFLAGS"
+- elif test -n "$PKG_CONFIG"; then
+- if test -n "$PKG_CONFIG" && \
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
+- pygtk-2.0 >= \$PYGTK_REQUIRED
+- gtk+-2.0 >= \$GTK_REQUIRED_VERSION
+- pygobject-2.0 >= \$PYGOBJECT_REQUIRED
+- \""; } >&5
+- ($PKG_CONFIG --exists --print-errors "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- ") 2>&5
+- ac_status=$?
+- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+- test $ac_status = 0; }; then
+- pkg_cv_APPINDICATOR_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- " 2>/dev/null`
+- test "x$?" != "x0" && pkg_failed=yes
+-else
+- pkg_failed=yes
+-fi
+- else
+- pkg_failed=untried
+-fi
+-if test -n "$APPINDICATOR_PYTHON_LIBS"; then
+- pkg_cv_APPINDICATOR_PYTHON_LIBS="$APPINDICATOR_PYTHON_LIBS"
+- elif test -n "$PKG_CONFIG"; then
+- if test -n "$PKG_CONFIG" && \
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
+- pygtk-2.0 >= \$PYGTK_REQUIRED
+- gtk+-2.0 >= \$GTK_REQUIRED_VERSION
+- pygobject-2.0 >= \$PYGOBJECT_REQUIRED
+- \""; } >&5
+- ($PKG_CONFIG --exists --print-errors "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- ") 2>&5
+- ac_status=$?
+- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+- test $ac_status = 0; }; then
+- pkg_cv_APPINDICATOR_PYTHON_LIBS=`$PKG_CONFIG --libs "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- " 2>/dev/null`
+- test "x$?" != "x0" && pkg_failed=yes
+-else
+- pkg_failed=yes
+-fi
+- else
+- pkg_failed=untried
+-fi
+-
+-
+-
+-if test $pkg_failed = yes; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+-$as_echo "no" >&6; }
+-
+-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+- _pkg_short_errors_supported=yes
+-else
+- _pkg_short_errors_supported=no
+-fi
+- if test $_pkg_short_errors_supported = yes; then
+- APPINDICATOR_PYTHON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- " 2>&1`
+- else
+- APPINDICATOR_PYTHON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- " 2>&1`
+- fi
+- # Put the nasty error message in config.log where it belongs
+- echo "$APPINDICATOR_PYTHON_PKG_ERRORS" >&5
+-
+- as_fn_error $? "Package requirements (
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- ) were not met:
+-
+-$APPINDICATOR_PYTHON_PKG_ERRORS
+-
+-Consider adjusting the PKG_CONFIG_PATH environment variable if you
+-installed software in a non-standard prefix.
+-
+-Alternatively, you may set the environment variables APPINDICATOR_PYTHON_CFLAGS
+-and APPINDICATOR_PYTHON_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details." "$LINENO" 5
+-elif test $pkg_failed = untried; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+-$as_echo "no" >&6; }
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
+-is in your PATH or set the PKG_CONFIG environment variable to the full
+-path to pkg-config.
+-
+-Alternatively, you may set the environment variables APPINDICATOR_PYTHON_CFLAGS
+-and APPINDICATOR_PYTHON_LIBS to avoid the need to call pkg-config.
+-See the pkg-config man page for more details.
+-
+-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+-See \`config.log' for more details" "$LINENO" 5; }
+-else
+- APPINDICATOR_PYTHON_CFLAGS=$pkg_cv_APPINDICATOR_PYTHON_CFLAGS
+- APPINDICATOR_PYTHON_LIBS=$pkg_cv_APPINDICATOR_PYTHON_LIBS
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+-$as_echo "yes" >&6; }
+-
+-fi
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pygtk defs" >&5
+-$as_echo_n "checking for pygtk defs... " >&6; }
+-PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0`
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYGTK_DEFSDIR" >&5
+-$as_echo "$PYGTK_DEFSDIR" >&6; }
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pygtk codegen" >&5
+-$as_echo_n "checking for pygtk codegen... " >&6; }
+-PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py"
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYGTK_CODEGEN" >&5
+-$as_echo "$PYGTK_CODEGEN" >&6; }
+
+ #########################
+ # Check if build tests
+@@ -14358,7 +14001,7 @@ fi
+ # Files
+ ###########################
+
+-ac_config_files="$ac_config_files Makefile src/Makefile src/appindicator-0.1.pc src/appindicator3-0.1.pc bindings/Makefile bindings/python/Makefile bindings/python/appindicator.override bindings/vala/Makefile bindings/vala/examples/Makefile tests/Makefile example/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml docs/reference/libappindicator-docs.sgml"
++ac_config_files="$ac_config_files Makefile src/Makefile src/appindicator-0.1.pc src/appindicator3-0.1.pc bindings/Makefile bindings/vala/Makefile bindings/vala/examples/Makefile tests/Makefile example/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml docs/reference/libappindicator-docs.sgml"
+
+
+ if test "x$has_mono" = "xtrue" ; then
+@@ -15437,8 +15080,6 @@ do
+ "src/appindicator-0.1.pc") CONFIG_FILES="$CONFIG_FILES src/appindicator-0.1.pc" ;;
+ "src/appindicator3-0.1.pc") CONFIG_FILES="$CONFIG_FILES src/appindicator3-0.1.pc" ;;
+ "bindings/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/Makefile" ;;
+- "bindings/python/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/python/Makefile" ;;
+- "bindings/python/appindicator.override") CONFIG_FILES="$CONFIG_FILES bindings/python/appindicator.override" ;;
+ "bindings/vala/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/vala/Makefile" ;;
+ "bindings/vala/examples/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/vala/examples/Makefile" ;;
+ "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
+diff --git a/configure.ac b/configure.ac
+index ee03390..4713b22 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -181,33 +181,6 @@ AM_CONDITIONAL(BUILD_MONO_TEST, test x${have_nunit} = xyes)
+ with_localinstall="no"
+ AC_ARG_ENABLE(localinstall, AS_HELP_STRING([--enable-localinstall], [install all of the files localy instead of system directories (for distcheck)]), with_localinstall=$enableval, with_localinstall=no)
+
+-###########################
+-# Python
+-###########################
+-
+-PYGTK_REQUIRED=2.14.0
+-PYGOBJECT_REQUIRED=0.22
+-
+-AM_PATH_PYTHON(2.3.5)
+-AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
+-
+-PKG_CHECK_MODULES(APPINDICATOR_PYTHON,
+- [
+- pygtk-2.0 >= $PYGTK_REQUIRED
+- gtk+-2.0 >= $GTK_REQUIRED_VERSION
+- pygobject-2.0 >= $PYGOBJECT_REQUIRED
+- ])
+-
+-AC_MSG_CHECKING(for pygtk defs)
+-PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0`
+-AC_SUBST(PYGTK_DEFSDIR)
+-AC_MSG_RESULT($PYGTK_DEFSDIR)
+-
+-AC_MSG_CHECKING(for pygtk codegen)
+-PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py"
+-AC_SUBST(PYGTK_CODEGEN)
+-AC_MSG_RESULT($PYGTK_CODEGEN)
+-
+ #########################
+ # Check if build tests
+ #########################
+@@ -239,8 +212,6 @@ src/Makefile
+ src/appindicator-0.1.pc
+ src/appindicator3-0.1.pc
+ bindings/Makefile
+-bindings/python/Makefile
+-bindings/python/appindicator.override
+ bindings/vala/Makefile
+ bindings/vala/examples/Makefile
+ tests/Makefile \ No newline at end of file
diff --git a/source/l/libappindicator/libappindicator.SlackBuild b/source/l/libappindicator/libappindicator.SlackBuild
index e8afae7ae..649589179 100755
--- a/source/l/libappindicator/libappindicator.SlackBuild
+++ b/source/l/libappindicator/libappindicator.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2015 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libappindicator
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -86,7 +86,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-for file in bindings/python/Makefile.in bindings/python/Makefile.am example/Makefile.in example/Makefile.am src/Makefile.in src/Makefile.am tests/Makefile.in tests/Makefile.am ; do
+cat $CWD/libappindicator-no-python.patch | patch -p1 --verbose || exit 1
+autoreconf -vif
+
+for file in example/Makefile.in example/Makefile.am src/Makefile.in src/Makefile.am tests/Makefile.in tests/Makefile.am ; do
sed -i "s/-Werror//g" $file
done
diff --git a/source/l/libarchive/libarchive.SlackBuild b/source/l/libarchive/libarchive.SlackBuild
index 3e11fa64a..341389530 100755
--- a/source/l/libarchive/libarchive.SlackBuild
+++ b/source/l/libarchive/libarchive.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2008 Heinz Wiesinger <hmwiesinger@gmx.at>
-# Copyright 2008, 2009, 2010, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2016, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -79,6 +79,14 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -96,6 +104,9 @@ make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Don't list iconv in libarchive.pc:
+sed -i "s/iconv //" $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/libarchive.pc
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libarchive/libarchive.url b/source/l/libarchive/libarchive.url
index 8d0614b9e..e4a02c4af 100644
--- a/source/l/libarchive/libarchive.url
+++ b/source/l/libarchive/libarchive.url
@@ -1 +1,2 @@
https://github.com/libarchive/libarchive
+https://github.com/libarchive/libarchive/releases/download/v3.7.4/libarchive-3.7.4.tar.xz
diff --git a/source/l/libass/libass.SlackBuild b/source/l/libass/libass.SlackBuild
new file mode 100755
index 000000000..a18f45657
--- /dev/null
+++ b/source/l/libass/libass.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2011-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libass
+VERSION=${VERSION:-$(echo libass-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf libass-$VERSION
+tar xvf $CWD/libass-$VERSION.tar.?z || exit 1
+cd libass-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --enable-static=no \
+ --disable-silent-rules \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || exit 1
+make install-strip DESTDIR=$PKG || exit 1
+
+rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a Changelog COPYING* MAINTAINERS* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libass/libass.url b/source/l/libass/libass.url
new file mode 100644
index 000000000..1daba4ba7
--- /dev/null
+++ b/source/l/libass/libass.url
@@ -0,0 +1 @@
+https://github.com/libass/libass
diff --git a/source/l/libass/slack-desc b/source/l/libass/slack-desc
new file mode 100644
index 000000000..540f32401
--- /dev/null
+++ b/source/l/libass/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libass: libass (Subtitle renderer for the ASS/SSA)
+libass:
+libass: libass is a portable subtitle renderer for the ASS/SSA (Advanced
+libass: Substation Alpha/Substation Alpha) subtitle format. It is mostly
+libass: compatible with VSFilter.
+libass:
+libass: Homepage: https://github.com/libass/libass
+libass:
+libass:
+libass:
+libass:
diff --git a/source/l/libasyncns/libasyncns.SlackBuild b/source/l/libasyncns/libasyncns.SlackBuild
index 86b3f200d..18eed6979 100755
--- a/source/l/libasyncns/libasyncns.SlackBuild
+++ b/source/l/libasyncns/libasyncns.SlackBuild
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libasyncns
VERSION=$(ls libasyncns-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-6}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/libburn/libburn.SlackBuild b/source/l/libburn/libburn.SlackBuild
index ceccec52d..3cb88d2ec 100755
--- a/source/l/libburn/libburn.SlackBuild
+++ b/source/l/libburn/libburn.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libburn
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libburn/libburn.url b/source/l/libburn/libburn.url
index 02c4e769b..524c9647e 100644
--- a/source/l/libburn/libburn.url
+++ b/source/l/libburn/libburn.url
@@ -1 +1 @@
-http://files.libburnia-project.org/releases/
+https://dev.lovelyhq.com/libburnia/libburn
diff --git a/source/l/libcaca/70.patch b/source/l/libcaca/70.patch
new file mode 100644
index 000000000..eacf75824
--- /dev/null
+++ b/source/l/libcaca/70.patch
@@ -0,0 +1,84 @@
+From afacac2cf7dfad8015c059a96046d9c2fa34632f Mon Sep 17 00:00:00 2001
+From: Johannes Kauffmann <johanneskauffmann@hotmail.com>
+Date: Sun, 18 Sep 2022 17:31:19 +0200
+Subject: [PATCH 1/3] common-image: avoid implicit function declaration
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+common-image.c: In function ‘load_image’:
+common-image.c:164:18: warning: implicit declaration of function ‘_caca_alloc2d’ [-Wimplicit-function-declaration]
+ 164 | im->pixels = _caca_alloc2d(im->w, im->h, depth);
+ | ^~~~~~~~~~~~~
+---
+ src/common-image.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/common-image.c b/src/common-image.c
+index 7059bf40..d40eba12 100644
+--- a/src/common-image.c
++++ b/src/common-image.c
+@@ -22,6 +22,7 @@
+ #endif
+
+ #include "caca.h"
++#include "caca_internals.h"
+
+ #include "common-image.h"
+
+
+From f57b0d65cfaac5f1fbdc75458170e102f57a8dfa Mon Sep 17 00:00:00 2001
+From: Johannes Kauffmann <johanneskauffmann@hotmail.com>
+Date: Sun, 18 Sep 2022 17:52:40 +0200
+Subject: [PATCH 2/3] caca: avoid nested externs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+common-image.c:164:18: warning: nested extern declaration of ‘_caca_alloc2d’ [-Wnested-externs]
+---
+ caca/caca.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/caca/caca.c b/caca/caca.c
+index 327a8f9f..a9f461d8 100644
+--- a/caca/caca.c
++++ b/caca/caca.c
+@@ -284,7 +284,7 @@ char const * caca_get_version(void)
+ * XXX: The following functions are private.
+ */
+
+-extern void *_caca_alloc2d(size_t width, size_t height, size_t elem_size)
++void *_caca_alloc2d(size_t width, size_t height, size_t elem_size)
+ {
+ if (width == 0 || height == 0 || elem_size == 0 || SIZE_MAX / width / height < elem_size)
+ return NULL;
+
+From 9683d1f7efe316b1e6113b65c6fff40671d35632 Mon Sep 17 00:00:00 2001
+From: Johannes Kauffmann <johanneskauffmann@hotmail.com>
+Date: Sun, 18 Sep 2022 18:01:31 +0200
+Subject: [PATCH 3/3] caca_internals: export _caca_alloc2d
+
+It is used by the image viewer:
+
+/usr/bin/ld: img2txt-common-image.o: in function `load_image':
+../../src/common-image.c:164: undefined reference to `_caca_alloc2d'
+
+Fixes #59.
+---
+ caca/caca_internals.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/caca/caca_internals.h b/caca/caca_internals.h
+index 7b74b9e9..0bd7f6c8 100644
+--- a/caca/caca_internals.h
++++ b/caca/caca_internals.h
+@@ -268,7 +268,7 @@ extern int _caca_pop_event(caca_display_t *, caca_privevent_t *);
+ extern void _caca_set_term_title(char const *);
+
+ /* Internal memory function */
+-extern void *_caca_alloc2d(size_t width, size_t height, size_t elem_size);
++__extern void *_caca_alloc2d(size_t width, size_t height, size_t elem_size);
+
+ /* Profiling functions */
+ #if defined PROF
diff --git a/source/l/libcaca/libcaca-0.99.beta20-CVE-2022-0856.patch b/source/l/libcaca/libcaca-0.99.beta20-CVE-2022-0856.patch
new file mode 100644
index 000000000..092af0643
--- /dev/null
+++ b/source/l/libcaca/libcaca-0.99.beta20-CVE-2022-0856.patch
@@ -0,0 +1,38 @@
+From d33a9ca2b7e9f32483c1aee4c3944c56206d456b Mon Sep 17 00:00:00 2001
+From: Josef Moellers <jmoellers@suse.de>
+Date: Fri, 18 Mar 2022 11:52:22 +0100
+Subject: [PATCH] Prevent a divide-by-zero by checking for a zero width or
+ height.
+
+---
+ src/img2txt.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/img2txt.c b/src/img2txt.c
+index b8a25899..b9d5ba24 100644
+--- a/src/img2txt.c
++++ b/src/img2txt.c
+@@ -177,7 +177,13 @@ int main(int argc, char **argv)
+ }
+
+ /* Assume a 6×10 font */
+- if(!cols && !lines)
++ if(!i->w || !i->h)
++ {
++ fprintf(stderr, "%s: image size is 0\n", argv[0]);
++ lines = 0;
++ cols = 0;
++ }
++ else if(!cols && !lines)
+ {
+ cols = 60;
+ lines = cols * i->h * font_width / i->w / font_height;
+@@ -214,7 +220,7 @@ int main(int argc, char **argv)
+ export = caca_export_canvas_to_memory(cv, format?format:"ansi", &len);
+ if(!export)
+ {
+- fprintf(stderr, "%s: Can't export to format '%s'\n", argv[0], format);
++ fprintf(stderr, "%s: Can't export to format '%s'\n", argv[0], format?format:"ansi");
+ }
+ else
+ {
diff --git a/source/l/libcaca/libcaca.SlackBuild b/source/l/libcaca/libcaca.SlackBuild
index c640e3312..6fbc91be7 100755
--- a/source/l/libcaca/libcaca.SlackBuild
+++ b/source/l/libcaca/libcaca.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2017, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcaca
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-9}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -78,7 +78,15 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Fix build failure:
+cat $CWD/libcaca.git.20211207.patch | patch -p1 --verbose || exit 1
+cat $CWD/70.patch | patch -p1 --verbose || exit 1
+
+# Fix crash bug:
+cat $CWD/libcaca-0.99.beta20-CVE-2022-0856.patch | patch -p1 --verbose || exit 1
+
# Configure:
+autoreconf -vif
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/libcaca/libcaca.git.20211207.patch b/source/l/libcaca/libcaca.git.20211207.patch
new file mode 100644
index 000000000..404369e43
--- /dev/null
+++ b/source/l/libcaca/libcaca.git.20211207.patch
@@ -0,0 +1,188 @@
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/caca_internals.h libcaca-0.99.beta20/caca/caca_internals.h
+--- libcaca-0.99.beta20.orig/caca/caca_internals.h 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/caca_internals.h 2021-12-07 03:03:53.000000000 -0600
+@@ -26,6 +26,13 @@
+ # define MAX_DIRTY_COUNT 8
+ #endif
+
++#undef __extern
++#if defined CACA_ENABLE_VISIBILITY
++# define __extern extern __attribute__((visibility("default")))
++#else
++# define __extern extern
++#endif
++
+ struct caca_frame
+ {
+ /* Frame size */
+@@ -116,7 +123,7 @@
+ int conio_install(caca_display_t *);
+ #endif
+ #if defined(USE_GL)
+-int gl_install(caca_display_t *);
++__extern int gl_install(caca_display_t *);
+ #endif
+ #if defined(USE_NCURSES)
+ int ncurses_install(caca_display_t *);
+@@ -133,7 +140,7 @@
+ int win32_install(caca_display_t *);
+ #endif
+ #if defined(USE_X11)
+-int x11_install(caca_display_t *);
++__extern int x11_install(caca_display_t *);
+ #endif
+
+ /* Timer structure */
+@@ -252,8 +259,9 @@
+ /* Internal event functions */
+ extern void _caca_handle_resize(caca_display_t *);
+ #if defined(USE_SLANG) || defined(USE_NCURSES) || defined(USE_CONIO) || defined(USE_GL)
+-extern void _push_event(caca_display_t *, caca_privevent_t *);
+-extern int _pop_event(caca_display_t *, caca_privevent_t *);
++/* Expose this with ‘__extern’ because the GL driver uses it */
++__extern void _caca_push_event(caca_display_t *, caca_privevent_t *);
++extern int _caca_pop_event(caca_display_t *, caca_privevent_t *);
+ #endif
+
+ /* Internal window functions */
+@@ -269,4 +277,6 @@
+ extern void _caca_fini_stat(struct caca_stat *);
+ #endif
+
++#undef __extern
++
+ #endif /* __CACA_INTERNALS_H__ */
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/driver/conio.c libcaca-0.99.beta20/caca/driver/conio.c
+--- libcaca-0.99.beta20.orig/caca/driver/conio.c 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/driver/conio.c 2021-12-07 03:03:53.000000000 -0600
+@@ -151,7 +151,7 @@
+
+ release = *ev;
+ release.type = CACA_EVENT_KEY_RELEASE;
+- _push_event(dp, &release);
++ _caca_push_event(dp, &release);
+
+ return 1;
+ }
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/driver/gl.c libcaca-0.99.beta20/caca/driver/gl.c
+--- libcaca-0.99.beta20.orig/caca/driver/gl.c 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/driver/gl.c 2021-12-07 03:03:53.000000000 -0600
+@@ -374,7 +374,7 @@
+
+ if(dp->drv.p->mouse_clicked)
+ {
+- _push_event(dp, ev);
++ _caca_push_event(dp, ev);
+ ev->type = CACA_EVENT_MOUSE_PRESS;
+ ev->data.mouse.button = dp->drv.p->mouse_button;
+ dp->drv.p->mouse_clicked = 0;
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/driver/ncurses.c libcaca-0.99.beta20/caca/driver/ncurses.c
+--- libcaca-0.99.beta20.orig/caca/driver/ncurses.c 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/driver/ncurses.c 2021-12-07 03:03:53.000000000 -0600
+@@ -482,9 +482,9 @@
+ switch(mevent.bstate)
+ {
+ #define PRESS(x) ev->data.mouse.button = x; \
+- ev->type = CACA_EVENT_MOUSE_PRESS; _push_event(dp, ev)
++ ev->type = CACA_EVENT_MOUSE_PRESS; _caca_push_event(dp, ev)
+ #define RELEASE(x) ev->data.mouse.button = x; \
+- ev->type = CACA_EVENT_MOUSE_RELEASE; _push_event(dp, ev)
++ ev->type = CACA_EVENT_MOUSE_RELEASE; _caca_push_event(dp, ev)
+ #define CLICK(x) PRESS(x); RELEASE(x)
+ case BUTTON1_PRESSED: PRESS(1); break;
+ case BUTTON1_RELEASED: RELEASE(1); break;
+@@ -530,7 +530,7 @@
+ }
+
+ if(dp->mouse.x == mevent.x && dp->mouse.y == mevent.y)
+- return _pop_event(dp, ev);
++ return _caca_pop_event(dp, ev);
+
+ dp->mouse.x = mevent.x;
+ dp->mouse.y = mevent.y;
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/driver/slang.c libcaca-0.99.beta20/caca/driver/slang.c
+--- libcaca-0.99.beta20.orig/caca/driver/slang.c 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/driver/slang.c 2021-12-07 03:03:53.000000000 -0600
+@@ -403,12 +403,12 @@
+
+ ev->data.mouse.button = button;
+ ev->type = CACA_EVENT_MOUSE_PRESS;
+- _push_event(dp, ev);
++ _caca_push_event(dp, ev);
+ ev->type = CACA_EVENT_MOUSE_RELEASE;
+- _push_event(dp, ev);
++ _caca_push_event(dp, ev);
+
+ if(dp->mouse.x == x && dp->mouse.y == y)
+- return _pop_event(dp, ev);
++ return _caca_pop_event(dp, ev);
+
+ dp->mouse.x = x;
+ dp->mouse.y = y;
+diff -u -r --new-file libcaca-0.99.beta20.orig/caca/event.c libcaca-0.99.beta20/caca/event.c
+--- libcaca-0.99.beta20.orig/caca/event.c 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/caca/event.c 2021-12-07 03:03:53.000000000 -0600
+@@ -380,7 +380,7 @@
+ && dp->events.autorepeat_ticks > AUTOREPEAT_THRESHOLD
+ && dp->events.autorepeat_ticks > AUTOREPEAT_RATE)
+ {
+- _push_event(dp, ev);
++ _caca_push_event(dp, ev);
+ dp->events.autorepeat_ticks -= AUTOREPEAT_RATE;
+ *ev = dp->events.last_key_event;
+ return 1;
+@@ -403,7 +403,7 @@
+ && (dp->events.last_key_ticks > AUTOREPEAT_THRESHOLD
+ || (ev->type & CACA_EVENT_KEY_PRESS)))
+ {
+- _push_event(dp, ev);
++ _caca_push_event(dp, ev);
+ *ev = dp->events.last_key_event;
+ ev->type = CACA_EVENT_KEY_RELEASE;
+ dp->events.last_key_event.type = CACA_EVENT_NONE;
+@@ -425,7 +425,7 @@
+ static int _lowlevel_event(caca_display_t *dp, caca_privevent_t *ev)
+ {
+ #if defined(USE_SLANG) || defined(USE_NCURSES) || defined(USE_CONIO)
+- int ret = _pop_event(dp, ev);
++ int ret = _caca_pop_event(dp, ev);
+
+ if(ret)
+ return ret;
+@@ -435,7 +435,7 @@
+ }
+
+ #if defined(USE_SLANG) || defined(USE_NCURSES) || defined(USE_CONIO) || defined(USE_GL)
+-void _push_event(caca_display_t *dp, caca_privevent_t *ev)
++void _caca_push_event(caca_display_t *dp, caca_privevent_t *ev)
+ {
+ if(!ev->type || dp->events.queue == EVENTBUF_LEN)
+ return;
+@@ -443,7 +443,7 @@
+ dp->events.queue++;
+ }
+
+-int _pop_event(caca_display_t *dp, caca_privevent_t *ev)
++int _caca_pop_event(caca_display_t *dp, caca_privevent_t *ev)
+ {
+ int i;
+
+diff -u -r --new-file libcaca-0.99.beta20.orig/configure.ac libcaca-0.99.beta20/configure.ac
+--- libcaca-0.99.beta20.orig/configure.ac 2021-10-19 08:58:30.000000000 -0500
++++ libcaca-0.99.beta20/configure.ac 2021-12-07 03:03:53.000000000 -0600
+@@ -269,7 +269,6 @@
+ [ac_cv_my_have_cocoa="yes"])
+ CFLAGS="$save_CFLAGS"
+ if test "${ac_cv_my_have_cocoa}" = "yes"; then
+- [[[ "$target_os" =~ [0-9]+ ]]] && darwin_ver="${BASH_REMATCH[[0]]}"
+ case x${target} in
+ xpowerpc*darwin*)
+ # 10.3 needed to link with X11
+@@ -297,6 +296,7 @@
+ esac
+ CC="${CC:-gcc-${GCC_VERSION}}"
+ CXX="${CXX:-g++-${GCC_VERSION}}"
++ darwin_ver="$(echo "${target_os}" | sed -ne 's/[^0-9]*\([0-9]\+\).*/\1/p')"
+ if [[ "$darwin_ver" -lt "13" ]]; then
+ MACOSX_SDK_FRAMEWORKS="${MACOSX_SDK_FRAMEWORKS:--F${MACOSX_SDK}/System/Library/Frameworks}"
+ CPPFLAGS="${CPPFLAGS} ${ARCH} ${MACOSX_SDK_FRAMEWORKS}"
diff --git a/source/l/libcaca/libcaca.url b/source/l/libcaca/libcaca.url
new file mode 100644
index 000000000..6bb713dea
--- /dev/null
+++ b/source/l/libcaca/libcaca.url
@@ -0,0 +1 @@
+https://github.com/cacalabs/libcaca
diff --git a/source/l/libcanberra/libcanberra-0.30-wayland-1.patch b/source/l/libcanberra/libcanberra-0.30-wayland-1.patch
new file mode 100644
index 000000000..9196ad678
--- /dev/null
+++ b/source/l/libcanberra/libcanberra-0.30-wayland-1.patch
@@ -0,0 +1,77 @@
+Submitted by: Xi Ruoyao <xry111 at mengyan1223 dot wang>
+Date: 2020-09-21
+Initial Package Version: 0.30
+Upstream Status: Commited
+Origin: Upstream Git Repository
+Description: Fix a bug crashing some applications in Wayland desktops.
+
+From c0620e432650e81062c1967cc669829dbd29b310 Mon Sep 17 00:00:00 2001
+From: Michael Meeks <michael.meeks@suse.com>
+Date: Fri, 9 Nov 2012 16:16:40 +0000
+Subject: gtk: Don't assume all GdkDisplays are GdkX11Displays:
+ broadway/wayland
+
+---
+ src/canberra-gtk-module.c | 15 +++++++++++++++
+ src/canberra-gtk.c | 5 +++++
+ 2 files changed, 20 insertions(+)
+
+diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c
+index 67791f0..c1532ab 100644
+--- a/src/canberra-gtk-module.c
++++ b/src/canberra-gtk-module.c
+@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) {
+ gboolean ret = FALSE;
+ Atom xembed;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return FALSE;
++#endif
++
+ /* Gnome Panel applets are XEMBED windows. We need to make sure we
+ * ignore them */
+
+diff --git a/src/canberra-gtk.c b/src/canberra-gtk.c
+index 34446f5..08cb668 100644
+--- a/src/canberra-gtk.c
++++ b/src/canberra-gtk.c
+@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+--
+cgit v1.2.1
+
diff --git a/source/l/libcanberra/libcanberra.SlackBuild b/source/l/libcanberra/libcanberra.SlackBuild
index f0c43ade0..6ae25e697 100755
--- a/source/l/libcanberra/libcanberra.SlackBuild
+++ b/source/l/libcanberra/libcanberra.SlackBuild
@@ -1,8 +1,6 @@
#!/bin/bash
-
-# Slackware build script for libcanberra
-
# Copyright 2010, 2011, 2012, 2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcanberra
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-8}
+BUILD=${BUILD:-9}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -81,6 +79,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+zcat $CWD/libcanberra-0.30-wayland-1.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS -I/usr/include/samba-4.0" \
CXXFLAGS="$SLKCFLAGS -I/usr/include/samba-4.0" \
./configure \
diff --git a/source/l/libcap-ng/libcap-ng.SlackBuild b/source/l/libcap-ng/libcap-ng.SlackBuild
index 2948f8d40..5528f4896 100755
--- a/source/l/libcap-ng/libcap-ng.SlackBuild
+++ b/source/l/libcap-ng/libcap-ng.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2016, 2018, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcap-ng
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -85,8 +85,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-autoreconf -vif
-
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -96,7 +94,6 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--disable-static \
- --with-python \
--with-python3 \
--build=$ARCH-slackware-linux || exit 1
diff --git a/source/l/libclc/libclc.SlackBuild b/source/l/libclc/libclc.SlackBuild
index b1931d86d..ba739d762 100755
--- a/source/l/libclc/libclc.SlackBuild
+++ b/source/l/libclc/libclc.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libclc
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 4- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 4- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -75,7 +75,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf libclc-${VERSION}.src
-tar xvf $CWD/libclc-$VERSION.src.tar.?z* || exit 1
+tar xvf $CWD/libclc-$VERSION.src.tar.?z || exit 1
cd libclc-${VERSION}.src || exit 1
chown -R root:root .
find . \
diff --git a/source/l/libclc/libclc.url b/source/l/libclc/libclc.url
index aeda981c7..a4d0a11e5 100644
--- a/source/l/libclc/libclc.url
+++ b/source/l/libclc/libclc.url
@@ -1 +1 @@
-https://github.com/llvm/llvm-project/releases/download/llvmorg-12.0.0/libclc-12.0.0.src.tar.xz
+https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.3/libclc-18.1.3.src.tar.xz
diff --git a/source/l/libcue/libcue.SlackBuild b/source/l/libcue/libcue.SlackBuild
index bee9a86bf..1df3c6a7a 100755
--- a/source/l/libcue/libcue.SlackBuild
+++ b/source/l/libcue/libcue.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcue
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libcupsfilters/libcupsfilters.SlackBuild b/source/l/libcupsfilters/libcupsfilters.SlackBuild
new file mode 100755
index 000000000..f9be659c5
--- /dev/null
+++ b/source/l/libcupsfilters/libcupsfilters.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libcupsfilters
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --disable-mutool \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ ABOUT-NLS* AUTHORS* CHANGES* CONTRIBUTING* COPYING* ChangeLog* DEVELOPING* INSTALL* LICENSE* NEWS* NOTICE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGES.md file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.md ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.md | head -n 1000 > $DOCSDIR/CHANGES.md
+ touch -r CHANGES.md $DOCSDIR/CHANGES.md
+fi
+
+# Nope:
+rm -f $PKG/usr/doc/${PKGNAM}-$VERSION/CHANGES-1.x*
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libcupsfilters/libcupsfilters.url b/source/l/libcupsfilters/libcupsfilters.url
new file mode 100644
index 000000000..d66e242be
--- /dev/null
+++ b/source/l/libcupsfilters/libcupsfilters.url
@@ -0,0 +1 @@
+https://github.com/OpenPrinting/libcupsfilters
diff --git a/source/l/libcupsfilters/slack-desc b/source/l/libcupsfilters/slack-desc
new file mode 100644
index 000000000..1accff3be
--- /dev/null
+++ b/source/l/libcupsfilters/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libcupsfilters: libcupsfilters (printer filter library)
+libcupsfilters:
+libcupsfilters: This package provides the libcupsfilters library which contains all
+libcupsfilters: the code of the filters of the former cups-filters package as library
+libcupsfilters: functions, the so-called filter functions.
+libcupsfilters:
+libcupsfilters: Homepage: http://www.openprinting.org
+libcupsfilters:
+libcupsfilters:
+libcupsfilters:
+libcupsfilters:
diff --git a/source/l/libdaemon/libdaemon.SlackBuild b/source/l/libdaemon/libdaemon.SlackBuild
new file mode 100755
index 000000000..2563decf7
--- /dev/null
+++ b/source/l/libdaemon/libdaemon.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libdaemon
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libdaemon/libdaemon.url b/source/l/libdaemon/libdaemon.url
new file mode 100644
index 000000000..d35d20764
--- /dev/null
+++ b/source/l/libdaemon/libdaemon.url
@@ -0,0 +1 @@
+http://0pointer.de/lennart/projects/libdaemon/
diff --git a/source/l/libdaemon/slack-desc b/source/l/libdaemon/slack-desc
new file mode 100644
index 000000000..54f6091cd
--- /dev/null
+++ b/source/l/libdaemon/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libdaemon: libdaemon (UNIX daemon library)
+libdaemon:
+libdaemon: libdaemon is a lightweight C library that eases the writing of UNIX
+libdaemon: daemons.
+libdaemon:
+libdaemon: Homepage: http://0pointer.de/lennart/projects/libdaemon/
+libdaemon:
+libdaemon:
+libdaemon:
+libdaemon:
+libdaemon:
diff --git a/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild b/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
index bb446e854..e249f05d5 100755
--- a/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
+++ b/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
@@ -38,7 +38,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libdbusmenu/libdbusmenu.SlackBuild b/source/l/libdbusmenu/libdbusmenu.SlackBuild
index 1a5552bf7..a3ce36bd9 100755
--- a/source/l/libdbusmenu/libdbusmenu.SlackBuild
+++ b/source/l/libdbusmenu/libdbusmenu.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libdeflate/libdeflate.SlackBuild b/source/l/libdeflate/libdeflate.SlackBuild
new file mode 100755
index 000000000..b6f350bb9
--- /dev/null
+++ b/source/l/libdeflate/libdeflate.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libdeflate
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DLIBDEFLATE_BUILD_STATIC_LIB=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ COPYING* NEWS* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libdeflate/libdeflate.url b/source/l/libdeflate/libdeflate.url
new file mode 100644
index 000000000..76424b273
--- /dev/null
+++ b/source/l/libdeflate/libdeflate.url
@@ -0,0 +1 @@
+https://github.com/ebiggers/libdeflate
diff --git a/source/l/libdeflate/slack-desc b/source/l/libdeflate/slack-desc
new file mode 100644
index 000000000..418fa2e41
--- /dev/null
+++ b/source/l/libdeflate/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libdeflate: libdeflate (fast compression/decompression library)
+libdeflate:
+libdeflate: libdeflate is a library for fast, whole-buffer DEFLATE-based
+libdeflate: compression and decompression supporting DEFLATE (raw), zlib (aka
+libdeflate: DEFLATE with a zlib wrapper), and gzip (aka DEFLATE with a gzip
+libdeflate: wrapper). libdeflate is heavily optimized. It is significantly faster
+libdeflate: than the zlib library, especially on x86 processors. In addition,
+libdeflate: libdeflate provides optional high compression modes that provide a
+libdeflate: better compression ratio than the zlib's "level 9".
+libdeflate:
+libdeflate: Homepage: https://github.com/ebiggers/libdeflate
diff --git a/source/l/libdiscid/b89c145.patch b/source/l/libdiscid/b89c145.patch
new file mode 100644
index 000000000..528af5721
--- /dev/null
+++ b/source/l/libdiscid/b89c145.patch
@@ -0,0 +1,28 @@
+From b89c14599fd8798eef64431bb05e8705aaaea683 Mon Sep 17 00:00:00 2001
+From: Emanuel Haupt <ehaupt@critical.ch>
+Date: Mon, 6 Mar 2023 10:42:33 +0100
+Subject: [PATCH] Restore includedir and libdir
+
+Restore includedir and libdir. This was removed some time between 0.6.2 and 0.6.3 [1] causing pkg-config --libs and --ldflags to report empty -I and -L paths.
+
+[1] https://github.com/metabrainz/libdiscid/compare/v0.6.2...v0.6.3
+
+See also:
+https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269990
+---
+ CMakeLists.txt | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1f24916..911bf4a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,6 +38,8 @@ SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR} CACHE PATH "Installatio
+ SET(PACKAGE ${PROJECT_NAME})
+ SET(VERSION ${PROJECT_VERSION})
+ SET(PACKAGE_STRING "${PACKAGE} ${VERSION}")
++SET(includedir ${INCLUDE_INSTALL_DIR})
++SET(libdir ${LIB_INSTALL_DIR})
+
+ CONFIGURE_FILE(libdiscid.pc.in libdiscid.pc)
+ CONFIGURE_FILE(versioninfo.rc.in versioninfo.rc)
diff --git a/source/l/libdiscid/libdiscid.SlackBuild b/source/l/libdiscid/libdiscid.SlackBuild
index 125282264..613ce870f 100755
--- a/source/l/libdiscid/libdiscid.SlackBuild
+++ b/source/l/libdiscid/libdiscid.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libdiscid
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -68,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
@@ -79,6 +79,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Fix pkgconfig file:
+zcat $CWD/b89c145.patch.gz | patch -p1 --verbose || exit 1
+
mkdir build
cd build
cmake \
diff --git a/source/l/libdmtx/libdmtx.SlackBuild b/source/l/libdmtx/libdmtx.SlackBuild
index 9d312bebd..0ff72424e 100755
--- a/source/l/libdmtx/libdmtx.SlackBuild
+++ b/source/l/libdmtx/libdmtx.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libdmtx
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libev/README b/source/l/libev/README
new file mode 100644
index 000000000..f7826e9dd
--- /dev/null
+++ b/source/l/libev/README
@@ -0,0 +1,12 @@
+libev (a high-performance event loop/model)
+
+Libev is modelled (very loosely) after libevent and the Event perl
+module, but is faster, scales better and is more correct, and also
+more featureful. And also smaller. Yay.
+
+Note: libev and libevent both have a usr/include/event.h
+header file. This could have lead to compile problems if both
+packages were installed at the same time, so it has been moved to
+usr/include/libev/event.h. Add CPPFLAGS="-I/usr/include/libev" to
+the SlackBuild if the software you're building over this needs the
+libevent compatibility layer (lighttpd2 and i3 don't).
diff --git a/source/l/libev/libev.SlackBuild b/source/l/libev/libev.SlackBuild
new file mode 100755
index 000000000..9a7ca5cca
--- /dev/null
+++ b/source/l/libev/libev.SlackBuild
@@ -0,0 +1,163 @@
+#!/bin/bash
+
+# Written by AA ime Ramov <s@ramov.com>
+# Maintained (2012-2020) by Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Written by Šime Ramov <s@ramov.com>
+# Maintained (2012-2020) by Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Rewritten by Patrick Volkerding <volkerdi@slackware.com>, 2023
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libev
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# avoid conflicting with libevent, we move an header in a subfolder
+# and we will explicitly add CPPFLAGS="-I/usr/include/libev" when
+# building software depending on this, if needed: lighttpd2 and i3,
+# for example, don't need this header.
+mkdir -p $PKG/usr/include/libev
+mv $PKG/usr/include/event.h $PKG/usr/include/libev/
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ Changes LICENSE* README* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a Changes file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r Changes ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat Changes | head -n 1000 > $DOCSDIR/Changes
+ touch -r Changes $DOCSDIR/Changes
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libev/libev.url b/source/l/libev/libev.url
new file mode 100644
index 000000000..15428f5a2
--- /dev/null
+++ b/source/l/libev/libev.url
@@ -0,0 +1 @@
+http://dist.schmorp.de/libev/Attic
diff --git a/source/l/libev/slack-desc b/source/l/libev/slack-desc
new file mode 100644
index 000000000..33232cd6d
--- /dev/null
+++ b/source/l/libev/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libev: libev (a high-performance event loop/model)
+libev:
+libev: Libev is modeled (very loosely) after libevent and the Event perl
+libev: module, but is faster, scales better, is more correct, and also more
+libev: featureful. And also smaller, yay!
+libev:
+libev: Homepage: http://software.schmorp.de/pkg/libev.html
+libev:
+libev:
+libev:
+libev:
diff --git a/source/l/libevent/libevent.SlackBuild b/source/l/libevent/libevent.SlackBuild
index 0ad9d24c3..e941c03e4 100755
--- a/source/l/libevent/libevent.SlackBuild
+++ b/source/l/libevent/libevent.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libevent
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 2 -d -)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libexif/libexif.SlackBuild b/source/l/libexif/libexif.SlackBuild
index 0a2db4fb4..94e2aab88 100755
--- a/source/l/libexif/libexif.SlackBuild
+++ b/source/l/libexif/libexif.SlackBuild
@@ -77,6 +77,13 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/libfakekey/libfakekey.SlackBuild b/source/l/libfakekey/libfakekey.SlackBuild
index 55cad29a8..d6c6dfa96 100755
--- a/source/l/libfakekey/libfakekey.SlackBuild
+++ b/source/l/libfakekey/libfakekey.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-4}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libffi/libffi.SlackBuild b/source/l/libffi/libffi.SlackBuild
index 0854f84ba..bb0e83a62 100755
--- a/source/l/libffi/libffi.SlackBuild
+++ b/source/l/libffi/libffi.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for libffi
# Copyright 2011,2012 Robby Workman, Northport, Alabama, USA
-# Copyright 2012, 2013, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2013, 2018, 2019, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,13 +27,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libffi
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -79,6 +79,17 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# We will add --disable-exec-static-tramp until this issue is handled upstream:
+# https://gitlab.gnome.org/GNOME/gobject-introspection/-/merge_requests/283
+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -90,6 +101,7 @@ CXXFLAGS="$SLKCFLAGS" \
--infodir=/usr/info \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
+ --disable-exec-static-tramp \
--build=$ARCH-slackware-linux || exit 1
make || exit 1
@@ -128,7 +140,7 @@ if [ -d $PKG/usr/info ]; then
fi
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a LICENSE README $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a LICENSE* README* $PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/libffi/libffi.url b/source/l/libffi/libffi.url
index 1fbd28a95..6f2684c73 100644
--- a/source/l/libffi/libffi.url
+++ b/source/l/libffi/libffi.url
@@ -1 +1 @@
-ftp://sourceware.org/pub/libffi
+https://github.com/libffi/libffi
diff --git a/source/l/libgnt/libgnt.SlackBuild b/source/l/libgnt/libgnt.SlackBuild
index f14ddb9c6..913d0d90c 100755
--- a/source/l/libgnt/libgnt.SlackBuild
+++ b/source/l/libgnt/libgnt.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgnt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -93,6 +93,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dpython2=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
diff --git a/source/l/libgnt/libgnt.url b/source/l/libgnt/libgnt.url
index 696d62918..b7b64f53a 100644
--- a/source/l/libgnt/libgnt.url
+++ b/source/l/libgnt/libgnt.url
@@ -1,2 +1,2 @@
#https://keep.imfreedom.org/libgnt/libgnt
-https://downloads.sourceforge.net/pidgin/libgnt/libgnt-2.14.2.tar.xz
+https://sourceforge.net/projects/pidgin/files/libgnt/
diff --git a/source/l/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch b/source/l/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch
new file mode 100644
index 000000000..727f18b37
--- /dev/null
+++ b/source/l/libgpod/0001-323-Segmentation-fault-when-opening-ipod.patch
@@ -0,0 +1,43 @@
+From 8dc5015ae036b219c4c9579a156886aa3a722aa5 Mon Sep 17 00:00:00 2001
+From: phantomjinx <p.g.richardson@phantomjinx.co.uk>
+Date: Sat, 9 Aug 2014 19:57:10 +0100
+Subject: [PATCH] #323 Segmentation fault when opening ipod
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* Patch submitted in bug report from François Melchior / James Burton
+---
+ src/itdb_itunesdb.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/itdb_itunesdb.c b/src/itdb_itunesdb.c
+index 4cc771a..1e85476 100644
+--- a/src/itdb_itunesdb.c
++++ b/src/itdb_itunesdb.c
+@@ -1156,6 +1156,7 @@ static gboolean playcounts_plist_read (FImport *fimp, GValue *plist_data)
+ GHashTable *pc_dict, *track_dict;
+ GValue *to_parse;
+ GArray *array;
++ GValue value;
+ gint i;
+ guint32 mac_time;
+ guint64 *dbid;
+@@ -1175,11 +1176,12 @@ static gboolean playcounts_plist_read (FImport *fimp, GValue *plist_data)
+
+ array = (GArray*)g_value_get_boxed (to_parse);
+ for (i = 0; i < array->len; i++) {
+- if (!G_VALUE_HOLDS (g_array_index (array, GValue *, i), G_TYPE_HASH_TABLE)) {
++ value = g_array_index (array, GValue, i);
++ if (!G_VALUE_HOLDS (&value, G_TYPE_HASH_TABLE)) {
+ continue;
+ }
+
+- track_dict = g_value_get_boxed (g_array_index (array, GValue *, i));
++ track_dict = g_value_get_boxed (&value);
+ if (track_dict == NULL)
+ continue;
+
+--
+2.12.2
+
diff --git a/source/l/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch b/source/l/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch
new file mode 100644
index 000000000..a5dafb285
--- /dev/null
+++ b/source/l/libgpod/libgpod-0.8.2-pkgconfig_overlinking.patch
@@ -0,0 +1,11 @@
+diff -up libgpod-0.8.2/libgpod-1.0.pc.in.pkgconfig_overlinking libgpod-0.8.2/libgpod-1.0.pc.in
+--- libgpod-0.8.2/libgpod-1.0.pc.in.pkgconfig_overlinking 2011-04-15 03:37:34.000000000 -0500
++++ libgpod-0.8.2/libgpod-1.0.pc.in 2012-08-10 13:53:00.294631805 -0500
+@@ -6,6 +6,6 @@ includedir=@includedir@
+ Name: libgpod
+ Description: A library to manipulate songs and playlists stored on an ipod
+ Version: @VERSION@
+-Requires: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
++Requires.private: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
+ Libs: -L${libdir} -lgpod
+ Cflags: -I${includedir}/gpod-1.0
diff --git a/source/l/libgpod/libgpod-0.8.3-pkgconfig_sharp.patch b/source/l/libgpod/libgpod-0.8.3-pkgconfig_sharp.patch
new file mode 100644
index 000000000..d12ef2b83
--- /dev/null
+++ b/source/l/libgpod/libgpod-0.8.3-pkgconfig_sharp.patch
@@ -0,0 +1,17 @@
+diff -Nurp libgpod-0.8.3/bindings/mono/libgpod-sharp/Makefile.am libgpod-0.8.3-pkgconfig_sharp/bindings/mono/libgpod-sharp/Makefile.am
+--- libgpod-0.8.3/bindings/mono/libgpod-sharp/Makefile.am 2013-07-09 09:37:38.000000000 +0000
++++ libgpod-0.8.3-pkgconfig_sharp/bindings/mono/libgpod-sharp/Makefile.am 2023-02-05 21:34:47.042376473 +0000
+@@ -23,12 +23,12 @@ libgpod-sharp.dll.config: $(top_srcdir)/
+ sed "s/@DLNAME@/$(dlname)/g" $< >$@
+
+ pkgconfigdir = $(libdir)/pkgconfig
+-pkgconfig_DATA = libgpod-sharp.pc
+ EXTRAS = \
+ libgpod-sharp.pc.in
+
+ if HAVE_MONO
+ include $(srcdir)/../Makefile.include
++pkgconfig_DATA = libgpod-sharp.pc
+ module_SCRIPTS += libgpod-sharp.dll.config
+ EXTRA_DIST += libgpod-sharp.dll.config.in
+ DISTCLEANFILES += libgpod-sharp.dll.config
diff --git a/source/l/libgpod/libgpod-udev.patch b/source/l/libgpod/libgpod-udev.patch
new file mode 100644
index 000000000..42b762b67
--- /dev/null
+++ b/source/l/libgpod/libgpod-udev.patch
@@ -0,0 +1,15 @@
+--- ./tools/90-libgpod.rules.in.orig 2011-07-24 06:03:29.000000000 -0500
++++ ./tools/90-libgpod.rules.in 2023-12-02 14:01:52.672726550 -0600
+@@ -16,10 +16,10 @@
+
+
+ # "iPods" using the afc protocol (iPhone, iPod Touch, ...)
+-ACTION=="add|change", ENV{USBMUX_SUPPORTED}=="1", IMPORT{program}+="@udevdir@/iphone-set-info", GOTO="libgpod_end"
++ACTION=="add|change", ENV{USBMUX_SUPPORTED}=="1", IMPORT{program}=="@udevdir@/iphone-set-info", GOTO="libgpod_end"
+ # with a new enough usbmuxd, the rule below is not useful since it will
+ # take care of setting USBMUX_SUPPORTED for all supported devices. Keep
+ # this rule for now until distros ship a new enough usbmuxd
+-ACTION=="add|change", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="129[0-9a]", IMPORT{program}+="@udevdir@/iphone-set-info"
++ACTION=="add|change", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="129[0-9a]", IMPORT{program}=="@udevdir@/iphone-set-info"
+
+ LABEL="libgpod_end"
diff --git a/source/l/libgpod/libgpod.SlackBuild b/source/l/libgpod/libgpod.SlackBuild
index 6d944bcf0..599c4257f 100755
--- a/source/l/libgpod/libgpod.SlackBuild
+++ b/source/l/libgpod/libgpod.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgpod
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-10}
+BUILD=${BUILD:-13}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -78,6 +78,13 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+sed -e 's|libplist >= 1.0|libplist-2.0 >= 2.2|' -i configure.ac # support libplist 2.2
+sed -e 's|plist_dict_insert_item|plist_dict_set_item|' -i tools/ipod-lockdown.c # support libplist 2.3
+cat $CWD/libgpod-udev.patch | patch -p1 --verbose || exit 1
+cat $CWD/0001-323-Segmentation-fault-when-opening-ipod.patch | patch -p1 --verbose || exit 1
+cat $CWD/libgpod-0.8.2-pkgconfig_overlinking.patch | patch -p1 --verbose || exit 1
+cat $CWD/libgpod-0.8.3-pkgconfig_sharp.patch | patch -p1 --verbose || exit 1
+
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/libgsf/libgsf.SlackBuild b/source/l/libgsf/libgsf.SlackBuild
index 45d3e3839..e99b9b369 100755
--- a/source/l/libgsf/libgsf.SlackBuild
+++ b/source/l/libgsf/libgsf.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgsf
VERSION=${VERSION:-$(echo libgsf-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/libgtop/libgtop.SlackBuild b/source/l/libgtop/libgtop.SlackBuild
index 787d2339a..5ea610bdb 100755
--- a/source/l/libgtop/libgtop.SlackBuild
+++ b/source/l/libgtop/libgtop.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-5}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libgusb/libgusb.SlackBuild b/source/l/libgusb/libgusb.SlackBuild
new file mode 100755
index 000000000..1ea04169c
--- /dev/null
+++ b/source/l/libgusb/libgusb.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright 2016-2023 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libgusb
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Ddocs=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* COMMITMENT* COPYING* MAINTAINERS* NEWS* README* RELEASE* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libgusb/libgusb.url b/source/l/libgusb/libgusb.url
new file mode 100644
index 000000000..482574ecc
--- /dev/null
+++ b/source/l/libgusb/libgusb.url
@@ -0,0 +1 @@
+https://github.com/hughsie/libgusb
diff --git a/source/l/libgusb/slack-desc b/source/l/libgusb/slack-desc
new file mode 100644
index 000000000..30d14fe38
--- /dev/null
+++ b/source/l/libgusb/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libgusb: libgusb (GObject wrapper for libusb1)
+libgusb:
+libgusb: GUsb is a GObject wrapper for libusb1 that makes it easy to do
+libgusb: asynchronous control, bulk and interrupt transfers with proper
+libgusb: cancellation and integration into a mainloop. This makes it easy to
+libgusb: integrate low level USB transfers with your high-level application or
+libgusb: system daemon.
+libgusb:
+libgusb: Homepage: https://github.com/hughsie/libgusb
+libgusb:
+libgusb:
diff --git a/source/l/libhandy/libhandy.SlackBuild b/source/l/libhandy/libhandy.SlackBuild
new file mode 100755
index 000000000..814b8a1ee
--- /dev/null
+++ b/source/l/libhandy/libhandy.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+# Copyright 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libhandy
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dtests=false \
+ -Dexamples=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS* COPYING* HACKING* NEWS* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libhandy/slack-desc b/source/l/libhandy/slack-desc
new file mode 100644
index 000000000..663cadc06
--- /dev/null
+++ b/source/l/libhandy/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libhandy: libhandy (additional GTK UI widgets)
+libhandy:
+libhandy: The libhandy package provides additional GTK UI widgets for use in
+libhandy: developing user interfaces scaling from desktop workstations to mobile
+libhandy: phones.
+libhandy:
+libhandy:
+libhandy:
+libhandy:
+libhandy:
+libhandy:
diff --git a/source/l/libieee1284/libieee1284.SlackBuild b/source/l/libieee1284/libieee1284.SlackBuild
index 326b6573e..357ebe7ce 100755
--- a/source/l/libieee1284/libieee1284.SlackBuild
+++ b/source/l/libieee1284/libieee1284.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libieee1284
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-8}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -87,6 +87,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
+ --without-python \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
diff --git a/source/l/libieee1284/libieee1284.url b/source/l/libieee1284/libieee1284.url
new file mode 100644
index 000000000..3e23f17bb
--- /dev/null
+++ b/source/l/libieee1284/libieee1284.url
@@ -0,0 +1 @@
+https://github.com/twaugh/libieee1284
diff --git a/source/l/libimobiledevice-glue/fetch-libimobiledevice-glue.sh b/source/l/libimobiledevice-glue/fetch-libimobiledevice-glue.sh
new file mode 100755
index 000000000..268848a92
--- /dev/null
+++ b/source/l/libimobiledevice-glue/fetch-libimobiledevice-glue.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# Copyright 2019, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Pull a stable branch + patches
+BRANCH=${1:-master}
+
+# Clear download area:
+rm -rf libimobiledevice-glue
+
+# Clone repository:
+git clone https://github.com/libimobiledevice/libimobiledevice-glue
+
+# checkout $BRANCH:
+( cd libimobiledevice-glue
+ git checkout $BRANCH || exit 1
+)
+
+HEADISAT="$( cd libimobiledevice-glue && git log -1 --format=%h )"
+DATE="$( cd libimobiledevice-glue && git log -1 --format=%cd --date=format:%Y%m%d )"
+LONGDATE="$( cd libimobiledevice-glue && git log -1 --format=%cd --date=format:%c )"
+# COMMENTED OUT: otherwise build fails due to not finding version / latest commit
+# Cleanup. We're not packing up the whole git repo.
+#( cd libimobiledevice-glue && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+mv libimobiledevice-glue libimobiledevice-glue-${DATE}_${HEADISAT}
+tar cf libimobiledevice-glue-${DATE}_${HEADISAT}.tar libimobiledevice-glue-${DATE}_${HEADISAT}
+xz -9 -f libimobiledevice-glue-${DATE}_${HEADISAT}.tar
+rm -rf libimobiledevice-glue-${DATE}_${HEADISAT}
+touch -d "$LONGDATE" libimobiledevice-glue-${DATE}_${HEADISAT}.tar.xz
+echo
+echo "libimobiledevice-glue branch $BRANCH with HEAD at $HEADISAT packaged as libimobiledevice-glue-${DATE}_${HEADISAT}.tar.xz"
+echo
diff --git a/source/l/atk/atk.SlackBuild b/source/l/libimobiledevice-glue/libimobiledevice-glue.SlackBuild
index b667bbfb7..11c744568 100755
--- a/source/l/atk/atk.SlackBuild
+++ b/source/l/libimobiledevice-glue/libimobiledevice-glue.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=atk
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
-
-NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+PKGNAM=libimobiledevice-glue
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -46,8 +44,12 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
TMP=${TMP:-/tmp}
-PKG=$TMP/package-atk
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $TMP $PKG
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -63,12 +65,12 @@ else
LIBDIRSUFFIX=""
fi
-rm -rf $PKG
-mkdir -p $TMP $PKG/usr
cd $TMP
-rm -rf atk-$VERSION
-tar xvf $CWD/atk-$VERSION.tar.xz || exit 1
-cd atk-$VERSION || exit 1
+rm -rf ${PKGNAM}-${VERSION}
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
+
+# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,33 +78,30 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Configure, build, and install:
-export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS"
-mkdir meson-build
-cd meson-build
-meson setup \
+if [ ! -r configure ]; then
+ NOCONFIGURE=1 ./autogen.sh
+fi
+
+PYTHON=/usr/bin/python3 \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
--prefix=/usr \
- --libdir=lib${LIBDIRSUFFIX} \
- --libexecdir=/usr/libexec \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --includedir=/usr/include \
- --datadir=/usr/share \
- --mandir=/usr/man \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
- --buildtype=release \
- -Dintrospection=true \
- -Ddocs=true \
- .. || exit 1
- "${NINJA:=ninja}" $NUMJOBS || exit 1
- DESTDIR=$PKG $NINJA install || exit 1
-cd ..
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -121,22 +120,23 @@ if [ -d $PKG/usr/man ]; then
)
fi
-mkdir -p $PKG/usr/doc/atk-$VERSION
-cp -a \
- AUTHORS COPYING* NEWS README* TODO \
- $PKG/usr/doc/atk-$VERSION
-
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
fi
+# Add some docs:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/atk-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libimobiledevice-glue/slack-desc b/source/l/libimobiledevice-glue/slack-desc
new file mode 100644
index 000000000..05468d287
--- /dev/null
+++ b/source/l/libimobiledevice-glue/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libimobiledevice-glue: libimobiledevice-glue (glue library for libimobiledevice)
+libimobiledevice-glue:
+libimobiledevice-glue: Library with common code used by the libraries and tools from the
+libimobiledevice-glue: libimobiledevice project. The main functionality provided by this
+libimobiledevice-glue: library are socket helper functions and a platform independent
+libimobiledevice-glue: thread/mutex implementation. It also provides a number of string,
+libimobiledevice-glue: file, and plist helper functions, as well as some other commonly used
+libimobiledevice-glue: code that was originally duplicated in the dedicated projects.
+libimobiledevice-glue:
+libimobiledevice-glue: The libimobiledevice homepage: http://www.libimobiledevice.org/
+libimobiledevice-glue:
diff --git a/source/l/libimobiledevice/fetch-libimobiledevice.sh b/source/l/libimobiledevice/fetch-libimobiledevice.sh
index ebd6cb9c3..6ca00bcbb 100755
--- a/source/l/libimobiledevice/fetch-libimobiledevice.sh
+++ b/source/l/libimobiledevice/fetch-libimobiledevice.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2019, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -37,8 +37,9 @@ git clone https://github.com/libimobiledevice/libimobiledevice
HEADISAT="$( cd libimobiledevice && git log -1 --format=%h )"
DATE="$( cd libimobiledevice && git log -1 --format=%cd --date=format:%Y%m%d )"
LONGDATE="$( cd libimobiledevice && git log -1 --format=%cd --date=format:%c )"
+# COMMENTED OUT: otherwise build fails due to not finding version / latest commit
# Cleanup. We're not packing up the whole git repo.
-( cd libimobiledevice && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+#( cd libimobiledevice && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
mv libimobiledevice libimobiledevice-${DATE}_${HEADISAT}
tar cf libimobiledevice-${DATE}_${HEADISAT}.tar libimobiledevice-${DATE}_${HEADISAT}
xz -9 -f libimobiledevice-${DATE}_${HEADISAT}.tar
diff --git a/source/l/libimobiledevice/libimobiledevice.SlackBuild b/source/l/libimobiledevice/libimobiledevice.SlackBuild
index d34ef0ffe..2c7e6d21b 100755
--- a/source/l/libimobiledevice/libimobiledevice.SlackBuild
+++ b/source/l/libimobiledevice/libimobiledevice.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2017, 2018, 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libimobiledevice
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -93,6 +93,7 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--mandir=/usr/man \
--disable-static \
+ --without-cython \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -101,10 +102,13 @@ make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-# Provide a symlink from the old pkgconfig name:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
- ln -sf libimobiledevice-1.*.pc libimobiledevice.pc
-)
+## COMMENTED OUT - I doubt this is needed any more.
+## Provide a symlink from the old pkgconfig name:
+#if [ -r $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/libimobiledevice-1.0.pc -a ! -r $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/libimobiledevice.pc ]; then
+# ( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
+# ln -sf libimobiledevice-1.0.pc libimobiledevice.pc
+# )
+#fi
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
diff --git a/source/l/libindicator/libindicator.SlackBuild b/source/l/libindicator/libindicator.SlackBuild
index e0bab569c..cd6f75f88 100755
--- a/source/l/libindicator/libindicator.SlackBuild
+++ b/source/l/libindicator/libindicator.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libiodbc/libiodbc.url b/source/l/libiodbc/libiodbc.url
new file mode 100644
index 000000000..9cdb63457
--- /dev/null
+++ b/source/l/libiodbc/libiodbc.url
@@ -0,0 +1 @@
+https://github.com/openlink/iODBC
diff --git a/source/l/libiodbc/slack-desc b/source/l/libiodbc/slack-desc
index a16120f26..8b7f858eb 100644
--- a/source/l/libiodbc/slack-desc
+++ b/source/l/libiodbc/slack-desc
@@ -13,7 +13,7 @@ libiodbc: an Open Source platform independent implementation of both the ODBC
libiodbc: and X/Open specifications. It allows for developing solutions
libiodbc: that are language, platform and database independent.
libiodbc:
-libiodbc: Homepage: http://www.iodbc.org/dataspace/iodbc/wiki/iODBC/
+libiodbc: Homepage: https://www.iodbc.org
libiodbc:
libiodbc:
libiodbc:
diff --git a/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild b/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
index fa7e0ed89..5a552530a 100755
--- a/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
+++ b/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libmpc/libmpc.SlackBuild b/source/l/libmpc/libmpc.SlackBuild
index f1facc145..661deec9c 100755
--- a/source/l/libmpc/libmpc.SlackBuild
+++ b/source/l/libmpc/libmpc.SlackBuild
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
SRCNAM=mpc
PKGNAM=libmpc
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libmtp/libmtp.SlackBuild b/source/l/libmtp/libmtp.SlackBuild
index d6efbc0e6..fc917ff88 100755
--- a/source/l/libmtp/libmtp.SlackBuild
+++ b/source/l/libmtp/libmtp.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libmtp
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libnice/libnice.SlackBuild b/source/l/libnice/libnice.SlackBuild
index 9ac27e597..7c4501e9e 100755
--- a/source/l/libnice/libnice.SlackBuild
+++ b/source/l/libnice/libnice.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnice
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libnl/libnl.info b/source/l/libnl/libnl.info
deleted file mode 100644
index fafac745d..000000000
--- a/source/l/libnl/libnl.info
+++ /dev/null
@@ -1,2 +0,0 @@
-HOMEPAGE="http://people.suug.ch/~tgr/libnl/"
-DOWNLOAD="http://people.suug.ch/~tgr/libnl/files/libnl-1.1.tar.gz"
diff --git a/source/l/libnl/libnl.url b/source/l/libnl/libnl.url
new file mode 100644
index 000000000..c28c821ab
--- /dev/null
+++ b/source/l/libnl/libnl.url
@@ -0,0 +1 @@
+https://www.infradead.org/~tgr/libnl
diff --git a/source/l/libnl/slack-desc b/source/l/libnl/slack-desc
index 7fc981fd2..ce73e0241 100644
--- a/source/l/libnl/slack-desc
+++ b/source/l/libnl/slack-desc
@@ -12,7 +12,7 @@ libnl: libnl is a library for applications dealing with netlink sockets.
libnl: The library provides an interface for raw netlink messaging and
libnl: various netlink family specific interfaces.
libnl:
-libnl: Homepage: http://people.suug.ch/~tgr/libnl/
+libnl: Homepage: https://www.infradead.org/~tgr/libnl
libnl:
libnl:
libnl:
diff --git a/source/l/libnl3/libnl.url b/source/l/libnl3/libnl.url
new file mode 100644
index 000000000..16c66d215
--- /dev/null
+++ b/source/l/libnl3/libnl.url
@@ -0,0 +1,2 @@
+https://github.com/thom311/libnl
+https://github.com/thom311/libnl/releases/download/libnl3_9_0/libnl-3.9.0.tar.gz
diff --git a/source/l/libnl3/libnl3.SlackBuild b/source/l/libnl3/libnl3.SlackBuild
index 43fd07cef..6e11e9699 100755
--- a/source/l/libnl3/libnl3.SlackBuild
+++ b/source/l/libnl3/libnl3.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnl
PKGNAME=libnl3
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/l/libnotify/libnotify.SlackBuild b/source/l/libnotify/libnotify.SlackBuild
index 376248b13..6ba080569 100755
--- a/source/l/libnotify/libnotify.SlackBuild
+++ b/source/l/libnotify/libnotify.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for libnotify
#
# Copyright 2009 Erik W. Hanson, Minneapolis, MN, USA
-# Copyright 2010, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2018, 2019, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,8 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnotify
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -68,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
@@ -91,6 +91,7 @@ meson setup \
--localstatedir=/var \
--buildtype=release \
-Ddocbook_docs=disabled \
+ -Dgtk_doc=false \
-Dtests=false \
-Dman=false \
.. || exit 1
@@ -105,8 +106,10 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a AUTHORS COPYING README $PKG/usr/doc/$PKGNAM-$VERSION
-( cd $PKG/usr/doc/$PKGNAM-$VERSION ; ln -s ../../share/gtk-doc/html/libnotify html )
+cp -a AUTHORS* COPYING* NEWS* README* SPEC* $PKG/usr/doc/$PKGNAM-$VERSION
+if [ -d $PKG/usr/share/gtk-doc/html/libnotify ]; then
+ ( cd $PKG/usr/doc/$PKGNAM-$VERSION ; ln -s ../../share/gtk-doc/html/libnotify html )
+fi
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/libnotify/slack-desc b/source/l/libnotify/slack-desc
index ef0fe6b6b..7cad2dd54 100644
--- a/source/l/libnotify/slack-desc
+++ b/source/l/libnotify/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler--------------------------------------------------|
libnotify: libnotify (notification library)
libnotify:
-libnotify: A general library for event notification
+libnotify: A general library for event notification.
libnotify:
-libnotify: Homepage: https://developer.gnome.org/libnotify
+libnotify: Homepage: https://gitlab.gnome.org/GNOME/libnotify
libnotify:
libnotify:
libnotify:
diff --git a/source/l/libnsl/libnsl.SlackBuild b/source/l/libnsl/libnsl.SlackBuild
index c42b4f4db..284a3b697 100755
--- a/source/l/libnsl/libnsl.SlackBuild
+++ b/source/l/libnsl/libnsl.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnsl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libnsl/slack-desc b/source/l/libnsl/slack-desc
index 6014e0126..417311d0a 100644
--- a/source/l/libnsl/slack-desc
+++ b/source/l/libnsl/slack-desc
@@ -6,12 +6,12 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-libnsl: libnsl (NIS/YP and NIS+ library)
+libnsl: libnsl (NIS/YP library)
libnsl:
libnsl: This package contains the libnsl library. This library contains the
-libnsl: public client interface for NIS(YP) and NIS+. This code was formerly
-libnsl: part of glibc, but is now standalone to be able to link against TI-RPC
-libnsl: for IPv6 support.
+libnsl: public client interface for NIS(YP). This code was formerly part of
+libnsl: glibc, but is now standalone to be able to link against TI-RPC for
+libnsl: IPv6 support.
libnsl:
libnsl: Homepage: https://github.com/thkukuk/libnsl
libnsl:
diff --git a/source/l/libnss_nis/libnss_nis.SlackBuild b/source/l/libnss_nis/libnss_nis.SlackBuild
index 571c6af9f..bc5e9862e 100755
--- a/source/l/libnss_nis/libnss_nis.SlackBuild
+++ b/source/l/libnss_nis/libnss_nis.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnss_nis
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/at-spi2-atk/at-spi2-atk.SlackBuild b/source/l/libnvme/libnvme.SlackBuild
index 9b8c50175..c2c277eaf 100755
--- a/source/l/at-spi2-atk/at-spi2-atk.SlackBuild
+++ b/source/l/libnvme/libnvme.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,18 +22,19 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=at-spi2-atk
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+PKGNAM=libnvme
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ *) ARCH=$(uname -m) ;;
esac
+ export ARCH
fi
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
@@ -46,28 +47,35 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
rm -rf $PKG
-mkdir -p $PKG
+mkdir -p $TMP $PKG
+
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -99,18 +107,17 @@ meson setup \
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
- $PKG/usr/doc/$PKGNAM-$VERSION
+ COPYING* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/libnvme/libnvme.url b/source/l/libnvme/libnvme.url
new file mode 100644
index 000000000..a39915443
--- /dev/null
+++ b/source/l/libnvme/libnvme.url
@@ -0,0 +1 @@
+https://github.com/linux-nvme/libnvme
diff --git a/source/l/libnvme/slack-desc b/source/l/libnvme/slack-desc
new file mode 100644
index 000000000..1d28c6ac6
--- /dev/null
+++ b/source/l/libnvme/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libnvme: libnvme (NVMe library)
+libnvme:
+libnvme: This is the libnvme development C library. libnvme provides type
+libnvme: definitions for NVMe specification structures, enumerations, and bit
+libnvme: fields, helper functions to construct, dispatch, and decode commands
+libnvme: and payloads, and utilities to connect, scan, and manage nvme devices
+libnvme: on a Linux system.
+libnvme:
+libnvme: Homepage: https://github.com/linux-nvme/libnvme
+libnvme:
+libnvme:
diff --git a/source/l/libopusenc/libopusenc.SlackBuild b/source/l/libopusenc/libopusenc.SlackBuild
index 68b6f264c..c8a31c46a 100755
--- a/source/l/libopusenc/libopusenc.SlackBuild
+++ b/source/l/libopusenc/libopusenc.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/QtAV/QtAV.SlackBuild b/source/l/libpaper/libpaper.SlackBuild
index 8c784d205..6fc5ca34a 100755
--- a/source/l/QtAV/QtAV.SlackBuild
+++ b/source/l/libpaper/libpaper.SlackBuild
@@ -1,7 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2019 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +22,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=QtAV
+PKGNAM=libpaper
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -86,25 +85,31 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS"
-export LDFLAGS="$SLKLDFLAGS"
-
-qmake-qt5 INSTALL_PREFIX=/usr "CONFIG+=no-tests no_rpath recheck"
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make INSTALL_ROOT=$PKG install || exit 1
-
-# Create symlinks for the binaries; these are referenced in *.desktop:
-mkdir -p $PKG/usr/bin
-( cd $PKG/usr/bin
- ln -s ../lib${LIBDIRSUFFIX}/qt5/bin/Player .
- ln -s ../lib${LIBDIRSUFFIX}/qt5/bin/QMLPlayer .
-)
+make install DESTDIR=$PKG || exit 1
-# Fix documentation directory:
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-mv $PKG/usr/share/doc/* $PKG/usr/doc/$PKGNAM-$VERSION/
-rmdir $PKG/usr/share/doc
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -119,7 +124,7 @@ done
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS* ChangeLog CHANGES COPYING* LICENSE* NEWS* README* THANKS* TODO* \
+ AUTHORS* ChangeLog COPYING* NEWS* README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
@@ -131,7 +136,6 @@ if [ -r ChangeLog ]; then
fi
mkdir -p $PKG/install
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
diff --git a/source/l/libpaper/libpaper.url b/source/l/libpaper/libpaper.url
new file mode 100644
index 000000000..5237242ac
--- /dev/null
+++ b/source/l/libpaper/libpaper.url
@@ -0,0 +1,2 @@
+https://github.com/rrthomas/libpaper
+https://github.com/rrthomas/libpaper/releases/download/v2.2.5/libpaper-2.2.5.tar.gz
diff --git a/source/l/libpaper/slack-desc b/source/l/libpaper/slack-desc
new file mode 100644
index 000000000..23167c57e
--- /dev/null
+++ b/source/l/libpaper/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libpaper: libpaper (paper preferences library)
+libpaper:
+libpaper: The libpaper package enables users to indicate their preferred paper
+libpaper: size, provides the paper utility to find the user's preferred default
+libpaper: paper size and give information about known sizes, and specifies
+libpaper: system-wide and per-user paper size catalogues.
+libpaper:
+libpaper: Homepage: https://github.com/rrthomas/libpaper
+libpaper:
+libpaper:
+libpaper:
diff --git a/source/l/libplacebo/libplacebo.SlackBuild b/source/l/libplacebo/libplacebo.SlackBuild
new file mode 100755
index 000000000..50b411da6
--- /dev/null
+++ b/source/l/libplacebo/libplacebo.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Copyright 2019-2020 Hunter Sezen California, USA
+# Copyright 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libplacebo
+VERSION=${VERSION:-$(echo libplacebo-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -D demos=false \
+ -D glslang=enabled \
+ -D dovi=disabled \
+ -D libdovi=disabled \
+ -D d3d11=disabled \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a LICENSE* README* $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libplacebo/libplacebo.url b/source/l/libplacebo/libplacebo.url
new file mode 100644
index 000000000..2a08578b2
--- /dev/null
+++ b/source/l/libplacebo/libplacebo.url
@@ -0,0 +1 @@
+https://github.com/haasn/libplacebo
diff --git a/source/l/libplacebo/slack-desc b/source/l/libplacebo/slack-desc
new file mode 100644
index 000000000..69bafb327
--- /dev/null
+++ b/source/l/libplacebo/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libplacebo: libplacebo (GPU-accelerated video processing library)
+libplacebo:
+libplacebo: libplacebo is, in a nutshell, the core rendering algorithms and ideas
+libplacebo: of mpv rewritten as an independent library. It contains a large
+libplacebo: assortment of video processing shaders, focusing on both quality and
+libplacebo: performance.
+libplacebo:
+libplacebo: Homepage: https://code.videolan.org/videolan/libplacebo
+libplacebo:
+libplacebo:
+libplacebo:
diff --git a/source/l/libplist/libplist.SlackBuild b/source/l/libplist/libplist.SlackBuild
index 1c1080094..8e1400c35 100755
--- a/source/l/libplist/libplist.SlackBuild
+++ b/source/l/libplist/libplist.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2011, 2014, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2014, 2018, 2019, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libplist
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -65,6 +65,7 @@ else
LIBDIRSUFFIX=""
fi
+# Since libplist will be unavailable for a while, REQUIRE_GLOBAL_LOCK.
if ls /var/log/packages/libplist-* 1> /dev/null 2> /dev/null ; then
echo "libplist is installed. The package should be removed before"
echo "building, or the new python modules might be linked to the"
@@ -90,15 +91,16 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Ignore Python 2.7 EOL for now. We want to get rid of it ASAP, but not sooner:
-export PYTHONWARNINGS=ignore:::pkg_resources.py2_warn
-
if [ ! -r configure ]; then
NOCONFIGURE=1 ./autogen.sh
fi
+# If missing, define PACKAGE_VERSION:
+sed -i "s,PACKAGE_VERSION='',PACKAGE_VERSION='$VERSION',g" configure
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
+PYTHON="/usr/bin/python3" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/libpng/libpng.SlackBuild b/source/l/libpng/libpng.SlackBuild
index 6fc1203f9..f3a84ea9b 100755
--- a/source/l/libpng/libpng.SlackBuild
+++ b/source/l/libpng/libpng.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +23,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libpng
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -81,7 +81,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
diff --git a/source/l/libppd/libppd.SlackBuild b/source/l/libppd/libppd.SlackBuild
new file mode 100755
index 000000000..2c8c7e75f
--- /dev/null
+++ b/source/l/libppd/libppd.SlackBuild
@@ -0,0 +1,147 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libppd
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-mutool \
+ --with-cups-rundir=/run/cups \
+ --enable-ppdc-utils \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* CHANGES.md COPYING* DEVELOPING* INSTALL* LICENSE* NEWS* NOTICE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGES.md file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.md ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.md | head -n 1000 > $DOCSDIR/CHANGES.md
+ touch -r CHANGES.md $DOCSDIR/CHANGES.md
+fi
+
+# Nope:
+rm -f $PKG/usr/doc/${PKGNAM}-$VERSION/CHANGES-1.x*
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libppd/libppd.url b/source/l/libppd/libppd.url
new file mode 100644
index 000000000..9aec2b08d
--- /dev/null
+++ b/source/l/libppd/libppd.url
@@ -0,0 +1 @@
+https://github.com/OpenPrinting/libppd
diff --git a/source/l/libppd/slack-desc b/source/l/libppd/slack-desc
new file mode 100644
index 000000000..c1661aaec
--- /dev/null
+++ b/source/l/libppd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libppd: libppd (legacy printer driver library)
+libppd:
+libppd: libppd is the legacy support library for PPD files, taking over these
+libppd: functions from libcups and CUPS' PPD compiler.
+libppd:
+libppd: Homepage: http://www.openprinting.org
+libppd:
+libppd:
+libppd:
+libppd:
+libppd:
diff --git a/source/l/libproxy/libproxy.SlackBuild b/source/l/libproxy/libproxy.SlackBuild
index 4bbfe603e..410befdd1 100755
--- a/source/l/libproxy/libproxy.SlackBuild
+++ b/source/l/libproxy/libproxy.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2009, 2010, 2011 Robby Workman Northport, AL, USA
-# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2018, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libproxy
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -62,9 +62,6 @@ else
LIBDIRSUFFIX=""
fi
-PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
-PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
-
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -78,38 +75,51 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-cmake . \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX} \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DMODULE_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX}/libproxy/${VERSION}/modules \
- -DPERL_VENDORINSTALL=yes || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Generate .pyc files
-python -m compileall "${PKG}$PYTHONLIB"
-python -O -m compileall "${PKG}$PYTHONLIB"
-python3 -m compileall "${PKG}$PYTHON3LIB"
-python3 -O -m compileall "${PKG}$PYTHON3LIB"
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dpacrunner-duktape=true \
+ -Ddocs=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
+ CHANGELOG.md AUTHORS* COPYING* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
-# If there's a ChangeLog, installing at least part of the recent history
+# If there's a CHANGELOG.md, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
+if [ -r CHANGELOG.md ]; then
DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
+ cat CHANGELOG.md | head -n 1000 > $DOCSDIR/CHANGELOG.md
+ touch -r CHANGELOG.md $DOCSDIR/CHANGELOG.md
fi
mkdir -p $PKG/install
diff --git a/source/l/libpsl/libpsl.SlackBuild b/source/l/libpsl/libpsl.SlackBuild
index 799c9b94b..dde884564 100755
--- a/source/l/libpsl/libpsl.SlackBuild
+++ b/source/l/libpsl/libpsl.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libpsl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -105,6 +105,13 @@ if [ ! -r /usr/share/publicsuffix/public_suffix_list.dat ]; then
fi
# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -185,4 +192,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/libpsl/public_suffix_list.dat b/source/l/libpsl/public_suffix_list.dat
index dff35e5a5..6d6af67dd 100644
--- a/source/l/libpsl/public_suffix_list.dat
+++ b/source/l/libpsl/public_suffix_list.dat
@@ -9,7 +9,7 @@
// ===BEGIN ICANN DOMAINS===
-// ac : https://en.wikipedia.org/wiki/.ac
+// ac : http://nic.ac/rules.htm
ac
com.ac
edu.ac
@@ -22,8 +22,7 @@ org.ac
ad
nom.ad
-// ae : https://en.wikipedia.org/wiki/.ae
-// see also: "Domain Name Eligibility Policy" at http://www.aeda.ae/eng/aepolicy.php
+// ae : https://tdra.gov.ae/en/aeda/ae-policies
ae
co.ae
net.ae
@@ -175,17 +174,21 @@ it.ao
// aq : https://en.wikipedia.org/wiki/.aq
aq
-// ar : https://nic.ar/nic-argentina/normativa-vigente
+// ar : https://nic.ar/es/nic-argentina/normativa
ar
+bet.ar
com.ar
+coop.ar
edu.ar
gob.ar
gov.ar
int.ar
mil.ar
musica.ar
+mutual.ar
net.ar
org.ar
+senasa.ar
tur.ar
// arpa : https://en.wikipedia.org/wiki/.arpa
@@ -377,11 +380,29 @@ org.bi
// biz : https://en.wikipedia.org/wiki/.biz
biz
-// bj : https://en.wikipedia.org/wiki/.bj
+// bj : https://nic.bj/bj-suffixes.txt
+// submitted by registry <contact@nic.bj>
bj
-asso.bj
-barreau.bj
-gouv.bj
+africa.bj
+agro.bj
+architectes.bj
+assur.bj
+avocats.bj
+co.bj
+com.bj
+eco.bj
+econo.bj
+edu.bj
+info.bj
+loisirs.bj
+money.bj
+net.bj
+org.bj
+ote.bj
+resto.bj
+restaurant.bj
+tourism.bj
+univ.bj
// bm : http://www.bermudanic.bm/dnr-text.txt
bm
@@ -734,7 +755,6 @@ gouv.ci
// cl : https://www.nic.cl
// Confirmed by .CL registry <hsalgado@nic.cl>
cl
-aprendemas.cl
co.cl
gob.cl
gov.cl
@@ -839,7 +859,13 @@ gov.cu
inf.cu
// cv : https://en.wikipedia.org/wiki/.cv
+// cv : http://www.dns.cv/tldcv_portal/do?com=DS;5446457100;111;+PAGE(4000018)+K-CAT-CODIGO(RDOM)+RCNT(100); <- registration rules
cv
+com.cv
+edu.cv
+int.cv
+nome.cv
+org.cv
// cw : http://www.una.cw/cw_registry/
// Confirmed by registry <registry@una.net> 2013-03-26
@@ -856,6 +882,7 @@ gov.cx
// cy : http://www.nic.cy/
// Submitted by registry Panayiotou Fotia <cydns@ucy.ac.cy>
+// namespace policies URL https://www.nic.cy/portal//sites/default/files/symfonia_gia_eggrafi.pdf
cy
ac.cy
biz.cy
@@ -863,10 +890,9 @@ com.cy
ekloges.cy
gov.cy
ltd.cy
-name.cy
+mil.cy
net.cy
org.cy
-parliament.cy
press.cy
pro.cy
tm.cy
@@ -907,16 +933,18 @@ org.do
sld.do
web.do
-// dz : https://en.wikipedia.org/wiki/.dz
+// dz : http://www.nic.dz/images/pdf_nic/charte.pdf
dz
+art.dz
+asso.dz
com.dz
+edu.dz
+gov.dz
org.dz
net.dz
-gov.dz
-edu.dz
-asso.dz
pol.dz
-art.dz
+soc.dz
+tm.dz
// ec : http://www.nic.ec/reg/paso1.asp
// Submitted by registry <vabboud@nic.ec>
@@ -1014,13 +1042,16 @@ pro.fj
*.fk
// fm : https://en.wikipedia.org/wiki/.fm
+com.fm
+edu.fm
+net.fm
+org.fm
fm
// fo : https://en.wikipedia.org/wiki/.fo
fo
-// fr : http://www.afnic.fr/
-// domaines descriptifs : https://www.afnic.fr/medias/documents/Cadre_legal/Afnic_Naming_Policy_12122016_VEN.pdf
+// fr : https://www.afnic.fr/ https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
fr
asso.fr
com.fr
@@ -1028,22 +1059,11 @@ gouv.fr
nom.fr
prd.fr
tm.fr
-// domaines sectoriels : https://www.afnic.fr/en/products-and-services/the-fr-tld/sector-based-fr-domains-4.html
-aeroport.fr
-avocat.fr
+// Other SLDs now selfmanaged out of AFNIC range. Former "domaines sectoriels", still registration suffixes
avoues.fr
cci.fr
-chambagri.fr
-chirurgiens-dentistes.fr
-experts-comptables.fr
-geometre-expert.fr
greta.fr
huissier-justice.fr
-medecin.fr
-notaires.fr
-pharmacien.fr
-port.fr
-veterinaire.fr
// ga : https://en.wikipedia.org/wiki/.ga
ga
@@ -1053,6 +1073,8 @@ ga
gb
// gd : https://en.wikipedia.org/wiki/.gd
+edu.gd
+gov.gd
gd
// ge : http://www.nic.net.ge/policy_en.pdf
@@ -1144,7 +1166,7 @@ gov.gr
// gs : https://en.wikipedia.org/wiki/.gs
gs
-// gt : http://www.gt/politicas_de_registro.html
+// gt : https://www.gt/sitio/registration_policy.php?lang=en
gt
com.gt
edu.gt
@@ -1168,6 +1190,7 @@ org.gu
web.gu
// gw : https://en.wikipedia.org/wiki/.gw
+// gw : https://nic.gw/regras/
gw
// gy : https://en.wikipedia.org/wiki/.gy
@@ -1298,7 +1321,9 @@ web.id
ie
gov.ie
-// il : http://www.isoc.org.il/domains/
+// il : http://www.isoc.org.il/domains/
+// see also: https://en.isoc.org.il/il-cctld/registration-rules
+// ISOC-IL (operated by .il Registry)
il
ac.il
co.il
@@ -1308,6 +1333,16 @@ k12.il
muni.il
net.il
org.il
+// xn--4dbrk0ce ("Israel", Hebrew) : IL
+ישראל
+// xn--4dbgdty6c.xn--4dbrk0ce.
+אקדמיה.ישראל
+// xn--5dbhl8d.xn--4dbrk0ce.
+ישוב.ישראל
+// xn--8dbq2a.xn--4dbrk0ce.
+צהל.ישראל
+// xn--hebda8b.xn--4dbrk0ce.
+ממשל.ישראל
// im : https://www.nic.im/
// Submitted by registry <info@nic.im>
@@ -1323,22 +1358,51 @@ tt.im
tv.im
// in : https://en.wikipedia.org/wiki/.in
-// see also: https://registry.in/Policies
+// see also: https://registry.in/policies
// Please note, that nic.in is not an official eTLD, but used by most
// government institutions.
in
+5g.in
+6g.in
+ac.in
+ai.in
+am.in
+bihar.in
+biz.in
+business.in
+ca.in
+cn.in
co.in
+com.in
+coop.in
+cs.in
+delhi.in
+dr.in
+edu.in
+er.in
firm.in
-net.in
-org.in
gen.in
+gov.in
+gujarat.in
ind.in
+info.in
+int.in
+internet.in
+io.in
+me.in
+mil.in
+net.in
nic.in
-ac.in
-edu.in
+org.in
+pg.in
+post.in
+pro.in
res.in
-gov.in
-mil.in
+travel.in
+tv.in
+uk.in
+up.in
+us.in
// info : https://en.wikipedia.org/wiki/.info
info
@@ -1348,7 +1412,7 @@ info
int
eu.int
-// io : http://www.nic.io/rules.html
+// io : http://www.nic.io/rules.htm
// list of other 2nd level tlds ?
io
com.io
@@ -3747,11 +3811,10 @@ org.kw
// ky : http://www.icta.ky/da_ky_reg_dom.php
// Confirmed by registry <kysupport@perimeterusa.com> 2008-06-17
ky
-edu.ky
-gov.ky
com.ky
-org.ky
+edu.ky
net.ky
+org.ky
// kz : https://en.wikipedia.org/wiki/.kz
// see also: http://www.nic.kz/rules/index.jsp
@@ -3995,555 +4058,8 @@ ac.mu
co.mu
or.mu
-// museum : http://about.museum/naming/
-// http://index.museum/
+// museum : https://welcome.museum/wp-content/uploads/2018/05/20180525-Registration-Policy-MUSEUM-EN_VF-2.pdf https://welcome.museum/buy-your-dot-museum-2/
museum
-academy.museum
-agriculture.museum
-air.museum
-airguard.museum
-alabama.museum
-alaska.museum
-amber.museum
-ambulance.museum
-american.museum
-americana.museum
-americanantiques.museum
-americanart.museum
-amsterdam.museum
-and.museum
-annefrank.museum
-anthro.museum
-anthropology.museum
-antiques.museum
-aquarium.museum
-arboretum.museum
-archaeological.museum
-archaeology.museum
-architecture.museum
-art.museum
-artanddesign.museum
-artcenter.museum
-artdeco.museum
-arteducation.museum
-artgallery.museum
-arts.museum
-artsandcrafts.museum
-asmatart.museum
-assassination.museum
-assisi.museum
-association.museum
-astronomy.museum
-atlanta.museum
-austin.museum
-australia.museum
-automotive.museum
-aviation.museum
-axis.museum
-badajoz.museum
-baghdad.museum
-bahn.museum
-bale.museum
-baltimore.museum
-barcelona.museum
-baseball.museum
-basel.museum
-baths.museum
-bauern.museum
-beauxarts.museum
-beeldengeluid.museum
-bellevue.museum
-bergbau.museum
-berkeley.museum
-berlin.museum
-bern.museum
-bible.museum
-bilbao.museum
-bill.museum
-birdart.museum
-birthplace.museum
-bonn.museum
-boston.museum
-botanical.museum
-botanicalgarden.museum
-botanicgarden.museum
-botany.museum
-brandywinevalley.museum
-brasil.museum
-bristol.museum
-british.museum
-britishcolumbia.museum
-broadcast.museum
-brunel.museum
-brussel.museum
-brussels.museum
-bruxelles.museum
-building.museum
-burghof.museum
-bus.museum
-bushey.museum
-cadaques.museum
-california.museum
-cambridge.museum
-can.museum
-canada.museum
-capebreton.museum
-carrier.museum
-cartoonart.museum
-casadelamoneda.museum
-castle.museum
-castres.museum
-celtic.museum
-center.museum
-chattanooga.museum
-cheltenham.museum
-chesapeakebay.museum
-chicago.museum
-children.museum
-childrens.museum
-childrensgarden.museum
-chiropractic.museum
-chocolate.museum
-christiansburg.museum
-cincinnati.museum
-cinema.museum
-circus.museum
-civilisation.museum
-civilization.museum
-civilwar.museum
-clinton.museum
-clock.museum
-coal.museum
-coastaldefence.museum
-cody.museum
-coldwar.museum
-collection.museum
-colonialwilliamsburg.museum
-coloradoplateau.museum
-columbia.museum
-columbus.museum
-communication.museum
-communications.museum
-community.museum
-computer.museum
-computerhistory.museum
-comunicações.museum
-contemporary.museum
-contemporaryart.museum
-convent.museum
-copenhagen.museum
-corporation.museum
-correios-e-telecomunicações.museum
-corvette.museum
-costume.museum
-countryestate.museum
-county.museum
-crafts.museum
-cranbrook.museum
-creation.museum
-cultural.museum
-culturalcenter.museum
-culture.museum
-cyber.museum
-cymru.museum
-dali.museum
-dallas.museum
-database.museum
-ddr.museum
-decorativearts.museum
-delaware.museum
-delmenhorst.museum
-denmark.museum
-depot.museum
-design.museum
-detroit.museum
-dinosaur.museum
-discovery.museum
-dolls.museum
-donostia.museum
-durham.museum
-eastafrica.museum
-eastcoast.museum
-education.museum
-educational.museum
-egyptian.museum
-eisenbahn.museum
-elburg.museum
-elvendrell.museum
-embroidery.museum
-encyclopedic.museum
-england.museum
-entomology.museum
-environment.museum
-environmentalconservation.museum
-epilepsy.museum
-essex.museum
-estate.museum
-ethnology.museum
-exeter.museum
-exhibition.museum
-family.museum
-farm.museum
-farmequipment.museum
-farmers.museum
-farmstead.museum
-field.museum
-figueres.museum
-filatelia.museum
-film.museum
-fineart.museum
-finearts.museum
-finland.museum
-flanders.museum
-florida.museum
-force.museum
-fortmissoula.museum
-fortworth.museum
-foundation.museum
-francaise.museum
-frankfurt.museum
-franziskaner.museum
-freemasonry.museum
-freiburg.museum
-fribourg.museum
-frog.museum
-fundacio.museum
-furniture.museum
-gallery.museum
-garden.museum
-gateway.museum
-geelvinck.museum
-gemological.museum
-geology.museum
-georgia.museum
-giessen.museum
-glas.museum
-glass.museum
-gorge.museum
-grandrapids.museum
-graz.museum
-guernsey.museum
-halloffame.museum
-hamburg.museum
-handson.museum
-harvestcelebration.museum
-hawaii.museum
-health.museum
-heimatunduhren.museum
-hellas.museum
-helsinki.museum
-hembygdsforbund.museum
-heritage.museum
-histoire.museum
-historical.museum
-historicalsociety.museum
-historichouses.museum
-historisch.museum
-historisches.museum
-history.museum
-historyofscience.museum
-horology.museum
-house.museum
-humanities.museum
-illustration.museum
-imageandsound.museum
-indian.museum
-indiana.museum
-indianapolis.museum
-indianmarket.museum
-intelligence.museum
-interactive.museum
-iraq.museum
-iron.museum
-isleofman.museum
-jamison.museum
-jefferson.museum
-jerusalem.museum
-jewelry.museum
-jewish.museum
-jewishart.museum
-jfk.museum
-journalism.museum
-judaica.museum
-judygarland.museum
-juedisches.museum
-juif.museum
-karate.museum
-karikatur.museum
-kids.museum
-koebenhavn.museum
-koeln.museum
-kunst.museum
-kunstsammlung.museum
-kunstunddesign.museum
-labor.museum
-labour.museum
-lajolla.museum
-lancashire.museum
-landes.museum
-lans.museum
-läns.museum
-larsson.museum
-lewismiller.museum
-lincoln.museum
-linz.museum
-living.museum
-livinghistory.museum
-localhistory.museum
-london.museum
-losangeles.museum
-louvre.museum
-loyalist.museum
-lucerne.museum
-luxembourg.museum
-luzern.museum
-mad.museum
-madrid.museum
-mallorca.museum
-manchester.museum
-mansion.museum
-mansions.museum
-manx.museum
-marburg.museum
-maritime.museum
-maritimo.museum
-maryland.museum
-marylhurst.museum
-media.museum
-medical.museum
-medizinhistorisches.museum
-meeres.museum
-memorial.museum
-mesaverde.museum
-michigan.museum
-midatlantic.museum
-military.museum
-mill.museum
-miners.museum
-mining.museum
-minnesota.museum
-missile.museum
-missoula.museum
-modern.museum
-moma.museum
-money.museum
-monmouth.museum
-monticello.museum
-montreal.museum
-moscow.museum
-motorcycle.museum
-muenchen.museum
-muenster.museum
-mulhouse.museum
-muncie.museum
-museet.museum
-museumcenter.museum
-museumvereniging.museum
-music.museum
-national.museum
-nationalfirearms.museum
-nationalheritage.museum
-nativeamerican.museum
-naturalhistory.museum
-naturalhistorymuseum.museum
-naturalsciences.museum
-nature.museum
-naturhistorisches.museum
-natuurwetenschappen.museum
-naumburg.museum
-naval.museum
-nebraska.museum
-neues.museum
-newhampshire.museum
-newjersey.museum
-newmexico.museum
-newport.museum
-newspaper.museum
-newyork.museum
-niepce.museum
-norfolk.museum
-north.museum
-nrw.museum
-nyc.museum
-nyny.museum
-oceanographic.museum
-oceanographique.museum
-omaha.museum
-online.museum
-ontario.museum
-openair.museum
-oregon.museum
-oregontrail.museum
-otago.museum
-oxford.museum
-pacific.museum
-paderborn.museum
-palace.museum
-paleo.museum
-palmsprings.museum
-panama.museum
-paris.museum
-pasadena.museum
-pharmacy.museum
-philadelphia.museum
-philadelphiaarea.museum
-philately.museum
-phoenix.museum
-photography.museum
-pilots.museum
-pittsburgh.museum
-planetarium.museum
-plantation.museum
-plants.museum
-plaza.museum
-portal.museum
-portland.museum
-portlligat.museum
-posts-and-telecommunications.museum
-preservation.museum
-presidio.museum
-press.museum
-project.museum
-public.museum
-pubol.museum
-quebec.museum
-railroad.museum
-railway.museum
-research.museum
-resistance.museum
-riodejaneiro.museum
-rochester.museum
-rockart.museum
-roma.museum
-russia.museum
-saintlouis.museum
-salem.museum
-salvadordali.museum
-salzburg.museum
-sandiego.museum
-sanfrancisco.museum
-santabarbara.museum
-santacruz.museum
-santafe.museum
-saskatchewan.museum
-satx.museum
-savannahga.museum
-schlesisches.museum
-schoenbrunn.museum
-schokoladen.museum
-school.museum
-schweiz.museum
-science.museum
-scienceandhistory.museum
-scienceandindustry.museum
-sciencecenter.museum
-sciencecenters.museum
-science-fiction.museum
-sciencehistory.museum
-sciences.museum
-sciencesnaturelles.museum
-scotland.museum
-seaport.museum
-settlement.museum
-settlers.museum
-shell.museum
-sherbrooke.museum
-sibenik.museum
-silk.museum
-ski.museum
-skole.museum
-society.museum
-sologne.museum
-soundandvision.museum
-southcarolina.museum
-southwest.museum
-space.museum
-spy.museum
-square.museum
-stadt.museum
-stalbans.museum
-starnberg.museum
-state.museum
-stateofdelaware.museum
-station.museum
-steam.museum
-steiermark.museum
-stjohn.museum
-stockholm.museum
-stpetersburg.museum
-stuttgart.museum
-suisse.museum
-surgeonshall.museum
-surrey.museum
-svizzera.museum
-sweden.museum
-sydney.museum
-tank.museum
-tcm.museum
-technology.museum
-telekommunikation.museum
-television.museum
-texas.museum
-textile.museum
-theater.museum
-time.museum
-timekeeping.museum
-topology.museum
-torino.museum
-touch.museum
-town.museum
-transport.museum
-tree.museum
-trolley.museum
-trust.museum
-trustee.museum
-uhren.museum
-ulm.museum
-undersea.museum
-university.museum
-usa.museum
-usantiques.museum
-usarts.museum
-uscountryestate.museum
-usculture.museum
-usdecorativearts.museum
-usgarden.museum
-ushistory.museum
-ushuaia.museum
-uslivinghistory.museum
-utah.museum
-uvic.museum
-valley.museum
-vantaa.museum
-versailles.museum
-viking.museum
-village.museum
-virginia.museum
-virtual.museum
-virtuel.museum
-vlaanderen.museum
-volkenkunde.museum
-wales.museum
-wallonie.museum
-war.museum
-washingtondc.museum
-watchandclock.museum
-watch-and-clock.museum
-western.museum
-westfalen.museum
-whaling.museum
-wildlife.museum
-williamsburg.museum
-windmill.museum
-workshop.museum
-york.museum
-yorkshire.museum
-yosemite.museum
-youth.museum
-zoological.museum
-zoology.museum
-ירושלים.museum
-иком.museum
// mv : https://en.wikipedia.org/wiki/.mv
// "mv" included because, contra Wikipedia, google.mv exists.
@@ -4586,15 +4102,17 @@ gob.mx
edu.mx
net.mx
-// my : http://www.mynic.net.my/
+// my : http://www.mynic.my/
+// Available strings: https://mynic.my/resources/domains/buying-a-domain/
my
+biz.my
com.my
-net.my
-org.my
-gov.my
edu.my
+gov.my
mil.my
name.my
+net.my
+org.my
// mz : http://www.uem.mz/
// Submitted by registry <antonio@uem.mz>
@@ -4691,13 +4209,13 @@ web.ni
// ccTLD for the Netherlands
nl
-// no : http://www.norid.no/regelverk/index.en.html
-// The Norwegian registry has declined to notify us of updates. The web pages
-// referenced below are the official source of the data. There is also an
-// announce mailing list:
-// https://postlister.uninett.no/sympa/info/norid-diskusjon
+// no : https://www.norid.no/en/om-domenenavn/regelverk-for-no/
+// Norid geographical second level domains : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-b/
+// Norid category second level domains : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-c/
+// Norid category second-level domains managed by parties other than Norid : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-d/
+// RSS feed: https://teknisk.norid.no/en/feed/
no
-// Norid generic domains : http://www.norid.no/regelverk/vedlegg-c.en.html
+// Norid category second level domains : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-c/
fhs.no
vgs.no
fylkesbibl.no
@@ -4705,13 +4223,13 @@ folkebibl.no
museum.no
idrett.no
priv.no
-// Non-Norid generic domains : http://www.norid.no/regelverk/vedlegg-d.en.html
+// Norid category second-level domains managed by parties other than Norid : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-d/
mil.no
stat.no
dep.no
kommune.no
herad.no
-// no geographical names : http://www.norid.no/regelverk/vedlegg-b.en.html
+// Norid geographical second level domains : https://www.norid.no/en/om-domenenavn/regelverk-for-no/vedlegg-b/
// counties
aa.no
ah.no
@@ -5617,52 +5135,60 @@ turystyka.pl
// Government domains
gov.pl
ap.gov.pl
+griw.gov.pl
ic.gov.pl
is.gov.pl
-us.gov.pl
kmpsp.gov.pl
+konsulat.gov.pl
kppsp.gov.pl
-kwpsp.gov.pl
-psp.gov.pl
-wskr.gov.pl
kwp.gov.pl
+kwpsp.gov.pl
+mup.gov.pl
mw.gov.pl
-ug.gov.pl
-um.gov.pl
-umig.gov.pl
-ugim.gov.pl
-upow.gov.pl
-uw.gov.pl
-starostwo.gov.pl
+oia.gov.pl
+oirm.gov.pl
+oke.gov.pl
+oow.gov.pl
+oschr.gov.pl
+oum.gov.pl
pa.gov.pl
+pinb.gov.pl
+piw.gov.pl
po.gov.pl
+pr.gov.pl
+psp.gov.pl
psse.gov.pl
pup.gov.pl
rzgw.gov.pl
sa.gov.pl
+sdn.gov.pl
+sko.gov.pl
so.gov.pl
sr.gov.pl
-wsa.gov.pl
-sko.gov.pl
+starostwo.gov.pl
+ug.gov.pl
+ugim.gov.pl
+um.gov.pl
+umig.gov.pl
+upow.gov.pl
+uppo.gov.pl
+us.gov.pl
+uw.gov.pl
uzs.gov.pl
+wif.gov.pl
wiih.gov.pl
winb.gov.pl
-pinb.gov.pl
wios.gov.pl
witd.gov.pl
-wzmiuw.gov.pl
-piw.gov.pl
wiw.gov.pl
-griw.gov.pl
-wif.gov.pl
-oum.gov.pl
-sdn.gov.pl
-zp.gov.pl
-uppo.gov.pl
-mup.gov.pl
+wkz.gov.pl
+wsa.gov.pl
+wskr.gov.pl
+wsse.gov.pl
wuoz.gov.pl
-konsulat.gov.pl
-oirm.gov.pl
+wzmiuw.gov.pl
+zp.gov.pl
+zpisdn.gov.pl
// pl regional domains (http://www.dns.pl/english/index.html)
augustow.pl
babia-gora.pl
@@ -5784,7 +5310,7 @@ zarow.pl
zgora.pl
zgorzelec.pl
-// pm : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+// pm : https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
pm
// pn : http://www.government.pn/PnRegistry/policies.htm
@@ -5840,7 +5366,7 @@ com.ps
org.ps
net.ps
-// pt : http://online.dns.pt/dns/start_dns
+// pt : https://www.dns.pt/en/domain/pt-terms-and-conditions-registration-rules/
pt
net.pt
gov.pt
@@ -5882,7 +5408,7 @@ net.qa
org.qa
sch.qa
-// re : http://www.afnic.re/obtenir/chartes/nommage-re/annexe-descriptifs
+// re : https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
re
asso.re
com.re
@@ -6017,7 +5543,7 @@ gov.sg
edu.sg
per.sg
-// sh : http://www.nic.sh/registrar.html
+// sh : http://nic.sh/rules.htm
sh
com.sh
net.sh
@@ -6077,8 +5603,10 @@ biz.ss
com.ss
edu.ss
gov.ss
+me.ss
net.ss
org.ss
+sch.ss
// st : http://www.nic.st/html/policyrules/
st
@@ -6087,7 +5615,6 @@ com.st
consulado.st
edu.st
embaixada.st
-gov.st
mil.st
net.st
org.st
@@ -6138,7 +5665,7 @@ td
// http://www.telnic.org/
tel
-// tf : https://en.wikipedia.org/wiki/.tf
+// tf : https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
tf
// tg : https://en.wikipedia.org/wiki/.tg
@@ -6192,29 +5719,22 @@ gov.tm
mil.tm
edu.tm
-// tn : https://en.wikipedia.org/wiki/.tn
-// http://whois.ati.tn/
+// tn : http://www.registre.tn/fr/
+// https://whois.ati.tn/
tn
com.tn
ens.tn
fin.tn
gov.tn
ind.tn
+info.tn
intl.tn
+mincom.tn
nat.tn
net.tn
org.tn
-info.tn
perso.tn
tourism.tn
-edunet.tn
-rnrt.tn
-rns.tn
-rnu.tn
-mincom.tn
-agrinet.tn
-defense.tn
-turen.tn
// to : https://en.wikipedia.org/wiki/.to
// Submitted by registry <egullich@colo.to>
@@ -6353,6 +5873,7 @@ kiev.ua
kirovograd.ua
km.ua
kr.ua
+kropyvnytskyi.ua
krym.ua
ks.ua
kv.ua
@@ -6360,6 +5881,7 @@ kyiv.ua
lg.ua
lt.ua
lugansk.ua
+luhansk.ua
lutsk.ua
lv.ua
lviv.ua
@@ -6383,11 +5905,13 @@ te.ua
ternopil.ua
uz.ua
uzhgorod.ua
+uzhhorod.ua
vinnica.ua
vinnytsia.ua
vn.ua
volyn.ua
yalta.ua
+zakarpattia.ua
zaporizhzhe.ua
zaporizhzhia.ua
zhitomir.ua
@@ -6499,7 +6023,6 @@ k12.ca.us
k12.co.us
k12.ct.us
k12.dc.us
-k12.de.us
k12.fl.us
k12.ga.us
k12.gu.us
@@ -6704,9 +6227,10 @@ mil.vc
edu.vc
// ve : https://registro.nic.ve/
-// Submitted by registry
+// Submitted by registry nic@nic.ve and nicve@conatel.gob.ve
ve
arts.ve
+bib.ve
co.ve
com.ve
e12.ve
@@ -6718,7 +6242,9 @@ info.ve
int.ve
mil.ve
net.ve
+nom.ve
org.ve
+rar.ve
rec.ve
store.ve
tec.ve
@@ -6738,20 +6264,89 @@ k12.vi
net.vi
org.vi
-// vn : https://www.dot.vn/vnnic/vnnic/domainregistration.jsp
+// vn : https://www.vnnic.vn/en/domain/cctld-vn
+// https://vnnic.vn/sites/default/files/tailieu/vn.cctld.domains.txt
vn
+ac.vn
+ai.vn
+biz.vn
com.vn
-net.vn
-org.vn
edu.vn
gov.vn
-int.vn
-ac.vn
-biz.vn
+health.vn
+id.vn
info.vn
+int.vn
+io.vn
name.vn
+net.vn
+org.vn
pro.vn
-health.vn
+
+// vn geographical names
+angiang.vn
+bacgiang.vn
+backan.vn
+baclieu.vn
+bacninh.vn
+baria-vungtau.vn
+bentre.vn
+binhdinh.vn
+binhduong.vn
+binhphuoc.vn
+binhthuan.vn
+camau.vn
+cantho.vn
+caobang.vn
+daklak.vn
+daknong.vn
+danang.vn
+dienbien.vn
+dongnai.vn
+dongthap.vn
+gialai.vn
+hagiang.vn
+haiduong.vn
+haiphong.vn
+hanam.vn
+hanoi.vn
+hatinh.vn
+haugiang.vn
+hoabinh.vn
+hungyen.vn
+khanhhoa.vn
+kiengiang.vn
+kontum.vn
+laichau.vn
+lamdong.vn
+langson.vn
+laocai.vn
+longan.vn
+namdinh.vn
+nghean.vn
+ninhbinh.vn
+ninhthuan.vn
+phutho.vn
+phuyen.vn
+quangbinh.vn
+quangnam.vn
+quangngai.vn
+quangninh.vn
+quangtri.vn
+soctrang.vn
+sonla.vn
+tayninh.vn
+thaibinh.vn
+thainguyen.vn
+thanhhoa.vn
+thanhphohochiminh.vn
+thuathienhue.vn
+tiengiang.vn
+travinh.vn
+tuyenquang.vn
+vinhlong.vn
+vinhphuc.vn
+yenbai.vn
// vu : https://en.wikipedia.org/wiki/.vu
// http://www.vunic.vu/
@@ -6761,7 +6356,7 @@ edu.vu
net.vu
org.vu
-// wf : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+// wf : https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
wf
// ws : https://en.wikipedia.org/wiki/.ws
@@ -6773,7 +6368,7 @@ org.ws
gov.ws
edu.ws
-// yt : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+// yt : https://www.afnic.fr/wp-media/uploads/2022/12/afnic-naming-policy-2023-01-01.pdf
yt
// IDN ccTLDs
@@ -6797,6 +6392,9 @@ yt
// xn--90ae ("bg", Bulgarian) : BG
бг
+// xn--mgbcpq6gpa1a ("albahrain", Arabic) : BH
+البحرين
+
// xn--90ais ("bel", Belarusian/Russian Cyrillic) : BY
// Operated by .by registry
бел
@@ -6929,6 +6527,9 @@ yt
// xn--80ao21a ("Kaz", Kazakh) : KZ
қаз
+// xn--q7ce6a ("Lao", Lao) : LA
+ລາວ
+
// xn--fzc2c9e2c ("Lanka", Sinhalese-Sinhala) : LK
// https://nic.lk
ලංකා
@@ -7054,7 +6655,13 @@ yt
xxx
// ye : http://www.y.net.ye/services/domain_name.htm
-*.ye
+ye
+com.ye
+edu.ye
+gov.ye
+net.ye
+mil.ye
+org.ye
// za : https://www.zadna.org.za/content/page/domain-information/
ac.za
@@ -7103,3549 +6710,4498 @@ org.zw
// newGTLDs
-// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2020-07-18T17:05:44Z
+// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2024-01-06T15:12:04Z
// This list is auto-generated, don't edit it manually.
-// aaa : 2015-02-26 American Automobile Association, Inc.
+// aaa : American Automobile Association, Inc.
+// https://www.iana.org/domains/root/db/aaa.html
aaa
-// aarp : 2015-05-21 AARP
+// aarp : AARP
+// https://www.iana.org/domains/root/db/aarp.html
aarp
-// abarth : 2015-07-30 Fiat Chrysler Automobiles N.V.
-abarth
-
-// abb : 2014-10-24 ABB Ltd
+// abb : ABB Ltd
+// https://www.iana.org/domains/root/db/abb.html
abb
-// abbott : 2014-07-24 Abbott Laboratories, Inc.
+// abbott : Abbott Laboratories, Inc.
+// https://www.iana.org/domains/root/db/abbott.html
abbott
-// abbvie : 2015-07-30 AbbVie Inc.
+// abbvie : AbbVie Inc.
+// https://www.iana.org/domains/root/db/abbvie.html
abbvie
-// abc : 2015-07-30 Disney Enterprises, Inc.
+// abc : Disney Enterprises, Inc.
+// https://www.iana.org/domains/root/db/abc.html
abc
-// able : 2015-06-25 Able Inc.
+// able : Able Inc.
+// https://www.iana.org/domains/root/db/able.html
able
-// abogado : 2014-04-24 Minds + Machines Group Limited
+// abogado : Registry Services, LLC
+// https://www.iana.org/domains/root/db/abogado.html
abogado
-// abudhabi : 2015-07-30 Abu Dhabi Systems and Information Centre
+// abudhabi : Abu Dhabi Systems and Information Centre
+// https://www.iana.org/domains/root/db/abudhabi.html
abudhabi
-// academy : 2013-11-07 Binky Moon, LLC
+// academy : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/academy.html
academy
-// accenture : 2014-08-15 Accenture plc
+// accenture : Accenture plc
+// https://www.iana.org/domains/root/db/accenture.html
accenture
-// accountant : 2014-11-20 dot Accountant Limited
+// accountant : dot Accountant Limited
+// https://www.iana.org/domains/root/db/accountant.html
accountant
-// accountants : 2014-03-20 Binky Moon, LLC
+// accountants : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/accountants.html
accountants
-// aco : 2015-01-08 ACO Severin Ahlmann GmbH & Co. KG
+// aco : ACO Severin Ahlmann GmbH & Co. KG
+// https://www.iana.org/domains/root/db/aco.html
aco
-// actor : 2013-12-12 Dog Beach, LLC
+// actor : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/actor.html
actor
-// adac : 2015-07-16 Allgemeiner Deutscher Automobil-Club e.V. (ADAC)
-adac
-
-// ads : 2014-12-04 Charleston Road Registry Inc.
+// ads : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/ads.html
ads
-// adult : 2014-10-16 ICM Registry AD LLC
+// adult : ICM Registry AD LLC
+// https://www.iana.org/domains/root/db/adult.html
adult
-// aeg : 2015-03-19 Aktiebolaget Electrolux
+// aeg : Aktiebolaget Electrolux
+// https://www.iana.org/domains/root/db/aeg.html
aeg
-// aetna : 2015-05-21 Aetna Life Insurance Company
+// aetna : Aetna Life Insurance Company
+// https://www.iana.org/domains/root/db/aetna.html
aetna
-// afamilycompany : 2015-07-23 Johnson Shareholdings, Inc.
-afamilycompany
-
-// afl : 2014-10-02 Australian Football League
+// afl : Australian Football League
+// https://www.iana.org/domains/root/db/afl.html
afl
-// africa : 2014-03-24 ZA Central Registry NPC trading as Registry.Africa
+// africa : ZA Central Registry NPC trading as Registry.Africa
+// https://www.iana.org/domains/root/db/africa.html
africa
-// agakhan : 2015-04-23 Fondation Aga Khan (Aga Khan Foundation)
+// agakhan : Fondation Aga Khan (Aga Khan Foundation)
+// https://www.iana.org/domains/root/db/agakhan.html
agakhan
-// agency : 2013-11-14 Binky Moon, LLC
+// agency : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/agency.html
agency
-// aig : 2014-12-18 American International Group, Inc.
+// aig : American International Group, Inc.
+// https://www.iana.org/domains/root/db/aig.html
aig
-// airbus : 2015-07-30 Airbus S.A.S.
+// airbus : Airbus S.A.S.
+// https://www.iana.org/domains/root/db/airbus.html
airbus
-// airforce : 2014-03-06 Dog Beach, LLC
+// airforce : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/airforce.html
airforce
-// airtel : 2014-10-24 Bharti Airtel Limited
+// airtel : Bharti Airtel Limited
+// https://www.iana.org/domains/root/db/airtel.html
airtel
-// akdn : 2015-04-23 Fondation Aga Khan (Aga Khan Foundation)
+// akdn : Fondation Aga Khan (Aga Khan Foundation)
+// https://www.iana.org/domains/root/db/akdn.html
akdn
-// alfaromeo : 2015-07-31 Fiat Chrysler Automobiles N.V.
-alfaromeo
-
-// alibaba : 2015-01-15 Alibaba Group Holding Limited
+// alibaba : Alibaba Group Holding Limited
+// https://www.iana.org/domains/root/db/alibaba.html
alibaba
-// alipay : 2015-01-15 Alibaba Group Holding Limited
+// alipay : Alibaba Group Holding Limited
+// https://www.iana.org/domains/root/db/alipay.html
alipay
-// allfinanz : 2014-07-03 Allfinanz Deutsche Vermögensberatung Aktiengesellschaft
+// allfinanz : Allfinanz Deutsche Vermögensberatung Aktiengesellschaft
+// https://www.iana.org/domains/root/db/allfinanz.html
allfinanz
-// allstate : 2015-07-31 Allstate Fire and Casualty Insurance Company
+// allstate : Allstate Fire and Casualty Insurance Company
+// https://www.iana.org/domains/root/db/allstate.html
allstate
-// ally : 2015-06-18 Ally Financial Inc.
+// ally : Ally Financial Inc.
+// https://www.iana.org/domains/root/db/ally.html
ally
-// alsace : 2014-07-02 Region Grand Est
+// alsace : Region Grand Est
+// https://www.iana.org/domains/root/db/alsace.html
alsace
-// alstom : 2015-07-30 ALSTOM
+// alstom : ALSTOM
+// https://www.iana.org/domains/root/db/alstom.html
alstom
-// amazon : 2019-12-19 Amazon Registry Services, Inc.
+// amazon : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/amazon.html
amazon
-// americanexpress : 2015-07-31 American Express Travel Related Services Company, Inc.
+// americanexpress : American Express Travel Related Services Company, Inc.
+// https://www.iana.org/domains/root/db/americanexpress.html
americanexpress
-// americanfamily : 2015-07-23 AmFam, Inc.
+// americanfamily : AmFam, Inc.
+// https://www.iana.org/domains/root/db/americanfamily.html
americanfamily
-// amex : 2015-07-31 American Express Travel Related Services Company, Inc.
+// amex : American Express Travel Related Services Company, Inc.
+// https://www.iana.org/domains/root/db/amex.html
amex
-// amfam : 2015-07-23 AmFam, Inc.
+// amfam : AmFam, Inc.
+// https://www.iana.org/domains/root/db/amfam.html
amfam
-// amica : 2015-05-28 Amica Mutual Insurance Company
+// amica : Amica Mutual Insurance Company
+// https://www.iana.org/domains/root/db/amica.html
amica
-// amsterdam : 2014-07-24 Gemeente Amsterdam
+// amsterdam : Gemeente Amsterdam
+// https://www.iana.org/domains/root/db/amsterdam.html
amsterdam
-// analytics : 2014-12-18 Campus IP LLC
+// analytics : Campus IP LLC
+// https://www.iana.org/domains/root/db/analytics.html
analytics
-// android : 2014-08-07 Charleston Road Registry Inc.
+// android : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/android.html
android
-// anquan : 2015-01-08 Beijing Qihu Keji Co., Ltd.
+// anquan : Beijing Qihu Keji Co., Ltd.
+// https://www.iana.org/domains/root/db/anquan.html
anquan
-// anz : 2015-07-31 Australia and New Zealand Banking Group Limited
+// anz : Australia and New Zealand Banking Group Limited
+// https://www.iana.org/domains/root/db/anz.html
anz
-// aol : 2015-09-17 Oath Inc.
+// aol : Oath Inc.
+// https://www.iana.org/domains/root/db/aol.html
aol
-// apartments : 2014-12-11 Binky Moon, LLC
+// apartments : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/apartments.html
apartments
-// app : 2015-05-14 Charleston Road Registry Inc.
+// app : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/app.html
app
-// apple : 2015-05-14 Apple Inc.
+// apple : Apple Inc.
+// https://www.iana.org/domains/root/db/apple.html
apple
-// aquarelle : 2014-07-24 Aquarelle.com
+// aquarelle : Aquarelle.com
+// https://www.iana.org/domains/root/db/aquarelle.html
aquarelle
-// arab : 2015-11-12 League of Arab States
+// arab : League of Arab States
+// https://www.iana.org/domains/root/db/arab.html
arab
-// aramco : 2014-11-20 Aramco Services Company
+// aramco : Aramco Services Company
+// https://www.iana.org/domains/root/db/aramco.html
aramco
-// archi : 2014-02-06 Afilias Limited
+// archi : Identity Digital Limited
+// https://www.iana.org/domains/root/db/archi.html
archi
-// army : 2014-03-06 Dog Beach, LLC
+// army : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/army.html
army
-// art : 2016-03-24 UK Creative Ideas Limited
+// art : UK Creative Ideas Limited
+// https://www.iana.org/domains/root/db/art.html
art
-// arte : 2014-12-11 Association Relative à la Télévision Européenne G.E.I.E.
+// arte : Association Relative à la Télévision Européenne G.E.I.E.
+// https://www.iana.org/domains/root/db/arte.html
arte
-// asda : 2015-07-31 Wal-Mart Stores, Inc.
+// asda : Wal-Mart Stores, Inc.
+// https://www.iana.org/domains/root/db/asda.html
asda
-// associates : 2014-03-06 Binky Moon, LLC
+// associates : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/associates.html
associates
-// athleta : 2015-07-30 The Gap, Inc.
+// athleta : The Gap, Inc.
+// https://www.iana.org/domains/root/db/athleta.html
athleta
-// attorney : 2014-03-20 Dog Beach, LLC
+// attorney : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/attorney.html
attorney
-// auction : 2014-03-20 Dog Beach, LLC
+// auction : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/auction.html
auction
-// audi : 2015-05-21 AUDI Aktiengesellschaft
+// audi : AUDI Aktiengesellschaft
+// https://www.iana.org/domains/root/db/audi.html
audi
-// audible : 2015-06-25 Amazon Registry Services, Inc.
+// audible : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/audible.html
audible
-// audio : 2014-03-20 UNR Corp.
+// audio : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/audio.html
audio
-// auspost : 2015-08-13 Australian Postal Corporation
+// auspost : Australian Postal Corporation
+// https://www.iana.org/domains/root/db/auspost.html
auspost
-// author : 2014-12-18 Amazon Registry Services, Inc.
+// author : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/author.html
author
-// auto : 2014-11-13 Cars Registry Limited
+// auto : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/auto.html
auto
-// autos : 2014-01-09 DERAutos, LLC
+// autos : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/autos.html
autos
-// avianca : 2015-01-08 Avianca Holdings S.A.
+// avianca : Avianca Inc.
+// https://www.iana.org/domains/root/db/avianca.html
avianca
-// aws : 2015-06-25 Amazon Registry Services, Inc.
+// aws : AWS Registry LLC
+// https://www.iana.org/domains/root/db/aws.html
aws
-// axa : 2013-12-19 AXA SA
+// axa : AXA Group Operations SAS
+// https://www.iana.org/domains/root/db/axa.html
axa
-// azure : 2014-12-18 Microsoft Corporation
+// azure : Microsoft Corporation
+// https://www.iana.org/domains/root/db/azure.html
azure
-// baby : 2015-04-09 XYZ.COM LLC
+// baby : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/baby.html
baby
-// baidu : 2015-01-08 Baidu, Inc.
+// baidu : Baidu, Inc.
+// https://www.iana.org/domains/root/db/baidu.html
baidu
-// banamex : 2015-07-30 Citigroup Inc.
+// banamex : Citigroup Inc.
+// https://www.iana.org/domains/root/db/banamex.html
banamex
-// bananarepublic : 2015-07-31 The Gap, Inc.
+// bananarepublic : The Gap, Inc.
+// https://www.iana.org/domains/root/db/bananarepublic.html
bananarepublic
-// band : 2014-06-12 Dog Beach, LLC
+// band : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/band.html
band
-// bank : 2014-09-25 fTLD Registry Services LLC
+// bank : fTLD Registry Services LLC
+// https://www.iana.org/domains/root/db/bank.html
bank
-// bar : 2013-12-12 Punto 2012 Sociedad Anonima Promotora de Inversion de Capital Variable
+// bar : Punto 2012 Sociedad Anonima Promotora de Inversion de Capital Variable
+// https://www.iana.org/domains/root/db/bar.html
bar
-// barcelona : 2014-07-24 Municipi de Barcelona
+// barcelona : Municipi de Barcelona
+// https://www.iana.org/domains/root/db/barcelona.html
barcelona
-// barclaycard : 2014-11-20 Barclays Bank PLC
+// barclaycard : Barclays Bank PLC
+// https://www.iana.org/domains/root/db/barclaycard.html
barclaycard
-// barclays : 2014-11-20 Barclays Bank PLC
+// barclays : Barclays Bank PLC
+// https://www.iana.org/domains/root/db/barclays.html
barclays
-// barefoot : 2015-06-11 Gallo Vineyards, Inc.
+// barefoot : Gallo Vineyards, Inc.
+// https://www.iana.org/domains/root/db/barefoot.html
barefoot
-// bargains : 2013-11-14 Binky Moon, LLC
+// bargains : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/bargains.html
bargains
-// baseball : 2015-10-29 MLB Advanced Media DH, LLC
+// baseball : MLB Advanced Media DH, LLC
+// https://www.iana.org/domains/root/db/baseball.html
baseball
-// basketball : 2015-08-20 Fédération Internationale de Basketball (FIBA)
+// basketball : Fédération Internationale de Basketball (FIBA)
+// https://www.iana.org/domains/root/db/basketball.html
basketball
-// bauhaus : 2014-04-17 Werkhaus GmbH
+// bauhaus : Werkhaus GmbH
+// https://www.iana.org/domains/root/db/bauhaus.html
bauhaus
-// bayern : 2014-01-23 Bayern Connect GmbH
+// bayern : Bayern Connect GmbH
+// https://www.iana.org/domains/root/db/bayern.html
bayern
-// bbc : 2014-12-18 British Broadcasting Corporation
+// bbc : British Broadcasting Corporation
+// https://www.iana.org/domains/root/db/bbc.html
bbc
-// bbt : 2015-07-23 BB&T Corporation
+// bbt : BB&T Corporation
+// https://www.iana.org/domains/root/db/bbt.html
bbt
-// bbva : 2014-10-02 BANCO BILBAO VIZCAYA ARGENTARIA, S.A.
+// bbva : BANCO BILBAO VIZCAYA ARGENTARIA, S.A.
+// https://www.iana.org/domains/root/db/bbva.html
bbva
-// bcg : 2015-04-02 The Boston Consulting Group, Inc.
+// bcg : The Boston Consulting Group, Inc.
+// https://www.iana.org/domains/root/db/bcg.html
bcg
-// bcn : 2014-07-24 Municipi de Barcelona
+// bcn : Municipi de Barcelona
+// https://www.iana.org/domains/root/db/bcn.html
bcn
-// beats : 2015-05-14 Beats Electronics, LLC
+// beats : Beats Electronics, LLC
+// https://www.iana.org/domains/root/db/beats.html
beats
-// beauty : 2015-12-03 XYZ.COM LLC
+// beauty : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/beauty.html
beauty
-// beer : 2014-01-09 Minds + Machines Group Limited
+// beer : Registry Services, LLC
+// https://www.iana.org/domains/root/db/beer.html
beer
-// bentley : 2014-12-18 Bentley Motors Limited
+// bentley : Bentley Motors Limited
+// https://www.iana.org/domains/root/db/bentley.html
bentley
-// berlin : 2013-10-31 dotBERLIN GmbH & Co. KG
+// berlin : dotBERLIN GmbH & Co. KG
+// https://www.iana.org/domains/root/db/berlin.html
berlin
-// best : 2013-12-19 BestTLD Pty Ltd
+// best : BestTLD Pty Ltd
+// https://www.iana.org/domains/root/db/best.html
best
-// bestbuy : 2015-07-31 BBY Solutions, Inc.
+// bestbuy : BBY Solutions, Inc.
+// https://www.iana.org/domains/root/db/bestbuy.html
bestbuy
-// bet : 2015-05-07 Afilias Limited
+// bet : Identity Digital Limited
+// https://www.iana.org/domains/root/db/bet.html
bet
-// bharti : 2014-01-09 Bharti Enterprises (Holding) Private Limited
+// bharti : Bharti Enterprises (Holding) Private Limited
+// https://www.iana.org/domains/root/db/bharti.html
bharti
-// bible : 2014-06-19 American Bible Society
+// bible : American Bible Society
+// https://www.iana.org/domains/root/db/bible.html
bible
-// bid : 2013-12-19 dot Bid Limited
+// bid : dot Bid Limited
+// https://www.iana.org/domains/root/db/bid.html
bid
-// bike : 2013-08-27 Binky Moon, LLC
+// bike : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/bike.html
bike
-// bing : 2014-12-18 Microsoft Corporation
+// bing : Microsoft Corporation
+// https://www.iana.org/domains/root/db/bing.html
bing
-// bingo : 2014-12-04 Binky Moon, LLC
+// bingo : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/bingo.html
bingo
-// bio : 2014-03-06 Afilias Limited
+// bio : Identity Digital Limited
+// https://www.iana.org/domains/root/db/bio.html
bio
-// black : 2014-01-16 Afilias Limited
+// black : Identity Digital Limited
+// https://www.iana.org/domains/root/db/black.html
black
-// blackfriday : 2014-01-16 UNR Corp.
+// blackfriday : Registry Services, LLC
+// https://www.iana.org/domains/root/db/blackfriday.html
blackfriday
-// blockbuster : 2015-07-30 Dish DBS Corporation
+// blockbuster : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/blockbuster.html
blockbuster
-// blog : 2015-05-14 Knock Knock WHOIS There, LLC
+// blog : Knock Knock WHOIS There, LLC
+// https://www.iana.org/domains/root/db/blog.html
blog
-// bloomberg : 2014-07-17 Bloomberg IP Holdings LLC
+// bloomberg : Bloomberg IP Holdings LLC
+// https://www.iana.org/domains/root/db/bloomberg.html
bloomberg
-// blue : 2013-11-07 Afilias Limited
+// blue : Identity Digital Limited
+// https://www.iana.org/domains/root/db/blue.html
blue
-// bms : 2014-10-30 Bristol-Myers Squibb Company
+// bms : Bristol-Myers Squibb Company
+// https://www.iana.org/domains/root/db/bms.html
bms
-// bmw : 2014-01-09 Bayerische Motoren Werke Aktiengesellschaft
+// bmw : Bayerische Motoren Werke Aktiengesellschaft
+// https://www.iana.org/domains/root/db/bmw.html
bmw
-// bnpparibas : 2014-05-29 BNP Paribas
+// bnpparibas : BNP Paribas
+// https://www.iana.org/domains/root/db/bnpparibas.html
bnpparibas
-// boats : 2014-12-04 DERBoats, LLC
+// boats : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/boats.html
boats
-// boehringer : 2015-07-09 Boehringer Ingelheim International GmbH
+// boehringer : Boehringer Ingelheim International GmbH
+// https://www.iana.org/domains/root/db/boehringer.html
boehringer
-// bofa : 2015-07-31 Bank of America Corporation
+// bofa : Bank of America Corporation
+// https://www.iana.org/domains/root/db/bofa.html
bofa
-// bom : 2014-10-16 Núcleo de Informação e Coordenação do Ponto BR - NIC.br
+// bom : Núcleo de Informação e Coordenação do Ponto BR - NIC.br
+// https://www.iana.org/domains/root/db/bom.html
bom
-// bond : 2014-06-05 ShortDot SA
+// bond : ShortDot SA
+// https://www.iana.org/domains/root/db/bond.html
bond
-// boo : 2014-01-30 Charleston Road Registry Inc.
+// boo : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/boo.html
boo
-// book : 2015-08-27 Amazon Registry Services, Inc.
+// book : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/book.html
book
-// booking : 2015-07-16 Booking.com B.V.
+// booking : Booking.com B.V.
+// https://www.iana.org/domains/root/db/booking.html
booking
-// bosch : 2015-06-18 Robert Bosch GMBH
+// bosch : Robert Bosch GMBH
+// https://www.iana.org/domains/root/db/bosch.html
bosch
-// bostik : 2015-05-28 Bostik SA
+// bostik : Bostik SA
+// https://www.iana.org/domains/root/db/bostik.html
bostik
-// boston : 2015-12-10 Boston TLD Management, LLC
+// boston : Registry Services, LLC
+// https://www.iana.org/domains/root/db/boston.html
boston
-// bot : 2014-12-18 Amazon Registry Services, Inc.
+// bot : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/bot.html
bot
-// boutique : 2013-11-14 Binky Moon, LLC
+// boutique : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/boutique.html
boutique
-// box : 2015-11-12 .BOX INC.
+// box : Intercap Registry Inc.
+// https://www.iana.org/domains/root/db/box.html
box
-// bradesco : 2014-12-18 Banco Bradesco S.A.
+// bradesco : Banco Bradesco S.A.
+// https://www.iana.org/domains/root/db/bradesco.html
bradesco
-// bridgestone : 2014-12-18 Bridgestone Corporation
+// bridgestone : Bridgestone Corporation
+// https://www.iana.org/domains/root/db/bridgestone.html
bridgestone
-// broadway : 2014-12-22 Celebrate Broadway, Inc.
+// broadway : Celebrate Broadway, Inc.
+// https://www.iana.org/domains/root/db/broadway.html
broadway
-// broker : 2014-12-11 Dotbroker Registry Limited
+// broker : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/broker.html
broker
-// brother : 2015-01-29 Brother Industries, Ltd.
+// brother : Brother Industries, Ltd.
+// https://www.iana.org/domains/root/db/brother.html
brother
-// brussels : 2014-02-06 DNS.be vzw
+// brussels : DNS.be vzw
+// https://www.iana.org/domains/root/db/brussels.html
brussels
-// budapest : 2013-11-21 Minds + Machines Group Limited
-budapest
-
-// bugatti : 2015-07-23 Bugatti International SA
-bugatti
-
-// build : 2013-11-07 Plan Bee LLC
+// build : Plan Bee LLC
+// https://www.iana.org/domains/root/db/build.html
build
-// builders : 2013-11-07 Binky Moon, LLC
+// builders : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/builders.html
builders
-// business : 2013-11-07 Binky Moon, LLC
+// business : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/business.html
business
-// buy : 2014-12-18 Amazon Registry Services, Inc.
+// buy : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/buy.html
buy
-// buzz : 2013-10-02 DOTSTRATEGY CO.
+// buzz : DOTSTRATEGY CO.
+// https://www.iana.org/domains/root/db/buzz.html
buzz
-// bzh : 2014-02-27 Association www.bzh
+// bzh : Association www.bzh
+// https://www.iana.org/domains/root/db/bzh.html
bzh
-// cab : 2013-10-24 Binky Moon, LLC
+// cab : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cab.html
cab
-// cafe : 2015-02-11 Binky Moon, LLC
+// cafe : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cafe.html
cafe
-// cal : 2014-07-24 Charleston Road Registry Inc.
+// cal : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/cal.html
cal
-// call : 2014-12-18 Amazon Registry Services, Inc.
+// call : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/call.html
call
-// calvinklein : 2015-07-30 PVH gTLD Holdings LLC
+// calvinklein : PVH gTLD Holdings LLC
+// https://www.iana.org/domains/root/db/calvinklein.html
calvinklein
-// cam : 2016-04-21 AC Webconnecting Holding B.V.
+// cam : Cam Connecting SARL
+// https://www.iana.org/domains/root/db/cam.html
cam
-// camera : 2013-08-27 Binky Moon, LLC
+// camera : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/camera.html
camera
-// camp : 2013-11-07 Binky Moon, LLC
+// camp : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/camp.html
camp
-// cancerresearch : 2014-05-15 Australian Cancer Research Foundation
-cancerresearch
-
-// canon : 2014-09-12 Canon Inc.
+// canon : Canon Inc.
+// https://www.iana.org/domains/root/db/canon.html
canon
-// capetown : 2014-03-24 ZA Central Registry NPC trading as ZA Central Registry
+// capetown : ZA Central Registry NPC trading as ZA Central Registry
+// https://www.iana.org/domains/root/db/capetown.html
capetown
-// capital : 2014-03-06 Binky Moon, LLC
+// capital : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/capital.html
capital
-// capitalone : 2015-08-06 Capital One Financial Corporation
+// capitalone : Capital One Financial Corporation
+// https://www.iana.org/domains/root/db/capitalone.html
capitalone
-// car : 2015-01-22 Cars Registry Limited
+// car : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/car.html
car
-// caravan : 2013-12-12 Caravan International, Inc.
+// caravan : Caravan International, Inc.
+// https://www.iana.org/domains/root/db/caravan.html
caravan
-// cards : 2013-12-05 Binky Moon, LLC
+// cards : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cards.html
cards
-// care : 2014-03-06 Binky Moon, LLC
+// care : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/care.html
care
-// career : 2013-10-09 dotCareer LLC
+// career : dotCareer LLC
+// https://www.iana.org/domains/root/db/career.html
career
-// careers : 2013-10-02 Binky Moon, LLC
+// careers : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/careers.html
careers
-// cars : 2014-11-13 Cars Registry Limited
+// cars : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/cars.html
cars
-// casa : 2013-11-21 Minds + Machines Group Limited
+// casa : Registry Services, LLC
+// https://www.iana.org/domains/root/db/casa.html
casa
-// case : 2015-09-03 CNH Industrial N.V.
+// case : Digity, LLC
+// https://www.iana.org/domains/root/db/case.html
case
-// caseih : 2015-09-03 CNH Industrial N.V.
-caseih
-
-// cash : 2014-03-06 Binky Moon, LLC
+// cash : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cash.html
cash
-// casino : 2014-12-18 Binky Moon, LLC
+// casino : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/casino.html
casino
-// catering : 2013-12-05 Binky Moon, LLC
+// catering : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/catering.html
catering
-// catholic : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// catholic : Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// https://www.iana.org/domains/root/db/catholic.html
catholic
-// cba : 2014-06-26 COMMONWEALTH BANK OF AUSTRALIA
+// cba : COMMONWEALTH BANK OF AUSTRALIA
+// https://www.iana.org/domains/root/db/cba.html
cba
-// cbn : 2014-08-22 The Christian Broadcasting Network, Inc.
+// cbn : The Christian Broadcasting Network, Inc.
+// https://www.iana.org/domains/root/db/cbn.html
cbn
-// cbre : 2015-07-02 CBRE, Inc.
+// cbre : CBRE, Inc.
+// https://www.iana.org/domains/root/db/cbre.html
cbre
-// cbs : 2015-08-06 CBS Domains Inc.
-cbs
-
-// ceb : 2015-04-09 The Corporate Executive Board Company
-ceb
-
-// center : 2013-11-07 Binky Moon, LLC
+// center : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/center.html
center
-// ceo : 2013-11-07 CEOTLD Pty Ltd
+// ceo : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/ceo.html
ceo
-// cern : 2014-06-05 European Organization for Nuclear Research ("CERN")
+// cern : European Organization for Nuclear Research ("CERN")
+// https://www.iana.org/domains/root/db/cern.html
cern
-// cfa : 2014-08-28 CFA Institute
+// cfa : CFA Institute
+// https://www.iana.org/domains/root/db/cfa.html
cfa
-// cfd : 2014-12-11 DotCFD Registry Limited
+// cfd : ShortDot SA
+// https://www.iana.org/domains/root/db/cfd.html
cfd
-// chanel : 2015-04-09 Chanel International B.V.
+// chanel : Chanel International B.V.
+// https://www.iana.org/domains/root/db/chanel.html
chanel
-// channel : 2014-05-08 Charleston Road Registry Inc.
+// channel : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/channel.html
channel
-// charity : 2018-04-11 Binky Moon, LLC
+// charity : Public Interest Registry
+// https://www.iana.org/domains/root/db/charity.html
charity
-// chase : 2015-04-30 JPMorgan Chase Bank, National Association
+// chase : JPMorgan Chase Bank, National Association
+// https://www.iana.org/domains/root/db/chase.html
chase
-// chat : 2014-12-04 Binky Moon, LLC
+// chat : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/chat.html
chat
-// cheap : 2013-11-14 Binky Moon, LLC
+// cheap : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cheap.html
cheap
-// chintai : 2015-06-11 CHINTAI Corporation
+// chintai : CHINTAI Corporation
+// https://www.iana.org/domains/root/db/chintai.html
chintai
-// christmas : 2013-11-21 UNR Corp.
+// christmas : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/christmas.html
christmas
-// chrome : 2014-07-24 Charleston Road Registry Inc.
+// chrome : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/chrome.html
chrome
-// church : 2014-02-06 Binky Moon, LLC
+// church : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/church.html
church
-// cipriani : 2015-02-19 Hotel Cipriani Srl
+// cipriani : Hotel Cipriani Srl
+// https://www.iana.org/domains/root/db/cipriani.html
cipriani
-// circle : 2014-12-18 Amazon Registry Services, Inc.
+// circle : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/circle.html
circle
-// cisco : 2014-12-22 Cisco Technology, Inc.
+// cisco : Cisco Technology, Inc.
+// https://www.iana.org/domains/root/db/cisco.html
cisco
-// citadel : 2015-07-23 Citadel Domain LLC
+// citadel : Citadel Domain LLC
+// https://www.iana.org/domains/root/db/citadel.html
citadel
-// citi : 2015-07-30 Citigroup Inc.
+// citi : Citigroup Inc.
+// https://www.iana.org/domains/root/db/citi.html
citi
-// citic : 2014-01-09 CITIC Group Corporation
+// citic : CITIC Group Corporation
+// https://www.iana.org/domains/root/db/citic.html
citic
-// city : 2014-05-29 Binky Moon, LLC
+// city : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/city.html
city
-// cityeats : 2014-12-11 Lifestyle Domain Holdings, Inc.
-cityeats
-
-// claims : 2014-03-20 Binky Moon, LLC
+// claims : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/claims.html
claims
-// cleaning : 2013-12-05 Binky Moon, LLC
+// cleaning : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cleaning.html
cleaning
-// click : 2014-06-05 UNR Corp.
+// click : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/click.html
click
-// clinic : 2014-03-20 Binky Moon, LLC
+// clinic : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/clinic.html
clinic
-// clinique : 2015-10-01 The Estée Lauder Companies Inc.
+// clinique : The Estée Lauder Companies Inc.
+// https://www.iana.org/domains/root/db/clinique.html
clinique
-// clothing : 2013-08-27 Binky Moon, LLC
+// clothing : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/clothing.html
clothing
-// cloud : 2015-04-16 Aruba PEC S.p.A.
+// cloud : Aruba PEC S.p.A.
+// https://www.iana.org/domains/root/db/cloud.html
cloud
-// club : 2013-11-08 .CLUB DOMAINS, LLC
+// club : Registry Services, LLC
+// https://www.iana.org/domains/root/db/club.html
club
-// clubmed : 2015-06-25 Club Méditerranée S.A.
+// clubmed : Club Méditerranée S.A.
+// https://www.iana.org/domains/root/db/clubmed.html
clubmed
-// coach : 2014-10-09 Binky Moon, LLC
+// coach : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/coach.html
coach
-// codes : 2013-10-31 Binky Moon, LLC
+// codes : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/codes.html
codes
-// coffee : 2013-10-17 Binky Moon, LLC
+// coffee : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/coffee.html
coffee
-// college : 2014-01-16 XYZ.COM LLC
+// college : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/college.html
college
-// cologne : 2014-02-05 dotKoeln GmbH
+// cologne : dotKoeln GmbH
+// https://www.iana.org/domains/root/db/cologne.html
cologne
-// comcast : 2015-07-23 Comcast IP Holdings I, LLC
+// comcast : Comcast IP Holdings I, LLC
+// https://www.iana.org/domains/root/db/comcast.html
comcast
-// commbank : 2014-06-26 COMMONWEALTH BANK OF AUSTRALIA
+// commbank : COMMONWEALTH BANK OF AUSTRALIA
+// https://www.iana.org/domains/root/db/commbank.html
commbank
-// community : 2013-12-05 Binky Moon, LLC
+// community : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/community.html
community
-// company : 2013-11-07 Binky Moon, LLC
+// company : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/company.html
company
-// compare : 2015-10-08 Registry Services, LLC
+// compare : Registry Services, LLC
+// https://www.iana.org/domains/root/db/compare.html
compare
-// computer : 2013-10-24 Binky Moon, LLC
+// computer : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/computer.html
computer
-// comsec : 2015-01-08 VeriSign, Inc.
+// comsec : VeriSign, Inc.
+// https://www.iana.org/domains/root/db/comsec.html
comsec
-// condos : 2013-12-05 Binky Moon, LLC
+// condos : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/condos.html
condos
-// construction : 2013-09-16 Binky Moon, LLC
+// construction : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/construction.html
construction
-// consulting : 2013-12-05 Dog Beach, LLC
+// consulting : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/consulting.html
consulting
-// contact : 2015-01-08 Dog Beach, LLC
+// contact : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/contact.html
contact
-// contractors : 2013-09-10 Binky Moon, LLC
+// contractors : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/contractors.html
contractors
-// cooking : 2013-11-21 Minds + Machines Group Limited
+// cooking : Registry Services, LLC
+// https://www.iana.org/domains/root/db/cooking.html
cooking
-// cookingchannel : 2015-07-02 Lifestyle Domain Holdings, Inc.
-cookingchannel
-
-// cool : 2013-11-14 Binky Moon, LLC
+// cool : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cool.html
cool
-// corsica : 2014-09-25 Collectivité de Corse
+// corsica : Collectivité de Corse
+// https://www.iana.org/domains/root/db/corsica.html
corsica
-// country : 2013-12-19 DotCountry LLC
+// country : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/country.html
country
-// coupon : 2015-02-26 Amazon Registry Services, Inc.
+// coupon : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/coupon.html
coupon
-// coupons : 2015-03-26 Binky Moon, LLC
+// coupons : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/coupons.html
coupons
-// courses : 2014-12-04 OPEN UNIVERSITIES AUSTRALIA PTY LTD
+// courses : Registry Services, LLC
+// https://www.iana.org/domains/root/db/courses.html
courses
-// cpa : 2019-06-10 American Institute of Certified Public Accountants
+// cpa : American Institute of Certified Public Accountants
+// https://www.iana.org/domains/root/db/cpa.html
cpa
-// credit : 2014-03-20 Binky Moon, LLC
+// credit : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/credit.html
credit
-// creditcard : 2014-03-20 Binky Moon, LLC
+// creditcard : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/creditcard.html
creditcard
-// creditunion : 2015-01-22 CUNA Performance Resources, LLC
+// creditunion : DotCooperation LLC
+// https://www.iana.org/domains/root/db/creditunion.html
creditunion
-// cricket : 2014-10-09 dot Cricket Limited
+// cricket : dot Cricket Limited
+// https://www.iana.org/domains/root/db/cricket.html
cricket
-// crown : 2014-10-24 Crown Equipment Corporation
+// crown : Crown Equipment Corporation
+// https://www.iana.org/domains/root/db/crown.html
crown
-// crs : 2014-04-03 Federated Co-operatives Limited
+// crs : Federated Co-operatives Limited
+// https://www.iana.org/domains/root/db/crs.html
crs
-// cruise : 2015-12-10 Viking River Cruises (Bermuda) Ltd.
+// cruise : Viking River Cruises (Bermuda) Ltd.
+// https://www.iana.org/domains/root/db/cruise.html
cruise
-// cruises : 2013-12-05 Binky Moon, LLC
+// cruises : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/cruises.html
cruises
-// csc : 2014-09-25 Alliance-One Services, Inc.
-csc
-
-// cuisinella : 2014-04-03 SCHMIDT GROUPE S.A.S.
+// cuisinella : SCHMIDT GROUPE S.A.S.
+// https://www.iana.org/domains/root/db/cuisinella.html
cuisinella
-// cymru : 2014-05-08 Nominet UK
+// cymru : Nominet UK
+// https://www.iana.org/domains/root/db/cymru.html
cymru
-// cyou : 2015-01-22 ShortDot SA
+// cyou : ShortDot SA
+// https://www.iana.org/domains/root/db/cyou.html
cyou
-// dabur : 2014-02-06 Dabur India Limited
+// dabur : Dabur India Limited
+// https://www.iana.org/domains/root/db/dabur.html
dabur
-// dad : 2014-01-23 Charleston Road Registry Inc.
+// dad : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/dad.html
dad
-// dance : 2013-10-24 Dog Beach, LLC
+// dance : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/dance.html
dance
-// data : 2016-06-02 Dish DBS Corporation
+// data : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/data.html
data
-// date : 2014-11-20 dot Date Limited
+// date : dot Date Limited
+// https://www.iana.org/domains/root/db/date.html
date
-// dating : 2013-12-05 Binky Moon, LLC
+// dating : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/dating.html
dating
-// datsun : 2014-03-27 NISSAN MOTOR CO., LTD.
+// datsun : NISSAN MOTOR CO., LTD.
+// https://www.iana.org/domains/root/db/datsun.html
datsun
-// day : 2014-01-30 Charleston Road Registry Inc.
+// day : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/day.html
day
-// dclk : 2014-11-20 Charleston Road Registry Inc.
+// dclk : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/dclk.html
dclk
-// dds : 2015-05-07 Minds + Machines Group Limited
+// dds : Registry Services, LLC
+// https://www.iana.org/domains/root/db/dds.html
dds
-// deal : 2015-06-25 Amazon Registry Services, Inc.
+// deal : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/deal.html
deal
-// dealer : 2014-12-22 Intercap Registry Inc.
+// dealer : Intercap Registry Inc.
+// https://www.iana.org/domains/root/db/dealer.html
dealer
-// deals : 2014-05-22 Binky Moon, LLC
+// deals : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/deals.html
deals
-// degree : 2014-03-06 Dog Beach, LLC
+// degree : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/degree.html
degree
-// delivery : 2014-09-11 Binky Moon, LLC
+// delivery : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/delivery.html
delivery
-// dell : 2014-10-24 Dell Inc.
+// dell : Dell Inc.
+// https://www.iana.org/domains/root/db/dell.html
dell
-// deloitte : 2015-07-31 Deloitte Touche Tohmatsu
+// deloitte : Deloitte Touche Tohmatsu
+// https://www.iana.org/domains/root/db/deloitte.html
deloitte
-// delta : 2015-02-19 Delta Air Lines, Inc.
+// delta : Delta Air Lines, Inc.
+// https://www.iana.org/domains/root/db/delta.html
delta
-// democrat : 2013-10-24 Dog Beach, LLC
+// democrat : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/democrat.html
democrat
-// dental : 2014-03-20 Binky Moon, LLC
+// dental : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/dental.html
dental
-// dentist : 2014-03-20 Dog Beach, LLC
+// dentist : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/dentist.html
dentist
-// desi : 2013-11-14 Desi Networks LLC
+// desi
+// https://www.iana.org/domains/root/db/desi.html
desi
-// design : 2014-11-07 Top Level Design, LLC
+// design : Registry Services, LLC
+// https://www.iana.org/domains/root/db/design.html
design
-// dev : 2014-10-16 Charleston Road Registry Inc.
+// dev : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/dev.html
dev
-// dhl : 2015-07-23 Deutsche Post AG
+// dhl : Deutsche Post AG
+// https://www.iana.org/domains/root/db/dhl.html
dhl
-// diamonds : 2013-09-22 Binky Moon, LLC
+// diamonds : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/diamonds.html
diamonds
-// diet : 2014-06-26 UNR Corp.
+// diet : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/diet.html
diet
-// digital : 2014-03-06 Binky Moon, LLC
+// digital : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/digital.html
digital
-// direct : 2014-04-10 Binky Moon, LLC
+// direct : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/direct.html
direct
-// directory : 2013-09-20 Binky Moon, LLC
+// directory : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/directory.html
directory
-// discount : 2014-03-06 Binky Moon, LLC
+// discount : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/discount.html
discount
-// discover : 2015-07-23 Discover Financial Services
+// discover : Discover Financial Services
+// https://www.iana.org/domains/root/db/discover.html
discover
-// dish : 2015-07-30 Dish DBS Corporation
+// dish : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/dish.html
dish
-// diy : 2015-11-05 Lifestyle Domain Holdings, Inc.
+// diy : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/diy.html
diy
-// dnp : 2013-12-13 Dai Nippon Printing Co., Ltd.
+// dnp : Dai Nippon Printing Co., Ltd.
+// https://www.iana.org/domains/root/db/dnp.html
dnp
-// docs : 2014-10-16 Charleston Road Registry Inc.
+// docs : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/docs.html
docs
-// doctor : 2016-06-02 Binky Moon, LLC
+// doctor : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/doctor.html
doctor
-// dog : 2014-12-04 Binky Moon, LLC
+// dog : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/dog.html
dog
-// domains : 2013-10-17 Binky Moon, LLC
+// domains : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/domains.html
domains
-// dot : 2015-05-21 Dish DBS Corporation
+// dot : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/dot.html
dot
-// download : 2014-11-20 dot Support Limited
+// download : dot Support Limited
+// https://www.iana.org/domains/root/db/download.html
download
-// drive : 2015-03-05 Charleston Road Registry Inc.
+// drive : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/drive.html
drive
-// dtv : 2015-06-04 Dish DBS Corporation
+// dtv : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/dtv.html
dtv
-// dubai : 2015-01-01 Dubai Smart Government Department
+// dubai : Dubai Smart Government Department
+// https://www.iana.org/domains/root/db/dubai.html
dubai
-// duck : 2015-07-23 Johnson Shareholdings, Inc.
-duck
-
-// dunlop : 2015-07-02 The Goodyear Tire & Rubber Company
+// dunlop : The Goodyear Tire & Rubber Company
+// https://www.iana.org/domains/root/db/dunlop.html
dunlop
-// dupont : 2015-06-25 E. I. du Pont de Nemours and Company
+// dupont : DuPont Specialty Products USA, LLC
+// https://www.iana.org/domains/root/db/dupont.html
dupont
-// durban : 2014-03-24 ZA Central Registry NPC trading as ZA Central Registry
+// durban : ZA Central Registry NPC trading as ZA Central Registry
+// https://www.iana.org/domains/root/db/durban.html
durban
-// dvag : 2014-06-23 Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// dvag : Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// https://www.iana.org/domains/root/db/dvag.html
dvag
-// dvr : 2016-05-26 DISH Technologies L.L.C.
+// dvr : DISH Technologies L.L.C.
+// https://www.iana.org/domains/root/db/dvr.html
dvr
-// earth : 2014-12-04 Interlink Co., Ltd.
+// earth : Interlink Systems Innovation Institute K.K.
+// https://www.iana.org/domains/root/db/earth.html
earth
-// eat : 2014-01-23 Charleston Road Registry Inc.
+// eat : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/eat.html
eat
-// eco : 2016-07-08 Big Room Inc.
+// eco : Big Room Inc.
+// https://www.iana.org/domains/root/db/eco.html
eco
-// edeka : 2014-12-18 EDEKA Verband kaufmännischer Genossenschaften e.V.
+// edeka : EDEKA Verband kaufmännischer Genossenschaften e.V.
+// https://www.iana.org/domains/root/db/edeka.html
edeka
-// education : 2013-11-07 Binky Moon, LLC
+// education : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/education.html
education
-// email : 2013-10-31 Binky Moon, LLC
+// email : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/email.html
email
-// emerck : 2014-04-03 Merck KGaA
+// emerck : Merck KGaA
+// https://www.iana.org/domains/root/db/emerck.html
emerck
-// energy : 2014-09-11 Binky Moon, LLC
+// energy : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/energy.html
energy
-// engineer : 2014-03-06 Dog Beach, LLC
+// engineer : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/engineer.html
engineer
-// engineering : 2014-03-06 Binky Moon, LLC
+// engineering : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/engineering.html
engineering
-// enterprises : 2013-09-20 Binky Moon, LLC
+// enterprises : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/enterprises.html
enterprises
-// epson : 2014-12-04 Seiko Epson Corporation
+// epson : Seiko Epson Corporation
+// https://www.iana.org/domains/root/db/epson.html
epson
-// equipment : 2013-08-27 Binky Moon, LLC
+// equipment : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/equipment.html
equipment
-// ericsson : 2015-07-09 Telefonaktiebolaget L M Ericsson
+// ericsson : Telefonaktiebolaget L M Ericsson
+// https://www.iana.org/domains/root/db/ericsson.html
ericsson
-// erni : 2014-04-03 ERNI Group Holding AG
+// erni : ERNI Group Holding AG
+// https://www.iana.org/domains/root/db/erni.html
erni
-// esq : 2014-05-08 Charleston Road Registry Inc.
+// esq : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/esq.html
esq
-// estate : 2013-08-27 Binky Moon, LLC
+// estate : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/estate.html
estate
-// etisalat : 2015-09-03 Emirates Telecommunications Corporation (trading as Etisalat)
-etisalat
-
-// eurovision : 2014-04-24 European Broadcasting Union (EBU)
+// eurovision : European Broadcasting Union (EBU)
+// https://www.iana.org/domains/root/db/eurovision.html
eurovision
-// eus : 2013-12-12 Puntueus Fundazioa
+// eus : Puntueus Fundazioa
+// https://www.iana.org/domains/root/db/eus.html
eus
-// events : 2013-12-05 Binky Moon, LLC
+// events : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/events.html
events
-// exchange : 2014-03-06 Binky Moon, LLC
+// exchange : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/exchange.html
exchange
-// expert : 2013-11-21 Binky Moon, LLC
+// expert : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/expert.html
expert
-// exposed : 2013-12-05 Binky Moon, LLC
+// exposed : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/exposed.html
exposed
-// express : 2015-02-11 Binky Moon, LLC
+// express : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/express.html
express
-// extraspace : 2015-05-14 Extra Space Storage LLC
+// extraspace : Extra Space Storage LLC
+// https://www.iana.org/domains/root/db/extraspace.html
extraspace
-// fage : 2014-12-18 Fage International S.A.
+// fage : Fage International S.A.
+// https://www.iana.org/domains/root/db/fage.html
fage
-// fail : 2014-03-06 Binky Moon, LLC
+// fail : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/fail.html
fail
-// fairwinds : 2014-11-13 FairWinds Partners, LLC
+// fairwinds : FairWinds Partners, LLC
+// https://www.iana.org/domains/root/db/fairwinds.html
fairwinds
-// faith : 2014-11-20 dot Faith Limited
+// faith : dot Faith Limited
+// https://www.iana.org/domains/root/db/faith.html
faith
-// family : 2015-04-02 Dog Beach, LLC
+// family : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/family.html
family
-// fan : 2014-03-06 Dog Beach, LLC
+// fan : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/fan.html
fan
-// fans : 2014-11-07 ZDNS International Limited
+// fans : ZDNS International Limited
+// https://www.iana.org/domains/root/db/fans.html
fans
-// farm : 2013-11-07 Binky Moon, LLC
+// farm : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/farm.html
farm
-// farmers : 2015-07-09 Farmers Insurance Exchange
+// farmers : Farmers Insurance Exchange
+// https://www.iana.org/domains/root/db/farmers.html
farmers
-// fashion : 2014-07-03 Minds + Machines Group Limited
+// fashion : Registry Services, LLC
+// https://www.iana.org/domains/root/db/fashion.html
fashion
-// fast : 2014-12-18 Amazon Registry Services, Inc.
+// fast : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/fast.html
fast
-// fedex : 2015-08-06 Federal Express Corporation
+// fedex : Federal Express Corporation
+// https://www.iana.org/domains/root/db/fedex.html
fedex
-// feedback : 2013-12-19 Top Level Spectrum, Inc.
+// feedback : Top Level Spectrum, Inc.
+// https://www.iana.org/domains/root/db/feedback.html
feedback
-// ferrari : 2015-07-31 Fiat Chrysler Automobiles N.V.
+// ferrari : Fiat Chrysler Automobiles N.V.
+// https://www.iana.org/domains/root/db/ferrari.html
ferrari
-// ferrero : 2014-12-18 Ferrero Trading Lux S.A.
+// ferrero : Ferrero Trading Lux S.A.
+// https://www.iana.org/domains/root/db/ferrero.html
ferrero
-// fiat : 2015-07-31 Fiat Chrysler Automobiles N.V.
-fiat
-
-// fidelity : 2015-07-30 Fidelity Brokerage Services LLC
+// fidelity : Fidelity Brokerage Services LLC
+// https://www.iana.org/domains/root/db/fidelity.html
fidelity
-// fido : 2015-08-06 Rogers Communications Canada Inc.
+// fido : Rogers Communications Canada Inc.
+// https://www.iana.org/domains/root/db/fido.html
fido
-// film : 2015-01-08 Motion Picture Domain Registry Pty Ltd
+// film : Motion Picture Domain Registry Pty Ltd
+// https://www.iana.org/domains/root/db/film.html
film
-// final : 2014-10-16 Núcleo de Informação e Coordenação do Ponto BR - NIC.br
+// final : Núcleo de Informação e Coordenação do Ponto BR - NIC.br
+// https://www.iana.org/domains/root/db/final.html
final
-// finance : 2014-03-20 Binky Moon, LLC
+// finance : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/finance.html
finance
-// financial : 2014-03-06 Binky Moon, LLC
+// financial : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/financial.html
financial
-// fire : 2015-06-25 Amazon Registry Services, Inc.
+// fire : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/fire.html
fire
-// firestone : 2014-12-18 Bridgestone Licensing Services, Inc
+// firestone : Bridgestone Licensing Services, Inc
+// https://www.iana.org/domains/root/db/firestone.html
firestone
-// firmdale : 2014-03-27 Firmdale Holdings Limited
+// firmdale : Firmdale Holdings Limited
+// https://www.iana.org/domains/root/db/firmdale.html
firmdale
-// fish : 2013-12-12 Binky Moon, LLC
+// fish : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/fish.html
fish
-// fishing : 2013-11-21 Minds + Machines Group Limited
+// fishing : Registry Services, LLC
+// https://www.iana.org/domains/root/db/fishing.html
fishing
-// fit : 2014-11-07 Minds + Machines Group Limited
+// fit : Registry Services, LLC
+// https://www.iana.org/domains/root/db/fit.html
fit
-// fitness : 2014-03-06 Binky Moon, LLC
+// fitness : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/fitness.html
fitness
-// flickr : 2015-04-02 Flickr, Inc.
+// flickr : Flickr, Inc.
+// https://www.iana.org/domains/root/db/flickr.html
flickr
-// flights : 2013-12-05 Binky Moon, LLC
+// flights : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/flights.html
flights
-// flir : 2015-07-23 FLIR Systems, Inc.
+// flir : FLIR Systems, Inc.
+// https://www.iana.org/domains/root/db/flir.html
flir
-// florist : 2013-11-07 Binky Moon, LLC
+// florist : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/florist.html
florist
-// flowers : 2014-10-09 UNR Corp.
+// flowers : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/flowers.html
flowers
-// fly : 2014-05-08 Charleston Road Registry Inc.
+// fly : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/fly.html
fly
-// foo : 2014-01-23 Charleston Road Registry Inc.
+// foo : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/foo.html
foo
-// food : 2016-04-21 Lifestyle Domain Holdings, Inc.
+// food : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/food.html
food
-// foodnetwork : 2015-07-02 Lifestyle Domain Holdings, Inc.
-foodnetwork
-
-// football : 2014-12-18 Binky Moon, LLC
+// football : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/football.html
football
-// ford : 2014-11-13 Ford Motor Company
+// ford : Ford Motor Company
+// https://www.iana.org/domains/root/db/ford.html
ford
-// forex : 2014-12-11 Dotforex Registry Limited
+// forex : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/forex.html
forex
-// forsale : 2014-05-22 Dog Beach, LLC
+// forsale : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/forsale.html
forsale
-// forum : 2015-04-02 Fegistry, LLC
+// forum : Fegistry, LLC
+// https://www.iana.org/domains/root/db/forum.html
forum
-// foundation : 2013-12-05 Binky Moon, LLC
+// foundation : Public Interest Registry
+// https://www.iana.org/domains/root/db/foundation.html
foundation
-// fox : 2015-09-11 FOX Registry, LLC
+// fox : FOX Registry, LLC
+// https://www.iana.org/domains/root/db/fox.html
fox
-// free : 2015-12-10 Amazon Registry Services, Inc.
+// free : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/free.html
free
-// fresenius : 2015-07-30 Fresenius Immobilien-Verwaltungs-GmbH
+// fresenius : Fresenius Immobilien-Verwaltungs-GmbH
+// https://www.iana.org/domains/root/db/fresenius.html
fresenius
-// frl : 2014-05-15 FRLregistry B.V.
+// frl : FRLregistry B.V.
+// https://www.iana.org/domains/root/db/frl.html
frl
-// frogans : 2013-12-19 OP3FT
+// frogans : OP3FT
+// https://www.iana.org/domains/root/db/frogans.html
frogans
-// frontdoor : 2015-07-02 Lifestyle Domain Holdings, Inc.
-frontdoor
-
-// frontier : 2015-02-05 Frontier Communications Corporation
+// frontier : Frontier Communications Corporation
+// https://www.iana.org/domains/root/db/frontier.html
frontier
-// ftr : 2015-07-16 Frontier Communications Corporation
+// ftr : Frontier Communications Corporation
+// https://www.iana.org/domains/root/db/ftr.html
ftr
-// fujitsu : 2015-07-30 Fujitsu Limited
+// fujitsu : Fujitsu Limited
+// https://www.iana.org/domains/root/db/fujitsu.html
fujitsu
-// fujixerox : 2015-07-23 Xerox DNHC LLC
-fujixerox
-
-// fun : 2016-01-14 DotSpace Inc.
+// fun : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/fun.html
fun
-// fund : 2014-03-20 Binky Moon, LLC
+// fund : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/fund.html
fund
-// furniture : 2014-03-20 Binky Moon, LLC
+// furniture : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/furniture.html
furniture
-// futbol : 2013-09-20 Dog Beach, LLC
+// futbol : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/futbol.html
futbol
-// fyi : 2015-04-02 Binky Moon, LLC
+// fyi : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/fyi.html
fyi
-// gal : 2013-11-07 Asociación puntoGAL
+// gal : Asociación puntoGAL
+// https://www.iana.org/domains/root/db/gal.html
gal
-// gallery : 2013-09-13 Binky Moon, LLC
+// gallery : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gallery.html
gallery
-// gallo : 2015-06-11 Gallo Vineyards, Inc.
+// gallo : Gallo Vineyards, Inc.
+// https://www.iana.org/domains/root/db/gallo.html
gallo
-// gallup : 2015-02-19 Gallup, Inc.
+// gallup : Gallup, Inc.
+// https://www.iana.org/domains/root/db/gallup.html
gallup
-// game : 2015-05-28 UNR Corp.
+// game : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/game.html
game
-// games : 2015-05-28 Dog Beach, LLC
+// games : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/games.html
games
-// gap : 2015-07-31 The Gap, Inc.
+// gap : The Gap, Inc.
+// https://www.iana.org/domains/root/db/gap.html
gap
-// garden : 2014-06-26 Minds + Machines Group Limited
+// garden : Registry Services, LLC
+// https://www.iana.org/domains/root/db/garden.html
garden
-// gay : 2019-05-23 Top Level Design, LLC
+// gay : Registry Services, LLC
+// https://www.iana.org/domains/root/db/gay.html
gay
-// gbiz : 2014-07-17 Charleston Road Registry Inc.
+// gbiz : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/gbiz.html
gbiz
-// gdn : 2014-07-31 Joint Stock Company "Navigation-information systems"
+// gdn : Joint Stock Company "Navigation-information systems"
+// https://www.iana.org/domains/root/db/gdn.html
gdn
-// gea : 2014-12-04 GEA Group Aktiengesellschaft
+// gea : GEA Group Aktiengesellschaft
+// https://www.iana.org/domains/root/db/gea.html
gea
-// gent : 2014-01-23 COMBELL NV
+// gent : Easyhost BV
+// https://www.iana.org/domains/root/db/gent.html
gent
-// genting : 2015-03-12 Resorts World Inc Pte. Ltd.
+// genting : Resorts World Inc Pte. Ltd.
+// https://www.iana.org/domains/root/db/genting.html
genting
-// george : 2015-07-31 Wal-Mart Stores, Inc.
+// george : Wal-Mart Stores, Inc.
+// https://www.iana.org/domains/root/db/george.html
george
-// ggee : 2014-01-09 GMO Internet, Inc.
+// ggee : GMO Internet, Inc.
+// https://www.iana.org/domains/root/db/ggee.html
ggee
-// gift : 2013-10-17 DotGift, LLC
+// gift : DotGift, LLC
+// https://www.iana.org/domains/root/db/gift.html
gift
-// gifts : 2014-07-03 Binky Moon, LLC
+// gifts : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gifts.html
gifts
-// gives : 2014-03-06 Dog Beach, LLC
+// gives : Public Interest Registry
+// https://www.iana.org/domains/root/db/gives.html
gives
-// giving : 2014-11-13 Giving Limited
+// giving : Public Interest Registry
+// https://www.iana.org/domains/root/db/giving.html
giving
-// glade : 2015-07-23 Johnson Shareholdings, Inc.
-glade
-
-// glass : 2013-11-07 Binky Moon, LLC
+// glass : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/glass.html
glass
-// gle : 2014-07-24 Charleston Road Registry Inc.
+// gle : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/gle.html
gle
-// global : 2014-04-17 Dot Global Domain Registry Limited
+// global : Identity Digital Limited
+// https://www.iana.org/domains/root/db/global.html
global
-// globo : 2013-12-19 Globo Comunicação e Participações S.A
+// globo : Globo Comunicação e Participações S.A
+// https://www.iana.org/domains/root/db/globo.html
globo
-// gmail : 2014-05-01 Charleston Road Registry Inc.
+// gmail : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/gmail.html
gmail
-// gmbh : 2016-01-29 Binky Moon, LLC
+// gmbh : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gmbh.html
gmbh
-// gmo : 2014-01-09 GMO Internet, Inc.
+// gmo : GMO Internet, Inc.
+// https://www.iana.org/domains/root/db/gmo.html
gmo
-// gmx : 2014-04-24 1&1 Mail & Media GmbH
+// gmx : 1&1 Mail & Media GmbH
+// https://www.iana.org/domains/root/db/gmx.html
gmx
-// godaddy : 2015-07-23 Go Daddy East, LLC
+// godaddy : Go Daddy East, LLC
+// https://www.iana.org/domains/root/db/godaddy.html
godaddy
-// gold : 2015-01-22 Binky Moon, LLC
+// gold : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gold.html
gold
-// goldpoint : 2014-11-20 YODOBASHI CAMERA CO.,LTD.
+// goldpoint : YODOBASHI CAMERA CO.,LTD.
+// https://www.iana.org/domains/root/db/goldpoint.html
goldpoint
-// golf : 2014-12-18 Binky Moon, LLC
+// golf : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/golf.html
golf
-// goo : 2014-12-18 NTT Resonant Inc.
+// goo : NTT DOCOMO, INC.
+// https://www.iana.org/domains/root/db/goo.html
goo
-// goodyear : 2015-07-02 The Goodyear Tire & Rubber Company
+// goodyear : The Goodyear Tire & Rubber Company
+// https://www.iana.org/domains/root/db/goodyear.html
goodyear
-// goog : 2014-11-20 Charleston Road Registry Inc.
+// goog : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/goog.html
goog
-// google : 2014-07-24 Charleston Road Registry Inc.
+// google : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/google.html
google
-// gop : 2014-01-16 Republican State Leadership Committee, Inc.
+// gop : Republican State Leadership Committee, Inc.
+// https://www.iana.org/domains/root/db/gop.html
gop
-// got : 2014-12-18 Amazon Registry Services, Inc.
+// got : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/got.html
got
-// grainger : 2015-05-07 Grainger Registry Services, LLC
+// grainger : Grainger Registry Services, LLC
+// https://www.iana.org/domains/root/db/grainger.html
grainger
-// graphics : 2013-09-13 Binky Moon, LLC
+// graphics : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/graphics.html
graphics
-// gratis : 2014-03-20 Binky Moon, LLC
+// gratis : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gratis.html
gratis
-// green : 2014-05-08 Afilias Limited
+// green : Identity Digital Limited
+// https://www.iana.org/domains/root/db/green.html
green
-// gripe : 2014-03-06 Binky Moon, LLC
+// gripe : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/gripe.html
gripe
-// grocery : 2016-06-16 Wal-Mart Stores, Inc.
+// grocery : Wal-Mart Stores, Inc.
+// https://www.iana.org/domains/root/db/grocery.html
grocery
-// group : 2014-08-15 Binky Moon, LLC
+// group : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/group.html
group
-// guardian : 2015-07-30 The Guardian Life Insurance Company of America
+// guardian : The Guardian Life Insurance Company of America
+// https://www.iana.org/domains/root/db/guardian.html
guardian
-// gucci : 2014-11-13 Guccio Gucci S.p.a.
+// gucci : Guccio Gucci S.p.a.
+// https://www.iana.org/domains/root/db/gucci.html
gucci
-// guge : 2014-08-28 Charleston Road Registry Inc.
+// guge : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/guge.html
guge
-// guide : 2013-09-13 Binky Moon, LLC
+// guide : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/guide.html
guide
-// guitars : 2013-11-14 UNR Corp.
+// guitars : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/guitars.html
guitars
-// guru : 2013-08-27 Binky Moon, LLC
+// guru : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/guru.html
guru
-// hair : 2015-12-03 XYZ.COM LLC
+// hair : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/hair.html
hair
-// hamburg : 2014-02-20 Hamburg Top-Level-Domain GmbH
+// hamburg : Hamburg Top-Level-Domain GmbH
+// https://www.iana.org/domains/root/db/hamburg.html
hamburg
-// hangout : 2014-11-13 Charleston Road Registry Inc.
+// hangout : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/hangout.html
hangout
-// haus : 2013-12-05 Dog Beach, LLC
+// haus : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/haus.html
haus
-// hbo : 2015-07-30 HBO Registry Services, Inc.
+// hbo : HBO Registry Services, Inc.
+// https://www.iana.org/domains/root/db/hbo.html
hbo
-// hdfc : 2015-07-30 HOUSING DEVELOPMENT FINANCE CORPORATION LIMITED
+// hdfc : HOUSING DEVELOPMENT FINANCE CORPORATION LIMITED
+// https://www.iana.org/domains/root/db/hdfc.html
hdfc
-// hdfcbank : 2015-02-12 HDFC Bank Limited
+// hdfcbank : HDFC Bank Limited
+// https://www.iana.org/domains/root/db/hdfcbank.html
hdfcbank
-// health : 2015-02-11 DotHealth, LLC
+// health : Registry Services, LLC
+// https://www.iana.org/domains/root/db/health.html
health
-// healthcare : 2014-06-12 Binky Moon, LLC
+// healthcare : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/healthcare.html
healthcare
-// help : 2014-06-26 UNR Corp.
+// help : Innovation service Limited
+// https://www.iana.org/domains/root/db/help.html
help
-// helsinki : 2015-02-05 City of Helsinki
+// helsinki : City of Helsinki
+// https://www.iana.org/domains/root/db/helsinki.html
helsinki
-// here : 2014-02-06 Charleston Road Registry Inc.
+// here : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/here.html
here
-// hermes : 2014-07-10 HERMES INTERNATIONAL
+// hermes : HERMES INTERNATIONAL
+// https://www.iana.org/domains/root/db/hermes.html
hermes
-// hgtv : 2015-07-02 Lifestyle Domain Holdings, Inc.
-hgtv
-
-// hiphop : 2014-03-06 UNR Corp.
+// hiphop : Dot Hip Hop, LLC
+// https://www.iana.org/domains/root/db/hiphop.html
hiphop
-// hisamitsu : 2015-07-16 Hisamitsu Pharmaceutical Co.,Inc.
+// hisamitsu : Hisamitsu Pharmaceutical Co.,Inc.
+// https://www.iana.org/domains/root/db/hisamitsu.html
hisamitsu
-// hitachi : 2014-10-31 Hitachi, Ltd.
+// hitachi : Hitachi, Ltd.
+// https://www.iana.org/domains/root/db/hitachi.html
hitachi
-// hiv : 2014-03-13 UNR Corp.
+// hiv : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/hiv.html
hiv
-// hkt : 2015-05-14 PCCW-HKT DataCom Services Limited
+// hkt : PCCW-HKT DataCom Services Limited
+// https://www.iana.org/domains/root/db/hkt.html
hkt
-// hockey : 2015-03-19 Binky Moon, LLC
+// hockey : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/hockey.html
hockey
-// holdings : 2013-08-27 Binky Moon, LLC
+// holdings : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/holdings.html
holdings
-// holiday : 2013-11-07 Binky Moon, LLC
+// holiday : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/holiday.html
holiday
-// homedepot : 2015-04-02 Home Depot Product Authority, LLC
+// homedepot : Home Depot Product Authority, LLC
+// https://www.iana.org/domains/root/db/homedepot.html
homedepot
-// homegoods : 2015-07-16 The TJX Companies, Inc.
+// homegoods : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/homegoods.html
homegoods
-// homes : 2014-01-09 DERHomes, LLC
+// homes : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/homes.html
homes
-// homesense : 2015-07-16 The TJX Companies, Inc.
+// homesense : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/homesense.html
homesense
-// honda : 2014-12-18 Honda Motor Co., Ltd.
+// honda : Honda Motor Co., Ltd.
+// https://www.iana.org/domains/root/db/honda.html
honda
-// horse : 2013-11-21 Minds + Machines Group Limited
+// horse : Registry Services, LLC
+// https://www.iana.org/domains/root/db/horse.html
horse
-// hospital : 2016-10-20 Binky Moon, LLC
+// hospital : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/hospital.html
hospital
-// host : 2014-04-17 DotHost Inc.
+// host : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/host.html
host
-// hosting : 2014-05-29 UNR Corp.
+// hosting : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/hosting.html
hosting
-// hot : 2015-08-27 Amazon Registry Services, Inc.
+// hot : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/hot.html
hot
-// hoteles : 2015-03-05 Travel Reservations SRL
-hoteles
-
-// hotels : 2016-04-07 Booking.com B.V.
+// hotels : Booking.com B.V.
+// https://www.iana.org/domains/root/db/hotels.html
hotels
-// hotmail : 2014-12-18 Microsoft Corporation
+// hotmail : Microsoft Corporation
+// https://www.iana.org/domains/root/db/hotmail.html
hotmail
-// house : 2013-11-07 Binky Moon, LLC
+// house : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/house.html
house
-// how : 2014-01-23 Charleston Road Registry Inc.
+// how : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/how.html
how
-// hsbc : 2014-10-24 HSBC Global Services (UK) Limited
+// hsbc : HSBC Global Services (UK) Limited
+// https://www.iana.org/domains/root/db/hsbc.html
hsbc
-// hughes : 2015-07-30 Hughes Satellite Systems Corporation
+// hughes : Hughes Satellite Systems Corporation
+// https://www.iana.org/domains/root/db/hughes.html
hughes
-// hyatt : 2015-07-30 Hyatt GTLD, L.L.C.
+// hyatt : Hyatt GTLD, L.L.C.
+// https://www.iana.org/domains/root/db/hyatt.html
hyatt
-// hyundai : 2015-07-09 Hyundai Motor Company
+// hyundai : Hyundai Motor Company
+// https://www.iana.org/domains/root/db/hyundai.html
hyundai
-// ibm : 2014-07-31 International Business Machines Corporation
+// ibm : International Business Machines Corporation
+// https://www.iana.org/domains/root/db/ibm.html
ibm
-// icbc : 2015-02-19 Industrial and Commercial Bank of China Limited
+// icbc : Industrial and Commercial Bank of China Limited
+// https://www.iana.org/domains/root/db/icbc.html
icbc
-// ice : 2014-10-30 IntercontinentalExchange, Inc.
+// ice : IntercontinentalExchange, Inc.
+// https://www.iana.org/domains/root/db/ice.html
ice
-// icu : 2015-01-08 ShortDot SA
+// icu : ShortDot SA
+// https://www.iana.org/domains/root/db/icu.html
icu
-// ieee : 2015-07-23 IEEE Global LLC
+// ieee : IEEE Global LLC
+// https://www.iana.org/domains/root/db/ieee.html
ieee
-// ifm : 2014-01-30 ifm electronic gmbh
+// ifm : ifm electronic gmbh
+// https://www.iana.org/domains/root/db/ifm.html
ifm
-// ikano : 2015-07-09 Ikano S.A.
+// ikano : Ikano S.A.
+// https://www.iana.org/domains/root/db/ikano.html
ikano
-// imamat : 2015-08-06 Fondation Aga Khan (Aga Khan Foundation)
+// imamat : Fondation Aga Khan (Aga Khan Foundation)
+// https://www.iana.org/domains/root/db/imamat.html
imamat
-// imdb : 2015-06-25 Amazon Registry Services, Inc.
+// imdb : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/imdb.html
imdb
-// immo : 2014-07-10 Binky Moon, LLC
+// immo : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/immo.html
immo
-// immobilien : 2013-11-07 Dog Beach, LLC
+// immobilien : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/immobilien.html
immobilien
-// inc : 2018-03-10 Intercap Registry Inc.
+// inc : Intercap Registry Inc.
+// https://www.iana.org/domains/root/db/inc.html
inc
-// industries : 2013-12-05 Binky Moon, LLC
+// industries : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/industries.html
industries
-// infiniti : 2014-03-27 NISSAN MOTOR CO., LTD.
+// infiniti : NISSAN MOTOR CO., LTD.
+// https://www.iana.org/domains/root/db/infiniti.html
infiniti
-// ing : 2014-01-23 Charleston Road Registry Inc.
+// ing : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/ing.html
ing
-// ink : 2013-12-05 Top Level Design, LLC
+// ink : Registry Services, LLC
+// https://www.iana.org/domains/root/db/ink.html
ink
-// institute : 2013-11-07 Binky Moon, LLC
+// institute : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/institute.html
institute
-// insurance : 2015-02-19 fTLD Registry Services LLC
+// insurance : fTLD Registry Services LLC
+// https://www.iana.org/domains/root/db/insurance.html
insurance
-// insure : 2014-03-20 Binky Moon, LLC
+// insure : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/insure.html
insure
-// intel : 2015-08-06 Intel Corporation
-intel
-
-// international : 2013-11-07 Binky Moon, LLC
+// international : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/international.html
international
-// intuit : 2015-07-30 Intuit Administrative Services, Inc.
+// intuit : Intuit Administrative Services, Inc.
+// https://www.iana.org/domains/root/db/intuit.html
intuit
-// investments : 2014-03-20 Binky Moon, LLC
+// investments : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/investments.html
investments
-// ipiranga : 2014-08-28 Ipiranga Produtos de Petroleo S.A.
+// ipiranga : Ipiranga Produtos de Petroleo S.A.
+// https://www.iana.org/domains/root/db/ipiranga.html
ipiranga
-// irish : 2014-08-07 Binky Moon, LLC
+// irish : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/irish.html
irish
-// ismaili : 2015-08-06 Fondation Aga Khan (Aga Khan Foundation)
+// ismaili : Fondation Aga Khan (Aga Khan Foundation)
+// https://www.iana.org/domains/root/db/ismaili.html
ismaili
-// ist : 2014-08-28 Istanbul Metropolitan Municipality
+// ist : Istanbul Metropolitan Municipality
+// https://www.iana.org/domains/root/db/ist.html
ist
-// istanbul : 2014-08-28 Istanbul Metropolitan Municipality
+// istanbul : Istanbul Metropolitan Municipality
+// https://www.iana.org/domains/root/db/istanbul.html
istanbul
-// itau : 2014-10-02 Itau Unibanco Holding S.A.
+// itau : Itau Unibanco Holding S.A.
+// https://www.iana.org/domains/root/db/itau.html
itau
-// itv : 2015-07-09 ITV Services Limited
+// itv : ITV Services Limited
+// https://www.iana.org/domains/root/db/itv.html
itv
-// iveco : 2015-09-03 CNH Industrial N.V.
-iveco
-
-// jaguar : 2014-11-13 Jaguar Land Rover Ltd
+// jaguar : Jaguar Land Rover Ltd
+// https://www.iana.org/domains/root/db/jaguar.html
jaguar
-// java : 2014-06-19 Oracle Corporation
+// java : Oracle Corporation
+// https://www.iana.org/domains/root/db/java.html
java
-// jcb : 2014-11-20 JCB Co., Ltd.
+// jcb : JCB Co., Ltd.
+// https://www.iana.org/domains/root/db/jcb.html
jcb
-// jcp : 2015-04-23 JCP Media, Inc.
-jcp
-
-// jeep : 2015-07-30 FCA US LLC.
+// jeep : FCA US LLC.
+// https://www.iana.org/domains/root/db/jeep.html
jeep
-// jetzt : 2014-01-09 Binky Moon, LLC
+// jetzt : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/jetzt.html
jetzt
-// jewelry : 2015-03-05 Binky Moon, LLC
+// jewelry : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/jewelry.html
jewelry
-// jio : 2015-04-02 Reliance Industries Limited
+// jio : Reliance Industries Limited
+// https://www.iana.org/domains/root/db/jio.html
jio
-// jll : 2015-04-02 Jones Lang LaSalle Incorporated
+// jll : Jones Lang LaSalle Incorporated
+// https://www.iana.org/domains/root/db/jll.html
jll
-// jmp : 2015-03-26 Matrix IP LLC
+// jmp : Matrix IP LLC
+// https://www.iana.org/domains/root/db/jmp.html
jmp
-// jnj : 2015-06-18 Johnson & Johnson Services, Inc.
+// jnj : Johnson & Johnson Services, Inc.
+// https://www.iana.org/domains/root/db/jnj.html
jnj
-// joburg : 2014-03-24 ZA Central Registry NPC trading as ZA Central Registry
+// joburg : ZA Central Registry NPC trading as ZA Central Registry
+// https://www.iana.org/domains/root/db/joburg.html
joburg
-// jot : 2014-12-18 Amazon Registry Services, Inc.
+// jot : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/jot.html
jot
-// joy : 2014-12-18 Amazon Registry Services, Inc.
+// joy : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/joy.html
joy
-// jpmorgan : 2015-04-30 JPMorgan Chase Bank, National Association
+// jpmorgan : JPMorgan Chase Bank, National Association
+// https://www.iana.org/domains/root/db/jpmorgan.html
jpmorgan
-// jprs : 2014-09-18 Japan Registry Services Co., Ltd.
+// jprs : Japan Registry Services Co., Ltd.
+// https://www.iana.org/domains/root/db/jprs.html
jprs
-// juegos : 2014-03-20 UNR Corp.
+// juegos : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/juegos.html
juegos
-// juniper : 2015-07-30 JUNIPER NETWORKS, INC.
+// juniper : JUNIPER NETWORKS, INC.
+// https://www.iana.org/domains/root/db/juniper.html
juniper
-// kaufen : 2013-11-07 Dog Beach, LLC
+// kaufen : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/kaufen.html
kaufen
-// kddi : 2014-09-12 KDDI CORPORATION
+// kddi : KDDI CORPORATION
+// https://www.iana.org/domains/root/db/kddi.html
kddi
-// kerryhotels : 2015-04-30 Kerry Trading Co. Limited
+// kerryhotels : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/kerryhotels.html
kerryhotels
-// kerrylogistics : 2015-04-09 Kerry Trading Co. Limited
+// kerrylogistics : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/kerrylogistics.html
kerrylogistics
-// kerryproperties : 2015-04-09 Kerry Trading Co. Limited
+// kerryproperties : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/kerryproperties.html
kerryproperties
-// kfh : 2014-12-04 Kuwait Finance House
+// kfh : Kuwait Finance House
+// https://www.iana.org/domains/root/db/kfh.html
kfh
-// kia : 2015-07-09 KIA MOTORS CORPORATION
+// kia : KIA MOTORS CORPORATION
+// https://www.iana.org/domains/root/db/kia.html
kia
-// kim : 2013-09-23 Afilias Limited
-kim
+// kids : DotKids Foundation Limited
+// https://www.iana.org/domains/root/db/kids.html
+kids
-// kinder : 2014-11-07 Ferrero Trading Lux S.A.
-kinder
+// kim : Identity Digital Limited
+// https://www.iana.org/domains/root/db/kim.html
+kim
-// kindle : 2015-06-25 Amazon Registry Services, Inc.
+// kindle : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/kindle.html
kindle
-// kitchen : 2013-09-20 Binky Moon, LLC
+// kitchen : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/kitchen.html
kitchen
-// kiwi : 2013-09-20 DOT KIWI LIMITED
+// kiwi : DOT KIWI LIMITED
+// https://www.iana.org/domains/root/db/kiwi.html
kiwi
-// koeln : 2014-01-09 dotKoeln GmbH
+// koeln : dotKoeln GmbH
+// https://www.iana.org/domains/root/db/koeln.html
koeln
-// komatsu : 2015-01-08 Komatsu Ltd.
+// komatsu : Komatsu Ltd.
+// https://www.iana.org/domains/root/db/komatsu.html
komatsu
-// kosher : 2015-08-20 Kosher Marketing Assets LLC
+// kosher : Kosher Marketing Assets LLC
+// https://www.iana.org/domains/root/db/kosher.html
kosher
-// kpmg : 2015-04-23 KPMG International Cooperative (KPMG International Genossenschaft)
+// kpmg : KPMG International Cooperative (KPMG International Genossenschaft)
+// https://www.iana.org/domains/root/db/kpmg.html
kpmg
-// kpn : 2015-01-08 Koninklijke KPN N.V.
+// kpn : Koninklijke KPN N.V.
+// https://www.iana.org/domains/root/db/kpn.html
kpn
-// krd : 2013-12-05 KRG Department of Information Technology
+// krd : KRG Department of Information Technology
+// https://www.iana.org/domains/root/db/krd.html
krd
-// kred : 2013-12-19 KredTLD Pty Ltd
+// kred : KredTLD Pty Ltd
+// https://www.iana.org/domains/root/db/kred.html
kred
-// kuokgroup : 2015-04-09 Kerry Trading Co. Limited
+// kuokgroup : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/kuokgroup.html
kuokgroup
-// kyoto : 2014-11-07 Academic Institution: Kyoto Jyoho Gakuen
+// kyoto : Academic Institution: Kyoto Jyoho Gakuen
+// https://www.iana.org/domains/root/db/kyoto.html
kyoto
-// lacaixa : 2014-01-09 Fundación Bancaria Caixa d’Estalvis i Pensions de Barcelona, “la Caixa”
+// lacaixa : Fundación Bancaria Caixa d’Estalvis i Pensions de Barcelona, “la Caixa”
+// https://www.iana.org/domains/root/db/lacaixa.html
lacaixa
-// lamborghini : 2015-06-04 Automobili Lamborghini S.p.A.
+// lamborghini : Automobili Lamborghini S.p.A.
+// https://www.iana.org/domains/root/db/lamborghini.html
lamborghini
-// lamer : 2015-10-01 The Estée Lauder Companies Inc.
+// lamer : The Estée Lauder Companies Inc.
+// https://www.iana.org/domains/root/db/lamer.html
lamer
-// lancaster : 2015-02-12 LANCASTER
+// lancaster : LANCASTER
+// https://www.iana.org/domains/root/db/lancaster.html
lancaster
-// lancia : 2015-07-31 Fiat Chrysler Automobiles N.V.
-lancia
-
-// land : 2013-09-10 Binky Moon, LLC
+// land : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/land.html
land
-// landrover : 2014-11-13 Jaguar Land Rover Ltd
+// landrover : Jaguar Land Rover Ltd
+// https://www.iana.org/domains/root/db/landrover.html
landrover
-// lanxess : 2015-07-30 LANXESS Corporation
+// lanxess : LANXESS Corporation
+// https://www.iana.org/domains/root/db/lanxess.html
lanxess
-// lasalle : 2015-04-02 Jones Lang LaSalle Incorporated
+// lasalle : Jones Lang LaSalle Incorporated
+// https://www.iana.org/domains/root/db/lasalle.html
lasalle
-// lat : 2014-10-16 ECOM-LAC Federaciòn de Latinoamèrica y el Caribe para Internet y el Comercio Electrònico
+// lat : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/lat.html
lat
-// latino : 2015-07-30 Dish DBS Corporation
+// latino : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/latino.html
latino
-// latrobe : 2014-06-16 La Trobe University
+// latrobe : La Trobe University
+// https://www.iana.org/domains/root/db/latrobe.html
latrobe
-// law : 2015-01-22 LW TLD Limited
+// law : Registry Services, LLC
+// https://www.iana.org/domains/root/db/law.html
law
-// lawyer : 2014-03-20 Dog Beach, LLC
+// lawyer : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/lawyer.html
lawyer
-// lds : 2014-03-20 IRI Domain Management, LLC ("Applicant")
+// lds : IRI Domain Management, LLC
+// https://www.iana.org/domains/root/db/lds.html
lds
-// lease : 2014-03-06 Binky Moon, LLC
+// lease : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/lease.html
lease
-// leclerc : 2014-08-07 A.C.D. LEC Association des Centres Distributeurs Edouard Leclerc
+// leclerc : A.C.D. LEC Association des Centres Distributeurs Edouard Leclerc
+// https://www.iana.org/domains/root/db/leclerc.html
leclerc
-// lefrak : 2015-07-16 LeFrak Organization, Inc.
+// lefrak : LeFrak Organization, Inc.
+// https://www.iana.org/domains/root/db/lefrak.html
lefrak
-// legal : 2014-10-16 Binky Moon, LLC
+// legal : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/legal.html
legal
-// lego : 2015-07-16 LEGO Juris A/S
+// lego : LEGO Juris A/S
+// https://www.iana.org/domains/root/db/lego.html
lego
-// lexus : 2015-04-23 TOYOTA MOTOR CORPORATION
+// lexus : TOYOTA MOTOR CORPORATION
+// https://www.iana.org/domains/root/db/lexus.html
lexus
-// lgbt : 2014-05-08 Afilias Limited
+// lgbt : Identity Digital Limited
+// https://www.iana.org/domains/root/db/lgbt.html
lgbt
-// lidl : 2014-09-18 Schwarz Domains und Services GmbH & Co. KG
+// lidl : Schwarz Domains und Services GmbH & Co. KG
+// https://www.iana.org/domains/root/db/lidl.html
lidl
-// life : 2014-02-06 Binky Moon, LLC
+// life : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/life.html
life
-// lifeinsurance : 2015-01-15 American Council of Life Insurers
+// lifeinsurance : American Council of Life Insurers
+// https://www.iana.org/domains/root/db/lifeinsurance.html
lifeinsurance
-// lifestyle : 2014-12-11 Lifestyle Domain Holdings, Inc.
+// lifestyle : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/lifestyle.html
lifestyle
-// lighting : 2013-08-27 Binky Moon, LLC
+// lighting : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/lighting.html
lighting
-// like : 2014-12-18 Amazon Registry Services, Inc.
+// like : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/like.html
like
-// lilly : 2015-07-31 Eli Lilly and Company
+// lilly : Eli Lilly and Company
+// https://www.iana.org/domains/root/db/lilly.html
lilly
-// limited : 2014-03-06 Binky Moon, LLC
+// limited : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/limited.html
limited
-// limo : 2013-10-17 Binky Moon, LLC
+// limo : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/limo.html
limo
-// lincoln : 2014-11-13 Ford Motor Company
+// lincoln : Ford Motor Company
+// https://www.iana.org/domains/root/db/lincoln.html
lincoln
-// linde : 2014-12-04 Linde Aktiengesellschaft
-linde
-
-// link : 2013-11-14 UNR Corp.
+// link : Nova Registry Ltd
+// https://www.iana.org/domains/root/db/link.html
link
-// lipsy : 2015-06-25 Lipsy Ltd
+// lipsy : Lipsy Ltd
+// https://www.iana.org/domains/root/db/lipsy.html
lipsy
-// live : 2014-12-04 Dog Beach, LLC
+// live : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/live.html
live
-// living : 2015-07-30 Lifestyle Domain Holdings, Inc.
+// living : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/living.html
living
-// lixil : 2015-03-19 LIXIL Group Corporation
-lixil
-
-// llc : 2017-12-14 Afilias Limited
+// llc : Identity Digital Limited
+// https://www.iana.org/domains/root/db/llc.html
llc
-// llp : 2019-08-26 UNR Corp.
+// llp : Intercap Registry Inc.
+// https://www.iana.org/domains/root/db/llp.html
llp
-// loan : 2014-11-20 dot Loan Limited
+// loan : dot Loan Limited
+// https://www.iana.org/domains/root/db/loan.html
loan
-// loans : 2014-03-20 Binky Moon, LLC
+// loans : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/loans.html
loans
-// locker : 2015-06-04 Dish DBS Corporation
+// locker : Orange Domains LLC
+// https://www.iana.org/domains/root/db/locker.html
locker
-// locus : 2015-06-25 Locus Analytics LLC
+// locus : Locus Analytics LLC
+// https://www.iana.org/domains/root/db/locus.html
locus
-// loft : 2015-07-30 Annco, Inc.
-loft
-
-// lol : 2015-01-30 UNR Corp.
+// lol : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/lol.html
lol
-// london : 2013-11-14 Dot London Domains Limited
+// london : Dot London Domains Limited
+// https://www.iana.org/domains/root/db/london.html
london
-// lotte : 2014-11-07 Lotte Holdings Co., Ltd.
+// lotte : Lotte Holdings Co., Ltd.
+// https://www.iana.org/domains/root/db/lotte.html
lotte
-// lotto : 2014-04-10 Afilias Limited
+// lotto : Identity Digital Limited
+// https://www.iana.org/domains/root/db/lotto.html
lotto
-// love : 2014-12-22 Merchant Law Group LLP
+// love : Merchant Law Group LLP
+// https://www.iana.org/domains/root/db/love.html
love
-// lpl : 2015-07-30 LPL Holdings, Inc.
+// lpl : LPL Holdings, Inc.
+// https://www.iana.org/domains/root/db/lpl.html
lpl
-// lplfinancial : 2015-07-30 LPL Holdings, Inc.
+// lplfinancial : LPL Holdings, Inc.
+// https://www.iana.org/domains/root/db/lplfinancial.html
lplfinancial
-// ltd : 2014-09-25 Binky Moon, LLC
+// ltd : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/ltd.html
ltd
-// ltda : 2014-04-17 InterNetX, Corp
+// ltda : InterNetX, Corp
+// https://www.iana.org/domains/root/db/ltda.html
ltda
-// lundbeck : 2015-08-06 H. Lundbeck A/S
+// lundbeck : H. Lundbeck A/S
+// https://www.iana.org/domains/root/db/lundbeck.html
lundbeck
-// lupin : 2014-11-07 LUPIN LIMITED
-lupin
-
-// luxe : 2014-01-09 Minds + Machines Group Limited
+// luxe : Registry Services, LLC
+// https://www.iana.org/domains/root/db/luxe.html
luxe
-// luxury : 2013-10-17 Luxury Partners, LLC
+// luxury : Luxury Partners, LLC
+// https://www.iana.org/domains/root/db/luxury.html
luxury
-// macys : 2015-07-31 Macys, Inc.
-macys
-
-// madrid : 2014-05-01 Comunidad de Madrid
+// madrid : Comunidad de Madrid
+// https://www.iana.org/domains/root/db/madrid.html
madrid
-// maif : 2014-10-02 Mutuelle Assurance Instituteur France (MAIF)
+// maif : Mutuelle Assurance Instituteur France (MAIF)
+// https://www.iana.org/domains/root/db/maif.html
maif
-// maison : 2013-12-05 Binky Moon, LLC
+// maison : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/maison.html
maison
-// makeup : 2015-01-15 XYZ.COM LLC
+// makeup : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/makeup.html
makeup
-// man : 2014-12-04 MAN SE
+// man : MAN SE
+// https://www.iana.org/domains/root/db/man.html
man
-// management : 2013-11-07 Binky Moon, LLC
+// management : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/management.html
management
-// mango : 2013-10-24 PUNTO FA S.L.
+// mango : PUNTO FA S.L.
+// https://www.iana.org/domains/root/db/mango.html
mango
-// map : 2016-06-09 Charleston Road Registry Inc.
+// map : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/map.html
map
-// market : 2014-03-06 Dog Beach, LLC
+// market : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/market.html
market
-// marketing : 2013-11-07 Binky Moon, LLC
+// marketing : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/marketing.html
marketing
-// markets : 2014-12-11 Dotmarkets Registry Limited
+// markets : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/markets.html
markets
-// marriott : 2014-10-09 Marriott Worldwide Corporation
+// marriott : Marriott Worldwide Corporation
+// https://www.iana.org/domains/root/db/marriott.html
marriott
-// marshalls : 2015-07-16 The TJX Companies, Inc.
+// marshalls : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/marshalls.html
marshalls
-// maserati : 2015-07-31 Fiat Chrysler Automobiles N.V.
-maserati
-
-// mattel : 2015-08-06 Mattel Sites, Inc.
+// mattel : Mattel Sites, Inc.
+// https://www.iana.org/domains/root/db/mattel.html
mattel
-// mba : 2015-04-02 Binky Moon, LLC
+// mba : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/mba.html
mba
-// mckinsey : 2015-07-31 McKinsey Holdings, Inc.
+// mckinsey : McKinsey Holdings, Inc.
+// https://www.iana.org/domains/root/db/mckinsey.html
mckinsey
-// med : 2015-08-06 Medistry LLC
+// med : Medistry LLC
+// https://www.iana.org/domains/root/db/med.html
med
-// media : 2014-03-06 Binky Moon, LLC
+// media : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/media.html
media
-// meet : 2014-01-16 Charleston Road Registry Inc.
+// meet : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/meet.html
meet
-// melbourne : 2014-05-29 The Crown in right of the State of Victoria, represented by its Department of State Development, Business and Innovation
+// melbourne : The Crown in right of the State of Victoria, represented by its Department of State Development, Business and Innovation
+// https://www.iana.org/domains/root/db/melbourne.html
melbourne
-// meme : 2014-01-30 Charleston Road Registry Inc.
+// meme : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/meme.html
meme
-// memorial : 2014-10-16 Dog Beach, LLC
+// memorial : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/memorial.html
memorial
-// men : 2015-02-26 Exclusive Registry Limited
+// men : Exclusive Registry Limited
+// https://www.iana.org/domains/root/db/men.html
men
-// menu : 2013-09-11 Dot Menu Registry, LLC
+// menu : Dot Menu Registry, LLC
+// https://www.iana.org/domains/root/db/menu.html
menu
-// merckmsd : 2016-07-14 MSD Registry Holdings, Inc.
+// merckmsd : MSD Registry Holdings, Inc.
+// https://www.iana.org/domains/root/db/merckmsd.html
merckmsd
-// metlife : 2015-05-07 MetLife Services and Solutions, LLC
-metlife
-
-// miami : 2013-12-19 Minds + Machines Group Limited
+// miami : Registry Services, LLC
+// https://www.iana.org/domains/root/db/miami.html
miami
-// microsoft : 2014-12-18 Microsoft Corporation
+// microsoft : Microsoft Corporation
+// https://www.iana.org/domains/root/db/microsoft.html
microsoft
-// mini : 2014-01-09 Bayerische Motoren Werke Aktiengesellschaft
+// mini : Bayerische Motoren Werke Aktiengesellschaft
+// https://www.iana.org/domains/root/db/mini.html
mini
-// mint : 2015-07-30 Intuit Administrative Services, Inc.
+// mint : Intuit Administrative Services, Inc.
+// https://www.iana.org/domains/root/db/mint.html
mint
-// mit : 2015-07-02 Massachusetts Institute of Technology
+// mit : Massachusetts Institute of Technology
+// https://www.iana.org/domains/root/db/mit.html
mit
-// mitsubishi : 2015-07-23 Mitsubishi Corporation
+// mitsubishi : Mitsubishi Corporation
+// https://www.iana.org/domains/root/db/mitsubishi.html
mitsubishi
-// mlb : 2015-05-21 MLB Advanced Media DH, LLC
+// mlb : MLB Advanced Media DH, LLC
+// https://www.iana.org/domains/root/db/mlb.html
mlb
-// mls : 2015-04-23 The Canadian Real Estate Association
+// mls : The Canadian Real Estate Association
+// https://www.iana.org/domains/root/db/mls.html
mls
-// mma : 2014-11-07 MMA IARD
+// mma : MMA IARD
+// https://www.iana.org/domains/root/db/mma.html
mma
-// mobile : 2016-06-02 Dish DBS Corporation
+// mobile : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/mobile.html
mobile
-// moda : 2013-11-07 Dog Beach, LLC
+// moda : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/moda.html
moda
-// moe : 2013-11-13 Interlink Co., Ltd.
+// moe : Interlink Systems Innovation Institute K.K.
+// https://www.iana.org/domains/root/db/moe.html
moe
-// moi : 2014-12-18 Amazon Registry Services, Inc.
+// moi : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/moi.html
moi
-// mom : 2015-04-16 UNR Corp.
+// mom : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/mom.html
mom
-// monash : 2013-09-30 Monash University
+// monash : Monash University
+// https://www.iana.org/domains/root/db/monash.html
monash
-// money : 2014-10-16 Binky Moon, LLC
+// money : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/money.html
money
-// monster : 2015-09-11 XYZ.COM LLC
+// monster : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/monster.html
monster
-// mormon : 2013-12-05 IRI Domain Management, LLC ("Applicant")
+// mormon : IRI Domain Management, LLC
+// https://www.iana.org/domains/root/db/mormon.html
mormon
-// mortgage : 2014-03-20 Dog Beach, LLC
+// mortgage : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/mortgage.html
mortgage
-// moscow : 2013-12-19 Foundation for Assistance for Internet Technologies and Infrastructure Development (FAITID)
+// moscow : Foundation for Assistance for Internet Technologies and Infrastructure Development (FAITID)
+// https://www.iana.org/domains/root/db/moscow.html
moscow
-// moto : 2015-06-04 Motorola Trademark Holdings, LLC
+// moto : Motorola Trademark Holdings, LLC
+// https://www.iana.org/domains/root/db/moto.html
moto
-// motorcycles : 2014-01-09 DERMotorcycles, LLC
+// motorcycles : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/motorcycles.html
motorcycles
-// mov : 2014-01-30 Charleston Road Registry Inc.
+// mov : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/mov.html
mov
-// movie : 2015-02-05 Binky Moon, LLC
+// movie : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/movie.html
movie
-// msd : 2015-07-23 MSD Registry Holdings, Inc.
+// msd : MSD Registry Holdings, Inc.
+// https://www.iana.org/domains/root/db/msd.html
msd
-// mtn : 2014-12-04 MTN Dubai Limited
+// mtn : MTN Dubai Limited
+// https://www.iana.org/domains/root/db/mtn.html
mtn
-// mtr : 2015-03-12 MTR Corporation Limited
+// mtr : MTR Corporation Limited
+// https://www.iana.org/domains/root/db/mtr.html
mtr
-// mutual : 2015-04-02 Northwestern Mutual MU TLD Registry, LLC
-mutual
+// music : DotMusic Limited
+// https://www.iana.org/domains/root/db/music.html
+music
-// nab : 2015-08-20 National Australia Bank Limited
+// nab : National Australia Bank Limited
+// https://www.iana.org/domains/root/db/nab.html
nab
-// nagoya : 2013-10-24 GMO Registry, Inc.
+// nagoya : GMO Registry, Inc.
+// https://www.iana.org/domains/root/db/nagoya.html
nagoya
-// nationwide : 2015-07-23 Nationwide Mutual Insurance Company
-nationwide
-
-// natura : 2015-03-12 NATURA COSMÉTICOS S.A.
+// natura : NATURA COSMÉTICOS S.A.
+// https://www.iana.org/domains/root/db/natura.html
natura
-// navy : 2014-03-06 Dog Beach, LLC
+// navy : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/navy.html
navy
-// nba : 2015-07-31 NBA REGISTRY, LLC
+// nba : NBA REGISTRY, LLC
+// https://www.iana.org/domains/root/db/nba.html
nba
-// nec : 2015-01-08 NEC Corporation
+// nec : NEC Corporation
+// https://www.iana.org/domains/root/db/nec.html
nec
-// netbank : 2014-06-26 COMMONWEALTH BANK OF AUSTRALIA
+// netbank : COMMONWEALTH BANK OF AUSTRALIA
+// https://www.iana.org/domains/root/db/netbank.html
netbank
-// netflix : 2015-06-18 Netflix, Inc.
+// netflix : Netflix, Inc.
+// https://www.iana.org/domains/root/db/netflix.html
netflix
-// network : 2013-11-14 Binky Moon, LLC
+// network : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/network.html
network
-// neustar : 2013-12-05 NeuStar, Inc.
+// neustar : NeuStar, Inc.
+// https://www.iana.org/domains/root/db/neustar.html
neustar
-// new : 2014-01-30 Charleston Road Registry Inc.
+// new : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/new.html
new
-// newholland : 2015-09-03 CNH Industrial N.V.
-newholland
-
-// news : 2014-12-18 Dog Beach, LLC
+// news : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/news.html
news
-// next : 2015-06-18 Next plc
+// next : Next plc
+// https://www.iana.org/domains/root/db/next.html
next
-// nextdirect : 2015-06-18 Next plc
+// nextdirect : Next plc
+// https://www.iana.org/domains/root/db/nextdirect.html
nextdirect
-// nexus : 2014-07-24 Charleston Road Registry Inc.
+// nexus : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/nexus.html
nexus
-// nfl : 2015-07-23 NFL Reg Ops LLC
+// nfl : NFL Reg Ops LLC
+// https://www.iana.org/domains/root/db/nfl.html
nfl
-// ngo : 2014-03-06 Public Interest Registry
+// ngo : Public Interest Registry
+// https://www.iana.org/domains/root/db/ngo.html
ngo
-// nhk : 2014-02-13 Japan Broadcasting Corporation (NHK)
+// nhk : Japan Broadcasting Corporation (NHK)
+// https://www.iana.org/domains/root/db/nhk.html
nhk
-// nico : 2014-12-04 DWANGO Co., Ltd.
+// nico : DWANGO Co., Ltd.
+// https://www.iana.org/domains/root/db/nico.html
nico
-// nike : 2015-07-23 NIKE, Inc.
+// nike : NIKE, Inc.
+// https://www.iana.org/domains/root/db/nike.html
nike
-// nikon : 2015-05-21 NIKON CORPORATION
+// nikon : NIKON CORPORATION
+// https://www.iana.org/domains/root/db/nikon.html
nikon
-// ninja : 2013-11-07 Dog Beach, LLC
+// ninja : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/ninja.html
ninja
-// nissan : 2014-03-27 NISSAN MOTOR CO., LTD.
+// nissan : NISSAN MOTOR CO., LTD.
+// https://www.iana.org/domains/root/db/nissan.html
nissan
-// nissay : 2015-10-29 Nippon Life Insurance Company
+// nissay : Nippon Life Insurance Company
+// https://www.iana.org/domains/root/db/nissay.html
nissay
-// nokia : 2015-01-08 Nokia Corporation
+// nokia : Nokia Corporation
+// https://www.iana.org/domains/root/db/nokia.html
nokia
-// northwesternmutual : 2015-06-18 Northwestern Mutual Registry, LLC
-northwesternmutual
-
-// norton : 2014-12-04 Symantec Corporation
+// norton : NortonLifeLock Inc.
+// https://www.iana.org/domains/root/db/norton.html
norton
-// now : 2015-06-25 Amazon Registry Services, Inc.
+// now : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/now.html
now
-// nowruz : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// nowruz : Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// https://www.iana.org/domains/root/db/nowruz.html
nowruz
-// nowtv : 2015-05-14 Starbucks (HK) Limited
+// nowtv : Starbucks (HK) Limited
+// https://www.iana.org/domains/root/db/nowtv.html
nowtv
-// nra : 2014-05-22 NRA Holdings Company, INC.
+// nra : NRA Holdings Company, INC.
+// https://www.iana.org/domains/root/db/nra.html
nra
-// nrw : 2013-11-21 Minds + Machines GmbH
+// nrw : Minds + Machines GmbH
+// https://www.iana.org/domains/root/db/nrw.html
nrw
-// ntt : 2014-10-31 NIPPON TELEGRAPH AND TELEPHONE CORPORATION
+// ntt : NIPPON TELEGRAPH AND TELEPHONE CORPORATION
+// https://www.iana.org/domains/root/db/ntt.html
ntt
-// nyc : 2014-01-23 The City of New York by and through the New York City Department of Information Technology & Telecommunications
+// nyc : The City of New York by and through the New York City Department of Information Technology & Telecommunications
+// https://www.iana.org/domains/root/db/nyc.html
nyc
-// obi : 2014-09-25 OBI Group Holding SE & Co. KGaA
+// obi : OBI Group Holding SE & Co. KGaA
+// https://www.iana.org/domains/root/db/obi.html
obi
-// observer : 2015-04-30 Top Level Spectrum, Inc.
+// observer : Fegistry, LLC
+// https://www.iana.org/domains/root/db/observer.html
observer
-// off : 2015-07-23 Johnson Shareholdings, Inc.
-off
-
-// office : 2015-03-12 Microsoft Corporation
+// office : Microsoft Corporation
+// https://www.iana.org/domains/root/db/office.html
office
-// okinawa : 2013-12-05 BRregistry, Inc.
+// okinawa : BRregistry, Inc.
+// https://www.iana.org/domains/root/db/okinawa.html
okinawa
-// olayan : 2015-05-14 Crescent Holding GmbH
+// olayan : Competrol (Luxembourg) Sarl
+// https://www.iana.org/domains/root/db/olayan.html
olayan
-// olayangroup : 2015-05-14 Crescent Holding GmbH
+// olayangroup : Competrol (Luxembourg) Sarl
+// https://www.iana.org/domains/root/db/olayangroup.html
olayangroup
-// oldnavy : 2015-07-31 The Gap, Inc.
+// oldnavy : The Gap, Inc.
+// https://www.iana.org/domains/root/db/oldnavy.html
oldnavy
-// ollo : 2015-06-04 Dish DBS Corporation
+// ollo : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/ollo.html
ollo
-// omega : 2015-01-08 The Swatch Group Ltd
+// omega : The Swatch Group Ltd
+// https://www.iana.org/domains/root/db/omega.html
omega
-// one : 2014-11-07 One.com A/S
+// one : One.com A/S
+// https://www.iana.org/domains/root/db/one.html
one
-// ong : 2014-03-06 Public Interest Registry
+// ong : Public Interest Registry
+// https://www.iana.org/domains/root/db/ong.html
ong
-// onl : 2013-09-16 I-Registry Ltd.
+// onl : iRegistry GmbH
+// https://www.iana.org/domains/root/db/onl.html
onl
-// online : 2015-01-15 DotOnline Inc.
+// online : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/online.html
online
-// onyourside : 2015-07-23 Nationwide Mutual Insurance Company
-onyourside
-
-// ooo : 2014-01-09 INFIBEAM AVENUES LIMITED
+// ooo : INFIBEAM AVENUES LIMITED
+// https://www.iana.org/domains/root/db/ooo.html
ooo
-// open : 2015-07-31 American Express Travel Related Services Company, Inc.
+// open : American Express Travel Related Services Company, Inc.
+// https://www.iana.org/domains/root/db/open.html
open
-// oracle : 2014-06-19 Oracle Corporation
+// oracle : Oracle Corporation
+// https://www.iana.org/domains/root/db/oracle.html
oracle
-// orange : 2015-03-12 Orange Brand Services Limited
+// orange : Orange Brand Services Limited
+// https://www.iana.org/domains/root/db/orange.html
orange
-// organic : 2014-03-27 Afilias Limited
+// organic : Identity Digital Limited
+// https://www.iana.org/domains/root/db/organic.html
organic
-// origins : 2015-10-01 The Estée Lauder Companies Inc.
+// origins : The Estée Lauder Companies Inc.
+// https://www.iana.org/domains/root/db/origins.html
origins
-// osaka : 2014-09-04 Osaka Registry Co., Ltd.
+// osaka : Osaka Registry Co., Ltd.
+// https://www.iana.org/domains/root/db/osaka.html
osaka
-// otsuka : 2013-10-11 Otsuka Holdings Co., Ltd.
+// otsuka : Otsuka Holdings Co., Ltd.
+// https://www.iana.org/domains/root/db/otsuka.html
otsuka
-// ott : 2015-06-04 Dish DBS Corporation
+// ott : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/ott.html
ott
-// ovh : 2014-01-16 MédiaBC
+// ovh : MédiaBC
+// https://www.iana.org/domains/root/db/ovh.html
ovh
-// page : 2014-12-04 Charleston Road Registry Inc.
+// page : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/page.html
page
-// panasonic : 2015-07-30 Panasonic Corporation
+// panasonic : Panasonic Holdings Corporation
+// https://www.iana.org/domains/root/db/panasonic.html
panasonic
-// paris : 2014-01-30 City of Paris
+// paris : City of Paris
+// https://www.iana.org/domains/root/db/paris.html
paris
-// pars : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// pars : Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// https://www.iana.org/domains/root/db/pars.html
pars
-// partners : 2013-12-05 Binky Moon, LLC
+// partners : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/partners.html
partners
-// parts : 2013-12-05 Binky Moon, LLC
+// parts : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/parts.html
parts
-// party : 2014-09-11 Blue Sky Registry Limited
+// party : Blue Sky Registry Limited
+// https://www.iana.org/domains/root/db/party.html
party
-// passagens : 2015-03-05 Travel Reservations SRL
-passagens
-
-// pay : 2015-08-27 Amazon Registry Services, Inc.
+// pay : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/pay.html
pay
-// pccw : 2015-05-14 PCCW Enterprises Limited
+// pccw : PCCW Enterprises Limited
+// https://www.iana.org/domains/root/db/pccw.html
pccw
-// pet : 2015-05-07 Afilias Limited
+// pet : Identity Digital Limited
+// https://www.iana.org/domains/root/db/pet.html
pet
-// pfizer : 2015-09-11 Pfizer Inc.
+// pfizer : Pfizer Inc.
+// https://www.iana.org/domains/root/db/pfizer.html
pfizer
-// pharmacy : 2014-06-19 National Association of Boards of Pharmacy
+// pharmacy : National Association of Boards of Pharmacy
+// https://www.iana.org/domains/root/db/pharmacy.html
pharmacy
-// phd : 2016-07-28 Charleston Road Registry Inc.
+// phd : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/phd.html
phd
-// philips : 2014-11-07 Koninklijke Philips N.V.
+// philips : Koninklijke Philips N.V.
+// https://www.iana.org/domains/root/db/philips.html
philips
-// phone : 2016-06-02 Dish DBS Corporation
+// phone : Dish DBS Corporation
+// https://www.iana.org/domains/root/db/phone.html
phone
-// photo : 2013-11-14 UNR Corp.
+// photo : Registry Services, LLC
+// https://www.iana.org/domains/root/db/photo.html
photo
-// photography : 2013-09-20 Binky Moon, LLC
+// photography : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/photography.html
photography
-// photos : 2013-10-17 Binky Moon, LLC
+// photos : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/photos.html
photos
-// physio : 2014-05-01 PhysBiz Pty Ltd
+// physio : PhysBiz Pty Ltd
+// https://www.iana.org/domains/root/db/physio.html
physio
-// pics : 2013-11-14 UNR Corp.
+// pics : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/pics.html
pics
-// pictet : 2014-06-26 Pictet Europe S.A.
+// pictet : Pictet Europe S.A.
+// https://www.iana.org/domains/root/db/pictet.html
pictet
-// pictures : 2014-03-06 Binky Moon, LLC
+// pictures : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/pictures.html
pictures
-// pid : 2015-01-08 Top Level Spectrum, Inc.
+// pid : Top Level Spectrum, Inc.
+// https://www.iana.org/domains/root/db/pid.html
pid
-// pin : 2014-12-18 Amazon Registry Services, Inc.
+// pin : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/pin.html
pin
-// ping : 2015-06-11 Ping Registry Provider, Inc.
+// ping : Ping Registry Provider, Inc.
+// https://www.iana.org/domains/root/db/ping.html
ping
-// pink : 2013-10-01 Afilias Limited
+// pink : Identity Digital Limited
+// https://www.iana.org/domains/root/db/pink.html
pink
-// pioneer : 2015-07-16 Pioneer Corporation
+// pioneer : Pioneer Corporation
+// https://www.iana.org/domains/root/db/pioneer.html
pioneer
-// pizza : 2014-06-26 Binky Moon, LLC
+// pizza : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/pizza.html
pizza
-// place : 2014-04-24 Binky Moon, LLC
+// place : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/place.html
place
-// play : 2015-03-05 Charleston Road Registry Inc.
+// play : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/play.html
play
-// playstation : 2015-07-02 Sony Interactive Entertainment Inc.
+// playstation : Sony Interactive Entertainment Inc.
+// https://www.iana.org/domains/root/db/playstation.html
playstation
-// plumbing : 2013-09-10 Binky Moon, LLC
+// plumbing : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/plumbing.html
plumbing
-// plus : 2015-02-05 Binky Moon, LLC
+// plus : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/plus.html
plus
-// pnc : 2015-07-02 PNC Domain Co., LLC
+// pnc : PNC Domain Co., LLC
+// https://www.iana.org/domains/root/db/pnc.html
pnc
-// pohl : 2014-06-23 Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// pohl : Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// https://www.iana.org/domains/root/db/pohl.html
pohl
-// poker : 2014-07-03 Afilias Limited
+// poker : Identity Digital Limited
+// https://www.iana.org/domains/root/db/poker.html
poker
-// politie : 2015-08-20 Politie Nederland
+// politie : Politie Nederland
+// https://www.iana.org/domains/root/db/politie.html
politie
-// porn : 2014-10-16 ICM Registry PN LLC
+// porn : ICM Registry PN LLC
+// https://www.iana.org/domains/root/db/porn.html
porn
-// pramerica : 2015-07-30 Prudential Financial, Inc.
+// pramerica : Prudential Financial, Inc.
+// https://www.iana.org/domains/root/db/pramerica.html
pramerica
-// praxi : 2013-12-05 Praxi S.p.A.
+// praxi : Praxi S.p.A.
+// https://www.iana.org/domains/root/db/praxi.html
praxi
-// press : 2014-04-03 DotPress Inc.
+// press : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/press.html
press
-// prime : 2015-06-25 Amazon Registry Services, Inc.
+// prime : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/prime.html
prime
-// prod : 2014-01-23 Charleston Road Registry Inc.
+// prod : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/prod.html
prod
-// productions : 2013-12-05 Binky Moon, LLC
+// productions : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/productions.html
productions
-// prof : 2014-07-24 Charleston Road Registry Inc.
+// prof : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/prof.html
prof
-// progressive : 2015-07-23 Progressive Casualty Insurance Company
+// progressive : Progressive Casualty Insurance Company
+// https://www.iana.org/domains/root/db/progressive.html
progressive
-// promo : 2014-12-18 Afilias Limited
+// promo : Identity Digital Limited
+// https://www.iana.org/domains/root/db/promo.html
promo
-// properties : 2013-12-05 Binky Moon, LLC
+// properties : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/properties.html
properties
-// property : 2014-05-22 UNR Corp.
+// property : Digital Property Infrastructure Limited
+// https://www.iana.org/domains/root/db/property.html
property
-// protection : 2015-04-23 XYZ.COM LLC
+// protection : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/protection.html
protection
-// pru : 2015-07-30 Prudential Financial, Inc.
+// pru : Prudential Financial, Inc.
+// https://www.iana.org/domains/root/db/pru.html
pru
-// prudential : 2015-07-30 Prudential Financial, Inc.
+// prudential : Prudential Financial, Inc.
+// https://www.iana.org/domains/root/db/prudential.html
prudential
-// pub : 2013-12-12 Dog Beach, LLC
+// pub : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/pub.html
pub
-// pwc : 2015-10-29 PricewaterhouseCoopers LLP
+// pwc : PricewaterhouseCoopers LLP
+// https://www.iana.org/domains/root/db/pwc.html
pwc
-// qpon : 2013-11-14 dotCOOL, Inc.
+// qpon : dotQPON LLC
+// https://www.iana.org/domains/root/db/qpon.html
qpon
-// quebec : 2013-12-19 PointQuébec Inc
+// quebec : PointQuébec Inc
+// https://www.iana.org/domains/root/db/quebec.html
quebec
-// quest : 2015-03-26 XYZ.COM LLC
+// quest : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/quest.html
quest
-// qvc : 2015-07-30 QVC, Inc.
-qvc
-
-// racing : 2014-12-04 Premier Registry Limited
+// racing : Premier Registry Limited
+// https://www.iana.org/domains/root/db/racing.html
racing
-// radio : 2016-07-21 European Broadcasting Union (EBU)
+// radio : European Broadcasting Union (EBU)
+// https://www.iana.org/domains/root/db/radio.html
radio
-// raid : 2015-07-23 Johnson Shareholdings, Inc.
-raid
-
-// read : 2014-12-18 Amazon Registry Services, Inc.
+// read : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/read.html
read
-// realestate : 2015-09-11 dotRealEstate LLC
+// realestate : dotRealEstate LLC
+// https://www.iana.org/domains/root/db/realestate.html
realestate
-// realtor : 2014-05-29 Real Estate Domains LLC
+// realtor : Real Estate Domains LLC
+// https://www.iana.org/domains/root/db/realtor.html
realtor
-// realty : 2015-03-19 Fegistry, LLC
+// realty : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/realty.html
realty
-// recipes : 2013-10-17 Binky Moon, LLC
+// recipes : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/recipes.html
recipes
-// red : 2013-11-07 Afilias Limited
+// red : Identity Digital Limited
+// https://www.iana.org/domains/root/db/red.html
red
-// redstone : 2014-10-31 Redstone Haute Couture Co., Ltd.
+// redstone : Redstone Haute Couture Co., Ltd.
+// https://www.iana.org/domains/root/db/redstone.html
redstone
-// redumbrella : 2015-03-26 Travelers TLD, LLC
+// redumbrella : Travelers TLD, LLC
+// https://www.iana.org/domains/root/db/redumbrella.html
redumbrella
-// rehab : 2014-03-06 Dog Beach, LLC
+// rehab : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/rehab.html
rehab
-// reise : 2014-03-13 Binky Moon, LLC
+// reise : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/reise.html
reise
-// reisen : 2014-03-06 Binky Moon, LLC
+// reisen : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/reisen.html
reisen
-// reit : 2014-09-04 National Association of Real Estate Investment Trusts, Inc.
+// reit : National Association of Real Estate Investment Trusts, Inc.
+// https://www.iana.org/domains/root/db/reit.html
reit
-// reliance : 2015-04-02 Reliance Industries Limited
+// reliance : Reliance Industries Limited
+// https://www.iana.org/domains/root/db/reliance.html
reliance
-// ren : 2013-12-12 ZDNS International Limited
+// ren : ZDNS International Limited
+// https://www.iana.org/domains/root/db/ren.html
ren
-// rent : 2014-12-04 XYZ.COM LLC
+// rent : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/rent.html
rent
-// rentals : 2013-12-05 Binky Moon, LLC
+// rentals : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/rentals.html
rentals
-// repair : 2013-11-07 Binky Moon, LLC
+// repair : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/repair.html
repair
-// report : 2013-12-05 Binky Moon, LLC
+// report : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/report.html
report
-// republican : 2014-03-20 Dog Beach, LLC
+// republican : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/republican.html
republican
-// rest : 2013-12-19 Punto 2012 Sociedad Anonima Promotora de Inversion de Capital Variable
+// rest : Punto 2012 Sociedad Anonima Promotora de Inversion de Capital Variable
+// https://www.iana.org/domains/root/db/rest.html
rest
-// restaurant : 2014-07-03 Binky Moon, LLC
+// restaurant : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/restaurant.html
restaurant
-// review : 2014-11-20 dot Review Limited
+// review : dot Review Limited
+// https://www.iana.org/domains/root/db/review.html
review
-// reviews : 2013-09-13 Dog Beach, LLC
+// reviews : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/reviews.html
reviews
-// rexroth : 2015-06-18 Robert Bosch GMBH
+// rexroth : Robert Bosch GMBH
+// https://www.iana.org/domains/root/db/rexroth.html
rexroth
-// rich : 2013-11-21 I-Registry Ltd.
+// rich : iRegistry GmbH
+// https://www.iana.org/domains/root/db/rich.html
rich
-// richardli : 2015-05-14 Pacific Century Asset Management (HK) Limited
+// richardli : Pacific Century Asset Management (HK) Limited
+// https://www.iana.org/domains/root/db/richardli.html
richardli
-// ricoh : 2014-11-20 Ricoh Company, Ltd.
+// ricoh : Ricoh Company, Ltd.
+// https://www.iana.org/domains/root/db/ricoh.html
ricoh
-// rightathome : 2015-07-23 Johnson Shareholdings, Inc.
-rightathome
-
-// ril : 2015-04-02 Reliance Industries Limited
+// ril : Reliance Industries Limited
+// https://www.iana.org/domains/root/db/ril.html
ril
-// rio : 2014-02-27 Empresa Municipal de Informática SA - IPLANRIO
+// rio : Empresa Municipal de Informática SA - IPLANRIO
+// https://www.iana.org/domains/root/db/rio.html
rio
-// rip : 2014-07-10 Dog Beach, LLC
+// rip : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/rip.html
rip
-// rmit : 2015-11-19 Royal Melbourne Institute of Technology
-rmit
-
-// rocher : 2014-12-18 Ferrero Trading Lux S.A.
-rocher
-
-// rocks : 2013-11-14 Dog Beach, LLC
+// rocks : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/rocks.html
rocks
-// rodeo : 2013-12-19 Minds + Machines Group Limited
+// rodeo : Registry Services, LLC
+// https://www.iana.org/domains/root/db/rodeo.html
rodeo
-// rogers : 2015-08-06 Rogers Communications Canada Inc.
+// rogers : Rogers Communications Canada Inc.
+// https://www.iana.org/domains/root/db/rogers.html
rogers
-// room : 2014-12-18 Amazon Registry Services, Inc.
+// room : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/room.html
room
-// rsvp : 2014-05-08 Charleston Road Registry Inc.
+// rsvp : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/rsvp.html
rsvp
-// rugby : 2016-12-15 World Rugby Strategic Developments Limited
+// rugby : World Rugby Strategic Developments Limited
+// https://www.iana.org/domains/root/db/rugby.html
rugby
-// ruhr : 2013-10-02 regiodot GmbH & Co. KG
+// ruhr : dotSaarland GmbH
+// https://www.iana.org/domains/root/db/ruhr.html
ruhr
-// run : 2015-03-19 Binky Moon, LLC
+// run : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/run.html
run
-// rwe : 2015-04-02 RWE AG
+// rwe : RWE AG
+// https://www.iana.org/domains/root/db/rwe.html
rwe
-// ryukyu : 2014-01-09 BRregistry, Inc.
+// ryukyu : BRregistry, Inc.
+// https://www.iana.org/domains/root/db/ryukyu.html
ryukyu
-// saarland : 2013-12-12 dotSaarland GmbH
+// saarland : dotSaarland GmbH
+// https://www.iana.org/domains/root/db/saarland.html
saarland
-// safe : 2014-12-18 Amazon Registry Services, Inc.
+// safe : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/safe.html
safe
-// safety : 2015-01-08 Safety Registry Services, LLC.
+// safety : Safety Registry Services, LLC.
+// https://www.iana.org/domains/root/db/safety.html
safety
-// sakura : 2014-12-18 SAKURA Internet Inc.
+// sakura : SAKURA Internet Inc.
+// https://www.iana.org/domains/root/db/sakura.html
sakura
-// sale : 2014-10-16 Dog Beach, LLC
+// sale : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/sale.html
sale
-// salon : 2014-12-11 Binky Moon, LLC
+// salon : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/salon.html
salon
-// samsclub : 2015-07-31 Wal-Mart Stores, Inc.
+// samsclub : Wal-Mart Stores, Inc.
+// https://www.iana.org/domains/root/db/samsclub.html
samsclub
-// samsung : 2014-04-03 SAMSUNG SDS CO., LTD
+// samsung : SAMSUNG SDS CO., LTD
+// https://www.iana.org/domains/root/db/samsung.html
samsung
-// sandvik : 2014-11-13 Sandvik AB
+// sandvik : Sandvik AB
+// https://www.iana.org/domains/root/db/sandvik.html
sandvik
-// sandvikcoromant : 2014-11-07 Sandvik AB
+// sandvikcoromant : Sandvik AB
+// https://www.iana.org/domains/root/db/sandvikcoromant.html
sandvikcoromant
-// sanofi : 2014-10-09 Sanofi
+// sanofi : Sanofi
+// https://www.iana.org/domains/root/db/sanofi.html
sanofi
-// sap : 2014-03-27 SAP AG
+// sap : SAP AG
+// https://www.iana.org/domains/root/db/sap.html
sap
-// sarl : 2014-07-03 Binky Moon, LLC
+// sarl : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/sarl.html
sarl
-// sas : 2015-04-02 Research IP LLC
+// sas : Research IP LLC
+// https://www.iana.org/domains/root/db/sas.html
sas
-// save : 2015-06-25 Amazon Registry Services, Inc.
+// save : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/save.html
save
-// saxo : 2014-10-31 Saxo Bank A/S
+// saxo : Saxo Bank A/S
+// https://www.iana.org/domains/root/db/saxo.html
saxo
-// sbi : 2015-03-12 STATE BANK OF INDIA
+// sbi : STATE BANK OF INDIA
+// https://www.iana.org/domains/root/db/sbi.html
sbi
-// sbs : 2014-11-07 SPECIAL BROADCASTING SERVICE CORPORATION
+// sbs : ShortDot SA
+// https://www.iana.org/domains/root/db/sbs.html
sbs
-// sca : 2014-03-13 SVENSKA CELLULOSA AKTIEBOLAGET SCA (publ)
-sca
-
-// scb : 2014-02-20 The Siam Commercial Bank Public Company Limited ("SCB")
+// scb : The Siam Commercial Bank Public Company Limited ("SCB")
+// https://www.iana.org/domains/root/db/scb.html
scb
-// schaeffler : 2015-08-06 Schaeffler Technologies AG & Co. KG
+// schaeffler : Schaeffler Technologies AG & Co. KG
+// https://www.iana.org/domains/root/db/schaeffler.html
schaeffler
-// schmidt : 2014-04-03 SCHMIDT GROUPE S.A.S.
+// schmidt : SCHMIDT GROUPE S.A.S.
+// https://www.iana.org/domains/root/db/schmidt.html
schmidt
-// scholarships : 2014-04-24 Scholarships.com, LLC
+// scholarships : Scholarships.com, LLC
+// https://www.iana.org/domains/root/db/scholarships.html
scholarships
-// school : 2014-12-18 Binky Moon, LLC
+// school : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/school.html
school
-// schule : 2014-03-06 Binky Moon, LLC
+// schule : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/schule.html
schule
-// schwarz : 2014-09-18 Schwarz Domains und Services GmbH & Co. KG
+// schwarz : Schwarz Domains und Services GmbH & Co. KG
+// https://www.iana.org/domains/root/db/schwarz.html
schwarz
-// science : 2014-09-11 dot Science Limited
+// science : dot Science Limited
+// https://www.iana.org/domains/root/db/science.html
science
-// scjohnson : 2015-07-23 Johnson Shareholdings, Inc.
-scjohnson
-
-// scot : 2014-01-23 Dot Scot Registry Limited
+// scot : Dot Scot Registry Limited
+// https://www.iana.org/domains/root/db/scot.html
scot
-// search : 2016-06-09 Charleston Road Registry Inc.
+// search : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/search.html
search
-// seat : 2014-05-22 SEAT, S.A. (Sociedad Unipersonal)
+// seat : SEAT, S.A. (Sociedad Unipersonal)
+// https://www.iana.org/domains/root/db/seat.html
seat
-// secure : 2015-08-27 Amazon Registry Services, Inc.
+// secure : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/secure.html
secure
-// security : 2015-05-14 XYZ.COM LLC
+// security : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/security.html
security
-// seek : 2014-12-04 Seek Limited
+// seek : Seek Limited
+// https://www.iana.org/domains/root/db/seek.html
seek
-// select : 2015-10-08 Registry Services, LLC
+// select : Registry Services, LLC
+// https://www.iana.org/domains/root/db/select.html
select
-// sener : 2014-10-24 Sener Ingeniería y Sistemas, S.A.
+// sener : Sener Ingeniería y Sistemas, S.A.
+// https://www.iana.org/domains/root/db/sener.html
sener
-// services : 2014-02-27 Binky Moon, LLC
+// services : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/services.html
services
-// ses : 2015-07-23 SES
-ses
-
-// seven : 2015-08-06 Seven West Media Ltd
+// seven : Seven West Media Ltd
+// https://www.iana.org/domains/root/db/seven.html
seven
-// sew : 2014-07-17 SEW-EURODRIVE GmbH & Co KG
+// sew : SEW-EURODRIVE GmbH & Co KG
+// https://www.iana.org/domains/root/db/sew.html
sew
-// sex : 2014-11-13 ICM Registry SX LLC
+// sex : ICM Registry SX LLC
+// https://www.iana.org/domains/root/db/sex.html
sex
-// sexy : 2013-09-11 UNR Corp.
+// sexy : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/sexy.html
sexy
-// sfr : 2015-08-13 Societe Francaise du Radiotelephone - SFR
+// sfr : Societe Francaise du Radiotelephone - SFR
+// https://www.iana.org/domains/root/db/sfr.html
sfr
-// shangrila : 2015-09-03 Shangri‐La International Hotel Management Limited
+// shangrila : Shangri‐La International Hotel Management Limited
+// https://www.iana.org/domains/root/db/shangrila.html
shangrila
-// sharp : 2014-05-01 Sharp Corporation
+// sharp : Sharp Corporation
+// https://www.iana.org/domains/root/db/sharp.html
sharp
-// shaw : 2015-04-23 Shaw Cablesystems G.P.
+// shaw : Shaw Cablesystems G.P.
+// https://www.iana.org/domains/root/db/shaw.html
shaw
-// shell : 2015-07-30 Shell Information Technology International Inc
+// shell : Shell Information Technology International Inc
+// https://www.iana.org/domains/root/db/shell.html
shell
-// shia : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// shia : Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// https://www.iana.org/domains/root/db/shia.html
shia
-// shiksha : 2013-11-14 Afilias Limited
+// shiksha : Identity Digital Limited
+// https://www.iana.org/domains/root/db/shiksha.html
shiksha
-// shoes : 2013-10-02 Binky Moon, LLC
+// shoes : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/shoes.html
shoes
-// shop : 2016-04-08 GMO Registry, Inc.
+// shop : GMO Registry, Inc.
+// https://www.iana.org/domains/root/db/shop.html
shop
-// shopping : 2016-03-31 Binky Moon, LLC
+// shopping : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/shopping.html
shopping
-// shouji : 2015-01-08 Beijing Qihu Keji Co., Ltd.
+// shouji : Beijing Qihu Keji Co., Ltd.
+// https://www.iana.org/domains/root/db/shouji.html
shouji
-// show : 2015-03-05 Binky Moon, LLC
+// show : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/show.html
show
-// showtime : 2015-08-06 CBS Domains Inc.
-showtime
-
-// shriram : 2014-01-23 Shriram Capital Ltd.
-shriram
-
-// silk : 2015-06-25 Amazon Registry Services, Inc.
+// silk : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/silk.html
silk
-// sina : 2015-03-12 Sina Corporation
+// sina : Sina Corporation
+// https://www.iana.org/domains/root/db/sina.html
sina
-// singles : 2013-08-27 Binky Moon, LLC
+// singles : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/singles.html
singles
-// site : 2015-01-15 DotSite Inc.
+// site : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/site.html
site
-// ski : 2015-04-09 Afilias Limited
+// ski : Identity Digital Limited
+// https://www.iana.org/domains/root/db/ski.html
ski
-// skin : 2015-01-15 XYZ.COM LLC
+// skin : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/skin.html
skin
-// sky : 2014-06-19 Sky International AG
+// sky : Sky International AG
+// https://www.iana.org/domains/root/db/sky.html
sky
-// skype : 2014-12-18 Microsoft Corporation
+// skype : Microsoft Corporation
+// https://www.iana.org/domains/root/db/skype.html
skype
-// sling : 2015-07-30 DISH Technologies L.L.C.
+// sling : DISH Technologies L.L.C.
+// https://www.iana.org/domains/root/db/sling.html
sling
-// smart : 2015-07-09 Smart Communications, Inc. (SMART)
+// smart : Smart Communications, Inc. (SMART)
+// https://www.iana.org/domains/root/db/smart.html
smart
-// smile : 2014-12-18 Amazon Registry Services, Inc.
+// smile : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/smile.html
smile
-// sncf : 2015-02-19 Société Nationale des Chemins de fer Francais S N C F
+// sncf : Société Nationale SNCF
+// https://www.iana.org/domains/root/db/sncf.html
sncf
-// soccer : 2015-03-26 Binky Moon, LLC
+// soccer : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/soccer.html
soccer
-// social : 2013-11-07 Dog Beach, LLC
+// social : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/social.html
social
-// softbank : 2015-07-02 SoftBank Group Corp.
+// softbank : SoftBank Group Corp.
+// https://www.iana.org/domains/root/db/softbank.html
softbank
-// software : 2014-03-20 Dog Beach, LLC
+// software : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/software.html
software
-// sohu : 2013-12-19 Sohu.com Limited
+// sohu : Sohu.com Limited
+// https://www.iana.org/domains/root/db/sohu.html
sohu
-// solar : 2013-11-07 Binky Moon, LLC
+// solar : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/solar.html
solar
-// solutions : 2013-11-07 Binky Moon, LLC
+// solutions : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/solutions.html
solutions
-// song : 2015-02-26 Amazon Registry Services, Inc.
+// song : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/song.html
song
-// sony : 2015-01-08 Sony Corporation
+// sony : Sony Corporation
+// https://www.iana.org/domains/root/db/sony.html
sony
-// soy : 2014-01-23 Charleston Road Registry Inc.
+// soy : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/soy.html
soy
-// spa : 2019-09-19 Asia Spa and Wellness Promotion Council Limited
+// spa : Asia Spa and Wellness Promotion Council Limited
+// https://www.iana.org/domains/root/db/spa.html
spa
-// space : 2014-04-03 DotSpace Inc.
+// space : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/space.html
space
-// sport : 2017-11-16 Global Association of International Sports Federations (GAISF)
+// sport : SportAccord
+// https://www.iana.org/domains/root/db/sport.html
sport
-// spot : 2015-02-26 Amazon Registry Services, Inc.
+// spot : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/spot.html
spot
-// spreadbetting : 2014-12-11 Dotspreadbetting Registry Limited
-spreadbetting
-
-// srl : 2015-05-07 InterNetX, Corp
+// srl : InterNetX, Corp
+// https://www.iana.org/domains/root/db/srl.html
srl
-// stada : 2014-11-13 STADA Arzneimittel AG
+// stada : STADA Arzneimittel AG
+// https://www.iana.org/domains/root/db/stada.html
stada
-// staples : 2015-07-30 Staples, Inc.
+// staples : Staples, Inc.
+// https://www.iana.org/domains/root/db/staples.html
staples
-// star : 2015-01-08 Star India Private Limited
+// star : Star India Private Limited
+// https://www.iana.org/domains/root/db/star.html
star
-// statebank : 2015-03-12 STATE BANK OF INDIA
+// statebank : STATE BANK OF INDIA
+// https://www.iana.org/domains/root/db/statebank.html
statebank
-// statefarm : 2015-07-30 State Farm Mutual Automobile Insurance Company
+// statefarm : State Farm Mutual Automobile Insurance Company
+// https://www.iana.org/domains/root/db/statefarm.html
statefarm
-// stc : 2014-10-09 Saudi Telecom Company
+// stc : Saudi Telecom Company
+// https://www.iana.org/domains/root/db/stc.html
stc
-// stcgroup : 2014-10-09 Saudi Telecom Company
+// stcgroup : Saudi Telecom Company
+// https://www.iana.org/domains/root/db/stcgroup.html
stcgroup
-// stockholm : 2014-12-18 Stockholms kommun
+// stockholm : Stockholms kommun
+// https://www.iana.org/domains/root/db/stockholm.html
stockholm
-// storage : 2014-12-22 XYZ.COM LLC
+// storage : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/storage.html
storage
-// store : 2015-04-09 DotStore Inc.
+// store : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/store.html
store
-// stream : 2016-01-08 dot Stream Limited
+// stream : dot Stream Limited
+// https://www.iana.org/domains/root/db/stream.html
stream
-// studio : 2015-02-11 Dog Beach, LLC
+// studio : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/studio.html
studio
-// study : 2014-12-11 OPEN UNIVERSITIES AUSTRALIA PTY LTD
+// study : Registry Services, LLC
+// https://www.iana.org/domains/root/db/study.html
study
-// style : 2014-12-04 Binky Moon, LLC
+// style : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/style.html
style
-// sucks : 2014-12-22 Vox Populi Registry Ltd.
+// sucks : Vox Populi Registry Ltd.
+// https://www.iana.org/domains/root/db/sucks.html
sucks
-// supplies : 2013-12-19 Binky Moon, LLC
+// supplies : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/supplies.html
supplies
-// supply : 2013-12-19 Binky Moon, LLC
+// supply : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/supply.html
supply
-// support : 2013-10-24 Binky Moon, LLC
+// support : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/support.html
support
-// surf : 2014-01-09 Minds + Machines Group Limited
+// surf : Registry Services, LLC
+// https://www.iana.org/domains/root/db/surf.html
surf
-// surgery : 2014-03-20 Binky Moon, LLC
+// surgery : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/surgery.html
surgery
-// suzuki : 2014-02-20 SUZUKI MOTOR CORPORATION
+// suzuki : SUZUKI MOTOR CORPORATION
+// https://www.iana.org/domains/root/db/suzuki.html
suzuki
-// swatch : 2015-01-08 The Swatch Group Ltd
+// swatch : The Swatch Group Ltd
+// https://www.iana.org/domains/root/db/swatch.html
swatch
-// swiftcover : 2015-07-23 Swiftcover Insurance Services Limited
-swiftcover
-
-// swiss : 2014-10-16 Swiss Confederation
+// swiss : Swiss Confederation
+// https://www.iana.org/domains/root/db/swiss.html
swiss
-// sydney : 2014-09-18 State of New South Wales, Department of Premier and Cabinet
+// sydney : State of New South Wales, Department of Premier and Cabinet
+// https://www.iana.org/domains/root/db/sydney.html
sydney
-// systems : 2013-11-07 Binky Moon, LLC
+// systems : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/systems.html
systems
-// tab : 2014-12-04 Tabcorp Holdings Limited
+// tab : Tabcorp Holdings Limited
+// https://www.iana.org/domains/root/db/tab.html
tab
-// taipei : 2014-07-10 Taipei City Government
+// taipei : Taipei City Government
+// https://www.iana.org/domains/root/db/taipei.html
taipei
-// talk : 2015-04-09 Amazon Registry Services, Inc.
+// talk : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/talk.html
talk
-// taobao : 2015-01-15 Alibaba Group Holding Limited
+// taobao : Alibaba Group Holding Limited
+// https://www.iana.org/domains/root/db/taobao.html
taobao
-// target : 2015-07-31 Target Domain Holdings, LLC
+// target : Target Domain Holdings, LLC
+// https://www.iana.org/domains/root/db/target.html
target
-// tatamotors : 2015-03-12 Tata Motors Ltd
+// tatamotors : Tata Motors Ltd
+// https://www.iana.org/domains/root/db/tatamotors.html
tatamotors
-// tatar : 2014-04-24 Limited Liability Company "Coordination Center of Regional Domain of Tatarstan Republic"
+// tatar : Limited Liability Company "Coordination Center of Regional Domain of Tatarstan Republic"
+// https://www.iana.org/domains/root/db/tatar.html
tatar
-// tattoo : 2013-08-30 UNR Corp.
+// tattoo : Registry Services, LLC
+// https://www.iana.org/domains/root/db/tattoo.html
tattoo
-// tax : 2014-03-20 Binky Moon, LLC
+// tax : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tax.html
tax
-// taxi : 2015-03-19 Binky Moon, LLC
+// taxi : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/taxi.html
taxi
-// tci : 2014-09-12 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// tci : Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// https://www.iana.org/domains/root/db/tci.html
tci
-// tdk : 2015-06-11 TDK Corporation
+// tdk : TDK Corporation
+// https://www.iana.org/domains/root/db/tdk.html
tdk
-// team : 2015-03-05 Binky Moon, LLC
+// team : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/team.html
team
-// tech : 2015-01-30 Personals TLD Inc.
+// tech : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/tech.html
tech
-// technology : 2013-09-13 Binky Moon, LLC
+// technology : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/technology.html
technology
-// temasek : 2014-08-07 Temasek Holdings (Private) Limited
+// temasek : Temasek Holdings (Private) Limited
+// https://www.iana.org/domains/root/db/temasek.html
temasek
-// tennis : 2014-12-04 Binky Moon, LLC
+// tennis : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tennis.html
tennis
-// teva : 2015-07-02 Teva Pharmaceutical Industries Limited
+// teva : Teva Pharmaceutical Industries Limited
+// https://www.iana.org/domains/root/db/teva.html
teva
-// thd : 2015-04-02 Home Depot Product Authority, LLC
+// thd : Home Depot Product Authority, LLC
+// https://www.iana.org/domains/root/db/thd.html
thd
-// theater : 2015-03-19 Binky Moon, LLC
+// theater : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/theater.html
theater
-// theatre : 2015-05-07 XYZ.COM LLC
+// theatre : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/theatre.html
theatre
-// tiaa : 2015-07-23 Teachers Insurance and Annuity Association of America
+// tiaa : Teachers Insurance and Annuity Association of America
+// https://www.iana.org/domains/root/db/tiaa.html
tiaa
-// tickets : 2015-02-05 Accent Media Limited
+// tickets : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/tickets.html
tickets
-// tienda : 2013-11-14 Binky Moon, LLC
+// tienda : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tienda.html
tienda
-// tiffany : 2015-01-30 Tiffany and Company
-tiffany
-
-// tips : 2013-09-20 Binky Moon, LLC
+// tips : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tips.html
tips
-// tires : 2014-11-07 Binky Moon, LLC
+// tires : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tires.html
tires
-// tirol : 2014-04-24 punkt Tirol GmbH
+// tirol : punkt Tirol GmbH
+// https://www.iana.org/domains/root/db/tirol.html
tirol
-// tjmaxx : 2015-07-16 The TJX Companies, Inc.
+// tjmaxx : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/tjmaxx.html
tjmaxx
-// tjx : 2015-07-16 The TJX Companies, Inc.
+// tjx : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/tjx.html
tjx
-// tkmaxx : 2015-07-16 The TJX Companies, Inc.
+// tkmaxx : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/tkmaxx.html
tkmaxx
-// tmall : 2015-01-15 Alibaba Group Holding Limited
+// tmall : Alibaba Group Holding Limited
+// https://www.iana.org/domains/root/db/tmall.html
tmall
-// today : 2013-09-20 Binky Moon, LLC
+// today : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/today.html
today
-// tokyo : 2013-11-13 GMO Registry, Inc.
+// tokyo : GMO Registry, Inc.
+// https://www.iana.org/domains/root/db/tokyo.html
tokyo
-// tools : 2013-11-21 Binky Moon, LLC
+// tools : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tools.html
tools
-// top : 2014-03-20 .TOP Registry
+// top : .TOP Registry
+// https://www.iana.org/domains/root/db/top.html
top
-// toray : 2014-12-18 Toray Industries, Inc.
+// toray : Toray Industries, Inc.
+// https://www.iana.org/domains/root/db/toray.html
toray
-// toshiba : 2014-04-10 TOSHIBA Corporation
+// toshiba : TOSHIBA Corporation
+// https://www.iana.org/domains/root/db/toshiba.html
toshiba
-// total : 2015-08-06 Total SA
+// total : TotalEnergies SE
+// https://www.iana.org/domains/root/db/total.html
total
-// tours : 2015-01-22 Binky Moon, LLC
+// tours : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/tours.html
tours
-// town : 2014-03-06 Binky Moon, LLC
+// town : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/town.html
town
-// toyota : 2015-04-23 TOYOTA MOTOR CORPORATION
+// toyota : TOYOTA MOTOR CORPORATION
+// https://www.iana.org/domains/root/db/toyota.html
toyota
-// toys : 2014-03-06 Binky Moon, LLC
+// toys : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/toys.html
toys
-// trade : 2014-01-23 Elite Registry Limited
+// trade : Elite Registry Limited
+// https://www.iana.org/domains/root/db/trade.html
trade
-// trading : 2014-12-11 Dottrading Registry Limited
+// trading : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/trading.html
trading
-// training : 2013-11-07 Binky Moon, LLC
+// training : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/training.html
training
-// travel : 2015-10-09 Dog Beach, LLC
+// travel : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/travel.html
travel
-// travelchannel : 2015-07-02 Lifestyle Domain Holdings, Inc.
-travelchannel
-
-// travelers : 2015-03-26 Travelers TLD, LLC
+// travelers : Travelers TLD, LLC
+// https://www.iana.org/domains/root/db/travelers.html
travelers
-// travelersinsurance : 2015-03-26 Travelers TLD, LLC
+// travelersinsurance : Travelers TLD, LLC
+// https://www.iana.org/domains/root/db/travelersinsurance.html
travelersinsurance
-// trust : 2014-10-16 NCC Group Inc.
+// trust : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/trust.html
trust
-// trv : 2015-03-26 Travelers TLD, LLC
+// trv : Travelers TLD, LLC
+// https://www.iana.org/domains/root/db/trv.html
trv
-// tube : 2015-06-11 Latin American Telecom LLC
+// tube : Latin American Telecom LLC
+// https://www.iana.org/domains/root/db/tube.html
tube
-// tui : 2014-07-03 TUI AG
+// tui : TUI AG
+// https://www.iana.org/domains/root/db/tui.html
tui
-// tunes : 2015-02-26 Amazon Registry Services, Inc.
+// tunes : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/tunes.html
tunes
-// tushu : 2014-12-18 Amazon Registry Services, Inc.
+// tushu : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/tushu.html
tushu
-// tvs : 2015-02-19 T V SUNDRAM IYENGAR & SONS LIMITED
+// tvs : T V SUNDRAM IYENGAR & SONS LIMITED
+// https://www.iana.org/domains/root/db/tvs.html
tvs
-// ubank : 2015-08-20 National Australia Bank Limited
+// ubank : National Australia Bank Limited
+// https://www.iana.org/domains/root/db/ubank.html
ubank
-// ubs : 2014-12-11 UBS AG
+// ubs : UBS AG
+// https://www.iana.org/domains/root/db/ubs.html
ubs
-// unicom : 2015-10-15 China United Network Communications Corporation Limited
+// unicom : China United Network Communications Corporation Limited
+// https://www.iana.org/domains/root/db/unicom.html
unicom
-// university : 2014-03-06 Binky Moon, LLC
+// university : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/university.html
university
-// uno : 2013-09-11 DotSite Inc.
+// uno : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/uno.html
uno
-// uol : 2014-05-01 UBN INTERNET LTDA.
+// uol : UBN INTERNET LTDA.
+// https://www.iana.org/domains/root/db/uol.html
uol
-// ups : 2015-06-25 UPS Market Driver, Inc.
+// ups : UPS Market Driver, Inc.
+// https://www.iana.org/domains/root/db/ups.html
ups
-// vacations : 2013-12-05 Binky Moon, LLC
+// vacations : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/vacations.html
vacations
-// vana : 2014-12-11 Lifestyle Domain Holdings, Inc.
+// vana : Internet Naming Company LLC
+// https://www.iana.org/domains/root/db/vana.html
vana
-// vanguard : 2015-09-03 The Vanguard Group, Inc.
+// vanguard : The Vanguard Group, Inc.
+// https://www.iana.org/domains/root/db/vanguard.html
vanguard
-// vegas : 2014-01-16 Dot Vegas, Inc.
+// vegas : Dot Vegas, Inc.
+// https://www.iana.org/domains/root/db/vegas.html
vegas
-// ventures : 2013-08-27 Binky Moon, LLC
+// ventures : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/ventures.html
ventures
-// verisign : 2015-08-13 VeriSign, Inc.
+// verisign : VeriSign, Inc.
+// https://www.iana.org/domains/root/db/verisign.html
verisign
-// versicherung : 2014-03-20 tldbox GmbH
+// versicherung : tldbox GmbH
+// https://www.iana.org/domains/root/db/versicherung.html
versicherung
-// vet : 2014-03-06 Dog Beach, LLC
+// vet : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/vet.html
vet
-// viajes : 2013-10-17 Binky Moon, LLC
+// viajes : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/viajes.html
viajes
-// video : 2014-10-16 Dog Beach, LLC
+// video : Dog Beach, LLC
+// https://www.iana.org/domains/root/db/video.html
video
-// vig : 2015-05-14 VIENNA INSURANCE GROUP AG Wiener Versicherung Gruppe
+// vig : VIENNA INSURANCE GROUP AG Wiener Versicherung Gruppe
+// https://www.iana.org/domains/root/db/vig.html
vig
-// viking : 2015-04-02 Viking River Cruises (Bermuda) Ltd.
+// viking : Viking River Cruises (Bermuda) Ltd.
+// https://www.iana.org/domains/root/db/viking.html
viking
-// villas : 2013-12-05 Binky Moon, LLC
+// villas : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/villas.html
villas
-// vin : 2015-06-18 Binky Moon, LLC
+// vin : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/vin.html
vin
-// vip : 2015-01-22 Minds + Machines Group Limited
+// vip : Registry Services, LLC
+// https://www.iana.org/domains/root/db/vip.html
vip
-// virgin : 2014-09-25 Virgin Enterprises Limited
+// virgin : Virgin Enterprises Limited
+// https://www.iana.org/domains/root/db/virgin.html
virgin
-// visa : 2015-07-30 Visa Worldwide Pte. Limited
+// visa : Visa Worldwide Pte. Limited
+// https://www.iana.org/domains/root/db/visa.html
visa
-// vision : 2013-12-05 Binky Moon, LLC
+// vision : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/vision.html
vision
-// viva : 2014-11-07 Saudi Telecom Company
+// viva : Saudi Telecom Company
+// https://www.iana.org/domains/root/db/viva.html
viva
-// vivo : 2015-07-31 Telefonica Brasil S.A.
+// vivo : Telefonica Brasil S.A.
+// https://www.iana.org/domains/root/db/vivo.html
vivo
-// vlaanderen : 2014-02-06 DNS.be vzw
+// vlaanderen : DNS.be vzw
+// https://www.iana.org/domains/root/db/vlaanderen.html
vlaanderen
-// vodka : 2013-12-19 Minds + Machines Group Limited
+// vodka : Registry Services, LLC
+// https://www.iana.org/domains/root/db/vodka.html
vodka
-// volkswagen : 2015-05-14 Volkswagen Group of America Inc.
-volkswagen
-
-// volvo : 2015-11-12 Volvo Holding Sverige Aktiebolag
+// volvo : Volvo Holding Sverige Aktiebolag
+// https://www.iana.org/domains/root/db/volvo.html
volvo
-// vote : 2013-11-21 Monolith Registry LLC
+// vote : Monolith Registry LLC
+// https://www.iana.org/domains/root/db/vote.html
vote
-// voting : 2013-11-13 Valuetainment Corp.
+// voting : Valuetainment Corp.
+// https://www.iana.org/domains/root/db/voting.html
voting
-// voto : 2013-11-21 Monolith Registry LLC
+// voto : Monolith Registry LLC
+// https://www.iana.org/domains/root/db/voto.html
voto
-// voyage : 2013-08-27 Binky Moon, LLC
+// voyage : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/voyage.html
voyage
-// vuelos : 2015-03-05 Travel Reservations SRL
-vuelos
-
-// wales : 2014-05-08 Nominet UK
+// wales : Nominet UK
+// https://www.iana.org/domains/root/db/wales.html
wales
-// walmart : 2015-07-31 Wal-Mart Stores, Inc.
+// walmart : Wal-Mart Stores, Inc.
+// https://www.iana.org/domains/root/db/walmart.html
walmart
-// walter : 2014-11-13 Sandvik AB
+// walter : Sandvik AB
+// https://www.iana.org/domains/root/db/walter.html
walter
-// wang : 2013-10-24 Zodiac Wang Limited
+// wang : Zodiac Wang Limited
+// https://www.iana.org/domains/root/db/wang.html
wang
-// wanggou : 2014-12-18 Amazon Registry Services, Inc.
+// wanggou : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/wanggou.html
wanggou
-// watch : 2013-11-14 Binky Moon, LLC
+// watch : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/watch.html
watch
-// watches : 2014-12-22 Richemont DNS Inc.
+// watches : Identity Digital Limited
+// https://www.iana.org/domains/root/db/watches.html
watches
-// weather : 2015-01-08 International Business Machines Corporation
+// weather : International Business Machines Corporation
+// https://www.iana.org/domains/root/db/weather.html
weather
-// weatherchannel : 2015-03-12 International Business Machines Corporation
+// weatherchannel : International Business Machines Corporation
+// https://www.iana.org/domains/root/db/weatherchannel.html
weatherchannel
-// webcam : 2014-01-23 dot Webcam Limited
+// webcam : dot Webcam Limited
+// https://www.iana.org/domains/root/db/webcam.html
webcam
-// weber : 2015-06-04 Saint-Gobain Weber SA
+// weber : Saint-Gobain Weber SA
+// https://www.iana.org/domains/root/db/weber.html
weber
-// website : 2014-04-03 DotWebsite Inc.
+// website : Radix FZC DMCC
+// https://www.iana.org/domains/root/db/website.html
website
-// wed : 2013-10-01 Atgron, Inc.
+// wed
+// https://www.iana.org/domains/root/db/wed.html
wed
-// wedding : 2014-04-24 Minds + Machines Group Limited
+// wedding : Registry Services, LLC
+// https://www.iana.org/domains/root/db/wedding.html
wedding
-// weibo : 2015-03-05 Sina Corporation
+// weibo : Sina Corporation
+// https://www.iana.org/domains/root/db/weibo.html
weibo
-// weir : 2015-01-29 Weir Group IP Limited
+// weir : Weir Group IP Limited
+// https://www.iana.org/domains/root/db/weir.html
weir
-// whoswho : 2014-02-20 Who's Who Registry
+// whoswho : Who's Who Registry
+// https://www.iana.org/domains/root/db/whoswho.html
whoswho
-// wien : 2013-10-28 punkt.wien GmbH
+// wien : punkt.wien GmbH
+// https://www.iana.org/domains/root/db/wien.html
wien
-// wiki : 2013-11-07 Top Level Design, LLC
+// wiki : Registry Services, LLC
+// https://www.iana.org/domains/root/db/wiki.html
wiki
-// williamhill : 2014-03-13 William Hill Organization Limited
+// williamhill : William Hill Organization Limited
+// https://www.iana.org/domains/root/db/williamhill.html
williamhill
-// win : 2014-11-20 First Registry Limited
+// win : First Registry Limited
+// https://www.iana.org/domains/root/db/win.html
win
-// windows : 2014-12-18 Microsoft Corporation
+// windows : Microsoft Corporation
+// https://www.iana.org/domains/root/db/windows.html
windows
-// wine : 2015-06-18 Binky Moon, LLC
+// wine : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/wine.html
wine
-// winners : 2015-07-16 The TJX Companies, Inc.
+// winners : The TJX Companies, Inc.
+// https://www.iana.org/domains/root/db/winners.html
winners
-// wme : 2014-02-13 William Morris Endeavor Entertainment, LLC
+// wme : William Morris Endeavor Entertainment, LLC
+// https://www.iana.org/domains/root/db/wme.html
wme
-// wolterskluwer : 2015-08-06 Wolters Kluwer N.V.
+// wolterskluwer : Wolters Kluwer N.V.
+// https://www.iana.org/domains/root/db/wolterskluwer.html
wolterskluwer
-// woodside : 2015-07-09 Woodside Petroleum Limited
+// woodside : Woodside Petroleum Limited
+// https://www.iana.org/domains/root/db/woodside.html
woodside
-// work : 2013-12-19 Minds + Machines Group Limited
+// work : Registry Services, LLC
+// https://www.iana.org/domains/root/db/work.html
work
-// works : 2013-11-14 Binky Moon, LLC
+// works : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/works.html
works
-// world : 2014-06-12 Binky Moon, LLC
+// world : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/world.html
world
-// wow : 2015-10-08 Amazon Registry Services, Inc.
+// wow : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/wow.html
wow
-// wtc : 2013-12-19 World Trade Centers Association, Inc.
+// wtc : World Trade Centers Association, Inc.
+// https://www.iana.org/domains/root/db/wtc.html
wtc
-// wtf : 2014-03-06 Binky Moon, LLC
+// wtf : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/wtf.html
wtf
-// xbox : 2014-12-18 Microsoft Corporation
+// xbox : Microsoft Corporation
+// https://www.iana.org/domains/root/db/xbox.html
xbox
-// xerox : 2014-10-24 Xerox DNHC LLC
+// xerox : Xerox DNHC LLC
+// https://www.iana.org/domains/root/db/xerox.html
xerox
-// xfinity : 2015-07-09 Comcast IP Holdings I, LLC
+// xfinity : Comcast IP Holdings I, LLC
+// https://www.iana.org/domains/root/db/xfinity.html
xfinity
-// xihuan : 2015-01-08 Beijing Qihu Keji Co., Ltd.
+// xihuan : Beijing Qihu Keji Co., Ltd.
+// https://www.iana.org/domains/root/db/xihuan.html
xihuan
-// xin : 2014-12-11 Elegant Leader Limited
+// xin : Elegant Leader Limited
+// https://www.iana.org/domains/root/db/xin.html
xin
-// xn--11b4c3d : 2015-01-15 VeriSign Sarl
+// xn--11b4c3d : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--11b4c3d.html
कॉम
-// xn--1ck2e1b : 2015-02-26 Amazon Registry Services, Inc.
+// xn--1ck2e1b : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--1ck2e1b.html
セール
-// xn--1qqw23a : 2014-01-09 Guangzhou YU Wei Information Technology Co., Ltd.
+// xn--1qqw23a : Guangzhou YU Wei Information Technology Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--1qqw23a.html
佛山
-// xn--30rr7y : 2014-06-12 Excellent First Limited
+// xn--30rr7y : Excellent First Limited
+// https://www.iana.org/domains/root/db/xn--30rr7y.html
慈善
-// xn--3bst00m : 2013-09-13 Eagle Horizon Limited
+// xn--3bst00m : Eagle Horizon Limited
+// https://www.iana.org/domains/root/db/xn--3bst00m.html
集团
-// xn--3ds443g : 2013-09-08 TLD REGISTRY LIMITED OY
+// xn--3ds443g : TLD REGISTRY LIMITED OY
+// https://www.iana.org/domains/root/db/xn--3ds443g.html
在线
-// xn--3oq18vl8pn36a : 2015-07-02 Volkswagen (China) Investment Co., Ltd.
-大众汽车
-
-// xn--3pxu8k : 2015-01-15 VeriSign Sarl
+// xn--3pxu8k : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--3pxu8k.html
点看
-// xn--42c2d9a : 2015-01-15 VeriSign Sarl
+// xn--42c2d9a : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--42c2d9a.html
คอม
-// xn--45q11c : 2013-11-21 Zodiac Gemini Ltd
+// xn--45q11c : Zodiac Gemini Ltd
+// https://www.iana.org/domains/root/db/xn--45q11c.html
八卦
-// xn--4gbrim : 2013-10-04 Fans TLD Limited
+// xn--4gbrim : Helium TLDs Ltd
+// https://www.iana.org/domains/root/db/xn--4gbrim.html
موقع
-// xn--55qw42g : 2013-11-08 China Organizational Name Administration Center
+// xn--55qw42g : China Organizational Name Administration Center
+// https://www.iana.org/domains/root/db/xn--55qw42g.html
公益
-// xn--55qx5d : 2013-11-14 China Internet Network Information Center (CNNIC)
+// xn--55qx5d : China Internet Network Information Center (CNNIC)
+// https://www.iana.org/domains/root/db/xn--55qx5d.html
公司
-// xn--5su34j936bgsg : 2015-09-03 Shangri‐La International Hotel Management Limited
+// xn--5su34j936bgsg : Shangri‐La International Hotel Management Limited
+// https://www.iana.org/domains/root/db/xn--5su34j936bgsg.html
香格里拉
-// xn--5tzm5g : 2014-12-22 Global Website TLD Asia Limited
+// xn--5tzm5g : Global Website TLD Asia Limited
+// https://www.iana.org/domains/root/db/xn--5tzm5g.html
网站
-// xn--6frz82g : 2013-09-23 Afilias Limited
+// xn--6frz82g : Identity Digital Limited
+// https://www.iana.org/domains/root/db/xn--6frz82g.html
移动
-// xn--6qq986b3xl : 2013-09-13 Tycoon Treasure Limited
+// xn--6qq986b3xl : Tycoon Treasure Limited
+// https://www.iana.org/domains/root/db/xn--6qq986b3xl.html
我爱你
-// xn--80adxhks : 2013-12-19 Foundation for Assistance for Internet Technologies and Infrastructure Development (FAITID)
+// xn--80adxhks : Foundation for Assistance for Internet Technologies and Infrastructure Development (FAITID)
+// https://www.iana.org/domains/root/db/xn--80adxhks.html
москва
-// xn--80aqecdr1a : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// xn--80aqecdr1a : Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// https://www.iana.org/domains/root/db/xn--80aqecdr1a.html
католик
-// xn--80asehdb : 2013-07-14 CORE Association
+// xn--80asehdb : CORE Association
+// https://www.iana.org/domains/root/db/xn--80asehdb.html
онлайн
-// xn--80aswg : 2013-07-14 CORE Association
+// xn--80aswg : CORE Association
+// https://www.iana.org/domains/root/db/xn--80aswg.html
сайт
-// xn--8y0a063a : 2015-03-26 China United Network Communications Corporation Limited
+// xn--8y0a063a : China United Network Communications Corporation Limited
+// https://www.iana.org/domains/root/db/xn--8y0a063a.html
联通
-// xn--9dbq2a : 2015-01-15 VeriSign Sarl
+// xn--9dbq2a : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--9dbq2a.html
קום
-// xn--9et52u : 2014-06-12 RISE VICTORY LIMITED
+// xn--9et52u : RISE VICTORY LIMITED
+// https://www.iana.org/domains/root/db/xn--9et52u.html
时尚
-// xn--9krt00a : 2015-03-12 Sina Corporation
+// xn--9krt00a : Sina Corporation
+// https://www.iana.org/domains/root/db/xn--9krt00a.html
微博
-// xn--b4w605ferd : 2014-08-07 Temasek Holdings (Private) Limited
+// xn--b4w605ferd : Temasek Holdings (Private) Limited
+// https://www.iana.org/domains/root/db/xn--b4w605ferd.html
淡马锡
-// xn--bck1b9a5dre4c : 2015-02-26 Amazon Registry Services, Inc.
+// xn--bck1b9a5dre4c : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--bck1b9a5dre4c.html
ファッション
-// xn--c1avg : 2013-11-14 Public Interest Registry
+// xn--c1avg : Public Interest Registry
+// https://www.iana.org/domains/root/db/xn--c1avg.html
орг
-// xn--c2br7g : 2015-01-15 VeriSign Sarl
+// xn--c2br7g : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--c2br7g.html
नेट
-// xn--cck2b3b : 2015-02-26 Amazon Registry Services, Inc.
+// xn--cck2b3b : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--cck2b3b.html
ストア
-// xn--cckwcxetd : 2019-12-19 Amazon Registry Services, Inc.
+// xn--cckwcxetd : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--cckwcxetd.html
アマゾン
-// xn--cg4bki : 2013-09-27 SAMSUNG SDS CO., LTD
+// xn--cg4bki : SAMSUNG SDS CO., LTD
+// https://www.iana.org/domains/root/db/xn--cg4bki.html
삼성
-// xn--czr694b : 2014-01-16 Internet DotTrademark Organisation Limited
+// xn--czr694b : Internet DotTrademark Organisation Limited
+// https://www.iana.org/domains/root/db/xn--czr694b.html
商标
-// xn--czrs0t : 2013-12-19 Binky Moon, LLC
+// xn--czrs0t : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/xn--czrs0t.html
商店
-// xn--czru2d : 2013-11-21 Zodiac Aquarius Limited
+// xn--czru2d : Zodiac Aquarius Limited
+// https://www.iana.org/domains/root/db/xn--czru2d.html
商城
-// xn--d1acj3b : 2013-11-20 The Foundation for Network Initiatives “The Smart Internet”
+// xn--d1acj3b : The Foundation for Network Initiatives “The Smart Internet”
+// https://www.iana.org/domains/root/db/xn--d1acj3b.html
дети
-// xn--eckvdtc9d : 2014-12-18 Amazon Registry Services, Inc.
+// xn--eckvdtc9d : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--eckvdtc9d.html
ポイント
-// xn--efvy88h : 2014-08-22 Guangzhou YU Wei Information Technology Co., Ltd.
+// xn--efvy88h : Guangzhou YU Wei Information Technology Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--efvy88h.html
新闻
-// xn--fct429k : 2015-04-09 Amazon Registry Services, Inc.
+// xn--fct429k : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--fct429k.html
家電
-// xn--fhbei : 2015-01-15 VeriSign Sarl
+// xn--fhbei : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--fhbei.html
كوم
-// xn--fiq228c5hs : 2013-09-08 TLD REGISTRY LIMITED OY
+// xn--fiq228c5hs : TLD REGISTRY LIMITED OY
+// https://www.iana.org/domains/root/db/xn--fiq228c5hs.html
中文网
-// xn--fiq64b : 2013-10-14 CITIC Group Corporation
+// xn--fiq64b : CITIC Group Corporation
+// https://www.iana.org/domains/root/db/xn--fiq64b.html
中信
-// xn--fjq720a : 2014-05-22 Binky Moon, LLC
+// xn--fjq720a : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/xn--fjq720a.html
娱乐
-// xn--flw351e : 2014-07-31 Charleston Road Registry Inc.
+// xn--flw351e : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/xn--flw351e.html
谷歌
-// xn--fzys8d69uvgm : 2015-05-14 PCCW Enterprises Limited
+// xn--fzys8d69uvgm : PCCW Enterprises Limited
+// https://www.iana.org/domains/root/db/xn--fzys8d69uvgm.html
電訊盈科
-// xn--g2xx48c : 2015-01-30 Minds + Machines Group Limited
+// xn--g2xx48c : Nawang Heli(Xiamen) Network Service Co., LTD.
+// https://www.iana.org/domains/root/db/xn--g2xx48c.html
购物
-// xn--gckr3f0f : 2015-02-26 Amazon Registry Services, Inc.
+// xn--gckr3f0f : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--gckr3f0f.html
クラウド
-// xn--gk3at1e : 2015-10-08 Amazon Registry Services, Inc.
+// xn--gk3at1e : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--gk3at1e.html
通販
-// xn--hxt814e : 2014-05-15 Zodiac Taurus Limited
+// xn--hxt814e : Zodiac Taurus Limited
+// https://www.iana.org/domains/root/db/xn--hxt814e.html
网店
-// xn--i1b6b1a6a2e : 2013-11-14 Public Interest Registry
+// xn--i1b6b1a6a2e : Public Interest Registry
+// https://www.iana.org/domains/root/db/xn--i1b6b1a6a2e.html
संगठन
-// xn--imr513n : 2014-12-11 Internet DotTrademark Organisation Limited
+// xn--imr513n : Internet DotTrademark Organisation Limited
+// https://www.iana.org/domains/root/db/xn--imr513n.html
餐厅
-// xn--io0a7i : 2013-11-14 China Internet Network Information Center (CNNIC)
+// xn--io0a7i : China Internet Network Information Center (CNNIC)
+// https://www.iana.org/domains/root/db/xn--io0a7i.html
网络
-// xn--j1aef : 2015-01-15 VeriSign Sarl
+// xn--j1aef : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--j1aef.html
ком
-// xn--jlq480n2rg : 2019-12-19 Amazon Registry Services, Inc.
+// xn--jlq480n2rg : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--jlq480n2rg.html
亚马逊
-// xn--jlq61u9w7b : 2015-01-08 Nokia Corporation
-诺基亚
-
-// xn--jvr189m : 2015-02-26 Amazon Registry Services, Inc.
+// xn--jvr189m : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--jvr189m.html
食品
-// xn--kcrx77d1x4a : 2014-11-07 Koninklijke Philips N.V.
+// xn--kcrx77d1x4a : Koninklijke Philips N.V.
+// https://www.iana.org/domains/root/db/xn--kcrx77d1x4a.html
飞利浦
-// xn--kput3i : 2014-02-13 Beijing RITT-Net Technology Development Co., Ltd
+// xn--kput3i : Beijing RITT-Net Technology Development Co., Ltd
+// https://www.iana.org/domains/root/db/xn--kput3i.html
手机
-// xn--mgba3a3ejt : 2014-11-20 Aramco Services Company
+// xn--mgba3a3ejt : Aramco Services Company
+// https://www.iana.org/domains/root/db/xn--mgba3a3ejt.html
ارامكو
-// xn--mgba7c0bbn0a : 2015-05-14 Crescent Holding GmbH
+// xn--mgba7c0bbn0a : Competrol (Luxembourg) Sarl
+// https://www.iana.org/domains/root/db/xn--mgba7c0bbn0a.html
العليان
-// xn--mgbaakc7dvf : 2015-09-03 Emirates Telecommunications Corporation (trading as Etisalat)
-اتصالات
-
-// xn--mgbab2bd : 2013-10-31 CORE Association
+// xn--mgbab2bd : CORE Association
+// https://www.iana.org/domains/root/db/xn--mgbab2bd.html
بازار
-// xn--mgbca7dzdo : 2015-07-30 Abu Dhabi Systems and Information Centre
+// xn--mgbca7dzdo : Abu Dhabi Systems and Information Centre
+// https://www.iana.org/domains/root/db/xn--mgbca7dzdo.html
ابوظبي
-// xn--mgbi4ecexp : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// xn--mgbi4ecexp : Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// https://www.iana.org/domains/root/db/xn--mgbi4ecexp.html
كاثوليك
-// xn--mgbt3dhd : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// xn--mgbt3dhd : Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
+// https://www.iana.org/domains/root/db/xn--mgbt3dhd.html
همراه
-// xn--mk1bu44c : 2015-01-15 VeriSign Sarl
+// xn--mk1bu44c : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--mk1bu44c.html
닷컴
-// xn--mxtq1m : 2014-03-06 Net-Chinese Co., Ltd.
+// xn--mxtq1m : Net-Chinese Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--mxtq1m.html
政府
-// xn--ngbc5azd : 2013-07-13 International Domain Registry Pty. Ltd.
+// xn--ngbc5azd : International Domain Registry Pty. Ltd.
+// https://www.iana.org/domains/root/db/xn--ngbc5azd.html
شبكة
-// xn--ngbe9e0a : 2014-12-04 Kuwait Finance House
+// xn--ngbe9e0a : Kuwait Finance House
+// https://www.iana.org/domains/root/db/xn--ngbe9e0a.html
بيتك
-// xn--ngbrx : 2015-11-12 League of Arab States
+// xn--ngbrx : League of Arab States
+// https://www.iana.org/domains/root/db/xn--ngbrx.html
عرب
-// xn--nqv7f : 2013-11-14 Public Interest Registry
+// xn--nqv7f : Public Interest Registry
+// https://www.iana.org/domains/root/db/xn--nqv7f.html
机构
-// xn--nqv7fs00ema : 2013-11-14 Public Interest Registry
+// xn--nqv7fs00ema : Public Interest Registry
+// https://www.iana.org/domains/root/db/xn--nqv7fs00ema.html
组织机构
-// xn--nyqy26a : 2014-11-07 Stable Tone Limited
+// xn--nyqy26a : Stable Tone Limited
+// https://www.iana.org/domains/root/db/xn--nyqy26a.html
健康
-// xn--otu796d : 2017-08-06 Jiang Yu Liang Cai Technology Company Limited
+// xn--otu796d : Jiang Yu Liang Cai Technology Company Limited
+// https://www.iana.org/domains/root/db/xn--otu796d.html
招聘
-// xn--p1acf : 2013-12-12 Rusnames Limited
+// xn--p1acf : Rusnames Limited
+// https://www.iana.org/domains/root/db/xn--p1acf.html
рус
-// xn--pssy2u : 2015-01-15 VeriSign Sarl
+// xn--pssy2u : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--pssy2u.html
大拿
-// xn--q9jyb4c : 2013-09-17 Charleston Road Registry Inc.
+// xn--q9jyb4c : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/xn--q9jyb4c.html
みんな
-// xn--qcka1pmc : 2014-07-31 Charleston Road Registry Inc.
+// xn--qcka1pmc : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/xn--qcka1pmc.html
グーグル
-// xn--rhqv96g : 2013-09-11 Stable Tone Limited
+// xn--rhqv96g : Stable Tone Limited
+// https://www.iana.org/domains/root/db/xn--rhqv96g.html
世界
-// xn--rovu88b : 2015-02-26 Amazon Registry Services, Inc.
+// xn--rovu88b : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/xn--rovu88b.html
書籍
-// xn--ses554g : 2014-01-16 KNET Co., Ltd.
+// xn--ses554g : KNET Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--ses554g.html
网址
-// xn--t60b56a : 2015-01-15 VeriSign Sarl
+// xn--t60b56a : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--t60b56a.html
닷넷
-// xn--tckwe : 2015-01-15 VeriSign Sarl
+// xn--tckwe : VeriSign Sarl
+// https://www.iana.org/domains/root/db/xn--tckwe.html
コム
-// xn--tiq49xqyj : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// xn--tiq49xqyj : Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+// https://www.iana.org/domains/root/db/xn--tiq49xqyj.html
天主教
-// xn--unup4y : 2013-07-14 Binky Moon, LLC
+// xn--unup4y : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/xn--unup4y.html
游戏
-// xn--vermgensberater-ctb : 2014-06-23 Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// xn--vermgensberater-ctb : Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// https://www.iana.org/domains/root/db/xn--vermgensberater-ctb.html
vermögensberater
-// xn--vermgensberatung-pwb : 2014-06-23 Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// xn--vermgensberatung-pwb : Deutsche Vermögensberatung Aktiengesellschaft DVAG
+// https://www.iana.org/domains/root/db/xn--vermgensberatung-pwb.html
vermögensberatung
-// xn--vhquv : 2013-08-27 Binky Moon, LLC
+// xn--vhquv : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/xn--vhquv.html
企业
-// xn--vuq861b : 2014-10-16 Beijing Tele-info Network Technology Co., Ltd.
+// xn--vuq861b : Beijing Tele-info Technology Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--vuq861b.html
信息
-// xn--w4r85el8fhu5dnra : 2015-04-30 Kerry Trading Co. Limited
+// xn--w4r85el8fhu5dnra : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/xn--w4r85el8fhu5dnra.html
嘉里大酒店
-// xn--w4rs40l : 2015-07-30 Kerry Trading Co. Limited
+// xn--w4rs40l : Kerry Trading Co. Limited
+// https://www.iana.org/domains/root/db/xn--w4rs40l.html
嘉里
-// xn--xhq521b : 2013-11-14 Guangzhou YU Wei Information Technology Co., Ltd.
+// xn--xhq521b : Guangzhou YU Wei Information Technology Co., Ltd.
+// https://www.iana.org/domains/root/db/xn--xhq521b.html
广东
-// xn--zfr164b : 2013-11-08 China Organizational Name Administration Center
+// xn--zfr164b : China Organizational Name Administration Center
+// https://www.iana.org/domains/root/db/xn--zfr164b.html
政务
-// xyz : 2013-12-05 XYZ.COM LLC
+// xyz : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/xyz.html
xyz
-// yachts : 2014-01-09 DERYachts, LLC
+// yachts : XYZ.COM LLC
+// https://www.iana.org/domains/root/db/yachts.html
yachts
-// yahoo : 2015-04-02 Yahoo! Domain Services Inc.
+// yahoo : Oath Inc.
+// https://www.iana.org/domains/root/db/yahoo.html
yahoo
-// yamaxun : 2014-12-18 Amazon Registry Services, Inc.
+// yamaxun : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/yamaxun.html
yamaxun
-// yandex : 2014-04-10 Yandex Europe B.V.
+// yandex : Yandex Europe B.V.
+// https://www.iana.org/domains/root/db/yandex.html
yandex
-// yodobashi : 2014-11-20 YODOBASHI CAMERA CO.,LTD.
+// yodobashi : YODOBASHI CAMERA CO.,LTD.
+// https://www.iana.org/domains/root/db/yodobashi.html
yodobashi
-// yoga : 2014-05-29 Minds + Machines Group Limited
+// yoga : Registry Services, LLC
+// https://www.iana.org/domains/root/db/yoga.html
yoga
-// yokohama : 2013-12-12 GMO Registry, Inc.
+// yokohama : GMO Registry, Inc.
+// https://www.iana.org/domains/root/db/yokohama.html
yokohama
-// you : 2015-04-09 Amazon Registry Services, Inc.
+// you : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/you.html
you
-// youtube : 2014-05-01 Charleston Road Registry Inc.
+// youtube : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/youtube.html
youtube
-// yun : 2015-01-08 Beijing Qihu Keji Co., Ltd.
+// yun : Beijing Qihu Keji Co., Ltd.
+// https://www.iana.org/domains/root/db/yun.html
yun
-// zappos : 2015-06-25 Amazon Registry Services, Inc.
+// zappos : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/zappos.html
zappos
-// zara : 2014-11-07 Industria de Diseño Textil, S.A. (INDITEX, S.A.)
+// zara : Industria de Diseño Textil, S.A. (INDITEX, S.A.)
+// https://www.iana.org/domains/root/db/zara.html
zara
-// zero : 2014-12-18 Amazon Registry Services, Inc.
+// zero : Amazon Registry Services, Inc.
+// https://www.iana.org/domains/root/db/zero.html
zero
-// zip : 2014-05-08 Charleston Road Registry Inc.
+// zip : Charleston Road Registry Inc.
+// https://www.iana.org/domains/root/db/zip.html
zip
-// zone : 2013-11-14 Binky Moon, LLC
+// zone : Binky Moon, LLC
+// https://www.iana.org/domains/root/db/zone.html
zone
-// zuerich : 2014-11-07 Kanton Zürich (Canton of Zurich)
+// zuerich : Kanton Zürich (Canton of Zurich)
+// https://www.iana.org/domains/root/db/zuerich.html
zuerich
@@ -10662,16 +11218,68 @@ ltd.ua
// 611coin : https://611project.org/
611.to
+// Aaron Marais' Gitlab pages: https://lab.aaronleem.co.za
+// Submitted by Aaron Marais <its_me@aaronleem.co.za>
+graphox.us
+
+// accesso Technology Group, plc. : https://accesso.com/
+// Submitted by accesso Team <accessoecommerce@accesso.com>
+*.devcdnaccesso.com
+
+// Acorn Labs : https://acorn.io
+// Submitted by Craig Jellick <domains@acorn.io>
+*.on-acorn.io
+
+// ActiveTrail: https://www.activetrail.biz/
+// Submitted by Ofer Kalaora <postmaster@activetrail.com>
+activetrail.biz
+
// Adobe : https://www.adobe.com/
-// Submitted by Ian Boston <boston@adobe.com>
+// Submitted by Ian Boston <boston@adobe.com> and Lars Trieloff <trieloff@adobe.com>
adobeaemcloud.com
-adobeaemcloud.net
*.dev.adobeaemcloud.com
+hlx.live
+adobeaemcloud.net
+hlx.page
+hlx3.page
+
+// Adobe Developer Platform : https://developer.adobe.com
+// Submitted by Jesse MacFadyen<jessem@adobe.com>
+adobeio-static.net
+adobeioruntime.net
// Agnat sp. z o.o. : https://domena.pl
// Submitted by Przemyslaw Plewa <it-admin@domena.pl>
beep.pl
+// Airkit : https://www.airkit.com/
+// Submitted by Grant Cooksey <security@airkit.com>
+airkitapps.com
+airkitapps-au.com
+airkitapps.eu
+
+// Aiven: https://aiven.io/
+// Submitted by Etienne Stalmans <security@aiven.io>
+aivencloud.com
+
+// Akamai : https://www.akamai.com/
+// Submitted by Akamai Team <publicsuffixlist@akamai.com>
+akadns.net
+akamai.net
+akamai-staging.net
+akamaiedge.net
+akamaiedge-staging.net
+akamaihd.net
+akamaihd-staging.net
+akamaiorigin.net
+akamaiorigin-staging.net
+akamaized.net
+akamaized-staging.net
+edgekey.net
+edgekey-staging.net
+edgesuite.net
+edgesuite-staging.net
+
// alboto.ca : http://alboto.ca
// Submitted by Anton Avramov <avramov@alboto.ca>
barsy.ca
@@ -10693,105 +11301,697 @@ altervista.org
// Submitted by Cyril <admin@alwaysdata.com>
alwaysdata.net
-// Amazon CloudFront : https://aws.amazon.com/cloudfront/
+// Amaze Software : https://amaze.co
+// Submitted by Domain Admin <domainadmin@amaze.co>
+myamaze.net
+
+// Amazon : https://www.amazon.com/
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Subsections of Amazon/subsidiaries will appear until "concludes" tag
+
+// Amazon API Gateway
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 4d863337-ff98-4501-a6f2-361eba8445d6
+execute-api.cn-north-1.amazonaws.com.cn
+execute-api.cn-northwest-1.amazonaws.com.cn
+execute-api.af-south-1.amazonaws.com
+execute-api.ap-east-1.amazonaws.com
+execute-api.ap-northeast-1.amazonaws.com
+execute-api.ap-northeast-2.amazonaws.com
+execute-api.ap-northeast-3.amazonaws.com
+execute-api.ap-south-1.amazonaws.com
+execute-api.ap-south-2.amazonaws.com
+execute-api.ap-southeast-1.amazonaws.com
+execute-api.ap-southeast-2.amazonaws.com
+execute-api.ap-southeast-3.amazonaws.com
+execute-api.ap-southeast-4.amazonaws.com
+execute-api.ca-central-1.amazonaws.com
+execute-api.eu-central-1.amazonaws.com
+execute-api.eu-central-2.amazonaws.com
+execute-api.eu-north-1.amazonaws.com
+execute-api.eu-south-1.amazonaws.com
+execute-api.eu-south-2.amazonaws.com
+execute-api.eu-west-1.amazonaws.com
+execute-api.eu-west-2.amazonaws.com
+execute-api.eu-west-3.amazonaws.com
+execute-api.il-central-1.amazonaws.com
+execute-api.me-central-1.amazonaws.com
+execute-api.me-south-1.amazonaws.com
+execute-api.sa-east-1.amazonaws.com
+execute-api.us-east-1.amazonaws.com
+execute-api.us-east-2.amazonaws.com
+execute-api.us-gov-east-1.amazonaws.com
+execute-api.us-gov-west-1.amazonaws.com
+execute-api.us-west-1.amazonaws.com
+execute-api.us-west-2.amazonaws.com
+
+// Amazon CloudFront
// Submitted by Donavan Miller <donavanm@amazon.com>
+// Reference: 54144616-fd49-4435-8535-19c6a601bdb3
cloudfront.net
-// Amazon Elastic Compute Cloud : https://aws.amazon.com/ec2/
+// Amazon Cognito
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 7bee1013-f456-47df-bfe8-03c78d946d61
+auth.af-south-1.amazoncognito.com
+auth.ap-northeast-1.amazoncognito.com
+auth.ap-northeast-2.amazoncognito.com
+auth.ap-northeast-3.amazoncognito.com
+auth.ap-south-1.amazoncognito.com
+auth.ap-southeast-1.amazoncognito.com
+auth.ap-southeast-2.amazoncognito.com
+auth.ap-southeast-3.amazoncognito.com
+auth.ca-central-1.amazoncognito.com
+auth.eu-central-1.amazoncognito.com
+auth.eu-north-1.amazoncognito.com
+auth.eu-south-1.amazoncognito.com
+auth.eu-west-1.amazoncognito.com
+auth.eu-west-2.amazoncognito.com
+auth.eu-west-3.amazoncognito.com
+auth.il-central-1.amazoncognito.com
+auth.me-south-1.amazoncognito.com
+auth.sa-east-1.amazoncognito.com
+auth.us-east-1.amazoncognito.com
+auth-fips.us-east-1.amazoncognito.com
+auth.us-east-2.amazoncognito.com
+auth-fips.us-east-2.amazoncognito.com
+auth-fips.us-gov-west-1.amazoncognito.com
+auth.us-west-1.amazoncognito.com
+auth-fips.us-west-1.amazoncognito.com
+auth.us-west-2.amazoncognito.com
+auth-fips.us-west-2.amazoncognito.com
+
+// Amazon EC2
// Submitted by Luke Wells <psl-maintainers@amazon.com>
+// Reference: 4c38fa71-58ac-4768-99e5-689c1767e537
*.compute.amazonaws.com
*.compute-1.amazonaws.com
*.compute.amazonaws.com.cn
us-east-1.amazonaws.com
-// Amazon Elastic Beanstalk : https://aws.amazon.com/elasticbeanstalk/
-// Submitted by Luke Wells <psl-maintainers@amazon.com>
+// Amazon EMR
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 597f3f8e-9283-4e48-8e32-7ee25a1ff6ab
+emrappui-prod.cn-north-1.amazonaws.com.cn
+emrnotebooks-prod.cn-north-1.amazonaws.com.cn
+emrstudio-prod.cn-north-1.amazonaws.com.cn
+emrappui-prod.cn-northwest-1.amazonaws.com.cn
+emrnotebooks-prod.cn-northwest-1.amazonaws.com.cn
+emrstudio-prod.cn-northwest-1.amazonaws.com.cn
+emrappui-prod.af-south-1.amazonaws.com
+emrnotebooks-prod.af-south-1.amazonaws.com
+emrstudio-prod.af-south-1.amazonaws.com
+emrappui-prod.ap-east-1.amazonaws.com
+emrnotebooks-prod.ap-east-1.amazonaws.com
+emrstudio-prod.ap-east-1.amazonaws.com
+emrappui-prod.ap-northeast-1.amazonaws.com
+emrnotebooks-prod.ap-northeast-1.amazonaws.com
+emrstudio-prod.ap-northeast-1.amazonaws.com
+emrappui-prod.ap-northeast-2.amazonaws.com
+emrnotebooks-prod.ap-northeast-2.amazonaws.com
+emrstudio-prod.ap-northeast-2.amazonaws.com
+emrappui-prod.ap-northeast-3.amazonaws.com
+emrnotebooks-prod.ap-northeast-3.amazonaws.com
+emrstudio-prod.ap-northeast-3.amazonaws.com
+emrappui-prod.ap-south-1.amazonaws.com
+emrnotebooks-prod.ap-south-1.amazonaws.com
+emrstudio-prod.ap-south-1.amazonaws.com
+emrappui-prod.ap-southeast-1.amazonaws.com
+emrnotebooks-prod.ap-southeast-1.amazonaws.com
+emrstudio-prod.ap-southeast-1.amazonaws.com
+emrappui-prod.ap-southeast-2.amazonaws.com
+emrnotebooks-prod.ap-southeast-2.amazonaws.com
+emrstudio-prod.ap-southeast-2.amazonaws.com
+emrappui-prod.ap-southeast-3.amazonaws.com
+emrnotebooks-prod.ap-southeast-3.amazonaws.com
+emrstudio-prod.ap-southeast-3.amazonaws.com
+emrappui-prod.ca-central-1.amazonaws.com
+emrnotebooks-prod.ca-central-1.amazonaws.com
+emrstudio-prod.ca-central-1.amazonaws.com
+emrappui-prod.eu-central-1.amazonaws.com
+emrnotebooks-prod.eu-central-1.amazonaws.com
+emrstudio-prod.eu-central-1.amazonaws.com
+emrappui-prod.eu-north-1.amazonaws.com
+emrnotebooks-prod.eu-north-1.amazonaws.com
+emrstudio-prod.eu-north-1.amazonaws.com
+emrappui-prod.eu-south-1.amazonaws.com
+emrnotebooks-prod.eu-south-1.amazonaws.com
+emrstudio-prod.eu-south-1.amazonaws.com
+emrappui-prod.eu-west-1.amazonaws.com
+emrnotebooks-prod.eu-west-1.amazonaws.com
+emrstudio-prod.eu-west-1.amazonaws.com
+emrappui-prod.eu-west-2.amazonaws.com
+emrnotebooks-prod.eu-west-2.amazonaws.com
+emrstudio-prod.eu-west-2.amazonaws.com
+emrappui-prod.eu-west-3.amazonaws.com
+emrnotebooks-prod.eu-west-3.amazonaws.com
+emrstudio-prod.eu-west-3.amazonaws.com
+emrappui-prod.me-central-1.amazonaws.com
+emrnotebooks-prod.me-central-1.amazonaws.com
+emrstudio-prod.me-central-1.amazonaws.com
+emrappui-prod.me-south-1.amazonaws.com
+emrnotebooks-prod.me-south-1.amazonaws.com
+emrstudio-prod.me-south-1.amazonaws.com
+emrappui-prod.sa-east-1.amazonaws.com
+emrnotebooks-prod.sa-east-1.amazonaws.com
+emrstudio-prod.sa-east-1.amazonaws.com
+emrappui-prod.us-east-1.amazonaws.com
+emrnotebooks-prod.us-east-1.amazonaws.com
+emrstudio-prod.us-east-1.amazonaws.com
+emrappui-prod.us-east-2.amazonaws.com
+emrnotebooks-prod.us-east-2.amazonaws.com
+emrstudio-prod.us-east-2.amazonaws.com
+emrappui-prod.us-gov-east-1.amazonaws.com
+emrnotebooks-prod.us-gov-east-1.amazonaws.com
+emrstudio-prod.us-gov-east-1.amazonaws.com
+emrappui-prod.us-gov-west-1.amazonaws.com
+emrnotebooks-prod.us-gov-west-1.amazonaws.com
+emrstudio-prod.us-gov-west-1.amazonaws.com
+emrappui-prod.us-west-1.amazonaws.com
+emrnotebooks-prod.us-west-1.amazonaws.com
+emrstudio-prod.us-west-1.amazonaws.com
+emrappui-prod.us-west-2.amazonaws.com
+emrnotebooks-prod.us-west-2.amazonaws.com
+emrstudio-prod.us-west-2.amazonaws.com
+
+// Amazon Managed Workflows for Apache Airflow
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 4ab55e6f-90c0-4a8d-b6a0-52ca5dbb1c2e
+*.cn-north-1.airflow.amazonaws.com.cn
+*.cn-northwest-1.airflow.amazonaws.com.cn
+*.ap-northeast-1.airflow.amazonaws.com
+*.ap-northeast-2.airflow.amazonaws.com
+*.ap-south-1.airflow.amazonaws.com
+*.ap-southeast-1.airflow.amazonaws.com
+*.ap-southeast-2.airflow.amazonaws.com
+*.ca-central-1.airflow.amazonaws.com
+*.eu-central-1.airflow.amazonaws.com
+*.eu-north-1.airflow.amazonaws.com
+*.eu-west-1.airflow.amazonaws.com
+*.eu-west-2.airflow.amazonaws.com
+*.eu-west-3.airflow.amazonaws.com
+*.sa-east-1.airflow.amazonaws.com
+*.us-east-1.airflow.amazonaws.com
+*.us-east-2.airflow.amazonaws.com
+*.us-west-2.airflow.amazonaws.com
+
+// Amazon S3
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 0e801048-08f2-4064-9cb8-e7373e0b57f4
+s3.dualstack.cn-north-1.amazonaws.com.cn
+s3-accesspoint.dualstack.cn-north-1.amazonaws.com.cn
+s3-website.dualstack.cn-north-1.amazonaws.com.cn
+s3.cn-north-1.amazonaws.com.cn
+s3-accesspoint.cn-north-1.amazonaws.com.cn
+s3-deprecated.cn-north-1.amazonaws.com.cn
+s3-object-lambda.cn-north-1.amazonaws.com.cn
+s3-website.cn-north-1.amazonaws.com.cn
+s3.dualstack.cn-northwest-1.amazonaws.com.cn
+s3-accesspoint.dualstack.cn-northwest-1.amazonaws.com.cn
+s3.cn-northwest-1.amazonaws.com.cn
+s3-accesspoint.cn-northwest-1.amazonaws.com.cn
+s3-object-lambda.cn-northwest-1.amazonaws.com.cn
+s3-website.cn-northwest-1.amazonaws.com.cn
+s3.dualstack.af-south-1.amazonaws.com
+s3-accesspoint.dualstack.af-south-1.amazonaws.com
+s3-website.dualstack.af-south-1.amazonaws.com
+s3.af-south-1.amazonaws.com
+s3-accesspoint.af-south-1.amazonaws.com
+s3-object-lambda.af-south-1.amazonaws.com
+s3-website.af-south-1.amazonaws.com
+s3.dualstack.ap-east-1.amazonaws.com
+s3-accesspoint.dualstack.ap-east-1.amazonaws.com
+s3.ap-east-1.amazonaws.com
+s3-accesspoint.ap-east-1.amazonaws.com
+s3-object-lambda.ap-east-1.amazonaws.com
+s3-website.ap-east-1.amazonaws.com
+s3.dualstack.ap-northeast-1.amazonaws.com
+s3-accesspoint.dualstack.ap-northeast-1.amazonaws.com
+s3-website.dualstack.ap-northeast-1.amazonaws.com
+s3.ap-northeast-1.amazonaws.com
+s3-accesspoint.ap-northeast-1.amazonaws.com
+s3-object-lambda.ap-northeast-1.amazonaws.com
+s3-website.ap-northeast-1.amazonaws.com
+s3.dualstack.ap-northeast-2.amazonaws.com
+s3-accesspoint.dualstack.ap-northeast-2.amazonaws.com
+s3-website.dualstack.ap-northeast-2.amazonaws.com
+s3.ap-northeast-2.amazonaws.com
+s3-accesspoint.ap-northeast-2.amazonaws.com
+s3-object-lambda.ap-northeast-2.amazonaws.com
+s3-website.ap-northeast-2.amazonaws.com
+s3.dualstack.ap-northeast-3.amazonaws.com
+s3-accesspoint.dualstack.ap-northeast-3.amazonaws.com
+s3-website.dualstack.ap-northeast-3.amazonaws.com
+s3.ap-northeast-3.amazonaws.com
+s3-accesspoint.ap-northeast-3.amazonaws.com
+s3-object-lambda.ap-northeast-3.amazonaws.com
+s3-website.ap-northeast-3.amazonaws.com
+s3.dualstack.ap-south-1.amazonaws.com
+s3-accesspoint.dualstack.ap-south-1.amazonaws.com
+s3-website.dualstack.ap-south-1.amazonaws.com
+s3.ap-south-1.amazonaws.com
+s3-accesspoint.ap-south-1.amazonaws.com
+s3-object-lambda.ap-south-1.amazonaws.com
+s3-website.ap-south-1.amazonaws.com
+s3.dualstack.ap-south-2.amazonaws.com
+s3-accesspoint.dualstack.ap-south-2.amazonaws.com
+s3.ap-south-2.amazonaws.com
+s3-accesspoint.ap-south-2.amazonaws.com
+s3-object-lambda.ap-south-2.amazonaws.com
+s3-website.ap-south-2.amazonaws.com
+s3.dualstack.ap-southeast-1.amazonaws.com
+s3-accesspoint.dualstack.ap-southeast-1.amazonaws.com
+s3-website.dualstack.ap-southeast-1.amazonaws.com
+s3.ap-southeast-1.amazonaws.com
+s3-accesspoint.ap-southeast-1.amazonaws.com
+s3-object-lambda.ap-southeast-1.amazonaws.com
+s3-website.ap-southeast-1.amazonaws.com
+s3.dualstack.ap-southeast-2.amazonaws.com
+s3-accesspoint.dualstack.ap-southeast-2.amazonaws.com
+s3-website.dualstack.ap-southeast-2.amazonaws.com
+s3.ap-southeast-2.amazonaws.com
+s3-accesspoint.ap-southeast-2.amazonaws.com
+s3-object-lambda.ap-southeast-2.amazonaws.com
+s3-website.ap-southeast-2.amazonaws.com
+s3.dualstack.ap-southeast-3.amazonaws.com
+s3-accesspoint.dualstack.ap-southeast-3.amazonaws.com
+s3.ap-southeast-3.amazonaws.com
+s3-accesspoint.ap-southeast-3.amazonaws.com
+s3-object-lambda.ap-southeast-3.amazonaws.com
+s3-website.ap-southeast-3.amazonaws.com
+s3.dualstack.ap-southeast-4.amazonaws.com
+s3-accesspoint.dualstack.ap-southeast-4.amazonaws.com
+s3.ap-southeast-4.amazonaws.com
+s3-accesspoint.ap-southeast-4.amazonaws.com
+s3-object-lambda.ap-southeast-4.amazonaws.com
+s3-website.ap-southeast-4.amazonaws.com
+s3.dualstack.ca-central-1.amazonaws.com
+s3-accesspoint.dualstack.ca-central-1.amazonaws.com
+s3-accesspoint-fips.dualstack.ca-central-1.amazonaws.com
+s3-fips.dualstack.ca-central-1.amazonaws.com
+s3-website.dualstack.ca-central-1.amazonaws.com
+s3.ca-central-1.amazonaws.com
+s3-accesspoint.ca-central-1.amazonaws.com
+s3-accesspoint-fips.ca-central-1.amazonaws.com
+s3-fips.ca-central-1.amazonaws.com
+s3-object-lambda.ca-central-1.amazonaws.com
+s3-website.ca-central-1.amazonaws.com
+s3.dualstack.eu-central-1.amazonaws.com
+s3-accesspoint.dualstack.eu-central-1.amazonaws.com
+s3-website.dualstack.eu-central-1.amazonaws.com
+s3.eu-central-1.amazonaws.com
+s3-accesspoint.eu-central-1.amazonaws.com
+s3-object-lambda.eu-central-1.amazonaws.com
+s3-website.eu-central-1.amazonaws.com
+s3.dualstack.eu-central-2.amazonaws.com
+s3-accesspoint.dualstack.eu-central-2.amazonaws.com
+s3.eu-central-2.amazonaws.com
+s3-accesspoint.eu-central-2.amazonaws.com
+s3-object-lambda.eu-central-2.amazonaws.com
+s3-website.eu-central-2.amazonaws.com
+s3.dualstack.eu-north-1.amazonaws.com
+s3-accesspoint.dualstack.eu-north-1.amazonaws.com
+s3.eu-north-1.amazonaws.com
+s3-accesspoint.eu-north-1.amazonaws.com
+s3-object-lambda.eu-north-1.amazonaws.com
+s3-website.eu-north-1.amazonaws.com
+s3.dualstack.eu-south-1.amazonaws.com
+s3-accesspoint.dualstack.eu-south-1.amazonaws.com
+s3-website.dualstack.eu-south-1.amazonaws.com
+s3.eu-south-1.amazonaws.com
+s3-accesspoint.eu-south-1.amazonaws.com
+s3-object-lambda.eu-south-1.amazonaws.com
+s3-website.eu-south-1.amazonaws.com
+s3.dualstack.eu-south-2.amazonaws.com
+s3-accesspoint.dualstack.eu-south-2.amazonaws.com
+s3.eu-south-2.amazonaws.com
+s3-accesspoint.eu-south-2.amazonaws.com
+s3-object-lambda.eu-south-2.amazonaws.com
+s3-website.eu-south-2.amazonaws.com
+s3.dualstack.eu-west-1.amazonaws.com
+s3-accesspoint.dualstack.eu-west-1.amazonaws.com
+s3-website.dualstack.eu-west-1.amazonaws.com
+s3.eu-west-1.amazonaws.com
+s3-accesspoint.eu-west-1.amazonaws.com
+s3-deprecated.eu-west-1.amazonaws.com
+s3-object-lambda.eu-west-1.amazonaws.com
+s3-website.eu-west-1.amazonaws.com
+s3.dualstack.eu-west-2.amazonaws.com
+s3-accesspoint.dualstack.eu-west-2.amazonaws.com
+s3.eu-west-2.amazonaws.com
+s3-accesspoint.eu-west-2.amazonaws.com
+s3-object-lambda.eu-west-2.amazonaws.com
+s3-website.eu-west-2.amazonaws.com
+s3.dualstack.eu-west-3.amazonaws.com
+s3-accesspoint.dualstack.eu-west-3.amazonaws.com
+s3-website.dualstack.eu-west-3.amazonaws.com
+s3.eu-west-3.amazonaws.com
+s3-accesspoint.eu-west-3.amazonaws.com
+s3-object-lambda.eu-west-3.amazonaws.com
+s3-website.eu-west-3.amazonaws.com
+s3.dualstack.il-central-1.amazonaws.com
+s3-accesspoint.dualstack.il-central-1.amazonaws.com
+s3.il-central-1.amazonaws.com
+s3-accesspoint.il-central-1.amazonaws.com
+s3-object-lambda.il-central-1.amazonaws.com
+s3-website.il-central-1.amazonaws.com
+s3.dualstack.me-central-1.amazonaws.com
+s3-accesspoint.dualstack.me-central-1.amazonaws.com
+s3.me-central-1.amazonaws.com
+s3-accesspoint.me-central-1.amazonaws.com
+s3-object-lambda.me-central-1.amazonaws.com
+s3-website.me-central-1.amazonaws.com
+s3.dualstack.me-south-1.amazonaws.com
+s3-accesspoint.dualstack.me-south-1.amazonaws.com
+s3.me-south-1.amazonaws.com
+s3-accesspoint.me-south-1.amazonaws.com
+s3-object-lambda.me-south-1.amazonaws.com
+s3-website.me-south-1.amazonaws.com
+s3.amazonaws.com
+s3-1.amazonaws.com
+s3-ap-east-1.amazonaws.com
+s3-ap-northeast-1.amazonaws.com
+s3-ap-northeast-2.amazonaws.com
+s3-ap-northeast-3.amazonaws.com
+s3-ap-south-1.amazonaws.com
+s3-ap-southeast-1.amazonaws.com
+s3-ap-southeast-2.amazonaws.com
+s3-ca-central-1.amazonaws.com
+s3-eu-central-1.amazonaws.com
+s3-eu-north-1.amazonaws.com
+s3-eu-west-1.amazonaws.com
+s3-eu-west-2.amazonaws.com
+s3-eu-west-3.amazonaws.com
+s3-external-1.amazonaws.com
+s3-fips-us-gov-east-1.amazonaws.com
+s3-fips-us-gov-west-1.amazonaws.com
+mrap.accesspoint.s3-global.amazonaws.com
+s3-me-south-1.amazonaws.com
+s3-sa-east-1.amazonaws.com
+s3-us-east-2.amazonaws.com
+s3-us-gov-east-1.amazonaws.com
+s3-us-gov-west-1.amazonaws.com
+s3-us-west-1.amazonaws.com
+s3-us-west-2.amazonaws.com
+s3-website-ap-northeast-1.amazonaws.com
+s3-website-ap-southeast-1.amazonaws.com
+s3-website-ap-southeast-2.amazonaws.com
+s3-website-eu-west-1.amazonaws.com
+s3-website-sa-east-1.amazonaws.com
+s3-website-us-east-1.amazonaws.com
+s3-website-us-gov-west-1.amazonaws.com
+s3-website-us-west-1.amazonaws.com
+s3-website-us-west-2.amazonaws.com
+s3.dualstack.sa-east-1.amazonaws.com
+s3-accesspoint.dualstack.sa-east-1.amazonaws.com
+s3-website.dualstack.sa-east-1.amazonaws.com
+s3.sa-east-1.amazonaws.com
+s3-accesspoint.sa-east-1.amazonaws.com
+s3-object-lambda.sa-east-1.amazonaws.com
+s3-website.sa-east-1.amazonaws.com
+s3.dualstack.us-east-1.amazonaws.com
+s3-accesspoint.dualstack.us-east-1.amazonaws.com
+s3-accesspoint-fips.dualstack.us-east-1.amazonaws.com
+s3-fips.dualstack.us-east-1.amazonaws.com
+s3-website.dualstack.us-east-1.amazonaws.com
+s3.us-east-1.amazonaws.com
+s3-accesspoint.us-east-1.amazonaws.com
+s3-accesspoint-fips.us-east-1.amazonaws.com
+s3-deprecated.us-east-1.amazonaws.com
+s3-fips.us-east-1.amazonaws.com
+s3-object-lambda.us-east-1.amazonaws.com
+s3-website.us-east-1.amazonaws.com
+s3.dualstack.us-east-2.amazonaws.com
+s3-accesspoint.dualstack.us-east-2.amazonaws.com
+s3-accesspoint-fips.dualstack.us-east-2.amazonaws.com
+s3-fips.dualstack.us-east-2.amazonaws.com
+s3.us-east-2.amazonaws.com
+s3-accesspoint.us-east-2.amazonaws.com
+s3-accesspoint-fips.us-east-2.amazonaws.com
+s3-deprecated.us-east-2.amazonaws.com
+s3-fips.us-east-2.amazonaws.com
+s3-object-lambda.us-east-2.amazonaws.com
+s3-website.us-east-2.amazonaws.com
+s3.dualstack.us-gov-east-1.amazonaws.com
+s3-accesspoint.dualstack.us-gov-east-1.amazonaws.com
+s3-accesspoint-fips.dualstack.us-gov-east-1.amazonaws.com
+s3-fips.dualstack.us-gov-east-1.amazonaws.com
+s3.us-gov-east-1.amazonaws.com
+s3-accesspoint.us-gov-east-1.amazonaws.com
+s3-accesspoint-fips.us-gov-east-1.amazonaws.com
+s3-fips.us-gov-east-1.amazonaws.com
+s3-object-lambda.us-gov-east-1.amazonaws.com
+s3-website.us-gov-east-1.amazonaws.com
+s3.dualstack.us-gov-west-1.amazonaws.com
+s3-accesspoint.dualstack.us-gov-west-1.amazonaws.com
+s3-accesspoint-fips.dualstack.us-gov-west-1.amazonaws.com
+s3-fips.dualstack.us-gov-west-1.amazonaws.com
+s3.us-gov-west-1.amazonaws.com
+s3-accesspoint.us-gov-west-1.amazonaws.com
+s3-accesspoint-fips.us-gov-west-1.amazonaws.com
+s3-fips.us-gov-west-1.amazonaws.com
+s3-object-lambda.us-gov-west-1.amazonaws.com
+s3-website.us-gov-west-1.amazonaws.com
+s3.dualstack.us-west-1.amazonaws.com
+s3-accesspoint.dualstack.us-west-1.amazonaws.com
+s3-accesspoint-fips.dualstack.us-west-1.amazonaws.com
+s3-fips.dualstack.us-west-1.amazonaws.com
+s3-website.dualstack.us-west-1.amazonaws.com
+s3.us-west-1.amazonaws.com
+s3-accesspoint.us-west-1.amazonaws.com
+s3-accesspoint-fips.us-west-1.amazonaws.com
+s3-fips.us-west-1.amazonaws.com
+s3-object-lambda.us-west-1.amazonaws.com
+s3-website.us-west-1.amazonaws.com
+s3.dualstack.us-west-2.amazonaws.com
+s3-accesspoint.dualstack.us-west-2.amazonaws.com
+s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com
+s3-fips.dualstack.us-west-2.amazonaws.com
+s3-website.dualstack.us-west-2.amazonaws.com
+s3.us-west-2.amazonaws.com
+s3-accesspoint.us-west-2.amazonaws.com
+s3-accesspoint-fips.us-west-2.amazonaws.com
+s3-deprecated.us-west-2.amazonaws.com
+s3-fips.us-west-2.amazonaws.com
+s3-object-lambda.us-west-2.amazonaws.com
+s3-website.us-west-2.amazonaws.com
+
+// Amazon SageMaker Notebook Instances
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: fe8c9e94-5a22-486d-8750-991a3a9b13c6
+notebook.af-south-1.sagemaker.aws
+notebook.ap-east-1.sagemaker.aws
+notebook.ap-northeast-1.sagemaker.aws
+notebook.ap-northeast-2.sagemaker.aws
+notebook.ap-northeast-3.sagemaker.aws
+notebook.ap-south-1.sagemaker.aws
+notebook.ap-south-2.sagemaker.aws
+notebook.ap-southeast-1.sagemaker.aws
+notebook.ap-southeast-2.sagemaker.aws
+notebook.ap-southeast-3.sagemaker.aws
+notebook.ap-southeast-4.sagemaker.aws
+notebook.ca-central-1.sagemaker.aws
+notebook.eu-central-1.sagemaker.aws
+notebook.eu-central-2.sagemaker.aws
+notebook.eu-north-1.sagemaker.aws
+notebook.eu-south-1.sagemaker.aws
+notebook.eu-south-2.sagemaker.aws
+notebook.eu-west-1.sagemaker.aws
+notebook.eu-west-2.sagemaker.aws
+notebook.eu-west-3.sagemaker.aws
+notebook.il-central-1.sagemaker.aws
+notebook.me-central-1.sagemaker.aws
+notebook.me-south-1.sagemaker.aws
+notebook.sa-east-1.sagemaker.aws
+notebook.us-east-1.sagemaker.aws
+notebook-fips.us-east-1.sagemaker.aws
+notebook.us-east-2.sagemaker.aws
+notebook-fips.us-east-2.sagemaker.aws
+notebook.us-gov-east-1.sagemaker.aws
+notebook-fips.us-gov-east-1.sagemaker.aws
+notebook.us-gov-west-1.sagemaker.aws
+notebook-fips.us-gov-west-1.sagemaker.aws
+notebook.us-west-1.sagemaker.aws
+notebook.us-west-2.sagemaker.aws
+notebook-fips.us-west-2.sagemaker.aws
+notebook.cn-north-1.sagemaker.com.cn
+notebook.cn-northwest-1.sagemaker.com.cn
+
+// Amazon SageMaker Studio
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 057ee397-6bf8-4f20-b807-d7bc145ac980
+studio.af-south-1.sagemaker.aws
+studio.ap-east-1.sagemaker.aws
+studio.ap-northeast-1.sagemaker.aws
+studio.ap-northeast-2.sagemaker.aws
+studio.ap-northeast-3.sagemaker.aws
+studio.ap-south-1.sagemaker.aws
+studio.ap-southeast-1.sagemaker.aws
+studio.ap-southeast-2.sagemaker.aws
+studio.ap-southeast-3.sagemaker.aws
+studio.ca-central-1.sagemaker.aws
+studio.eu-central-1.sagemaker.aws
+studio.eu-north-1.sagemaker.aws
+studio.eu-south-1.sagemaker.aws
+studio.eu-west-1.sagemaker.aws
+studio.eu-west-2.sagemaker.aws
+studio.eu-west-3.sagemaker.aws
+studio.il-central-1.sagemaker.aws
+studio.me-central-1.sagemaker.aws
+studio.me-south-1.sagemaker.aws
+studio.sa-east-1.sagemaker.aws
+studio.us-east-1.sagemaker.aws
+studio.us-east-2.sagemaker.aws
+studio.us-gov-east-1.sagemaker.aws
+studio-fips.us-gov-east-1.sagemaker.aws
+studio.us-gov-west-1.sagemaker.aws
+studio-fips.us-gov-west-1.sagemaker.aws
+studio.us-west-1.sagemaker.aws
+studio.us-west-2.sagemaker.aws
+studio.cn-north-1.sagemaker.com.cn
+studio.cn-northwest-1.sagemaker.com.cn
+
+// Analytics on AWS
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 955f9f40-a495-4e73-ae85-67b77ac9cadd
+analytics-gateway.ap-northeast-1.amazonaws.com
+analytics-gateway.ap-northeast-2.amazonaws.com
+analytics-gateway.ap-south-1.amazonaws.com
+analytics-gateway.ap-southeast-1.amazonaws.com
+analytics-gateway.ap-southeast-2.amazonaws.com
+analytics-gateway.eu-central-1.amazonaws.com
+analytics-gateway.eu-west-1.amazonaws.com
+analytics-gateway.us-east-1.amazonaws.com
+analytics-gateway.us-east-2.amazonaws.com
+analytics-gateway.us-west-2.amazonaws.com
+
+// AWS Amplify
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 5ecce854-c033-4fc4-a755-1a9916d9a9bb
+*.amplifyapp.com
+
+// AWS App Runner
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: 6828c008-ba5d-442f-ade5-48da4e7c2316
+*.awsapprunner.com
+
+// AWS Cloud9
+// Submitted by: AWS Security <psl-maintainers@amazon.com>
+// Reference: 05c44955-977c-4b57-938a-f2af92733f9f
+webview-assets.aws-cloud9.af-south-1.amazonaws.com
+vfs.cloud9.af-south-1.amazonaws.com
+webview-assets.cloud9.af-south-1.amazonaws.com
+webview-assets.aws-cloud9.ap-east-1.amazonaws.com
+vfs.cloud9.ap-east-1.amazonaws.com
+webview-assets.cloud9.ap-east-1.amazonaws.com
+webview-assets.aws-cloud9.ap-northeast-1.amazonaws.com
+vfs.cloud9.ap-northeast-1.amazonaws.com
+webview-assets.cloud9.ap-northeast-1.amazonaws.com
+webview-assets.aws-cloud9.ap-northeast-2.amazonaws.com
+vfs.cloud9.ap-northeast-2.amazonaws.com
+webview-assets.cloud9.ap-northeast-2.amazonaws.com
+webview-assets.aws-cloud9.ap-northeast-3.amazonaws.com
+vfs.cloud9.ap-northeast-3.amazonaws.com
+webview-assets.cloud9.ap-northeast-3.amazonaws.com
+webview-assets.aws-cloud9.ap-south-1.amazonaws.com
+vfs.cloud9.ap-south-1.amazonaws.com
+webview-assets.cloud9.ap-south-1.amazonaws.com
+webview-assets.aws-cloud9.ap-southeast-1.amazonaws.com
+vfs.cloud9.ap-southeast-1.amazonaws.com
+webview-assets.cloud9.ap-southeast-1.amazonaws.com
+webview-assets.aws-cloud9.ap-southeast-2.amazonaws.com
+vfs.cloud9.ap-southeast-2.amazonaws.com
+webview-assets.cloud9.ap-southeast-2.amazonaws.com
+webview-assets.aws-cloud9.ca-central-1.amazonaws.com
+vfs.cloud9.ca-central-1.amazonaws.com
+webview-assets.cloud9.ca-central-1.amazonaws.com
+webview-assets.aws-cloud9.eu-central-1.amazonaws.com
+vfs.cloud9.eu-central-1.amazonaws.com
+webview-assets.cloud9.eu-central-1.amazonaws.com
+webview-assets.aws-cloud9.eu-north-1.amazonaws.com
+vfs.cloud9.eu-north-1.amazonaws.com
+webview-assets.cloud9.eu-north-1.amazonaws.com
+webview-assets.aws-cloud9.eu-south-1.amazonaws.com
+vfs.cloud9.eu-south-1.amazonaws.com
+webview-assets.cloud9.eu-south-1.amazonaws.com
+webview-assets.aws-cloud9.eu-west-1.amazonaws.com
+vfs.cloud9.eu-west-1.amazonaws.com
+webview-assets.cloud9.eu-west-1.amazonaws.com
+webview-assets.aws-cloud9.eu-west-2.amazonaws.com
+vfs.cloud9.eu-west-2.amazonaws.com
+webview-assets.cloud9.eu-west-2.amazonaws.com
+webview-assets.aws-cloud9.eu-west-3.amazonaws.com
+vfs.cloud9.eu-west-3.amazonaws.com
+webview-assets.cloud9.eu-west-3.amazonaws.com
+webview-assets.aws-cloud9.me-south-1.amazonaws.com
+vfs.cloud9.me-south-1.amazonaws.com
+webview-assets.cloud9.me-south-1.amazonaws.com
+webview-assets.aws-cloud9.sa-east-1.amazonaws.com
+vfs.cloud9.sa-east-1.amazonaws.com
+webview-assets.cloud9.sa-east-1.amazonaws.com
+webview-assets.aws-cloud9.us-east-1.amazonaws.com
+vfs.cloud9.us-east-1.amazonaws.com
+webview-assets.cloud9.us-east-1.amazonaws.com
+webview-assets.aws-cloud9.us-east-2.amazonaws.com
+vfs.cloud9.us-east-2.amazonaws.com
+webview-assets.cloud9.us-east-2.amazonaws.com
+webview-assets.aws-cloud9.us-west-1.amazonaws.com
+vfs.cloud9.us-west-1.amazonaws.com
+webview-assets.cloud9.us-west-1.amazonaws.com
+webview-assets.aws-cloud9.us-west-2.amazonaws.com
+vfs.cloud9.us-west-2.amazonaws.com
+webview-assets.cloud9.us-west-2.amazonaws.com
+
+// AWS Elastic Beanstalk
+// Submitted by AWS Security <psl-maintainers@amazon.com>
+// Reference: bb5a965c-dec3-4967-aa22-e306ad064797
cn-north-1.eb.amazonaws.com.cn
cn-northwest-1.eb.amazonaws.com.cn
elasticbeanstalk.com
+af-south-1.elasticbeanstalk.com
+ap-east-1.elasticbeanstalk.com
ap-northeast-1.elasticbeanstalk.com
ap-northeast-2.elasticbeanstalk.com
ap-northeast-3.elasticbeanstalk.com
ap-south-1.elasticbeanstalk.com
ap-southeast-1.elasticbeanstalk.com
ap-southeast-2.elasticbeanstalk.com
+ap-southeast-3.elasticbeanstalk.com
ca-central-1.elasticbeanstalk.com
eu-central-1.elasticbeanstalk.com
+eu-north-1.elasticbeanstalk.com
+eu-south-1.elasticbeanstalk.com
eu-west-1.elasticbeanstalk.com
eu-west-2.elasticbeanstalk.com
eu-west-3.elasticbeanstalk.com
+il-central-1.elasticbeanstalk.com
+me-south-1.elasticbeanstalk.com
sa-east-1.elasticbeanstalk.com
us-east-1.elasticbeanstalk.com
us-east-2.elasticbeanstalk.com
+us-gov-east-1.elasticbeanstalk.com
us-gov-west-1.elasticbeanstalk.com
us-west-1.elasticbeanstalk.com
us-west-2.elasticbeanstalk.com
-// Amazon Elastic Load Balancing : https://aws.amazon.com/elasticloadbalancing/
+// (AWS) Elastic Load Balancing
// Submitted by Luke Wells <psl-maintainers@amazon.com>
-*.elb.amazonaws.com
+// Reference: 12a3d528-1bac-4433-a359-a395867ffed2
*.elb.amazonaws.com.cn
+*.elb.amazonaws.com
-// Amazon S3 : https://aws.amazon.com/s3/
-// Submitted by Luke Wells <psl-maintainers@amazon.com>
-s3.amazonaws.com
-s3-ap-northeast-1.amazonaws.com
-s3-ap-northeast-2.amazonaws.com
-s3-ap-south-1.amazonaws.com
-s3-ap-southeast-1.amazonaws.com
-s3-ap-southeast-2.amazonaws.com
-s3-ca-central-1.amazonaws.com
-s3-eu-central-1.amazonaws.com
-s3-eu-west-1.amazonaws.com
-s3-eu-west-2.amazonaws.com
-s3-eu-west-3.amazonaws.com
-s3-external-1.amazonaws.com
-s3-fips-us-gov-west-1.amazonaws.com
-s3-sa-east-1.amazonaws.com
-s3-us-gov-west-1.amazonaws.com
-s3-us-east-2.amazonaws.com
-s3-us-west-1.amazonaws.com
-s3-us-west-2.amazonaws.com
-s3.ap-northeast-2.amazonaws.com
-s3.ap-south-1.amazonaws.com
-s3.cn-north-1.amazonaws.com.cn
-s3.ca-central-1.amazonaws.com
-s3.eu-central-1.amazonaws.com
-s3.eu-west-2.amazonaws.com
-s3.eu-west-3.amazonaws.com
-s3.us-east-2.amazonaws.com
-s3.dualstack.ap-northeast-1.amazonaws.com
-s3.dualstack.ap-northeast-2.amazonaws.com
-s3.dualstack.ap-south-1.amazonaws.com
-s3.dualstack.ap-southeast-1.amazonaws.com
-s3.dualstack.ap-southeast-2.amazonaws.com
-s3.dualstack.ca-central-1.amazonaws.com
-s3.dualstack.eu-central-1.amazonaws.com
-s3.dualstack.eu-west-1.amazonaws.com
-s3.dualstack.eu-west-2.amazonaws.com
-s3.dualstack.eu-west-3.amazonaws.com
-s3.dualstack.sa-east-1.amazonaws.com
-s3.dualstack.us-east-1.amazonaws.com
-s3.dualstack.us-east-2.amazonaws.com
-s3-website-us-east-1.amazonaws.com
-s3-website-us-west-1.amazonaws.com
-s3-website-us-west-2.amazonaws.com
-s3-website-ap-northeast-1.amazonaws.com
-s3-website-ap-southeast-1.amazonaws.com
-s3-website-ap-southeast-2.amazonaws.com
-s3-website-eu-west-1.amazonaws.com
-s3-website-sa-east-1.amazonaws.com
-s3-website.ap-northeast-2.amazonaws.com
-s3-website.ap-south-1.amazonaws.com
-s3-website.ca-central-1.amazonaws.com
-s3-website.eu-central-1.amazonaws.com
-s3-website.eu-west-2.amazonaws.com
-s3-website.eu-west-3.amazonaws.com
-s3-website.us-east-2.amazonaws.com
+// AWS Global Accelerator
+// Submitted by Daniel Massaguer <psl-maintainers@amazon.com>
+// Reference: d916759d-a08b-4241-b536-4db887383a6a
+awsglobalaccelerator.com
-// Amsterdam Wireless: https://www.amsterdamwireless.nl/
-// Submitted by Imre Jonk <hostmaster@amsterdamwireless.nl>
-amsw.nl
+// eero
+// Submitted by Yue Kang <eero-dynamic-dns@amazon.com>
+// Reference: 264afe70-f62c-4c02-8ab9-b5281ed24461
+eero.online
+eero-stage.online
+
+// concludes Amazon
// Amune : https://amune.org/
// Submitted by Team Amune <cert@amune.org>
@@ -10802,6 +12002,19 @@ tele.amune.org
// Submitted by Apigee Security Team <security@apigee.com>
apigee.io
+// Apphud : https://apphud.com
+// Submitted by Alexander Selivanov <alex@apphud.com>
+siiites.com
+
+// Appspace : https://www.appspace.com
+// Submitted by Appspace Security Team <security@appspace.com>
+appspacehosted.com
+appspaceusercontent.com
+
+// Appudo UG (haftungsbeschränkt) : https://www.appudo.com
+// Submitted by Alexander Hochbaum <admin@appudo.com>
+appudo.net
+
// Aptible : https://www.aptible.com/
// Submitted by Thomas Orozco <thomas@aptible.com>
on-aptible.com
@@ -10827,15 +12040,35 @@ sweetpepper.org
// Submitted by Vincent Tseng <vincenttseng@asustor.com>
myasustor.com
+// Atlassian : https://atlassian.com
+// Submitted by Sam Smyth <devloop@atlassian.com>
+cdn.prod.atlassian-dev.net
+
+// Authentick UG (haftungsbeschränkt) : https://authentick.net
+// Submitted by Lukas Reschke <lukas@authentick.net>
+translated.page
+
+// Autocode : https://autocode.com
+// Submitted by Jacob Lee <jacob@autocode.com>
+autocode.dev
+
// AVM : https://avm.de
// Submitted by Andreas Weise <a.weise@avm.de>
myfritz.net
+// AVStack Pte. Ltd. : https://avstack.io
+// Submitted by Jasper Hugo <jasper@avstack.io>
+onavstack.net
+
// AW AdvisorWebsites.com Software Inc : https://advisorwebsites.com
// Submitted by James Kennedy <domains@advisorwebsites.com>
*.awdev.ca
*.advisor.ws
+// AZ.pl sp. z.o.o: https://az.pl
+// Submitted by Krzysztof Wolski <krzysztof.wolski@home.eu>
+ecommerce-shop.pl
+
// b-data GmbH : https://www.b-data.io
// Submitted by Olivier Benz <olivier.benz@b-data.ch>
b-data.io
@@ -10848,12 +12081,37 @@ backplaneapp.io
// Submitted by Petros Angelatos <petrosagg@balena.io>
balena-devices.com
+// University of Banja Luka : https://unibl.org
+// Domains for Republic of Srpska administrative entity.
+// Submitted by Marko Ivanovic <kormang@hotmail.rs>
+rs.ba
+
// Banzai Cloud
// Submitted by Janos Matyas <info@banzaicloud.com>
*.banzai.cloud
app.banzaicloud.io
*.backyards.banzaicloud.io
+// BASE, Inc. : https://binc.jp
+// Submitted by Yuya NAGASAWA <public-suffix-list@binc.jp>
+base.ec
+official.ec
+buyshop.jp
+fashionstore.jp
+handcrafted.jp
+kawaiishop.jp
+supersale.jp
+theshop.jp
+shopselect.net
+base.shop
+
+// BeagleBoard.org Foundation : https://beagleboard.org
+// Submitted by Jason Kridner <jkridner@beagleboard.org>
+beagleboard.io
+
+// Beget Ltd
+// Submitted by Lev Nekrasov <lnekrasov@beget.com>
+*.beget.app
// BetaInABox
// Submitted by Adrian <adrian@betainabox.com>
@@ -10863,14 +12121,30 @@ betainabox.com
// Submitted by Nathan O'Sullivan <nathan@mammoth.com.au>
bnr.la
+// Bitbucket : http://bitbucket.org
+// Submitted by Andy Ortlieb <aortlieb@atlassian.com>
+bitbucket.io
+
// Blackbaud, Inc. : https://www.blackbaud.com
// Submitted by Paul Crowder <paul.crowder@blackbaud.com>
blackbaudcdn.net
+// Blatech : http://www.blatech.net
+// Submitted by Luke Bratch <luke@bratch.co.uk>
+of.je
+
+// Blue Bite, LLC : https://bluebite.com
+// Submitted by Joshua Weiss <admin.engineering@bluebite.com>
+bluebite.io
+
// Boomla : https://boomla.com
// Submitted by Tibor Halter <thalter@boomla.com>
boomla.net
+// Boutir : https://www.boutir.com
+// Submitted by Eric Ng Ka Ka <ngkaka@boutir.com>
+boutir.com
+
// Boxfuse : https://boxfuse.com
// Submitted by Axel Fontaine <axel@boxfuse.com>
boxfuse.io
@@ -10884,6 +12158,10 @@ square7.de
bplaced.net
square7.net
+// Brendly : https://brendly.rs
+// Submitted by Dusan Radovanovic <dusan.radovanovic@brendly.rs>
+shop.brendly.rs
+
// BrowserSafetyMark
// Submitted by Dave Tharp <browsersafetymark.io@quicinc.com>
browsersafetymark.io
@@ -10894,46 +12172,59 @@ uk0.bigv.io
dh.bytemark.co.uk
vm.bytemark.co.uk
+// Caf.js Labs LLC : https://www.cafjs.com
+// Submitted by Antonio Lain <antlai@cafjs.com>
+cafjs.com
+
// callidomus : https://www.callidomus.com/
// Submitted by Marcus Popp <admin@callidomus.com>
mycd.eu
+// Canva Pty Ltd : https://canva.com/
+// Submitted by Joel Aquilina <publicsuffixlist@canva.com>
+canva-apps.cn
+canva-apps.com
+
// Carrd : https://carrd.co
// Submitted by AJ <aj@carrd.co>
+drr.ac
+uwu.ai
carrd.co
crd.co
-uwu.ai
+ju.mp
// CentralNic : http://www.centralnic.com/names/domains
// Submitted by registry <gavin.brown@centralnic.com>
ae.org
-ar.com
br.com
cn.com
com.de
com.se
de.com
eu.com
-gb.com
gb.net
-hu.com
hu.net
jp.net
jpn.com
-kr.com
mex.com
-no.com
-qc.com
ru.com
sa.com
se.net
uk.com
uk.net
us.com
-uy.com
za.bz
za.com
+// No longer operated by CentralNic, these entries should be adopted and/or removed by current operators
+// Submitted by Gavin Brown <gavin.brown@centralnic.com>
+ar.com
+hu.com
+kr.com
+no.com
+qc.com
+uy.com
+
// Africa.com Web Solutions Ltd : https://registry.africa.com
// Submitted by Gavin Brown <gavin.brown@centralnic.com>
africa.com
@@ -10945,6 +12236,7 @@ gr.com
// Radix FZC : http://domains.in.net
// Submitted by Gavin Brown <gavin.brown@centralnic.com>
in.net
+web.in
// US REGISTRY LLC : http://us.org
// Submitted by Gavin Brown <gavin.brown@centralnic.com>
@@ -10954,6 +12246,16 @@ us.org
// Submitted by Gavin Brown <gavin.brown@centralnic.com>
co.com
+// Roar Domains LLC : https://roar.basketball/
+// Submitted by Gavin Brown <gavin.brown@centralnic.com>
+aus.basketball
+nz.basketball
+
+// BRS Media : https://brsmedia.com/
+// Submitted by Gavin Brown <gavin.brown@centralnic.com>
+radio.am
+radio.fm
+
// c.la : http://www.c.la/
c.la
@@ -10961,31 +12263,31 @@ c.la
// Submitted by B. Blechschmidt <hostmaster@certmgr.org>
certmgr.org
-// Citrix : https://citrix.com
-// Submitted by Alex Stoddard <alex.stoddard@citrix.com>
-xenapponazure.com
+// Cityhost LLC : https://cityhost.ua
+// Submitted by Maksym Rivtin <support@cityhost.net.ua>
+cx.ua
// Civilized Discourse Construction Kit, Inc. : https://www.discourse.org/
// Submitted by Rishabh Nambiar & Michael Brown <team@discourse.org>
discourse.group
discourse.team
-// ClearVox : http://www.clearvox.nl/
-// Submitted by Leon Rowland <leon@clearvox.nl>
-virtueeldomein.nl
-
// Clever Cloud : https://www.clever-cloud.com/
// Submitted by Quentin Adam <noc@clever-cloud.com>
cleverapps.io
// Clerk : https://www.clerk.dev
-// Submitted by Colin Sidoti <colin@clerk.dev>
+// Submitted by Colin Sidoti <systems@clerk.dev>
+clerk.app
+clerkstage.app
*.lcl.dev
+*.lclstage.dev
*.stg.dev
+*.stgstage.dev
-// Clic2000 : https://clic2000.fr
-// Submitted by Mathilde Blanchemanche <mathilde@clic2000.fr>
-clic2000.net
+// ClickRising : https://clickrising.com/
+// Submitted by Umut Gumeli <infrastructure-publicsuffixlist@clickrising.com>
+clickrising.net
// Cloud66 : https://www.cloud66.com/
// Submitted by Khash Sajadi <khash@cloud66.com>
@@ -11007,12 +12309,16 @@ cloudcontrolled.com
cloudcontrolapp.com
// Cloudera, Inc. : https://www.cloudera.com/
-// Submitted by Philip Langdale <security@cloudera.com>
-cloudera.site
+// Submitted by Kedarnath Waikar <security@cloudera.com>
+*.cloudera.site
// Cloudflare, Inc. : https://www.cloudflare.com/
-// Submitted by Jake Riesterer <publicsuffixlist@cloudflare.com>
+// Submitted by Cloudflare Team <publicsuffixlist@cloudflare.com>
+cf-ipfs.com
+cloudflare-ipfs.com
trycloudflare.com
+pages.dev
+r2.dev
workers.dev
// Clovyr : https://clovyr.io
@@ -11052,14 +12358,14 @@ cloudns.pro
cloudns.pw
cloudns.us
-// Cloudeity Inc : https://cloudeity.com
-// Submitted by Stefan Dimitrov <contact@cloudeity.com>
-cloudeity.net
-
// CNPY : https://cnpy.gdn
// Submitted by Angelo Gladding <angelo@lahacker.net>
cnpy.gdn
+// Codeberg e. V. : https://codeberg.org
+// Submitted by Moritz Marquardt <git@momar.de>
+codeberg.page
+
// CoDNS B.V.
co.nl
co.no
@@ -11119,6 +12425,12 @@ curv.dev
cyon.link
cyon.site
+// Danger Science Group: https://dangerscience.com/
+// Submitted by Skylar MacDonald <skylar@dangerscience.com>
+fnwk.site
+folionetwork.site
+platform0.app
+
// Daplie, Inc : https://daplie.com
// Submitted by AJ ONeal <aj@daplie.com>
daplie.me
@@ -11154,18 +12466,51 @@ dyndns.dappnode.io
// Submitted by Paul Biggar <ops@darklang.com>
builtwithdark.com
+// DataDetect, LLC. : https://datadetect.com
+// Submitted by Andrew Banchich <abanchich@sceven.com>
+demo.datadetect.com
+instance.datadetect.com
+
// Datawire, Inc : https://www.datawire.io
// Submitted by Richard Li <secalert@datawire.io>
edgestack.me
+// DDNS5 : https://ddns5.com
+// Submitted by Cameron Elliott <cameron@cameronelliott.com>
+ddns5.com
+
// Debian : https://www.debian.org/
// Submitted by Peter Palfrader / Debian Sysadmin Team <dsa-publicsuffixlist@debian.org>
debian.net
+// Deno Land Inc : https://deno.com/
+// Submitted by Luca Casonato <hostmaster@deno.com>
+deno.dev
+deno-staging.dev
+
// deSEC : https://desec.io/
// Submitted by Peter Thomassen <peter@desec.io>
dedyn.io
+// Deta: https://www.deta.sh/
+// Submitted by Aavash Shrestha <aavash@deta.sh>
+deta.app
+deta.dev
+
+// Diher Solutions : https://diher.solutions
+// Submitted by Didi Hermawan <mail@diher.solutions>
+*.rss.my.id
+*.diher.solutions
+
+// Discord Inc : https://discord.com
+// Submitted by Sahn Lam <slam@discordapp.com>
+discordsays.com
+discordsez.com
+
+// DNS Africa Ltd https://dns.business
+// Submitted by Calvin Browne <calvin@dns.business>
+jozi.biz
+
// DNShome : https://www.dnshome.de/
// Submitted by Norbert Auler <mail@dnshome.de>
dnshome.de
@@ -11179,6 +12524,10 @@ shop.th
// Submitted by Paul Fang <mis@draytek.com>
drayddns.com
+// DreamCommerce : https://shoper.pl/
+// Submitted by Konrad Kotarba <konrad.kotarba@dreamcommerce.com>
+shoparena.pl
+
// DreamHost : http://www.dreamhost.com/
// Submitted by Andrew Farmer <andrew.farmer@dreamhost.com>
dreamhosters.com
@@ -11196,6 +12545,10 @@ drud.us
// Submitted by Richard Harper <richard@duckdns.org>
duckdns.org
+// Bip : https://bip.sh
+// Submitted by Joel Kennedy <joel@bip.sh>
+bip.sh
+
// bitbridge.net : Submitted by Craig Welch, abeliidev@gmail.com
bitbridge.net
@@ -11502,6 +12855,14 @@ ddnss.org
definima.net
definima.io
+// DigitalOcean App Platform : https://www.digitalocean.com/products/app-platform/
+// Submitted by Braxton Huggins <psl-maintainers@digitalocean.com>
+ondigitalocean.app
+
+// DigitalOcean Spaces : https://www.digitalocean.com/products/spaces/
+// Submitted by Robin H. Johnson <psl-maintainers@digitalocean.com>
+*.digitaloceanspaces.com
+
// dnstrace.pro : https://dnstrace.pro/
// Submitted by Chris Partridge <chris@partridge.tech>
bci.dnstrace.pro
@@ -11534,6 +12895,16 @@ dynv6.net
// Submitted by Vladimir Dudr <info@e4you.cz>
e4.cz
+// Easypanel : https://easypanel.io
+// Submitted by Andrei Canta <andrei@easypanel.io>
+easypanel.app
+easypanel.host
+
+// Elementor : Elementor Ltd.
+// Submitted by Anton Barkan <antonb@elementor.com>
+elementor.cloud
+elementor.cool
+
// En root‽ : https://en-root.org
// Submitted by Emmanuel Raviart <emmanuel@raviart.com>
en-root.fr
@@ -11541,16 +12912,21 @@ en-root.fr
// Enalean SAS: https://www.enalean.com
// Submitted by Thomas Cottier <thomas.cottier@enalean.com>
mytuleap.com
+tuleap-partners.com
+
+// Encoretivity AB: https://encore.dev
+// Submitted by André Eriksson <andre@encore.dev>
+encr.app
+encoreapi.com
// ECG Robotics, Inc: https://ecgrobotics.org
// Submitted by <frc1533@ecgrobotics.org>
onred.one
staging.onred.one
-// Enonic : http://enonic.com/
-// Submitted by Erik Kaareng-Sunde <esu@enonic.com>
-enonic.io
-customer.enonic.io
+// encoway GmbH : https://www.encoway.de
+// Submitted by Marcel Daus <cloudops@encoway.de>
+eu.encoway.cloud
// EU.org https://eu.org/
// Submitted by Pierre Beyssac <hostmaster@eu.org>
@@ -11611,6 +12987,10 @@ tr.eu.org
uk.eu.org
us.eu.org
+// Eurobyte : https://eurobyte.ru
+// Submitted by Evgeniy Subbotin <e.subbotin@eurobyte.ru>
+eurodir.ru
+
// Evennode : http://www.evennode.com/
// Submitted by Michal Kralik <support@evennode.com>
eu-1.evennode.com
@@ -11721,6 +13101,8 @@ u.channelsdvr.net
// Fastly Inc. : http://www.fastly.com/
// Submitted by Fastly Security <security@fastly.com>
+edgecompute.app
+fastly-edge.com
fastly-terrarium.com
fastlylb.net
map.fastlylb.net
@@ -11732,6 +13114,10 @@ a.ssl.fastly.net
b.ssl.fastly.net
global.ssl.fastly.net
+// Fastmail : https://www.fastmail.com/
+// Submitted by Marc Bradshaw <marc@fastmailteam.com>
+*.user.fm
+
// FASTVPS EESTI OU : https://fastvps.ru/
// Submitted by Likhachev Vasiliy <lihachev@fastvps.ru>
fastvps-server.com
@@ -11740,10 +13126,6 @@ myfast.host
fastvps.site
myfast.space
-// Featherhead : https://featherhead.xyz/
-// Submitted by Simon Menke <simon@featherhead.xyz>
-fhapp.xyz
-
// Fedora : https://fedoraproject.org/
// submitted by Patrick Uiterwijk <puiterwijk@fedoraproject.org>
fedorainfracloud.org
@@ -11756,13 +13138,16 @@ app.os.stg.fedoraproject.org
// submitted by Keith Fairley <domains@fearworksmedia.co.uk>
conn.uk
copro.uk
-couk.me
-ukco.me
+hosp.uk
// Fermax : https://fermax.com/
// submitted by Koen Van Isterdael <k.vanisterdael@fermax.be>
mydobiss.com
+// FH Muenster : https://www.fh-muenster.de
+// Submitted by Robin Naundorf <r.naundorf@fh-muenster.de>
+fh-muenster.io
+
// Filegear Inc. : https://www.filegear.com
// Submitted by Jason Zhu <jason@owtware.com>
filegear.me
@@ -11777,6 +13162,19 @@ filegear-sg.me
// Submitted by Chris Raynor <chris@firebase.com>
firebaseapp.com
+// Firewebkit : https://www.firewebkit.com
+// Submitted by Majid Qureshi <mqureshi@amrayn.com>
+fireweb.app
+
+// FLAP : https://www.flap.cloud
+// Submitted by Louis Chemineau <louis@chmn.me>
+flap.id
+
+// FlashDrive : https://flashdrive.io
+// Submitted by Eric Chan <support@flashdrive.io>
+onflashdrive.app
+fldrv.com
+
// fly.io: https://fly.io
// Submitted by Kurt Mackey <kurt@fly.io>
fly.dev
@@ -11787,6 +13185,28 @@ shw.io
// Submitted by Jonathan Rudenberg <jonathan@flynn.io>
flynnhosting.net
+// Forgerock : https://www.forgerock.com
+// Submitted by Roderick Parr <roderick.parr@forgerock.com>
+forgeblocks.com
+id.forgerock.io
+
+// Framer : https://www.framer.com
+// Submitted by Koen Rouwhorst <koenrh@framer.com>
+framer.app
+framercanvas.com
+framer.media
+framer.photos
+framer.website
+framer.wiki
+
+// Frusky MEDIA&PR : https://www.frusky.de
+// Submitted by Victor Pupynin <hallo@frusky.de>
+*.frusky.de
+
+// RavPage : https://www.ravpage.co.il
+// Submitted by Roni Horowitz <roni@responder.co.il>
+ravpage.co.il
+
// Frederik Braun https://frederik-braun.com
// Submitted by Frederik Braun <fb@frederik-braun.com>
0e.vc
@@ -11804,11 +13224,15 @@ freeboxos.fr
// Submitted by Daniel Stone <daniel@fooishbar.org>
freedesktop.org
+// freemyip.com : https://freemyip.com
+// Submitted by Cadence <contact@freemyip.com>
+freemyip.com
+
// FunkFeuer - Verein zur Förderung freier Netze : https://www.funkfeuer.at
// Submitted by Daniel A. Maierhofer <vorstand@funkfeuer.at>
wien.funkfeuer.at
-// Futureweb OG : http://www.futureweb.at
+// Futureweb GmbH : https://www.futureweb.at
// Submitted by Andreas Schnederle-Wagner <schnederle@futureweb.at>
*.futurecms.at
*.ex.futurecms.at
@@ -11819,10 +13243,22 @@ futuremailing.at
*.kunden.ortsinfo.at
*.statics.cloud
-// GDS : https://www.gov.uk/service-manual/operations/operating-servicegovuk-subdomains
-// Submitted by David Illsley <david.illsley@digital.cabinet-office.gov.uk>
+// GDS : https://www.gov.uk/service-manual/technology/managing-domain-names
+// Submitted by Stephen Ford <hostmaster@digital.cabinet-office.gov.uk>
+independent-commission.uk
+independent-inquest.uk
+independent-inquiry.uk
+independent-panel.uk
+independent-review.uk
+public-inquiry.uk
+royal-commission.uk
+campaign.gov.uk
service.gov.uk
+// CDDO : https://www.gov.uk/guidance/get-an-api-domain-on-govuk
+// Submitted by Jamie Tanna <jamie.tanna@digital.cabinet-office.gov.uk>
+api.gov.uk
+
// Gehirn Inc. : https://www.gehirn.co.jp/
// Submitted by Kohei YOSHIDA <tech@gehirn.co.jp>
gehirn.ne.jp
@@ -11833,11 +13269,21 @@ usercontent.jp
gentapps.com
gentlentapis.com
lab.ms
+cdn-edges.net
+
+// Ghost Foundation : https://ghost.org
+// Submitted by Matt Hanley <security@ghost.org>
+ghost.io
+
+// GignoSystemJapan: http://gsj.bz
+// Submitted by GignoSystemJapan <kakutou-ec@gsj.bz>
+gsj.bz
// GitHub, Inc.
// Submitted by Patrick Toomey <security@github.com>
-github.io
githubusercontent.com
+githubpreview.dev
+github.io
// GitLab, Inc.
// Submitted by Alex Hanselka <alex@gitlab.com>
@@ -11845,29 +13291,144 @@ gitlab.io
// Gitplac.si - https://gitplac.si
// Submitted by Aljaž Starc <me@aljaxus.eu>
+gitapp.si
gitpage.si
// Glitch, Inc : https://glitch.com
// Submitted by Mads Hartmann <mads@glitch.com>
glitch.me
+// Global NOG Alliance : https://nogalliance.org/
+// Submitted by Sander Steffann <sander@nogalliance.org>
+nog.community
+
+// Globe Hosting SRL : https://www.globehosting.com/
+// Submitted by Gavin Brown <gavin.brown@centralnic.com>
+co.ro
+shop.ro
+
// GMO Pepabo, Inc. : https://pepabo.com/
-// Submitted by dojineko <admin@pepabo.com>
+// Submitted by Hosting Div <admin@pepabo.com>
lolipop.io
+angry.jp
+babyblue.jp
+babymilk.jp
+backdrop.jp
+bambina.jp
+bitter.jp
+blush.jp
+boo.jp
+boy.jp
+boyfriend.jp
+but.jp
+candypop.jp
+capoo.jp
+catfood.jp
+cheap.jp
+chicappa.jp
+chillout.jp
+chips.jp
+chowder.jp
+chu.jp
+ciao.jp
+cocotte.jp
+coolblog.jp
+cranky.jp
+cutegirl.jp
+daa.jp
+deca.jp
+deci.jp
+digick.jp
+egoism.jp
+fakefur.jp
+fem.jp
+flier.jp
+floppy.jp
+fool.jp
+frenchkiss.jp
+girlfriend.jp
+girly.jp
+gloomy.jp
+gonna.jp
+greater.jp
+hacca.jp
+heavy.jp
+her.jp
+hiho.jp
+hippy.jp
+holy.jp
+hungry.jp
+icurus.jp
+itigo.jp
+jellybean.jp
+kikirara.jp
+kill.jp
+kilo.jp
+kuron.jp
+littlestar.jp
+lolipopmc.jp
+lolitapunk.jp
+lomo.jp
+lovepop.jp
+lovesick.jp
+main.jp
+mods.jp
+mond.jp
+mongolian.jp
+moo.jp
+namaste.jp
+nikita.jp
+nobushi.jp
+noor.jp
+oops.jp
+parallel.jp
+parasite.jp
+pecori.jp
+peewee.jp
+penne.jp
+pepper.jp
+perma.jp
+pigboat.jp
+pinoko.jp
+punyu.jp
+pupu.jp
+pussycat.jp
+pya.jp
+raindrop.jp
+readymade.jp
+sadist.jp
+schoolbus.jp
+secret.jp
+staba.jp
+stripper.jp
+sub.jp
+sunnyday.jp
+thick.jp
+tonkotsu.jp
+under.jp
+upper.jp
+velvet.jp
+verse.jp
+versus.jp
+vivian.jp
+watson.jp
+weblike.jp
+whitesnow.jp
+zombie.jp
+heteml.net
// GOV.UK Platform as a Service : https://www.cloud.service.gov.uk/
-// Submitted by Tom Whitwell <tom.whitwell@digital.cabinet-office.gov.uk>
+// Submitted by Tom Whitwell <gov-uk-paas-support@digital.cabinet-office.gov.uk>
cloudapps.digital
london.cloudapps.digital
-// UKHomeOffice : https://www.gov.uk/government/organisations/home-office
-// Submitted by Jon Shanks <jon.shanks@digital.homeoffice.gov.uk>
-homeoffice.gov.uk
+// GOV.UK Pay : https://www.payments.service.gov.uk/
+// Submitted by Richard Baker <richard.baker@digital.cabinet-office.gov.uk>
+pymnt.uk
// GlobeHosting, Inc.
// Submitted by Zoltan Egresi <egresi@globehosting.com>
ro.im
-shop.ro
// GoIP DNS Services : http://www.goip.de
// Submitted by Christian Poulter <milchstrasse@goip.de>
@@ -11881,6 +13442,18 @@ web.app
*.0emm.com
appspot.com
*.r.appspot.com
+codespot.com
+googleapis.com
+googlecode.com
+pagespeedmobilizer.com
+publishproxy.com
+withgoogle.com
+withyoutube.com
+*.gateway.dev
+cloud.goog
+translate.goog
+*.usercontent.goog
+cloudfunctions.net
blogspot.ae
blogspot.al
blogspot.am
@@ -11955,26 +13528,26 @@ blogspot.td
blogspot.tw
blogspot.ug
blogspot.vn
-cloudfunctions.net
-cloud.goog
-codespot.com
-googleapis.com
-googlecode.com
-pagespeedmobilizer.com
-publishproxy.com
-withgoogle.com
-withyoutube.com
-// Aaron Marais' Gitlab pages: https://lab.aaronleem.co.za
-// Submitted by Aaron Marais <its_me@aaronleem.co.za>
-graphox.us
+// Goupile : https://goupile.fr
+// Submitted by Niels Martignene <hello@goupile.fr>
+goupile.fr
+
+// Government of the Netherlands: https://www.government.nl
+// Submitted by <domeinnaam@minaz.nl>
+gov.nl
// Group 53, LLC : https://www.group53.com
// Submitted by Tyler Todd <noc@nova53.net>
awsmppl.com
+// GünstigBestellen : https://günstigbestellen.de
+// Submitted by Furkan Akkoc <info@hendelzon.de>
+günstigbestellen.de
+günstigliefern.de
+
// Hakaran group: http://hakaran.cz
-// Submited by Arseniy Sokolov <security@hakaran.cz>
+// Submitted by Arseniy Sokolov <security@hakaran.cz>
fin.ci
free.hr
caa.li
@@ -11994,6 +13567,10 @@ hashbang.sh
hasura.app
hasura-app.io
+// Heilbronn University of Applied Sciences - Faculty Informatics (GitLab Pages): https://www.hs-heilbronn.de
+// Submitted by Richard Zowalla <mi-admin@hs-heilbronn.de>
+pages.it.hs-heilbronn.de
+
// Hepforge : https://www.hepforge.org
// Submitted by David Grellscheid <admin@hepforge.org>
hepforge.org
@@ -12005,27 +13582,41 @@ herokussl.com
// Hibernating Rhinos
// Submitted by Oren Eini <oren@ravendb.net>
-myravendb.com
+ravendb.cloud
ravendb.community
ravendb.me
development.run
ravendb.run
+// home.pl S.A.: https://home.pl
+// Submitted by Krzysztof Wolski <krzysztof.wolski@home.eu>
+homesklep.pl
+
+// Hong Kong Productivity Council: https://www.hkpc.org/
+// Submitted by SECaaS Team <summchan@hkpc.org>
+secaas.hk
+
+// Hoplix : https://www.hoplix.com
+// Submitted by Danilo De Franco<info@hoplix.shop>
+hoplix.shop
+
+
// HOSTBIP REGISTRY : https://www.hostbip.com/
// Submitted by Atanunu Igbunuroghene <publicsuffixlist@hostbip.com>
-bpl.biz
orx.biz
-ng.city
biz.gl
-ng.ink
col.ng
firm.ng
gen.ng
ltd.ng
ngo.ng
-ng.school
+edu.scot
sch.so
+// HostFly : https://www.ie.ua
+// Submitted by Bohdan Dub <support@hostfly.com.ua>
+ie.ua
+
// HostyHosting (hostyhosting.com)
hostyhosting.io
@@ -12042,6 +13633,24 @@ moonscale.net
// Submitted by Hannu Aronsson <haa@iki.fi>
iki.fi
+// iliad italia: https://www.iliad.it
+// Submitted by Marios Makassikis <mmakassikis@freebox.fr>
+ibxos.it
+iliadboxos.it
+
+// Impertrix Solutions : <https://impertrixcdn.com>
+// Submitted by Zhixiang Zhao <csuite@impertrix.com>
+impertrixcdn.com
+impertrix.com
+
+// Incsub, LLC: https://incsub.com/
+// Submitted by Aaron Edwards <sysadmins@incsub.com>
+smushcdn.com
+wphostedmail.com
+wpmucdn.com
+tempurl.host
+wpmudev.host
+
// Individual Network Berlin e.V. : https://www.in-berlin.de/
// Submitted by Christian Seitz <chris@in-berlin.de>
dyn-berlin.de
@@ -12097,13 +13706,23 @@ to.leg.br
// Submitted by Wolfgang Schwarz <admin@intermetrics.de>
pixolino.com
+// Internet-Pro, LLP: https://netangels.ru/
+// Submitted by Vasiliy Sheredeko <piphon@gmail.com>
+na4u.ru
+
+// iopsys software solutions AB : https://iopsys.eu/
+// Submitted by Roman Azarenko <roman.azarenko@iopsys.eu>
+iopsys.se
+
// IPiFony Systems, Inc. : https://www.ipifony.com/
// Submitted by Matthew Hardeman <mhardeman@ipifony.com>
ipifony.net
-// IServ GmbH : https://iserv.eu
-// Submitted by Kim-Alexander Brodowski <info@iserv.eu>
+// IServ GmbH : https://iserv.de
+// Submitted by Mario Hoberg <info@iserv.de>
+iservschule.de
mein-iserv.de
+schulplattform.de
schulserver.de
test-iserv.de
iserv.dev
@@ -12112,25 +13731,88 @@ iserv.dev
// Submitted by Yuji Minagawa <domains-admin@iodata.jp>
iobb.net
-//Jelastic, Inc. : https://jelastic.com/
-// Submited by Ihor Kolodyuk <ik@jelastic.com>
+// Jelastic, Inc. : https://jelastic.com/
+// Submitted by Ihor Kolodyuk <ik@jelastic.com>
+mel.cloudlets.com.au
+cloud.interhostsolutions.be
+mycloud.by
+alp1.ae.flow.ch
+appengine.flow.ch
+es-1.axarnet.cloud
+diadem.cloud
+vip.jelastic.cloud
jele.cloud
+it1.eur.aruba.jenv-aruba.cloud
+it1.jenv-aruba.cloud
+keliweb.cloud
+cs.keliweb.cloud
+oxa.cloud
+tn.oxa.cloud
+uk.oxa.cloud
+primetel.cloud
+uk.primetel.cloud
+ca.reclaim.cloud
+uk.reclaim.cloud
+us.reclaim.cloud
+ch.trendhosting.cloud
+de.trendhosting.cloud
jele.club
+amscompute.com
dopaas.com
-hidora.com
+paas.hosted-by-previder.com
+rag-cloud.hosteur.com
+rag-cloud-ch.hosteur.com
jcloud.ik-server.com
+jcloud-ver-jpc.ik-server.com
demo.jelastic.com
+kilatiron.com
+paas.massivegrid.com
+jed.wafaicloud.com
+lon.wafaicloud.com
+ryd.wafaicloud.com
j.scaleforce.com.cy
+jelastic.dogado.eu
+fi.cloudplatform.fi
+demo.datacenter.fi
+paas.datacenter.fi
jele.host
mircloud.host
+paas.beebyte.io
+sekd1.beebyteapp.io
jele.io
+cloud-fr1.unispace.io
+jc.neen.it
+cloud.jelastic.open.tim.it
+jcloud.kz
+upaas.kazteleport.kz
cloudjiffy.net
+fra1-de.cloudjiffy.net
+west1-us.cloudjiffy.net
jls-sto1.elastx.net
+jls-sto2.elastx.net
+jls-sto3.elastx.net
+faststacks.net
+fr-1.paas.massivegrid.net
+lon-1.paas.massivegrid.net
+lon-2.paas.massivegrid.net
+ny-1.paas.massivegrid.net
+ny-2.paas.massivegrid.net
+sg-1.paas.massivegrid.net
jelastic.saveincloud.net
+nordeste-idc.saveincloud.net
+j.scaleforce.net
+jelastic.tsukaeru.net
+sdscloud.pl
+unicloud.pl
+mircloud.ru
jelastic.regruhosting.ru
+enscaled.sg
jele.site
jelastic.team
+orangecloud.tn
j.layershift.co.uk
+phx.enscaled.us
+mircloud.us
// Jino : https://www.jino.ru
// Submitted by Sergey Ulyashin <ulyashin@jino.ru>
@@ -12140,6 +13822,10 @@ myjino.ru
*.spectrum.myjino.ru
*.vps.myjino.ru
+// Jotelulu S.L. : https://jotelulu.com
+// Submitted by Daniel Fariña <ingenieria@jotelulu.com>
+jotelulu.cloud
+
// Joyent : https://www.joyent.com/
// Submitted by Brian Bennett <brian.bennett@joyent.com>
*.triton.zone
@@ -12154,6 +13840,14 @@ js.org
kaas.gg
khplay.nl
+// Kakao : https://www.kakaocorp.com/
+// Submitted by JaeYoong Lee <cec@kakaocorp.com>
+ktistory.com
+
+// Kapsi : https://kapsi.fi
+// Submitted by Tomi Juntunen <erani@kapsi.fi>
+kapsi.fi
+
// Keyweb AG : https://www.keyweb.de
// Submitted by Martin Dannehl <postmaster@keymachine.de>
keymachine.de
@@ -12167,14 +13861,28 @@ uni5.net
// Submitted by Roy Keene <rkeene@knightpoint.com>
knightpoint.systems
+// KoobinEvent, SL: https://www.koobin.com
+// Submitted by Iván Oliva <ivan.oliva@koobin.com>
+koobin.events
+
// KUROKU LTD : https://kuroku.ltd/
// Submitted by DisposaBoy <security@oya.to>
oya.to
+// Katholieke Universiteit Leuven: https://www.kuleuven.be
+// Submitted by Abuse KU Leuven <abuse@kuleuven.be>
+kuleuven.cloud
+ezproxy.kuleuven.be
+
// .KRD : http://nic.krd/data/krd/Registration%20Policy.pdf
co.krd
edu.krd
+// Krellian Ltd. : https://krellian.com
+// Submitted by Ben Francis <ben@krellian.com>
+krellian.net
+webthings.io
+
// LCube - Professional hosting e.K. : https://www.lcube-webhosting.de
// Submitted by Lars Laehn <info@lcube.de>
git-repos.de
@@ -12205,10 +13913,6 @@ co.technology
// Submitted by Greg Holland <greg.holland@lmpm.com>
app.lmpm.com
-// Linki Tools UG : https://linki.tools
-// Submitted by Paulo Matos <pmatos@linki.tools>
-linkitools.space
-
// linkyard ldt: https://www.linkyard.ch/
// Submitted by Mario Siegenthaler <mario.siegenthaler@linkyard.ch>
linkyard.cloud
@@ -12219,11 +13923,20 @@ linkyard-cloud.ch
members.linode.com
*.nodebalancer.linode.com
*.linodeobjects.com
+ip.linodeusercontent.com
// LiquidNet Ltd : http://www.liquidnetlimited.com/
// Submitted by Victor Velchev <admin@liquidnetlimited.com>
we.bs
+// Localcert : https://localcert.dev
+// Submitted by Lann Martin <security@localcert.dev>
+*.user.localcert.dev
+
+// localzone.xyz
+// Submitted by Kenny Niehage <hello@yahe.sh>
+localzone.xyz
+
// Log'in Line : https://www.loginline.com/
// Submitted by Rémi Mach <remi.mach@loginline.com>
loginline.app
@@ -12232,6 +13945,14 @@ loginline.io
loginline.services
loginline.site
+// Lokalized : https://lokalized.nl
+// Submitted by Noah Taheij <noah@lokalized.nl>
+servers.run
+
+// Lõhmus Family, The
+// Submitted by Heiki Lõhmus <hostmaster at lohmus dot me>
+lohmus.me
+
// LubMAN UMCS Sp. z o.o : https://lubman.pl/
// Submitted by Ireneusz Maliszewski <ireneusz.maliszewski@lubman.pl>
krasnik.pl
@@ -12243,7 +13964,6 @@ swidnik.pl
// Lug.org.uk : https://lug.org.uk
// Submitted by Jon Spriggs <admin@lug.org.uk>
-uklugs.org
glug.org.uk
lug.org.uk
lugs.org.uk
@@ -12269,6 +13989,7 @@ barsy.online
barsy.org
barsy.pro
barsy.pub
+barsy.ro
barsy.shop
barsy.site
barsy.support
@@ -12287,14 +14008,46 @@ mayfirst.org
// Submitted by Ilya Zaretskiy <zaretskiy@corp.mail.ru>
hb.cldmail.ru
+// Mail Transfer Platform : https://www.neupeer.com
+// Submitted by Li Hui <lihui@neupeer.com>
+cn.vu
+
+// Maze Play: https://www.mazeplay.com
+// Submitted by Adam Humpherys <adam@mws.dev>
+mazeplay.com
+
+// mcpe.me : https://mcpe.me
+// Submitted by Noa Heyl <hi@noa.dev>
+mcpe.me
+
+// McHost : https://mchost.ru
+// Submitted by Evgeniy Subbotin <e.subbotin@mchost.ru>
+mcdir.me
+mcdir.ru
+mcpre.ru
+vps.mcdir.ru
+
+// Mediatech : https://mediatech.by
+// Submitted by Evgeniy Kozhuhovskiy <ugenk@mediatech.by>
+mediatech.by
+mediatech.dev
+
+// Medicom Health : https://medicomhealth.com
+// Submitted by Michael Olson <molson@medicomhealth.com>
+hra.health
+
// Memset hosting : https://www.memset.com
// Submitted by Tom Whitwell <domains@memset.com>
miniserver.com
memset.net
+// Messerli Informatik AG : https://www.messerli.ch/
+// Submitted by Ruben Schmidmeister <psl-maintainers@messerli.ch>
+messerli.app
+
// MetaCentrum, CESNET z.s.p.o. : https://www.metacentrum.cz/en/
// Submitted by Zdeněk Šustr <zdenek.sustr@cesnet.cz>
-cloud.metacentrum.cz
+*.cloud.metacentrum.cz
custom.metacentrum.cz
// MetaCentrum, CESNET z.s.p.o. : https://www.metacentrum.cz/en/
@@ -12311,16 +14064,37 @@ eu.meteorapp.com
co.pl
// Microsoft Corporation : http://microsoft.com
-// Submitted by Mostafa Elzeiny <moelzein@microsoft.com>
+// Submitted by Public Suffix List Admin <msftpsladmin@microsoft.com>
*.azurecontainer.io
azurewebsites.net
azure-mobile.net
cloudapp.net
+azurestaticapps.net
+1.azurestaticapps.net
+2.azurestaticapps.net
+3.azurestaticapps.net
+4.azurestaticapps.net
+5.azurestaticapps.net
+6.azurestaticapps.net
+7.azurestaticapps.net
+centralus.azurestaticapps.net
+eastasia.azurestaticapps.net
+eastus2.azurestaticapps.net
+westeurope.azurestaticapps.net
+westus2.azurestaticapps.net
// minion.systems : http://minion.systems
// Submitted by Robert Böttinger <r@minion.systems>
csx.cc
+// Mintere : https://mintere.com/
+// Submitted by Ben Aubin <security@mintere.com>
+mintere.site
+
+// MobileEducation, LLC : https://joinforte.com
+// Submitted by Grayson Martin <grayson.martin@mobileeducation.us>
+forte.id
+
// Mozilla Corporation : https://mozilla.com
// Submitted by Ben Francis <bfrancis@mozilla.com>
mozilla-iot.org
@@ -12335,29 +14109,29 @@ net.ru
org.ru
pp.ru
+// Mythic Beasts : https://www.mythic-beasts.com
+// Submitted by Paul Cammish <kelduum@mythic-beasts.com>
+hostedpi.com
+customer.mythic-beasts.com
+caracal.mythic-beasts.com
+fentiger.mythic-beasts.com
+lynx.mythic-beasts.com
+ocelot.mythic-beasts.com
+oncilla.mythic-beasts.com
+onza.mythic-beasts.com
+sphinx.mythic-beasts.com
+vs.mythic-beasts.com
+x.mythic-beasts.com
+yali.mythic-beasts.com
+cust.retrosnub.co.uk
+
// Nabu Casa : https://www.nabucasa.com
// Submitted by Paulus Schoutsen <infra@nabucasa.com>
ui.nabu.casa
-// Names.of.London : https://names.of.london/
-// Submitted by James Stevens <registry@names.of.london> or <james@jrcs.net>
-pony.club
-of.fashion
-on.fashion
-of.football
-in.london
-of.london
-for.men
-and.mom
-for.mom
-for.one
-for.sale
-of.work
-to.work
-
-// NCTU.ME : https://nctu.me/
-// Submitted by Tocknicsu <admin@nctu.me>
-nctu.me
+// Net at Work Gmbh : https://www.netatwork.de
+// Submitted by Jan Jaeschke <jan.jaeschke@netatwork.de>
+cloud.nospamproxy.com
// Netlify : https://www.netlify.com
// Submitted by Jessica Parsons <jessica@netlify.com>
@@ -12369,7 +14143,22 @@ netlify.app
// ngrok : https://ngrok.com/
// Submitted by Alan Shreve <alan@ngrok.com>
+ngrok.app
+ngrok-free.app
+ngrok.dev
+ngrok-free.dev
ngrok.io
+ap.ngrok.io
+au.ngrok.io
+eu.ngrok.io
+in.ngrok.io
+jp.ngrok.io
+sa.ngrok.io
+us.ngrok.io
+ngrok.pizza
+
+// Nicolaus Copernicus University in Torun - MSK TORMAN (https://www.man.torun.pl)
+torun.pl
// Nimbus Hosting Ltd. : https://www.nimbushosting.co.uk/
// Submitted by Nicholas Ford <nick@nimbushosting.co.uk>
@@ -12379,6 +14168,23 @@ nh-serv.co.uk
// Submitted by Jeff Wheelhouse <support@nearlyfreespeech.net>
nfshost.com
+// Noop : https://noop.app
+// Submitted by Nathaniel Schweinberg <noop@rearc.io>
+*.developer.app
+noop.app
+
+// Northflank Ltd. : https://northflank.com/
+// Submitted by Marco Suter <marco@northflank.com>
+*.northflank.app
+*.build.run
+*.code.run
+*.database.run
+*.migration.run
+
+// Noticeable : https://noticeable.io
+// Submitted by Laurent Pellegrino <security@noticeable.io>
+noticeable.news
+
// Now-DNS : https://now-dns.com
// Submitted by Steve Russell <steve@now-dns.com>
dnsking.ch
@@ -12504,11 +14310,6 @@ zapto.org
// Submitted by Konstantin Nosov <Nosov@nodeart.io>
stage.nodeart.io
-// Nodum B.V. : https://nodum.io/
-// Submitted by Wietse Wind <hello+publicsuffixlist@nodum.io>
-nodum.co
-nodum.io
-
// Nucleos Inc. : https://nucleos.com
// Submitted by Piotr Zduniak <piotr@nucleos.com>
pcloud.host
@@ -12517,60 +14318,6 @@ pcloud.host
// Submitted by Matthew Brown <mattbrown@nyc.mn>
nyc.mn
-// NymNom : https://nymnom.com/
-// Submitted by NymNom <psl@nymnom.com>
-nom.ae
-nom.af
-nom.ai
-nom.al
-nym.by
-nom.bz
-nym.bz
-nom.cl
-nym.ec
-nom.gd
-nom.ge
-nom.gl
-nym.gr
-nom.gt
-nym.gy
-nym.hk
-nom.hn
-nym.ie
-nom.im
-nom.ke
-nym.kz
-nym.la
-nym.lc
-nom.li
-nym.li
-nym.lt
-nym.lu
-nom.lv
-nym.me
-nom.mk
-nym.mn
-nym.mx
-nom.nu
-nym.nz
-nym.pe
-nym.pt
-nom.pw
-nom.qa
-nym.ro
-nom.rs
-nom.si
-nym.sk
-nom.st
-nym.su
-nym.sx
-nom.tj
-nym.tw
-nom.ug
-nom.uy
-nom.vc
-nom.vg
-
// Observable, Inc. : https://observablehq.com
// Submitted by Mike Bostock <dns@observablehq.com>
static.observableusercontent.com
@@ -12579,10 +14326,41 @@ static.observableusercontent.com
// Submitted by Andrew Sampson <andrew@ulterius.io>
cya.gg
+// OMG.LOL : <https://omg.lol>
+// Submitted by Adam Newbold <adam@omg.lol>
+omg.lol
+
// Omnibond Systems, LLC. : https://www.omnibond.com
// Submitted by Cole Estep <cole@omnibond.com>
cloudycluster.net
+// OmniWe Limited: https://omniwe.com
+// Submitted by Vicary Archangel <vicary@omniwe.com>
+omniwe.site
+
+// One.com: https://www.one.com/
+// Submitted by Jacob Bunk Nielsen <jbn@one.com>
+123hjemmeside.dk
+123hjemmeside.no
+123homepage.it
+123kotisivu.fi
+123minsida.se
+123miweb.es
+123paginaweb.pt
+123sait.ru
+123siteweb.fr
+123webseite.at
+123webseite.de
+123website.be
+123website.ch
+123website.lu
+123website.nl
+service.one
+simplesite.com
+simplesite.com.br
+simplesite.gr
+simplesite.pl
+
// One Fold Media : http://www.onefoldmedia.com/
// Submitted by Eddie Jones <eddie@onefoldmedia.com>
nid.io
@@ -12595,18 +14373,33 @@ opensocial.site
// Submitted by Sven Marnach <sven@opencraft.com>
opencraft.hosting
+// OpenResearch GmbH: https://openresearch.com/
+// Submitted by Philipp Schmid <ops@openresearch.com>
+orsites.com
+
// Opera Software, A.S.A.
// Submitted by Yngve Pettersen <yngve@opera.com>
operaunite.com
-// Oursky Limited : https://skygear.io/
-// Submited by Skygear Developer <hello@skygear.io>
+// Orange : https://www.orange.com
+// Submitted by Alexandre Linte <alexandre.linte@orange.com>
+tech.orange
+
+// Oursky Limited : https://authgear.com/, https://skygear.io/
+// Submitted by Authgear Team <hello@authgear.com>, Skygear Developer <hello@skygear.io>
+authgear-staging.com
+authgearapps.com
skygearapp.com
// OutSystems
// Submitted by Duarte Santos <domain-admin@outsystemscloud.com>
outsystemscloud.com
+// OVHcloud: https://ovhcloud.com
+// Submitted by Vincent Cassé <vincent.casse@ovhcloud.com>
+*.webpaas.ovh.net
+*.hosting.ovh.net
+
// OwnProvider GmbH: http://www.ownprovider.com
// Submitted by Jan Moennich <jan.moennich@ownprovider.com>
ownprovider.com
@@ -12636,6 +14429,17 @@ pagefrontapp.com
// Submitted by Yann Guichard <yann@pagexl.com>
pagexl.com
+// Paywhirl, Inc : https://paywhirl.com/
+// Submitted by Daniel Netzer <dan@paywhirl.com>
+*.paywhirl.com
+
+// pcarrier.ca Software Inc: https://pcarrier.ca/
+// Submitted by Pierre Carrier <pc@rrier.ca>
+bar0.net
+bar1.net
+bar2.net
+rdv.to
+
// .pl domains (grandfathered)
art.pl
gliwice.pl
@@ -12657,6 +14461,10 @@ mypep.link
// Submitted by Kenneth Van Alstyne <kvanalstyne@perspecta.com>
perspecta.cloud
+// PE Ulyanov Kirill Sergeevich : https://airy.host
+// Submitted by Kirill Ulyanov <k.ulyanov@airy.host>
+lk3.ru
+
// Planet-Work : https://www.planet-work.com/
// Submitted by Frédéric VANNIÈRE <f.vanniere@planet-work.com>
on-web.fr
@@ -12668,6 +14476,7 @@ ent.platform.sh
eu.platform.sh
us.platform.sh
*.platformsh.site
+*.tst.site
// Platter: https://platter.dev
// Submitted by Patrick Flor <patrick@platter.dev>
@@ -12685,10 +14494,25 @@ pleskns.com
// Submitted by Maximilian Schieder <maxi@zeug.co>
dyn53.io
+// Porter : https://porter.run/
+// Submitted by Rudraksh MK <rudi@porter.run>
+onporter.run
+
// Positive Codes Technology Company : http://co.bn/faq.html
// Submitted by Zulfais <pc@co.bn>
co.bn
+// Postman, Inc : https://postman.com
+// Submitted by Rahul Dhawan <security@postman.com>
+postman-echo.com
+pstmn.io
+mock.pstmn.io
+httpbin.org
+
+//prequalifyme.today : https://prequalifyme.today
+//Submitted by DeepakTiwari deepak@ivylead.io
+prequalifyme.today
+
// prgmr.com : https://prgmr.com/
// Submitted by Sarah Newman <owner@prgmr.com>
xen.prgmr.com
@@ -12718,14 +14542,35 @@ byen.site
// Submitted by Kor Nielsen <kor@pubtls.org>
pubtls.org
+// PythonAnywhere LLP: https://www.pythonanywhere.com
+// Submitted by Giles Thomas <giles@pythonanywhere.com>
+pythonanywhere.com
+eu.pythonanywhere.com
+
+// QOTO, Org.
+// Submitted by Jeffrey Phillips Freeman <jeffrey.freeman@qoto.org>
+qoto.io
+
// Qualifio : https://qualifio.com/
// Submitted by Xavier De Cock <xdecock@gmail.com>
qualifioapp.com
+// Quality Unit: https://qualityunit.com
+// Submitted by Vasyl Tsalko <vtsalko@qualityunit.com>
+ladesk.com
+
// QuickBackend: https://www.quickbackend.com
// Submitted by Dani Biro <dani@pymet.com>
qbuser.com
+// Rad Web Hosting: https://radwebhosting.com
+// Submitted by Scott Claeys <s.claeys@radwebhosting.com>
+cloudsite.builders
+
+// Redgate Software: https://red-gate.com
+// Submitted by Andrew Farries <andrew.farries@red-gate.com>
+instances.spawn.cc
+
// Redstar Consultants : https://www.redstarconsultants.com/
// Submitted by Jons Slemmer <jons@redstarconsultants.com>
instantcloud.cn
@@ -12787,8 +14632,11 @@ app.render.com
onrender.com
// Repl.it : https://repl.it
-// Submitted by Mason Clayton <mason@repl.it>
+// Submitted by Lincoln Bergeson <lincoln@replit.com>
+firewalledreplit.co
+id.firewalledreplit.co
repl.co
+id.repl.co
repl.run
// Resin.io : https://resin.io
@@ -12803,13 +14651,93 @@ hzc.io
// Revitalised Limited : http://www.revitalised.co.uk
// Submitted by Jack Price <jack@revitalised.co.uk>
wellbeingzone.eu
-ptplus.fit
wellbeingzone.co.uk
+// Rico Developments Limited : https://adimo.co
+// Submitted by Colin Brown <hello@adimo.co>
+adimo.co.uk
+
+// Riseup Networks : https://riseup.net
+// Submitted by Micah Anderson <micah@riseup.net>
+itcouldbewor.se
+
// Rochester Institute of Technology : http://www.rit.edu/
// Submitted by Jennifer Herting <jchits@rit.edu>
git-pages.rit.edu
+// Rocky Enterprise Software Foundation : https://resf.org
+// Submitted by Neil Hanlon <neil@resf.org>
+rocky.page
+
+// Rusnames Limited: http://rusnames.ru/
+// Submitted by Sergey Zotov <admin@rusnames.ru>
+биз.рус
+ком.рус
+крым.рус
+мир.рус
+мск.рус
+орг.рус
+самара.рус
+сочи.рус
+спб.рус
+я.рус
+
+// SAKURA Internet Inc. : https://www.sakura.ad.jp/
+// Submitted by Internet Service Department <rs-vendor-ml@sakura.ad.jp>
+180r.com
+dojin.com
+sakuratan.com
+sakuraweb.com
+x0.com
+2-d.jp
+bona.jp
+crap.jp
+daynight.jp
+eek.jp
+flop.jp
+halfmoon.jp
+jeez.jp
+matrix.jp
+mimoza.jp
+ivory.ne.jp
+mail-box.ne.jp
+mints.ne.jp
+mokuren.ne.jp
+opal.ne.jp
+sakura.ne.jp
+sumomo.ne.jp
+topaz.ne.jp
+netgamers.jp
+nyanta.jp
+o0o0.jp
+rdy.jp
+rgr.jp
+rulez.jp
+s3.isk01.sakurastorage.jp
+s3.isk02.sakurastorage.jp
+saloon.jp
+sblo.jp
+skr.jp
+tank.jp
+uh-oh.jp
+undo.jp
+rs.webaccel.jp
+user.webaccel.jp
+websozai.jp
+xii.jp
+squares.net
+jpn.org
+kirara.st
+x0.to
+from.tv
+sakura.tv
+
+// Salesforce.com, Inc. https://salesforce.com/
+// Submitted by Michael Biven <mbiven@salesforce.com>
+*.builder.code.com
+*.dev-builder.code.com
+*.stg-builder.code.com
+
// Sandstorm Development Group, Inc. : https://sandcats.io/
// Submitted by Asheesh Laroia <asheesh@sandstorm.io>
sandcats.io
@@ -12819,6 +14747,34 @@ sandcats.io
logoip.de
logoip.com
+// Scaleway : https://www.scaleway.com/
+// Submitted by Rémy Léone <rleone@scaleway.com>
+fr-par-1.baremetal.scw.cloud
+fr-par-2.baremetal.scw.cloud
+nl-ams-1.baremetal.scw.cloud
+fnc.fr-par.scw.cloud
+functions.fnc.fr-par.scw.cloud
+k8s.fr-par.scw.cloud
+nodes.k8s.fr-par.scw.cloud
+s3.fr-par.scw.cloud
+s3-website.fr-par.scw.cloud
+whm.fr-par.scw.cloud
+priv.instances.scw.cloud
+pub.instances.scw.cloud
+k8s.scw.cloud
+k8s.nl-ams.scw.cloud
+nodes.k8s.nl-ams.scw.cloud
+s3.nl-ams.scw.cloud
+s3-website.nl-ams.scw.cloud
+whm.nl-ams.scw.cloud
+k8s.pl-waw.scw.cloud
+nodes.k8s.pl-waw.scw.cloud
+s3.pl-waw.scw.cloud
+s3-website.pl-waw.scw.cloud
+scalebook.scw.cloud
+smartlabeling.scw.cloud
+dedibox.fr
+
// schokokeks.org GbR : https://schokokeks.org/
// Submitted by Hanno Böck <hanno@schokokeks.org>
schokokeks.net
@@ -12826,6 +14782,7 @@ schokokeks.net
// Scottish Government: https://www.gov.scot
// Submitted by Martin Ellis <martin.ellis@gov.scot>
gov.scot
+service.gov.scot
// Scry Security : http://www.scrysec.com
// Submitted by Shante Adam <shante@skyhat.io>
@@ -12848,16 +14805,33 @@ spdns.org
// Submitted by Artem Kondratev <accounts@seidat.com>
seidat.net
+// Sellfy : https://sellfy.com
+// Submitted by Yuriy Romadin <contact@sellfy.com>
+sellfy.store
+
// Senseering GmbH : https://www.senseering.de
// Submitted by Felix Mönckemeyer <f.moenckemeyer@senseering.de>
senseering.net
+// Sendmsg: https://www.sendmsg.co.il
+// Submitted by Assaf Stern <domains@comstar.co.il>
+minisite.ms
+
+// Service Magnet : https://myservicemagnet.com
+// Submitted by Dave Sanders <dave@myservicemagnet.com>
+magnet.page
+
// Service Online LLC : http://drs.ua/
// Submitted by Serhii Bulakh <support@drs.ua>
biz.ua
co.ua
pp.ua
+// Shift Crypto AG : https://shiftcrypto.ch
+// Submitted by alex <alex@shiftcrypto.ch>
+shiftcrypto.dev
+shiftcrypto.io
+
// ShiftEdit : https://shiftedit.net/
// Submitted by Adam Jimenez <adam@shiftcreate.com>
shiftedit.io
@@ -12866,6 +14840,10 @@ shiftedit.io
// Submitted by Alex Bowers <alex@shopblocks.com>
myshopblocks.com
+// Shopify : https://www.shopify.com
+// Submitted by Alex Richter <alex.richter@shopify.com>
+myshopify.com
+
// Shopit : https://www.shopitcommerce.com/
// Submitted by Craig McMahon <craig@shopitcommerce.com>
shopitsite.com
@@ -12896,16 +14874,70 @@ bounty-full.com
alpha.bounty-full.com
beta.bounty-full.com
+// Smallregistry by Promopixel SARL: https://www.smallregistry.net
+// Former AFNIC's SLDs
+// Submitted by Jérôme Lipowicz <support@promopixel.com>
+aeroport.fr
+avocat.fr
+chambagri.fr
+chirurgiens-dentistes.fr
+experts-comptables.fr
+medecin.fr
+notaires.fr
+pharmacien.fr
+port.fr
+veterinaire.fr
+
+// Small Technology Foundation : https://small-tech.org
+// Submitted by Aral Balkan <aral@small-tech.org>
+small-web.org
+
+// Smoove.io : https://www.smoove.io/
+// Submitted by Dan Kozak <dan@smoove.io>
+vp4.me
+
+// Snowflake Inc : https://www.snowflake.com/
+// Submitted by Faith Olapade <faith.olapade@snowflake.com>
+snowflake.app
+privatelink.snowflake.app
+streamlit.app
+streamlitapp.com
+
+// Snowplow Analytics : https://snowplowanalytics.com/
+// Submitted by Ian Streeter <ian@snowplowanalytics.com>
+try-snowplow.com
+
+// SourceHut : https://sourcehut.org
+// Submitted by Drew DeVault <sir@cmpwn.com>
+srht.site
+
// Stackhero : https://www.stackhero.io
// Submitted by Adrien Gillon <adrien+public-suffix-list@stackhero.io>
stackhero-network.com
+// Staclar : https://staclar.com
+// Submitted by Q Misell <q@staclar.com>
+musician.io
+// Submitted by Matthias Merkel <matthias.merkel@staclar.com>
+novecore.site
+
// staticland : https://static.land
// Submitted by Seth Vincent <sethvincent@gmail.com>
static.land
dev.static.land
sites.static.land
+// Storebase : https://www.storebase.io
+// Submitted by Tony Schirmer <tony@storebase.io>
+storebase.store
+
+// Strategic System Consulting (eApps Hosting): https://www.eapps.com/
+// Submitted by Alex Oancea <aoancea@cloudscale365.com>
+vps-host.net
+atl.jelastic.vps-host.net
+njs.jelastic.vps-host.net
+ric.jelastic.vps-host.net
+
// Sony Interactive Entertainment LLC : https://sie.com/
// Submitted by David Coles <david.coles@sony.com>
playstation-cloud.com
@@ -12923,10 +14955,36 @@ spacekit.io
// Submitted by Stefan Neufeind <info@speedpartner.de>
customer.speedpartner.de
+// Spreadshop (sprd.net AG) : https://www.spreadshop.com/
+// Submitted by Martin Breest <security@spreadshop.com>
+myspreadshop.at
+myspreadshop.com.au
+myspreadshop.be
+myspreadshop.ca
+myspreadshop.ch
+myspreadshop.com
+myspreadshop.de
+myspreadshop.dk
+myspreadshop.es
+myspreadshop.fi
+myspreadshop.fr
+myspreadshop.ie
+myspreadshop.it
+myspreadshop.net
+myspreadshop.nl
+myspreadshop.no
+myspreadshop.pl
+myspreadshop.se
+myspreadshop.co.uk
+
// Standard Library : https://stdlib.com
// Submitted by Jacob Lee <jacob@stdlib.com>
api.stdlib.com
+// Storipress : https://storipress.com
+// Submitted by Benno Liu <benno@storipress.com>
+storipress.app
+
// Storj Labs Inc. : https://storj.io/
// Submitted by Philip Hutchins <hostmaster@storj.io>
storj.farm
@@ -12944,10 +15002,12 @@ user.srcf.net
// Submitted by Dan Miller <dm@sub6.com>
temp-dns.com
-// Swisscom Application Cloud: https://developer.swisscom.com
-// Submitted by Matthias.Winzeler <matthias.winzeler@swisscom.com>
-applicationcloud.io
-scapp.io
+// Supabase : https://supabase.io
+// Submitted by Inian Parameshwaran <security@supabase.io>
+supabase.co
+supabase.in
+supabase.net
+su.paba.se
// Symfony, SAS : https://symfony.com/
// Submitted by Fabien Potencier <fabien@symfony.com>
@@ -12960,26 +15020,38 @@ syncloud.it
// Synology, Inc. : https://www.synology.com/
// Submitted by Rony Weng <ronyweng@synology.com>
-diskstation.me
dscloud.biz
-dscloud.me
-dscloud.mobi
+direct.quickconnect.cn
dsmynas.com
-dsmynas.net
-dsmynas.org
familyds.com
-familyds.net
-familyds.org
+diskstation.me
+dscloud.me
i234.me
myds.me
synology.me
+dscloud.mobi
+dsmynas.net
+familyds.net
+dsmynas.org
+familyds.org
vpnplus.to
direct.quickconnect.to
+// Tabit Technologies Ltd. : https://tabit.cloud/
+// Submitted by Oren Agiv <oren@tabit.cloud>
+tabitorder.co.il
+mytabit.co.il
+mytabit.com
+
// TAIFUN Software AG : http://taifun-software.de
// Submitted by Bjoern Henke <dev-server@taifun-software.de>
taifun-dns.de
+// Tailscale Inc. : https://www.tailscale.com
+// Submitted by David Anderson <danderson@tailscale.com>
+beta.tailscale.net
+ts.net
+
// TASK geographical domains (www.task.gda.pl/uslugi/dns)
gda.pl
gdansk.pl
@@ -12987,9 +15059,14 @@ gdynia.pl
med.pl
sopot.pl
+// team.blue https://team.blue
+// Submitted by Cedric Dubois <cedric.dubois@team.blue>
+site.tb-hosting.com
+
// Teckids e.V. : https://www.teckids.org
// Submitted by Dominik George <dominik.george@teckids.org>
-edugit.org
+edugit.io
+s3.teckids.org
// Telebit : https://telebit.cloud
// Submitted by AJ ONeal <aj@telebit.cloud>
@@ -12997,22 +15074,34 @@ telebit.app
telebit.io
*.telebit.xyz
-// The Gwiddle Foundation : https://gwiddlefoundation.org.uk
-// Submitted by Joshua Bayfield <joshua.bayfield@gwiddlefoundation.org.uk>
-gwiddle.co.uk
-
// Thingdust AG : https://thingdust.com/
// Submitted by Adrian Imboden <adi@thingdust.com>
+*.firenet.ch
+*.svc.firenet.ch
+reservd.com
thingdustdata.com
cust.dev.thingdust.io
cust.disrec.thingdust.io
cust.prod.thingdust.io
cust.testing.thingdust.io
+reservd.dev.thingdust.io
+reservd.disrec.thingdust.io
+reservd.testing.thingdust.io
+
+// ticket i/O GmbH : https://ticket.io
+// Submitted by Christian Franke <it@ticket.io>
+tickets.io
// Tlon.io : https://tlon.io
// Submitted by Mark Staarink <mark@tlon.io>
arvo.network
azimuth.network
+tlon.network
+
+// Tor Project, Inc. : https://torproject.org
+// Submitted by Antoine Beaupré <anarcat@torproject.org
+torproject.net
+pages.torproject.net
// TownNews.com : http://www.townnews.com
// Submitted by Dustin Ward <dward@townnews.com>
@@ -13047,6 +15136,10 @@ lima.zone
*.transurl.eu
*.transurl.nl
+// TransIP: https://www.transip.nl
+// Submitted by Cedric Dubois <cedric.dubois@team.blue>
+site.transip.me
+
// TuxFamily : http://tuxfamily.org
// Submitted by TuxFamily administrators <adm@staff.tuxfamily.org>
tuxfamily.org
@@ -13067,6 +15160,14 @@ syno-ds.de
synology-diskstation.de
synology-ds.de
+// Typedream : https://typedream.com
+// Submitted by Putri Karunia <putri@typedream.com>
+typedream.app
+
+// Typeform : https://www.typeform.com
+// Submitted by Sergi Ferriz <sergi.ferriz@typeform.com>
+pro.typeform.com
+
// Uberspace : https://uberspace.de
// Submitted by Moritz Werner <mwerner@jonaspasche.com>
uber.space
@@ -13079,11 +15180,28 @@ hk.org
ltd.hk
inc.hk
+// UK Intis Telecom LTD : https://it.com
+// Submitted by ITComdomains <to@it.com>
+it.com
+
+// UNIVERSAL DOMAIN REGISTRY : https://www.udr.org.yt/
+// see also: whois -h whois.udr.org.yt help
+// Submitted by Atanunu Igbunuroghene <publicsuffixlist@udr.org.yt>
+name.pm
+sch.tf
+biz.wf
+sch.wf
+org.yt
+
// United Gameserver GmbH : https://united-gameserver.de
// Submitted by Stefan Schwarz <sysadm@united-gameserver.de>
virtualuser.de
virtual-user.de
+// Upli : https://upli.io
+// Submitted by Lenny Bakkalian <lenny.bakkalian@gmail.com>
+upli.io
+
// urown.net : https://urown.net
// Submitted by Hostmaster <hostmaster@urown.net>
urown.cloud
@@ -13146,7 +15264,6 @@ at.md
de.md
jp.md
to.md
-uwu.nu
indie.porn
vxl.sh
ch.tc
@@ -13162,6 +15279,10 @@ me.vu
// Submitted by Serhii Rostilo <sergey@rostilo.kiev.ua>
v.ua
+// Vultr Objects : https://www.vultr.com/products/object-storage/
+// Submitted by Niels Maumenee <storage@vultr.com>
+*.vultrobjects.com
+
// Waffle Computer Inc., Ltd. : https://docs.waffleinfo.com
// Submitted by Masayuki Note <masa@blade.wafflecell.com>
wafflecell.com
@@ -13170,6 +15291,13 @@ wafflecell.com
// Submitted by Arnold Hendriks <info@webhare.com>
*.webhare.dev
+// WebHotelier Technologies Ltd: https://www.webhotelier.net/
+// Submitted by Apostolos Tsakpinis <apostolos.tsakpinis@gmail.com>
+reserve-online.net
+reserve-online.com
+bookonline.app
+hotelwithflight.com
+
// WeDeploy by Liferay, Inc. : https://www.wedeploy.com
// Submitted by Henrique Vicente <security@wedeploy.com>
wedeploy.io
@@ -13195,17 +15323,37 @@ wmcloud.org
panel.gg
daemon.panel.gg
+// Wizard Zines : https://wizardzines.com
+// Submitted by Julia Evans <julia@wizardzines.com>
+messwithdns.com
+
// WoltLab GmbH : https://www.woltlab.com
// Submitted by Tim Düsterhus <security@woltlab.cloud>
+woltlab-demo.com
myforum.community
community-pro.de
diskussionsbereich.de
community-pro.net
meinforum.net
-// www.com.vc : http://www.com.vc
-// Submitted by Li Hui <lihui@sinopub.com>
-cn.vu
+// Woods Valldata : https://www.woodsvalldata.co.uk/
+// Submitted by Chris Whittle <chris.whittle@woodsvalldata.co.uk>
+affinitylottery.org.uk
+raffleentry.org.uk
+weeklylottery.org.uk
+
+// WP Engine : https://wpengine.com/
+// Submitted by Michael Smith <michael.smith@wpengine.com>
+// Submitted by Brandon DuRette <brandon.durette@wpengine.com>
+wpenginepowered.com
+js.wpenginepowered.com
+
+// Wix.com, Inc. : https://www.wix.com
+// Submitted by Shahar Talmi <shahar@wix.com>
+wixsite.com
+editorx.io
+wixstudio.io
+wix.run
// XenonCloud GbR: https://xenoncloud.net
// Submitted by Julian Uphoff <publicsuffixlist@xenoncloud.net>
@@ -13249,6 +15397,7 @@ ybo.trade
// Yunohost : https://yunohost.org
// Submitted by Valentin Grimaud <security@yunohost.org>
+ynh.fr
nohost.me
noho.st
@@ -13267,12 +15416,4 @@ basicserver.io
virtualserver.io
enterprisecloud.nu
-// Mintere : https://mintere.com/
-// Submitted by Ben Aubin <security@mintere.com>
-mintere.site
-
-// WP Engine : https://wpengine.com/
-// Submitted by Michael Smith <michael.smith@wpengine.com>
-wpenginepowered.com
-
// ===END PRIVATE DOMAINS===
diff --git a/source/l/libptytty/libptytty.SlackBuild b/source/l/libptytty/libptytty.SlackBuild
new file mode 100755
index 000000000..a2dbd3966
--- /dev/null
+++ b/source/l/libptytty/libptytty.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libptytty
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DBUILD_SHARED_LIBS=ON \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ Changes* COPYING* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libptytty/libptytty.url b/source/l/libptytty/libptytty.url
new file mode 100644
index 000000000..b67dc9f0d
--- /dev/null
+++ b/source/l/libptytty/libptytty.url
@@ -0,0 +1 @@
+http://dist.schmorp.de/libptytty/
diff --git a/source/l/libptytty/slack-desc b/source/l/libptytty/slack-desc
new file mode 100644
index 000000000..a372fcd8f
--- /dev/null
+++ b/source/l/libptytty/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libptytty: libptytty (pty/tty and utmp/wtmp/lastlog library)
+libptytty:
+libptytty: Libptytty is a small library that offers pseudo-tty management in an
+libptytty: OS-independent way. It was created out of frustration over the many
+libptytty: differences of pty/tty handling in different operating systems for the
+libptytty: use inside "rxvt-unicode".
+libptytty:
+libptytty: In addition to offering mere pty/tty management, it also offers session
+libptytty: database support (utmp and optional wtmp/lastlog updates for login
+libptytty: shells).
+libptytty:
diff --git a/source/l/libqalculate/libqalculate.SlackBuild b/source/l/libqalculate/libqalculate.SlackBuild
index 82062ea8a..4984f81f0 100755
--- a/source/l/libqalculate/libqalculate.SlackBuild
+++ b/source/l/libqalculate/libqalculate.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libqalculate
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/librevenge/librevenge.SlackBuild b/source/l/librevenge/librevenge.SlackBuild
index fd0274705..ed535abab 100755
--- a/source/l/librevenge/librevenge.SlackBuild
+++ b/source/l/librevenge/librevenge.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=librevenge
VERSION=${VERSION:-$(echo librevenge-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/librsvg/librsvg.SlackBuild b/source/l/librsvg/librsvg.SlackBuild
index ab9ab4fb6..28400d22a 100755
--- a/source/l/librsvg/librsvg.SlackBuild
+++ b/source/l/librsvg/librsvg.SlackBuild
@@ -1,5 +1,5 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2016, 2018 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2016, 2018, 2022, 2023 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -76,8 +76,12 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Hate to do this, but I'll let this thing download since it has to.
+# Direct any complaints upstream please :-)
+#UNSHARE="unshare -n"
+
CFLAGS="$SLKCFLAGS" \
-./configure \
+$UNSHARE ./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
@@ -88,12 +92,17 @@ CFLAGS="$SLKCFLAGS" \
--enable-static=no \
--build=$ARCH-slackware-linux || exit 1
-make $NUMJOBS || make || exit 1
+$UNSHARE make $NUMJOBS || $UNSHARE make || exit 1
make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# Add this symlink for now so that we don't break compiles:
+if [ ! -r $PKG/usr/include/librsvg-2.0/librsvg/librsvg-features.h ]; then
+ ln -sf rsvg-features.h $PKG/usr/include/librsvg-2.0/librsvg/librsvg-features.h
+fi
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -116,7 +125,9 @@ mkdir -p $PKG/usr/doc/librsvg-$VERSION
cp -a \
AUTHORS COPYING* NEWS README* TODO \
$PKG/usr/doc/librsvg-$VERSION
-( cd $PKG/usr/doc/librsvg-$VERSION ; ln -s /usr/share/gtk-doc/html/rsvg-2.0/ html )
+if [ -d $PKG/usr/share/gtk-doc/html/rsvg-2.0 ]; then
+ ( cd $PKG/usr/doc/librsvg-$VERSION ; ln -s /usr/share/gtk-doc/html/rsvg-2.0/ html )
+fi
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/libsamplerate/libsamplerate.SlackBuild b/source/l/libsamplerate/libsamplerate.SlackBuild
index 9778bcbab..eb4e06ef2 100755
--- a/source/l/libsamplerate/libsamplerate.SlackBuild
+++ b/source/l/libsamplerate/libsamplerate.SlackBuild
@@ -41,7 +41,7 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-$TMP}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
diff --git a/source/l/libsass/libsass.SlackBuild b/source/l/libsass/libsass.SlackBuild
index b5f0ce85c..897c0e4f9 100755
--- a/source/l/libsass/libsass.SlackBuild
+++ b/source/l/libsass/libsass.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libseccomp/libseccomp.SlackBuild b/source/l/libseccomp/libseccomp.SlackBuild
new file mode 100755
index 000000000..b2b2abd82
--- /dev/null
+++ b/source/l/libseccomp/libseccomp.SlackBuild
@@ -0,0 +1,142 @@
+#!/bin/bash
+
+# Copyright 2016-2020 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libseccomp
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --enable-static=no \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ CHANGELOG* CONTRIBUTING* CREDITS* LICENSE* README* SECURITY* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGELOG file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGELOG ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGELOG | head -n 1000 > $DOCSDIR/CHANGELOG
+ touch -r CHANGELOG $DOCSDIR/CHANGELOG
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libseccomp/libseccomp.url b/source/l/libseccomp/libseccomp.url
new file mode 100644
index 000000000..90b4fea89
--- /dev/null
+++ b/source/l/libseccomp/libseccomp.url
@@ -0,0 +1 @@
+https://github.com/seccomp/libseccomp
diff --git a/source/l/libseccomp/slack-desc b/source/l/libseccomp/slack-desc
new file mode 100644
index 000000000..abebff9fa
--- /dev/null
+++ b/source/l/libseccomp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libseccomp: libseccomp (enhanced seccomp library)
+libseccomp:
+libseccomp: The libseccomp library provides an easy to use, platform independent,
+libseccomp: interface to the Linux Kernel's syscall filtering mechanism. The
+libseccomp: libseccomp API is designed to abstract away the underlying BPF based
+libseccomp: syscall filter language and present a more conventional function-call
+libseccomp: based filtering interface that should be familiar to, and easily
+libseccomp: adopted by, application developers.
+libseccomp:
+libseccomp: Homepage: https://github.com/seccomp/libseccomp
+libseccomp:
diff --git a/source/l/libsecret/libsecret.SlackBuild b/source/l/libsecret/libsecret.SlackBuild
index 0446a97e5..865ed26fa 100755
--- a/source/l/libsecret/libsecret.SlackBuild
+++ b/source/l/libsecret/libsecret.SlackBuild
@@ -1,7 +1,5 @@
#!/bin/bash
-# Slackware build script for libsecret
-
# Copyright 2012 Robby Workman, Northport, Alabama, USA
# All rights reserved.
#
@@ -25,8 +23,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsecret
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -67,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -76,24 +74,29 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --mandir=/usr/man \
- --enable-introspection \
- --disable-static \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+ --buildtype=release \
+ -Dintrospection=true \
+ -Dgtk_doc=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -102,7 +105,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
+ AUTHORS* COPYING* INSTALL* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/libsigc++/libsigc++.SlackBuild b/source/l/libsigc++/libsigc++.SlackBuild
index 3c4e3a07e..b95217520 100755
--- a/source/l/libsigc++/libsigc++.SlackBuild
+++ b/source/l/libsigc++/libsigc++.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2018, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018, 2021, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -103,7 +103,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
+ AUTHORS* COPYING* INSTALL* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
# Remove images, API docs, and useless html file
rm -rf $PKG/usr/doc/$PKGNAM-$VERSION/{images,reference,index.html}
diff --git a/source/l/libsigc++/libsigc++.url b/source/l/libsigc++/libsigc++.url
new file mode 100644
index 000000000..f85930af7
--- /dev/null
+++ b/source/l/libsigc++/libsigc++.url
@@ -0,0 +1,2 @@
+https://github.com/libsigcplusplus/libsigcplusplus
+https://github.com/libsigcplusplus/libsigcplusplus/releases/download/2.12.1/libsigc++-2.12.1.tar.xz
diff --git a/source/l/libsigc++3/libsigc++.url b/source/l/libsigc++3/libsigc++.url
new file mode 100644
index 000000000..ce79bab10
--- /dev/null
+++ b/source/l/libsigc++3/libsigc++.url
@@ -0,0 +1,2 @@
+https://github.com/libsigcplusplus/libsigcplusplus
+https://github.com/libsigcplusplus/libsigcplusplus/releases/download/3.6.0/libsigc++-3.6.0.tar.xz
diff --git a/source/l/libsigc++3/libsigc++3.SlackBuild b/source/l/libsigc++3/libsigc++3.SlackBuild
index 59bbacf4c..a19cd4e1f 100755
--- a/source/l/libsigc++3/libsigc++3.SlackBuild
+++ b/source/l/libsigc++3/libsigc++3.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2018, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018, 2021, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -101,17 +101,17 @@ cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+mkdir -p $PKG/usr/doc/$SRCNAM-$VERSION
cp -a \
AUTHORS COPYING* INSTALL NEWS README* \
- $PKG/usr/doc/$PKGNAM-$VERSION
+ $PKG/usr/doc/$SRCNAM-$VERSION
# Remove images, API docs, and useless html file
-rm -rf $PKG/usr/doc/$PKGNAM-$VERSION/{images,reference,index.html}
+rm -rf $PKG/usr/doc/$SRCNAM-$VERSION/{images,reference,index.html}
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ DOCSDIR=$(echo $PKG/usr/doc/${SRCNAM}-$VERSION)
cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
diff --git a/source/l/libsigsegv/libsigsegv.SlackBuild b/source/l/libsigsegv/libsigsegv.SlackBuild
index e09c46154..6038b82dc 100755
--- a/source/l/libsigsegv/libsigsegv.SlackBuild
+++ b/source/l/libsigsegv/libsigsegv.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsigsegv
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/libsndfile/libsndfile.SlackBuild b/source/l/libsndfile/libsndfile.SlackBuild
index 7ae6d78b0..4fb15c3fa 100755
--- a/source/l/libsndfile/libsndfile.SlackBuild
+++ b/source/l/libsndfile/libsndfile.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2010 paul wisehart, Hyattsville, MD, USA
# Copyright 2010 Robby Workman, Northport, Alabama, USA
-# Copyright 2011, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2018, 2020, 2021, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsndfile
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -75,6 +75,13 @@ cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R a-s,u+w,go+r-w .
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/libsodium/libsodium.SlackBuild b/source/l/libsodium/libsodium.SlackBuild
index 3034cdd84..69810efb5 100755
--- a/source/l/libsodium/libsodium.SlackBuild
+++ b/source/l/libsodium/libsodium.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsodium
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -74,9 +74,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
+rm -rf $PKGNAM-$VERSION $PKGNAM-stable
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$VERSION || exit 1
+cd $PKGNAM-$VERSION || cd $PKGNAM-stable || exit 1
chown -R root:root .
find . \
diff --git a/source/l/libsoup/libsoup.SlackBuild b/source/l/libsoup/libsoup.SlackBuild
index ba90083d1..0fcdcbfb8 100755
--- a/source/l/libsoup/libsoup.SlackBuild
+++ b/source/l/libsoup/libsoup.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsoup
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/l/libsoup3/libsoup3.SlackBuild b/source/l/libsoup3/libsoup3.SlackBuild
new file mode 100755
index 000000000..5c60e14f8
--- /dev/null
+++ b/source/l/libsoup3/libsoup3.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+#
+# Slackware build script for libsoup
+#
+# Copyright 2009-2010 Erik W. Hanson, Minneapolis, MN, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libsoup3
+SRCNAM=libsoup
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+unshare -n meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dgssapi=disabled \
+ -Dvapi=enabled \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a COPYING* AUTHORS NEWS README* $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libsoup3/slack-desc b/source/l/libsoup3/slack-desc
new file mode 100644
index 000000000..c8579c993
--- /dev/null
+++ b/source/l/libsoup3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libsoup3: libsoup3 (an HTTP client/server library, v3)
+libsoup3:
+libsoup3: Soup is an HTTP client/server library implementation in C. It uses
+libsoup3: GObjects and the glib main loop to integrate well with GTK+
+libsoup3: applications, and has a synchronous API suitable for use in threaded
+libsoup3: applications.
+libsoup3:
+libsoup3:
+libsoup3:
+libsoup3:
+libsoup3:
diff --git a/source/l/libspectre/libspectre.SlackBuild b/source/l/libspectre/libspectre.SlackBuild
index 99d06b9d7..96a6edb39 100755
--- a/source/l/libspectre/libspectre.SlackBuild
+++ b/source/l/libspectre/libspectre.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libspectre
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libssh2/libssh2.SlackBuild b/source/l/libssh2/libssh2.SlackBuild
index 50007b4e7..b50d380a4 100755
--- a/source/l/libssh2/libssh2.SlackBuild
+++ b/source/l/libssh2/libssh2.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libssh2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libtiff/libtiff.SlackBuild b/source/l/libtiff/libtiff.SlackBuild
index cbadc1421..4ef8eb2d4 100755
--- a/source/l/libtiff/libtiff.SlackBuild
+++ b/source/l/libtiff/libtiff.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2004, 2005, 2006, 2009, 2010, 2011, 2012, 2013, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2004, 2005, 2006, 2009, 2010, 2011, 2012, 2013, 2015, 2018, 2022, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -80,6 +80,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Apply upstream patches (if any):
+for patch in $CWD/patches/*.patch.gz ; do
+ zcat $patch | patch -p1 --verbose || exit 1
+done
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/libunibreak/libunibreak.SlackBuild b/source/l/libunibreak/libunibreak.SlackBuild
new file mode 100755
index 000000000..a7e9d828f
--- /dev/null
+++ b/source/l/libunibreak/libunibreak.SlackBuild
@@ -0,0 +1,134 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libunibreak
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* LICENSE* NEWS* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libunibreak/libunibreak.url b/source/l/libunibreak/libunibreak.url
new file mode 100644
index 000000000..1b97bc53b
--- /dev/null
+++ b/source/l/libunibreak/libunibreak.url
@@ -0,0 +1,2 @@
+https://github.com/adah1972/libunibreak
+https://github.com/adah1972/libunibreak/releases/download/libunibreak_6_1/libunibreak-6.1.tar.gz
diff --git a/source/l/libunibreak/slack-desc b/source/l/libunibreak/slack-desc
new file mode 100644
index 000000000..911aa88ec
--- /dev/null
+++ b/source/l/libunibreak/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libunibreak: libunibreak (Unicode line/word breaking library)
+libunibreak:
+libunibreak: libunibreak is an implementation of the line breaking and word
+libunibreak: breaking algorithms as described in Unicode Standard Annex 14 and
+libunibreak: Unicode Standard Annex 29.
+libunibreak:
+libunibreak: Homepage: https://github.com/adah1972/libunibreak
+libunibreak:
+libunibreak:
+libunibreak:
+libunibreak:
diff --git a/source/l/libunistring/libunistring.SlackBuild b/source/l/libunistring/libunistring.SlackBuild
index 3cd01b984..92becf21b 100755
--- a/source/l/libunistring/libunistring.SlackBuild
+++ b/source/l/libunistring/libunistring.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libunistring
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libunwind/libunwind.SlackBuild b/source/l/libunwind/libunwind.SlackBuild
index 8194e9153..73a29d7ad 100755
--- a/source/l/libunwind/libunwind.SlackBuild
+++ b/source/l/libunwind/libunwind.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libunwind
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/liburing/liburing.SlackBuild b/source/l/liburing/liburing.SlackBuild
index 4495478bf..ad64ab05e 100755
--- a/source/l/liburing/liburing.SlackBuild
+++ b/source/l/liburing/liburing.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -125,7 +125,6 @@ done
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
COPYING* LICENSE* README* \
- examples \
$PKG/usr/doc/${PKGNAM}-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/libusb-compat/libusb-compat.SlackBuild b/source/l/libusb-compat/libusb-compat.SlackBuild
index 162b60a50..3d4ce986b 100755
--- a/source/l/libusb-compat/libusb-compat.SlackBuild
+++ b/source/l/libusb-compat/libusb-compat.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2018, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -92,6 +92,13 @@ find . \
-exec chmod 644 {} \+
# Configure:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/libusb-compat/libusb-compat.url b/source/l/libusb-compat/libusb-compat.url
new file mode 100644
index 000000000..bd2d92247
--- /dev/null
+++ b/source/l/libusb-compat/libusb-compat.url
@@ -0,0 +1 @@
+http://downloads.sourceforge.net/libusb/libusb-compat-0.1.8.tar.bz2
diff --git a/source/l/libusb-compat/slack-desc b/source/l/libusb-compat/slack-desc
index ec95d8314..cf41e6e81 100644
--- a/source/l/libusb-compat/slack-desc
+++ b/source/l/libusb-compat/slack-desc
@@ -12,7 +12,7 @@ libusb-compat: A compatibility layer allowing applications written for libusb-0.
libusb-compat: work with libusb-1.0. libusb-compat-0.1 attempts to retain as much
libusb-compat: ABI and API compatibility with libusb-0.1 as possible.
libusb-compat:
-libusb-compat: Homepage: http://libusb.info
+libusb-compat: Homepage: https://libusb.info
libusb-compat:
libusb-compat:
libusb-compat:
diff --git a/source/l/libusb/f6d2cb561402c3b6d3627c0eb89e009b503d9067.patch b/source/l/libusb/f6d2cb561402c3b6d3627c0eb89e009b503d9067.patch
deleted file mode 100644
index 739d41c40..000000000
--- a/source/l/libusb/f6d2cb561402c3b6d3627c0eb89e009b503d9067.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From f6d2cb561402c3b6d3627c0eb89e009b503d9067 Mon Sep 17 00:00:00 2001
-From: Chris Dickens <christopher.a.dickens@gmail.com>
-Date: Sun, 13 Dec 2020 15:49:19 -0800
-Subject: [PATCH] linux_usbfs: Fix parsing of descriptors for
- multi-configuration devices
-
-Commit e2be556bd2 ("linux_usbfs: Parse config descriptors during device
-initialization") introduced a regression for devices with multiple
-configurations. The logic that verifies the reported length of the
-configuration descriptors failed to count the length of the
-configuration descriptor itself and would truncate the actual length by
-9 bytes, leading to a parsing error for subsequent descriptors.
-
-Closes #825
-
-Signed-off-by: Chris Dickens <christopher.a.dickens@gmail.com>
----
- libusb/os/linux_usbfs.c | 12 ++++++++----
- libusb/version_nano.h | 2 +-
- 2 files changed, 9 insertions(+), 5 deletions(-)
-
-diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c
-index fb2ed53a..4d2dc8d6 100644
---- a/libusb/os/linux_usbfs.c
-+++ b/libusb/os/linux_usbfs.c
-@@ -641,7 +641,12 @@ static int seek_to_next_config(struct libusb_context *ctx,
- uint8_t *buffer, size_t len)
- {
- struct usbi_descriptor_header *header;
-- int offset = 0;
-+ int offset;
-+
-+ /* Start seeking past the config descriptor */
-+ offset = LIBUSB_DT_CONFIG_SIZE;
-+ buffer += LIBUSB_DT_CONFIG_SIZE;
-+ len -= LIBUSB_DT_CONFIG_SIZE;
-
- while (len > 0) {
- if (len < 2) {
-@@ -718,7 +723,7 @@ static int parse_config_descriptors(struct libusb_device *dev)
- }
-
- if (priv->sysfs_dir) {
-- /*
-+ /*
- * In sysfs wTotalLength is ignored, instead the kernel returns a
- * config descriptor with verified bLength fields, with descriptors
- * with an invalid bLength removed.
-@@ -727,8 +732,7 @@ static int parse_config_descriptors(struct libusb_device *dev)
- int offset;
-
- if (num_configs > 1 && idx < num_configs - 1) {
-- offset = seek_to_next_config(ctx, buffer + LIBUSB_DT_CONFIG_SIZE,
-- remaining - LIBUSB_DT_CONFIG_SIZE);
-+ offset = seek_to_next_config(ctx, buffer, remaining);
- if (offset < 0)
- return offset;
- sysfs_config_len = (uint16_t)offset;
-diff --git a/libusb/version_nano.h b/libusb/version_nano.h
-index 61a0a700..578b0979 100644
---- a/libusb/version_nano.h
-+++ b/libusb/version_nano.h
-@@ -1 +1 @@
--#define LIBUSB_NANO 11584
-+#define LIBUSB_NANO 11586
diff --git a/source/l/libusb/libusb.SlackBuild b/source/l/libusb/libusb.SlackBuild
index c8c429c68..45df60960 100755
--- a/source/l/libusb/libusb.SlackBuild
+++ b/source/l/libusb/libusb.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libusb
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -77,7 +77,13 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-zcat $CWD/f6d2cb561402c3b6d3627c0eb89e009b503d9067.patch.gz | patch -p1 --verbose || exit 1
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/libusbmuxd/fetch-libusbmuxd.sh b/source/l/libusbmuxd/fetch-libusbmuxd.sh
index 247ab31db..d5906fb29 100755
--- a/source/l/libusbmuxd/fetch-libusbmuxd.sh
+++ b/source/l/libusbmuxd/fetch-libusbmuxd.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2019, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -37,8 +37,9 @@ git clone https://github.com/libimobiledevice/libusbmuxd
HEADISAT="$( cd libusbmuxd && git log -1 --format=%h )"
DATE="$( cd libusbmuxd && git log -1 --format=%cd --date=format:%Y%m%d )"
LONGDATE="$( cd libusbmuxd && git log -1 --format=%cd --date=format:%c )"
+# COMMENTED OUT: otherwise build fails due to not finding version / latest commit
# Cleanup. We're not packing up the whole git repo.
-( cd libusbmuxd && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+#( cd libusbmuxd && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
mv libusbmuxd libusbmuxd-${DATE}_${HEADISAT}
tar cf libusbmuxd-${DATE}_${HEADISAT}.tar libusbmuxd-${DATE}_${HEADISAT}
xz -9 -f libusbmuxd-${DATE}_${HEADISAT}.tar
diff --git a/source/l/libusbmuxd/libusbmuxd.SlackBuild b/source/l/libusbmuxd/libusbmuxd.SlackBuild
index 79dfe515b..d2f4d6e00 100755
--- a/source/l/libusbmuxd/libusbmuxd.SlackBuild
+++ b/source/l/libusbmuxd/libusbmuxd.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libusbmuxd
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libuv/libuv.SlackBuild b/source/l/libuv/libuv.SlackBuild
index 716c1c92a..2e2c576d2 100755
--- a/source/l/libuv/libuv.SlackBuild
+++ b/source/l/libuv/libuv.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libvisio/libvisio.SlackBuild b/source/l/libvisio/libvisio.SlackBuild
index d37a341a5..252946ef9 100755
--- a/source/l/libvisio/libvisio.SlackBuild
+++ b/source/l/libvisio/libvisio.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvisio
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-7}
+BUILD=${BUILD:-12}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/libvisual-plugins b/source/l/libvisual-plugins
new file mode 120000
index 000000000..94e2b31e3
--- /dev/null
+++ b/source/l/libvisual-plugins
@@ -0,0 +1 @@
+libvisual \ No newline at end of file
diff --git a/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch b/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch
deleted file mode 100644
index 8e54e02cb..000000000
--- a/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-The static VisPluginInfo in nastyfft was declared as const, but libvisual write
-to its refcount when it visual_object_unref()s it (nasty!). This is broken at
-various levels: libvisual shouldn't be writing to this static plugin which is
-allocated by a dlopen()ed plugin, and it should also honor the "const
-VisPluginInfo" API... Anyway, nastyfft was the only occurrence and this fixes
-the crash for now; LP: #287448.
-
---- libvisual-plugins-0.4.0.dfsg.1.orig/plugins/actor/nastyfft/actor_nastyfft.c
-+++ libvisual-plugins-0.4.0.dfsg.1/plugins/actor/nastyfft/actor_nastyfft.c
-@@ -80,7 +80,7 @@
- .vidoptions.depth = VISUAL_VIDEO_DEPTH_GL
- }};
-
-- static const VisPluginInfo info[] = {{
-+ static VisPluginInfo info[] = {{
- .type = VISUAL_PLUGIN_TYPE_ACTOR,
-
- .plugname = N_("nastyfft"),
diff --git a/source/l/libvisual-plugins/libvisual-plugins.gstreamer.diff b/source/l/libvisual-plugins/libvisual-plugins.gstreamer.diff
deleted file mode 100644
index 060cef30b..000000000
--- a/source/l/libvisual-plugins/libvisual-plugins.gstreamer.diff
+++ /dev/null
@@ -1,73 +0,0 @@
---- ./configure.orig 2006-03-20 12:48:36.000000000 -0600
-+++ ./configure 2008-09-12 00:08:19.000000000 -0500
-@@ -23466,11 +23466,11 @@
- if test "$HAVE_GTK" = "yes"; then
- build_actor_plugins="$build_actor_plugins gdkpixbuf"
- else
-- { echo "$as_me:$LINENO: WARNING: *** GTK+ >= ${2.0} is not found.
-+ { echo "$as_me:$LINENO: WARNING: *** GTK+ >= 2.0 is not found.
- The libvisual GdkPixbuf image loader plugin won't be build.
- GdkPixbuf is included within gtk-2.0 and newer, which can be
- downloaded at http://www.gtk.org/" >&5
--echo "$as_me: WARNING: *** GTK+ >= ${2.0} is not found.
-+echo "$as_me: WARNING: *** GTK+ >= 2.0 is not found.
- The libvisual GdkPixbuf image loader plugin won't be build.
- GdkPixbuf is included within gtk-2.0 and newer, which can be
- downloaded at http://www.gtk.org/" >&2;}
-@@ -23496,12 +23496,12 @@
- pkg_cv_GSTREAMER_CFLAGS="$GSTREAMER_CFLAGS"
- else
- if test -n "$PKG_CONFIG" && \
-- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.8 >= 0.8\"") >&5
-- ($PKG_CONFIG --exists --print-errors "gstreamer-0.8 >= 0.8") 2>&5
-+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= 0.10\"") >&5
-+ ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 >= 0.10") 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- pkg_cv_GSTREAMER_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.8 >= 0.8" 2>/dev/null`
-+ pkg_cv_GSTREAMER_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.10 >= 0.10" 2>/dev/null`
- else
- pkg_failed=yes
- fi
-@@ -23514,12 +23514,12 @@
- pkg_cv_GSTREAMER_LIBS="$GSTREAMER_LIBS"
- else
- if test -n "$PKG_CONFIG" && \
-- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.8 >= 0.8\"") >&5
-- ($PKG_CONFIG --exists --print-errors "gstreamer-0.8 >= 0.8") 2>&5
-+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 >= 0.10\"") >&5
-+ ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 >= 0.10") 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- pkg_cv_GSTREAMER_LIBS=`$PKG_CONFIG --libs "gstreamer-0.8 >= 0.8" 2>/dev/null`
-+ pkg_cv_GSTREAMER_LIBS=`$PKG_CONFIG --libs "gstreamer-0.10 >= 0.10" 2>/dev/null`
- else
- pkg_failed=yes
- fi
-@@ -23538,9 +23538,9 @@
- _pkg_short_errors_supported=no
- fi
- if test $_pkg_short_errors_supported = yes; then
-- GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gstreamer-0.8 >= 0.8"`
-+ GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gstreamer-0.10 >= 0.10"`
- else
-- GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gstreamer-0.8 >= 0.8"`
-+ GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gstreamer-0.10 >= 0.10"`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GSTREAMER_PKG_ERRORS" >&5
-@@ -23559,10 +23559,10 @@
- if test "$HAVE_GSTREAMER" = "yes"; then
- build_actor_plugins="$build_actor_plugins gstreamer"
- else
-- { echo "$as_me:$LINENO: WARNING: *** GStreamer >= ${0.8} is not found.
-+ { echo "$as_me:$LINENO: WARNING: *** GStreamer >= 0.10 is not found.
- The libvisual GStreamer viewer plugin won't be build.
- GStreamer can be downloaded from http://www.gstreamer.org/" >&5
--echo "$as_me: WARNING: *** GStreamer >= ${0.8} is not found.
-+ echo "$as_me: WARNING: *** GStreamer >= 0.10 is not found.
- The libvisual GStreamer viewer plugin won't be build.
- GStreamer can be downloaded from http://www.gstreamer.org/" >&2;}
- fi
diff --git a/source/l/libvisual/libvisual-plugins.SlackBuild b/source/l/libvisual/libvisual-plugins.SlackBuild
new file mode 100755
index 000000000..74ed99ff7
--- /dev/null
+++ b/source/l/libvisual/libvisual-plugins.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+# Copyright 2008, 2009, 2010, 2018, 2019, 2021, 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libvisual-plugins
+SRCNAM=libvisual
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -fcommon"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2 -fcommon"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC -fcommon"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2 -fcommon"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $PKG
+
+cd $TMP
+rm -rf ${SRCNAM}-${VERSION}
+tar xvf $CWD/${SRCNAM}-$VERSION.tar.?z || exit 1
+cd ${SRCNAM}-$VERSION/libvisual-plugins || exit 1
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --disable-corona \
+ --disable-gforce \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* TODO \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc.libvisual-plugins > $PKG/install/slack-desc
+
+cd $TMP/package-${PKGNAM}
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/libvisual/libvisual.SlackBuild b/source/l/libvisual/libvisual.SlackBuild
index fc8cf114f..d25f6aa58 100755
--- a/source/l/libvisual/libvisual.SlackBuild
+++ b/source/l/libvisual/libvisual.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2012, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvisual
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -67,10 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION || exit 1
-
-zcat $CWD/libvisual.glib.h.diff.gz | patch -p1 --verbose || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION/libvisual || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -80,12 +78,26 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Configure:
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- $ARCH-slackware-linux || exit 1
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
diff --git a/source/l/libvisual/libvisual.glib.h.diff b/source/l/libvisual/libvisual.glib.h.diff
deleted file mode 100644
index d0c738aac..000000000
--- a/source/l/libvisual/libvisual.glib.h.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./libvisual/lv_thread.h.orig 2005-09-18 17:14:47.000000000 -0500
-+++ ./libvisual/lv_thread.h 2012-07-17 23:05:48.818091848 -0500
-@@ -14,7 +14,7 @@
- #ifdef VISUAL_THREAD_MODEL_POSIX
- #include <pthread.h>
- #elif defined(VISUAL_THREAD_MODEL_GTHREAD2) /* !VISUAL_THREAD_MODEL_POSIX */
--#include <glib/gthread.h>
-+#include <glib.h>
- #else /* !VISUAL_THREAD_MODEL_GTHREAD2 */
-
- #endif
diff --git a/source/l/libvisual/libvisual.url b/source/l/libvisual/libvisual.url
new file mode 100644
index 000000000..049899667
--- /dev/null
+++ b/source/l/libvisual/libvisual.url
@@ -0,0 +1 @@
+https://github.com/Libvisual/libvisual
diff --git a/source/l/libvisual/slack-desc b/source/l/libvisual/slack-desc
index c185b0230..d87df0e38 100644
--- a/source/l/libvisual/slack-desc
+++ b/source/l/libvisual/slack-desc
@@ -15,5 +15,5 @@ libvisual: make use of all the plugins that are written for libvisual.
libvisual: Libvisual also contains a whole set of facilities to ease the
libvisual: development of plugins.
libvisual:
-libvisual: Libvisual was written by Dennis Smit.
+libvisual: Homepage: http://libvisual.org
libvisual:
diff --git a/source/l/libvisual-plugins/slack-desc b/source/l/libvisual/slack-desc.libvisual-plugins
index 19fbcf01f..19fbcf01f 100644
--- a/source/l/libvisual-plugins/slack-desc
+++ b/source/l/libvisual/slack-desc.libvisual-plugins
diff --git a/source/l/libvncserver/libvncserver.SlackBuild b/source/l/libvncserver/libvncserver.SlackBuild
index ea858caf2..8e2b4522c 100755
--- a/source/l/libvncserver/libvncserver.SlackBuild
+++ b/source/l/libvncserver/libvncserver.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2007, 2014 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2011, 2012, 2015, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2015, 2018, 2019, 2020, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvncserver
VERSION=${VERSION:-$(echo LibVNCServer-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -102,6 +102,7 @@ cd cmake-build
-DCMAKE_INSTALL_LIBDIR="lib$LIBDIRSUFFIX" \
-DDOC_INSTALL_DIR="doc" \
-DMAN_INSTALL_DIR=/usr/man \
+ -DWITH_FFMPEG=OFF \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -117,7 +118,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" \
mkdir -p $PKG/usr/doc/libvncserver-$VERSION
cp -a \
- AUTHORS COPYING* NEWS* README* TODO* \
+ AUTHORS* CONTRIBUTING* COPYING* ChangeLog HISTORY* NEWS* README* SECURITY* \
$PKG/usr/doc/libvncserver-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
@@ -133,4 +134,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/libvncserver-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/libvpx/0001-Relax-ABI-check.patch b/source/l/libvpx/0001-Relax-ABI-check.patch
new file mode 100644
index 000000000..2ebdaf25d
--- /dev/null
+++ b/source/l/libvpx/0001-Relax-ABI-check.patch
@@ -0,0 +1,45 @@
+From: Sebastian Ramacher <sramacher@debian.org>
+Date: Tue, 31 Aug 2021 08:53:52 +0200
+Subject: Relax ABI check
+
+We have symbol files and version dependencies to properly track this.
+---
+ vpx/src/vpx_decoder.c | 2 +-
+ vpx/src/vpx_encoder.c | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/vpx/src/vpx_decoder.c b/vpx/src/vpx_decoder.c
+index 427cd1b..eddbf1a 100644
+--- a/vpx/src/vpx_decoder.c
++++ b/vpx/src/vpx_decoder.c
+@@ -27,7 +27,7 @@ vpx_codec_err_t vpx_codec_dec_init_ver(vpx_codec_ctx_t *ctx,
+ vpx_codec_flags_t flags, int ver) {
+ vpx_codec_err_t res;
+
+- if (ver != VPX_DECODER_ABI_VERSION)
++ if (ver > VPX_DECODER_ABI_VERSION)
+ res = VPX_CODEC_ABI_MISMATCH;
+ else if (!ctx || !iface)
+ res = VPX_CODEC_INVALID_PARAM;
+diff --git a/vpx/src/vpx_encoder.c b/vpx/src/vpx_encoder.c
+index f636b54..9f8eac9 100644
+--- a/vpx/src/vpx_encoder.c
++++ b/vpx/src/vpx_encoder.c
+@@ -32,7 +32,7 @@ vpx_codec_err_t vpx_codec_enc_init_ver(vpx_codec_ctx_t *ctx,
+ vpx_codec_flags_t flags, int ver) {
+ vpx_codec_err_t res;
+
+- if (ver != VPX_ENCODER_ABI_VERSION)
++ if (ver > VPX_ENCODER_ABI_VERSION)
+ res = VPX_CODEC_ABI_MISMATCH;
+ else if (!ctx || !iface || !cfg)
+ res = VPX_CODEC_INVALID_PARAM;
+@@ -67,7 +67,7 @@ vpx_codec_err_t vpx_codec_enc_init_multi_ver(
+ int num_enc, vpx_codec_flags_t flags, vpx_rational_t *dsf, int ver) {
+ vpx_codec_err_t res = VPX_CODEC_OK;
+
+- if (ver != VPX_ENCODER_ABI_VERSION)
++ if (ver > VPX_ENCODER_ABI_VERSION)
+ res = VPX_CODEC_ABI_MISMATCH;
+ else if (!ctx || !iface || !cfg || (num_enc > 16 || num_enc < 1))
+ res = VPX_CODEC_INVALID_PARAM;
diff --git a/source/l/libvpx/libvpx.SlackBuild b/source/l/libvpx/libvpx.SlackBuild
index b61b08bcb..5e301378d 100755
--- a/source/l/libvpx/libvpx.SlackBuild
+++ b/source/l/libvpx/libvpx.SlackBuild
@@ -81,6 +81,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Looks like this avoids possible problems with ffmpeg after a supposedly
+# ABI compatible libvpx upgrade. Probably doesn't hurt. Thanks to Debian.
+cat $CWD/0001-Relax-ABI-check.patch | patch -p1 --verbose || exit 1
+
# out of tree build
mkdir build-tmp
cd build-tmp
diff --git a/source/l/libwebp/libwebp.SlackBuild b/source/l/libwebp/libwebp.SlackBuild
index 3417a96e0..0cde53d37 100755
--- a/source/l/libwebp/libwebp.SlackBuild
+++ b/source/l/libwebp/libwebp.SlackBuild
@@ -32,7 +32,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libwebp/libwebp.url b/source/l/libwebp/libwebp.url
new file mode 100644
index 000000000..6442f9385
--- /dev/null
+++ b/source/l/libwebp/libwebp.url
@@ -0,0 +1 @@
+https://downloads.webmproject.org/releases/webp/
diff --git a/source/l/libwmf/libwmf.SlackBuild b/source/l/libwmf/libwmf.SlackBuild
index 97b5b4903..8d310aab9 100755
--- a/source/l/libwmf/libwmf.SlackBuild
+++ b/source/l/libwmf/libwmf.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libwmf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/libwnck3/00000000.patch b/source/l/libwnck3/00000000.patch
new file mode 100644
index 000000000..b22615761
--- /dev/null
+++ b/source/l/libwnck3/00000000.patch
@@ -0,0 +1,27 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alberts=20Muktup=C4=81vels?= <alberts.muktupavels@gmail.com>
+Date: Tue, 20 Sep 2022 15:40:22 +0300
+Subject: [PATCH] handle: avoid segfault in invalidate_icons
+
+Screens variable won't be initialized if default icon sizes are
+set/changed before using wnck_screen_get_default.
+
+https://bugs.launchpad.net/ubuntu/+source/libwnck3/+bug/1990263
+---
+ libwnck/wnck-handle.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/libwnck/wnck-handle.c b/libwnck/wnck-handle.c
+index e12ff8825045..8d5da45c8787 100644
+--- a/libwnck/wnck-handle.c
++++ b/libwnck/wnck-handle.c
+@@ -70,6 +70,9 @@ invalidate_icons (WnckHandle *self)
+ Display *xdisplay;
+ int i;
+
++ if (self->screens == NULL)
++ return;
++
+ xdisplay = _wnck_get_default_display ();
+
+ for (i = 0; i < ScreenCount (xdisplay); ++i)
diff --git a/source/l/libwnck3/libwnck3.SlackBuild b/source/l/libwnck3/libwnck3.SlackBuild
index 0078039f5..b251cf0f2 100755
--- a/source/l/libwnck3/libwnck3.SlackBuild
+++ b/source/l/libwnck3/libwnck3.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libwnck3
-VERSION=${VERSION:-$(echo libwnck-*.tar.lz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo libwnck-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -69,7 +69,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf libwnck-$VERSION
-tar xvf $CWD/libwnck-${VERSION}.tar.lz || exit 1
+tar xvf $CWD/libwnck-${VERSION}.tar.?z || exit 1
cd libwnck-$VERSION
# Make sure ownerships and permissions are sane:
@@ -80,6 +80,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Fix crash bug:
+cat $CWD/00000000.patch | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
diff --git a/source/l/libwpg/libwpg.SlackBuild b/source/l/libwpg/libwpg.SlackBuild
index 0ca10f25d..f0c26d855 100755
--- a/source/l/libwpg/libwpg.SlackBuild
+++ b/source/l/libwpg/libwpg.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libwpg
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/libxkbcommon/libxkbcommon.SlackBuild b/source/l/libxkbcommon/libxkbcommon.SlackBuild
index 81947485f..b5f8dd208 100755
--- a/source/l/libxkbcommon/libxkbcommon.SlackBuild
+++ b/source/l/libxkbcommon/libxkbcommon.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/libxml2/libxml2-2.12.0-python3-unicode-errors.patch b/source/l/libxml2/libxml2-2.12.0-python3-unicode-errors.patch
new file mode 100644
index 000000000..b07e4049f
--- /dev/null
+++ b/source/l/libxml2/libxml2-2.12.0-python3-unicode-errors.patch
@@ -0,0 +1,34 @@
+diff --git a/python/libxml.c b/python/libxml.c
+index bf048006..5f42e5b7 100644
+--- a/python/libxml.c
++++ b/python/libxml.c
+@@ -1505,6 +1505,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg,
+ PyObject *message;
+ PyObject *result;
+ char str[1000];
++ unsigned char *ptr = (unsigned char *)str;
+
+ if (libxml_xmlPythonErrorFuncHandler == NULL) {
+ va_start(ap, msg);
+@@ -1516,12 +1517,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg,
+ str[999] = 0;
+ va_end(ap);
+
++#if PY_MAJOR_VERSION >= 3
++ /* Ensure the error string doesn't start at UTF8 continuation. */
++ while (*ptr && (*ptr & 0xc0) == 0x80)
++ ptr++;
++#endif
++
+ list = PyTuple_New(2);
+ PyTuple_SetItem(list, 0, libxml_xmlPythonErrorFuncCtxt);
+ Py_XINCREF(libxml_xmlPythonErrorFuncCtxt);
+- message = libxml_charPtrConstWrap(str);
++ message = libxml_charPtrConstWrap(ptr);
+ PyTuple_SetItem(list, 1, message);
+ result = PyObject_CallObject(libxml_xmlPythonErrorFuncHandler, list);
++ /* Forget any errors caused in the error handler. */
++ PyErr_Clear();
+ Py_XDECREF(list);
+ Py_XDECREF(result);
+ }
diff --git a/source/l/libxml2/libxml2.SlackBuild b/source/l/libxml2/libxml2.SlackBuild
index db64abb80..e0ccc7a32 100755
--- a/source/l/libxml2/libxml2.SlackBuild
+++ b/source/l/libxml2/libxml2.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2018, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libxml2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -60,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
TMP=${TMP:-/tmp}
@@ -79,20 +78,30 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-zcat $CWD/libxml2.do-not-check-crc.diff.gz | patch -p1 --verbose || exit 1
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
-# Fixes for python-3.9.x:
-sed -i '/if Py/{s/Py/(Py/;s/)/))/}' python/{types.c,libxml.c}
-sed -i '/_PyVerify_fd/,+1d' python/types.c
-sed -i 's/test.test/#&/' python/tests/tstLastError.py
+# Patch from openSUSE.
+# See: https://bugzilla.gnome.org/show_bug.cgi?id=789714
+cat $CWD/libxml2-2.12.0-python3-unicode-errors.patch | patch -p1 --verbose || exit 1
+PYTHON=/usr/bin/python3 \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --with-python=/usr/bin/python3 \
+ --with-python \
+ --with-legacy \
+ --with-ftp \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -101,41 +110,28 @@ make install DESTDIR=$PKG || exit 1
python3 -m compileall "${PKG}$PYTHON3LIB"
python3 -O -m compileall "${PKG}$PYTHON3LIB"
-make clean
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --mandir=/usr/man \
- --disable-static \
- --with-python=/usr/bin/python \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-python -m compileall "${PKG}$PYTHONLIB"
-python -O -m compileall "${PKG}$PYTHONLIB"
-
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mv $PKG/usr/share/doc $PKG/usr
-mv $PKG/usr/doc/libxml2-python-$VERSION $PKG/usr/doc/libxml2-$VERSION
+mv $PKG/usr/share/doc/libxml2-python-$VERSION $PKG/usr/doc/libxml2-$VERSION
+rmdir $PKG/usr/share/doc
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
+ AUTHORS* COPYING* Copyright* INSTALL* NEWS* README* TODO* \
$PKG/usr/doc/libxml2-$VERSION
find $PKG/usr/doc/libxml2-$VERSION -type f | xargs chmod 644
-gzip -9 $PKG/usr/man/man?/*.?
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/libxml2-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/libxml2/libxml2.do-not-check-crc.diff b/source/l/libxml2/libxml2.do-not-check-crc.diff
deleted file mode 100644
index 3e6507764..000000000
--- a/source/l/libxml2/libxml2.do-not-check-crc.diff
+++ /dev/null
@@ -1,35 +0,0 @@
-diff -up libxml2-2.9.0/xzlib.c.do-not-check-crc libxml2-2.9.0/xzlib.c
---- libxml2-2.9.0/xzlib.c.do-not-check-crc 2012-09-11 05:52:46.000000000 +0200
-+++ libxml2-2.9.0/xzlib.c 2012-11-19 19:28:42.431700534 +0100
-@@ -552,17 +552,20 @@ xz_decomp(xz_statep state)
- #ifdef HAVE_ZLIB_H
- if (state->how == GZIP) {
- if (gz_next4(state, &crc) == -1 || gz_next4(state, &len) == -1) {
-- xz_error(state, LZMA_DATA_ERROR, "unexpected end of file");
-- return -1;
-- }
-- if (crc != state->zstrm.adler) {
-- xz_error(state, LZMA_DATA_ERROR, "incorrect data check");
-- return -1;
-- }
-- if (len != (state->zstrm.total_out & 0xffffffffL)) {
-- xz_error(state, LZMA_DATA_ERROR, "incorrect length check");
-- return -1;
-- }
-+ /*
-+ xz_error(state, LZMA_DATA_ERROR, "unexpected end of file");
-+ return -1;
-+ */
-+ } else {
-+ if (crc != state->zstrm.adler) {
-+ xz_error(state, LZMA_DATA_ERROR, "incorrect data check");
-+ return -1;
-+ }
-+ if (len != (state->zstrm.total_out & 0xffffffffL)) {
-+ xz_error(state, LZMA_DATA_ERROR, "incorrect length check");
-+ return -1;
-+ }
-+ }
- state->strm.avail_in = 0;
- state->strm.next_in = NULL;
- state->strm.avail_out = 0;
diff --git a/source/l/libxml2/libxml2.url b/source/l/libxml2/libxml2.url
index 62e07ca9e..47808cb85 100644
--- a/source/l/libxml2/libxml2.url
+++ b/source/l/libxml2/libxml2.url
@@ -1 +1,3 @@
-ftp://ftp.xmlsoft.org/libxml2
+#ftp://ftp.xmlsoft.org/libxml2
+#https://gitlab.gnome.org/GNOME/libxml2
+https://download.gnome.org/sources/libxml2
diff --git a/source/l/libxslt/libxslt.SlackBuild b/source/l/libxslt/libxslt.SlackBuild
index 7fcc81861..d6886119c 100755
--- a/source/l/libxslt/libxslt.SlackBuild
+++ b/source/l/libxslt/libxslt.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libxslt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -81,9 +81,19 @@ sed -i '/#include <xlocale.h>/d' libxslt/xsltlocale.h
# on infinite recursion:
zcat $CWD/libxslt.xsltMaxDepth.diff.gz | patch -p1 --verbose || exit 1
+# Configure, build, and install:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+PYTHON=/usr/bin/python3 \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--disable-static \
@@ -96,16 +106,33 @@ make install DESTDIR=$PKG || exit 1
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
mv $PKG/usr/share/doc $PKG/usr
-mv $PKG/usr/doc/libxslt-python-$VERSION $PKG/usr/doc/libxslt-$VERSION
+mv $PKG/usr/doc/libxslt $PKG/usr/doc/libxslt-$VERSION
cp -a \
- AUTHORS COPYING* Copyright FEATURES INSTALL IPR NEWS README TODO libxslt.spec \
+ AUTHORS* COPYING* ChangeLog Copyright* FEATURES* HACKING* INSTALL* NEWS* README* TODO* libxslt.spec \
$PKG/usr/doc/libxslt-$VERSION
find $PKG/usr/doc/libxslt-$VERSION -type f | xargs chmod 644
+rm -rf $PKG/usr/share/gtk-doc
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+# Nevermind... this hasn't been updated in a decade:
+rm -r $DOCSDIR/ChangeLog
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-gzip -9 $PKG/usr/man/man?/*.?
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/libxslt/libxslt.url b/source/l/libxslt/libxslt.url
index 62e07ca9e..e77382dd2 100644
--- a/source/l/libxslt/libxslt.url
+++ b/source/l/libxslt/libxslt.url
@@ -1 +1,3 @@
-ftp://ftp.xmlsoft.org/libxml2
+#ftp://ftp.xmlsoft.org/libxml2
+#https://gitlab.gnome.org/GNOME/libxslt
+https://download.gnome.org/sources/libxslt
diff --git a/source/l/libxslt/libxslt.xsltMaxDepth.diff b/source/l/libxslt/libxslt.xsltMaxDepth.diff
index 9ba2c9b66..2b60050e3 100644
--- a/source/l/libxslt/libxslt.xsltMaxDepth.diff
+++ b/source/l/libxslt/libxslt.xsltMaxDepth.diff
@@ -1,6 +1,6 @@
---- ./libxslt/transform.c.orig 2017-08-29 06:20:04.000000000 -0500
-+++ ./libxslt/transform.c 2017-09-25 13:39:52.298942433 -0500
-@@ -66,7 +66,7 @@
+--- ./libxslt/transform.c.orig 2023-11-16 06:36:28.000000000 -0600
++++ ./libxslt/transform.c 2023-11-16 20:15:38.041665574 -0600
+@@ -68,7 +68,7 @@
const xmlChar **systemID);
#endif
diff --git a/source/l/libyaml/libyaml.SlackBuild b/source/l/libyaml/libyaml.SlackBuild
index 891e9a22b..f22d551f8 100755
--- a/source/l/libyaml/libyaml.SlackBuild
+++ b/source/l/libyaml/libyaml.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/lmdb/lmdb-make.patch b/source/l/lmdb/lmdb-make.patch
index eca03ef39..3820d9895 100644
--- a/source/l/lmdb/lmdb-make.patch
+++ b/source/l/lmdb/lmdb-make.patch
@@ -1,7 +1,6 @@
-diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile
---- lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig 2017-01-04 12:14:24.303344915 +0100
-+++ lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile 2017-01-04 12:19:20.190295319 +0100
-@@ -26,6 +26,7 @@ OPT = -O2 -g
+--- ./libraries/liblmdb/Makefile.orig 2024-01-29 12:20:26.000000000 -0600
++++ ./libraries/liblmdb/Makefile 2024-01-30 14:47:39.726061869 -0600
+@@ -26,6 +26,7 @@
CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS)
LDLIBS =
SOLIBS =
@@ -9,7 +8,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
SOEXT = .so
prefix = /usr/local
exec_prefix = $(prefix)
-@@ -38,7 +39,7 @@ mandir = $(datarootdir)/man
+@@ -38,7 +39,7 @@
########################################################################
IHDRS = lmdb.h
@@ -18,7 +17,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
IPROGS = mdb_stat mdb_copy mdb_dump mdb_load
IDOCS = mdb_stat.1 mdb_copy.1 mdb_dump.1 mdb_load.1
PROGS = $(IPROGS) mtest mtest2 mtest3 mtest4 mtest5
-@@ -49,13 +50,13 @@ install: $(ILIBS) $(IPROGS) $(IHDRS)
+@@ -49,13 +50,13 @@
mkdir -p $(DESTDIR)$(libdir)
mkdir -p $(DESTDIR)$(includedir)
mkdir -p $(DESTDIR)$(mandir)/man1
@@ -37,7 +36,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
test: all
rm -rf testdb && mkdir testdb
-@@ -64,20 +65,24 @@ test: all
+@@ -64,21 +65,25 @@
liblmdb.a: mdb.o midl.o
$(AR) rs $@ mdb.o midl.o
@@ -46,7 +45,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
+ rm -f $@
+ ln -s $< $@
+
-+liblmdb$(SOEXT).$(SOVERSION): mdb.lo midl.lo
++liblmdb$(SOEXT).$(SOVERSION): mdb.lo midl.lo
# $(CC) $(LDFLAGS) -pthread -shared -Wl,-Bsymbolic -o $@ mdb.o midl.o $(SOLIBS)
- $(CC) $(LDFLAGS) -pthread -shared -o $@ mdb.lo midl.lo $(SOLIBS)
+ $(CC) $(LDFLAGS) -pthread -shared -Wl,-soname,$@ -o $@ mdb.lo midl.lo $(SOLIBS)
@@ -61,6 +60,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
-mtest4: mtest4.o liblmdb.a
-mtest5: mtest5.o liblmdb.a
-mtest6: mtest6.o liblmdb.a
+-mplay: mplay.o liblmdb.a
+mdb_stat: mdb_stat.o liblmdb.so
+mdb_copy: mdb_copy.o liblmdb.so
+mdb_dump: mdb_dump.o liblmdb.so
@@ -71,6 +71,7 @@ diff -up lmdb-LMDB_0.9.19/libraries/liblmdb/Makefile.orig lmdb-LMDB_0.9.19/libra
+mtest4: mtest4.o liblmdb.so
+mtest5: mtest5.o liblmdb.so
+mtest6: mtest6.o liblmdb.so
++mplay: mplay.o liblmdb.so
mdb.o: mdb.c lmdb.h midl.h
$(CC) $(CFLAGS) $(CPPFLAGS) -c mdb.c
diff --git a/source/l/lmdb/lmdb.SlackBuild b/source/l/lmdb/lmdb.SlackBuild
index b9a34d2a5..828d4407b 100755
--- a/source/l/lmdb/lmdb.SlackBuild
+++ b/source/l/lmdb/lmdb.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/lmdb/lmdb.url b/source/l/lmdb/lmdb.url
index 8355236cb..191ce7736 100644
--- a/source/l/lmdb/lmdb.url
+++ b/source/l/lmdb/lmdb.url
@@ -1,2 +1,2 @@
#https://github.com/LMDB/lmdb
-https://git.openldap.org/openldap/openldap/-/archive/LMDB_0.9.29/openldap-LMDB_0.9.29.tar.gz
+https://git.openldap.org/openldap/openldap/-/archive/LMDB_0.9.32/openldap-LMDB_0.9.32.tar.gz
diff --git a/source/l/lmdb/slack-desc b/source/l/lmdb/slack-desc
index 179b70813..e1f9b1bee 100644
--- a/source/l/lmdb/slack-desc
+++ b/source/l/lmdb/slack-desc
@@ -14,6 +14,6 @@ lmdb: files, it provides the read performance of a pure in-memory database
lmdb: while still offering the persistence of standard disk-based databases,
lmdb: and is only limited to the size of the virtual address space.
lmdb:
-lmdb: Homepage: http://symas.com/mdb/
+lmdb: Homepage: http://symas.com/lmdb/
lmdb:
lmdb:
diff --git a/source/l/loudmouth/loudmouth.SlackBuild b/source/l/loudmouth/loudmouth.SlackBuild
index b91ef51d5..4124e3972 100755
--- a/source/l/loudmouth/loudmouth.SlackBuild
+++ b/source/l/loudmouth/loudmouth.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=loudmouth
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/lz4/lz4.SlackBuild b/source/l/lz4/lz4.SlackBuild
index 17d79430f..d2f3fa8c8 100755
--- a/source/l/lz4/lz4.SlackBuild
+++ b/source/l/lz4/lz4.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lz4
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/lz4/lz4.url b/source/l/lz4/lz4.url
index 1c4601173..2899e067d 100644
--- a/source/l/lz4/lz4.url
+++ b/source/l/lz4/lz4.url
@@ -1 +1 @@
-https://lz4.github.io/lz4
+https://github.com/lz4/lz4
diff --git a/source/l/lzo/lzo.SlackBuild b/source/l/lzo/lzo.SlackBuild
index 07b2e732d..2ed38164b 100755
--- a/source/l/lzo/lzo.SlackBuild
+++ b/source/l/lzo/lzo.SlackBuild
@@ -65,7 +65,7 @@ fi
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-$TMP}
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
diff --git a/source/l/mlt/mlt.SlackBuild b/source/l/mlt/mlt.SlackBuild
index 870e1b7d8..8a688f399 100755
--- a/source/l/mlt/mlt.SlackBuild
+++ b/source/l/mlt/mlt.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mlt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -92,9 +92,7 @@ cd cmake-build
-DCMAKE_C_FLAGS="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX="$LIBDIRSUFFIX" \
- -DDOC_INSTALL_DIR="doc" \
- -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/mlt/mlt.deps b/source/l/mlt/mlt.deps
deleted file mode 100644
index 9c0527b33..000000000
--- a/source/l/mlt/mlt.deps
+++ /dev/null
@@ -1,4 +0,0 @@
-frei0r-plugins
-opencv
-qt5
-vid.stab
diff --git a/source/l/mozilla-nss/mozilla-nss.SlackBuild b/source/l/mozilla-nss/mozilla-nss.SlackBuild
index cb2f2efd6..49e0c23e5 100755
--- a/source/l/mozilla-nss/mozilla-nss.SlackBuild
+++ b/source/l/mozilla-nss/mozilla-nss.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright 2005, 2006, 2008, 2009, 2010, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2013, 2014, 2015, 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2014, 2015, 2017, 2018, 2019, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -26,8 +26,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mozilla-nss
SRCNAM=nss
-VERSION=${VERSION:-3.70}
-NSPR=${NSPR:-4.32}
+VERSION=${VERSION:-3.99}
+NSPR=${NSPR:-4.35}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
diff --git a/source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch b/source/l/mozjs115/autoconf/autoconf-2.13-consolidated_fixes-1.patch
index 5e7b23113..5e7b23113 100644
--- a/source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch
+++ b/source/l/mozjs115/autoconf/autoconf-2.13-consolidated_fixes-1.patch
diff --git a/source/l/mozjs78/autoconf/autoconf.build b/source/l/mozjs115/autoconf/autoconf.build
index 05e53f1a5..05e53f1a5 100755
--- a/source/l/mozjs78/autoconf/autoconf.build
+++ b/source/l/mozjs115/autoconf/autoconf.build
diff --git a/source/l/mozjs115/double_t.x86.diff b/source/l/mozjs115/double_t.x86.diff
new file mode 100644
index 000000000..9030adfe8
--- /dev/null
+++ b/source/l/mozjs115/double_t.x86.diff
@@ -0,0 +1,13 @@
+--- ./modules/fdlibm/src/math_private.h.orig 2024-03-19 18:53:52.828031985 -0500
++++ ./modules/fdlibm/src/math_private.h 2024-03-19 18:55:57.193034767 -0500
+@@ -30,8 +30,8 @@
+ * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
+ */
+
+-typedef double __double_t;
+-typedef __double_t double_t;
++typedef long double __double_t;
++typedef long double double_t;
+ typedef float __float_t;
+
+ /*
diff --git a/source/l/mozjs78/mozjs78.SlackBuild b/source/l/mozjs115/mozjs115.SlackBuild
index 26d0a5fc1..21751f2a0 100755
--- a/source/l/mozjs78/mozjs78.SlackBuild
+++ b/source/l/mozjs115/mozjs115.SlackBuild
@@ -1,9 +1,7 @@
#!/bin/bash
-# Slackware build script for SpiderMonkey
-
# Copyright 2011, 2018 Robby Workman, Tuscaloosa, Alabama, USA
-# Copyright 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2019, 2020, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=mozjs78
+PKGNAM=mozjs115
SRCNAME=firefox
VERSION=$(basename $(ls $SRCNAME-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)
BUILD=${BUILD:-1}
@@ -33,7 +31,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
@@ -48,6 +46,9 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
+# This will collide with a Firefox build that happens simultaneously.
+# Therefore, for use with make_world.sh, REQUIRE_GLOBAL_LOCK.
+
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
TMP=${TMP:-/tmp}
@@ -75,7 +76,8 @@ rm -rf $SRCNAME-$VERSION ; rm -rf $SRCNAME-$(echo $VERSION | cut -f 1 -d e)
rm -rf firefox-unpack
mkdir firefox-unpack
cd firefox-unpack
-tar xvf $CWD/$SRCNAME-$VERSION.source.tar.?z || exit 1
+echo "Extracting $CWD/$SRCNAME-$VERSION.source.tar.?z..."
+tar xf $CWD/$SRCNAME-$VERSION.source.tar.?z || exit 1
mv * ..
cd ..
rm -rf firefox-unpack
@@ -99,8 +101,14 @@ zcat $CWD/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch.g
zcat $CWD/patches/icu_sources_data-Write-command-output-to-our-stderr.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/emitter.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/init_patch.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/spidermonkey_checks_disable.patch.gz | patch -p1 --verbose || exit 1
-#zcat $CWD/patches/encies.armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch.gz | patch -p1 --verbose || exit 1
+
+# Fix header mismatch on x86 with GCC:
+if [ "$ARCH" = "i686" ]; then
+ zcat $CWD/double_t.x86.diff.gz | patch -p1 --verbose || exit 1
+fi
# Remove bundled zlib directory and use system version:
rm -rf modules/zlib
@@ -118,14 +126,15 @@ CXXFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --without-system-icu \
+ --with-system-icu \
--with-system-zlib \
- --enable-tests \
+ --disable-tests \
--disable-strip \
--with-intl-api \
--enable-readline \
--enable-shared-js \
- --disable-optimize \
+ --enable-optimize \
+ --disable-debug \
--enable-pie \
--disable-jemalloc \
--build=$ARCH-slackware-linux \
@@ -140,10 +149,15 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libjs_static.*
rm -f $PKG/usr/bin/js*-config
# Rename shared library to have a proper soname:
-mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-78.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-78.so.0.0.0
+SHORTVER=$(echo $PKGNAM | cut -b 6-)
+if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-${SHORTVER}.so ]; then
+ echo "FATAL: trying to rename library but $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-${SHORTVER}.so is not found."
+ exit 1
+fi
+mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-${SHORTVER}.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-${SHORTVER}.so.0.0.0
( cd $PKG/usr/lib${LIBDIRSUFFIX}
- ln -sf libmozjs-78.so.0.0.0 libmozjs-78.so.0
- ln -sf libmozjs-78.so.0 libmozjs-78.so
+ ln -sf libmozjs-${SHORTVER}.so.0.0.0 libmozjs-${SHORTVER}.so.0
+ ln -sf libmozjs-${SHORTVER}.so.0 libmozjs-${SHORTVER}.so
)
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/mozjs115/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch b/source/l/mozjs115/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch
new file mode 100644
index 000000000..5c2866473
--- /dev/null
+++ b/source/l/mozjs115/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch
@@ -0,0 +1,36 @@
+From db3a0a25b97377b388532b23e73a10d246f66496 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 3 Aug 2020 10:27:00 +0200
+Subject: [PATCH] Skip failing tests on ppc64 and s390x
+
+ppc64 and s390x: non262/extensions/clone-errors.js
+s390x: test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js
+s390x, ppc64 and aarch64: test262/built-ins/Date/UTC/fp-evaluation-order.js
+---
+ js/src/tests/jstests.list | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/js/src/tests/jstests.list b/js/src/tests/jstests.list
+index 73ce42f..1797646 100644
+--- a/js/src/tests/jstests.list
++++ b/js/src/tests/jstests.list
+@@ -53,6 +53,15 @@ skip-if(!this.hasOwnProperty("Intl")) include test262/intl402/jstests.list
+ skip-if(!this.hasOwnProperty("Atomics")) include test262/built-ins/Atomics/jstests.list
+ skip-if(!this.hasOwnProperty("SharedArrayBuffer")) include test262/built-ins/SharedArrayBuffer/jstests.list
+
++# Crashes on s390x and ppc64, avoid it
++skip-if(xulRuntime.XPCOMABI.match(/s390x|ppc64-/)) script non262/extensions/clone-errors.js
++
++# Crashes on s390x, ppc64, aarch64
++skip-if(xulRuntime.XPCOMABI.match(/s390x|aarch64|ppc64-/)) script test262/built-ins/Date/UTC/fp-evaluation-order.js
++
++# Crashes on s390x, avoid it
++skip-if(xulRuntime.XPCOMABI.match(/s390x/)) script test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js
++
+ #####################################
+ # Test262 tests disabled on browser #
+ #####################################
+--
+2.31.1
+
+
diff --git a/source/l/mozjs78/patches/copy-headers.patch b/source/l/mozjs115/patches/copy-headers.patch
index dfa1fdbee..dfddcfaee 100644
--- a/source/l/mozjs78/patches/copy-headers.patch
+++ b/source/l/mozjs115/patches/copy-headers.patch
@@ -9,30 +9,30 @@ Patch by Philip Chimento ported forward to mozjs78
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py
-index e3fc8fe..bed5ae9 100644
+index 858d4d4..8c229e8 100644
--- a/python/mozbuild/mozbuild/backend/recursivemake.py
+++ b/python/mozbuild/mozbuild/backend/recursivemake.py
-@@ -1457,9 +1457,9 @@ class RecursiveMakeBackend(MakeBackend):
- raise Exception("Wildcards are only supported in the filename part"
- " of srcdir-relative or absolute paths.")
-
-- install_manifest.add_pattern_link(basepath, wild, path)
-+ install_manifest.add_pattern_copy(basepath, wild, path)
+@@ -1533,9 +1533,9 @@ class RecursiveMakeBackend(MakeBackend):
+ " of srcdir-relative or absolute paths."
+ )
+
+- install_manifest.add_pattern_link(basepath, wild, dest_dir)
++ install_manifest.add_pattern_copy(basepath, wild, dest_dir)
else:
-- install_manifest.add_pattern_link(f.srcdir, f, path)
-+ install_manifest.add_pattern_copy(f.srcdir, f, path)
+- install_manifest.add_pattern_link(f.srcdir, f, dest_dir)
++ install_manifest.add_pattern_copy(f.srcdir, f, dest_dir)
elif isinstance(f, AbsolutePath):
- if not f.full_path.lower().endswith(('.dll', '.pdb', '.so')):
- raise Exception("Absolute paths installed to FINAL_TARGET_FILES must"
-@@ -1468,7 +1468,7 @@ class RecursiveMakeBackend(MakeBackend):
- install_manifest.add_optional_exists(dest)
+ if not f.full_path.lower().endswith((".dll", ".pdb", ".so")):
+ raise Exception(
+@@ -1546,7 +1546,7 @@ class RecursiveMakeBackend(MakeBackend):
+ install_manifest.add_optional_exists(dest_file)
absolute_files.append(f.full_path)
else:
-- install_manifest.add_link(f.full_path, dest)
-+ install_manifest.add_copy(f.full_path, dest)
+- install_manifest.add_link(f.full_path, dest_file)
++ install_manifest.add_copy(f.full_path, dest_file)
else:
- install_manifest.add_optional_exists(dest)
+ install_manifest.add_optional_exists(dest_file)
objdir_files.append(self._pretty_path(f, backend_file))
---
-2.26.2
+--
+2.37.1
diff --git a/source/l/mozjs115/patches/emitter.patch b/source/l/mozjs115/patches/emitter.patch
new file mode 100644
index 000000000..8d5aafb15
--- /dev/null
+++ b/source/l/mozjs115/patches/emitter.patch
@@ -0,0 +1,67 @@
+From d1d785c169345b81c76213f6dd9be32b4db60294 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Wed, 15 Jul 2020 08:39:47 +0200
+Subject: [PATCH] Build: allow LOCAL_INCLUDES paths with topsrcdir or topobjdir
+
+---
+ python/mozbuild/mozbuild/frontend/emitter.py | 10 ---------
+ .../mozbuild/test/frontend/test_emitter.py | 22 -------------------
+ 2 files changed, 32 deletions(-)
+
+diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py
+index 0b7ccef..a3c7f2f 100644
+--- a/python/mozbuild/mozbuild/frontend/emitter.py
++++ b/python/mozbuild/mozbuild/frontend/emitter.py
+@@ -1365,16 +1365,6 @@ class TreeMetadataEmitter(LoggingMixin):
+ "(resolved to %s)" % (local_include, full_path),
+ context,
+ )
+- if (
+- full_path == context.config.topsrcdir
+- or full_path == context.config.topobjdir
+- ):
+- raise SandboxValidationError(
+- "Path specified in LOCAL_INCLUDES "
+- "(%s) resolves to the topsrcdir or topobjdir (%s), which is "
+- "not allowed" % (local_include, full_path),
+- context,
+- )
+ include_obj = LocalInclude(context, local_include)
+ local_includes.append(include_obj.path.full_path)
+ yield include_obj
+diff --git a/python/mozbuild/mozbuild/test/frontend/test_emitter.py b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
+index 99507fc..821de22 100644
+--- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py
++++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
+@@ -1076,28 +1076,6 @@ class TestEmitterBasic(unittest.TestCase):
+
+ self.assertEqual(local_includes, expected)
+
+- def test_local_includes_invalid(self):
+- """Test that invalid LOCAL_INCLUDES are properly detected."""
+- reader = self.reader("local_includes-invalid/srcdir")
+-
+- with six.assertRaisesRegex(
+- self,
+- SandboxValidationError,
+- "Path specified in LOCAL_INCLUDES.*resolves to the "
+- "topsrcdir or topobjdir",
+- ):
+- self.read_topsrcdir(reader)
+-
+- reader = self.reader("local_includes-invalid/objdir")
+-
+- with six.assertRaisesRegex(
+- self,
+- SandboxValidationError,
+- "Path specified in LOCAL_INCLUDES.*resolves to the "
+- "topsrcdir or topobjdir",
+- ):
+- self.read_topsrcdir(reader)
+-
+ def test_local_includes_file(self):
+ """Test that a filename can't be used in LOCAL_INCLUDES."""
+ reader = self.reader("local_includes-filename")
+--
+2.37.1
+
diff --git a/source/l/mozjs78/patches/fix-soname.patch b/source/l/mozjs115/patches/fix-soname.patch
index 30894e44d..832326489 100644
--- a/source/l/mozjs78/patches/fix-soname.patch
+++ b/source/l/mozjs115/patches/fix-soname.patch
@@ -9,18 +9,18 @@ Fix backported from Debian: http://bugs.debian.org/746705
1 file changed, 2 insertions(+)
diff --git a/config/rules.mk b/config/rules.mk
-index 3965c88..3f92f83 100644
+index 90a9946..dc87789 100644
--- a/config/rules.mk
+++ b/config/rules.mk
-@@ -320,6 +320,8 @@ ifeq ($(OS_ARCH),GNU)
+@@ -291,6 +291,8 @@ ifeq ($(OS_ARCH),GNU)
OS_CPPFLAGS += -DPATH_MAX=1024 -DMAXPATHLEN=1024
endif
-
+
+EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0
+
#
# MINGW32
#
---
-2.26.2
+--
+2.37.1
diff --git a/source/l/mozjs115/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs115/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
new file mode 100644
index 000000000..84684250c
--- /dev/null
+++ b/source/l/mozjs115/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
@@ -0,0 +1,44 @@
+From: Simon McVittie <smcv@debian.org>
+Date: Mon, 9 Oct 2017 09:23:14 +0100
+Subject: icu_sources_data: Write command output to our stderr
+
+Saying "See output in /tmp/foobar" is all very well for a developer
+build, but on a buildd our /tmp is going to get thrown away after
+the build. Just log the usual way instead.
+---
+ intl/icu_sources_data.py | 16 ++++------------
+ 1 file changed, 4 insertions(+), 12 deletions(-)
+
+diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
+index 4db52af..d62960d 100644
+--- a/intl/icu_sources_data.py
++++ b/intl/icu_sources_data.py
+@@ -188,21 +188,13 @@ def update_sources(topsrcdir):
+
+ def try_run(name, command, cwd=None, **kwargs):
+ try:
+- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f:
+- subprocess.check_call(
+- command, cwd=cwd, stdout=f, stderr=subprocess.STDOUT, **kwargs
+- )
+- except subprocess.CalledProcessError:
+- print(
+- """Error running "{}" in directory {}
+- See output in {}""".format(
+- " ".join(command), cwd, f.name
+- ),
+- file=sys.stderr,
++ subprocess.check_call(
++ command, cwd=cwd, stdout=sys.stderr, stderr=subprocess.STDOUT, **kwargs
+ )
++ except subprocess.CalledProcessError:
++ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd), file=sys.stderr)
+ return False
+ else:
+- os.unlink(f.name)
+ return True
+
+
+--
+2.31.1
+
diff --git a/source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch b/source/l/mozjs115/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
index a853a16d1..8572c21fd 100644
--- a/source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
+++ b/source/l/mozjs115/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
@@ -10,10 +10,10 @@ so there's nothing to normalize. Avoid needing to import all of it.
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
-index 98c0ccb..8cf9290 100644
+index 2936df9..4db52af 100644
--- a/intl/icu_sources_data.py
+++ b/intl/icu_sources_data.py
-@@ -21,7 +21,9 @@
+@@ -21,7 +21,9 @@ import subprocess
import sys
import tempfile
@@ -24,3 +24,6 @@ index 98c0ccb..8cf9290 100644
# The following files have been determined to be dead/unused by a
# semi-automated analysis. You can just remove any of the files below
+--
+2.31.1
+
diff --git a/source/l/mozjs115/patches/init_patch.patch b/source/l/mozjs115/patches/init_patch.patch
new file mode 100644
index 000000000..28ed1d31a
--- /dev/null
+++ b/source/l/mozjs115/patches/init_patch.patch
@@ -0,0 +1,28 @@
+From 00414eb67ab0591911167155963b5524fbf2b0c0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 14:38:58 +0200
+Subject: [PATCH] Don't throw InvalidOptionError on invalid options
+
+---
+ python/mozbuild/mozbuild/configure/__init__.py | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py
+index f3167f6..c9e1132 100644
+--- a/python/mozbuild/mozbuild/configure/__init__.py
++++ b/python/mozbuild/mozbuild/configure/__init__.py
+@@ -557,10 +557,7 @@ class ConfigureSandbox(dict):
+ for arg in self._helper:
+ without_value = arg.split("=", 1)[0]
+ msg = "Unknown option: %s" % without_value
+- if self._help:
+- self._logger.warning(msg)
+- else:
+- raise InvalidOptionError(msg)
++ self._logger.warning(msg)
+
+ # Run the execution queue
+ for func, args in self._execution_queue:
+--
+2.31.1
+
diff --git a/source/l/mozjs115/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch b/source/l/mozjs115/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch
new file mode 100644
index 000000000..10b8b16ea
--- /dev/null
+++ b/source/l/mozjs115/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch
@@ -0,0 +1,29 @@
+From 2d99a7b076578a3394fb9d5be6eb44f9cfebc681 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 16:15:37 +0200
+Subject: [PATCH] Remove sloppy m4 detection from bundled autoconf
+
+---
+ build/autoconf/autoconf.sh | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/build/autoconf/autoconf.sh b/build/autoconf/autoconf.sh
+index ceb8a25..606c74e 100644
+--- a/build/autoconf/autoconf.sh
++++ b/build/autoconf/autoconf.sh
+@@ -114,12 +114,6 @@ fi
+
+ # Use the frozen version of Autoconf if available.
+ r= f=
+-# Some non-GNU m4's don't reject the --help option, so give them /dev/null.
+-case `$M4 --help < /dev/null 2>&1` in
+-*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
+-*traditional*) ;;
+-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
+-esac
+
+ $M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
+ { rm -f $tmpin $tmpout; exit 2; }
+--
+2.31.1
+
diff --git a/source/l/mozjs115/patches/spidermonkey_checks_disable.patch b/source/l/mozjs115/patches/spidermonkey_checks_disable.patch
new file mode 100644
index 000000000..451d3eef4
--- /dev/null
+++ b/source/l/mozjs115/patches/spidermonkey_checks_disable.patch
@@ -0,0 +1,22 @@
+From 6ebe8ce6a3267c96454de3cd453269b4c4053a3e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 14:41:14 +0200
+Subject: [PATCH] Don't die on SpiderMonkey checks
+
+---
+ config/run_spidermonkey_checks.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/config/run_spidermonkey_checks.py b/config/run_spidermonkey_checks.py
+index 0f842d9..b49db52 100644
+--- a/config/run_spidermonkey_checks.py
++++ b/config/run_spidermonkey_checks.py
+@@ -11,5 +11,3 @@ import sys
+ def main(output, lib_file, *scripts):
+ for script in scripts:
+ retcode = subprocess.call([sys.executable, script], cwd=buildconfig.topsrcdir)
+- if retcode != 0:
+- raise Exception(script + " failed")
+--
+2.31.1
+
diff --git a/source/l/mozjs78/patches/tests-increase-timeout.patch b/source/l/mozjs115/patches/tests-increase-timeout.patch
index c86cca403..2ba725ce9 100644
--- a/source/l/mozjs78/patches/tests-increase-timeout.patch
+++ b/source/l/mozjs115/patches/tests-increase-timeout.patch
@@ -9,18 +9,18 @@ Ported forward from Debian: https://bugs.debian.org/878284
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/js/src/Makefile.in b/js/src/Makefile.in
-index b86aeed..d68655a 100644
+index 6daed72..16db2de 100644
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -53,7 +53,7 @@ check:: check-js-msg
-
+
check-jstests:
$(wildcard $(RUN_TEST_PROGRAM)) $(PYTHON3) -u $(srcdir)/tests/jstests.py \
- --no-progress --format=automation --timeout 300 \
+ --no-progress --format=automation --timeout 600 \
$(JSTESTS_EXTRA_ARGS) \
- $(DIST)/bin/$(JS_SHELL_NAME)$(BIN_SUFFIX)
-
---
-2.26.2
+ $(DIST)/bin/js$(BIN_SUFFIX)
+
+--
+2.37.1
diff --git a/source/l/mozjs115/slack-desc b/source/l/mozjs115/slack-desc
new file mode 100644
index 000000000..155713c30
--- /dev/null
+++ b/source/l/mozjs115/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mozjs115: mozjs115 (Mozilla's JavaScript Engine)
+mozjs115:
+mozjs115: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is
+mozjs115: used in various Mozilla products (including Firefox) and is available
+mozjs115: under MPL/GPL/LGPL tri-license.
+mozjs115:
+mozjs115: Homepage:
+mozjs115: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
+mozjs115:
+mozjs115:
+mozjs115:
+mozjs115:
diff --git a/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch b/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch
deleted file mode 100644
index 0cb26ac76..000000000
--- a/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp
-+++ firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp
-@@ -243,7 +243,7 @@
- // If you run into compile problems on a tier-3 platform, you can disable the
- // emulation here.
-
--#if defined(__linux__) && defined(__arm__)
-+#if 0 && defined(__linux__) && defined(__arm__)
- # define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
- #endif
diff --git a/source/l/mozjs78/patches/emitter.patch b/source/l/mozjs78/patches/emitter.patch
deleted file mode 100644
index 15e752ba7..000000000
--- a/source/l/mozjs78/patches/emitter.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From d1d785c169345b81c76213f6dd9be32b4db60294 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
-Date: Wed, 15 Jul 2020 08:39:47 +0200
-Subject: [PATCH] Build: allow LOCAL_INCLUDES paths with topsrcdir or topobjdir
-
----
- python/mozbuild/mozbuild/frontend/emitter.py | 6 ------
- .../mozbuild/test/frontend/test_emitter.py | 20 -------------------
- 2 files changed, 26 deletions(-)
-
-diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py
-index 8d5ab8e..65c43ff 100644
---- a/python/mozbuild/mozbuild/frontend/emitter.py
-+++ b/python/mozbuild/mozbuild/frontend/emitter.py
-@@ -1239,12 +1239,6 @@ class TreeMetadataEmitter(LoggingMixin):
- 'is a filename, but a directory is required: %s '
- '(resolved to %s)' % (local_include, full_path),
- context)
-- if (full_path == context.config.topsrcdir or
-- full_path == context.config.topobjdir):
-- raise SandboxValidationError(
-- 'Path specified in LOCAL_INCLUDES '
-- '(%s) resolves to the topsrcdir or topobjdir (%s), which is '
-- 'not allowed' % (local_include, full_path), context)
- include_obj = LocalInclude(context, local_include)
- local_includes.append(include_obj.path.full_path)
- yield include_obj
-diff --git a/python/mozbuild/mozbuild/test/frontend/test_emitter.py b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-index e8cbd81..d45ccee 100644
---- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-+++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-@@ -1040,26 +1040,6 @@ class TestEmitterBasic(unittest.TestCase):
-
- self.assertEqual(local_includes, expected)
-
-- def test_local_includes_invalid(self):
-- """Test that invalid LOCAL_INCLUDES are properly detected."""
-- reader = self.reader('local_includes-invalid/srcdir')
--
-- with six.assertRaisesRegex(
-- self,
-- SandboxValidationError,
-- 'Path specified in LOCAL_INCLUDES.*resolves to the '
-- 'topsrcdir or topobjdir'):
-- self.read_topsrcdir(reader)
--
-- reader = self.reader('local_includes-invalid/objdir')
--
-- with six.assertRaisesRegex(
-- self,
-- SandboxValidationError,
-- 'Path specified in LOCAL_INCLUDES.*resolves to the '
-- 'topsrcdir or topobjdir'):
-- self.read_topsrcdir(reader)
--
- def test_local_includes_file(self):
- """Test that a filename can't be used in LOCAL_INCLUDES."""
- reader = self.reader('local_includes-filename')
---
-2.26.2
-
diff --git a/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
deleted file mode 100644
index e2ed48454..000000000
--- a/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 9 Oct 2017 09:23:14 +0100
-Subject: icu_sources_data: Write command output to our stderr
-
-Saying "See output in /tmp/foobar" is all very well for a developer
-build, but on a buildd our /tmp is going to get thrown away after
-the build. Just log the usual way instead.
----
- intl/icu_sources_data.py | 7 ++-----
- 1 file changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
-index 8cf9290..7d2d983 100644
---- a/intl/icu_sources_data.py
-+++ b/intl/icu_sources_data.py
-@@ -187,16 +187,13 @@
-
- def try_run(name, command, cwd=None, **kwargs):
- try:
-- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f:
-- subprocess.check_call(command, cwd=cwd, stdout=f,
-- stderr=subprocess.STDOUT, **kwargs)
-+ subprocess.check_call(command, cwd=cwd, stdout=sys.stderr,
-+ stderr=subprocess.STDOUT, **kwargs)
- except subprocess.CalledProcessError:
-- print('''Error running "{}" in directory {}
-- See output in {}'''.format(' '.join(command), cwd, f.name),
-- file=sys.stderr)
-+ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd),
-+ file=sys.stderr)
- return False
- else:
-- os.unlink(f.name)
- return True
diff --git a/source/l/mozjs78/patches/init_patch.patch b/source/l/mozjs78/patches/init_patch.patch
deleted file mode 100644
index fd09eb797..000000000
--- a/source/l/mozjs78/patches/init_patch.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/python/mozbuild/mozbuild/configure/__init__.py
-+++ b/python/mozbuild/mozbuild/configure/__init__.py
-@@ -473,8 +473,8 @@
- msg = 'Unknown option: %s' % without_value
- if self._help:
- self._logger.warning(msg)
-- else:
-- raise InvalidOptionError(msg)
-+ #else:
-+ # raise InvalidOptionError(msg)
-
- # Run the execution queue
- for func, args in self._execution_queue:
diff --git a/source/l/mozjs78/patches/spidermonkey_checks_disable.patch b/source/l/mozjs78/patches/spidermonkey_checks_disable.patch
deleted file mode 100644
index 14ba0ad71..000000000
--- a/source/l/mozjs78/patches/spidermonkey_checks_disable.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/config/run_spidermonkey_checks.py
-+++ b/config/run_spidermonkey_checks.py
-@@ -11,5 +11,5 @@
- for script in scripts:
- retcode = subprocess.call(
- [sys.executable, script], cwd=buildconfig.topsrcdir)
-- if retcode != 0:
-- raise Exception(script + " failed")
-+ #if retcode != 0:
-+ # raise Exception(script + " failed")
diff --git a/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch b/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch
deleted file mode 100644
index 690c1c57d..000000000
--- a/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/config/check_spidermonkey_style.py
-+++ b/config/check_spidermonkey_style.py
-
-@@ -766,6 +766,7 @@
-
-
- def main():
-+ sys.exit(0)
- if sys.argv[1:] == ["--fixup"]:
- # Sort #include directives in-place. Fixup mode doesn't solve
- # all possible silliness that the script checks for; it's just a
diff --git a/source/l/mpfr/mpfr.SlackBuild b/source/l/mpfr/mpfr.SlackBuild
index 22f6eba22..c97adbe9a 100755
--- a/source/l/mpfr/mpfr.SlackBuild
+++ b/source/l/mpfr/mpfr.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mpfr
VERSION=${VERSION:-$(echo mpfr-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -108,7 +108,7 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--infodir=/usr/info \
- --docdir=/usr/doc/mpfr-$VERSION \
+ --docdir=/usr/doc/mpfr-$VERSION$PATCHLEVEL \
--enable-static=no \
--enable-shared=yes \
--build=$TARGET || exit 1
@@ -128,16 +128,16 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
-mkdir -p $PKG/usr/doc/mpfr-$VERSION
+mkdir -p $PKG/usr/doc/mpfr-$VERSION$PATCHLEVEL
cp -a \
AUTHORS BUGS COPYING* FAQ.html INSTALL NEWS README* TODO VERSION \
examples \
- $PKG/usr/doc/mpfr-$VERSION
+ $PKG/usr/doc/mpfr-$VERSION$PATCHLEVEL
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION$PATCHLEVEL)
cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
diff --git a/source/l/mpfr/mpfr.url b/source/l/mpfr/mpfr.url
new file mode 100644
index 000000000..b80f2b10d
--- /dev/null
+++ b/source/l/mpfr/mpfr.url
@@ -0,0 +1 @@
+https://www.mpfr.org
diff --git a/source/l/mpfr/patches.url b/source/l/mpfr/patches.url
new file mode 100644
index 000000000..b477cd613
--- /dev/null
+++ b/source/l/mpfr/patches.url
@@ -0,0 +1,2 @@
+# Fetched like this:
+https://www.mpfr.org/mpfr-current/patch01
diff --git a/source/l/ncurses/aaa_terminfo.SlackBuild b/source/l/ncurses/aaa_terminfo.SlackBuild
index aab8dc5db..44ac1fc13 100755
--- a/source/l/ncurses/aaa_terminfo.SlackBuild
+++ b/source/l/ncurses/aaa_terminfo.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=aaa_terminfo
# Note the version of ncurses in use:
VERSION=${VERSION:-$(PRINT_PACKAGE_NAME=yes ./ncurses.SlackBuild | cut -f 2 -d -)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
diff --git a/source/l/ncurses/ncurses.SlackBuild b/source/l/ncurses/ncurses.SlackBuild
index 9dbfefdf7..8f561baaa 100755
--- a/source/l/ncurses/ncurses.SlackBuild
+++ b/source/l/ncurses/ncurses.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=ncurses
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 2- -d - | cut -f 1,2 -d .)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/neon/neon.SlackBuild b/source/l/neon/neon.SlackBuild
index 536343ff3..0d7becd37 100755
--- a/source/l/neon/neon.SlackBuild
+++ b/source/l/neon/neon.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=neon
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/netpbm/netpbm-CAN-2005-2471.patch b/source/l/netpbm/netpbm-CAN-2005-2471.patch
index 77a3cd769..5e4b8baba 100644
--- a/source/l/netpbm/netpbm-CAN-2005-2471.patch
+++ b/source/l/netpbm/netpbm-CAN-2005-2471.patch
@@ -1,17 +1,11 @@
-diff --git a/converter/other/pstopnm.c b/converter/other/pstopnm.c
-index f534265..2ab48ab 100644
---- a/converter/other/pstopnm.c
-+++ b/converter/other/pstopnm.c
-@@ -896,11 +896,11 @@ execGhostscript(int const inputPipeFd,
- ghostscriptProg, arg0,
- deviceopt, outfileopt, gopt, ropt, textalphabitsopt,
- "-q", "-dNOPAUSE",
-- "-dSAFER", "-");
-+ "-dPARANOIDSAFER", "-");
+--- ./converter/other/pstopnm.c.orig 2023-12-29 13:47:21.000000000 -0600
++++ ./converter/other/pstopnm.c 2023-12-29 13:50:33.241915523 -0600
+@@ -899,8 +899,8 @@
+ "-dSAFER", "-");
}
-- execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt,
-- textalphabitsopt, "-q", "-dNOPAUSE", "-dSAFER", "-", NULL);
+- execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt,
+- textalphabitsopt, "-q", "-dNOPAUSE", "-dSAFER", "-", NULL);
+ execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt, "-q",
+ "-dNOPAUSE", "-dPARANOIDSAFER", "-", NULL);
diff --git a/source/l/netpbm/netpbm-glibc.patch b/source/l/netpbm/netpbm-glibc.patch
index 4ae71e8da..01e5cbc0b 100644
--- a/source/l/netpbm/netpbm-glibc.patch
+++ b/source/l/netpbm/netpbm-glibc.patch
@@ -1,13 +1,14 @@
---- netpbm-10.35/converter/other/pnmtotiffcmyk.c.glibc 2006-09-18 12:20:06.000000000 +0200
-+++ netpbm-10.35/converter/other/pnmtotiffcmyk.c 2007-08-23 09:18:30.000000000 +0200
-@@ -974,8 +974,8 @@ int main( int argc, char **argv ) {
+--- ./converter/other/pnmtotiffcmyk.c.orig 2023-12-29 13:47:21.000000000 -0600
++++ ./converter/other/pnmtotiffcmyk.c 2023-12-29 13:55:43.849898342 -0600
+@@ -989,8 +989,9 @@
if ( (err = parseOpts( argc, argv, rt )) ) goto exit ;
-
+
- if ( (err = rt->in->open( rt->in, rt )) ) goto exit ;
- if ( (err = rt->out->open( rt->out, rt )) ) goto exit ;
+ if ( (err = (rt->in->open)( rt->in, rt )) ) goto exit ;
+ if ( (err = (rt->out->open)( rt->out, rt )) ) goto exit ;
++
while ( rt->in->hasMore( rt->in ) ) {
if ( (err = rt->in->next( rt->in, &r, &g, &b )) ) goto exit ;
diff --git a/source/l/netpbm/netpbm-ppmfadeusage.patch b/source/l/netpbm/netpbm-ppmfadeusage.patch
index d48f5f546..9c1f31b22 100644
--- a/source/l/netpbm/netpbm-ppmfadeusage.patch
+++ b/source/l/netpbm/netpbm-ppmfadeusage.patch
@@ -1,57 +1,51 @@
-diff -urNp old/editor/ppmfade new/editor/ppmfade
---- old/editor/ppmfade 2017-11-01 11:47:49.869611402 +0100
-+++ new/editor/ppmfade 2017-11-01 11:53:25.524973342 +0100
-@@ -84,7 +84,7 @@ for ($n = 0; $n < @ARGV; $n++) {
- if (-e $first_file) {
- } else {
- print "I can't find first file '$first_file'\n";
-- exit 20;
+--- ./editor/ppmfade.orig 2023-10-02 13:25:51.308938861 -0500
++++ ./editor/ppmfade 2023-10-02 13:28:24.940930364 -0500
+@@ -109,13 +109,13 @@
+ print STDERR ("There are no non-option arguments possible. " .
+ "You specified '$arg'\n");
+ }
+- exit 100;
+ exit 1;
}
- } elsif ($ARGV[$n] eq "-l") {
- $n++;
-@@ -92,7 +92,7 @@ for ($n = 0; $n < @ARGV; $n++) {
- if (-e $last_file) {
+ }
+
+ if (!defined($firstFileNm) && !defined($lastFileNm)) {
+ print STDERR ("You must specify -f or -l (or both)\n");
+- exit 90;
++ exit 1;
+ }
+
+ if (!defined($mode)) {
+@@ -142,7 +142,7 @@
} else {
- print "I can't find last file '$last_file'\n";
-- exit 20;
+ print STDERR
+ ("Unrecognized results from pnmfile on $firstFileNm.\n");
+- exit(50);
+ exit 1;
}
- } elsif ($ARGV[$n] eq "-base") {
- $n++;
-@@ -113,9 +113,12 @@ for ($n = 0; $n < @ARGV; $n++) {
- $mode = $BLOCK;
- } elsif ("$ARGV[$n]" eq "-mix") {
- $mode = $MIX;
-+ } elsif ($ARGV[$n] eq "-help" || $ARGV[$n] eq "--help" || $ARGV[$n] eq "-h") {
-+ print "ppmfade: Use 'man ppmfade' for help.\n";
-+ exit 1;
} else {
- print "Unknown argument: $ARGV[$n]\n";
-- exit 100;
-+ exit 1;
- }
- }
- #
-@@ -134,18 +137,18 @@ if ($first_file ne "undefined") {
- $width = $1; $height = $2;
- } else {
- print("Unrecognized results from pnmfile on $first_file.\n");
-- exit(50);
-+ exit 1;
- }
- } elsif ($last_file ne "undefined") {
- if ((`pnmfile $last_file` =~ m{\b(\d+)\sby\s(\d+)} )) {
- $width = $1; $height = $2;
- } else {
- print("Unrecognized results from pnmfile on $first_file.\n");
-- exit(50);
-+ exit 1;
+ # $lastFileNm is defined
+@@ -151,7 +151,7 @@
+ } else {
+ print STDERR
+ ("Unrecognized results from pnmfile on $firstFileNm.\n");
+- exit(50);
++ exit 1;
+ }
}
- } else {
- print("ppmfade: You must specify -f or -l (or both)\n");
-- exit(90);
+ return $width, $height;
+@@ -436,12 +436,12 @@
+
+ if (defined($firstFileNm) && !-e($firstFileNm)) {
+ print STDERR ("First file '$firstFileNm' does not exist\n");
+- exit 20;
++ exit 1;
+ }
+
+ if (defined($lastFileNm) && !-e($lastFileNm)) {
+ print STDERR ("Last file '$lastFileNm' does not exist\n");
+- exit 20;
+ exit 1;
}
- print("Frames are " . $width . "W x " . $height . "H\n");
+ my ($width, $height) = imageDimensions($firstFileNm, $lastFileNm);
diff --git a/source/l/netpbm/netpbm-security-scripts.patch b/source/l/netpbm/netpbm-security-scripts.patch
deleted file mode 100644
index 0ba822ad1..000000000
--- a/source/l/netpbm/netpbm-security-scripts.patch
+++ /dev/null
@@ -1,267 +0,0 @@
-diff --git a/editor/ppmfade b/editor/ppmfade
-index dcd7bf2..5091651 100755
---- a/editor/ppmfade
-+++ b/editor/ppmfade
-@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
- #
- ##############################################################################
- use strict;
-+use File::Temp "tempdir";
-
- sub doVersionHack($) {
- my ($argvR) = @_;
-@@ -149,20 +150,26 @@ if ($first_file ne "undefined") {
-
- print("Frames are " . $width . "W x " . $height . "H\n");
-
-+#
-+# We create a tmp-directory right here
-+#
-+my $tmpdir = tempdir("ppmfade.XXXXXX", CLEANUP => 1);
-+
-+
- if ($first_file eq "undefined") {
- print "Fading from black to ";
-- system("ppmmake \\#000 $width $height >junk1$$.ppm");
-+ system("ppmmake \\#000 $width $height >$tmpdir/junk1$$.ppm");
- } else {
- print "Fading from $first_file to ";
-- system("cp", $first_file, "junk1$$.ppm");
-+ system("cp", $first_file, "$tmpdir/junk1$$.ppm");
- }
-
- if ($last_file eq "undefined") {
- print "black.\n";
-- system("ppmmake \\#000 $width $height >junk2$$.ppm");
-+ system("ppmmake \\#000 $width $height >$tmpdir/junk2$$.ppm");
- } else {
- print "$last_file\n";
-- system("cp", $last_file, "junk2$$.ppm");
-+ system("cp", $last_file, "$tmpdir/junk2$$.ppm");
- }
-
- #
-@@ -170,14 +177,14 @@ if ($last_file eq "undefined") {
- #
-
- # Here's what our temporary files are:
--# junk1$$.ppm: The original (fade-from) image
--# junk2$$.ppm: The target (fade-from) image
--# junk3$$.ppm: The frame of the fade for the current iteration of the
--# the for loop.
--# junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
--# image to another, this is the first frame of that
--# sequence.
--# junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
-+# $tmpdir/junk1$$.ppm: The original (fade-from) image
-+# $tmpdir/junk2$$.ppm: The target (fade-from) image
-+# $tmpdir/junk3$$.ppm: The frame of the fade for the current iteration of the
-+# the for loop.
-+# $tmpdir/junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
-+# image to another, this is the first frame of that
-+# sequence.
-+# $tmpdir/junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
-
- my $i; # Frame number
- for ($i = 1; $i <= $nframes; $i++) {
-@@ -185,147 +192,147 @@ for ($i = 1; $i <= $nframes; $i++) {
- if ($mode eq $SPREAD) {
- if ($i <= 10) {
- my $n = $spline20[$i] * 100;
-- system("ppmspread $n junk1$$.ppm >junk3$$.ppm");
-+ system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n;
- $n = $spline20[$i] * 100;
-- system("ppmspread $n junk1$$.ppm >junk1a$$.ppm");
-+ system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
- $n = (1-$spline20[$i-10]) * 100;
-- system("ppmspread $n junk2$$.ppm >junk2a$$.ppm");
-+ system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
- $n = $spline10[$i-10];
-- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = (1-$spline20[$i-10])*100;
-- system("ppmspread $n junk2$$.ppm >junk3$$.ppm");
-+ system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- } elsif ($mode eq $SHIFT) {
- if ($i <= 10) {
- my $n = $spline20[$i] * 100;
-- system("ppmshift $n junk1$$.ppm >junk3$$.ppm");
-+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n;
- $n = $spline20[$i] * 100;
-- system("ppmshift $n junk1$$.ppm >junk1a$$.ppm");
-+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
- $n = (1-$spline20[$i-10])*100;
-- system("ppmshift $n junk2$$.ppm >junk2a$$.ppm");
-+ system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
- $n = $spline10[$i-10];
-- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = (1-$spline20[$i-10]) * 100;
-- system("ppmshift $n junk2$$.ppm >junk3$$.ppm");
-+ system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- } elsif ($mode eq $RELIEF) {
- if ($i == 1) {
-- system("ppmrelief junk1$$.ppm >junk1r$$.ppm");
-+ system("ppmrelief $tmpdir/junk1$$.ppm >$tmpdir/junk1r$$.ppm");
- }
- if ($i <= 10) {
- my $n = $spline10[$i];
-- system("ppmmix $n junk1$$.ppm junk1r$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1r$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n = $spline10[$i-10];
-- system("ppmmix $n junk1r$$.ppm junk2r$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1r$$.ppm $tmpdir/junk2r$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = $spline10[$i-20];
-- system("ppmmix $n junk2r$$.ppm junk2$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk2r$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- if ($i == 10) {
-- system("ppmrelief junk2$$.ppm >junk2r$$.ppm");
-+ system("ppmrelief $tmpdir/junk2$$.ppm >$tmpdir/junk2r$$.ppm");
- }
- } elsif ($mode eq $OIL) {
- if ($i == 1) {
-- system("ppmtopgm junk1$$.ppm | pgmoil >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk1o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmoil >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk1o$$.ppm");
- }
- if ($i <= 10) {
- my $n = $spline10[$i];
-- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n = $spline10[$i-10];
-- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = $spline10[$i-20];
-- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- if ($i == 10) {
-- system("ppmtopgm junk2$$.ppm | pgmoil >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk2o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmoil >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk2o$$.ppm");
- }
- } elsif ($mode eq $EDGE) {
- if ($i == 1) {
-- system("ppmtopgm junk1$$.ppm | pgmedge >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk1o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmedge >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk1o$$.ppm");
- }
- if ($i <= 10) {
- my $n = $spline10[$i];
-- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n = $spline10[$i-10];
-- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = $spline10[$i-20];
-- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- if ($i == 10) {
-- system("ppmtopgm junk2$$.ppm | pgmedge >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk2o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmedge >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk2o$$.ppm");
- }
- } elsif ($mode eq $BENTLEY) {
- if ($i == 1) {
-- system("ppmtopgm junk1$$.ppm | pgmbentley >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk1o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmbentley >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk1o$$.ppm");
- }
- if ($i <= 10) {
- my $n = $spline10[$i];
-- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n = $spline10[$i-10];
-- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = $spline10[$i-20];
-- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- }
- if ($i == 10) {
-- system("ppmtopgm junk2$$.ppm | pgmbentley >junko$$.ppm");
-- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-- ">junk2o$$.ppm");
-+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmbentley >$tmpdir/junko$$.ppm");
-+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
-+ ">$tmpdir/junk2o$$.ppm");
- }
- } elsif ($mode eq $BLOCK) {
- if ($i <= 10) {
- my $n = 1 - 1.9*$spline20[$i];
-- system("pamscale $n junk1$$.ppm | " .
-- "pamscale -width $width -height $height >junk3$$.ppm");
-+ system("pamscale $n $tmpdir/junk1$$.ppm | " .
-+ "pamscale -width $width -height $height >$tmpdir/junk3$$.ppm");
- } elsif ($i <= 20) {
- my $n = $spline10[$i-10];
-- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
-+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- my $n = 1 - 1.9*$spline20[31-$i];
-- system("pamscale $n junk2$$.ppm | " .
-- "pamscale -width $width -height $height >junk3$$.ppm");
-+ system("pamscale $n $tmpdir/junk2$$.ppm | " .
-+ "pamscale -width $width -height $height >$tmpdir/junk3$$.ppm");
- }
- if ($i == 10) {
-- system("cp", "junk3$$.ppm", "junk1a$$.ppm");
-- system("pamscale $n junk2$$.ppm | " .
-- "pamscale -width $width -height $height >junk2a$$.ppm");
-+ system("cp", "$tmpdir/junk3$$.ppm", "$tmpdir/junk1a$$.ppm");
-+ system("pamscale $n $tmpdir/junk2$$.ppm | " .
-+ "pamscale -width $width -height $height >$tmpdir/junk2a$$.ppm");
- }
- } elsif ($mode eq $MIX) {
- my $fade_factor = sqrt(1/($nframes-$i+1));
-- system("ppmmix $fade_factor junk1$$.ppm junk2$$.ppm >junk3$$.ppm");
-+ system("ppmmix $fade_factor $tmpdir/junk1$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
- } else {
- print("Internal error: impossible mode value '$mode'\n");
- }
-
- my $outfile = sprintf("%s.%04d.ppm", $base_name, $i);
-- system("cp", "junk3$$.ppm", $outfile);
-+ system("cp", "$tmpdir/junk3$$.ppm", $outfile);
- }
-
- #
- # Clean up shop.
- #
--system("rm junk*$$.ppm");
-+system("rm $tmpdir/junk*$$.ppm");
-
- exit(0);
diff --git a/source/l/netpbm/netpbm.SlackBuild b/source/l/netpbm/netpbm.SlackBuild
index fd7fb4445..7004a028a 100755
--- a/source/l/netpbm/netpbm.SlackBuild
+++ b/source/l/netpbm/netpbm.SlackBuild
@@ -70,7 +70,6 @@ rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION
-zcat $CWD/netpbm-security-scripts.patch.gz | patch -p1 --verbose || exit 1
#zcat $CWD/netpbm-security-code.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/netpbm-ppmfadeusage.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/netpbm-noppmtompeg.patch.gz | patch -p1 --verbose || exit 1
diff --git a/source/l/newt/newt.SlackBuild b/source/l/newt/newt.SlackBuild
index 0e5cb0963..a2215a8c0 100755
--- a/source/l/newt/newt.SlackBuild
+++ b/source/l/newt/newt.SlackBuild
@@ -1,9 +1,7 @@
#!/bin/bash
-# Slackware build script for newt
-
# Copyright 2014 Robby Workman, Northport, Alabama, USA
-# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=newt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -64,7 +62,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
rm -rf $PKG
@@ -96,12 +93,13 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Nope.
+rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/python2.7/
+
# Since this ignores --disable-static:
rm $PKG/usr/lib${LIBDIRSUFFIX}/libnewt.a
# Generate .pyc files
-python -m compileall "${PKG}$PYTHONLIB"
-python -O -m compileall "${PKG}$PYTHONLIB"
python3 -m compileall "${PKG}$PYTHON3LIB"
python3 -O -m compileall "${PKG}$PYTHON3LIB"
diff --git a/source/l/nodejs/nodejs.SlackBuild b/source/l/nodejs/nodejs.SlackBuild
new file mode 100755
index 000000000..8b35564a0
--- /dev/null
+++ b/source/l/nodejs/nodejs.SlackBuild
@@ -0,0 +1,166 @@
+#!/bin/bash
+
+# Copyright 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Thanks to Audrius Kažukauskas, Ryan P.C. McQuen, and Willy Sudiarto Raharjo
+# for the slackbuilds.org version of this script.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version, with the following exception:
+# the text of the GPL license may be omitted.
+#
+# You may have received a copy of the GNU General Public License
+# along with this program (most likely, a file named COPYING). If
+# not, see <https://www.gnu.org/licenses/>.
+
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=nodejs
+SRCNAM=node
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev | tr -d v)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $SRCNAM-v${VERSION}
+tar xvf $CWD/$SRCNAM-v${VERSION}.tar.?z || exit 1
+cd $SRCNAM-v${VERSION} || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+## Fix libdir for 64-bit:
+sed -i "s|lib/|lib${LIBDIRSUFFIX}/|g" tools/install.py
+sed -i "s|'lib'|'lib${LIBDIRSUFFIX}'|g" lib/module.js
+sed -i "s|'lib'|'lib${LIBDIRSUFFIX}'|g" deps/npm/lib/npm.js
+
+# Not sure if this one is really needed.
+#sed -i "s|math.h|cmath|" src/node_crypto.cc
+
+./configure \
+ --prefix=/usr \
+ --with-intl=system-icu \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-libuv \
+ --experimental-http-parser \
+ --shared-nghttp2 \
+ --shared-cares \
+ --shared-brotli || exit 1
+# --shared-v8
+# --shared-http-parser
+
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Relocate manual pages:
+if [ -d $PKG/usr/share/man ]; then
+ mv $PKG/usr/share/man $PKG/usr
+fi
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Remove unneeded files:
+find $PKG/usr \( -name '.git*' \) -exec rm -f {} \;
+
+# Set NODE_PATH to look for globally installed modules:
+mkdir -p $PKG/etc/profile.d
+cat > $PKG/etc/profile.d/${PKGNAM}.csh << EOF
+#!/bin/csh
+setenv NODE_PATH /usr/lib${LIBDIRSUFFIX}/node_modules
+EOF
+cat > $PKG/etc/profile.d/${PKGNAM}.sh << EOF
+#!/bin/sh
+export NODE_PATH=/usr/lib${LIBDIRSUFFIX}/node_modules
+EOF
+chmod 0755 $PKG/etc/profile.d/*
+
+# Symlink bash-completion if needed:
+mkdir -p $PKG/usr/share/bash-completion/completions
+if [ ! -r $PKG/usr/share/bash-completion/completions/npm -a -r $PKG/usr/lib${LIBDIRSUFFIX}/node_modules/npm/lib/utils/completion.sh ]; then
+ ( cd $PKG/usr/share/bash-completion/completions/npm ; ln -sf ../../../lib${LIBDIRSUFFIX}/node_modules/npm/lib/utils/completion.sh npm )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUILDING* CHANGELOG* CODE_OF_CONDUCT* CONTRIBUTING* GOVERNANCE* LICENSE* README* SECURITY* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGELOG, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGELOG ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGELOG | head -n 1000 > $DOCSDIR/CHANGELOG
+ touch -r CHANGELOG $DOCSDIR/CHANGELOG
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/nodejs/nodejs.url b/source/l/nodejs/nodejs.url
new file mode 100644
index 000000000..8b8d6fcab
--- /dev/null
+++ b/source/l/nodejs/nodejs.url
@@ -0,0 +1 @@
+https://nodejs.org/dist
diff --git a/source/l/nodejs/slack-desc b/source/l/nodejs/slack-desc
new file mode 100644
index 000000000..f72ea08bb
--- /dev/null
+++ b/source/l/nodejs/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+nodejs: nodejs (JavaScript runtime environment)
+nodejs:
+nodejs: Node.js is an open-source, cross-platform, JavaScript runtime
+nodejs: environment for easily building fast, scalable network applications.
+nodejs: Node.js uses an event-driven, non-blocking I/O model that makes it
+nodejs: lightweight and efficient, perfect for data-intensive real-time
+nodejs: applications that run across distributed devices.
+nodejs:
+nodejs: Homepage: https://nodejs.org/
+nodejs:
+nodejs:
diff --git a/source/l/oniguruma/oniguruma.SlackBuild b/source/l/oniguruma/oniguruma.SlackBuild
index cc9e19978..9afaac434 100755
--- a/source/l/oniguruma/oniguruma.SlackBuild
+++ b/source/l/oniguruma/oniguruma.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -119,12 +119,12 @@ cp -a \
doc \
$PKG/usr/doc/${PKGNAM}-$VERSION
-# If there's a ChangeLog, installing at least part of the recent history
+# If there's a HISTORY file, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
+if [ -r HISTORY ]; then
DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
+ cat HISTORY | head -n 1000 > $DOCSDIR/HISTORY
+ touch -r HISTORY $DOCSDIR/HISTORY
fi
mkdir -p $PKG/install
diff --git a/source/l/oniguruma/oniguruma.url b/source/l/oniguruma/oniguruma.url
new file mode 100644
index 000000000..8acd71cc2
--- /dev/null
+++ b/source/l/oniguruma/oniguruma.url
@@ -0,0 +1 @@
+https://github.com/kkos/oniguruma
diff --git a/source/l/openal-soft/openal-soft.SlackBuild b/source/l/openal-soft/openal-soft.SlackBuild
index 714a6e345..1efc61cc1 100755
--- a/source/l/openal-soft/openal-soft.SlackBuild
+++ b/source/l/openal-soft/openal-soft.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=openal-soft
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/opencv/opencv.SlackBuild b/source/l/opencv/opencv.SlackBuild
index fb2ccd052..fafc4ac92 100755
--- a/source/l/opencv/opencv.SlackBuild
+++ b/source/l/opencv/opencv.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2015, 2017, 2019 Eric Hameleers, Eindhoven, NL
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=opencv
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -88,10 +88,14 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Broken build without this?
+BROKEN="-DOpenGL_GL_PREFERENCE=LEGACY"
+
# Configure, build, and install:
mkdir cmake-build
cd cmake-build
cmake \
+ $BROKEN \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
@@ -127,10 +131,6 @@ cd cmake-build
make install DESTDIR=$PKG || exit 1
cd ..
-# COMMENTED OUT as mlt finds opencv4.pc just fine.
-# Add a symlink to opencv.pc to make eg. mlt find it:
-#( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig ; ln -sf opencv4.pc opencv.pc )
-
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/openexr/openexr.SlackBuild b/source/l/openexr/openexr.SlackBuild
index 286b4fc0f..c02df73df 100755
--- a/source/l/openexr/openexr.SlackBuild
+++ b/source/l/openexr/openexr.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2007, 2013, 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2010, 2014, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2014, 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=openexr
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -82,13 +82,10 @@ find . \
# Configure, build, and install:
mkdir cmake-build
cd cmake-build
- cmake \
+ unshare -n cmake \
-DCMAKE_C_FLAGS="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX="$LIBDIRSUFFIX" \
- -DDOC_INSTALL_DIR="doc" \
- -DMAN_INSTALL_DIR=/usr/man \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/openexr/slack-desc b/source/l/openexr/slack-desc
index 1e830614d..4653ee64e 100644
--- a/source/l/openexr/slack-desc
+++ b/source/l/openexr/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
openexr: openexr (HDR Image File Format & Library)
openexr:
-openexr: OpenEXR is an image file format and library developed by Industrial
-openexr: Light & Magic, and later released to the public. It provides support
-openexr: for high dynamic range and a 16-bit floating point "half" data type
-openexr: which is compatible with the half data type in the Cg programming
-openexr: language.
+openexr: OpenEXR provides the specification and reference implementation of the
+openexr: EXR file format, the professional-grade image storage format of the
+openexr: motion picture industry. The purpose of EXR format is to accurately
+openexr: and efficiently represent high-dynamic-range scene-linear image data
+openexr: and associated metadata, with strong support for multi-part, multi-
+openexr: channel use cases.
openexr:
openexr: Homepage: http://www.openexr.org/
openexr:
-openexr:
diff --git a/source/l/openjpeg/openjpeg.SlackBuild b/source/l/openjpeg/openjpeg.SlackBuild
index 944c35f5d..a33c632b0 100755
--- a/source/l/openjpeg/openjpeg.SlackBuild
+++ b/source/l/openjpeg/openjpeg.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=openjpeg
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/openjpeg/openjpeg.url b/source/l/openjpeg/openjpeg.url
new file mode 100644
index 000000000..a8e90600c
--- /dev/null
+++ b/source/l/openjpeg/openjpeg.url
@@ -0,0 +1 @@
+https://github.com/uclouvain/openjpeg
diff --git a/source/l/opus/opus.SlackBuild b/source/l/opus/opus.SlackBuild
index 72bba1aa7..5a42dac8e 100755
--- a/source/l/opus/opus.SlackBuild
+++ b/source/l/opus/opus.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=opus
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -85,28 +85,31 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Configure:
-CFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
--mandir=/usr/man \
- --docdir=/usr/doc/${PKGNAM}-$VERSION \
- --infodir=/usr/info \
- --disable-static \
- --enable-custom-modes \
- --enable-rtcd \
- --enable-intrinsics \
- --enable-ambisonics \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dcustom-modes=true \
+ -Drtcd=enabled \
+ -Dintrinsics=enabled \
+ -Ddocdir=/usr/doc/opus-$VERSION \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
# Strip binaries:
( cd $PKG
@@ -114,6 +117,10 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
+# Install man pages:
+mkdir -p $PKG/usr/man/man3
+cp -a meson-build/doc/man/man3/opus*.3 $PKG/usr/man/man3
+
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
diff --git a/source/l/opus/opus.url b/source/l/opus/opus.url
new file mode 100644
index 000000000..20a53ca0a
--- /dev/null
+++ b/source/l/opus/opus.url
@@ -0,0 +1 @@
+https://downloads.xiph.org/releases/opus
diff --git a/source/l/opusfile/opusfile.SlackBuild b/source/l/opusfile/opusfile.SlackBuild
index 1459e10aa..c363c8292 100755
--- a/source/l/opusfile/opusfile.SlackBuild
+++ b/source/l/opusfile/opusfile.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=opusfile
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/orc/orc.SlackBuild b/source/l/orc/orc.SlackBuild
index 70cf6ea78..8d2bd21eb 100755
--- a/source/l/orc/orc.SlackBuild
+++ b/source/l/orc/orc.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=orc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -36,7 +36,7 @@ PKG=$TMP/package-$PKGNAM
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/pango/pango.url b/source/l/pango/pango.url
new file mode 100644
index 000000000..429e2d71c
--- /dev/null
+++ b/source/l/pango/pango.url
@@ -0,0 +1 @@
+https://github.com/GNOME/pango
diff --git a/source/l/pango/slack-desc b/source/l/pango/slack-desc
index 110fb3f48..6c3f82ecd 100644
--- a/source/l/pango/slack-desc
+++ b/source/l/pango/slack-desc
@@ -14,6 +14,6 @@ pango: is needed; however, most of the work on Pango was done using the GTK+
pango: widget toolkit as a test platform. Pango forms the core of text and
pango: font handling for GTK.
pango:
-pango:
+pango: Homepage: https://pango.gnome.org
pango:
pango:
diff --git a/source/l/pangomm/pangomm.SlackBuild b/source/l/pangomm/pangomm.SlackBuild
index 957d36808..3e8ccc990 100755
--- a/source/l/pangomm/pangomm.SlackBuild
+++ b/source/l/pangomm/pangomm.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pangomm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/l/pangomm2/pangomm2.SlackBuild b/source/l/pangomm2/pangomm2.SlackBuild
new file mode 100755
index 000000000..11fe16361
--- /dev/null
+++ b/source/l/pangomm2/pangomm2.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Copyright 2015, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+SRCNAM=pangomm
+PKGNAM=pangomm2
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
+cp -a AUTHORS COPYING* NEWS README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/pangomm2/slack-desc b/source/l/pangomm2/slack-desc
new file mode 100644
index 000000000..b14ceb980
--- /dev/null
+++ b/source/l/pangomm2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+pangomm2: pangomm2 (C++ API for Pango, ABI 2.48)
+pangomm2:
+pangomm2: Pangomm is a C++ API for Pango.
+pangomm2:
+pangomm2: Homepage: http://gtkmm.org
+pangomm2:
+pangomm2:
+pangomm2:
+pangomm2:
+pangomm2:
+pangomm2:
diff --git a/source/l/parted/parted.SlackBuild b/source/l/parted/parted.SlackBuild
index 8b269a231..a10f29380 100755
--- a/source/l/parted/parted.SlackBuild
+++ b/source/l/parted/parted.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=parted
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/pcaudiolib/pcaudiolib.SlackBuild b/source/l/pcaudiolib/pcaudiolib.SlackBuild
index 3412d8439..4a660d2e7 100755
--- a/source/l/pcaudiolib/pcaudiolib.SlackBuild
+++ b/source/l/pcaudiolib/pcaudiolib.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/pcre2/pcre2.SlackBuild b/source/l/pcre2/pcre2.SlackBuild
index 8811c0e4e..b67da25a1 100755
--- a/source/l/pcre2/pcre2.SlackBuild
+++ b/source/l/pcre2/pcre2.SlackBuild
@@ -100,6 +100,16 @@ make install DESTDIR=$PKG || exit 1
# Don't ship .la files:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+# Move libraries, as they might be needed before /usr is available:
+mkdir $PKG/lib${LIBDIRSUFFIX}
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ for file in lib*.so.?.* ; do
+ mv $file ../../lib${LIBDIRSUFFIX}
+ ln -sf ../../lib${LIBDIRSUFFIX}/$file .
+ done
+ cp -a lib*.so.? ../../lib${LIBDIRSUFFIX}
+)
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/pcre2/pcre2.url b/source/l/pcre2/pcre2.url
index ad943045a..9d3010efa 100644
--- a/source/l/pcre2/pcre2.url
+++ b/source/l/pcre2/pcre2.url
@@ -1 +1,2 @@
-ftp://ftp.pcre.org/pub/pcre/
+https://github.com/PCRE2Project/pcre2
+https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.43/pcre2-10.43.tar.bz2
diff --git a/source/l/phonon-backend-gstreamer/phonon-backend-gstreamer.SlackBuild b/source/l/phonon-backend-gstreamer/phonon-backend-gstreamer.SlackBuild
index 59862bf4d..21ac25209 100755
--- a/source/l/phonon-backend-gstreamer/phonon-backend-gstreamer.SlackBuild
+++ b/source/l/phonon-backend-gstreamer/phonon-backend-gstreamer.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/phonon/phonon.SlackBuild b/source/l/phonon/phonon.SlackBuild
index 8e97af0f2..f29b53863 100755
--- a/source/l/phonon/phonon.SlackBuild
+++ b/source/l/phonon/phonon.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010, 2011, 2012, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2010, 2011, 2012, 2014, 2015, 2016, 2017, 2018, 2019 Eric Hameleers, Eindhoven, NL
# All rights reserved.
#
@@ -26,13 +26,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=phonon
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/phonon/phonon.deps b/source/l/phonon/phonon.deps
deleted file mode 100644
index bc90dbd95..000000000
--- a/source/l/phonon/phonon.deps
+++ /dev/null
@@ -1 +0,0 @@
-extra-cmake-modules
diff --git a/source/l/pilot-link/pilot-link.SlackBuild b/source/l/pilot-link/pilot-link.SlackBuild
index 4f42f44f7..80e15ce26 100755
--- a/source/l/pilot-link/pilot-link.SlackBuild
+++ b/source/l/pilot-link/pilot-link.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pilot-link
VERSION=${VERSION:-0.12.5}
-BUILD=${BUILD:-16}
+BUILD=${BUILD:-17}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -93,7 +93,7 @@ CFLAGS="$SLKCFLAGS" \
--enable-libusb \
--with-libpng \
--with-perl \
- --with-python \
+ --without-python \
--program-prefix="" \
--program-suffix="" \
--build=$ARCH-slackware-linux || exit 1
diff --git a/source/l/pipewire/doinst.sh b/source/l/pipewire/doinst.sh
new file mode 100644
index 000000000..210f4c544
--- /dev/null
+++ b/source/l/pipewire/doinst.sh
@@ -0,0 +1,4 @@
+# Toss redundant sample files:
+for file in pipewire.desktop pipewire-pulse.desktop ; do
+ cmp -s etc/xdg/autostart/${file} etc/xdg/autostart/${file}.sample && rm etc/xdg/autostart/${file}.sample
+done
diff --git a/source/l/pipewire/pipewire-disable.sh b/source/l/pipewire/pipewire-disable.sh
new file mode 100644
index 000000000..395d498f1
--- /dev/null
+++ b/source/l/pipewire/pipewire-disable.sh
@@ -0,0 +1,56 @@
+#!/bin/bash
+# Copyright 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# This script will attempt to disable pipewire as the default audio server,
+# changing it back to pulseaudio.
+
+# Remove or rename the XDG autostart files:
+for file in /etc/xdg/autostart/wireplumber.desktop /etc/xdg/autostart/pipewire-pulse.desktop /etc/xdg/autostart/pipewire.desktop ; do
+ if [ -r ${file}.sample ]; then
+ rm -f $file
+ elif [ -r $file ]; then
+ mv ${file} ${file}.sample
+ fi
+done
+
+# Enable pulseaudio.desktop:
+if grep -q "^Hidden=true$" /etc/xdg/autostart/pulseaudio.desktop ; then
+ grep -v "^Hidden=true$" /etc/xdg/autostart/pulseaudio.desktop > /etc/xdg/autostart/pulseaudio.desktop.new
+ mv /etc/xdg/autostart/pulseaudio.desktop.new /etc/xdg/autostart/pulseaudio.desktop
+fi
+
+# Edit /etc/pulse/client.conf to enable autospawn:
+sed -i "s/autospawn = no/autospawn = yes/g" /etc/pulse/client.conf
+sed -i "s/allow-autospawn-for-root = no/allow-autospawn-for-root = yes/g" /etc/pulse/client.conf
+
+echo "Pulseaudio enabled as system audio server."
+if ps ax | grep -q pipewire ; then
+ echo
+ echo "You may need to stop running daemon/pipewire processes."
+ echo "The clean way is to run these commands as the user that owns the processes:"
+ echo "/usr/bin/daemon --pidfiles=~/.run --name=pipewire --stop"
+ echo "/usr/bin/daemon --pidfiles=~/.run --name=wireplumber --stop"
+ echo "/usr/bin/daemon --pidfiles=~/.run --name=pipewire-pulse --stop"
+ echo
+ echo "The quick and dirty way if nothing else on the machine is using the daemon"
+ echo "utility is to issue this command:"
+ echo "killall daemon"
+fi
diff --git a/source/l/pipewire/pipewire-enable.sh b/source/l/pipewire/pipewire-enable.sh
new file mode 100644
index 000000000..abac5938b
--- /dev/null
+++ b/source/l/pipewire/pipewire-enable.sh
@@ -0,0 +1,48 @@
+#!/bin/bash
+# Copyright 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# This script will attempt to enable pipewire as the default audio server.
+
+# Disable this, as it is almost certainly left over from when pipewire
+# used to store its config file in this location:
+if [ -f /etc/pipewire/pipewire.conf ]; then
+ for file in /etc/pipewire/*.conf ; do
+ mv ${file} ${file}.obsolete
+ done
+fi
+
+# Rename the XDG autostart files:
+for file in /etc/xdg/autostart/wireplumber.desktop.sample /etc/xdg/autostart/pipewire-pulse.desktop.sample /etc/xdg/autostart/pipewire.desktop.sample ; do
+ if [ -r $file ]; then
+ mv $file /etc/xdg/autostart/$(basename $file .sample)
+ fi
+done
+
+# Disable pulseaudio.desktop:
+if ! grep -q "^Hidden=true$" /etc/xdg/autostart/pulseaudio.desktop ; then
+ echo "Hidden=true" >> /etc/xdg/autostart/pulseaudio.desktop
+fi
+
+# Edit /etc/pulse/client.conf to disable autospawn:
+sed -i "s/autospawn = yes/autospawn = no/g" /etc/pulse/client.conf
+sed -i "s/allow-autospawn-for-root = yes/allow-autospawn-for-root = no/g" /etc/pulse/client.conf
+
+echo "PipeWire enabled as system multimedia server."
diff --git a/source/l/pipewire/pipewire-pulse.desktop.sample b/source/l/pipewire/pipewire-pulse.desktop.sample
new file mode 100644
index 000000000..6c1f61ca8
--- /dev/null
+++ b/source/l/pipewire/pipewire-pulse.desktop.sample
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=PipeWire Pulse
+Comment=Start the PipeWire Pulse
+Exec=/usr/bin/daemon -frB --pidfiles=~/.run --name=pipewire-pulse /usr/bin/pipewire-pulse
+Terminal=false
+Type=Application
+X-GNOME-Autostart-Phase=Initialization
+X-KDE-autostart-phase=1
diff --git a/source/l/pipewire/pipewire.SlackBuild b/source/l/pipewire/pipewire.SlackBuild
index 86a6da0a0..79f1988d9 100755
--- a/source/l/pipewire/pipewire.SlackBuild
+++ b/source/l/pipewire/pipewire.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2020 Eric Hameleers, Eindhoven, NL
-# Copyright 2020, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -31,7 +31,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -91,7 +91,7 @@ export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
mkdir meson-build
cd meson-build
-meson setup \
+ unshare -n meson setup \
--prefix=/usr \
--libdir=lib${LIBDIRSUFFIX} \
--libexecdir=/usr/libexec \
@@ -103,8 +103,12 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dman=enabled \
+ -Dffmpeg=enabled \
+ -Dvulkan=enabled \
-Djack=disabled \
-Dpipewire-jack=disabled \
+ -Dsession-managers=[] \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
@@ -113,6 +117,18 @@ cd ..
# Create system config file override directory:
mkdir -p $PKG/etc/pipewire
+# Add sample configuation files:
+mkdir -p $PKG/etc/xdg/autostart
+cp -a $CWD/pipewire.desktop.sample $PKG/etc/xdg/autostart
+cp -a $CWD/pipewire-pulse.desktop.sample $PKG/etc/xdg/autostart
+chown root:root $PKG/etc/xdg/autostart/*
+chmod 644 $PKG/etc/xdg/autostart/*
+mkdir -p $PKG/usr/sbin
+cp -a $CWD/pipewire-disable.sh $PKG/usr/sbin
+cp -a $CWD/pipewire-enable.sh $PKG/usr/sbin
+chown root:root $PKG/usr/sbin/pipewire-disable.sh $PKG/usr/sbin/pipewire-enable.sh
+chmod 755 $PKG/usr/sbin/pipewire-disable.sh $PKG/usr/sbin/pipewire-enable.sh
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -129,7 +145,16 @@ cp -a \
CODE_OF_CONDUCT* COPYING* INSTALL* LICENSE* NEWS* PROTOCOL* README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
+# If there's a NEWS file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r NEWS ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat NEWS | head -n 1000 > $DOCSDIR/NEWS
+ touch -r NEWS $DOCSDIR/NEWS
+fi
+
mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
diff --git a/source/l/pipewire/pipewire.desktop.sample b/source/l/pipewire/pipewire.desktop.sample
new file mode 100644
index 000000000..19a83e7a6
--- /dev/null
+++ b/source/l/pipewire/pipewire.desktop.sample
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=PipeWire Media System
+Comment=Start the PipeWire Media System
+Exec=/usr/bin/daemon -frB --pidfiles=~/.run --name=pipewire /usr/bin/pipewire
+Terminal=false
+Type=Application
+X-GNOME-Autostart-Phase=Initialization
+X-KDE-autostart-phase=1
diff --git a/source/l/polkit-qt-1/polkit-qt-1.SlackBuild b/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
index 5d5a8c375..eba0c4740 100755
--- a/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
+++ b/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/polkit/0001-configure-fix-elogind-support.patch b/source/l/polkit/0001-configure-fix-elogind-support.patch
deleted file mode 100644
index 4c40bd9b2..000000000
--- a/source/l/polkit/0001-configure-fix-elogind-support.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 08bb656496cd3d6213bbe9473f63f2d4a110da6e Mon Sep 17 00:00:00 2001
-From: Rasmus Thomsen <cogitri@exherbo.org>
-Date: Wed, 11 Apr 2018 13:14:14 +0200
-Subject: [PATCH] configure: fix elogind support
-
-HAVE_LIBSYSTEMD is used to determine which source files to use.
-We have to check if either have_libsystemd or have_libelogind is
-true, as both of these need the source files which are used when
-HAVE_LIBSYSTEMD is true.
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 36df239..da47ecb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -221,7 +221,7 @@ AS_IF([test "x$cross_compiling" != "xyes" ], [
-
- AC_SUBST(LIBSYSTEMD_CFLAGS)
- AC_SUBST(LIBSYSTEMD_LIBS)
--AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes"], [Using libsystemd])
-+AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes" || test "$have_libelogind" = "yes" ], [Using libsystemd])
-
- dnl ---------------------------------------------------------------------------
- dnl - systemd unit / service files
---
-2.17.0
-
diff --git a/source/l/polkit/doinst.sh b/source/l/polkit/doinst.sh
index 3d81307e8..840abca13 100644
--- a/source/l/polkit/doinst.sh
+++ b/source/l/polkit/doinst.sh
@@ -10,9 +10,7 @@ config() {
# Otherwise, we leave the .new copy for the admin to consider...
}
-if [ -r etc/pam.d/polkit-1.new ]; then
- config etc/pam.d/polkit-1.new
-fi
+config etc/pam.d/polkit-1.new
# Make sure the polkitd user and group exist:
if ! grep -q "^polkitd:" etc/passwd ; then
diff --git a/source/l/polkit/polkit-124-systemd-fixup.patch b/source/l/polkit/polkit-124-systemd-fixup.patch
new file mode 100644
index 000000000..a4dd7eafc
--- /dev/null
+++ b/source/l/polkit/polkit-124-systemd-fixup.patch
@@ -0,0 +1,28 @@
+https://bugs.gentoo.org/922458
+https://github.com/polkit-org/polkit/pull/417/files#r1458416421
+--- a/meson.build
++++ b/meson.build
+@@ -212,14 +212,17 @@ if enable_logind
+ config_h.set10('HAVE_' + func.to_upper(), cc.has_function(func, dependencies: logind_dep))
+
+ # systemd unit / service files
+- systemd_dep = dependency('systemd', not_found_message: 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+ systemd_systemdsystemunitdir = get_option('systemdsystemunitdir')
+- if systemd_systemdsystemunitdir == '' and session_tracking == 'libsystemd-login'
+- # FIXME: systemd.pc file does not use variables with relative paths, so `define_variable` cannot be used
+- systemd_systemdsystemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir')
+- endif
++ if session_tracking == 'libsystemd-login'
++ systemd_dep = dependency('systemd', not_found_message: 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+
+- systemd_sysusers_dir = systemd_dep.get_pkgconfig_variable('sysusers_dir', default: '/usr/lib/sysusers.d')
++ if systemd_systemdsystemunitdir == ''
++ # FIXME: systemd.pc file does not use variables with relative paths, so `define_variable` cannot be used
++ systemd_systemdsystemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir')
++ endif
++
++ systemd_sysusers_dir = systemd_dep.get_pkgconfig_variable('sysusers_dir', default: '/usr/lib/sysusers.d')
++ endif
+ endif
+ config_h.set('HAVE_LIBSYSTEMD', enable_logind)
+
diff --git a/source/l/polkit/polkit-124-systemd.patch b/source/l/polkit/polkit-124-systemd.patch
new file mode 100644
index 000000000..e9b10e99e
--- /dev/null
+++ b/source/l/polkit/polkit-124-systemd.patch
@@ -0,0 +1,50 @@
+https://github.com/polkit-org/polkit/pull/417
+
+From 69d6b94d590b4dd1fbbac22b4f4d449f46ef61aa Mon Sep 17 00:00:00 2001
+From: Luca Boccassi <bluca@debian.org>
+Date: Thu, 18 Jan 2024 15:07:32 +0000
+Subject: [PATCH] meson: fix build failure when -Dsystemdsystemunitdir is
+ specified
+
+When 'systemdsystemunitdir' is specified as an option the systemd_dep
+variable is not defined, but the sysusers.d directory lookup uses it,
+causing a build failure:
+
+dh_auto_configure -- \
+ -Dexamples=false \
+ -Dintrospection=true \
+ -Dman=true \
+ -Dsystemdsystemunitdir=/usr/lib/systemd/system \
+ -Dtests=true \
+ -Dgtk_doc=true -Dsession_tracking=libsystemd-login
+ cd obj-x86_64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb LC_ALL=C.UTF-8 meson setup .. --wrap-mode=nodownload --buildtype=plain --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=lib/x86_64-linux-gnu -Dpython.bytecompile=-1 -Dexamples=false -Dintrospection=true -Dman=true -Dsystemdsystemunitdir=/usr/lib/systemd/system -Dtests=true -Dgtk_doc=true -Dsession_tracking=libsystemd-login
+The Meson build system
+Version: 1.3.1
+Source dir: /builds/bluca/polkit/debian/output/source_dir
+Build dir: /builds/bluca/polkit/debian/output/source_dir/obj-x86_64-linux-gnu
+Build type: native build
+Project name: polkit
+Project version: 124
+
+<...>
+
+Run-time dependency libsystemd found: YES 255
+Checking for function "sd_uid_get_display" with dependency libsystemd: YES
+Checking for function "sd_pidfd_get_session" with dependency libsystemd: YES
+../meson.build:222:37: ERROR: Unknown variable "systemd_dep".
+
+Follow-up for 24f1e0af3f7bd17e220cb96201f3c654e737ad34
+--- a/meson.build
++++ b/meson.build
+@@ -212,9 +212,9 @@ if enable_logind
+ config_h.set10('HAVE_' + func.to_upper(), cc.has_function(func, dependencies: logind_dep))
+
+ # systemd unit / service files
++ systemd_dep = dependency('systemd', not_found_message: 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+ systemd_systemdsystemunitdir = get_option('systemdsystemunitdir')
+ if systemd_systemdsystemunitdir == '' and session_tracking == 'libsystemd-login'
+- systemd_dep = dependency('systemd', not_found_message: 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+ # FIXME: systemd.pc file does not use variables with relative paths, so `define_variable` cannot be used
+ systemd_systemdsystemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir')
+ endif
+
diff --git a/source/l/polkit/polkit.SlackBuild b/source/l/polkit/polkit.SlackBuild
index 61304ea21..f83b85613 100755
--- a/source/l/polkit/polkit.SlackBuild
+++ b/source/l/polkit/polkit.SlackBuild
@@ -2,7 +2,7 @@
# Copyright 2009, 2011, 2015 Robby Workman, Northport, Alabama, USA
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2012, 2013, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2013, 2018, 2020, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=polkit
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -80,65 +80,42 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-zcat $CWD/dont-set-wheel-group-as-admin.diff.gz | patch -p1 || exit 1
+zcat $CWD/dont-set-wheel-group-as-admin.diff.gz | patch -p1 --verbose || exit 1
-# https://gitlab.freedesktop.org/polkit/polkit/-/issues/29
-zcat $CWD/0001-configure-fix-elogind-support.patch.gz | patch -p1 || exit 1
+cat $CWD/polkit-124-systemd.patch | patch -p1 --verbose || exit 1
+cat $CWD/polkit-124-systemd-fixup.patch | patch -p1 --verbose || exit 1
-# If we get here and don't have a polkitd user/group, add one.
-# Otherwise a few directories in the package will have wrong permissions.
-if ! grep -q "^polkitd:" /etc/passwd ; then
- groupadd -fg 87 polkitd
- useradd -c "PolicyKit daemon owner" -d /var/lib/polkit -u 87 -g polkitd -s /bin/false polkitd
-fi
-
-# Choose correct options depending on whether PAM is installed:
-if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
- PAM_OPTIONS="--with-authfw=pam --with-pam-module-dir=/lib${LIBDIRSUFFIX}/security"
- unset SHADOW_OPTIONS
-else
- unset PAM_OPTIONS
- SHADOW_OPTIONS="--with-authfw=shadow"
-fi
-
-if [ ! -r configure ]; then
- if [ -x ./autogen.sh ]; then
- NOCONFIGURE=1 ./autogen.sh
- else
- autoreconf -vif
- fi
-fi
-
-LIBELOGIND_CFLAGS="$(pkg-config --cflags libelogind)" \
-LIBELOGIND_LIBS="$(pkg-config --libs libelogind)" \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-man-pages \
- --enable-gtk-doc \
- --mandir=/usr/man \
- --disable-static \
- --disable-examples \
- --enable-introspection \
- --enable-libsystemd-login=no \
- --enable-libelogind=yes \
- $PAM_OPTIONS \
- $SHADOW_OPTIONS \
- --enable-verbose-mode \
- --with-os-type=Slackware \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+ --buildtype=release \
+ -Dintrospection=true \
+ -Dsession_tracking=libelogind \
+ -Dsystemdsystemunitdir=/usr/lib/systemd/user \
+ -Dauthfw=pam \
+ -Dpam_module_dir=/lib${LIBDIRSUFFIX}/security \
+ -Dpam_prefix=/etc/pam.d \
+ -Dman=true \
+ -Djs_engine=duktape \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+ #-Dos_type=slackware \
# Create homedir for polkit. This is mentioned in /etc/passwd, but isn't
# actually used for anything later. Perms don't matter.
@@ -152,10 +129,8 @@ rmdir --parents $PKG/etc/dbus-1/system.d/
# Leave the /etc/polkit-1/rules.d/ dir in place, but move the config(s)
mv $PKG/etc/polkit-1/rules.d/* $PKG/usr/share/polkit-1/rules.d/
-if [ ! -z "$PAM_OPTIONS" ]; then
- # Make the PAM file .new:
- mv $PKG/etc/pam.d/polkit-1 $PKG/etc/pam.d/polkit-1.new
-fi
+# Make the PAM file .new:
+mv $PKG/etc/pam.d/polkit-1 $PKG/etc/pam.d/polkit-1.new
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
@@ -179,9 +154,8 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING HACKING INSTALL NEWS README \
+ AUTHORS* COPYING* HACKING* INSTALL* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
-( cd $PKG/usr/doc/$PKGNAM-$VERSION; ln -s ../../share/gtk-doc/html/polkit-1 html )
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/poppler/poppler.SlackBuild b/source/l/poppler/poppler.SlackBuild
index 76768ad9b..81a5ba020 100755
--- a/source/l/poppler/poppler.SlackBuild
+++ b/source/l/poppler/poppler.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2017, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2017, 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=poppler
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
+QT6OPT=${QT6OPT:--DENABLE_QT6=ON}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -67,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP || exit 1
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION || exit 1
chown -R root:root .
@@ -94,6 +95,7 @@ cmake \
-DENABLE_XPDF_HEADERS=ON \
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
-DENABLE_ZLIB=ON \
+ $QT6OPT \
.. || exit 1
make $NUMJOBS || make || exit 1
diff --git a/source/l/poppler/slack-desc b/source/l/poppler/slack-desc
index baba4a307..b4247ef13 100644
--- a/source/l/poppler/slack-desc
+++ b/source/l/poppler/slack-desc
@@ -14,6 +14,6 @@ poppler: library, whenever a flaw was found potentially dozens of applications
poppler: incorporating code from xpdf would have to be patched. By providing
poppler: a centralized PDF library this duplicated effort will be eliminated.
poppler:
-poppler: Homepage: http://poppler.freedesktop.org
+poppler: Homepage: https://poppler.freedesktop.org
poppler:
poppler:
diff --git a/source/l/popt/popt.SlackBuild b/source/l/popt/popt.SlackBuild
index 9aa118517..d65c0e27d 100755
--- a/source/l/popt/popt.SlackBuild
+++ b/source/l/popt/popt.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=popt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/protobuf/protobuf.SlackBuild b/source/l/protobuf/protobuf.SlackBuild
new file mode 100755
index 000000000..5ee4abc37
--- /dev/null
+++ b/source/l/protobuf/protobuf.SlackBuild
@@ -0,0 +1,137 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=protobuf
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+cat $CWD/soversion.patch | patch -p1 --verbose || exit 1
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -Dprotobuf_BUILD_TESTS=OFF \
+ -Dprotobuf_ABSL_PROVIDER=package \
+ -Dprotobuf_BUILD_SHARED_LIBS=ON \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Install the python bindings:
+cd python
+cp -a dist/setup.py .
+LDFLAGS+=" -L$TMP/$PKGNAM-$VERSION/build" \
+PROTOC="$TMP/$PKGNAM-$VERSION/build/protoc" \
+python3 -m build --wheel --no-isolation
+python3 -m installer --destdir "$PKG" dist/*.whl
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ CODE_OF_CONDUCT* CONTRIBUTING* CONTRIBUTORS* LICENSE* README* SECURITY* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/protobuf/protobuf.url b/source/l/protobuf/protobuf.url
new file mode 100644
index 000000000..d754a5c25
--- /dev/null
+++ b/source/l/protobuf/protobuf.url
@@ -0,0 +1 @@
+https://github.com/google/protobuf
diff --git a/source/l/protobuf/slack-desc b/source/l/protobuf/slack-desc
new file mode 100644
index 000000000..de212c191
--- /dev/null
+++ b/source/l/protobuf/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+protobuf: protobuf (Google's data interchange format)
+protobuf:
+protobuf: Protocol Buffers (a.k.a., protobuf) are Google's language-neutral,
+protobuf: platform-neutral, extensible mechanism for serializing structured
+protobuf: data.
+protobuf:
+protobuf: Homepage: https://github.com/google/protobuf
+protobuf:
+protobuf:
+protobuf:
+protobuf:
+
diff --git a/source/l/protobuf/soversion.patch b/source/l/protobuf/soversion.patch
new file mode 100644
index 000000000..5ed105f3f
--- /dev/null
+++ b/source/l/protobuf/soversion.patch
@@ -0,0 +1,30 @@
+--- ./cmake/libprotobuf.cmake.orig 2024-03-12 13:01:14.000000000 -0500
++++ ./cmake/libprotobuf.cmake 2024-03-18 14:15:16.062497366 -0500
+@@ -36,6 +36,7 @@
+ endif()
+ set_target_properties(libprotobuf PROPERTIES
+ VERSION ${protobuf_VERSION}
++ SOVERSION ${protobuf_VERSION_MINOR}
+ OUTPUT_NAME ${LIB_PREFIX}protobuf
+ DEBUG_POSTFIX "${protobuf_DEBUG_POSTFIX}"
+ # For -fvisibility=hidden and -fvisibility-inlines-hidden
+--- ./cmake/libprotobuf-lite.cmake.orig 2024-03-12 13:01:14.000000000 -0500
++++ ./cmake/libprotobuf-lite.cmake 2024-03-18 14:15:16.061497366 -0500
+@@ -33,6 +33,7 @@
+ endif()
+ set_target_properties(libprotobuf-lite PROPERTIES
+ VERSION ${protobuf_VERSION}
++ SOVERSION ${protobuf_VERSION_MINOR}
+ OUTPUT_NAME ${LIB_PREFIX}protobuf-lite
+ DEBUG_POSTFIX "${protobuf_DEBUG_POSTFIX}"
+ # For -fvisibility=hidden and -fvisibility-inlines-hidden
+--- ./cmake/libprotoc.cmake.orig 2024-03-12 13:01:14.000000000 -0500
++++ ./cmake/libprotoc.cmake 2024-03-18 14:15:16.062497366 -0500
+@@ -27,6 +27,7 @@
+ set_target_properties(libprotoc PROPERTIES
+ COMPILE_DEFINITIONS LIBPROTOC_EXPORTS
+ VERSION ${protobuf_VERSION}
++ SOVERSION ${protobuf_VERSION_MINOR}
+ OUTPUT_NAME ${LIB_PREFIX}protoc
+ DEBUG_POSTFIX "${protobuf_DEBUG_POSTFIX}"
+ # For -fvisibility=hidden and -fvisibility-inlines-hidden
diff --git a/source/l/pulseaudio/030_posix-completion.diff b/source/l/pulseaudio/030_posix-completion.diff
index de1ef055e..963522d0b 100644
--- a/source/l/pulseaudio/030_posix-completion.diff
+++ b/source/l/pulseaudio/030_posix-completion.diff
@@ -1,5 +1,5 @@
---- shell-completion/bash/pulseaudio.orig 2015-02-13 00:10:35.000000000 +1000
-+++ shell-completion/bash/pulseaudio 2015-09-12 11:09:36.948222926 +1000
+--- ./shell-completion/bash/pactl.orig 2022-05-28 10:18:37.000000000 -0500
++++ ./shell-completion/bash/pactl 2022-06-02 13:55:52.301595146 -0500
@@ -1,39 +1,45 @@
#!/bin/bash
diff --git a/source/l/pulseaudio/doinst.sh b/source/l/pulseaudio/doinst.sh
index 2c0737002..fe8421df4 100644
--- a/source/l/pulseaudio/doinst.sh
+++ b/source/l/pulseaudio/doinst.sh
@@ -26,6 +26,7 @@ config etc/pulse/client.conf.new
config etc/pulse/daemon.conf.new
config etc/pulse/default.pa.new
config etc/pulse/system.pa.new
+config etc/xdg/autostart/pulseaudio.desktop.new
preserve_perms etc/rc.d/rc.pulseaudio.new
# Make sure the pulse user is in the audio group:
diff --git a/source/l/pulseaudio/ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407.patch b/source/l/pulseaudio/ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407.patch
new file mode 100644
index 000000000..3fd2adc0c
--- /dev/null
+++ b/source/l/pulseaudio/ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407.patch
@@ -0,0 +1,64 @@
+From ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407 Mon Sep 17 00:00:00 2001
+From: Alper Nebi Yasak <alpernebiyasak@gmail.com>
+Date: Fri, 1 Dec 2023 13:28:05 +0300
+Subject: [PATCH] alsa-ucm: Replace port device UCM context assertion with an
+ error
+
+The pa_alsa_ucm_set_port() function is passed both a mapping context and
+a device port, and both of these refer to their respective UCM device.
+While switching over to having one port per mapping per UCM device, I
+expected both of these to be the same device struct, so added an assert
+checking so.
+
+This assertion gets triggered when we have multiple UCM verbs declaring
+the same UCM device name. The root cause here is that the ports' UCM
+device references are set once while creating the ports for the card, so
+they happen to be those of a specific verb and may not match those from
+a different UCM verb's profiles' mappings.
+
+Solving the root cause necessitates a larger refactor. What we actually
+assume here is that name of the UCM device is same for both the port and
+the UCM context, which ends up always true in practice. For now, replace
+the assert with a check and error.
+
+Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
+Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/802>
+---
+ src/modules/alsa/alsa-ucm.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
+index 7f5136249..018c01739 100644
+--- a/src/modules/alsa/alsa-ucm.c
++++ b/src/modules/alsa/alsa-ucm.c
+@@ -1581,6 +1581,7 @@ int pa_alsa_ucm_set_port(pa_alsa_ucm_mapping_context *context, pa_device_port *p
+ pa_alsa_ucm_config *ucm;
+ pa_alsa_ucm_device *dev;
+ pa_alsa_ucm_port_data *data;
++ const char *dev_name, *ucm_dev_name;
+
+ pa_assert(context && context->ucm);
+
+@@ -1588,8 +1589,17 @@ int pa_alsa_ucm_set_port(pa_alsa_ucm_mapping_context *context, pa_device_port *p
+ pa_assert(ucm->ucm_mgr);
+
+ data = PA_DEVICE_PORT_DATA(port);
+- dev = context->ucm_device;
+- pa_assert(dev == data->device);
++ dev = data->device;
++ pa_assert(dev);
++
++ if (context->ucm_device) {
++ dev_name = pa_proplist_gets(dev->proplist, PA_ALSA_PROP_UCM_NAME);
++ ucm_dev_name = pa_proplist_gets(context->ucm_device->proplist, PA_ALSA_PROP_UCM_NAME);
++ if (!pa_streq(dev_name, ucm_dev_name)) {
++ pa_log_error("Failed to set port %s with wrong UCM context: %s", dev_name, ucm_dev_name);
++ return -1;
++ }
++ }
+
+ return ucm_device_enable(ucm, dev);
+ }
+--
+GitLab
+
diff --git a/source/l/pulseaudio/f5cacd94abcc47003bd88ad7ca1450de649ffb15.patch b/source/l/pulseaudio/f5cacd94abcc47003bd88ad7ca1450de649ffb15.patch
new file mode 100644
index 000000000..6e1bd3389
--- /dev/null
+++ b/source/l/pulseaudio/f5cacd94abcc47003bd88ad7ca1450de649ffb15.patch
@@ -0,0 +1,95 @@
+From f5cacd94abcc47003bd88ad7ca1450de649ffb15 Mon Sep 17 00:00:00 2001
+From: Alper Nebi Yasak <alpernebiyasak@gmail.com>
+Date: Thu, 30 Nov 2023 20:17:22 +0300
+Subject: [PATCH] alsa-ucm: Check UCM verb before working with device status
+
+Some versions of the ALSA libraries run into a segmentation fault when
+we query a UCM device/modifier status without first setting a UCM verb.
+It's not a reasonable thing to do anyway, so check for this case and
+return an error. Also do the check in other helpers.
+
+Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
+Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/801>
+---
+ src/modules/alsa/alsa-ucm.c | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+
+diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
+index bb9438f79..7f5136249 100644
+--- a/src/modules/alsa/alsa-ucm.c
++++ b/src/modules/alsa/alsa-ucm.c
+@@ -624,6 +624,11 @@ static long ucm_device_status(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *dev)
+ char *devstatus;
+ long status = 0;
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to get status for UCM device %s: no UCM verb set", dev_name);
++ return -1;
++ }
++
+ devstatus = pa_sprintf_malloc("_devstatus/%s", dev_name);
+ if (snd_use_case_geti(ucm->ucm_mgr, devstatus, &status) < 0) {
+ pa_log_debug("Failed to get status for UCM device %s", dev_name);
+@@ -637,6 +642,11 @@ static long ucm_device_status(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *dev)
+ static int ucm_device_disable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *dev) {
+ const char *dev_name = pa_proplist_gets(dev->proplist, PA_ALSA_PROP_UCM_NAME);
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to disable UCM device %s: no UCM verb set", dev_name);
++ return -1;
++ }
++
+ /* If any of dev's conflicting devices is enabled, trying to disable
+ * dev gives an error despite the fact that it's already disabled.
+ * Check that dev is enabled to avoid this error. */
+@@ -657,6 +667,11 @@ static int ucm_device_disable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *dev)
+ static int ucm_device_enable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *dev) {
+ const char *dev_name = pa_proplist_gets(dev->proplist, PA_ALSA_PROP_UCM_NAME);
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to enable UCM device %s: no UCM verb set", dev_name);
++ return -1;
++ }
++
+ /* We don't need to enable devices that are already enabled */
+ if (ucm_device_status(ucm, dev) > 0) {
+ pa_log_debug("UCM device %s is already enabled", dev_name);
+@@ -707,6 +722,11 @@ static long ucm_modifier_status(pa_alsa_ucm_config *ucm, pa_alsa_ucm_modifier *m
+ char *modstatus;
+ long status = 0;
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to get status for UCM modifier %s: no UCM verb set", mod_name);
++ return -1;
++ }
++
+ modstatus = pa_sprintf_malloc("_modstatus/%s", mod_name);
+ if (snd_use_case_geti(ucm->ucm_mgr, modstatus, &status) < 0) {
+ pa_log_debug("Failed to get status for UCM modifier %s", mod_name);
+@@ -720,6 +740,11 @@ static long ucm_modifier_status(pa_alsa_ucm_config *ucm, pa_alsa_ucm_modifier *m
+ static int ucm_modifier_disable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_modifier *mod) {
+ const char *mod_name = pa_proplist_gets(mod->proplist, PA_ALSA_PROP_UCM_NAME);
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to disable UCM modifier %s: no UCM verb set", mod_name);
++ return -1;
++ }
++
+ /* We don't need to disable modifiers that are already disabled */
+ if (ucm_modifier_status(ucm, mod) == 0) {
+ pa_log_debug("UCM modifier %s is already disabled", mod_name);
+@@ -738,6 +763,11 @@ static int ucm_modifier_disable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_modifier *m
+ static int ucm_modifier_enable(pa_alsa_ucm_config *ucm, pa_alsa_ucm_modifier *mod) {
+ const char *mod_name = pa_proplist_gets(mod->proplist, PA_ALSA_PROP_UCM_NAME);
+
++ if (!ucm->active_verb) {
++ pa_log_error("Failed to disable UCM modifier %s: no UCM verb set", mod_name);
++ return -1;
++ }
++
+ /* We don't need to enable modifiers that are already enabled */
+ if (ucm_modifier_status(ucm, mod) > 0) {
+ pa_log_debug("UCM modifier %s is already enabled", mod_name);
+--
+GitLab
+
diff --git a/source/l/pulseaudio/pulseaudio.SlackBuild b/source/l/pulseaudio/pulseaudio.SlackBuild
index c725760b6..3e9b1b4b6 100755
--- a/source/l/pulseaudio/pulseaudio.SlackBuild
+++ b/source/l/pulseaudio/pulseaudio.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for pulseaudio
# Copyright 2015 Christoph Willing Brisbane, Australia
-# Copyright 2016, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2016, 2018, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -94,6 +94,10 @@ zcat $CWD/pulseaudio-autostart.patch.gz | patch -p1 --verbose || exit 1
# When built by meson, this patch also required to fix the above issue:
zcat $CWD/pulseaudio-autostart-meson.build.patch.gz | patch -p1 --verbose || exit 1
+# Fix 17.0 regressions:
+zcat $CWD/ed3d4f0837f670e5e5afb1afa5bcfc8ff05d3407.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/f5cacd94abcc47003bd88ad7ca1450de649ffb15.patch.gz | patch -p1 --verbose || exit 1
+
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
@@ -133,6 +137,7 @@ rmdir --parents $PKG/etc/dbus-1/system.d/
# Move config files to .new:
for f in $( find $PKG/etc/pulse/ -type f ) ; do mv $f $f.new ; done
+mv $PKG/etc/xdg/autostart/pulseaudio.desktop $PKG/etc/xdg/autostart/pulseaudio.desktop.new
# Add an init script for system wide mode. You shouldn't use this, but we'll
# still let you if you really want.
diff --git a/source/l/pulseaudio/pulseaudio.url b/source/l/pulseaudio/pulseaudio.url
new file mode 100644
index 000000000..0f5fc6c76
--- /dev/null
+++ b/source/l/pulseaudio/pulseaudio.url
@@ -0,0 +1 @@
+http://freedesktop.org/software/pulseaudio/releases/
diff --git a/source/l/pycairo/pycairo.SlackBuild b/source/l/pycairo/pycairo.SlackBuild
index 509f707ff..830fe5490 100755
--- a/source/l/pycairo/pycairo.SlackBuild
+++ b/source/l/pycairo/pycairo.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for pycairo
# Copyright 2007 by Eric Hameleers <alien@slackbuilds.org>
-# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycairo
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -81,7 +81,27 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/pycups/pycups.SlackBuild b/source/l/pycups/pycups.SlackBuild
index 654b68775..2baa7c19c 100755
--- a/source/l/pycups/pycups.SlackBuild
+++ b/source/l/pycups/pycups.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2008 Heinz Wiesinger, Oggau, AT
-# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycups
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -65,8 +65,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
-make install-rpmhook DESTDIR=$PKG || exit 1
+make || exit 1
+make install DESTDIR=$PKG || exit 1
find $PKG | xargs file | grep -e "shared object" -e "executable" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -87,4 +87,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/pycurl/pycurl.SlackBuild b/source/l/pycurl/pycurl.SlackBuild
index a0f0b2b5b..80bc818a8 100755
--- a/source/l/pycurl/pycurl.SlackBuild
+++ b/source/l/pycurl/pycurl.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2012, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2018, 2019, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycurl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -62,7 +62,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python3 setup.py --with-openssl install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
find $PKG | xargs file | grep -e "shared object" -e "executable" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/pygobject/pygobject.SlackBuild b/source/l/pygobject/pygobject.SlackBuild
index 6b9e40f3b..5a35d48ab 100755
--- a/source/l/pygobject/pygobject.SlackBuild
+++ b/source/l/pygobject/pygobject.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pygobject
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-8}
+BUILD=${BUILD:-10}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -97,6 +97,7 @@ find . \
#make clean
CFLAGS="$SLKCFLAGS" \
+PYTHON=python2 \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/pygobject/slack-desc b/source/l/pygobject/slack-desc
index b11f12ed0..475952bfd 100644
--- a/source/l/pygobject/slack-desc
+++ b/source/l/pygobject/slack-desc
@@ -12,7 +12,7 @@ pygobject: This archive contains bindings for the GObject, to be used in Python.
pygobject: It is a fairly complete set of bindings, it's already rather useful,
pygobject: and is usable to write moderately complex programs.
pygobject:
-pygobject: pygobject's home page: http://www.pygtk.org/
+pygobject: Homepage: https://pygobject.readthedocs.io
pygobject:
pygobject:
pygobject:
diff --git a/source/l/pygobject3/pygobject3.SlackBuild b/source/l/pygobject3/pygobject3.SlackBuild
index e8108d3d8..cb4ceab76 100755
--- a/source/l/pygobject3/pygobject3.SlackBuild
+++ b/source/l/pygobject3/pygobject3.SlackBuild
@@ -101,43 +101,6 @@ meson setup \
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# No ninja "make clean"?
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz || exit 1
-cd $SRCNAM-$VERSION || exit 1
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-
-## Obsolete. I guess we'll see if anyone misses it and if so possibly stick
-## a copy with the other python2 stuff.
-## Configure, build, and install (python2 version):
-#export CFLAGS="$SLKCFLAGS"
-#export CXXFLAGS="$SLKCFLAGS"
-#mkdir meson-build
-#cd meson-build
-#meson setup \
-# --prefix=/usr \
-# --libdir=lib${LIBDIRSUFFIX} \
-# --libexecdir=/usr/libexec \
-# --bindir=/usr/bin \
-# --sbindir=/usr/sbin \
-# --includedir=/usr/include \
-# --datadir=/usr/share \
-# --mandir=/usr/man \
-# --sysconfdir=/etc \
-# --localstatedir=/var \
-# --buildtype=release \
-# -Dpython=python \
-# .. || exit 1
-# ninja || exit 1
-# DESTDIR=$PKG ninja install || exit 1
-#cd ..
-
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/pygobject3/slack-desc b/source/l/pygobject3/slack-desc
index e573345cc..6d9a5bd45 100644
--- a/source/l/pygobject3/slack-desc
+++ b/source/l/pygobject3/slack-desc
@@ -12,7 +12,7 @@ pygobject3: This archive contains bindings for the GObject, to be used in Python
pygobject3: It is a fairly complete set of bindings, it's already rather useful,
pygobject3: and is usable to write moderately complex programs.
pygobject3:
-pygobject3: Homepage: https://live.gnome.org/PyGObject
+pygobject3: Homepage: https://pygobject.readthedocs.io
pygobject3:
pygobject3:
pygobject3:
diff --git a/source/l/pygtk/pygtk.url b/source/l/pygtk/pygtk.url
new file mode 100644
index 000000000..c5add8615
--- /dev/null
+++ b/source/l/pygtk/pygtk.url
@@ -0,0 +1 @@
+https://pypi.org/project/PyGTK
diff --git a/source/l/pyparsing/pyparsing.SlackBuild b/source/l/pyparsing/pyparsing.SlackBuild
index 2fc38dfff..f10e71dcb 100755
--- a/source/l/pyparsing/pyparsing.SlackBuild
+++ b/source/l/pyparsing/pyparsing.SlackBuild
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pyparsing
VERSION=${VERSION:-$(echo pyparsing-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -63,7 +63,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/python-Jinja2/Jinja2.url b/source/l/python-Jinja2/Jinja2.url
new file mode 100644
index 000000000..f978be6b1
--- /dev/null
+++ b/source/l/python-Jinja2/Jinja2.url
@@ -0,0 +1 @@
+https://pypi.org/project/Jinja2
diff --git a/source/l/python-Jinja2/python-Jinja2.SlackBuild b/source/l/python-Jinja2/python-Jinja2.SlackBuild
new file mode 100755
index 000000000..863b9a22a
--- /dev/null
+++ b/source/l/python-Jinja2/python-Jinja2.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-Jinja2
+SRCNAM=Jinja2
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-Jinja2/slack-desc b/source/l/python-Jinja2/slack-desc
new file mode 100644
index 000000000..a51cb172c
--- /dev/null
+++ b/source/l/python-Jinja2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-Jinja2: python-Jinja2 (A very fast and expressive template engine)
+python-Jinja2:
+python-Jinja2: Jinja is a fast, expressive, extensible templating engine. Special
+python-Jinja2: placeholders in the template allow writing code similar to Python
+python-Jinja2: syntax. Then the template is passed data to render the final document.
+python-Jinja2:
+python-Jinja2: Homepage: https://palletsprojects.com/p/jinja/
+python-Jinja2:
+python-Jinja2:
+python-Jinja2:
+python-Jinja2:
diff --git a/source/l/python-MarkupSafe/MarkupSafe.url b/source/l/python-MarkupSafe/MarkupSafe.url
new file mode 100644
index 000000000..f429897f2
--- /dev/null
+++ b/source/l/python-MarkupSafe/MarkupSafe.url
@@ -0,0 +1 @@
+https://pypi.org/project/Markupsafe
diff --git a/source/l/python-MarkupSafe/python-MarkupSafe.SlackBuild b/source/l/python-MarkupSafe/python-MarkupSafe.SlackBuild
new file mode 100755
index 000000000..2751b3dc1
--- /dev/null
+++ b/source/l/python-MarkupSafe/python-MarkupSafe.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-MarkupSafe
+SRCNAM=MarkupSafe
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-MarkupSafe/slack-desc b/source/l/python-MarkupSafe/slack-desc
new file mode 100644
index 000000000..7299d1dbc
--- /dev/null
+++ b/source/l/python-MarkupSafe/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-MarkupSafe: python-MarkupSafe (Safely add untrusted strings to HTML/XML markup)
+python-MarkupSafe:
+python-MarkupSafe: MarkupSafe implements a text object that escapes characters so it is
+python-MarkupSafe: safe to use in HTML and XML. Characters that have special meanings are
+python-MarkupSafe: replaced so that they display as the actual characters. This mitigates
+python-MarkupSafe: injection attacks, meaning untrusted user input can safely be
+python-MarkupSafe: displayed on a page.
+python-MarkupSafe:
+python-MarkupSafe: Homepage: https://palletsprojects.com/p/markupsafe/
+python-MarkupSafe:
+python-MarkupSafe:
diff --git a/source/l/python-PyYAML/PyYAML.url b/source/l/python-PyYAML/PyYAML.url
new file mode 100644
index 000000000..3d890b904
--- /dev/null
+++ b/source/l/python-PyYAML/PyYAML.url
@@ -0,0 +1 @@
+https://pypi.org/project/pyyaml
diff --git a/source/l/python-PyYAML/cython3.compat.patch b/source/l/python-PyYAML/cython3.compat.patch
new file mode 100644
index 000000000..4c924f496
--- /dev/null
+++ b/source/l/python-PyYAML/cython3.compat.patch
@@ -0,0 +1,39 @@
+From 17dc5b6cd96dcfe64fd71789c771ca9b96d260e5 Mon Sep 17 00:00:00 2001
+From: "Andrew J. Hesford" <ajh@sideband.org>
+Date: Fri, 21 Jul 2023 09:50:00 -0400
+Subject: [PATCH] Fix builds with Cython 3
+
+This is a *de minimis* fix for building with Cython 3. Recent Cython<3
+releases provided `Cython.Distutils.build_ext` as an alias to
+`Cython.Distutils.old_build_ext.old_build_ext`; Cython 3 drops this
+alias and instead uses a wholly new `Cython.Distutils.build_ext` that
+does not provide the `cython_sources` function used in `setup.py`.
+
+Explicitly importing `old_build_ext` preserves the existing behavior for
+recent Cython<3 and uses the correct behavior for Cython 3. Should the
+import fail (*e.g.*, because the version of Cython available predates
+the availability of `old_build_ext`), the import falls back to just
+`Cython.Distutils.build_ext`.
+
+Signed-off-by: Andrew J. Hesford <ajh@sideband.org>
+---
+ setup.py | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 944e7fa2..462b1e95 100644
+--- a/setup.py
++++ b/setup.py
+@@ -82,7 +82,11 @@
+ with_cython = True
+ try:
+ from Cython.Distutils.extension import Extension as _Extension
+- from Cython.Distutils import build_ext as _build_ext
++ try:
++ from Cython.Distutils.old_build_ext import old_build_ext as _build_ext
++ except ImportError:
++ from Cython.Distutils import build_ext as _build_ext
++
+ with_cython = True
+ except ImportError:
+ if with_cython:
diff --git a/source/l/python-PyYAML/pyproject.toml.cython3.patch b/source/l/python-PyYAML/pyproject.toml.cython3.patch
new file mode 100644
index 000000000..d8578d859
--- /dev/null
+++ b/source/l/python-PyYAML/pyproject.toml.cython3.patch
@@ -0,0 +1,7 @@
+--- ./pyproject.toml.orig 2023-07-17 18:39:53.000000000 -0500
++++ ./pyproject.toml 2024-03-03 13:11:48.147039844 -0600
+@@ -1,3 +1,3 @@
+ [build-system]
+-requires = ["setuptools", "wheel", "Cython<3.0"]
++requires = ["setuptools", "wheel", "Cython"]
+ build-backend = "setuptools.build_meta"
diff --git a/source/l/python-PyYAML/python-PyYAML.SlackBuild b/source/l/python-PyYAML/python-PyYAML.SlackBuild
new file mode 100755
index 000000000..7cc9e0f48
--- /dev/null
+++ b/source/l/python-PyYAML/python-PyYAML.SlackBuild
@@ -0,0 +1,88 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-PyYAML
+SRCNAM=PyYAML
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+# Fix build with Cython >= 3:
+cat $CWD/cython3.compat.patch | patch -p1 --verbose || exit 1
+cat $CWD/pyproject.toml.cython3.patch | patch -p1 --verbose || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-PyYAML/slack-desc b/source/l/python-PyYAML/slack-desc
new file mode 100644
index 000000000..1d266bb98
--- /dev/null
+++ b/source/l/python-PyYAML/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-PyYAML: python-PyYAML (YAML parser and emitter for Python)
+python-PyYAML:
+python-PyYAML: YAML is a data serialization format designed for human readability and
+python-PyYAML: interaction with scripting languages. PyYAML is a YAML parser and
+python-PyYAML: emitter for Python. PyYAML supports standard YAML tags and provides
+python-PyYAML: Python-specific tags that represent an arbitrary Python object. PyYAML
+python-PyYAML: is applicable for a broad range of tasks from complex configuration
+python-PyYAML: files to object serialization and persistence.
+python-PyYAML:
+python-PyYAML: Homepage: https://pyyaml.org/
+python-PyYAML:
diff --git a/source/l/python-alabaster/alabaster.url b/source/l/python-alabaster/alabaster.url
new file mode 100644
index 000000000..4c63b2d71
--- /dev/null
+++ b/source/l/python-alabaster/alabaster.url
@@ -0,0 +1 @@
+https://pypi.org/project/alabaster
diff --git a/source/l/python-alabaster/python-alabaster.SlackBuild b/source/l/python-alabaster/python-alabaster.SlackBuild
new file mode 100755
index 000000000..154a80fc4
--- /dev/null
+++ b/source/l/python-alabaster/python-alabaster.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-alabaster
+SRCNAM=alabaster
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-alabaster/slack-desc b/source/l/python-alabaster/slack-desc
new file mode 100644
index 000000000..4aefe17cd
--- /dev/null
+++ b/source/l/python-alabaster/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-alabaster: python-alabaster (Python Sphinx theme)
+python-alabaster:
+python-alabaster: Alabaster is a visually (c)lean, responsive, configurable theme for
+python-alabaster: the Sphinx documentation system. It is Python 2+3 compatible. It began
+python-alabaster: as a third-party theme, and is still maintained separately, but is now
+python-alabaster: an install-time dependency of Sphinx and is selected as the default
+python-alabaster: theme.
+python-alabaster:
+python-alabaster: Homepage: http://alabaster.readthedocs.io
+python-alabaster:
+python-alabaster:
+
diff --git a/source/l/python-appdirs/python-appdirs.SlackBuild b/source/l/python-appdirs/python-appdirs.SlackBuild
index fe7bc4bcf..5b193f716 100755
--- a/source/l/python-appdirs/python-appdirs.SlackBuild
+++ b/source/l/python-appdirs/python-appdirs.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-appdirs
VERSION=${VERSION:-$(echo appdirs-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-7}
SRCNAM=appdirs
diff --git a/source/l/python-babel/Babel.url b/source/l/python-babel/Babel.url
new file mode 100644
index 000000000..a0bee683f
--- /dev/null
+++ b/source/l/python-babel/Babel.url
@@ -0,0 +1 @@
+https://pypi.org/project/babel
diff --git a/source/l/python-babel/python-babel.SlackBuild b/source/l/python-babel/python-babel.SlackBuild
new file mode 100755
index 000000000..6b16f7775
--- /dev/null
+++ b/source/l/python-babel/python-babel.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-babel
+SRCNAM=Babel
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-babel/slack-desc b/source/l/python-babel/slack-desc
new file mode 100644
index 000000000..640d321f0
--- /dev/null
+++ b/source/l/python-babel/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-babel: python-babel (Python internationalization library)
+python-babel:
+python-babel: Babel is a Python library that provides an integrated collection of
+python-babel: utilities that assist with internationalizing and localizing Python
+python-babel: applications (in particular web-based applications.)
+python-babel:
+python-babel: Homepage: http://babel.pocoo.org/
+python-babel:
+python-babel:
+python-babel:
+python-babel:
diff --git a/source/l/python-build/build.url b/source/l/python-build/build.url
new file mode 100644
index 000000000..f114e5b5b
--- /dev/null
+++ b/source/l/python-build/build.url
@@ -0,0 +1 @@
+https://pypi.org/project/build
diff --git a/source/l/python-build/python-build.SlackBuild b/source/l/python-build/python-build.SlackBuild
new file mode 100755
index 000000000..5f5f9b2e4
--- /dev/null
+++ b/source/l/python-build/python-build.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-build
+VERSION=${VERSION:-$(echo build-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf build-$VERSION
+tar xvf $CWD/build-$VERSION.tar.?z || exit 1
+cd build-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# This is a core bootstrap package for building via wheels.
+# Don't change this build method unless necessary.
+python3 -m flit_core.wheel || exit 1
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-build/slack-desc b/source/l/python-build/slack-desc
new file mode 100644
index 000000000..bf841404e
--- /dev/null
+++ b/source/l/python-build/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-build: python-build (A simple, correct PEP 517 package builder)
+python-build:
+python-build: build will invoke the PEP 517 hooks to build a distribution package.
+python-build: It is a simple build tool and does not perform any dependency
+python-build: management.
+python-build:
+python-build:
+python-build:
+python-build:
+python-build:
+python-build:
diff --git a/source/l/python-calver/calver.url b/source/l/python-calver/calver.url
new file mode 100644
index 000000000..020e2f835
--- /dev/null
+++ b/source/l/python-calver/calver.url
@@ -0,0 +1 @@
+https://pypi.org/project/calver
diff --git a/source/l/python-calver/python-calver.SlackBuild b/source/l/python-calver/python-calver.SlackBuild
new file mode 100755
index 000000000..d71e153bc
--- /dev/null
+++ b/source/l/python-calver/python-calver.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-calver
+SRCNAM=calver
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst *.txt LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-calver/slack-desc b/source/l/python-calver/slack-desc
new file mode 100644
index 000000000..600604038
--- /dev/null
+++ b/source/l/python-calver/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-calver: python-calver (Setuptools extension for CalVer package versions)
+python-calver:
+python-calver: CalVer is a versioning convention based on your project's release
+python-calver: calendar, instead of arbitrary numbers.
+python-calver:
+python-calver: Homepage: https://pypi.org/project/calver
+python-calver:
+python-calver:
+python-calver:
+python-calver:
+python-calver:
diff --git a/source/l/python-certifi/python-certifi.url b/source/l/python-certifi/certifi.url
index 3970169e4..3970169e4 100644
--- a/source/l/python-certifi/python-certifi.url
+++ b/source/l/python-certifi/certifi.url
diff --git a/source/l/python-certifi/python-certifi.SlackBuild b/source/l/python-certifi/python-certifi.SlackBuild
index 7ff3d4239..d9de3040c 100755
--- a/source/l/python-certifi/python-certifi.SlackBuild
+++ b/source/l/python-certifi/python-certifi.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-certifi
VERSION=${VERSION:-$(echo certifi-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
SRCNAM=certifi
@@ -61,7 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE PKG-INFO \
diff --git a/source/l/python-cffi/cffi.url b/source/l/python-cffi/cffi.url
new file mode 100644
index 000000000..331d4077f
--- /dev/null
+++ b/source/l/python-cffi/cffi.url
@@ -0,0 +1 @@
+https://pypi.python.org/pypi/cffi
diff --git a/source/l/python-cffi/python-cffi.SlackBuild b/source/l/python-cffi/python-cffi.SlackBuild
new file mode 100755
index 000000000..0666654e6
--- /dev/null
+++ b/source/l/python-cffi/python-cffi.SlackBuild
@@ -0,0 +1,74 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-cffi
+SRCNAM=cffi
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a AUTHORS* LICENSE* PKG-INFO* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-cffi/slack-desc b/source/l/python-cffi/slack-desc
new file mode 100644
index 000000000..cce68d1d6
--- /dev/null
+++ b/source/l/python-cffi/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-cffi: python-cffi (C Foreign Function Interface for Python)
+python-cffi:
+python-cffi: Foreign Function Interface for Python calling C code.
+python-cffi:
+python-cffi: Homepage: https://pypi.python.org/project/cffi/
+python-cffi:
+python-cffi:
+python-cffi:
+python-cffi:
+python-cffi:
+python-cffi:
diff --git a/source/l/python-chardet/python-chardet.SlackBuild b/source/l/python-chardet/python-chardet.SlackBuild
index 509e9979d..50380c201 100755
--- a/source/l/python-chardet/python-chardet.SlackBuild
+++ b/source/l/python-chardet/python-chardet.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-chardet
VERSION=${VERSION:-$(echo chardet-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
SRCNAM=chardet
@@ -61,7 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* PKG-INFO \
diff --git a/source/l/python-charset-normalizer/python-charset-normalizer.SlackBuild b/source/l/python-charset-normalizer/python-charset-normalizer.SlackBuild
index b263f1596..9a177fabc 100755
--- a/source/l/python-charset-normalizer/python-charset-normalizer.SlackBuild
+++ b/source/l/python-charset-normalizer/python-charset-normalizer.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-charset-normalizer
SRCNAM=charset-normalizer
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -60,7 +60,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* NOTICE PKG-INFO \
diff --git a/source/l/python-distro/python-distro.url b/source/l/python-distro/distro.url
index 5bf9abc76..5bf9abc76 100644
--- a/source/l/python-distro/python-distro.url
+++ b/source/l/python-distro/distro.url
diff --git a/source/l/python-distro/python-distro.SlackBuild b/source/l/python-distro/python-distro.SlackBuild
index dd06fd17f..45f7780dc 100755
--- a/source/l/python-distro/python-distro.SlackBuild
+++ b/source/l/python-distro/python-distro.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-distro
SRCNAM=distro
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -60,9 +60,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# python2 dropped dropped as obsolete.
-#python setup.py install --root=$PKG || exit 1
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst CHANGELOG* CONTRIBUTING* LICENSE* README* \
diff --git a/source/l/python-dnspython/python-dnspython.SlackBuild b/source/l/python-dnspython/python-dnspython.SlackBuild
index 7bdfdfbfa..9621d9988 100755
--- a/source/l/python-dnspython/python-dnspython.SlackBuild
+++ b/source/l/python-dnspython/python-dnspython.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -35,7 +35,7 @@ fi
PKGNAM=python-dnspython
SRCNAM=dnspython
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -70,7 +70,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* NOTICE PKG-INFO \
diff --git a/source/l/python-docutils/python-docutils.url b/source/l/python-docutils/docutils.url
index c1a58a385..c1a58a385 100644
--- a/source/l/python-docutils/python-docutils.url
+++ b/source/l/python-docutils/docutils.url
diff --git a/source/l/python-docutils/python-docutils.SlackBuild b/source/l/python-docutils/python-docutils.SlackBuild
index 3dd51412b..62361b74d 100755
--- a/source/l/python-docutils/python-docutils.SlackBuild
+++ b/source/l/python-docutils/python-docutils.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2019, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -61,11 +61,16 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py build --build-lib=build/python3 install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+# Gotta be careful with that *
cd $PKG/usr/bin
for i in *.py; do
- ln -s "$i" "$PKG/usr/bin/$(basename $i .py)"
+ if [ -r "$i" ]; then
+ ln -s "$i" "$PKG/usr/bin/$(basename $i .py)"
+ fi
done
cd -
diff --git a/source/l/python-doxypypy/doxypypy.url b/source/l/python-doxypypy/doxypypy.url
new file mode 100644
index 000000000..4cb832cc0
--- /dev/null
+++ b/source/l/python-doxypypy/doxypypy.url
@@ -0,0 +1 @@
+https://pypi.org/project/doxypypy
diff --git a/source/l/python-doxypypy/python-doxypypy.SlackBuild b/source/l/python-doxypypy/python-doxypypy.SlackBuild
new file mode 100755
index 000000000..0b8c22fa4
--- /dev/null
+++ b/source/l/python-doxypypy/python-doxypypy.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-doxypypy
+SRCNAM=doxypypy
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-doxypypy/slack-desc b/source/l/python-doxypypy/slack-desc
new file mode 100644
index 000000000..e55612692
--- /dev/null
+++ b/source/l/python-doxypypy/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-doxypypy: python-doxypypy (A Doxygen filter for Python)
+python-doxypypy:
+python-doxypypy: A more Pythonic version of doxypy, a Doxygen filter for Python.
+python-doxypypy: It is meant to support all the same command line options as doxypy,
+python-doxypypy: but handle additional Python syntax beyond docstrings.
+python-doxypypy:
+python-doxypypy: Homepage: https://github.com/Feneric/doxypypy
+python-doxypypy:
+python-doxypypy:
+python-doxypypy:
+python-doxypypy:
diff --git a/source/l/python-doxyqml/doxyqml.url b/source/l/python-doxyqml/doxyqml.url
new file mode 100644
index 000000000..097e2d4cc
--- /dev/null
+++ b/source/l/python-doxyqml/doxyqml.url
@@ -0,0 +1 @@
+https://pypi.org/project/doxyqml
diff --git a/source/l/python-doxyqml/python-doxyqml.SlackBuild b/source/l/python-doxyqml/python-doxyqml.SlackBuild
new file mode 100755
index 000000000..7a82458ef
--- /dev/null
+++ b/source/l/python-doxyqml/python-doxyqml.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-doxyqml
+SRCNAM=doxyqml
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-doxyqml/slack-desc b/source/l/python-doxyqml/slack-desc
new file mode 100644
index 000000000..a77ed06cf
--- /dev/null
+++ b/source/l/python-doxyqml/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-doxyqml: python-doxyqml (Doxygen input filter for QML files)
+python-doxyqml:
+python-doxyqml: Doxyqml lets you use Doxygen to document your QML classes.
+python-doxyqml: It integrates as a Doxygen input filter to turn .qml files into
+python-doxyqml: pseudo-C++ which Doxygen can then use to generate documentation.
+python-doxyqml:
+python-doxyqml: Homepage: http://agateau.com/projects/doxyqml
+python-doxyqml:
+python-doxyqml:
+python-doxyqml:
+python-doxyqml:
diff --git a/source/l/python-editables/editables.url b/source/l/python-editables/editables.url
new file mode 100644
index 000000000..6db7cc849
--- /dev/null
+++ b/source/l/python-editables/editables.url
@@ -0,0 +1 @@
+https://pypi.org/project/editables
diff --git a/source/l/python-editables/python-editables.SlackBuild b/source/l/python-editables/python-editables.SlackBuild
new file mode 100755
index 000000000..11c1517d4
--- /dev/null
+++ b/source/l/python-editables/python-editables.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-editables
+VERSION=${VERSION:-$(echo editables-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf editables-$VERSION
+tar xvf $CWD/editables-$VERSION.tar.?z || exit 1
+cd editables-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-editables/slack-desc b/source/l/python-editables/slack-desc
new file mode 100644
index 000000000..d31f120d2
--- /dev/null
+++ b/source/l/python-editables/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-editables: python-editables (Python library for building editable wheels)
+python-editables:
+python-editables: This library supports the building of wheels which, when installed,
+python-editables: will expose packages in a local directory on sys.path in "editable
+python-editables: mode". In other words, changes to the package source will be
+python-editables: reflected in the package visible to Python, without needing a
+python-editables: reinstall.
+python-editables:
+python-editables: Homepage: https://pypi.org/project/editables
+python-editables:
+python-editables:
diff --git a/source/l/python-flit-core/flit-core.url b/source/l/python-flit-core/flit-core.url
new file mode 100644
index 000000000..f1fe835e1
--- /dev/null
+++ b/source/l/python-flit-core/flit-core.url
@@ -0,0 +1 @@
+https://pypi.org/project/flit_core
diff --git a/source/l/python-flit-core/python-flit-core.SlackBuild b/source/l/python-flit-core/python-flit-core.SlackBuild
new file mode 100755
index 000000000..cafd7fac6
--- /dev/null
+++ b/source/l/python-flit-core/python-flit-core.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-flit-core
+VERSION=${VERSION:-$(echo flit_core-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf flit_core-$VERSION
+tar xvf $CWD/flit_core-$VERSION.tar.?z || exit 1
+cd flit_core-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# directory for python packages
+PYTHONDIR=$(python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())')
+
+mkdir -p ${PKG}${PYTHONDIR}
+
+# This is a bootstrap package for building via wheels.
+# Stick with this build method.
+unshare -n python3 -m flit_core.wheel || exit 1
+python3 bootstrap_install.py --installdir ${PKG}${PYTHONDIR} dist/flit_core-*.whl
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENCE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-flit-core/slack-desc b/source/l/python-flit-core/slack-desc
new file mode 100644
index 000000000..41be368b8
--- /dev/null
+++ b/source/l/python-flit-core/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-flit-core: python-flit-core (Python build system)
+python-flit-core:
+python-flit-core: Flit is a simple way to put Python packages and modules on PyPI. It
+python-flit-core: tries to require less thought about packaging and help you avoid
+python-flit-core: common mistakes.
+python-flit-core:
+python-flit-core: Homepage: https://github.com/pypa/flit
+python-flit-core:
+python-flit-core:
+python-flit-core:
+python-flit-core:
diff --git a/source/l/python-future/python-future.url b/source/l/python-future/future.url
index b0aec8af3..b0aec8af3 100644
--- a/source/l/python-future/python-future.url
+++ b/source/l/python-future/future.url
diff --git a/source/l/python-future/python-future.SlackBuild b/source/l/python-future/python-future.SlackBuild
index 3f262a69d..c3bd2537b 100755
--- a/source/l/python-future/python-future.SlackBuild
+++ b/source/l/python-future/python-future.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-future
SRCNAM=future
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
-
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -61,10 +60,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Clear the build folder:
-rm -rf build
+unshare -n python3 -m build --wheel --no-isolation || exit 1
-python3 setup.py install --root=$PKG || exit 1
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* NOTICE PKG-INFO \
diff --git a/source/l/python-glad2/glad2.url b/source/l/python-glad2/glad2.url
new file mode 100644
index 000000000..71d8c01a8
--- /dev/null
+++ b/source/l/python-glad2/glad2.url
@@ -0,0 +1 @@
+https://pypi.org/project/glad2
diff --git a/source/l/python-glad2/python-glad2.SlackBuild b/source/l/python-glad2/python-glad2.SlackBuild
new file mode 100755
index 000000000..e42e959ed
--- /dev/null
+++ b/source/l/python-glad2/python-glad2.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-glad2
+VERSION=${VERSION:-$(echo glad2-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf glad2-$VERSION
+tar xvf $CWD/glad2-$VERSION.tar.?z || exit 1
+cd glad2-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst COPYING PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-glad2/slack-desc b/source/l/python-glad2/slack-desc
new file mode 100644
index 000000000..ebd7eacbd
--- /dev/null
+++ b/source/l/python-glad2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-glad2: python-glad2 (Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator)
+python-glad2:
+python-glad2: Glad uses the official Khronos-XML specs to generate a
+python-glad2: GL/GLES/EGL/GLX/WGL Loader made for your needs.
+python-glad2:
+python-glad2:
+python-glad2:
+python-glad2:
+python-glad2:
+python-glad2:
+python-glad2:
diff --git a/source/l/python-hatchling/hatchling.url b/source/l/python-hatchling/hatchling.url
new file mode 100644
index 000000000..d9137a704
--- /dev/null
+++ b/source/l/python-hatchling/hatchling.url
@@ -0,0 +1 @@
+https://pypi.org/project/hatchling
diff --git a/source/l/python-hatchling/python-hatchling.SlackBuild b/source/l/python-hatchling/python-hatchling.SlackBuild
new file mode 100755
index 000000000..98181146c
--- /dev/null
+++ b/source/l/python-hatchling/python-hatchling.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+# Copyright 2022-2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-hatchling
+VERSION=${VERSION:-$(echo hatchling-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf hatchling-$VERSION
+tar xvf $CWD/hatchling-$VERSION.tar.?z || exit 1
+cd hatchling-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-hatchling/slack-desc b/source/l/python-hatchling/slack-desc
new file mode 100644
index 000000000..6efa9c82c
--- /dev/null
+++ b/source/l/python-hatchling/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-hatchling: python-hatchling (Python build system)
+python-hatchling:
+python-hatchling: This is the extensible, standards compliant build backend used by
+python-hatchling: Hatch.
+python-hatchling:
+python-hatchling: Homepage: https://pypi.org/project/hatchling
+python-hatchling:
+python-hatchling:
+python-hatchling:
+python-hatchling:
+python-hatchling:
diff --git a/source/l/python-html5lib/html5lib.url b/source/l/python-html5lib/html5lib.url
new file mode 100644
index 000000000..650f08d55
--- /dev/null
+++ b/source/l/python-html5lib/html5lib.url
@@ -0,0 +1 @@
+https://github.com/html5lib/html5lib-python/archive/1.1.tar.gz
diff --git a/source/l/python-html5lib/python-html5lib.SlackBuild b/source/l/python-html5lib/python-html5lib.SlackBuild
new file mode 100755
index 000000000..8cc1be1ed
--- /dev/null
+++ b/source/l/python-html5lib/python-html5lib.SlackBuild
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+# Copyright 2023 Eric Hameleers, Eindhoven, NL
+# Copyright 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-html5lib
+SRCNAM=html5lib-python
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+if pip list |grep -q wheel ; then
+ unshare -n python3 -m build --wheel --no-isolation || exit 1
+ python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+else
+ python3 setup.py install --root=$PKG || exit 1
+fi
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a LICENSE* README* *.rst requirements*.txt \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-html5lib/slack-desc b/source/l/python-html5lib/slack-desc
new file mode 100644
index 000000000..1269cc5c9
--- /dev/null
+++ b/source/l/python-html5lib/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-html5lib: python-html5lib (HTML parser)
+python-html5lib:
+python-html5lib: Html5lib is a standards-compliant library for parsing and serializing
+python-html5lib: HTML documents and fragments in Python.
+python-html5lib:
+python-html5lib: Homepage: https://github.com/html5lib/html5lib-python
+python-html5lib:
+python-html5lib:
+python-html5lib:
+python-html5lib:
+python-html5lib:
diff --git a/source/l/python-idna/idna.url b/source/l/python-idna/idna.url
new file mode 100644
index 000000000..1bd73261b
--- /dev/null
+++ b/source/l/python-idna/idna.url
@@ -0,0 +1 @@
+https://github.com/kjd/idna
diff --git a/source/l/python-idna/python-idna.SlackBuild b/source/l/python-idna/python-idna.SlackBuild
index 3ce4eb5f2..dc7b695cd 100755
--- a/source/l/python-idna/python-idna.SlackBuild
+++ b/source/l/python-idna/python-idna.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -61,7 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst PKG-INFO \
diff --git a/source/l/python-idna/python-idna.url b/source/l/python-idna/python-idna.url
deleted file mode 100644
index be2438177..000000000
--- a/source/l/python-idna/python-idna.url
+++ /dev/null
@@ -1 +0,0 @@
-https://github.com/kjd/idna/releases
diff --git a/source/l/python-imagesize/imagesize.url b/source/l/python-imagesize/imagesize.url
new file mode 100644
index 000000000..eefda796a
--- /dev/null
+++ b/source/l/python-imagesize/imagesize.url
@@ -0,0 +1 @@
+https://pypi.org/project/imagesize
diff --git a/source/l/python-imagesize/python-imagesize.SlackBuild b/source/l/python-imagesize/python-imagesize.SlackBuild
new file mode 100755
index 000000000..73b33260d
--- /dev/null
+++ b/source/l/python-imagesize/python-imagesize.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-imagesize
+SRCNAM=imagesize
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-imagesize/slack-desc b/source/l/python-imagesize/slack-desc
new file mode 100644
index 000000000..8671e3ca8
--- /dev/null
+++ b/source/l/python-imagesize/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-imagesize: python-imagesize (Python image size module)
+python-imagesize:
+python-imagesize: This module analyzes JPEG/JPEG 2000/PNG/GIF/TIFF/SVG/Netpbm image
+python-imagesize: headers and returns image size or DIP. It only parses headers and
+python-imagesize: ignores pixel data, so it is much faster than Pillow.
+python-imagesize:
+python-imagesize: Homepage: https://github.com/shibukawa/imagesize_py
+python-imagesize:
+python-imagesize:
+python-imagesize:
+python-imagesize:
diff --git a/source/l/python-importlib_metadata/importlib_metadata.url b/source/l/python-importlib_metadata/importlib_metadata.url
new file mode 100644
index 000000000..abfed2a82
--- /dev/null
+++ b/source/l/python-importlib_metadata/importlib_metadata.url
@@ -0,0 +1 @@
+https://pypi.org/project/importlib-metadata
diff --git a/source/l/python-importlib_metadata/python-importlib_metadata.SlackBuild b/source/l/python-importlib_metadata/python-importlib_metadata.SlackBuild
new file mode 100755
index 000000000..f55c5a8af
--- /dev/null
+++ b/source/l/python-importlib_metadata/python-importlib_metadata.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2022 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-importlib_metadata
+SRCNAM=importlib_metadata
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-importlib_metadata/slack-desc b/source/l/python-importlib_metadata/slack-desc
new file mode 100644
index 000000000..5bfae20bb
--- /dev/null
+++ b/source/l/python-importlib_metadata/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-importlib_metadata: python-importlib_metadata (access Python package metadata)
+python-importlib_metadata:
+python-importlib_metadata: Library to access the metadata for a Python package, supplying third-
+python-importlib_metadata: party access to the functionality of importlib.metadata including
+python-importlib_metadata: improvements added to subsequent Python versions.
+python-importlib_metadata:
+python-importlib_metadata: Homepage: https://github.com/python/importlib_metadata
+python-importlib_metadata:
+python-importlib_metadata:
+python-importlib_metadata:
+python-importlib_metadata:
diff --git a/source/l/python-installer/installer.url b/source/l/python-installer/installer.url
new file mode 100644
index 000000000..2330c76f7
--- /dev/null
+++ b/source/l/python-installer/installer.url
@@ -0,0 +1 @@
+https://pypi.org/project/installer
diff --git a/source/l/python-installer/python-installer.SlackBuild b/source/l/python-installer/python-installer.SlackBuild
new file mode 100755
index 000000000..d9e9bce66
--- /dev/null
+++ b/source/l/python-installer/python-installer.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Copyright 2022-2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-installer
+VERSION=${VERSION:-$(echo installer-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf installer-$VERSION
+tar xvf $CWD/installer-$VERSION.tar.?z || exit 1
+cd installer-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# This is a bootstrap package for building via wheels.
+# Keep using this build method for now.
+python3 -m flit_core.wheel || exit 1
+PYTHONPATH=src python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Remove Windows garbage:
+find $PKG . -name "*.exe" -exec rm -f "{}" \;
+find $PKG . -name "*.dll" -exec rm -f "{}" \;
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-installer/slack-desc b/source/l/python-installer/slack-desc
new file mode 100644
index 000000000..79e1265b2
--- /dev/null
+++ b/source/l/python-installer/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-installer: python-installer (Library for installing Python packages from wheels)
+python-installer:
+python-installer: This is a low-level library for installing a Python package from a
+python-installer: wheel distribution. It provides basic functionality and abstractions
+python-installer: for handling wheels and installing packages from wheels.
+python-installer:
+python-installer:
+python-installer:
+python-installer:
+python-installer:
+python-installer:
diff --git a/source/l/python-lxml/lxml.url b/source/l/python-lxml/lxml.url
new file mode 100644
index 000000000..0f92e0e16
--- /dev/null
+++ b/source/l/python-lxml/lxml.url
@@ -0,0 +1 @@
+https://pypi.org/project/lxml
diff --git a/source/l/python-lxml/python-lxml.SlackBuild b/source/l/python-lxml/python-lxml.SlackBuild
new file mode 100755
index 000000000..3e51e4aab
--- /dev/null
+++ b/source/l/python-lxml/python-lxml.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-lxml
+VERSION=${VERSION:-$(echo lxml-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf lxml-$VERSION
+tar xvf $CWD/lxml-$VERSION.tar.?z || exit 1
+cd lxml-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst *.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-lxml/slack-desc b/source/l/python-lxml/slack-desc
new file mode 100644
index 000000000..f310b9b45
--- /dev/null
+++ b/source/l/python-lxml/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-lxml: python-lxml (Python bindings for libxml2/libxslt)
+python-lxml:
+python-lxml: lxml is a Pythonic, mature binding for the libxml2 and libxslt
+python-lxml: libraries. It provides safe and convenient access to these libraries
+python-lxml: using the ElementTree API.
+python-lxml:
+python-lxml: It extends the ElementTree API significantly to offer support for
+python-lxml: XPath, RelaxNG, XML Schema, XSLT, C14N and much more.
+python-lxml:
+python-lxml:
+python-lxml:
diff --git a/source/l/python-markdown/python-markdown.SlackBuild b/source/l/python-markdown/python-markdown.SlackBuild
index ca75022f7..377e4e4cb 100755
--- a/source/l/python-markdown/python-markdown.SlackBuild
+++ b/source/l/python-markdown/python-markdown.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-markdown
SRCNAM=Markdown
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -60,7 +60,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* NOTICE PKG-INFO \
diff --git a/source/l/python-notify2/python-notify2.url b/source/l/python-notify2/notify2.url
index 340ff34bf..340ff34bf 100644
--- a/source/l/python-notify2/python-notify2.url
+++ b/source/l/python-notify2/notify2.url
diff --git a/source/l/python-notify2/python-notify2.SlackBuild b/source/l/python-notify2/python-notify2.SlackBuild
index 9b66ed956..f594fe44e 100755
--- a/source/l/python-notify2/python-notify2.SlackBuild
+++ b/source/l/python-notify2/python-notify2.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-notify2
VERSION=${VERSION:-$(echo notify2-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-8}
+BUILD=${BUILD:-11}
SRCNAM=notify2
diff --git a/source/l/python-packaging/python-packaging.SlackBuild b/source/l/python-packaging/python-packaging.SlackBuild
index 8d3430d7a..e66d2fe91 100755
--- a/source/l/python-packaging/python-packaging.SlackBuild
+++ b/source/l/python-packaging/python-packaging.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-packaging
VERSION=${VERSION:-$(echo packaging-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
SRCNAM=packaging
@@ -61,7 +61,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+# This is a bootstrap package for building via wheels.
+# Keep using this build method for now.
+python3 -m flit_core.wheel || exit 1
+PYTHONPATH=src python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE* PKG-INFO \
diff --git a/source/l/python-pathspec/pathspec.url b/source/l/python-pathspec/pathspec.url
new file mode 100644
index 000000000..3e7f7ae5a
--- /dev/null
+++ b/source/l/python-pathspec/pathspec.url
@@ -0,0 +1 @@
+https://pypi.org/project/pathspec
diff --git a/source/l/python-pathspec/python-pathspec.SlackBuild b/source/l/python-pathspec/python-pathspec.SlackBuild
new file mode 100755
index 000000000..deb1ffb4e
--- /dev/null
+++ b/source/l/python-pathspec/python-pathspec.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Copyright 2022-2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-pathspec
+VERSION=${VERSION:-$(echo pathspec-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf pathspec-$VERSION
+tar xvf $CWD/pathspec-$VERSION.tar.?z || exit 1
+cd pathspec-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-pathspec/slack-desc b/source/l/python-pathspec/slack-desc
new file mode 100644
index 000000000..32047383e
--- /dev/null
+++ b/source/l/python-pathspec/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-pathspec: python-pathspec (Python library for pattern matching of file paths)
+python-pathspec:
+python-pathspec: pathspec is a utility library for pattern matching of file paths.
+python-pathspec: So far this only includes Git’s wildmatch pattern matching which
+python-pathspec: itself is derived from Rsync’s wildmatch. Git uses wildmatch for
+python-pathspec: its gitignore files.
+python-pathspec:
+python-pathspec: Homepage: https://pypi.org/project/pathspec
+python-pathspec:
+python-pathspec:
+python-pathspec:
diff --git a/source/l/python-pbr/pbr.url b/source/l/python-pbr/pbr.url
new file mode 100644
index 000000000..c54d92d14
--- /dev/null
+++ b/source/l/python-pbr/pbr.url
@@ -0,0 +1 @@
+https://pypi.org/project/pbr
diff --git a/source/l/python-pbr/python-pbr.SlackBuild b/source/l/python-pbr/python-pbr.SlackBuild
new file mode 100755
index 000000000..542c0efd7
--- /dev/null
+++ b/source/l/python-pbr/python-pbr.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-pbr
+SRCNAM=pbr
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-pbr/slack-desc b/source/l/python-pbr/slack-desc
new file mode 100644
index 000000000..0d50f520e
--- /dev/null
+++ b/source/l/python-pbr/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-pbr: python-pbr (Python Build Reasonableness)
+python-pbr:
+python-pbr: PBR is a library that injects some useful and sensible default
+python-pbr: behaviors into your setuptools run.
+python-pbr:
+python-pbr: Homepage: https://docs.openstack.org/pbr/latest/
+python-pbr:
+python-pbr:
+python-pbr:
+python-pbr:
+python-pbr:
diff --git a/source/l/python-pillow/python-pillow.url b/source/l/python-pillow/Pillow.url
index ec278221f..ec278221f 100644
--- a/source/l/python-pillow/python-pillow.url
+++ b/source/l/python-pillow/Pillow.url
diff --git a/source/l/python-pillow/python-pillow.SlackBuild b/source/l/python-pillow/python-pillow.SlackBuild
index 84127f415..ac2864fdf 100755
--- a/source/l/python-pillow/python-pillow.SlackBuild
+++ b/source/l/python-pillow/python-pillow.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2009, 2010, 2013, 2014, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2013, 2014, 2018, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
@@ -78,7 +78,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
# install headers
mkdir -p ${PKG}$PYTHON3INC/Imaging
diff --git a/source/l/python-pluggy/pluggy.url b/source/l/python-pluggy/pluggy.url
new file mode 100644
index 000000000..66cdef584
--- /dev/null
+++ b/source/l/python-pluggy/pluggy.url
@@ -0,0 +1 @@
+https://pypi.org/project/pluggy
diff --git a/source/l/python-pluggy/python-pluggy.SlackBuild b/source/l/python-pluggy/python-pluggy.SlackBuild
new file mode 100755
index 000000000..5c4579709
--- /dev/null
+++ b/source/l/python-pluggy/python-pluggy.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Copyright 2021-2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-pluggy
+VERSION=${VERSION:-$(echo pluggy-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf pluggy-$VERSION
+tar xvf $CWD/pluggy-$VERSION.tar.?z || exit 1
+cd pluggy-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-pluggy/slack-desc b/source/l/python-pluggy/slack-desc
new file mode 100644
index 000000000..f2361b23b
--- /dev/null
+++ b/source/l/python-pluggy/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-pluggy: python-pluggy (A minimalist production ready plugin system)
+python-pluggy:
+python-pluggy: pluggy is a minimalist production ready plugin system. It is the
+python-pluggy: core framework used by the pytest, tox, and devpi projects.
+python-pluggy:
+python-pluggy: Homepage: https://pypi.org/project/pluggy
+python-pluggy:
+python-pluggy:
+python-pluggy:
+python-pluggy:
+python-pluggy:
diff --git a/source/l/python-ply/python-ply.url b/source/l/python-ply/ply.url
index 64cc9000d..64cc9000d 100644
--- a/source/l/python-ply/python-ply.url
+++ b/source/l/python-ply/ply.url
diff --git a/source/l/python-ply/python-ply.SlackBuild b/source/l/python-ply/python-ply.SlackBuild
index b91246817..0105a6cfd 100755
--- a/source/l/python-ply/python-ply.SlackBuild
+++ b/source/l/python-ply/python-ply.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-ply
SRCNAM=ply
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-9}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/l/python-psutil/psutil.url b/source/l/python-psutil/psutil.url
new file mode 100644
index 000000000..bff65fb66
--- /dev/null
+++ b/source/l/python-psutil/psutil.url
@@ -0,0 +1 @@
+https://pypi.org/project/psutil
diff --git a/source/l/python-psutil/python-psutil.SlackBuild b/source/l/python-psutil/python-psutil.SlackBuild
new file mode 100755
index 000000000..baeeb2111
--- /dev/null
+++ b/source/l/python-psutil/python-psutil.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-psutil
+SRCNAM=psutil
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-psutil/slack-desc b/source/l/python-psutil/slack-desc
new file mode 100644
index 000000000..5122ea40b
--- /dev/null
+++ b/source/l/python-psutil/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-psutil: python-psutil (Process monitoring for Python)
+python-psutil:
+python-psutil: A cross-platform library for process and system monitoring in Python.
+python-psutil:
+python-psutil: Homepage: https://github.com/giampaolo/psutil
+python-psutil:
+python-psutil:
+python-psutil:
+python-psutil:
+python-psutil:
+python-psutil:
diff --git a/source/l/python-pycparser/pycparser.url b/source/l/python-pycparser/pycparser.url
new file mode 100644
index 000000000..5ada425a6
--- /dev/null
+++ b/source/l/python-pycparser/pycparser.url
@@ -0,0 +1 @@
+https://pypi.python.org/pypi/pycparser
diff --git a/source/l/python-pycparser/python-pycparser.SlackBuild b/source/l/python-pycparser/python-pycparser.SlackBuild
new file mode 100755
index 000000000..cad99b5f7
--- /dev/null
+++ b/source/l/python-pycparser/python-pycparser.SlackBuild
@@ -0,0 +1,72 @@
+#!/bin/bash
+
+# Copyright 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-pycparser
+SRCNAM=pycparser
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a CHANGES* LICENSE* PKG-INFO* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-pycparser/slack-desc b/source/l/python-pycparser/slack-desc
new file mode 100644
index 000000000..5b599ae70
--- /dev/null
+++ b/source/l/python-pycparser/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-pycparser: python-pycparser (C parser written in Python)
+python-pycparser:
+python-pycparser: pycparser is a parser for the C language, written in pure Python. It
+python-pycparser: is a module designed to be easily integrated into applications that
+python-pycparser: need to parse C source code.
+python-pycparser:
+python-pycparser: Homepage: https://github.com/eliben/pycparser
+python-pycparser:
+python-pycparser:
+python-pycparser:
+python-pycparser:
diff --git a/source/l/python-pygments/Pygments.url b/source/l/python-pygments/Pygments.url
deleted file mode 100644
index c8fb574a0..000000000
--- a/source/l/python-pygments/Pygments.url
+++ /dev/null
@@ -1 +0,0 @@
-https://pypi.org/project/Pygments
diff --git a/source/l/python-pygments/pygments.url b/source/l/python-pygments/pygments.url
new file mode 100644
index 000000000..5773ab185
--- /dev/null
+++ b/source/l/python-pygments/pygments.url
@@ -0,0 +1 @@
+https://pypi.org/project/pygments
diff --git a/source/l/python-pygments/python-pygments.SlackBuild b/source/l/python-pygments/python-pygments.SlackBuild
index 99f266005..d6eda7db6 100755
--- a/source/l/python-pygments/python-pygments.SlackBuild
+++ b/source/l/python-pygments/python-pygments.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -24,10 +24,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-pygments
-VERSION=${VERSION:-$(echo Pygments-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
-
-SRCNAM=Pygments
+SRCNAM=pygments
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -61,7 +60,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst LICENSE PKG-INFO \
diff --git a/source/l/python-pygments/slack-desc b/source/l/python-pygments/slack-desc
index 005b0a539..f5dea0246 100644
--- a/source/l/python-pygments/slack-desc
+++ b/source/l/python-pygments/slack-desc
@@ -12,7 +12,7 @@ python-pygments: Pygments is a generic syntax highlighter written in Python that
python-pygments: supports over 300 languages and text formats, for use in code hosting,
python-pygments: forums, wikis or other applications that need to prettify source code.
python-pygments:
-python-pygments: Homepage: https://pypi.org/project/Pygments
+python-pygments: Homepage: https://pypi.org/project/pygments
python-pygments:
python-pygments:
python-pygments:
diff --git a/source/l/python-pyproject-hooks/pyproject-hooks.url b/source/l/python-pyproject-hooks/pyproject-hooks.url
new file mode 100644
index 000000000..25e9c620d
--- /dev/null
+++ b/source/l/python-pyproject-hooks/pyproject-hooks.url
@@ -0,0 +1 @@
+https://pypi.org/project/pyproject_hooks
diff --git a/source/l/python-pyproject-hooks/python-pyproject-hooks.SlackBuild b/source/l/python-pyproject-hooks/python-pyproject-hooks.SlackBuild
new file mode 100755
index 000000000..33d7b7572
--- /dev/null
+++ b/source/l/python-pyproject-hooks/python-pyproject-hooks.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-pyproject-hooks
+VERSION=${VERSION:-$(echo pyproject_hooks-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf pyproject_hooks-$VERSION
+tar xvf $CWD/pyproject_hooks-$VERSION.tar.?z || exit 1
+cd pyproject_hooks-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# This is a bootstrap package for building via wheels.
+# Keep using this build method for now.
+python3 -m flit_core.wheel || exit 1
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-pyproject-hooks/slack-desc b/source/l/python-pyproject-hooks/slack-desc
new file mode 100644
index 000000000..932fc3edb
--- /dev/null
+++ b/source/l/python-pyproject-hooks/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-pyproject-hooks: python-pyproject-hooks (Call pyproject.toml-based build backend hooks)
+python-pyproject-hooks:
+python-pyproject-hooks: This is a low-level library for calling build-backends in
+python-pyproject-hooks: pyproject.toml-based project. It provides the basic functionality to
+python-pyproject-hooks: help write tooling that generates distribution files from Python
+python-pyproject-hooks: projects.
+python-pyproject-hooks:
+python-pyproject-hooks:
+python-pyproject-hooks:
+python-pyproject-hooks:
+python-pyproject-hooks:
diff --git a/source/l/python-pysol_cards/python-pysol_cards.SlackBuild b/source/l/python-pysol_cards/python-pysol_cards.SlackBuild
index 1f88863a0..05eb2e21f 100755
--- a/source/l/python-pysol_cards/python-pysol_cards.SlackBuild
+++ b/source/l/python-pysol_cards/python-pysol_cards.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2020, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-pysol_cards
SRCNAM=pysol_cards
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
@@ -61,10 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Clear the build folder:
-rm -rf build
+unshare -n python3 -m build --wheel --no-isolation || exit 1
-python3 setup.py install --root=$PKG || exit 1
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a AUTHORS* CONTRIBUTING* ChangeLog* HACKING* LICENSE* PKG-INFO* README* \
diff --git a/source/l/python-random2/python-random2.SlackBuild b/source/l/python-random2/python-random2.SlackBuild
index e8173117c..a291d834e 100755
--- a/source/l/python-random2/python-random2.SlackBuild
+++ b/source/l/python-random2/python-random2.SlackBuild
@@ -36,7 +36,7 @@ fi
PKGNAM=python-random2
SRCNAM=random2
VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -72,7 +72,9 @@ find -L . \
rm -f setuptools/*.exe
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a CHANGES* PKG-INFO README* \
diff --git a/source/l/python-requests/python-requests.SlackBuild b/source/l/python-requests/python-requests.SlackBuild
index cd667504c..bd9f89ba3 100755
--- a/source/l/python-requests/python-requests.SlackBuild
+++ b/source/l/python-requests/python-requests.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-requests
VERSION=${VERSION:-$(echo requests-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
SRCNAM=requests
diff --git a/source/l/python-requests/python-requests.url b/source/l/python-requests/requests.url
index 685bbd5d5..685bbd5d5 100644
--- a/source/l/python-requests/python-requests.url
+++ b/source/l/python-requests/requests.url
diff --git a/source/l/python-sane/python-sane.SlackBuild b/source/l/python-sane/python-sane.SlackBuild
index 5e55fb372..f81da345e 100755
--- a/source/l/python-sane/python-sane.SlackBuild
+++ b/source/l/python-sane/python-sane.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-sane
VERSION=${VERSION:-$(echo Sane-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/python-setuptools_scm/python-setuptools_scm.SlackBuild b/source/l/python-setuptools_scm/python-setuptools_scm.SlackBuild
new file mode 100755
index 000000000..710a50973
--- /dev/null
+++ b/source/l/python-setuptools_scm/python-setuptools_scm.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2021, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-setuptools_scm
+SRCNAM=setuptools-scm
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.md LICENSE* PKG-INFO* README*i docs \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a CHANGELOG.md, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGELOG.md ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGELOG.md | head -n 1000 > $DOCSDIR/CHANGELOG.md
+ touch -r CHANGELOG.md $DOCSDIR/CHANGELOG.md
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-setuptools_scm/setuptools-scm.url b/source/l/python-setuptools_scm/setuptools-scm.url
new file mode 100644
index 000000000..71af39a71
--- /dev/null
+++ b/source/l/python-setuptools_scm/setuptools-scm.url
@@ -0,0 +1 @@
+https://pypi.org/project/setuptools_scm
diff --git a/source/l/python-setuptools_scm/slack-desc b/source/l/python-setuptools_scm/slack-desc
new file mode 100644
index 000000000..8f2c8a98d
--- /dev/null
+++ b/source/l/python-setuptools_scm/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-setuptools_scm: python-setuptools_scm (manages versions in SCM metadata)
+python-setuptools_scm:
+python-setuptools_scm: setuptools_scm handles managing your Python package versions in SCM
+python-setuptools_scm: metadata instead of declaring them as the version argument or in a SCM
+python-setuptools_scm: managed file. It also provides setuptools with a list of files that
+python-setuptools_scm: are managed by the SCM. Git and mercurial are supported out of the
+python-setuptools_scm: box.
+python-setuptools_scm:
+python-setuptools_scm: Homepage: https://github.com/pypa/setuptools_scm/
+python-setuptools_scm:
+python-setuptools_scm:
diff --git a/source/l/python-six/python-six.SlackBuild b/source/l/python-six/python-six.SlackBuild
index 645008e05..0403e81e2 100755
--- a/source/l/python-six/python-six.SlackBuild
+++ b/source/l/python-six/python-six.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-six
VERSION=${VERSION:-$(echo six-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/python-smartypants/python-smartypants.SlackBuild b/source/l/python-smartypants/python-smartypants.SlackBuild
new file mode 100755
index 000000000..78dfc16bf
--- /dev/null
+++ b/source/l/python-smartypants/python-smartypants.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-smartypants
+VERSION=${VERSION:-$(echo smartypants.py-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf smartypants.py-$VERSION
+tar xvf $CWD/smartypants.py-$VERSION.tar.?z || exit 1
+cd smartypants.py-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENCE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-smartypants/slack-desc b/source/l/python-smartypants/slack-desc
new file mode 100644
index 000000000..124a4f891
--- /dev/null
+++ b/source/l/python-smartypants/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-smartypants: python-smartypants (Translate ASCII characters to HTML entities)
+python-smartypants:
+python-smartypants: smartypants easily translates plain ASCII punctuation characters into
+python-smartypants: "smart" typographic punctuation HTML entities.
+python-smartypants:
+python-smartypants:
+python-smartypants:
+python-smartypants:
+python-smartypants:
+python-smartypants:
+python-smartypants:
diff --git a/source/l/python-smartypants/smartypants.url b/source/l/python-smartypants/smartypants.url
new file mode 100644
index 000000000..b5f82388b
--- /dev/null
+++ b/source/l/python-smartypants/smartypants.url
@@ -0,0 +1 @@
+https://github.com/leohemsted/smartypants.py/tags
diff --git a/source/l/python-snowballstemmer/python-snowballstemmer.SlackBuild b/source/l/python-snowballstemmer/python-snowballstemmer.SlackBuild
new file mode 100755
index 000000000..68b396dcd
--- /dev/null
+++ b/source/l/python-snowballstemmer/python-snowballstemmer.SlackBuild
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+# Copyright 2022 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-snowballstemmer
+SRCNAM=snowballstemmer
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-snowballstemmer/slack-desc b/source/l/python-snowballstemmer/slack-desc
new file mode 100644
index 000000000..630d4e83a
--- /dev/null
+++ b/source/l/python-snowballstemmer/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-snowballstemmer: python-snowballstemmer (Snowball stemming library)
+python-snowballstemmer:
+python-snowballstemmer: Stemming maps different forms of the same word to a common "stem" -
+python-snowballstemmer: for example, the English stemmer maps *connection*, *connections*,
+python-snowballstemmer: *connective*, *connected*, and *connecting* to *connect*. So a search
+python-snowballstemmer: for *connected* would also find documents which only have the other
+python-snowballstemmer: forms.
+python-snowballstemmer:
+python-snowballstemmer: Homepage: https://github.com/snowballstem/snowball
+python-snowballstemmer:
+python-snowballstemmer:
diff --git a/source/l/python-snowballstemmer/snowballstemmer.url b/source/l/python-snowballstemmer/snowballstemmer.url
new file mode 100644
index 000000000..1e830218d
--- /dev/null
+++ b/source/l/python-snowballstemmer/snowballstemmer.url
@@ -0,0 +1 @@
+https://pypi.org/project/snowballstemmer
diff --git a/source/l/python-sphinx/python-sphinx.SlackBuild b/source/l/python-sphinx/python-sphinx.SlackBuild
new file mode 100755
index 000000000..9a9ffd296
--- /dev/null
+++ b/source/l/python-sphinx/python-sphinx.SlackBuild
@@ -0,0 +1,121 @@
+#!/bin/bash
+
+# Copyright 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-sphinx
+SRCNAM=sphinx
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+# Install extensions (we don't need them all in separate packages):
+
+for extension in $CWD/extensions/*.tar.?z ; do
+ EXTNAM=$(basename $(echo $extension) | rev | cut -f 2- -d - | rev)
+ EXTVER=$(basename $(echo $extension) | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
+ cd $TMP
+ rm -rf ${EXTNAM}-${EXTVER}
+ tar xf $extension
+ cd ${EXTNAM}-${EXTVER} || exit 1
+
+ chown -R root:root .
+ find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+ unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+ python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+
+ mkdir -p $PKG/usr/doc/$EXTNAM-$EXTVER
+ cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$EXTNAM-$EXTVER
+ find $PKG/usr/doc/$EXTNAM-$EXTVER -type f -exec chmod 0644 {} \+
+
+ # If there's a HISTORY.rst, installing at least part of the recent history
+ # is useful, but don't let it get totally out of control:
+ if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${EXTNAM}-$EXTVER)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+ fi
+
+done
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-sphinx/slack-desc b/source/l/python-sphinx/slack-desc
new file mode 100644
index 000000000..c2bb5c9c0
--- /dev/null
+++ b/source/l/python-sphinx/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-sphinx: python-sphinx (Python documentation generator)
+python-sphinx:
+python-sphinx: Sphinx is a tool that makes it easy to create intelligent and
+python-sphinx: beautiful documentation for Python projects (or other documents
+python-sphinx: consisting of multiple reStructuredText sources), written by Georg
+python-sphinx: Brandl. It was originally created for the new Python documentation,
+python-sphinx: and has excellent facilities for Python project documentation, but
+python-sphinx: C/C++ is supported as well, and more languages are planned.
+python-sphinx:
+python-sphinx: Homepage: http://www.sphinx-doc.org/
+python-sphinx:
+
diff --git a/source/l/python-sphinx/sphinx.url b/source/l/python-sphinx/sphinx.url
new file mode 100644
index 000000000..51f348414
--- /dev/null
+++ b/source/l/python-sphinx/sphinx.url
@@ -0,0 +1,8 @@
+https://pypi.org/project/sphinx
+https://pypi.org/project/sphinxcontrib-applehelp
+https://pypi.org/project/sphinxcontrib-devhelp
+https://pypi.org/project/sphinxcontrib-htmlhelp
+https://pypi.org/project/sphinxcontrib-jsmath
+https://pypi.org/project/sphinxcontrib-jquery
+https://pypi.org/project/sphinxcontrib-qthelp
+https://pypi.org/project/sphinxcontrib-serializinghtml
diff --git a/source/l/python-sphinx_rtd_theme/python-sphinx_rtd_theme.SlackBuild b/source/l/python-sphinx_rtd_theme/python-sphinx_rtd_theme.SlackBuild
new file mode 100755
index 000000000..221cfe2d7
--- /dev/null
+++ b/source/l/python-sphinx_rtd_theme/python-sphinx_rtd_theme.SlackBuild
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-sphinx_rtd_theme
+SRCNAM=sphinx_rtd_theme
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-sphinx_rtd_theme/slack-desc b/source/l/python-sphinx_rtd_theme/slack-desc
new file mode 100644
index 000000000..167f00f5f
--- /dev/null
+++ b/source/l/python-sphinx_rtd_theme/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-sphinx_rtd_theme: python-sphinx_rtd_theme (Read the Docs Sphinx Theme)
+python-sphinx_rtd_theme:
+python-sphinx_rtd_theme: This Sphinx theme was designed to provide a great reader experience
+python-sphinx_rtd_theme: for documentation users on both desktop and mobile devices. This theme
+python-sphinx_rtd_theme: is used primarily on "Read the Docs" but can work with any Sphinx
+python-sphinx_rtd_theme: project.
+python-sphinx_rtd_theme:
+python-sphinx_rtd_theme: Homepage: https://sphinx-rtd-theme.readthedocs.io/en/stable/
+python-sphinx_rtd_theme:
+python-sphinx_rtd_theme:
+python-sphinx_rtd_theme:
diff --git a/source/l/python-sphinx_rtd_theme/sphinx_rtd_theme.url b/source/l/python-sphinx_rtd_theme/sphinx_rtd_theme.url
new file mode 100644
index 000000000..a4f8b2905
--- /dev/null
+++ b/source/l/python-sphinx_rtd_theme/sphinx_rtd_theme.url
@@ -0,0 +1,2 @@
+#https://github.com/readthedocs/sphinx_rtd_theme
+https://pypi.python.org/pypi/sphinx_rtd_theme
diff --git a/source/l/python-tomli-w/python-tomli-w.SlackBuild b/source/l/python-tomli-w/python-tomli-w.SlackBuild
new file mode 100755
index 000000000..212f842e6
--- /dev/null
+++ b/source/l/python-tomli-w/python-tomli-w.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-tomli-w
+VERSION=${VERSION:-$(echo tomli_w-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf tomli_w-$VERSION
+tar xvf $CWD/tomli_w-$VERSION.tar.?z || exit 1
+cd tomli_w-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-tomli-w/slack-desc b/source/l/python-tomli-w/slack-desc
new file mode 100644
index 000000000..013e82767
--- /dev/null
+++ b/source/l/python-tomli-w/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-tomli-w: python-tomli-w (Python library for writing TOML)
+python-tomli-w:
+python-tomli-w: Tomli-W is a Python library for writing TOML. It is a write-only
+python-tomli-w: counterpart to Tomli, which is a read-only TOML parser.
+python-tomli-w:
+python-tomli-w:
+python-tomli-w:
+python-tomli-w:
+python-tomli-w:
+python-tomli-w:
+python-tomli-w:
diff --git a/source/l/python-tomli-w/tomli-w.url b/source/l/python-tomli-w/tomli-w.url
new file mode 100644
index 000000000..68047c21a
--- /dev/null
+++ b/source/l/python-tomli-w/tomli-w.url
@@ -0,0 +1 @@
+https://pypi.org/project/tomli-w
diff --git a/source/l/python-trove-classifiers/python-trove-classifiers.SlackBuild b/source/l/python-trove-classifiers/python-trove-classifiers.SlackBuild
new file mode 100755
index 000000000..c66ac9763
--- /dev/null
+++ b/source/l/python-trove-classifiers/python-trove-classifiers.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Copyright 2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-trove-classifiers
+VERSION=${VERSION:-$(echo trove-classifiers-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf trove-classifiers-$VERSION
+tar xvf $CWD/trove-classifiers-$VERSION.tar.?z || exit 1
+cd trove-classifiers-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst *.txt LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-trove-classifiers/slack-desc b/source/l/python-trove-classifiers/slack-desc
new file mode 100644
index 000000000..9acbddca1
--- /dev/null
+++ b/source/l/python-trove-classifiers/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-trove-classifiers: python-trove-classifiers (Canonical source for classifiers on PyPI)
+python-trove-classifiers:
+python-trove-classifiers: Classifiers categorize projects per PEP 301. Use this package to
+python-trove-classifiers: validate classifiers in packages for PyPI upload or download.
+python-trove-classifiers:
+python-trove-classifiers: Homepage: https://pypi.org/project/trove-classifiers
+python-trove-classifiers:
+python-trove-classifiers:
+python-trove-classifiers:
+python-trove-classifiers:
+python-trove-classifiers:
diff --git a/source/l/python-trove-classifiers/trove-classifiers.url b/source/l/python-trove-classifiers/trove-classifiers.url
new file mode 100644
index 000000000..964f8a77b
--- /dev/null
+++ b/source/l/python-trove-classifiers/trove-classifiers.url
@@ -0,0 +1 @@
+https://pypi.org/project/trove-classifiers
diff --git a/source/l/python-typing_extensions/python-typing_extensions.SlackBuild b/source/l/python-typing_extensions/python-typing_extensions.SlackBuild
new file mode 100755
index 000000000..a782e9c7d
--- /dev/null
+++ b/source/l/python-typing_extensions/python-typing_extensions.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-typing_extensions
+SRCNAM=typing_extensions
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-typing_extensions/slack-desc b/source/l/python-typing_extensions/slack-desc
new file mode 100644
index 000000000..755ad4bfd
--- /dev/null
+++ b/source/l/python-typing_extensions/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-typing_extensions: python-typing_extensions (experimental type hints)
+python-typing_extensions:
+python-typing_extensions: Enable use of new type system features on older Python versions. For
+python-typing_extensions: example, typing.TypeGuard is new in Python 3.10, but typing_extensions
+python-typing_extensions: allows users on previous Python versions to use it too.
+python-typing_extensions:
+python-typing_extensions: Homepage: https://pypi.org/project/typing-extensions
+python-typing_extensions:
+python-typing_extensions:
+python-typing_extensions:
+python-typing_extensions:
diff --git a/source/l/python-typing_extensions/typing_extensions.url b/source/l/python-typing_extensions/typing_extensions.url
new file mode 100644
index 000000000..28ef321a0
--- /dev/null
+++ b/source/l/python-typing_extensions/typing_extensions.url
@@ -0,0 +1 @@
+https://pypi.org/project/typing-extensions
diff --git a/source/l/python-typogrify/jinja-3.1.patch b/source/l/python-typogrify/jinja-3.1.patch
new file mode 100644
index 000000000..e45684d39
--- /dev/null
+++ b/source/l/python-typogrify/jinja-3.1.patch
@@ -0,0 +1,45 @@
+From 34b6e01b71afd6876bbd2ef7ad134d11d05c82a0 Mon Sep 17 00:00:00 2001
+From: Jordan Yelloz <jordan@yelloz.me>
+Date: Sat, 2 Apr 2022 11:29:31 -0600
+Subject: [PATCH] jinja_filters: Updated import for Jinja 3.1.
+
+Added some fallback imports just to reduce the possibility of breakage with
+users running the latest version of typogrify and older versions of Flask/Jinja
+for whatever reason.
+
+Jinja 3.1.x has removed the jinja2.Markup function which was deprecated in Jinja
+3.0.x.
+
+See:
+- https://jinja.palletsprojects.com/en/3.1.x/changes/#version-3-1-0
+- https://github.com/pallets/jinja/pull/1544
+
+(cherry picked from commit 279c6b6c9f3a8b1bd065960a0e0bbe73236d717f)
+---
+ typogrify/templatetags/jinja_filters.py | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/typogrify/templatetags/jinja_filters.py b/typogrify/templatetags/jinja_filters.py
+index 0596c0b..d6e9b9e 100644
+--- a/typogrify/templatetags/jinja_filters.py
++++ b/typogrify/templatetags/jinja_filters.py
+@@ -1,6 +1,9 @@
+ from typogrify.filters import amp, caps, initial_quotes, smartypants, titlecase, typogrify, widont, TypogrifyError
+ from functools import wraps
+-import jinja2
++try:
++ from markupsafe import Markup
++except ImportError:
++ from jinja2 import Markup
+ from jinja2.exceptions import TemplateError
+
+
+@@ -18,7 +21,7 @@ def make_safe(f):
+ out = f(text)
+ except TypogrifyError as e:
+ raise TemplateError(e.message)
+- return jinja2.Markup(out)
++ return Markup(out)
+ wrapper.is_safe = True
+ return wrapper
+
diff --git a/source/l/python-typogrify/python-typogrify.SlackBuild b/source/l/python-typogrify/python-typogrify.SlackBuild
new file mode 100755
index 000000000..283403cfc
--- /dev/null
+++ b/source/l/python-typogrify/python-typogrify.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-typogrify
+VERSION=${VERSION:-$(echo typogrify-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf typogrify-$VERSION
+tar xvf $CWD/typogrify-$VERSION.tar.?z || exit 1
+cd typogrify-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Fix support for jinja 3.1
+zcat $CWD/jinja-3.1.patch.gz | patch -p1 --verbose || exit 1
+
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst LICENCE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-typogrify/slack-desc b/source/l/python-typogrify/slack-desc
new file mode 100644
index 000000000..6109939bf
--- /dev/null
+++ b/source/l/python-typogrify/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-typogrify: python-typogrify (Python library to enhance web typography)
+python-typogrify:
+python-typogrify: Typogrify provides a set of custom filters that automatically apply
+python-typogrify: various transformations to plain text in order to yield
+python-typogrify: typographically-improved HTML. While often used in conjunction with
+python-typogrify: Jinja and Django template systems, the filters can be used in any
+python-typogrify: environment.
+python-typogrify:
+python-typogrify:
+python-typogrify:
+python-typogrify:
diff --git a/source/l/python-typogrify/typogrify.url b/source/l/python-typogrify/typogrify.url
new file mode 100644
index 000000000..9ae14478a
--- /dev/null
+++ b/source/l/python-typogrify/typogrify.url
@@ -0,0 +1 @@
+https://pypi.org/project/typogrify
diff --git a/source/l/python-urllib3/python-urllib3.SlackBuild b/source/l/python-urllib3/python-urllib3.SlackBuild
index 68897e49e..87c731f09 100755
--- a/source/l/python-urllib3/python-urllib3.SlackBuild
+++ b/source/l/python-urllib3/python-urllib3.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -61,7 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-python3 setup.py install --root=$PKG || exit 1
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a *.rst *.txt PKG-INFO \
diff --git a/source/l/python-webencodings/python-webencodings.SlackBuild b/source/l/python-webencodings/python-webencodings.SlackBuild
new file mode 100755
index 000000000..8ce655e6e
--- /dev/null
+++ b/source/l/python-webencodings/python-webencodings.SlackBuild
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+# Copyright 2023 Eric Hameleers, Eindhoven, NL
+# Copyright 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-webencodings
+SRCNAM=webencodings
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+if pip list |grep -q wheel ; then
+ unshare -n python3 -m build --wheel --no-isolation || exit 1
+ python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+else
+ python3 setup.py install --root=$PKG || exit 1
+fi
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a LICENSE* README* *.rst \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-webencodings/slack-desc b/source/l/python-webencodings/slack-desc
new file mode 100644
index 000000000..4e58b6948
--- /dev/null
+++ b/source/l/python-webencodings/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-webencodings: python-webencodings (Character encoding aliases)
+python-webencodings:
+python-webencodings: This is a Python implementation of the WHATWG Encoding Standard.
+python-webencodings: These are character encoding aliases for legacy web content.
+python-webencodings:
+python-webencodings: Homepage: https://pypi.org/project/webencodings/
+python-webencodings:
+python-webencodings:
+python-webencodings:
+python-webencodings:
+python-webencodings:
diff --git a/source/l/python-webencodings/webencodings.url b/source/l/python-webencodings/webencodings.url
new file mode 100644
index 000000000..3b22dde4b
--- /dev/null
+++ b/source/l/python-webencodings/webencodings.url
@@ -0,0 +1 @@
+https://pypi.org/project/webencodings
diff --git a/source/l/python-wheel/python-wheel.SlackBuild b/source/l/python-wheel/python-wheel.SlackBuild
new file mode 100755
index 000000000..c5a754a3c
--- /dev/null
+++ b/source/l/python-wheel/python-wheel.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright 2021-2023 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-wheel
+VERSION=${VERSION:-$(echo wheel-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf wheel-$VERSION
+tar xvf $CWD/wheel-$VERSION.tar.?z || exit 1
+cd wheel-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ *.md *.rst *.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/python-wheel/slack-desc b/source/l/python-wheel/slack-desc
new file mode 100644
index 000000000..4a443da17
--- /dev/null
+++ b/source/l/python-wheel/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-wheel: python-wheel (Python wheel packaging standard reference library)
+python-wheel:
+python-wheel: This library is the reference implementation of the Python wheel
+python-wheel: packaging standard, as defined in PEP 427.
+python-wheel:
+python-wheel:
+python-wheel:
+python-wheel:
+python-wheel:
+python-wheel:
+python-wheel:
diff --git a/source/l/python-wheel/wheel.url b/source/l/python-wheel/wheel.url
new file mode 100644
index 000000000..b387f893d
--- /dev/null
+++ b/source/l/python-wheel/wheel.url
@@ -0,0 +1 @@
+https://pypi.org/project/wheel
diff --git a/source/l/python-zipp/python-zipp.SlackBuild b/source/l/python-zipp/python-zipp.SlackBuild
new file mode 100755
index 000000000..85fa96583
--- /dev/null
+++ b/source/l/python-zipp/python-zipp.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2022 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-zipp
+SRCNAM=zipp
+VERSION=${VERSION:-$(echo ${SRCNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+unshare -n python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-zipp/slack-desc b/source/l/python-zipp/slack-desc
new file mode 100644
index 000000000..760814ef8
--- /dev/null
+++ b/source/l/python-zipp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-zipp: python-zipp (object wrapper for zip files)
+python-zipp:
+python-zipp: A pathlib-compatible Zipfile object wrapper. Official backport of the
+python-zipp: standard library Path object.
+python-zipp:
+python-zipp: Homepage: https://github.com/jaraco/zipp
+python-zipp:
+python-zipp:
+python-zipp:
+python-zipp:
+python-zipp:
diff --git a/source/l/python-zipp/zipp.url b/source/l/python-zipp/zipp.url
new file mode 100644
index 000000000..6ea748155
--- /dev/null
+++ b/source/l/python-zipp/zipp.url
@@ -0,0 +1 @@
+https://pypi.org/project/zipp
diff --git a/source/l/python2-module-collection/python2-module-collection.SlackBuild b/source/l/python2-module-collection/python2-module-collection.SlackBuild
deleted file mode 100755
index 4f67d3244..000000000
--- a/source/l/python2-module-collection/python2-module-collection.SlackBuild
+++ /dev/null
@@ -1,496 +0,0 @@
-#!/bin/bash
-
-# Copyright 2020, 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PKGNAM=python2-module-collection
-VERSION=2.7.18
-BUILD=${BUILD:-6}
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) ARCH=$(uname -m) ;;
- esac
- export ARCH
-fi
-
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
- exit 0
-fi
-
-NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-
-cd $TMP
-rm -rf $PKGNAM-$VERSION
-mkdir -p $PKGNAM-$VERSION
-# This is a trick to allow the directory to be automatically cleaned up by a cron job here:
-touch $PKGNAM-$VERSION/configure
-
-fix_perms() {
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-}
-
-# setuptools-44.0.0:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/setuptools-44.0.0.tar.lz || exit 1
-cd setuptools-44.0.0
-fix_perms
-# Install setuptools to the system if it's not there:
-if [ ! -d /usr/lib${LIBDIRSUFFIX}/python2.7/site-packages/setuptools/version.py ]; then
- python2 setup.py install --root=/ || exit 1
-fi
-python2 setup.py install --root=$PKG || exit 1
-# Drop the python2 version of easy_install so the python 3.x
-# one is the default:
-rm -f $PKG/usr/bin/easy_install
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/setuptools-44.0.0
-cp -a CHANGES.rst PKG-INFO README.rst docs/*.txt \
- $PKG/usr/doc/$PKGNAM-$VERSION/setuptools-44.0.0
-find $PKG/usr/doc/$PKGNAM-$VERSION/setuptools-44.0.0 -type f -exec chmod 0644 {} \+
-# If there's a CHANGES.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/setuptools-44.0.0)
- cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
- touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
-fi
-
-# Cython-0.29.16:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/Cython-0.29.16.tar.lz || exit 1
-cd Cython-0.29.16
-fix_perms
-python2 setup.py install --root=$PKG --prefix=/usr || exit 1
-# Rename the python2 version with "2" suffix:
-for i in cython cythonize cygdb; do
- mv $PKG/usr/bin/$i $PKG/usr/bin/${i}2
-done
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Cython-0.29.16
-cp -a *.rst *.txt $PKG/usr/doc/$PKGNAM-$VERSION/Cython-0.29.16
-# If there's a CHANGES.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/Cython-0.29.16)
- cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
- touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
-fi
-
-# pip-20.0.2:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pip-20.0.2.tar.lz || exit 1
-cd pip-20.0.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-# Don't package this. We want /usr/bin/pip in the main python-pip package to be
-# the python3 version:
-rm -f $PKG/usr/bin/pip
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pip-20.0.2
-cp -a *.txt PKG-INFO README.rst \
- $PKG/usr/doc/$PKGNAM-$VERSION/pip-20.0.2
-find $PKG/usr/doc/$PKGNAM-$VERSION/pip-20.0.2 -type f -exec chmod 0644 {} \+
-
-# M2Crypto-0.35.2 and typing-3.7.4.1:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/M2Crypto-0.35.2.tar.xz || exit 1
-cd M2Crypto-0.35.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/M2Crypto-0.35.2
-cp -a \
- CHANGES INSTALL* LICENCE* PKG-INFO README* \
- $PKG/usr/doc/$PKGNAM-$VERSION/M2Crypto-0.35.2
-# Embed required dep typing module:
-cd ..
-rm -rf typing-3.7.4.1
-tar xf $CWD/modules/typing-3.7.4.1.tar.xz || exit 1
-cd typing-3.7.4.1 || exit 1
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/typing-3.7.4.1
-cp -a \
- CHANGES INSTALL* LICENCE* PKG-INFO README* doc/* \
- $PKG/usr/doc/$PKGNAM-$VERSION/typing-3.7.4.1
-
-# Mako-1.1.2:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/Mako-1.1.2.tar.lz || exit 1
-cd Mako-1.1.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-# Don't package this:
-rm -f $PKG/usr/bin/mako-render
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Mako-1.1.2
-cp -a AUTHORS CHANGES LICENSE PKG-INFO *.rst *.txt \
- $PKG/usr/doc/$PKGNAM-$VERSION/Mako-1.1.2
-find $PKG/usr/doc/$PKGNAM-$VERSION/Mako-1.1.2 -type f -exec chmod 0644 {} \+
-
-# pycairo-1.18.2:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pycairo-1.18.2.tar.lz || exit 1
-cd pycairo-1.18.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pycairo-1.18.2
-cp -a \
- AUTHORS COPYING* INSTALL NEWS PKG-INFO README* \
- $PKG/usr/doc/$PKGNAM-$VERSION/pycairo-1.18.2
-
-# pycups-1.9.74:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pycups-1.9.74.tar.lz || exit 1
-cd pycups-1.9.74
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pycups-1.9.74
-cp -a COPYING* NEWS README TODO $PKG/usr/doc/$PKGNAM-$VERSION/pycups-1.9.74
-
-# pycurl-7.43.0.3:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pycurl-7.43.0.3.tar.lz || exit 1
-cd pycurl-7.43.0.3
-fix_perms
-python2 setup.py --with-openssl install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pycurl-7.43.0.3
-cp -a COPYING* NEWS README TODO \
- $PKG/usr/doc/$PKGNAM-$VERSION/pycurl-7.43.0.3
-rm -rf $PKG/usr/share/doc/pycurl
-rmdir $PKG/usr/share/doc
-rmdir $PKG/usr/share
-
-# pyparsing-2.4.6:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pyparsing-2.4.6.tar.lz || exit 1
-cd pyparsing-2.4.6
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pyparsing-2.4.6
-cp -a CHANGES LICENSE* PKG-INFO README* docs/HowToUsePyparsing.* \
- $PKG/usr/doc/$PKGNAM-$VERSION/pyparsing-2.4.6
-# If there's a CHANGES file, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/pyparsing-2.4.6)
- cat CHANGES | head -n 1000 > $DOCSDIR/CHANGES
- touch -r CHANGES $DOCSDIR/CHANGES
-fi
-
-# appdirs-1.4.3:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/appdirs-1.4.3.tar.xz || exit 1
-cd appdirs-1.4.3
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/appdirs-1.4.3
-cp -a *.rst LICENSE* PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/appdirs-1.4.3
-find $PKG/usr/doc/$PKGNAM-$VERSION/appdirs-1.4.3 -type f -exec chmod 0644 {} \+
-# If there's a CHANGES.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/appdirs-1.4.3)
- cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
- touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
-fi
-
-# certifi-2019.11.28:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/certifi-2019.11.28.tar.lz || exit 1
-cd certifi-2019.11.28
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/certifi-2019.11.28
-cp -a *.rst LICENSE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/certifi-2019.11.28
-find $PKG/usr/doc/$PKGNAM-$VERSION/certifi-2019.11.28 -type f -exec chmod 0644 {} \+
-
-# chardet-3.0.4:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/chardet-3.0.4.tar.xz || exit 1
-cd chardet-3.0.4
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mv $PKG/usr/bin/chardetect $PKG/usr/bin/chardetect2
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/chardet-3.0.4
-cp -a *.rst LICENSE* PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/chardet-3.0.4
-find $PKG/usr/doc/$PKGNAM-$VERSION/chardet-3.0.4 -type f -exec chmod 0644 {} \+
-
-# docutils-0.16:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/docutils-0.16.tar.lz || exit 1
-cd docutils-0.16
-fix_perms
-python2 setup.py build --build-lib=build/python install --root=$PKG || exit 1
-# Don't package python2 versions of /usr/bin scripts:
-for file in rst2html.py rst2html4.py rst2html5.py rst2latex.py rst2man.py rst2odt.py rst2odt_prepstyles.py rst2pseudoxml.py rst2s5.py rst2xetex.py rst2xml.py rstpep2html.py ; do
- rm -f $PKG/usr/bin/$file
-done
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/docutils-0.16
-cp -a *.txt PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/docutils-0.16
-find $PKG/usr/doc/$PKGNAM-$VERSION/docutils-0.16 -type f -exec chmod 0644 {} \+
-# If there's a HISTORY.txt, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r HISTORY.txt ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/docutils-0.16)
- cat HISTORY.txt | head -n 1000 > $DOCSDIR/HISTORY.txt
- touch -r HISTORY.txt $DOCSDIR/HISTORY.txt
-fi
-
-# enum34-1.1.10:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/enum34-1.1.10.tar.gz || exit 1
-cd enum34-1.1.10
-fix_perms
-python2 setup.py install --root=$PKG
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/enum34-1.1.10
-cp -a \
- PKG-INFO enum/LICENSE enum/README enum/doc/* \
- $PKG/usr/doc/$PKGNAM-$VERSION/enum34-1.1.10
-
-# future-0.18.2:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/future-0.18.2.tar.lz || exit 1
-cd future-0.18.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-# Move the python2 versions:
-mv $PKG/usr/bin/futurize $PKG/usr/bin/futurize2
-mv $PKG/usr/bin/pasteurize $PKG/usr/bin/pasteurize2
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/future-0.18.2
-cp -a *.rst LICENSE* NOTICE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/future-0.18.2
-find $PKG/usr/doc/$PKGNAM-$VERSION/future-0.18.2 -type f -exec chmod 0644 {} \+
-
-# idna-2.9:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/idna-2.9.tar.lz || exit 1
-cd idna-2.9
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/idna-2.9
-cp -a *.rst PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/idna-2.9
-find $PKG/usr/doc/$PKGNAM-$VERSION/idna-2.9 -type f -exec chmod 0644 {} \+
-# If there's a HISTORY.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r HISTORY.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/idna-2.9)
- cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
- touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
-fi
-
-# notify2-0.3.1:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/notify2-0.3.1.tar.gz || exit 1
-cd notify2-0.3.1
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/notify2-0.3.1
-cp -a *.rst LICENSE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/notify2-0.3.1
-find $PKG/usr/doc/$PKGNAM-$VERSION/notify2-0.3.1 -type f -exec chmod 0644 {} \+
-
-# packaging-20.3:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/packaging-20.3.tar.lz || exit 1
-cd packaging-20.3
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/packaging-20.3
-cp -a *.rst LICENSE* PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/packaging-20.3
-find $PKG/usr/doc/$PKGNAM-$VERSION/packaging-20.3 -type f -exec chmod 0644 {} \+
-# If there's a CHANGELOG.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGELOG.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/packaging-20.3)
- cat CHANGELOG.rst | head -n 1000 > $DOCSDIR/CHANGELOG.rst
- touch -r CHANGELOG.rst $DOCSDIR/CHANGELOG.rst
-fi
-
-# ply-3.11:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/ply-3.11.tar.lz || exit 1
-cd ply-3.11
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/ply-3.11
-cp -a *.rst LICENSE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/ply-3.11
-find $PKG/usr/doc/$PKGNAM-$VERSION/ply-3.11 -type f -exec chmod 0644 {} \+
-
-# Pygments-2.5.2:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/Pygments-2.5.2.tar.lz || exit 1
-cd Pygments-2.5.2
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mv $PKG/usr/bin/pygmentize $PKG/usr/bin/pygmentize2
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Pygments-2.5.2
-cp -a *.rst LICENSE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/Pygments-2.5.2
-find $PKG/usr/doc/$PKGNAM-$VERSION/Pygments-2.5.2 -type f -exec chmod 0644 {} \+
-
-# requests-2.23.0:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/requests-2.23.0.tar.lz || exit 1
-cd requests-2.23.0
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/requests-2.23.0
-cp -a *.rst LICENSE* NOTICE PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/requests-2.23.0
-find $PKG/usr/doc/$PKGNAM-$VERSION/requests-2.23.0 -type f -exec chmod 0644 {} \+
-# If there's a HISTORY.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r HISTORY.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/requests-2.23.0)
- cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
- touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
-fi
-
-# Sane-2.8.3:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/Sane-2.8.3.tar.xz || exit 1
-cd Sane-2.8.3
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Sane-2.8.3
-cp -a \
- *.md *.rst COPYING \
- $PKG/usr/doc/$PKGNAM-$VERSION/Sane-2.8.3
-
-# six-1.14.0:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/six-1.14.0.tar.lz || exit 1
-cd six-1.14.0
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/six-1.14.0
-cp -a LICENSE* PKG-INFO README* $PKG/usr/doc/$PKGNAM-$VERSION/six-1.14.0
-
-# urllib3-1.25.11:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/urllib3-1.25.11.tar.lz || exit 1
-cd urllib3-1.25.11
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/urllib3-1.25.11
-cp -a *.rst *.txt PKG-INFO \
- $PKG/usr/doc/$PKGNAM-$VERSION/urllib3-1.25.11
-find $PKG/usr/doc/$PKGNAM-$VERSION/urllib3-1.25.11 -type f -exec chmod 0644 {} \+
-# If there's a CHANGES.rst, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES.rst ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION/urllib3-1.25.11)
- cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
- touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
-fi
-
-# pyxdg-0.26:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/pyxdg-0.26.tar.lz || exit 1
-cd pyxdg-0.26
-fix_perms
-python2 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/pyxdg-0.26
-cp -a \
- AUTHORS COPYING ChangeLog INSTALL PKG-INFO README TODO \
- $PKG/usr/doc/$PKGNAM-$VERSION/pyxdg-0.26
-
-# dbus-python-1.2.16:
-cd $TMP/$PKGNAM-$VERSION || exit 1
-tar xf $CWD/modules/dbus-python-1.2.16.tar.lz
-cd dbus-python-1.2.16
-fix_perms
-PYTHON_VERSION=2 \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --disable-html-docs \
- --enable-shared=yes \
- --enable-static=no \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux \
- || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/dbus-python-1.2.16
-cp -a \
- AUTHORS COPYING* INSTALL NEWS README* \
- $PKG/usr/doc/$PKGNAM-$VERSION/dbus-python-1.2.16
-
-# Remove overlap with main package:
-rm -rf $PKG/usr/include/dbus-1.0
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/dbus-python.pc
-
-# Strip binaries:
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python2-module-collection/slack-desc b/source/l/python2-module-collection/slack-desc
deleted file mode 100644
index 5561d8df4..000000000
--- a/source/l/python2-module-collection/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-python2-module-collection: python2-module-collection (modules for python2)
-python2-module-collection:
-python2-module-collection: These are additional modules that have traditionally been supplied by
-python2-module-collection: Slackware for python2. As python2 is officially EOL but is still
-python2-module-collection: required by some software, these modules have been collected here in
-python2-module-collection: a single package to reduce clutter and to allow them to be pinned at
-python2-module-collection: these versions since upstream has been dropping python2 support in
-python2-module-collection: newer versions.
-python2-module-collection:
-python2-module-collection:
-python2-module-collection:
diff --git a/source/l/python2-pycairo/pycairo.url b/source/l/python2-pycairo/pycairo.url
new file mode 100644
index 000000000..251924169
--- /dev/null
+++ b/source/l/python2-pycairo/pycairo.url
@@ -0,0 +1 @@
+https://pypi.python.org/pypi/pycairo
diff --git a/source/l/python2-pycairo/python2-pycairo.SlackBuild b/source/l/python2-pycairo/python2-pycairo.SlackBuild
new file mode 100755
index 000000000..d02f40954
--- /dev/null
+++ b/source/l/python2-pycairo/python2-pycairo.SlackBuild
@@ -0,0 +1,81 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python2-pycairo
+SRCNAM=pycairo
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+python2 setup.py build install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.txt PKG-INFO README.rst \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+# If there's a CHANGES.txt, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.txt ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.txt | head -n 1000 > $DOCSDIR/CHANGES.txt
+ touch -r CHANGES.txt $DOCSDIR/CHANGES.txt
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python2-pycairo/slack-desc b/source/l/python2-pycairo/slack-desc
new file mode 100644
index 000000000..6bf5c7971
--- /dev/null
+++ b/source/l/python2-pycairo/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python2-pycairo: python2-pycairo (Python bindings for the cairo graphics library)
+python2-pycairo:
+python2-pycairo: Pycairo is set of Python bindings for the cairo graphics library.
+python2-pycairo:
+python2-pycairo: Pycairo's web site: https://python2-pycairo.readthedocs.io/en/latest/
+python2-pycairo:
+python2-pycairo:
+python2-pycairo:
+python2-pycairo:
+python2-pycairo:
+python2-pycairo:
diff --git a/source/l/qca/qca.url b/source/l/qca/qca.url
deleted file mode 100644
index 6761b96a5..000000000
--- a/source/l/qca/qca.url
+++ /dev/null
@@ -1 +0,0 @@
-https://download.kde.org/stable/qca/
diff --git a/source/l/qca/slack-desc b/source/l/qca/slack-desc
deleted file mode 100644
index ec4e9f0d6..000000000
--- a/source/l/qca/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-qca: qca (Qt Cryptographic Architecture)
-qca:
-qca: QCA aims to provide a straightforward and cross-platform cryptographic
-qca: API using Qt datatypes and conventions. The library and plugins
-qca: support a range of cryptographic features, including SSL/TLS, X.509
-qca: certificates, SASL, OpenPGP, smartcards, and much more.
-qca:
-qca: Homepage: https://github.com/KDE/qca
-qca:
-qca:
-qca:
diff --git a/source/l/qrencode/qrencode.SlackBuild b/source/l/qrencode/qrencode.SlackBuild
index e54640e1a..72d2daf68 100755
--- a/source/l/qrencode/qrencode.SlackBuild
+++ b/source/l/qrencode/qrencode.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/qt5-webkit/icu68.patch b/source/l/qt5-webkit/icu68.patch
new file mode 100644
index 000000000..25f094d7f
--- /dev/null
+++ b/source/l/qt5-webkit/icu68.patch
@@ -0,0 +1,170 @@
+Regressed by https://github.com/unicode-org/icu/commit/c3fe7e09d844
+
+In file included from Source/WebCore/platform/text/TextAllInOne.cpp:31:
+Source/WebCore/platform/text/TextCodecICU.cpp:311:42: error: use of undeclared identifier 'TRUE'
+ ucnv_setFallback(m_converterICU, TRUE);
+ ^
+In file included from Source/WebCore/platform/text/TextAllInOne.cpp:40:
+In file included from Source/WebCore/platform/text/icu/UTextProvider.cpp:27:
+Source/WebCore/platform/text/icu/UTextProvider.h:83:28: error: use of undeclared identifier 'TRUE'
+ isAccessible = TRUE;
+ ^
+Source/WebCore/platform/text/icu/UTextProvider.h:88:28: error: use of undeclared identifier 'FALSE'
+ isAccessible = FALSE;
+ ^
+Source/WebCore/platform/text/icu/UTextProvider.h:97:28: error: use of undeclared identifier 'TRUE'
+ isAccessible = TRUE;
+ ^
+Source/WebCore/platform/text/icu/UTextProvider.h:102:28: error: use of undeclared identifier 'FALSE'
+ isAccessible = FALSE;
+ ^
+In file included from Source/WebCore/platform/text/TextAllInOne.cpp:41:
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:103:20: error: use of undeclared identifier 'TRUE'
+ return TRUE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:108:20: error: use of undeclared identifier 'FALSE'
+ return FALSE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:114:20: error: use of undeclared identifier 'TRUE'
+ return TRUE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:119:20: error: use of undeclared identifier 'FALSE'
+ return FALSE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:147:12: error: use of undeclared identifier 'TRUE'
+ return TRUE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:339:16: error: use of undeclared identifier 'FALSE'
+ return FALSE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:359:12: error: use of undeclared identifier 'TRUE'
+ return TRUE;
+ ^
+In file included from Source/WebCore/platform/text/TextAllInOne.cpp:42:
+Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp:128:16: error: use of undeclared identifier 'FALSE'
+ return FALSE;
+ ^
+Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp:148:12: error: use of undeclared identifier 'TRUE'
+ return TRUE;
+ ^
+
+--- Source/WebCore/platform/text/TextCodecICU.cpp.orig 2020-03-04 17:16:37 UTC
++++ Source/WebCore/platform/text/TextCodecICU.cpp
+@@ -308,7 +308,7 @@ void TextCodecICU::createICUConverter() const
+ m_converterICU = ucnv_open(m_canonicalConverterName, &err);
+ ASSERT(U_SUCCESS(err));
+ if (m_converterICU)
+- ucnv_setFallback(m_converterICU, TRUE);
++ ucnv_setFallback(m_converterICU, true);
+ }
+
+ int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& err)
+--- Source/WebCore/platform/text/icu/UTextProvider.h.orig 2020-03-04 17:16:37 UTC
++++ Source/WebCore/platform/text/icu/UTextProvider.h
+@@ -80,12 +80,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text
+ // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
+ ASSERT(offset < std::numeric_limits<int32_t>::max());
+ text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
+- isAccessible = TRUE;
++ isAccessible = true;
+ return true;
+ }
+ if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) {
+ text->chunkOffset = text->chunkLength;
+- isAccessible = FALSE;
++ isAccessible = false;
+ return true;
+ }
+ } else {
+@@ -94,12 +94,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text
+ // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
+ ASSERT(offset < std::numeric_limits<int32_t>::max());
+ text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
+- isAccessible = TRUE;
++ isAccessible = true;
+ return true;
+ }
+ if (nativeIndex <= 0 && !text->chunkNativeStart) {
+ text->chunkOffset = 0;
+- isAccessible = FALSE;
++ isAccessible = false;
+ return true;
+ }
+ }
+--- Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp.orig 2020-03-04 17:16:37 UTC
++++ Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp
+@@ -100,23 +100,23 @@ static UBool uTextLatin1Access(UText* uText, int64_t i
+ if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) {
+ // Already inside the buffer. Set the new offset.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return TRUE;
++ return true;
+ }
+ if (index >= length && uText->chunkNativeLimit == length) {
+ // Off the end of the buffer, but we can't get it.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return FALSE;
++ return false;
+ }
+ } else {
+ if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) {
+ // Already inside the buffer. Set the new offset.
+ uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
+- return TRUE;
++ return true;
+ }
+ if (!index && !uText->chunkNativeStart) {
+ // Already at the beginning; can't go any farther.
+ uText->chunkOffset = 0;
+- return FALSE;
++ return false;
+ }
+ }
+
+@@ -144,7 +144,7 @@ static UBool uTextLatin1Access(UText* uText, int64_t i
+
+ uText->nativeIndexingLimit = uText->chunkLength;
+
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status)
+@@ -336,7 +336,7 @@ static int64_t uTextLatin1ContextAwareNativeLength(UTe
+ static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
+ {
+ if (!text->context)
+- return FALSE;
++ return false;
+ int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text);
+ UBool isAccessible;
+ if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
+@@ -356,7 +356,7 @@ static UBool uTextLatin1ContextAwareAccess(UText* text
+ ASSERT(newContext == UTextProviderContext::PriorContext);
+ textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
+ }
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
+--- Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp.orig 2020-03-04 17:16:37 UTC
++++ Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp
+@@ -125,7 +125,7 @@ static inline int64_t uTextUTF16ContextAwareNativeLeng
+ static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
+ {
+ if (!text->context)
+- return FALSE;
++ return false;
+ int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text);
+ UBool isAccessible;
+ if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
+@@ -145,7 +145,7 @@ static UBool uTextUTF16ContextAwareAccess(UText* text,
+ ASSERT(newContext == UTextProviderContext::PriorContext);
+ textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
+ }
+- return TRUE;
++ return true;
+ }
+
+ static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
diff --git a/source/l/qt5-webkit/qt5-webkit.bison27.patch b/source/l/qt5-webkit/qt5-webkit-bison-3.7.patch
index e8f66ab14..13dd68182 100644
--- a/source/l/qt5-webkit/qt5-webkit.bison27.patch
+++ b/source/l/qt5-webkit/qt5-webkit-bison-3.7.patch
@@ -14,12 +14,12 @@ them itself since version 2.6.3.
1 file changed, 1 insertion(+), 20 deletions(-)
diff --git a/Source/WebCore/css/makegrammar.pl b/Source/WebCore/css/makegrammar.pl
-index 5d63b08102eb..9435701c7061 100644
+index 5d63b08102eb5..9435701c70612 100644
--- a/Source/WebCore/css/makegrammar.pl
+++ b/Source/WebCore/css/makegrammar.pl
@@ -73,25 +73,6 @@
}
-
+
my $fileBase = File::Spec->join($outputDir, $filename);
-my @bisonCommand = ($bison, "-d", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
+my @bisonCommand = ($bison, "--defines=$fileBase.h", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
diff --git a/source/l/qt5-webkit/qt5-webkit-python-3.9.patch b/source/l/qt5-webkit/qt5-webkit-python-3.9.patch
new file mode 100644
index 000000000..bad26ef54
--- /dev/null
+++ b/source/l/qt5-webkit/qt5-webkit-python-3.9.patch
@@ -0,0 +1,27 @@
+From 78360c01c796b6260bf828bc9c8a0ef73c5132fd Mon Sep 17 00:00:00 2001
+From: Konstantin Tokarev <annulen@yandex.ru>
+Date: Wed, 3 Jun 2020 15:01:42 +0300
+Subject: [PATCH] Fix compilation with Python 3.9: avoid passing encoding to
+ json.load()
+
+In Python 2.7 UTF-8 is assumed by default, while in Python 3 this argument
+is not supported.
+
+Change-Id: Ic459d60a6b20bc1838d8771bc36ac41614fe61a9
+---
+ Source/JavaScriptCore/generate-bytecode-files | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Source/JavaScriptCore/generate-bytecode-files b/Source/JavaScriptCore/generate-bytecode-files
+index c5dab429c7b0f..af3431275ecf9 100644
+--- a/Source/JavaScriptCore/generate-bytecode-files
++++ b/Source/JavaScriptCore/generate-bytecode-files
+@@ -163,7 +163,7 @@ if __name__ == "__main__":
+ initBytecodesFile = openOrExit(initASMFileName, "w")
+
+ try:
+- bytecodeSections = json.load(bytecodeFile, encoding = "utf-8")
++ bytecodeSections = json.load(bytecodeFile)
+ except:
+ print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info()))
+
diff --git a/source/l/qt5-webkit/qt5-webkit.SlackBuild b/source/l/qt5-webkit/qt5-webkit.SlackBuild
index 6bdd1d890..b0bd6ddc2 100755
--- a/source/l/qt5-webkit/qt5-webkit.SlackBuild
+++ b/source/l/qt5-webkit/qt5-webkit.SlackBuild
@@ -2,7 +2,7 @@
# Copyright 2015 Heinz Wiesinger, Amsterdam, The Netherlands
# Copyright 2016, 2017, 2018, 2019 Eric Hameleers, Eindhoven, NL
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2020, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,13 +28,13 @@ PKGNAM=qt5-webkit
SRCNAM=qtwebkit
SRCVER=${SRCVER:-5.212.0-alpha4}
VERSION=$(echo $SRCVER | tr - _)
-BUILD=${BUILD:-7}
+BUILD=${BUILD:-12}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -98,11 +98,23 @@ else
fi
# Fix for bison 3.7.x:
-zcat $CWD/qt5-webkit.bison27.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/qt5-webkit-bison-3.7.patch.gz | patch -p1 --verbose || exit 1
# Fix for glib-2.68.0:
zcat $CWD/qt5-webkit.glib-2.68.0.diff.gz | patch -p1 --verbose || exit 1
+# Fix for Ruby 3.2.x:
+zcat $CWD/webkit-offlineasm-warnings-ruby27.patch | patch -p1 --verbose || exit 1
+
+# Fix for gcc13:
+zcat $CWD/qt5-webkit.gcc13.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix for icu68:
+zcat $CWD/icu68.patch.gz | patch -p0 --verbose || exit 1
+
+# Use python3:
+zcat $CWD/qt5-webkit-python-3.9.patch.gz | patch -p1 --verbose || exit 1
+
# -DU_DEFINE_FALSE_AND_TRUE=1 since recent icu4c no longer defines these otherwise.
export CFLAGS="$SLKCFLAGS -DU_DEFINE_FALSE_AND_TRUE=1"
diff --git a/source/l/qt5-webkit/qt5-webkit.gcc13.diff b/source/l/qt5-webkit/qt5-webkit.gcc13.diff
new file mode 100644
index 000000000..318ad0a79
--- /dev/null
+++ b/source/l/qt5-webkit/qt5-webkit.gcc13.diff
@@ -0,0 +1,10 @@
+--- ./Source/ThirdParty/ANGLE/src/common/mathutil.h.orig 2020-03-04 11:16:37.000000000 -0600
++++ ./Source/ThirdParty/ANGLE/src/common/mathutil.h 2023-05-03 22:19:19.201630211 -0500
+@@ -16,6 +16,7 @@
+ #include <algorithm>
+ #include <string.h>
+ #include <stdlib.h>
++#include <cstdint>
+
+ namespace gl
+ {
diff --git a/source/l/qt5-webkit/webkit-offlineasm-warnings-ruby27.patch b/source/l/qt5-webkit/webkit-offlineasm-warnings-ruby27.patch
new file mode 100644
index 000000000..d25c3b1d6
--- /dev/null
+++ b/source/l/qt5-webkit/webkit-offlineasm-warnings-ruby27.patch
@@ -0,0 +1,46 @@
+From c7d19a492d97f9282a546831beb918e03315f6ef Mon Sep 17 00:00:00 2001
+From: Adrian Perez de Castro <aperez@igalia.com>
+Date: Wed, 15 Jan 2020 22:15:38 +0000
+Subject: [PATCH] Offlineasm warnings with newer Ruby versions
+ https://bugs.webkit.org/show_bug.cgi?id=206233
+
+Reviewed by Yusuke Suzuki.
+
+Avoid a warning about using Object#=~ on Annotation instances, which
+has been deprecated in Ruby 2.7.
+
+* offlineasm/parser.rb: Swap checks to prevent applying the =~ operator
+to Annotation instances, which do not define it.
+
+
+Canonical link: https://commits.webkit.org/219400@main
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@254637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ Source/JavaScriptCore/ChangeLog | 13 +++++++++++++
+ Source/JavaScriptCore/offlineasm/parser.rb | 6 +++---
+ 2 files changed, 16 insertions(+), 3 deletions(-)
+
+diff --git a/Source/JavaScriptCore/offlineasm/parser.rb b/Source/JavaScriptCore/offlineasm/parser.rb
+index 791c81a9868d..f14c873e2dbd 100644
+--- a/Source/JavaScriptCore/offlineasm/parser.rb
++++ b/Source/JavaScriptCore/offlineasm/parser.rb
+@@ -628,9 +628,7 @@ def parseSequence(final, comment)
+ firstCodeOrigin = @tokens[@idx].codeOrigin
+ list = []
+ loop {
+- if (@idx == @tokens.length and not final) or (final and @tokens[@idx] =~ final)
+- break
+- elsif @tokens[@idx].is_a? Annotation
++ if @tokens[@idx].is_a? Annotation
+ # This is the only place where we can encounter a global
+ # annotation, and hence need to be able to distinguish between
+ # them.
+@@ -644,6 +642,8 @@ def parseSequence(final, comment)
+ list << Instruction.new(codeOrigin, annotationOpcode, [], @tokens[@idx].string)
+ @annotation = nil
+ @idx += 2 # Consume the newline as well.
++ elsif (@idx == @tokens.length and not final) or (final and @tokens[@idx] =~ final)
++ break
+ elsif @tokens[@idx] == "\n"
+ # ignore
+ @idx += 1
diff --git a/source/l/qt5/fetch_sources.sh b/source/l/qt5/fetch_sources.sh
index 7a17f8885..d18d453b7 100755
--- a/source/l/qt5/fetch_sources.sh
+++ b/source/l/qt5/fetch_sources.sh
@@ -1,6 +1,7 @@
#!/bin/bash
# Copyright 2021 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,7 +21,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-BRANCH="5.15.3"
+BRANCH="5.15.13"
rm -f qt-everywhere-src-*.tar*
@@ -30,6 +31,12 @@ cd qt5
git checkout kde/5.15
./init-repository
+ # Sync qtwebengine version with the rest of qt5
+ sed -i -E "s/5.15.(.*)/$BRANCH/" qtwebengine/.qmake.conf
+
+ # This might also need to be synced with the $BRANCH version number:
+ sed -i -E "s/5.15.(.*)/$BRANCH/" qtscript/.qmake.conf
+
for i in $(find . -type d -name "qt*" -maxdepth 1); do
cd $i
../qtbase/bin/syncqt.pl -version $BRANCH
diff --git a/source/l/qt5/patches/qt5-webengine-ffmpeg5.patch b/source/l/qt5/patches/qt5-webengine-ffmpeg5.patch
new file mode 100644
index 000000000..58e51d0f4
--- /dev/null
+++ b/source/l/qt5/patches/qt5-webengine-ffmpeg5.patch
@@ -0,0 +1,150 @@
+diff --git a/chromium/media/ffmpeg/ffmpeg_common.h b/chromium/media/ffmpeg/ffmpeg_common.h
+index 2734a485cbd..70b1877a43c 100644
+--- a/chromium/media/ffmpeg/ffmpeg_common.h
++++ b/chromium/media/ffmpeg/ffmpeg_common.h
+@@ -29,6 +29,7 @@ extern "C" {
+ #include <libavformat/avformat.h>
+ #include <libavformat/avio.h>
+ #include <libavutil/avutil.h>
++#include <libavutil/channel_layout.h>
+ #include <libavutil/imgutils.h>
+ #include <libavutil/log.h>
+ #include <libavutil/mastering_display_metadata.h>
+diff --git a/chromium/media/filters/audio_file_reader.cc b/chromium/media/filters/audio_file_reader.cc
+index cb81d920def..bd73908d0ca 100644
+--- a/chromium/media/filters/audio_file_reader.cc
++++ b/chromium/media/filters/audio_file_reader.cc
+@@ -85,7 +85,7 @@ bool AudioFileReader::OpenDemuxer() {
+ }
+
+ bool AudioFileReader::OpenDecoder() {
+- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
++ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ if (codec) {
+ // MP3 decodes to S16P which we don't support, tell it to use S16 instead.
+ if (codec_context_->sample_fmt == AV_SAMPLE_FMT_S16P)
+diff --git a/chromium/media/filters/ffmpeg_audio_decoder.cc b/chromium/media/filters/ffmpeg_audio_decoder.cc
+index 0d825ed791b..72fac6167ef 100644
+--- a/chromium/media/filters/ffmpeg_audio_decoder.cc
++++ b/chromium/media/filters/ffmpeg_audio_decoder.cc
+@@ -329,7 +329,7 @@ bool FFmpegAudioDecoder::ConfigureDecoder(const AudioDecoderConfig& config) {
+ }
+ }
+
+- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
++ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ if (!codec ||
+ avcodec_open2(codec_context_.get(), codec, &codec_options) < 0) {
+ DLOG(ERROR) << "Could not initialize audio decoder: "
+diff --git a/chromium/media/filters/ffmpeg_demuxer.cc b/chromium/media/filters/ffmpeg_demuxer.cc
+index d34db63f3ef..427565b00c1 100644
+--- a/chromium/media/filters/ffmpeg_demuxer.cc
++++ b/chromium/media/filters/ffmpeg_demuxer.cc
+@@ -98,12 +98,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) {
+
+ // Next try to use the first DTS value, for codecs where we know PTS == DTS
+ // (excludes all H26x codecs). The start time must be returned in PTS.
+- if (stream->first_dts != kNoFFmpegTimestamp &&
++ if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
+ stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
+ stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
+ stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
+ const base::TimeDelta first_pts =
+- ConvertFromTimeBase(stream->time_base, stream->first_dts);
++ ConvertFromTimeBase(stream->time_base, av_stream_get_first_dts(stream));
+ if (first_pts < start_time)
+ start_time = first_pts;
+ }
+@@ -408,11 +408,11 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
+ scoped_refptr<DecoderBuffer> buffer;
+
+ if (type() == DemuxerStream::TEXT) {
+- int id_size = 0;
++ size_t id_size = 0;
+ uint8_t* id_data = av_packet_get_side_data(
+ packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
+
+- int settings_size = 0;
++ size_t settings_size = 0;
+ uint8_t* settings_data = av_packet_get_side_data(
+ packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
+
+@@ -424,7 +424,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
+ buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
+ side_data.data(), side_data.size());
+ } else {
+- int side_data_size = 0;
++ size_t side_data_size = 0;
+ uint8_t* side_data = av_packet_get_side_data(
+ packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
+
+@@ -485,7 +485,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
+ packet->size - data_offset);
+ }
+
+- int skip_samples_size = 0;
++ size_t skip_samples_size = 0;
+ const uint32_t* skip_samples_ptr =
+ reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
+ packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
+diff --git a/chromium/media/filters/ffmpeg_glue.cc b/chromium/media/filters/ffmpeg_glue.cc
+index 0ef3521473d..8483ecc348f 100644
+--- a/chromium/media/filters/ffmpeg_glue.cc
++++ b/chromium/media/filters/ffmpeg_glue.cc
+@@ -59,7 +59,6 @@ static int64_t AVIOSeekOperation(void* opaque, int64_t offset, int whence) {
+ }
+
+ void FFmpegGlue::InitializeFFmpeg() {
+- av_register_all();
+ }
+
+ static void LogContainer(bool is_local_file,
+@@ -95,9 +94,6 @@ FFmpegGlue::FFmpegGlue(FFmpegURLProtocol* protocol) {
+ // Enable fast, but inaccurate seeks for MP3.
+ format_context_->flags |= AVFMT_FLAG_FAST_SEEK;
+
+- // Ensures we can read out various metadata bits like vp8 alpha.
+- format_context_->flags |= AVFMT_FLAG_KEEP_SIDE_DATA;
+-
+ // Ensures format parsing errors will bail out. From an audit on 11/2017, all
+ // instances were real failures. Solves bugs like http://crbug.com/710791.
+ format_context_->error_recognition |= AV_EF_EXPLODE;
+diff --git a/chromium/media/filters/ffmpeg_video_decoder.cc b/chromium/media/filters/ffmpeg_video_decoder.cc
+index ef12477ee89..7996606f5f9 100644
+--- a/chromium/media/filters/ffmpeg_video_decoder.cc
++++ b/chromium/media/filters/ffmpeg_video_decoder.cc
+@@ -391,7 +391,7 @@ bool FFmpegVideoDecoder::ConfigureDecoder(const VideoDecoderConfig& config,
+ if (decode_nalus_)
+ codec_context_->flags2 |= AV_CODEC_FLAG2_CHUNKS;
+
+- AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
++ const AVCodec* codec = avcodec_find_decoder(codec_context_->codec_id);
+ if (!codec || avcodec_open2(codec_context_.get(), codec, NULL) < 0) {
+ ReleaseFFmpegResources();
+ return false;
+diff --git a/chromium/media/filters/media_file_checker.cc b/chromium/media/filters/media_file_checker.cc
+index 59c2a2fc618..1a9872c7acb 100644
+--- a/chromium/media/filters/media_file_checker.cc
++++ b/chromium/media/filters/media_file_checker.cc
+@@ -68,7 +68,7 @@ bool MediaFileChecker::Start(base::TimeDelta check_time) {
+ auto context = AVStreamToAVCodecContext(format_context->streams[i]);
+ if (!context)
+ continue;
+- AVCodec* codec = avcodec_find_decoder(cp->codec_id);
++ const AVCodec* codec = avcodec_find_decoder(cp->codec_id);
+ if (codec && avcodec_open2(context.get(), codec, nullptr) >= 0) {
+ auto loop = std::make_unique<FFmpegDecodingLoop>(context.get());
+ stream_contexts[i] = {std::move(context), std::move(loop)};
+diff --git a/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc b/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
+index 9002b874611..d12fade8b63 100644
+--- a/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
++++ b/chromium/third_party/webrtc/modules/video_coding/codecs/h264/h264_decoder_impl.cc
+@@ -203,7 +203,7 @@ int32_t H264DecoderImpl::InitDecode(const VideoCodec* codec_settings,
+ // a pointer |this|.
+ av_context_->opaque = this;
+
+- AVCodec* codec = avcodec_find_decoder(av_context_->codec_id);
++ const AVCodec* codec = avcodec_find_decoder(av_context_->codec_id);
+ if (!codec) {
+ // This is an indication that FFmpeg has not been initialized or it has not
+ // been compiled/initialized with the correct set of codecs.
diff --git a/source/l/qt5/patches/qt5-webengine-gcc12.patch b/source/l/qt5/patches/qt5-webengine-gcc12.patch
new file mode 100644
index 000000000..46f2dbfe1
--- /dev/null
+++ b/source/l/qt5/patches/qt5-webengine-gcc12.patch
@@ -0,0 +1,13 @@
+diff --git a/chromium/third_party/skia/src/utils/SkParseColor.cpp b/chromium/third_party/skia/src/utils/SkParseColor.cpp
+index 7260365b2c6..b5a6aae3596 100644
+--- a/chromium/third_party/skia/src/utils/SkParseColor.cpp
++++ b/chromium/third_party/skia/src/utils/SkParseColor.cpp
+@@ -8,6 +8,8 @@
+
+ #include "include/utils/SkParse.h"
+
++#include <iterator>
++
+ static constexpr const char* gColorNames[] = {
+ "aliceblue",
+ "antiquewhite",
diff --git a/source/l/qt5/patches/qtwebengine-everywhere-src-5.15.2-%231904652.patch b/source/l/qt5/patches/qtwebengine-everywhere-src-5.15.2-%231904652.patch
deleted file mode 100644
index 28a60ad1a..000000000
--- a/source/l/qt5/patches/qtwebengine-everywhere-src-5.15.2-%231904652.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
---- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2020-11-07 02:22:36.000000000 +0100
-+++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2021-01-20 02:14:53.066223906 +0100
-@@ -248,6 +248,18 @@
- return RestrictKillTarget(current_pid, sysno);
- }
-
-+#if defined(__NR_newfstatat)
-+ if (sysno == __NR_newfstatat) {
-+ return RewriteFstatatSIGSYS();
-+ }
-+#endif
-+
-+#if defined(__NR_fstatat64)
-+ if (sysno == __NR_fstatat64) {
-+ return RewriteFstatatSIGSYS();
-+ }
-+#endif
-+
- if (SyscallSets::IsFileSystem(sysno) ||
- SyscallSets::IsCurrentDirectory(sysno)) {
- return Error(fs_denied_errno);
-diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
---- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 2020-11-07 02:22:36.000000000 +0100
-+++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 2021-01-22 19:02:55.651668257 +0100
-@@ -6,6 +6,8 @@
-
- #include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h"
-
-+#include <errno.h>
-+#include <fcntl.h>
- #include <stddef.h>
- #include <stdint.h>
- #include <sys/syscall.h>
-@@ -353,6 +355,35 @@
- return -ENOSYS;
- }
-
-+intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
-+ void* aux) {
-+ switch (args.nr) {
-+#if defined(__NR_newfstatat)
-+ case __NR_newfstatat:
-+#endif
-+#if defined(__NR_fstatat64)
-+ case __NR_fstatat64:
-+#endif
-+#if defined(__NR_newfstatat) || defined(__NR_fstatat64)
-+ if (*reinterpret_cast<const char *>(args.args[1]) == '\0'
-+ && args.args[3] == static_cast<uint64_t>(AT_EMPTY_PATH)) {
-+ return sandbox::sys_fstat64(static_cast<int>(args.args[0]),
-+ reinterpret_cast<struct stat64 *>(args.args[2]));
-+ } else {
-+ errno = EACCES;
-+ return -1;
-+ }
-+ break;
-+#endif
-+ }
-+
-+ CrashSIGSYS_Handler(args, aux);
-+
-+ // Should never be reached.
-+ RAW_CHECK(false);
-+ return -ENOSYS;
-+}
-+
- bpf_dsl::ResultExpr CrashSIGSYS() {
- return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL);
- }
-@@ -385,6 +416,10 @@
- return bpf_dsl::Trap(SIGSYSSchedHandler, NULL);
- }
-
-+bpf_dsl::ResultExpr RewriteFstatatSIGSYS() {
-+ return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL);
-+}
-+
- void AllocateCrashKeys() {
- #if !defined(OS_NACL_NONSFI)
- if (seccomp_crash_key)
-diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
---- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 2020-11-07 02:22:36.000000000 +0100
-+++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 2021-01-20 02:11:04.583714199 +0100
-@@ -62,6 +62,10 @@
- // sched_setparam(), sched_setscheduler()
- SANDBOX_EXPORT intptr_t
- SIGSYSSchedHandler(const struct arch_seccomp_data& args, void* aux);
-+// If the fstatat syscall is actually a disguised fstat, calls the regular fstat
-+// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler.
-+SANDBOX_EXPORT intptr_t
-+ SIGSYSFstatatHandler(const struct arch_seccomp_data& args, void* aux);
-
- // Variants of the above functions for use with bpf_dsl.
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS();
-@@ -72,6 +76,7 @@
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex();
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace();
- SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS();
-+SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS();
-
- // Allocates a crash key so that Seccomp information can be recorded.
- void AllocateCrashKeys();
-diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc
---- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc 2020-11-07 02:22:36.000000000 +0100
-+++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc 2021-01-20 02:41:12.033133269 +0100
-@@ -261,4 +261,13 @@
-
- #endif // defined(MEMORY_SANITIZER)
-
-+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf)
-+{
-+#if defined(__NR_fstat64)
-+ return syscall(__NR_fstat64, fd, buf);
-+#else
-+ return syscall(__NR_fstat, fd, buf);
-+#endif
-+}
-+
- } // namespace sandbox
-diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h
---- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h 2020-11-07 02:22:36.000000000 +0100
-+++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h 2021-01-20 02:40:26.499827829 +0100
-@@ -17,6 +17,7 @@
- struct rlimit64;
- struct cap_hdr;
- struct cap_data;
-+struct stat64;
-
- namespace sandbox {
-
-@@ -84,6 +85,9 @@
- const struct sigaction* act,
- struct sigaction* oldact);
-
-+// Recent glibc rewrites fstat to fstatat.
-+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf);
-+
- } // namespace sandbox
-
- #endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_
diff --git a/source/l/qt5/profile.d/qt5.csh b/source/l/qt5/profile.d/qt5.csh
index ec1ecd9be..f57abef78 100644
--- a/source/l/qt5/profile.d/qt5.csh
+++ b/source/l/qt5/profile.d/qt5.csh
@@ -15,3 +15,13 @@ if ( ! $?QT5DIR ) then
endif
endif
set path = ( $path $QT5DIR/bin )
+# Unfortunately Chromium and derived projects (including QtWebEngine) seem
+# to be suffering some bitrot when it comes to 32-bit support, so we are
+# forced to disable the seccomp filter sandbox on 32-bit or else all of these
+# applications crash. If anyone has a patch that gets these things running on
+# 32-bit without this workaround, please let volkerdi or alienBOB know, or
+# post your solution on LQ. Thanks. :-)
+file /bin/cat | grep -wq 32-bit
+if ( "$?" == "0" ) then
+ setenv QTWEBENGINE_CHROMIUM_FLAGS "--disable-seccomp-filter-sandbox"
+endif
diff --git a/source/l/qt5/profile.d/qt5.sh b/source/l/qt5/profile.d/qt5.sh
index 8ee075e17..c7495e374 100644
--- a/source/l/qt5/profile.d/qt5.sh
+++ b/source/l/qt5/profile.d/qt5.sh
@@ -15,3 +15,12 @@ else
fi
PATH="$PATH:$QT5DIR/bin"
export QT5DIR
+# Unfortunately Chromium and derived projects (including QtWebEngine) seem
+# to be suffering some bitrot when it comes to 32-bit support, so we are
+# forced to disable the seccomp filter sandbox on 32-bit or else all of these
+# applications crash. If anyone has a patch that gets these things running on
+# 32-bit without this workaround, please let volkerdi or alienBOB know, or
+# post your solution on LQ. Thanks. :-)
+if file /bin/cat | grep -wq 32-bit ; then
+ export QTWEBENGINE_CHROMIUM_FLAGS="--disable-seccomp-filter-sandbox"
+fi
diff --git a/source/l/qt5/qt5.SlackBuild b/source/l/qt5/qt5.SlackBuild
index b17df2fd5..385b0841e 100755
--- a/source/l/qt5/qt5.SlackBuild
+++ b/source/l/qt5/qt5.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -42,7 +42,7 @@ SYSTEM_FFMPEG=${SYSTEM_FFMPEG:-YES}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -135,6 +135,16 @@ cd qtwebengine
zcat $CWD/patches/qt5-qtwebengine-gcc11.patch.gz | patch -p1 --verbose || exit 1
cd - 1>/dev/null
+# Fix build with gcc12:
+cd qtwebengine/src/3rdparty
+ zcat $CWD/patches/qt5-webengine-gcc12.patch.gz | patch -p1 --verbose || exit 1
+cd - 1>/dev/null
+
+# Fix build with ffmpeg-5:
+cd qtwebengine/src/3rdparty
+ zcat $CWD/patches/qt5-webengine-ffmpeg5.patch.gz | patch -p1 --verbose || exit 1
+cd - 1>/dev/null
+
# CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui
# and for it breaks KWin compilation with:
# /usr/include/c++/9.1.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
@@ -143,11 +153,6 @@ cd qtbase
zcat $CWD/patches/qt5.qtbase_cmake_isystem_includes.patch.gz | patch -p1 --verbose || exit 1
cd - 1>/dev/null
-# Fix sandbox functions for glibc-2.33:
-cd qtwebengine
- zcat $CWD/patches/qtwebengine-everywhere-src-5.15.2-%231904652.patch.gz | patch -p1 --verbose || exit 1
-cd - 1>/dev/null
-
# If PulseAudio is not found, use the _alsa $TAG and disable it in the build:
if ! pkg-config --exists libpulse 2>/dev/null ; then
PULSEAUDIO_OPTION="-no-pulseaudio -no-webengine-pulseaudio"
diff --git a/source/l/qt5/slack-desc b/source/l/qt5/slack-desc
index 9dbcba20c..ce803baaa 100644
--- a/source/l/qt5/slack-desc
+++ b/source/l/qt5/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-qt5: qt5 (a C++ graphical user interface toolkit)
+qt5: qt5 (Qt GUI toolkit, version 5)
qt5:
qt5: Qt is a complete and well-developed object-oriented framework for
qt5: developing graphical user interface (GUI) applications using C++.
diff --git a/source/l/qt6/doinst.sh b/source/l/qt6/doinst.sh
new file mode 100644
index 000000000..3e5691a05
--- /dev/null
+++ b/source/l/qt6/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/source/l/qt6/fetch_sources.sh b/source/l/qt6/fetch_sources.sh
new file mode 100755
index 000000000..780905738
--- /dev/null
+++ b/source/l/qt6/fetch_sources.sh
@@ -0,0 +1,62 @@
+#!/bin/bash
+
+# Copyright 2021 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+BRANCH="6.6.3"
+
+rm -f qt-everywhere-src-*.tar*
+
+git clone https://invent.kde.org/qt/qt/qt5.git
+
+cd qt5
+ git checkout v${BRANCH}
+ ./init-repository
+
+ # Sync qtwebengine version with the rest of qt5
+ sed -i -E "s/6.6.(.*)/$BRANCH\"\)/" qtwebengine/.cmake.conf
+
+ for i in $(find . -type d -name "qt*" -maxdepth 1); do
+ cd $i
+ ../qtbase/libexec/syncqt.pl -version $BRANCH
+ cd ..
+ done
+
+ # Not in the release tarball for 6.6.1:
+ rm -rf README.git init-repository \
+ qtcanvas3d qtfeedback qtgamepad qtpim qtqa qtrepotools qtsystems qtwebglplugin qtxmlpatterns \
+ qtcharts/tools qtdatavis3d/tools qtgraphs/tools
+
+ VERSION="${BRANCH}_$(git log --format="%ad_%h" --date=short | head -n 1 | tr -d -)"
+ LONGDATE="$(git log -1 --format=%cd --date=format:%c )"
+
+cd ..
+
+mv qt5 qt-everywhere-src-$VERSION
+
+tar --exclude-vcs -cf qt-everywhere-src-$VERSION.tar qt-everywhere-src-$VERSION
+tar -cf qt5-gitmodules.tar qt-everywhere-src-$VERSION/*/.gitmodules qt-everywhere-src-$VERSION/.gitmodules
+tar --concatenate --file=qt-everywhere-src-$VERSION.tar qt5-gitmodules.tar
+plzip -9 -v qt-everywhere-src-$VERSION.tar
+touch -d "$LONGDATE" qt-everywhere-src-$VERSION.tar.lz
+
+rm -rf qt-everywhere-src-$VERSION
+rm -f qt5-gitmodules.tar
diff --git a/source/l/qt6/patches/nodejs-allow-32bit.patch b/source/l/qt6/patches/nodejs-allow-32bit.patch
new file mode 100644
index 000000000..5b84823c5
--- /dev/null
+++ b/source/l/qt6/patches/nodejs-allow-32bit.patch
@@ -0,0 +1,16 @@
+--- ./qtwebengine/configure.cmake.orig 2024-02-27 13:57:02.000000000 -0600
++++ ./qtwebengine/configure.cmake 2024-02-27 17:49:26.845071893 -0600
+@@ -492,13 +492,6 @@
+ MESSAGE "node.js version 14 or later is required."
+ )
+ add_check_for_support(
+- MODULES QtWebEngine
+- CONDITION NOT (Nodejs_ARCH STREQUAL "ia32") AND
+- NOT (Nodejs_ARCH STREQUAL "x86") AND
+- NOT (Nodejs_ARCH STREQUAL "arm")
+- MESSAGE "32bit version of Nodejs is not supported."
+-)
+-add_check_for_support(
+ MODULES QtWebEngine QtPdf
+ CONDITION Python3_EXECUTABLE
+ MESSAGE "Python version 3.6 or later is required."
diff --git a/source/l/qt6/patches/qt5.mysql.h.diff b/source/l/qt6/patches/qt5.mysql.h.diff
new file mode 100644
index 000000000..f1cf11b91
--- /dev/null
+++ b/source/l/qt6/patches/qt5.mysql.h.diff
@@ -0,0 +1,11 @@
+--- qt-everywhere-opensource-src-5.9.0/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql_p.h.orig 2017-05-26 14:43:31.000000000 +0200
++++ qt-everywhere-opensource-src-5.9.0/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql_p.h 2017-06-17 22:11:34.211899826 +0200
+@@ -57,7 +57,7 @@
+ #include <QtCore/qt_windows.h>
+ #endif
+
+-#include <mysql.h>
++#include <mysql/mysql.h>
+
+ #ifdef QT_PLUGIN
+ #define Q_EXPORT_SQLDRIVER_MYSQL
diff --git a/source/l/qt6/patches/qt6-3d_gcc13.patch b/source/l/qt6/patches/qt6-3d_gcc13.patch
new file mode 100644
index 000000000..7128597de
--- /dev/null
+++ b/source/l/qt6/patches/qt6-3d_gcc13.patch
@@ -0,0 +1,11 @@
+--- qt3d/src/3rdparty/assimp/src/code/AssetLib/FBX/FBXBinaryTokenizer.cpp.orig 2023-09-24 13:38:48.000000000 +0200
++++ qt3d/src/3rdparty/assimp/src/code/AssetLib/FBX/FBXBinaryTokenizer.cpp 2023-10-04 14:00:15.901256244 +0200
+@@ -51,6 +51,7 @@
+ #include "FBXUtil.h"
+ #include <assimp/defs.h>
+ #include <stdint.h>
++#include <cstdint>
+ #include <assimp/Exceptional.h>
+ #include <assimp/ByteSwapper.h>
+ #include <assimp/DefaultLogger.hpp>
+
diff --git a/source/l/qt6/patches/qt6-webengine_32bit_compressing_files.patch b/source/l/qt6/patches/qt6-webengine_32bit_compressing_files.patch
new file mode 100644
index 000000000..9bbf73dc8
--- /dev/null
+++ b/source/l/qt6/patches/qt6-webengine_32bit_compressing_files.patch
@@ -0,0 +1,25 @@
+Author: Patrick Franz <deltaone@debian.org>
+Description: Building on 32-bit architectures fails when trying to compress
+ files in the devtools-frontend.
+Forwarded: not-needed
+
+--- a/src/3rdparty/chromium/third_party/devtools-frontend/src/scripts/build/compress_files.js
++++ b/src/3rdparty/chromium/third_party/devtools-frontend/src/scripts/build/compress_files.js
+@@ -75,7 +75,16 @@ async function main(argv) {
+ const fileList = argv[fileListPosition + 1];
+ const fileListContents = await readTextFile(fileList);
+ const files = fileListContents.split(' ');
+- await Promise.all(files.map(filename => filename.trim()).map(compressFile));
++ for (let i = 0; i < files.length; i++) {
++ const fileName = files[i].trim();
++ try {
++ await compressFile(fileName);
++ } catch (e) {
++ console.log('Failing compressing', fileName);
++ console.log(e);
++ process.exit(1);
++ }
++ }
+ }
+
+ main(process.argv).catch(err => {
diff --git a/source/l/qt6/profile.d/qt6.csh b/source/l/qt6/profile.d/qt6.csh
new file mode 100644
index 000000000..75afefbb7
--- /dev/null
+++ b/source/l/qt6/profile.d/qt6.csh
@@ -0,0 +1,27 @@
+#!/bin/csh
+# Environment path variables for the Qt package:
+if ( ! $?QT6DIR ) then
+ # It's best to use the generic directory to avoid
+ # compiling in a version-containing path:
+ if ( -d /usr/lib@LIBDIRSUFFIX@/qt6 ) then
+ setenv QT6DIR /usr/lib@LIBDIRSUFFIX@/qt6
+ else
+ # Find the newest Qt directory and set $QT6DIR to that:
+ foreach qtd ( /usr/lib@LIBDIRSUFFIX@/qt6-* )
+ if ( -d $qtd ) then
+ setenv QT6DIR $qtd
+ endif
+ end
+ endif
+endif
+set path = ( $path $QT6DIR/bin )
+# Unfortunately Chromium and derived projects (including QtWebEngine) seem
+# to be suffering some bitrot when it comes to 32-bit support, so we are
+# forced to disable the seccomp filter sandbox on 32-bit or else all of these
+# applications crash. If anyone has a patch that gets these things running on
+# 32-bit without this workaround, please let volkerdi or alienBOB know, or
+# post your solution on LQ. Thanks. :-)
+file /bin/cat | grep -wq 32-bit
+if ( "$?" == "0" ) then
+ setenv QTWEBENGINE_CHROMIUM_FLAGS "--disable-seccomp-filter-sandbox"
+endif
diff --git a/source/l/qt6/profile.d/qt6.sh b/source/l/qt6/profile.d/qt6.sh
new file mode 100644
index 000000000..cd34c969d
--- /dev/null
+++ b/source/l/qt6/profile.d/qt6.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+# Environment variables for the Qt package.
+#
+# It's best to use the generic directory to avoid
+# compiling in a version-containing path:
+if [ -d /usr/lib@LIBDIRSUFFIX@/qt6 ]; then
+ QT6DIR=/usr/lib@LIBDIRSUFFIX@/qt6
+else
+ # Find the newest Qt directory and set $QT6DIR to that:
+ for qtd in /usr/lib@LIBDIRSUFFIX@/qt6-* ; do
+ if [ -d $qtd ]; then
+ QT6DIR=$qtd
+ fi
+ done
+fi
+PATH="$PATH:$QT6DIR/bin"
+export QT6DIR
+# Unfortunately Chromium and derived projects (including QtWebEngine) seem
+# to be suffering some bitrot when it comes to 32-bit support, so we are
+# forced to disable the seccomp filter sandbox on 32-bit or else all of these
+# applications crash. If anyone has a patch that gets these things running on
+# 32-bit without this workaround, please let volkerdi or alienBOB know, or
+# post your solution on LQ. Thanks. :-)
+if file /bin/cat | grep -wq 32-bit ; then
+ export QTWEBENGINE_CHROMIUM_FLAGS="--disable-seccomp-filter-sandbox"
+fi
diff --git a/source/l/qt6/qt6.SlackBuild b/source/l/qt6/qt6.SlackBuild
new file mode 100755
index 000000000..f40431fc8
--- /dev/null
+++ b/source/l/qt6/qt6.SlackBuild
@@ -0,0 +1,336 @@
+#!/bin/sh
+
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Merged some ideas from Alex Sarmardzic's script for qt4 at SlackBuilds.org
+# ^^ Modified by Robby Workman <rworkman@slackware.com> for QT4 & KDE4
+#
+# Modifications 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2023 Eric Hameleers, Eindhoven, NL
+# Modifications for qt 5.2.0 2013 by Michael James, AU
+# Modifications for qt 5.x by Eric Hameleers, Eindhoven, NL
+# Modifications for qt 6.x 2023, 2024 by Eric Hameleers, Eindhoven, NL
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=qt6
+VERSION=$(ls qt-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
+BUILD=${BUILD:-1}
+PKGSRC=$(echo $VERSION | cut -d - -f 1)
+PKGVER=$(echo $VERSION | tr - _)
+
+USE_CODECS=${USE_CODECS:-YES}
+SYSTEM_FFMPEG=${SYSTEM_FFMPEG:-YES}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-${PKGVER}-${ARCH}-${BUILD}${TAG}.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ # To prevent "qatomic_armv6.h error: output number 2 not directly addressable"
+ # More permanent solution is to patch gcc:
+ # http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106731
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ SLKLDFLAGS=""
+ LIBDIRSUFFIX=""
+fi
+
+case "$ARCH" in
+ arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
+ *) TARGET=$ARCH-slackware-linux ;;
+esac
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+NINJAJOBS=${NINJAJOBS:-"$(echo $NUMJOBS | cut -f 2 -d j | tr -d ' ')"}
+export NINJAJOBS
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf qt-everywhere-src-$VERSION
+echo "Extracting qt-everywhere-src-$VERSION"
+tar xf $CWD/qt-everywhere-src-$VERSION.tar.?z* || exit 1
+cd qt-everywhere-src-$PKGSRC || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# If we build our own Qt, unset the QT-related environment variables,
+# so that a pre-existing Qt will not be picked up and create errors later:
+unset QTDIR
+unset QT6DIR
+NEWPATH="/usr/lib${LIBDIRSUFFIX}/${PKGNAM}/bin"
+for elem in $(echo $PATH | cut -d: --output-delimiter=' ' -f1-) ; do
+ if ! $(echo "$elem"| grep -q /qt) ; then
+ NEWPATH="$NEWPATH:$elem"
+ fi
+done
+export PATH="$NEWPATH"
+
+# Fix path to mysql header:
+cat $CWD/patches/qt5.mysql.h.diff | patch -p1 --verbose || exit 1
+
+# If PulseAudio is not found, use the _alsa $TAG and disable it in the build:
+if ! pkg-config --exists libpulse 2>/dev/null ; then
+ USE_PULSEAUDIO=${USE_PULSEAUDIO:-"OFF"}
+ TAG="${TAG}_alsa"
+else
+ USE_PULSEAUDIO=${USE_PULSEAUDIO:-"ON"}
+ TAG=${TAG:-""}
+fi
+
+# Re-add support for 32bit architectures - Google no longer supports it:
+sed -i qtwebengine/src/3rdparty/chromium/BUILD.gn \
+ -e 's/target_os != "linux" || /target_os == "linux" || /'
+pushd qtwebengine
+ # Thanks Debian! See https://salsa.debian.org/qt-kde-team/qt6/qt6-webengine/-/tree/master/debian/patches
+ cat $CWD/patches/qt6-webengine_32bit_compressing_files.patch | patch -p1 --verbose || exit 1
+popd
+cat $CWD/patches/nodejs-allow-32bit.patch | patch -p1 --verbose || exit 1
+
+# GCC13 requires this include:
+cat $CWD/patches/qt6-3d_gcc13.patch | patch -p0 --verbose || exit 1
+
+# Previously we didn't have a protobuf package in Slackware.
+# Now that we do, it's apparently too new to use with Qt6, so let's just
+# disable it to get the same features that we previously did.
+# Patches would be accepted here. :-)
+PROTOBUF="-DQT_FEATURE_qtprotobufgen=OFF"
+
+# The qtquick3dphysics only compiles on a limited set of architectures:
+case "${ARCH}" in
+ i?86 | arm | s390) DO_PHYSX3D="OFF" ;;
+ *) DO_PHYSX3D="ON" ;;
+esac
+
+# Use our custom compiler and linker flags:
+sed -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${SLKCFLAGS}|" \
+ -i qtbase/mkspecs/common/gcc-base.conf || exit 1
+sed -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${SLKLDFLAGS}|" \
+ -i qtbase/mkspecs/common/g++-unix.conf || exit 1
+
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+export OPENSOURCE_CXXFLAGS="$SLKCFLAGS"
+export QTDIR="${TMP}/qt-everywhere-src-${PKGSRC}"
+export LD_LIBRARY_PATH="${QTDIR}/qtbase/lib:${QTDIR}/qttools/lib:${LD_LIBRARY_PATH}"
+export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins"
+cmake -S $(pwd) -B build-${PKGNAM} \
+ -G Ninja \
+ -Wno-dev \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_qtquick3dphysics:BOOL=${DO_PHYSX3D} \
+ -DINSTALL_BINDIR=/usr/lib${LIBDIRSUFFIX}/qt6/bin \
+ -DINSTALL_PUBLICBINDIR=usr/bin \
+ -DINSTALL_LIBDIR=/usr/lib${LIBDIRSUFFIX} \
+ -DINSTALL_LIBEXECDIR=/usr/lib${LIBDIRSUFFIX}/qt6/bin \
+ -DINSTALL_ARCHDATADIR=/usr/lib${LIBDIRSUFFIX}/qt6 \
+ -DINSTALL_DATADIR=/usr/share/qt6 \
+ -DINSTALL_INCLUDEDIR=/usr/include/qt6 \
+ -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \
+ -DINSTALL_DOCDIR=/usr/doc/qt6-${PKGVER} \
+ -DINSTALL_EXAMPLESDIR=/usr/doc/qt6-${PKGVER}/examples \
+ -DFEATURE_libproxy=ON \
+ -DFEATURE_no_direct_extern_access=ON \
+ -DFEATURE_openssl_linked=ON \
+ -DFEATURE_pulseaudio="${USE_PULSEAUDIO}" \
+ -DFEATURE_system_sqlite=ON \
+ -DFEATURE_system_xcb_xinput=ON \
+ -DFEATURE_use_gold_linker=ON \
+ -DFEATURE_webengine_proprietary_codecs="${USE_CODECS}" \
+ -DFEATURE_webengine_system_ffmpeg="${SYSTEM_FFMPEG}" \
+ -DFEATURE_webengine_system_pulseaudio="${USE_PULSEAUDIO}" \
+ -DFEATURE_webengine_webrtc_pipewire=ON \
+ $PROTOBUF \
+ -DQT_BUILD_EXAMPLES=OFF || exit 1
+#cmake --build build-${PKGNAM} --parallel $NINJAJOBS || cmake --build build-${PKGNAM} || exit 1
+# Don't try again non-parallel... it just makes you wait a long time to see
+# what the error was.
+cmake --build build-${PKGNAM} --parallel $NINJAJOBS || exit 1
+DESTDIR=$PKG cmake --install build-${PKGNAM} || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
+# Fix the path in prl files:
+find "$PKG/usr/lib${LIBDIRSUFFIX}" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \;
+
+# Install symlinks to the Qt6 binaries in the $PATH:
+mkdir -p $PKG/usr/bin
+pushd $PKG
+# Setting INSTALL_PUBLICBINDIR creates user_facing_tool_links.txt files:
+find $TMP/qt-everywhere-src-$PKGSRC/build-${PKGNAM} \
+ -mindepth 1 -maxdepth 2 -name user_facing_tool_links.txt \
+ | xargs cat | sort | uniq \
+ | while read MYINP ; do ln -s $MYINP ; done
+popd
+
+# Set the QT6DIR variable in the environment:
+mkdir -p $PKG/etc/profile.d
+sed -e "s,@LIBDIRSUFFIX@,${LIBDIRSUFFIX},g" $CWD/profile.d/$PKGNAM.sh \
+ > $PKG/etc/profile.d/$PKGNAM.sh
+sed -e "s,@LIBDIRSUFFIX@,${LIBDIRSUFFIX},g" $CWD/profile.d/$PKGNAM.csh \
+ > $PKG/etc/profile.d/$PKGNAM.csh
+chmod 0755 $PKG/etc/profile.d/*
+
+# Add menu entries for all those hidden but great Qt applications:
+# Qt6 logo:
+mkdir -p $PKG/usr/share/icons/hicolor/{48x48,128x128}/apps
+convert qtdoc/doc/src/images/qt-logo.png -resize 48x48 $PKG/usr/share/icons/hicolor/48x48/apps/qt6-logo.png
+convert qtdoc/doc/src/images/qt-logo.png -resize 128x128 $PKG/usr/share/icons/hicolor/128x128/apps/qt6-logo.png
+# Assistant icons
+install -p -m644 -D qttools/src/assistant/assistant/images/assistant.png $PKG/usr/share/icons/hicolor/32x32/apps/qt6-assistant.png
+install -p -m644 -D qttools/src/assistant/assistant/images/assistant-128.png $PKG/usr/share/icons/hicolor/128x128/apps/qt6-assistant.png
+# Designer icon
+install -p -m644 -D qttools/src/designer/src/designer/images/designer.png $PKG/usr/share/icons/hicolor/128x128/apps/qt6-designer.png
+# QDbusViewer icons
+install -p -m644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer.png $PKG/usr/share/icons/hicolor/32x32/apps/qt6-qdbusviewer.png
+install -p -m644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png $PKG/usr/share/icons/hicolor/128x128/apps/qt6-qdbusviewer.png
+# Linguist icons
+for icon in qttools/src/linguist/linguist/images/icons/linguist-*-32.png ; do
+ size=$(echo $(basename ${icon}) | cut -d- -f2)
+ install -p -m644 -D ${icon} $PKG/usr/share/icons/hicolor/${size}x${size}/apps/qt6-linguist.png
+done
+
+# And the .desktop files too:
+mkdir -p $PKG/usr/share/applications
+cat <<EOF > $PKG/usr/share/applications/qt6-designer.desktop
+[Desktop Entry]
+Name=Qt6 Designer
+GenericName=Interface Designer
+Comment=Design GUIs for Qt6 applications
+Exec=designer6
+Icon=qt6-designer
+MimeType=application/x-designer;
+Terminal=false
+Encoding=UTF-8
+Type=Application
+Categories=Qt;Development;
+EOF
+cat <<EOF > $PKG/usr/share/applications/qt6-assistant.desktop
+[Desktop Entry]
+Name=Qt6 Assistant
+Comment=Shows Qt6 documentation and examples
+Exec=assistant6
+Icon=qt6-assistant
+Terminal=false
+Encoding=UTF-8
+Type=Application
+Categories=Qt;Development;Documentation;
+EOF
+cat <<EOF > $PKG/usr/share/applications/qt6-linguist.desktop
+[Desktop Entry]
+Name=Qt6 Linguist
+Comment=Add translations to Qt6 applications
+Exec=linguist6
+Icon=qt6-linguist
+MimeType=text/vnd.trolltech.linguist;application/x-linguist;
+Terminal=false
+Encoding=UTF-8
+Type=Application
+Categories=Qt;Development;
+EOF
+cat <<EOF > $PKG/usr/share/applications/qt6-qdbusviewer.desktop
+[Desktop Entry]
+Name=Qt6 QDbusViewer
+GenericName=Qt6 D-Bus Debugger
+Comment=Debug D-Bus applications
+Exec=qdbusviewer6
+Icon=qt6-qdbusviewer
+Terminal=false
+Type=Application
+Categories=Qt;Development;Debugger;
+EOF
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/$PKGNAM-$PKGVER
+cp -a \
+ README* LICENSE.* \
+ qtwebengine/{CHROMIUM_VERSION,LICENSE.Chromium} \
+ $PKG/usr/doc/$PKGNAM-$PKGVER
+find -maxdepth 2 -name LICENSES \
+ | xargs -I{} cp -ia --parents {} $PKG/usr/doc/$PKGNAM-$PKGVER/
+if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/qt6/doc/html ]; then
+ ( cd $PKG/usr/doc/$PKGNAM-$PKGVER
+ ln -sf /usr/lib${LIBDIRSUFFIX}/qt6/doc/html .
+ )
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$PKGVER-$ARCH-${BUILD}${TAG}.txz
diff --git a/source/l/QtAV/slack-desc b/source/l/qt6/slack-desc
index 95f8483f0..c7b479ba2 100644
--- a/source/l/QtAV/slack-desc
+++ b/source/l/qt6/slack-desc
@@ -5,15 +5,15 @@
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
- |-----handy-ruler------------------------------------------------------|
-QtAV: QtAV (multimedia playback framework)
-QtAV:
-QtAV: QtAV is a multimedia playback framework based on Qt and FFmpeg. Some
-QtAV: components in QtAV are designed to be extensible.
-QtAV:
-QtAV: Homepage: http://qtav.org
-QtAV:
-QtAV:
-QtAV:
-QtAV:
-QtAV:
+ |-----handy-ruler------------------------------------------------------|
+qt6: qt6 (Qt GUI toolkit, version 6)
+qt6:
+qt6: Qt is a complete and well-developed object-oriented framework for
+qt6: developing graphical user interface (GUI) applications using C++.
+qt6:
+qt6: Homepage: http://www.qt.io/
+qt6:
+qt6:
+qt6:
+qt6:
+qt6:
diff --git a/source/l/qtkeychain/qtkeychain.SlackBuild b/source/l/qtkeychain/qtkeychain.SlackBuild
index ff8054fda..1b4cc395d 100755
--- a/source/l/qtkeychain/qtkeychain.SlackBuild
+++ b/source/l/qtkeychain/qtkeychain.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=qtkeychain
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/quazip/quazip.SlackBuild b/source/l/quazip/quazip.SlackBuild
index ecff5c60e..eb35a264b 100755
--- a/source/l/quazip/quazip.SlackBuild
+++ b/source/l/quazip/quazip.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=quazip
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -98,6 +98,7 @@ cd cmake-build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DQUAZIP_QT_MAJOR_VERSION=5 \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/readline/readline-8.1-patches/readline81-001 b/source/l/readline/readline-8.1-patches/readline81-001
deleted file mode 100644
index 2f99282c8..000000000
--- a/source/l/readline/readline-8.1-patches/readline81-001
+++ /dev/null
@@ -1,92 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 8.1
-Patch-ID: readline81-001
-
-Bug-Reported-by: Tom Tromey <tom@tromey.com>
-Bug-Reference-ID: <875z3u9fd0.fsf@tromey.com>
-Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2021-01/msg00009.html
-
-Bug-Description:
-
-The code to check readline versions in an inputrc file had the sense of the
-comparisons reversed.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-8.1-patched/bind.c 2020-10-26 10:03:14.000000000 -0400
---- bind.c 2021-01-18 16:38:48.000000000 -0500
-***************
-*** 1235,1239 ****
- else if (_rl_strnicmp (args, "version", 7) == 0)
- {
-! int rlversion, versionarg, op, previ, major, minor;
-
- _rl_parsing_conditionalized_out = 1;
---- 1235,1239 ----
- else if (_rl_strnicmp (args, "version", 7) == 0)
- {
-! int rlversion, versionarg, op, previ, major, minor, opresult;
-
- _rl_parsing_conditionalized_out = 1;
-***************
-*** 1295,1316 ****
- {
- case OP_EQ:
-! _rl_parsing_conditionalized_out = rlversion == versionarg;
- break;
- case OP_NE:
-! _rl_parsing_conditionalized_out = rlversion != versionarg;
- break;
- case OP_GT:
-! _rl_parsing_conditionalized_out = rlversion > versionarg;
- break;
- case OP_GE:
-! _rl_parsing_conditionalized_out = rlversion >= versionarg;
- break;
- case OP_LT:
-! _rl_parsing_conditionalized_out = rlversion < versionarg;
- break;
- case OP_LE:
-! _rl_parsing_conditionalized_out = rlversion <= versionarg;
- break;
- }
- }
- /* Check to see if the first word in ARGS is the same as the
---- 1295,1317 ----
- {
- case OP_EQ:
-! opresult = rlversion == versionarg;
- break;
- case OP_NE:
-! opresult = rlversion != versionarg;
- break;
- case OP_GT:
-! opresult = rlversion > versionarg;
- break;
- case OP_GE:
-! opresult = rlversion >= versionarg;
- break;
- case OP_LT:
-! opresult = rlversion < versionarg;
- break;
- case OP_LE:
-! opresult = rlversion <= versionarg;
- break;
- }
-+ _rl_parsing_conditionalized_out = 1 - opresult;
- }
- /* Check to see if the first word in ARGS is the same as the
-
-*** ../readline-8.1/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 0
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 1
diff --git a/source/l/readline/readline-8.2-patches/readline82-001 b/source/l/readline/readline-8.2-patches/readline82-001
new file mode 100644
index 000000000..a13ff4285
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-001
@@ -0,0 +1,42 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-001
+
+Bug-Reported-by: Kan-Ru Chen <koster@debian.org>
+Bug-Reference-ID:
+Bug-Reference-URL: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1021109
+
+Bug-Description:
+
+Starting a readline application with an invalid locale specification for
+LC_ALL/LANG/LC_CTYPE can cause it crash on the first call to readline.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/nls.c 2022-08-15 09:38:51.000000000 -0400
+--- nls.c 2022-10-05 09:23:22.000000000 -0400
+***************
+*** 142,145 ****
+--- 142,149 ----
+ lspec = "";
+ ret = setlocale (LC_CTYPE, lspec); /* ok, since it does not change locale */
++ if (ret == 0 || *ret == 0)
++ ret = setlocale (LC_CTYPE, (char *)NULL);
++ if (ret == 0 || *ret == 0)
++ ret = RL_DEFAULT_LOCALE;
+ #else
+ ret = (lspec == 0 || *lspec == 0) ? RL_DEFAULT_LOCALE : lspec;
+
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 0
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 1
diff --git a/source/l/readline/readline-8.2-patches/readline82-002 b/source/l/readline/readline-8.2-patches/readline82-002
new file mode 100644
index 000000000..453b9b85d
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-002
@@ -0,0 +1,48 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-002
+
+Bug-Reported-by: srobertson@peratonlabs.com
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2022-09/msg00049.html
+
+Bug-Description:
+
+It's possible for readline to try to zero out a line that's not null-
+terminated, leading to a memory fault.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/display.c 2022-04-05 10:47:31.000000000 -0400
+--- display.c 2022-12-13 13:11:22.000000000 -0500
+***************
+*** 2684,2692 ****
+
+ if (visible_line)
+! {
+! temp = visible_line;
+! while (*temp)
+! *temp++ = '\0';
+! }
+ rl_on_new_line ();
+ forced_display++;
+--- 2735,2740 ----
+
+ if (visible_line)
+! memset (visible_line, 0, line_size);
+!
+ rl_on_new_line ();
+ forced_display++;
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 1
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 2
diff --git a/source/l/readline/readline-8.2-patches/readline82-003 b/source/l/readline/readline-8.2-patches/readline82-003
new file mode 100644
index 000000000..e9fe2c0d0
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-003
@@ -0,0 +1,43 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-003
+
+Bug-Reported-by: Stefan Klinger <readline-gnu.org@stefan-klinger.de>
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2023-08/msg00018.html
+
+Bug-Description:
+
+Patch (apply with `patch -p0'):
+
+The custom color prefix that readline uses to color possible completions
+must have a leading `.'.
+
+*** ../readline-8.2-patched/colors.c 2021-12-08 11:38:25.000000000 -0500
+--- colors.c 2023-08-28 16:40:04.000000000 -0400
+***************
+*** 74,78 ****
+ static void restore_default_color (void);
+
+! #define RL_COLOR_PREFIX_EXTENSION "readline-colored-completion-prefix"
+
+ COLOR_EXT_TYPE *_rl_color_ext_list = 0;
+--- 74,78 ----
+ static void restore_default_color (void);
+
+! #define RL_COLOR_PREFIX_EXTENSION ".readline-colored-completion-prefix"
+
+ COLOR_EXT_TYPE *_rl_color_ext_list = 0;
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 2
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 3
diff --git a/source/l/readline/readline-8.2-patches/readline82-004 b/source/l/readline/readline-8.2-patches/readline82-004
new file mode 100644
index 000000000..d60c662ec
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-004
@@ -0,0 +1,65 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-004
+
+Bug-Reported-by: Henry Bent <henry.r.bent@gmail.com>
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2022-11/msg00044.html
+
+Bug-Description:
+
+Patch (apply with `patch -p0'):
+
+There are systems that supply one of select or pselect, but not both.
+
+*** ../readline-8.2-patched/input.c 2022-04-08 15:43:24.000000000 -0400
+--- input.c 2022-11-28 09:41:08.000000000 -0500
+***************
+*** 152,156 ****
+--- 152,158 ----
+ int _rl_timeout_init (void);
+ int _rl_timeout_sigalrm_handler (void);
++ #if defined (RL_TIMEOUT_USE_SELECT)
+ int _rl_timeout_select (int, fd_set *, fd_set *, fd_set *, const struct timeval *, const sigset_t *);
++ #endif
+
+ static void _rl_timeout_handle (void);
+***************
+*** 249,253 ****
+ int chars_avail, k;
+ char input;
+! #if defined(HAVE_SELECT)
+ fd_set readfds, exceptfds;
+ struct timeval timeout;
+--- 251,255 ----
+ int chars_avail, k;
+ char input;
+! #if defined (HAVE_PSELECT) || defined (HAVE_SELECT)
+ fd_set readfds, exceptfds;
+ struct timeval timeout;
+***************
+*** 806,810 ****
+ unsigned char c;
+ int fd;
+! #if defined (HAVE_PSELECT)
+ sigset_t empty_set;
+ fd_set readfds;
+--- 815,819 ----
+ unsigned char c;
+ int fd;
+! #if defined (HAVE_PSELECT) || defined (HAVE_SELECT)
+ sigset_t empty_set;
+ fd_set readfds;
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 3
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 4
diff --git a/source/l/readline/readline-8.2-patches/readline82-005 b/source/l/readline/readline-8.2-patches/readline82-005
new file mode 100644
index 000000000..57f507f61
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-005
@@ -0,0 +1,50 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-005
+
+Bug-Reported-by: Simon Marchi <simon.marchi@polymtl.ca>
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-09/msg00005.html
+
+Bug-Description:
+
+If an application is using readline in callback mode, and a signal arrives
+after readline checks for it in rl_callback_read_char() but before it
+restores the application's signal handlers, it won't get processed until the
+next time the application calls rl_callback_read_char(). Readline needs to
+check for and resend any pending signals after restoring the application's
+signal handlers.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/callback.c 2022-04-29 12:02:56.000000000 -0400
+--- callback.c 2022-10-11 10:59:06.000000000 -0400
+***************
+*** 116,120 ****
+ do { \
+ if (rl_persistent_signal_handlers == 0) \
+! rl_clear_signals (); \
+ return; \
+ } while (0)
+--- 116,123 ----
+ do { \
+ if (rl_persistent_signal_handlers == 0) \
+! { \
+! rl_clear_signals (); \
+! if (_rl_caught_signal) _rl_signal_handler (_rl_caught_signal); \
+! } \
+ return; \
+ } while (0)
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 4
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 5
diff --git a/source/l/readline/readline-8.2-patches/readline82-006 b/source/l/readline/readline-8.2-patches/readline82-006
new file mode 100644
index 000000000..9e315e889
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-006
@@ -0,0 +1,99 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-006
+
+Bug-Reported-by: Tom de Vries <tdevries@suse.de>
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-09/msg00001.html
+
+Bug-Description:
+
+This is a variant of the same issue as the one fixed by patch 5. In this
+case, the signal arrives and is pending before readline calls rl_getc().
+When this happens, the pending signal will be handled by the loop, but may
+alter or destroy some state that the callback uses. Readline needs to treat
+this case the same way it would if a signal interrupts pselect/select, so
+compound operations like searches and reading numeric arguments get cleaned
+up properly.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/input.c 2022-12-22 16:15:48.000000000 -0500
+--- input.c 2023-01-10 11:53:45.000000000 -0500
+***************
+*** 812,816 ****
+ rl_getc (FILE *stream)
+ {
+! int result;
+ unsigned char c;
+ int fd;
+--- 812,816 ----
+ rl_getc (FILE *stream)
+ {
+! int result, ostate, osig;
+ unsigned char c;
+ int fd;
+***************
+*** 823,828 ****
+--- 823,842 ----
+ while (1)
+ {
++ osig = _rl_caught_signal;
++ ostate = rl_readline_state;
++
+ RL_CHECK_SIGNALS ();
+
++ #if defined (READLINE_CALLBACKS)
++ /* Do signal handling post-processing here, but just in callback mode
++ for right now because the signal cleanup can change some of the
++ callback state, and we need to either let the application have a
++ chance to react or abort some current operation that gets cleaned
++ up by rl_callback_sigcleanup(). If not, we'll just run through the
++ loop again. */
++ if (osig != 0 && (ostate & RL_STATE_CALLBACK))
++ goto postproc_signal;
++ #endif
++
+ /* We know at this point that _rl_caught_signal == 0 */
+
+***************
+*** 888,891 ****
+--- 902,908 ----
+
+ handle_error:
++ osig = _rl_caught_signal;
++ ostate = rl_readline_state;
++
+ /* If the error that we received was EINTR, then try again,
+ this is simply an interrupted system call to read (). We allow
+***************
+*** 928,933 ****
+--- 945,959 ----
+ #endif /* SIGALRM */
+
++ postproc_signal:
++ /* POSIX says read(2)/pselect(2)/select(2) don't return EINTR for any
++ reason other than being interrupted by a signal, so we can safely
++ call the application's signal event hook. */
+ if (rl_signal_event_hook)
+ (*rl_signal_event_hook) ();
++ #if defined (READLINE_CALLBACKS)
++ else if (osig == SIGINT && (ostate & RL_STATE_CALLBACK) && (ostate & (RL_STATE_ISEARCH|RL_STATE_NSEARCH|RL_STATE_NUMERICARG)))
++ /* just these cases for now */
++ _rl_abort_internal ();
++ #endif
+ }
+ }
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 5
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 6
diff --git a/source/l/readline/readline-8.2-patches/readline82-007 b/source/l/readline/readline-8.2-patches/readline82-007
new file mode 100644
index 000000000..b0394e0bb
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-007
@@ -0,0 +1,48 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-007
+
+Bug-Reported-by: Kevin Pulo <kev@pulo.com.au>
+Bug-Reference-ID:
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-11/msg00002.html
+
+Bug-Description:
+
+If readline is called with no prompt, it should display a newline if return
+is typed on an empty line. It should still suppress the final newline if
+return is typed on the last (empty) line of a multi-line command.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/display.c 2022-04-05 10:47:31.000000000 -0400
+--- display.c 2022-12-13 13:11:22.000000000 -0500
+***************
+*** 3342,3348 ****
+ &last_face[_rl_screenwidth - 1 + woff], 1);
+ }
+! _rl_vis_botlin = 0;
+! if (botline_length > 0 || _rl_last_c_pos > 0)
+ rl_crlf ();
+ fflush (rl_outstream);
+ rl_display_fixed++;
+--- 3394,3400 ----
+ &last_face[_rl_screenwidth - 1 + woff], 1);
+ }
+! if ((_rl_vis_botlin == 0 && botline_length == 0) || botline_length > 0 || _rl_last_c_pos > 0)
+ rl_crlf ();
++ _rl_vis_botlin = 0;
+ fflush (rl_outstream);
+ rl_display_fixed++;
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 6
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 7
diff --git a/source/l/readline/readline-8.2-patches/readline82-008 b/source/l/readline/readline-8.2-patches/readline82-008
new file mode 100644
index 000000000..2d8b368f1
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-008
@@ -0,0 +1,77 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-008
+
+Bug-Reported-by:
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+Add missing prototypes for several function declarations.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/text.c Wed Oct 27 11:03:59 2021
+--- text.c Thu Nov 16 16:24:58 2023
+***************
+*** 1765,1770 ****
+ #if defined (READLINE_CALLBACKS)
+ static int
+! _rl_char_search_callback (data)
+! _rl_callback_generic_arg *data;
+ {
+ _rl_callback_func = 0;
+--- 1765,1769 ----
+ #if defined (READLINE_CALLBACKS)
+ static int
+! _rl_char_search_callback (_rl_callback_generic_arg *data)
+ {
+ _rl_callback_func = 0;
+*** ../readline-8.2-patched/bind.c Wed Feb 9 11:02:22 2022
+--- bind.c Thu Nov 16 16:25:17 2023
+***************
+*** 1168,1174 ****
+
+ static int
+! parse_comparison_op (s, indp)
+! const char *s;
+! int *indp;
+ {
+ int i, peekc, op;
+--- 1168,1172 ----
+
+ static int
+! parse_comparison_op (const char *s, int *indp)
+ {
+ int i, peekc, op;
+*** ../readline-8.2-patched/rltty.c Fri Feb 18 11:14:22 2022
+--- rltty.c Thu Nov 16 16:25:36 2023
+***************
+*** 81,86 ****
+ to get the tty settings. */
+ static void
+! set_winsize (tty)
+! int tty;
+ {
+ #if defined (TIOCGWINSZ)
+--- 81,85 ----
+ to get the tty settings. */
+ static void
+! set_winsize (int tty)
+ {
+ #if defined (TIOCGWINSZ)
+
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 7
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 8
diff --git a/source/l/readline/readline-8.2-patches/readline82-009 b/source/l/readline/readline-8.2-patches/readline82-009
new file mode 100644
index 000000000..b3acc4150
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-009
@@ -0,0 +1,73 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-009
+
+Bug-Reported-by: Stefan H. Holek <stefan@epy.co.at>
+Bug-Reference-ID: <50F8DA45-B7F3-4DE1-AB94-19AE42649CDC@epy.co.at>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-10/msg00021.html
+
+Bug-Description:
+
+Fix issue where the directory name portion of the word to be completed (the
+part that is passed to opendir()) requires both tilde expansion and dequoting.
+Readline only performed tilde expansion in this case, so filename completion
+would fail.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/complete.c 2022-04-05 10:47:06.000000000 -0400
+--- complete.c 2022-10-26 15:08:51.000000000 -0400
+***************
+*** 2527,2531 ****
+ xfree (dirname);
+ dirname = temp;
+! tilde_dirname = 1;
+ }
+
+--- 2527,2532 ----
+ xfree (dirname);
+ dirname = temp;
+! if (*dirname != '~')
+! tilde_dirname = 1; /* indicate successful tilde expansion */
+ }
+
+***************
+*** 2546,2554 ****
+ users_dirname = savestring (dirname);
+ }
+! else if (tilde_dirname == 0 && rl_completion_found_quote && rl_filename_dequoting_function)
+ {
+! /* delete single and double quotes */
+ xfree (dirname);
+! dirname = savestring (users_dirname);
+ }
+ directory = opendir (dirname);
+--- 2547,2560 ----
+ users_dirname = savestring (dirname);
+ }
+! else if (rl_completion_found_quote && rl_filename_dequoting_function)
+ {
+! /* We already ran users_dirname through the dequoting function.
+! If tilde_dirname == 1, we successfully performed tilde expansion
+! on dirname. Now we need to reconcile those results. We either
+! just copy the already-dequoted users_dirname or tilde expand it
+! if we tilde-expanded dirname. */
+! temp = tilde_dirname ? tilde_expand (users_dirname) : savestring (users_dirname);
+ xfree (dirname);
+! dirname = temp;
+ }
+ directory = opendir (dirname);
+
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 8
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 9
diff --git a/source/l/readline/readline-8.2-patches/readline82-010 b/source/l/readline/readline-8.2-patches/readline82-010
new file mode 100644
index 000000000..d2ca5eae2
--- /dev/null
+++ b/source/l/readline/readline-8.2-patches/readline82-010
@@ -0,0 +1,67 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.2
+Patch-ID: readline82-010
+
+Bug-Reported-by: Martin Castillo <castilma@uni-bremen.de>
+Bug-Reference-ID: <2d42153b-cf65-caba-dff1-cd3bc6268c7e@uni-bremen.de>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2023-01/msg00000.html
+
+Bug-Description:
+
+Fix the case where text to be completed from the line buffer (quoted) is
+compared to the common prefix of the possible matches (unquoted) and the
+quoting makes the former appear to be longer than the latter. Readline
+assumes the match doesn't add any characters to the word and doesn't display
+multiple matches.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.2-patched/complete.c Tue Apr 5 10:47:06 2022
+--- complete.c Sat Jan 7 14:19:45 2023
+***************
+*** 2032,2038 ****
+ text = rl_copy_text (start, end);
+ matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char);
+ /* nontrivial_lcd is set if the common prefix adds something to the word
+ being completed. */
+! nontrivial_lcd = matches && compare_match (text, matches[0]) != 0;
+ if (what_to_do == '!' || what_to_do == '@')
+ tlen = strlen (text);
+--- 2038,2060 ----
+ text = rl_copy_text (start, end);
+ matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char);
++ /* If TEXT contains quote characters, it will be dequoted as part of
++ generating the matches, and the matches will not contain any quote
++ characters. We need to dequote TEXT before performing the comparison.
++ Since compare_match performs the dequoting, and we only want to do it
++ once, we don't call compare_matches after dequoting TEXT; we call
++ strcmp directly. */
+ /* nontrivial_lcd is set if the common prefix adds something to the word
+ being completed. */
+! if (rl_filename_completion_desired && rl_filename_quoting_desired &&
+! rl_completion_found_quote && rl_filename_dequoting_function)
+! {
+! char *t;
+! t = (*rl_filename_dequoting_function) (text, rl_completion_quote_character);
+! xfree (text);
+! text = t;
+! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
+! }
+! else
+! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
+ if (what_to_do == '!' || what_to_do == '@')
+ tlen = strlen (text);
+
+*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 9
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 10
diff --git a/source/l/rpcsvc-proto/rpcsvc-proto.SlackBuild b/source/l/rpcsvc-proto/rpcsvc-proto.SlackBuild
index b003e5594..d759fa3ae 100755
--- a/source/l/rpcsvc-proto/rpcsvc-proto.SlackBuild
+++ b/source/l/rpcsvc-proto/rpcsvc-proto.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=rpcsvc-proto
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/rttr/rttr.SlackBuild b/source/l/rttr/rttr.SlackBuild
index a6f4f4520..ae55fc1d6 100755
--- a/source/l/rttr/rttr.SlackBuild
+++ b/source/l/rttr/rttr.SlackBuild
@@ -31,7 +31,7 @@ BUILD=${BUILD:-4}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/rubygem-asciidoctor/asciidoctor-2.0.15.gem b/source/l/rubygem-asciidoctor/asciidoctor-2.0.15.gem
deleted file mode 100644
index 5c37df301..000000000
--- a/source/l/rubygem-asciidoctor/asciidoctor-2.0.15.gem
+++ /dev/null
Binary files differ
diff --git a/source/l/rubygem-asciidoctor/asciidoctor-2.0.20.gem b/source/l/rubygem-asciidoctor/asciidoctor-2.0.20.gem
new file mode 100644
index 000000000..988934b5a
--- /dev/null
+++ b/source/l/rubygem-asciidoctor/asciidoctor-2.0.20.gem
Binary files differ
diff --git a/source/l/rubygem-asciidoctor/rubygem-asciidoctor.SlackBuild b/source/l/rubygem-asciidoctor/rubygem-asciidoctor.SlackBuild
index 5a3843d67..ecf17c8f2 100755
--- a/source/l/rubygem-asciidoctor/rubygem-asciidoctor.SlackBuild
+++ b/source/l/rubygem-asciidoctor/rubygem-asciidoctor.SlackBuild
@@ -32,7 +32,7 @@ BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/sbc/sbc.SlackBuild b/source/l/sbc/sbc.SlackBuild
index ffb02417a..619fcfaa2 100755
--- a/source/l/sbc/sbc.SlackBuild
+++ b/source/l/sbc/sbc.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=sbc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/sdl/CVE-2021-33657.patch b/source/l/sdl/CVE-2021-33657.patch
new file mode 100644
index 000000000..3ceb96a17
--- /dev/null
+++ b/source/l/sdl/CVE-2021-33657.patch
@@ -0,0 +1,35 @@
+From d95c1a4bbd644baba748d341b03141e5f0481ae6 Mon Sep 17 00:00:00 2001
+From: Sam Lantinga <slouken@libsdl.org>
+Date: Tue, 30 Nov 2021 12:36:46 -0800
+Subject: [PATCH] Always create a full 256-entry map in case color values are
+ out of range
+
+Fixes https://github.com/libsdl-org/SDL/issues/5042
+
+Backport of CVE-2021-33657 fix from SDL2
+---
+ src/video/SDL_pixels.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/video/SDL_pixels.c b/src/video/SDL_pixels.c
+index 17f1a7199..d0973f217 100644
+--- a/src/video/SDL_pixels.c
++++ b/src/video/SDL_pixels.c
+@@ -477,7 +477,7 @@ static Uint8 *Map1to1(SDL_Palette *src, SDL_Palette *dst, int *identical)
+ }
+ *identical = 0;
+ }
+- map = (Uint8 *)SDL_malloc(src->ncolors);
++ map = (Uint8 *) SDL_calloc(256, sizeof(Uint8));
+ if ( map == NULL ) {
+ SDL_OutOfMemory();
+ return(NULL);
+@@ -498,7 +498,7 @@ static Uint8 *Map1toN(SDL_PixelFormat *src, SDL_PixelFormat *dst)
+ SDL_Palette *pal = src->palette;
+
+ bpp = ((dst->BytesPerPixel == 3) ? 4 : dst->BytesPerPixel);
+- map = (Uint8 *)SDL_malloc(pal->ncolors*bpp);
++ map = (Uint8 *) SDL_calloc(256, bpp);
+ if ( map == NULL ) {
+ SDL_OutOfMemory();
+ return(NULL);
diff --git a/source/l/sdl/sdl.SlackBuild b/source/l/sdl/sdl.SlackBuild
index df5b36512..cbbedaf3e 100755
--- a/source/l/sdl/sdl.SlackBuild
+++ b/source/l/sdl/sdl.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2016, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2016, 2018, 2020, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -30,7 +30,7 @@ NET=${NET:-$(echo SDL_net-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev
SOUND=${SOUND:-$(echo SDL_sound-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
TTF=${TTF:-$(echo SDL_ttf-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-12}
+BUILD=${BUILD:-15}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -84,6 +84,7 @@ find . \
zcat $CWD/libsdl-1.2.15-resizing.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/sdl-1.2.14-fix-mouse-clicking.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/CVE-2021-33657.patch.gz | patch -p1 --verbose || exit 1
# We must use --disable-x11-shared or programs linked with SDL will
# crash on machines that use the closed source nVidia drivers.
diff --git a/source/l/serf/serf.SConstruct.python3.diff b/source/l/serf/serf.SConstruct.python3.diff
deleted file mode 100644
index 144f5e39e..000000000
--- a/source/l/serf/serf.SConstruct.python3.diff
+++ /dev/null
@@ -1,24 +0,0 @@
---- serf-1.3.9/SConstruct.orig 2019-07-26 17:49:30.910189251 +0000
-+++ serf-1.3.9/SConstruct 2019-07-26 17:49:54.073821735 +0000
-@@ -163,9 +163,9 @@
- suffix='.def', src_suffix='.h')
- })
-
--match = re.search('SERF_MAJOR_VERSION ([0-9]+).*'
-- 'SERF_MINOR_VERSION ([0-9]+).*'
-- 'SERF_PATCH_VERSION ([0-9]+)',
-+match = re.search(b'SERF_MAJOR_VERSION ([0-9]+).*'
-+ b'SERF_MINOR_VERSION ([0-9]+).*'
-+ b'SERF_PATCH_VERSION ([0-9]+)',
- env.File('serf.h').get_contents(),
- re.DOTALL)
- MAJOR, MINOR, PATCH = [int(x) for x in match.groups()]
-@@ -183,7 +183,7 @@
-
- unknown = opts.UnknownVariables()
- if unknown:
-- print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
-+ print ('Warning: Used unknown variables:', ', '.join(unknown.keys()))
-
- apr = str(env['APR'])
- apu = str(env['APU'])
diff --git a/source/l/serf/serf.SlackBuild b/source/l/serf/serf.SlackBuild
index 9b58e685e..e890ea4e4 100755
--- a/source/l/serf/serf.SlackBuild
+++ b/source/l/serf/serf.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for serf
# Copyright 2014 Andrzej Telszewski, Sabadell
-# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=serf
VERSION=${VERSION:-$(echo serf-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -85,9 +85,6 @@ find . \
sed -i "/Default/s:lib_static,::" SConstruct
sed -i "/Alias/s:install_static,::" SConstruct
-# Fix for python3 based scons:
-zcat $CWD/serf.SConstruct.python3.diff.gz | patch -p1 --verbose || exit 1
-
scons $NUMJOBS \
PREFIX=/usr \
LIBDIR=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/serf/slack-desc b/source/l/serf/slack-desc
index 4e31ed2ec..a2f3198e5 100644
--- a/source/l/serf/slack-desc
+++ b/source/l/serf/slack-desc
@@ -15,5 +15,5 @@ serf: * SSL/TLS support, full HTTP pipelining,
serf: * multiple authentication modes (Basic, Digest, Kerberos/NTLM),
serf: * zero-copy support for increased throughput.
serf:
-serf: Homepage: http://serf.apache.org/
+serf: Homepage: https://serf.apache.org/
serf:
diff --git a/source/l/shared-mime-info/shared-mime-info.SlackBuild b/source/l/shared-mime-info/shared-mime-info.SlackBuild
index af0365edb..3db808028 100755
--- a/source/l/shared-mime-info/shared-mime-info.SlackBuild
+++ b/source/l/shared-mime-info/shared-mime-info.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2016, 2018, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2016, 2018, 2021, 2022, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=shared-mime-info
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -78,8 +78,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-zcat $CWD/shared-mime-info.skip_tests.diff.gz | patch -p1 --verbose || exit 1
-
# Configure, build, and install:
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
@@ -97,6 +95,7 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dbuild-tests=false \
-Dupdate-mimedb=false \
.. || exit 1
# Don't use fdatasync() unless you want it to take 1000x longer
diff --git a/source/l/shared-mime-info/shared-mime-info.skip_tests.diff b/source/l/shared-mime-info/shared-mime-info.skip_tests.diff
deleted file mode 100644
index df07110c0..000000000
--- a/source/l/shared-mime-info/shared-mime-info.skip_tests.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./meson.build.orig 2020-05-06 09:01:04.000000000 -0500
-+++ ./meson.build 2020-05-10 13:08:03.154102522 -0500
-@@ -66,7 +66,7 @@
- subdir('po')
- subdir('data')
- subdir('src')
--subdir('tests')
-+#subdir('tests')
-
- if get_option('update-mimedb')
- upd_tool = (meson.is_cross_build()
diff --git a/source/l/sip/sip.SlackBuild b/source/l/sip/sip.SlackBuild
index 9863095ab..0e48ea774 100755
--- a/source/l/sip/sip.SlackBuild
+++ b/source/l/sip/sip.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011, 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2017, 2018, 2019, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=sip
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -36,7 +36,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -63,12 +63,6 @@ else
SLKCFLAGS="-O2"
fi
-PYTHON2VER=$(python2 -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d. 2>/dev/null)
-PYTHON2LIB=$( python2 -c 'from distutils.sysconfig import get_python_lib; print get_python_lib()' 2>/dev/null )
-
-PYTHON3VER=$(python3 -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d. 2>/dev/null)
-PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' 2>/dev/null )
-
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -86,83 +80,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-python2 configure.py \
- -b "/usr/bin" \
- -d "$PYTHON2LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Add the PyQt4 private sip module:
-make clean
-python2 configure.py \
- --sip-module PyQt4.sip \
- --no-tools \
- -b "/usr/bin" \
- -d "$PYTHON2LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Add the PyQt5 private sip module:
-make clean
-python2 configure.py \
- --sip-module PyQt5.sip \
- --no-tools \
- -b "/usr/bin" \
- -d "$PYTHON2LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Rename to avoid a clash:
-mv $PKG/usr/bin/sip $PKG/usr/bin/sip2
-
-make clean
-
-python3 configure.py \
- -b "/usr/bin" \
- -d "$PYTHON3LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Add the PyQt4 private sip module:
-make clean
-python3 configure.py \
- --sip-module PyQt4.sip \
- --no-tools \
- -b "/usr/bin" \
- -d "$PYTHON3LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Add the PyQt5 private sip module:
-make clean
-python3 configure.py \
- --sip-module PyQt5.sip \
- --no-tools \
- -b "/usr/bin" \
- -d "$PYTHON3LIB" \
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" || exit 1
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Rename to avoid a clash:
-mv $PKG/usr/bin/sip $PKG/usr/bin/sip3
-
-# Create a symbolic link 'sip' pointing to the sip3 binary:
-ln -s sip3 $PKG/usr/bin/sip
+python3 -m build --wheel --no-isolation || exit 1
+
+python3 -m installer --destdir "$PKG" dist/*.whl || exit 1
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -186,4 +106,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz
-
diff --git a/source/l/sip/sip.url b/source/l/sip/sip.url
new file mode 100644
index 000000000..3b8d538b6
--- /dev/null
+++ b/source/l/sip/sip.url
@@ -0,0 +1 @@
+https://pypi.org/project/SIP/
diff --git a/source/l/slang/slang.SlackBuild b/source/l/slang/slang.SlackBuild
index 66861ec3b..5e6b33b04 100755
--- a/source/l/slang/slang.SlackBuild
+++ b/source/l/slang/slang.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=slang
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/slang/slang.url b/source/l/slang/slang.url
new file mode 100644
index 000000000..efeef79e7
--- /dev/null
+++ b/source/l/slang/slang.url
@@ -0,0 +1 @@
+https://www.jedsoft.org/releases/slang/
diff --git a/source/l/sof-firmware/slack-desc b/source/l/sof-firmware/slack-desc
new file mode 100644
index 000000000..1442ff140
--- /dev/null
+++ b/source/l/sof-firmware/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+sof-firmware: sof-firmware (SOF firmware and topology binaries)
+sof-firmware:
+sof-firmware: Sound Open Firmware is an open source audio DSP firmware and SDK that
+sof-firmware: provides audio firmware infrastructure and development tools for
+sof-firmware: developers who are interested in audio or signal processing on modern
+sof-firmware: DSPs.
+sof-firmware:
+sof-firmware: Homepage: https://www.sofproject.org
+sof-firmware:
+sof-firmware:
+sof-firmware:
diff --git a/source/l/sof-firmware/sof-firmware.SlackBuild b/source/l/sof-firmware/sof-firmware.SlackBuild
new file mode 100755
index 000000000..54c3fc87d
--- /dev/null
+++ b/source/l/sof-firmware/sof-firmware.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+# Copyright 2021-2022 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2023 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=sof-firmware
+VERSION=${VERSION:-$(echo sof-bin-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev | cut -d v -f 2)}
+BUILD=${BUILD:-1}
+
+ARCH=noarch
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf sof-bin-${VERSION}
+tar xvf $CWD/sof-bin-$VERSION.tar.?z || exit 1
+cd sof-bin-$VERSION || exit 1
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+mkdir -p $PKG/lib/firmware/intel/{sof/community,sof-tplg}
+
+# install debug files
+for i in sof/*.ldc; do
+ mv $i $PKG/lib/firmware/intel/sof/
+done
+
+# install un-signed binaries
+for i in sof/*.ri; do
+ mv $i $PKG/lib/firmware/intel/sof/
+done
+
+# install intel-signed binaries
+# This will overwrite some of the un-signed binaries installed before
+for i in sof/intel-signed/*.ri; do
+ mv $i $PKG/lib/firmware/intel/sof/
+done
+
+# install community-signed binaries
+for i in sof/community/*.ri; do
+ mv $i $PKG/lib/firmware/intel/sof/community/
+done
+
+# install topology files
+for i in sof-tplg/*; do
+ mv $i $PKG/lib/firmware/intel/sof-tplg/
+done
+
+# SST topology files (not SOF related, but it's a Intel hw support
+# and this package seems a good place to distribute them
+# - Quote Fedora
+alsatplg -c /usr/share/alsa/topology/hda-dsp/skl_hda_dsp_generic-tplg.conf \
+ -o $PKG/lib/firmware/skl_hda_dsp_generic-tplg.bin
+
+mkdir -p $PKG/usr/doc/sof-firmware-$VERSION
+cp -a LICENCE* Notice* README* \
+ $PKG/usr/doc/sof-firmware-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/sof-firmware/sof-firmware.url b/source/l/sof-firmware/sof-firmware.url
new file mode 100644
index 000000000..fd1bba8b5
--- /dev/null
+++ b/source/l/sof-firmware/sof-firmware.url
@@ -0,0 +1,2 @@
+https://github.com/thesofproject/sof-bin
+https://github.com/thesofproject/sof-bin/releases/download/v2024.03/sof-bin-2024.03.tar.gz
diff --git a/source/l/speech-dispatcher/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch b/source/l/speech-dispatcher/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch
deleted file mode 100644
index b4f7a840f..000000000
--- a/source/l/speech-dispatcher/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From a2faab416e42cbdf3d73f98578a89eb7a235e25a Mon Sep 17 00:00:00 2001
-From: Michael Catanzaro <mcatanzaro@gnome.org>
-Date: Tue, 2 Feb 2021 14:50:23 -0600
-Subject: [PATCH] Fix build after glib e38982df
-
-glib.h now includes <type_traits> when building as C++. But kali.cpp
-includes it (via module_utils.h) inside an extern "C" block. This is
-illegal.
-
-Best practice is to use extern "C" in project header files, not around
-include statements. So let's do that. module_utils.h already includes
-glib.h, so we can use G_BEGIN_DECLS/G_END_DECLS there. spd_audio.h does
-not, so I decided to write out the usual boilerplate, as including all
-of glib.h just for G_BEGIN_DECLS/G_END_DECLS seemed like overkill.
-Finally, I'll move config.h at the very top of kali.cpp, since I'm
-touching this code anyway and that is the usual place to put it.
-
-This is the minimum viable change required for speech-dispatcher to
-build with glib master. As long as speech-dispatcher is combining C and
-C++, it would be advisible to use extern "C" in all headers that declare
-C functions and might be included from C++.
----
- src/modules/kali.cpp | 10 +++++-----
- src/modules/module_utils.h | 4 ++++
- src/modules/spd_audio.h | 8 ++++++++
- 3 files changed, 17 insertions(+), 5 deletions(-)
-
-diff --git a/src/modules/kali.cpp b/src/modules/kali.cpp
-index 193975d8..7b497626 100644
---- a/src/modules/kali.cpp
-+++ b/src/modules/kali.cpp
-@@ -21,21 +21,21 @@
- * $Id: kali.c,v 1.59 2008-06-09 10:38:02 hanke Exp $
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include <config.h>
-+#endif
-+
- #include <stdio.h>
- #include <string.h>
- #include <unistd.h>
- #include <kali/Kali/kali.h>
--extern "C" {
--#ifdef HAVE_CONFIG_H
--#include <config.h>
--#endif
-+
- #include <semaphore.h>
- #include "spd_audio.h"
-
- #include <speechd_types.h>
-
- #include "module_utils.h"
--}
- #define MODULE_NAME "kali"
- #define MODULE_VERSION "0.0"
- #define DEBUG_MODULE 1
-diff --git a/src/modules/module_utils.h b/src/modules/module_utils.h
-index 6081e7e1..e82850b2 100644
---- a/src/modules/module_utils.h
-+++ b/src/modules/module_utils.h
-@@ -41,6 +41,8 @@
- #include <speechd_types.h>
- #include "spd_audio.h"
-
-+G_BEGIN_DECLS
-+
- typedef struct SPDMarks {
- unsigned num;
- unsigned allocated;
-@@ -420,4 +422,6 @@ char *module_getvoice(char *language, SPDVoiceType voice);
- gboolean module_existsvoice(char *voicename);
- char *module_getdefaultvoice(void);
-
-+G_END_DECLS
-+
- #endif /* #ifndef __MODULE_UTILS_H */
-diff --git a/src/modules/spd_audio.h b/src/modules/spd_audio.h
-index 25045e2f..b9de3cd5 100644
---- a/src/modules/spd_audio.h
-+++ b/src/modules/spd_audio.h
-@@ -28,6 +28,10 @@
-
- #define SPD_AUDIO_LIB_PREFIX "spd_"
-
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
- AudioID *spd_audio_open(char *name, void **pars, char **error);
-
- int spd_audio_play(AudioID * id, AudioTrack track, AudioFormat format);
-@@ -47,4 +51,8 @@ void spd_audio_set_loglevel(AudioID * id, int level);
-
- char const *spd_audio_get_playcmd(AudioID * id);
-
-+#ifdef __cplusplus
-+}
-+#endif
-+
- #endif /* ifndef #__SPD_AUDIO_H */
diff --git a/source/l/speech-dispatcher/speech-dispatcher.SlackBuild b/source/l/speech-dispatcher/speech-dispatcher.SlackBuild
index 9ef0055c3..0c36258fb 100755
--- a/source/l/speech-dispatcher/speech-dispatcher.SlackBuild
+++ b/source/l/speech-dispatcher/speech-dispatcher.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=speech-dispatcher
SRCNAM=speech-dispatcher
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -36,7 +36,7 @@ PKG=$TMP/package-$PKGNAM
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -90,9 +90,6 @@ find -L . \
sed -i "s/cicero //g" configure.ac
sed -i "s/sd_cicero//g" src/modules/Makefile.am
-# Fix build with glib-2.68.0:
-zcat $CWD/a2faab416e42cbdf3d73f98578a89eb7a235e25a.patch.gz | patch -p1 --verbose || exit 1
-
autoreconf -vif || exit 1
CFLAGS="$SLKCFLAGS" \
diff --git a/source/l/speex/speex.SlackBuild b/source/l/speex/speex.SlackBuild
index 227cfd196..7b882d4c8 100755
--- a/source/l/speex/speex.SlackBuild
+++ b/source/l/speex/speex.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2017, 2018, 2022 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +23,15 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=speex
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-4}
+SRCNAM=speex-Speex
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 3- -d -)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -74,9 +75,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$VERSION || exit 1
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -86,6 +87,13 @@ find . \
-exec chmod 644 {} \+
# Configure:
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/speex/speex.url b/source/l/speex/speex.url
new file mode 100644
index 000000000..04b6196cb
--- /dev/null
+++ b/source/l/speex/speex.url
@@ -0,0 +1 @@
+https://github.com/xiph/speex
diff --git a/source/l/speexdsp/speexdsp.SlackBuild b/source/l/speexdsp/speexdsp.SlackBuild
index 2c653b0f5..705a16a98 100755
--- a/source/l/speexdsp/speexdsp.SlackBuild
+++ b/source/l/speexdsp/speexdsp.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018, 2019, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -25,8 +25,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=speexdsp
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+SRCNAM=speexdsp-SpeexDSP
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -70,9 +71,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
-cd $PKGNAM-$VERSION || exit 1
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -80,6 +81,14 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+if [ ! -r configure ]; then
+ if [ -x ./autogen.sh ]; then
+ NOCONFIGURE=1 ./autogen.sh
+ else
+ autoreconf -vif
+ fi
+fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/l/speexdsp/speexdsp.url b/source/l/speexdsp/speexdsp.url
new file mode 100644
index 000000000..82cb644d9
--- /dev/null
+++ b/source/l/speexdsp/speexdsp.url
@@ -0,0 +1 @@
+https://github.com/xiph/speexdsp
diff --git a/source/l/spirv-llvm-translator/SPIRV-LLVM-Translator.url b/source/l/spirv-llvm-translator/SPIRV-LLVM-Translator.url
new file mode 100644
index 000000000..496ddeea3
--- /dev/null
+++ b/source/l/spirv-llvm-translator/SPIRV-LLVM-Translator.url
@@ -0,0 +1 @@
+https://github.com/KhronosGroup/SPIRV-LLVM-Translator
diff --git a/source/l/QtAV/fetch-QtAV.sh b/source/l/spirv-llvm-translator/fetch-SPIRV-LLVM-Translator.sh
index d802d7add..ee5f62e45 100755
--- a/source/l/QtAV/fetch-QtAV.sh
+++ b/source/l/spirv-llvm-translator/fetch-SPIRV-LLVM-Translator.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2019, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,16 +21,16 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PKGNAM=QtAV
+PKGNAM=SPIRV-LLVM-Translator
# Pull a stable branch + patches
-BRANCH=${1:-master}
+BRANCH=${1:-llvm_release_130}
# Clear download area:
rm -rf ${PKGNAM}
# Clone repository:
-git clone https://github.com/wang-bin/QtAV
+git clone https://github.com/KhronosGroup/${PKGNAM}
# checkout $BRANCH:
( cd ${PKGNAM}
diff --git a/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild b/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
index 78ca6cab2..a4c6b3249 100755
--- a/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
+++ b/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2021, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -83,6 +83,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# This git pull needs a specific set of headers. These were obtained by letting
+# the build download them, and then tarring them up and pointing to them with
+# the -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR option below.
+tar xf $CWD/SPIRV-Headers.tar.lz
+
# Build and install:
mkdir -p build
cd build
@@ -95,8 +100,9 @@ cd build
-DSYSCONF_INSTALL_DIR=/etc \
-DINCLUDE_INSTALL_DIR=/usr/include \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Release \
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=$TMP/SPIRV-LLVM-Translator-$VERSION/SPIRV-Headers \
+ -DBUILD_SHARED_LIBS=ON \
..
make $NUMJOBS || make || exit 1
make $NUMJOBS llvm-spirv || make llvm-spirv || exit 1
diff --git a/source/l/spirv-llvm-translator/spirv-llvm-translator.url b/source/l/spirv-llvm-translator/spirv-llvm-translator.url
new file mode 100644
index 000000000..496ddeea3
--- /dev/null
+++ b/source/l/spirv-llvm-translator/spirv-llvm-translator.url
@@ -0,0 +1 @@
+https://github.com/KhronosGroup/SPIRV-LLVM-Translator
diff --git a/source/l/svgalib/svgalib-1.9.21-demos.patch b/source/l/svgalib/svgalib-1.9.21-demos.patch
new file mode 100644
index 000000000..7da772edb
--- /dev/null
+++ b/source/l/svgalib/svgalib-1.9.21-demos.patch
@@ -0,0 +1,431 @@
+--- svgalib-1.9.21/demos/testgl.c.demos 2002-04-03 09:31:14.000000000 +0200
++++ svgalib-1.9.21/demos/testgl.c 2005-07-01 20:51:55.000000000 +0200
+@@ -184,7 +184,7 @@
+
+ if (!vga_hasmode(VGAMODE)) {
+ printf("Mode not available.\n");
+- exit(-1);
++ return -1;
+ }
+ VIRTUAL = 0; /* No virtual screen. */
+ if (vga_getmodeinfo(VGAMODE)->colors == 16 ||
+@@ -224,5 +224,5 @@
+ if (VIRTUAL)
+ gl_freecontext(backscreen);
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/vgatweak.c.demos 2000-08-06 12:20:02.000000000 +0200
++++ svgalib-1.9.21/demos/vgatweak.c 2005-07-01 20:51:55.000000000 +0200
+@@ -124,7 +124,7 @@
+ testmode(mode);
+ else {
+ printf("Error: Video mode not supported by driver\n");
+- exit(-1);
++ return -1;
+ }
+
+ return 0;
+--- svgalib-1.9.21/demos/linearfork.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/linearfork.c 2005-07-01 20:51:55.000000000 +0200
+@@ -82,7 +82,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(1);
++ return 1;
+ }
+ vga_setmode(vgamode);
+ vga_setlinearaddressing();
+@@ -95,7 +95,7 @@
+ /* purposes. */
+ if (keyboard_init()) {
+ printf("Could not initialize keyboard.\n");
+- exit(1);
++ return 1;
+ }
+ /* Translate to 4 keypad cursor keys, and unify enter key. */
+ keyboard_translatekeys(TRANSLATE_CURSORKEYS | TRANSLATE_KEYPADENTER |
+@@ -161,5 +161,5 @@
+ keyboard_close(); /* Don't forget this! */
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/bg_test.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/bg_test.c 2005-07-01 20:51:55.000000000 +0200
+@@ -9,6 +9,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
++#include <string.h>
+ #include <strings.h>
+ #include <vga.h>
+ #include <vgagl.h>
+--- svgalib-1.9.21/demos/accel.c.demos 2002-04-03 09:30:23.000000000 +0200
++++ svgalib-1.9.21/demos/accel.c 2005-07-01 20:51:55.000000000 +0200
+@@ -97,7 +97,7 @@
+
+ if (accelfuncs == 0) {
+ printf("No acceleration supported.\n");
+- exit(0);
++ return 1;
+ }
+ printf("Accelflags: 0x%08X\n", accelfuncs);
+
+@@ -292,7 +292,7 @@
+ );
+ }
+ vga_setmode(TEXT);
+- exit(-1);
++ return 0;
+ }
+
+
+--- svgalib-1.9.21/demos/vgatest.c.demos 2005-01-27 11:34:16.000000000 +0100
++++ svgalib-1.9.21/demos/vgatest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -275,7 +275,7 @@
+
+ if (mode < 1 || mode > GLASTMODE) {
+ printf("Error: Mode number out of range \n");
+- exit(-1);
++ return -1;
+ }
+ }
+ if (vga_hasmode(mode)) {
+@@ -285,7 +285,7 @@
+ }
+ } else {
+ printf("Error: Video mode not supported by driver\n");
+- exit(-1);
++ return -1;
+ }
+
+ vga_setmode(TEXT);
+--- svgalib-1.9.21/demos/printftest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/printftest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -44,7 +44,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(1);
++ return 1;
+ }
+
+ vga_setmode(vgamode);
+@@ -68,5 +68,5 @@
+
+ vga_setmode(TEXT);
+
+- exit(retval);
++ return retval;
+ }
+--- svgalib-1.9.21/demos/fun.c.demos 2002-07-20 18:33:54.000000000 +0200
++++ svgalib-1.9.21/demos/fun.c 2005-07-01 20:51:55.000000000 +0200
+@@ -13,6 +13,7 @@
+ #include <unistd.h>
+ #include <string.h>
+ #include <time.h>
++#include <string.h>
+ #include <vga.h>
+ #include <vgagl.h>
+
+--- svgalib-1.9.21/demos/bankspeed.c.demos 2002-04-03 09:31:22.000000000 +0200
++++ svgalib-1.9.21/demos/bankspeed.c 2005-07-01 20:51:55.000000000 +0200
+@@ -125,7 +125,7 @@
+
+ if (!vga_hasmode(VGAMODE)) {
+ printf("Mode not available.\n");
+- exit(-1);
++ return -1;
+ }
+ VIRTUAL = 0; /* No virtual screen. */
+ if (vga_getmodeinfo(VGAMODE)->colors == 16 ||
+@@ -165,5 +165,5 @@
+ t2=clock();
+ printf("total:%1.2f sec\n",(1.0*t2-t1)/CLOCKS_PER_SEC);
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/eventtest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/eventtest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -3,6 +3,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <unistd.h>
++#include <time.h>
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <vga.h>
+@@ -254,5 +255,5 @@
+ keyboard_close(); /* Don't forget this! */
+ #endif
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/svidtune.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/svidtune.c 2005-07-01 20:51:55.000000000 +0200
+@@ -48,7 +48,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(1);
++ return 1;
+ }
+
+ vga_setmode(vgamode);
+@@ -176,5 +176,5 @@
+
+ vga_setmode(TEXT);
+
+- exit(retval);
++ return retval;
+ }
+--- svgalib-1.9.21/demos/keytest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/keytest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -38,7 +38,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(1);
++ return 1;
+ }
+ printf("\nWARNING: This program will set the keyboard to RAW mode.\n"
+ "The keyboard routines in svgalib have not been tested\n"
+@@ -61,7 +61,7 @@
+ /* purposes. */
+ if (keyboard_init()) {
+ printf("Could not initialize keyboard.\n");
+- exit(1);
++ return 1;
+ }
+ /* Translate to 4 keypad cursor keys, and unify enter key. */
+ keyboard_translatekeys(TRANSLATE_CURSORKEYS | TRANSLATE_KEYPADENTER |
+@@ -126,5 +126,5 @@
+
+ keyboard_close(); /* Don't forget this! */
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/scrolltest.c.demos 2000-01-12 21:03:39.000000000 +0100
++++ svgalib-1.9.21/demos/scrolltest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -304,5 +304,5 @@
+ demo3();
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/forktest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/forktest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -82,7 +82,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(1);
++ return 1;
+ }
+ vga_setmode(vgamode);
+ gl_setcontextvga(vgamode);
+@@ -94,7 +94,7 @@
+ /* purposes. */
+ if (keyboard_init()) {
+ printf("Could not initialize keyboard.\n");
+- exit(1);
++ return 1;
+ }
+ /* Translate to 4 keypad cursor keys, and unify enter key. */
+ keyboard_translatekeys(TRANSLATE_CURSORKEYS | TRANSLATE_KEYPADENTER |
+@@ -160,5 +160,5 @@
+ keyboard_close(); /* Don't forget this! */
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/mjoytest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/mjoytest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -196,7 +196,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(-1);
++ return -1;
+ }
+
+ puts("In the demo, press\n"
+@@ -286,6 +286,6 @@
+ printf("Shutting down.\n");
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+
+--- svgalib-1.9.21/demos/speedtest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/speedtest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -1,4 +1,3 @@
+-
+ #include <unistd.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+@@ -308,5 +307,5 @@
+ speed();
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/linearspeed.c.demos 2003-11-07 10:26:02.000000000 +0100
++++ svgalib-1.9.21/demos/linearspeed.c 2005-07-01 20:51:55.000000000 +0200
+@@ -418,5 +418,5 @@
+ if(!fast)sysmem_speed();
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
+--- svgalib-1.9.21/demos/testlinear.c.demos 2004-09-16 19:56:12.000000000 +0200
++++ svgalib-1.9.21/demos/testlinear.c 2005-07-01 20:51:55.000000000 +0200
+@@ -11,7 +11,7 @@
+ #include <string.h>
+ #include <vga.h>
+ #include <time.h>
+-#include "../src/libvga.h"
++#include "libvga.h"
+
+
+ #define USE_LINEAR_ADDRESSING
+@@ -66,7 +66,7 @@
+ if (!(argc == 2 && strcmp(argv[1], "--force") == 0))
+ if (!(vga_getmodeinfo(vga_getdefaultmode())->flags & CAPABLE_LINEAR)) {
+ printf("Linear addressing not supported for this chipset.\n");
+- exit(1);
++ return 1;
+ }
+ vga_init();
+ vga_setmode(vga_getdefaultmode());
+@@ -75,7 +75,7 @@
+ if (vga_setlinearaddressing() == -1) {
+ vga_setmode(TEXT);
+ printf("Could not set linear addressing.\n");
+- exit(-1);
++ return -1;
+ }
+ #endif
+
+--- svgalib-1.9.21/demos/Makefile.demos 2004-11-16 08:59:52.000000000 +0100
++++ svgalib-1.9.21/demos/Makefile 2005-07-01 20:59:09.000000000 +0200
+@@ -4,19 +4,15 @@
+ # This file is a part of SVGAlib.
+ #----------------------------------------------------------------------
+
+-include ../Makefile.cfg
+-
+-srcdir = ..
+-VPATH = $(srcdir)/demos
+-
+ #----------------------------------------------------------------------
+-# Compiler Section (overrides Makefile.cfg)
++# Compiler Section
+ #----------------------------------------------------------------------
+
+-CFLAGS = $(WARN) $(OPTIMIZE) -I$(srcdir)/include -I$(srcdir)/gl $(DEBFLAGS)
+-ifeq (a.out, $(TARGET_FORMAT))
+- CFLAGS += -DSVGA_AOUT
+-endif
++CC = gcc
++CFLAGS = -Wall -Wstrict-prototypes
++CFLAGS += -fomit-frame-pointer -O2 -fno-strength-reduce -pipe -g
++LDFLAGS = -s
++LIBS = -lvgagl -lvga -lm
+
+ #----------------------------------------------------------------------
+ # Rules Section
+@@ -25,51 +21,12 @@
+ PROGS = fun testgl speedtest mousetest vgatest scrolltest testlinear \
+ keytest testaccel accel forktest eventtest spin bg_test printftest \
+ joytest mjoytest bankspeed lineart linearspeed addmodetest \
+- svidtune linearfork cursor vgatweak buildcsr
+-
+-# Determine what library (static or shared) we will be linking programs with
+-ifdef INSTALLSHAREDLIB
+- LIBS = -lvgagl -lvga
+-endif
+-ifndef LIBS
+- LIBS = ../staticlib/libvgagl.a ../staticlib/libvga.a -lm
+- LVGADEP = $(LIBS)
+-endif
++ svidtune linearfork cursor vgatweak
+
+ all: $(PROGS)
+
+-.PHONY: all clean cleanbin dep
+-
+-$(PROGS): $(LVGADEP)
+-
+ .c:
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $* $*.c $(LIBS)
+
+-rwpage: rwpage.pp
+- $(PC) -Rintel rwpage.pp
+-
+-testaccel: testaccel.c
+- $(CC) $(CFLAGS) $(LDFLAGS) -o testaccel testaccel.c $(LIBS) -lm
+-
+-accel: accel.c
+- $(CC) $(CFLAGS) $(LDFLAGS) -o accel accel.c $(LIBS) -lm
+-
+-linearspeed: linearspeed.c memset.o
+- $(CC) $(CFLAGS) $(LDFLAGS) -o linearspeed linearspeed.c memset.o $(LIBS)
+-
+-buildcsr: mkcur.o
+- $(CC) -o buildcsr $(LDFLAGS) mkcur.o -lvgagl -lvga
+-
+-clean: cleanbin
+- rm -f .depend *.o *~ *.bak core
+-
+-cleanbin:
+- rm -f $(PROGS) rwpage
+-
+-#
+-# No dependencies required here.
+-#
+-
+-dep:
+-.depend:
+-
++clean:
++ rm -f $(PROGS)
+--- svgalib-1.9.21/demos/mousetest.c.demos 2000-01-06 13:12:36.000000000 +0100
++++ svgalib-1.9.21/demos/mousetest.c 2005-07-01 20:51:55.000000000 +0200
+@@ -34,7 +34,7 @@
+
+ if (!vga_hasmode(vgamode)) {
+ printf("Mode not available.\n");
+- exit(-1);
++ return -1;
+ }
+ #ifndef MANUALLY_SETUP_MOUSE
+ /* Enable automatic mouse setup at mode set. */
+@@ -72,7 +72,7 @@
+ /* To be able to test fake mouse events... */
+ if (keyboard_init()) {
+ printf("Could not initialize keyboard.\n");
+- exit(1);
++ return 1;
+ }
+
+ /* Set the range for the wheel */
+@@ -136,5 +136,5 @@
+ #endif
+
+ vga_setmode(TEXT);
+- exit(0);
++ return 0;
+ }
diff --git a/source/l/svgalib/svgalib-1.9.25.no_asm.patch b/source/l/svgalib/svgalib-1.9.25.no_asm.patch
new file mode 100644
index 000000000..8e489774b
--- /dev/null
+++ b/source/l/svgalib/svgalib-1.9.25.no_asm.patch
@@ -0,0 +1,11 @@
+--- ./Makefile.cfg.orig 2022-01-19 16:04:36.833030933 -0600
++++ ./Makefile.cfg 2022-01-19 16:05:13.758031759 -0600
+@@ -79,7 +79,7 @@
+
+ # uncomment this if your compiler fails on compiling the assembler in
+ # src/vgaconvplanar.c, gl/inlstring.h, gl/line.c or gl/scale.c
+-# NO_ASM = y
++NO_ASM = y
+
+ # uncomment if you want to set attribute controller and dac without delay
+ # This breaks original VGA, but seems to work on new cards.
diff --git a/source/l/svgalib/svgalib.SlackBuild b/source/l/svgalib/svgalib.SlackBuild
index 76e9868a4..880c7c6bd 100755
--- a/source/l/svgalib/svgalib.SlackBuild
+++ b/source/l/svgalib/svgalib.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2015, 2018, 2021 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=svgalib
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-6}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -65,7 +65,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
@@ -89,6 +89,8 @@ zcat $CWD/svgalib.nohelper.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib-1.9.25-round_gtf_gtfcalc_c.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib-1.9.25-vga_getmodenumber.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib-1.9.25-quickmath-h-redefinitions.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/svgalib-1.9.21-demos.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/svgalib-1.9.25.no_asm.patch.gz | patch -p1 --verbose || exit 1
# Build and install - spamming your partition first...:
make install NO_HELPER=y || exit 1
diff --git a/source/l/system-config-printer/system-config-printer.SlackBuild b/source/l/system-config-printer/system-config-printer.SlackBuild
index 98370a806..948b5f5f3 100755
--- a/source/l/system-config-printer/system-config-printer.SlackBuild
+++ b/source/l/system-config-printer/system-config-printer.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2011, 2012, 2013, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2012, 2013, 2018, 2020, 2021, 2022, 2024 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=system-config-printer
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -89,6 +89,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Fix missing required file:
+if [ ! -r ChangeLog ]; then
+ touch ChangeLog
+fi
+
# Configure:
if [ ! -r configure ]; then
if [ -x ./autogen.sh ]; then
@@ -108,7 +113,9 @@ PYTHON=/usr/bin/python3 \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--localstatedir=/var/lib \
--sysconfdir=/etc \
+ --with-udevdir=/lib/udev \
--with-udev-rules \
+ --with-systemdsystemunitdir=no \
--program-prefix= \
--program-suffix= \
--build=$TARGET || exit 1
@@ -128,14 +135,10 @@ python3 setup.py install --root=$PKG || exit 1
python3 -m compileall "${PKG}/usr/share/system-config-printer"
python3 -O -m compileall "${PKG}/usr/share/system-config-printer"
-# Move the udev files to the usual Slackware location:
-mkdir -p $PKG/lib
-mv $PKG/etc/udev $PKG/lib/
-
# Move the dbus configs to the system location:
mkdir -p $PKG/usr/share/dbus-1/system.d/
mv $PKG/etc/dbus-1/system.d/* $PKG/usr/share/dbus-1/system.d/
-rmdir --parents $PKG/etc/dbus-1/system.d/
+rm -rf $PKG/etc/dbus-1
if [ ! -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
# Looks like PAM is not installed. Instead, your user must be in group 'lp'.
diff --git a/source/l/taglib-extras/slack-desc b/source/l/taglib-extras/slack-desc
deleted file mode 100644
index 84a5daaaf..000000000
--- a/source/l/taglib-extras/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
-# leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-taglib-extras: taglib-extras (taglib support for other formats)
-taglib-extras:
-taglib-extras: Taglib file type plugins which were split off from Amarok
-taglib-extras: to allow others to use and help maintain them.
-taglib-extras: Taglib-extras delivers support for reading and editing
-taglib-extras: meta-data of audio formats not supported by taglib, including:
-taglib-extras: asf, mp4v2, rmff, wav.
-taglib-extras:
-taglib-extras:
-taglib-extras: The taglib-extras are part of kdesupport: http://www.kde.org
-taglib-extras:
diff --git a/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch b/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch
deleted file mode 100644
index ad67e17cf..000000000
--- a/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -up taglib-extras-0.1/taglib-extras-config.cmake.multilib taglib-extras-0.1/taglib-extras-config.cmake
---- taglib-extras-0.1/taglib-extras-config.cmake.multilib 2009-03-12 11:12:04.000000000 -0500
-+++ taglib-extras-0.1/taglib-extras-config.cmake 2009-03-23 07:57:25.000000000 -0500
-@@ -16,7 +16,6 @@ EOH
-
- prefix=${CMAKE_INSTALL_PREFIX}
- exec_prefix=${CMAKE_INSTALL_PREFIX}
--libdir=${LIB_INSTALL_DIR}
- includedir=${INCLUDE_INSTALL_DIR}
-
- flags=""
-@@ -29,7 +28,7 @@ while test $# -gt 0
- do
- case $1 in
- --libs)
-- flags="$flags -L$libdir -ltag-extras"
-+ flags="$flags -ltag-extras"
- ;;
- --cflags)
- flags="$flags -I$includedir/taglib-extras"
diff --git a/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch b/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch
deleted file mode 100644
index 4f5d18708..000000000
--- a/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -up taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake.taglib taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake
---- taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake.taglib 2009-03-13 16:40:24.000000000 -0500
-+++ taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake 2016-02-14 09:06:57.209838045 -0600
-@@ -29,10 +29,10 @@ if(TAGLIBCONFIG_EXECUTABLE)
-
- exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION)
-
-- if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
-+ if("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
- message(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}")
- set(TAGLIB_FOUND FALSE)
-- else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
-+ else("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
-
- exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES)
-
-@@ -42,7 +42,7 @@ if(TAGLIBCONFIG_EXECUTABLE)
- set(TAGLIB_FOUND TRUE)
- endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS)
- string(REGEX REPLACE " *-I" ";" TAGLIB_INCLUDES "${TAGLIB_CFLAGS}")
-- endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
-+ endif("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
- mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES)
-
- else(TAGLIBCONFIG_EXECUTABLE)
diff --git a/source/l/taglib-extras/taglib-extras-1.0.1-version.patch b/source/l/taglib-extras/taglib-extras-1.0.1-version.patch
deleted file mode 100644
index 911b9178e..000000000
--- a/source/l/taglib-extras/taglib-extras-1.0.1-version.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up taglib-extras-1.0.1/CMakeLists.txt.version taglib-extras-1.0.1/CMakeLists.txt
---- taglib-extras-1.0.1/CMakeLists.txt.version 2009-09-17 14:31:50.000000000 -0500
-+++ taglib-extras-1.0.1/CMakeLists.txt 2009-09-21 19:40:38.076666807 -0500
-@@ -29,7 +29,7 @@ endif (WIN32)
-
- set(TAGLIB-EXTRAS_LIB_MAJOR_VERSION "1")
- set(TAGLIB-EXTRAS_LIB_MINOR_VERSION "0")
--set(TAGLIB-EXTRAS_LIB_PATCH_VERSION "0")
-+set(TAGLIB-EXTRAS_LIB_PATCH_VERSION "1")
-
- set(TAGLIB-EXTRAS_LIB_VERSION_STRING "${TAGLIB-EXTRAS_LIB_MAJOR_VERSION}.${TAGLIB-EXTRAS_LIB_MINOR_VERSION}.${TAGLIB-EXTRAS_LIB_PATCH_VERSION}")
-
diff --git a/source/l/taglib/slack-desc b/source/l/taglib/slack-desc
index b615b1804..dc9dd63b0 100644
--- a/source/l/taglib/slack-desc
+++ b/source/l/taglib/slack-desc
@@ -13,7 +13,7 @@ taglib: popular audio formats. Currently it supports both ID3v1 and ID3v2
taglib: for MP3 files, Ogg Vorbis comments and ID3 tags and Vorbis comments
taglib: in FLAC files.
taglib:
-taglib:
+taglib: Homepage: https://taglib.org
taglib:
taglib:
taglib:
diff --git a/source/l/taglib/taglib.url b/source/l/taglib/taglib.url
new file mode 100644
index 000000000..4489f6c23
--- /dev/null
+++ b/source/l/taglib/taglib.url
@@ -0,0 +1 @@
+https://taglib.org
diff --git a/source/l/talloc/talloc.SlackBuild b/source/l/talloc/talloc.SlackBuild
index da040d036..b03599a4f 100755
--- a/source/l/talloc/talloc.SlackBuild
+++ b/source/l/talloc/talloc.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=talloc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/tdb/tdb.SlackBuild b/source/l/tdb/tdb.SlackBuild
index 2a1ec9ac4..2c2e97ff6 100755
--- a/source/l/tdb/tdb.SlackBuild
+++ b/source/l/tdb/tdb.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=tdb
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/tevent/tevent.SlackBuild b/source/l/tevent/tevent.SlackBuild
index 7bb29af57..877156b16 100755
--- a/source/l/tevent/tevent.SlackBuild
+++ b/source/l/tevent/tevent.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=tevent
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/tidy-html5/tidy-html5.SlackBuild b/source/l/tidy-html5/tidy-html5.SlackBuild
index 81f0d1856..0edd2ddf8 100755
--- a/source/l/tidy-html5/tidy-html5.SlackBuild
+++ b/source/l/tidy-html5/tidy-html5.SlackBuild
@@ -30,7 +30,7 @@ BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/unicode-ucd/fetch-sources.sh b/source/l/unicode-ucd/fetch-sources.sh
new file mode 100755
index 000000000..c02a4ad07
--- /dev/null
+++ b/source/l/unicode-ucd/fetch-sources.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+VERSION=${VERSION:-15.1.0}
+
+rm -f UCD*.zip Unihan*.zip license.txt
+lftpget https://www.unicode.org/Public/zipped/$VERSION/UCD.zip
+lftpget https://www.unicode.org/Public/zipped/$VERSION/Unihan.zip
+lftpget https://www.unicode.org/license.txt
+
+mv UCD.zip UCD-${VERSION}.zip
+mv Unihan.zip Unihan-${VERSION}.zip
diff --git a/source/l/unicode-ucd/license.txt b/source/l/unicode-ucd/license.txt
new file mode 100644
index 000000000..ee8e69b23
--- /dev/null
+++ b/source/l/unicode-ucd/license.txt
@@ -0,0 +1,39 @@
+UNICODE LICENSE V3
+
+COPYRIGHT AND PERMISSION NOTICE
+
+Copyright © 1991-2024 Unicode, Inc.
+
+NOTICE TO USER: Carefully read the following legal agreement. BY
+DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR
+SOFTWARE, YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE
+TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT
+DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of data files and any associated documentation (the "Data Files") or
+software and any associated documentation (the "Software") to deal in the
+Data Files or Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, and/or sell
+copies of the Data Files or Software, and to permit persons to whom the
+Data Files or Software are furnished to do so, provided that either (a)
+this copyright and permission notice appear with all copies of the Data
+Files or Software, or (b) this copyright and permission notice appear in
+associated Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
+THIRD PARTY RIGHTS.
+
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE
+BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES,
+OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA
+FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder shall
+not be used in advertising or otherwise to promote the sale, use or other
+dealings in these Data Files or Software without prior written
+authorization of the copyright holder.
diff --git a/source/l/unicode-ucd/slack-desc b/source/l/unicode-ucd/slack-desc
new file mode 100644
index 000000000..318a00e39
--- /dev/null
+++ b/source/l/unicode-ucd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+unicode-ucd: unicode-ucd (Unicode Character Database)
+unicode-ucd:
+unicode-ucd: The Unicode Character Database (UCD) consists of a number of data
+unicode-ucd: files listing Unicode character properties and related data. It also
+unicode-ucd: includes test data for conformance to several important Unicode
+unicode-ucd: algorithms.
+unicode-ucd:
+unicode-ucd: Homepage: https://www.unicode.org
+unicode-ucd:
+unicode-ucd:
+unicode-ucd:
diff --git a/source/l/unicode-ucd/unicode-ucd.SlackBuild b/source/l/unicode-ucd/unicode-ucd.SlackBuild
new file mode 100755
index 000000000..e4b2d7098
--- /dev/null
+++ b/source/l/unicode-ucd/unicode-ucd.SlackBuild
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=unicode-ucd
+VERSION=${VERSION:-$(echo UCD-*.zip | rev | cut -f 2- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+ARCH=noarch
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+mkdir -p $PKG/usr/share/unicode
+( cd $PKG/usr/share/unicode
+ # Unfortunately we have to keep these large zip files in here because at
+ # least gucharmap can't handle the extracted files.
+ cp -a $CWD/UCD-${VERSION}.zip . || exit 1
+ cp -a $CWD/Unihan-${VERSION}.zip . || exit 1
+ mv UCD-${VERSION}.zip UCD.zip || exit 1
+ mv Unihan-${VERSION}.zip Unihan.zip || exit 1
+ unzip UCD.zip || exit 1
+ unzip Unihan.zip || exit 1
+) || exit 1
+
+# Compatibility symlinks that allow most things to find this:
+ln -sf . $PKG/usr/share/unicode/ucd
+ln -sf unicode $PKG/usr/share/unicode-character-database
+ln -sf unicode $PKG/usr/share/unicode-data
+ln -sf unicode $PKG/usr/share/unidata
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a license.txt $PKG/usr/doc/${PKGNAM}-$VERSION
+
+chown -R root:root $PKG
+find $PKG -type d -exec chmod 755 "{}" \;
+find $PKG -type f -exec chmod 644 "{}" \;
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/utf8proc/utf8proc.SlackBuild b/source/l/utf8proc/utf8proc.SlackBuild
index 83cb67a83..f2286d6c5 100755
--- a/source/l/utf8proc/utf8proc.SlackBuild
+++ b/source/l/utf8proc/utf8proc.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=utf8proc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/v4l-utils/v4l-utils.SlackBuild b/source/l/v4l-utils/v4l-utils.SlackBuild
index f83a08996..d16451a68 100755
--- a/source/l/v4l-utils/v4l-utils.SlackBuild
+++ b/source/l/v4l-utils/v4l-utils.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2009 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2013, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2013, 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=v4l-utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -79,27 +79,38 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Using -std=gnu++14 to fix compile with gcc11 - revisit later to see if it's
-# still needed.
+# Make sure the gconv modules are linked properly:
+cat $CWD/v4l-utils.gconv.link.patch | patch -p1 --verbose || exit 1
-# Configure:
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -std=gnu++14" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
--mandir=/usr/man \
- --infodir=/usr/info \
- --disable-static \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# These shouldn't be used:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Ddoxygen-doc=disabled \
+ -Ddoxygen-html=false \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# DO NOT overwrite gconv-modules from glibc!
+if [ -r $PKG/usr/lib${LIBDIRSUFFIX}/gconv/gconv-modules ]; then
+ mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/gconv/gconv-modules.d
+ mv $PKG/usr/lib${LIBDIRSUFFIX}/gconv/gconv-modules $PKG/usr/lib${LIBDIRSUFFIX}/gconv/gconv-modules.d/v4l-utils.conf
+fi
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
@@ -123,7 +134,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- COPYING* README* TODO \
+ COPYING* iINSTALL* README* TODO* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/v4l-utils/v4l-utils.gconv.link.patch b/source/l/v4l-utils/v4l-utils.gconv.link.patch
new file mode 100644
index 000000000..5432d58c0
--- /dev/null
+++ b/source/l/v4l-utils/v4l-utils.gconv.link.patch
@@ -0,0 +1,10 @@
+--- ./contrib/gconv/meson.build.orig 2023-11-25 07:27:49.000000000 -0600
++++ ./contrib/gconv/meson.build 2023-12-03 12:52:06.319957999 -0600
+@@ -16,6 +16,7 @@
+ arib_std_b24_sources,
+ name_prefix : '',
+ dependencies : arib_std_b24_deps,
++ link_args : [ '-Wl,--enable-new-dtags', '-Wl,-rpath=$ORIGIN' ],
+ install : true,
+ install_dir : gconv_install_dir,
+ include_directories : v4l2_utils_incdir)
diff --git a/source/l/vid.stab/vid.stab.SlackBuild b/source/l/vid.stab/vid.stab.SlackBuild
index 3610f7353..04f7904fc 100755
--- a/source/l/vid.stab/vid.stab.SlackBuild
+++ b/source/l/vid.stab/vid.stab.SlackBuild
@@ -25,13 +25,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=vid.stab
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
diff --git a/source/l/vid.stab/vid.stab.url b/source/l/vid.stab/vid.stab.url
index b98ec60e9..f87c58fed 100644
--- a/source/l/vid.stab/vid.stab.url
+++ b/source/l/vid.stab/vid.stab.url
@@ -1 +1 @@
-https://github.com/georgmartius/vid.stab.git
+https://github.com/georgmartius/vid.stab
diff --git a/source/l/vte/vte.SlackBuild b/source/l/vte/vte.SlackBuild
index 40b5aa99e..e3b156cb7 100755
--- a/source/l/vte/vte.SlackBuild
+++ b/source/l/vte/vte.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -101,9 +101,6 @@ meson setup \
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/vte/vte.url b/source/l/vte/vte.url
new file mode 100644
index 000000000..b9a7d0ce2
--- /dev/null
+++ b/source/l/vte/vte.url
@@ -0,0 +1 @@
+https://gitlab.gnome.org/GNOME/vte
diff --git a/source/l/wavpack/wavpack.SlackBuild b/source/l/wavpack/wavpack.SlackBuild
index 750126896..758ef2318 100755
--- a/source/l/wavpack/wavpack.SlackBuild
+++ b/source/l/wavpack/wavpack.SlackBuild
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=wavpack
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -53,7 +53,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-$TMP}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -112,6 +112,9 @@ if [ -r ChangeLog ]; then
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
+rm -r $PKG/usr/share/doc/wavpack
+rmdir $PKG/usr/share/doc $PKG/usr/share
+
# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
diff --git a/source/l/wavpack/wavpack.url b/source/l/wavpack/wavpack.url
index c8d5906d4..31010233b 100644
--- a/source/l/wavpack/wavpack.url
+++ b/source/l/wavpack/wavpack.url
@@ -1 +1,2 @@
https://github.com/dbry/WavPack
+https://github.com/dbry/WavPack/releases/download/5.7.0/wavpack-5.7.0.tar.xz
diff --git a/source/l/wireplumber/doinst.sh b/source/l/wireplumber/doinst.sh
new file mode 100644
index 000000000..32df2ffc3
--- /dev/null
+++ b/source/l/wireplumber/doinst.sh
@@ -0,0 +1,4 @@
+# Toss redundant sample files:
+for file in wireplumber.desktop ; do
+ cmp -s etc/xdg/autostart/${file} etc/xdg/autostart/${file}.sample && rm etc/xdg/autostart/${file}.sample
+done
diff --git a/source/l/wireplumber/slack-desc b/source/l/wireplumber/slack-desc
new file mode 100644
index 000000000..f1a948f06
--- /dev/null
+++ b/source/l/wireplumber/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+wireplumber: wireplumber (session and policy manager for pipewire)
+wireplumber:
+wireplumber: WirePlumber is a modular session / policy manager for PipeWire and a
+wireplumber: GObject-based high-level library that wraps PipeWire's API, providing
+wireplumber: convenience for writing the daemon's modules as well as external tools
+wireplumber: for managing PipeWire.
+wireplumber:
+wireplumber: Homepage: https://gitlab.freedesktop.org/pipewire/wireplumber
+wireplumber:
+wireplumber:
+wireplumber:
diff --git a/source/l/wireplumber/wireplumber.SlackBuild b/source/l/wireplumber/wireplumber.SlackBuild
new file mode 100755
index 000000000..59806c8ea
--- /dev/null
+++ b/source/l/wireplumber/wireplumber.SlackBuild
@@ -0,0 +1,147 @@
+#!/bin/bash
+
+# Copyright 2020 Eric Hameleers, Eindhoven, NL
+# Copyright 2020, 2021, 2022, 2023, 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=wireplumber
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+ unshare -n meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Dsystem-lua=true \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+# Add sample configuation files:
+mkdir -p $PKG/etc/xdg/autostart
+cp -a $CWD/wireplumber.desktop.sample $PKG/etc/xdg/autostart
+chown root:root $PKG/etc/xdg/autostart/*
+chmod 644 $PKG/etc/xdg/autostart/*
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ LICENSE* NEWS* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a NEWS.rst file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r NEWS.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat NEWS.rst | head -n 1000 > $DOCSDIR/NEWS.rst
+ touch -r NEWS.rst $DOCSDIR/NEWS.rst
+fi
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/wireplumber/wireplumber.desktop.sample b/source/l/wireplumber/wireplumber.desktop.sample
new file mode 100644
index 000000000..b32e24f95
--- /dev/null
+++ b/source/l/wireplumber/wireplumber.desktop.sample
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=Wireplumber
+Comment=Start Wireplumber
+Exec=/usr/bin/daemon -frB --pidfiles=~/.run --name=wireplumber /usr/bin/wireplumber
+Terminal=false
+Type=Application
+X-GNOME-Autostart-Phase=Initialization
+X-KDE-autostart-phase=1
diff --git a/source/l/wireplumber/wireplumber.url b/source/l/wireplumber/wireplumber.url
new file mode 100644
index 000000000..69f04fa02
--- /dev/null
+++ b/source/l/wireplumber/wireplumber.url
@@ -0,0 +1 @@
+https://gitlab.freedesktop.org/pipewire/wireplumber
diff --git a/source/l/woff2/woff2.SlackBuild b/source/l/woff2/woff2.SlackBuild
index f442176bb..083f615b1 100755
--- a/source/l/woff2/woff2.SlackBuild
+++ b/source/l/woff2/woff2.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=woff2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -101,6 +101,14 @@ cd cmake-build
make install DESTDIR=$PKG || exit 1
cd ..
+# Make sure that the tools get installed:
+for binary in woff2_compress woff2_decompress woff2_info ; do
+ if [ ! -x "$PKG/usr/bin/$binary" ]; then
+ mkdir -p $PKG/usr/bin
+ install -m 755 cmake-build/$binary $PKG/usr/bin
+ fi
+done
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/xapian-core/xapian-core.SlackBuild b/source/l/xapian-core/xapian-core.SlackBuild
index 99fe49778..c3bc72fea 100755
--- a/source/l/xapian-core/xapian-core.SlackBuild
+++ b/source/l/xapian-core/xapian-core.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=xapian-core
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
diff --git a/source/l/xxHash/xxHash.SlackBuild b/source/l/xxHash/xxHash.SlackBuild
index 3e4500065..d9679c5a1 100755
--- a/source/l/xxHash/xxHash.SlackBuild
+++ b/source/l/xxHash/xxHash.SlackBuild
@@ -24,13 +24,13 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=xxHash
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -99,6 +99,17 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+# Fix manpage links:
+( cd $PKG/usr/man/man1
+ for file in *.1 ; do
+ if [ -L $file ]; then
+ LINK=$(basename $(readlink $file))
+ rm $file
+ ln -sf $LINK $file
+ fi
+ done
+)
+
# Compress manual pages:
find $PKG/usr/man -type f -exec gzip -9 {} \+
for i in $( find $PKG/usr/man -type l ) ; do
diff --git a/source/l/zlib/zlib.SlackBuild b/source/l/zlib/zlib.SlackBuild
index de905bb3b..a7417d991 100755
--- a/source/l/zlib/zlib.SlackBuild
+++ b/source/l/zlib/zlib.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=zlib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/l/zstd/zstd.SlackBuild b/source/l/zstd/zstd.SlackBuild
index a96412bf3..b0f253944 100755
--- a/source/l/zstd/zstd.SlackBuild
+++ b/source/l/zstd/zstd.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
# Copyright 2018 Eric Hameleers, Eindhoven, Netherlands
-# Copyright 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -32,7 +32,7 @@ NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ arm*) readelf /usr/bin/file -A | grep -E -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
esac
@@ -85,7 +85,6 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
-zcat $CWD/zstd.dont.link.pzstd.to.static.libzstd.a.diff.gz | patch -p1 --verbose || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -95,22 +94,33 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
-# Compile it:
+# Compile and install:
+mkdir build/cmake/build
+cd build/cmake/build
+cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man/man1 \
+ -DZSTD_BUILD_STATIC=OFF \
+ -DZSTD_PROGRAMS_LINK_SHARED=ON \
+ -DZSTD_LZ4_SUPPORT=ON \
+ -DZSTD_LZMA_SUPPORT=ON \
+ -DZSTD_ZLIB_SUPPORT=ON \
+ .. || exit 1
make $NUMJOBS CFLAGS="$SLKCFLAGS" || exit 1
-make $NUMJOBS CFLAGS="$SLKCFLAGS" -C contrib/pzstd || exit 1
+make install DESTDIR=$PKG || exit 1
+cd ../../..
-# Install it:
-make \
- $NUMJOBS \
- prefix=/usr \
- libdir=/usr/lib${LIBDIRSUFFIX} \
- mandir=/usr/man \
- DESTDIR=$PKG \
- install || exit 1
+# Compile and install pzstd:
+zcat $CWD/zstd.dont.link.pzstd.to.static.libzstd.a.diff.gz | patch -p1 --verbose || exit 1
+make $NUMJOBS CFLAGS="$SLKCFLAGS" -C contrib/pzstd || exit 1
install -Dm755 contrib/pzstd/pzstd $PKG/usr/bin/pzstd || exit 1
-# Don't ship static library:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+## Don't ship static library:
+#rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
# It might be advisable to have the libraries in /lib${LIBDIRSUFFIX}:
mkdir -p $PKG/lib${LIBDIRSUFFIX}
@@ -120,6 +130,9 @@ mv $PKG/usr/lib${LIBDIRSUFFIX}/libzstd.so.* $PKG/lib${LIBDIRSUFFIX}
ln -sf ../../lib${LIBDIRSUFFIX}/libzstd.so.? libzstd.so
)
+# Set the path of libzstd in cmake Targets (given by Steven Voges in SBo)
+sed -i 's|${_IMPORT_PREFIX}||g' $PKG/usr/lib${LIBDIRSUFFIX}/cmake/zstd/zstdTargets-release.cmake
+
# zstdmt as the same as zstd, so just make a symlink:
( cd $PKG/usr/bin
ln -sf zstd zstdmt
diff --git a/source/l/zug/slack-desc b/source/l/zug/slack-desc
new file mode 100644
index 000000000..183580642
--- /dev/null
+++ b/source/l/zug/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+zug: zug (Transducers for C++)
+zug:
+zug: zug is a C++ library providing 'transducers.' Transducers are
+zug: composable sequential transformations independent of the source. They
+zug: are extremely lightweight, and can be used to express algorithms over
+zug: pull-based sequences (iterators, files) but also push based sequences
+zug: (signals, events, asynchronous streams) in a generic way.
+zug:
+zug: Homepage: https://github.com/arximboldi/zug
+zug:
+zug:
diff --git a/source/l/zug/zug.SlackBuild b/source/l/zug/zug.SlackBuild
new file mode 100755
index 000000000..b2e401dc5
--- /dev/null
+++ b/source/l/zug/zug.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=zug
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Account for $LIBDIRSUFFIX:
+sed -i "s|lib/cmake/Zug|lib$LIBDIRSUFFIX/cmake/Zug|g" CMakeLists.txt
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -Dzug_BUILD_TESTS=OFF \
+ -Dzug_BUILD_EXAMPLES=OFF \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ LICENSE* README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/zug/zug.url b/source/l/zug/zug.url
new file mode 100644
index 000000000..d68ff8cae
--- /dev/null
+++ b/source/l/zug/zug.url
@@ -0,0 +1 @@
+https://github.com/arximboldi/zug
diff --git a/source/l/zxing-cpp/slack-desc b/source/l/zxing-cpp/slack-desc
new file mode 100644
index 000000000..e989cb626
--- /dev/null
+++ b/source/l/zxing-cpp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+zxing-cpp: zxing-cpp (barcode image processing library)
+zxing-cpp:
+zxing-cpp: ZXing-C++ ("zebra crossing") is an open-source, multi-format
+zxing-cpp: linear/matrix barcode image processing library implemented in C++. It
+zxing-cpp: can both read and write barcodes in a number of formats.
+zxing-cpp:
+zxing-cpp: Homepage: https://github.com/zxing-cpp/zxing-cpp
+zxing-cpp:
+zxing-cpp:
+zxing-cpp:
+zxing-cpp:
diff --git a/source/l/qca/qca.SlackBuild b/source/l/zxing-cpp/zxing-cpp.SlackBuild
index 550c32d05..b07430649 100755
--- a/source/l/qca/qca.SlackBuild
+++ b/source/l/zxing-cpp/zxing-cpp.SlackBuild
@@ -1,7 +1,6 @@
#!/bin/bash
-# Copyright 2015, 2020 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2015, 2016, 2017, 2018, 2019, 2020 Eric Hameleers, Eindhoven, NL
+# Copyright 2023 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +22,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=qca
-SRCNAM=qca
-VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+PKGNAM=zxing-cpp
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -76,9 +74,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
-cd $SRCNAM-$VERSION || exit 1
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -91,15 +89,12 @@ find . \
mkdir cmake-build
cd cmake-build
cmake \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
-DMAN_INSTALL_DIR=/usr/man \
- -DQCA_MAN_INSTALL_DIR=/usr/man \
- -DQCA_INSTALL_IN_QT_PREFIX:BOOL=ON \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DBUILD_TESTS:BOOL=OFF \
.. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -118,7 +113,7 @@ done
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- COPYING* INSTALL* README* TODO* \
+ AUTHORS* ChangeLog CHANGES COPYING* LICENSE* NEWS* README* THANKS* TODO* \
$PKG/usr/doc/${PKGNAM}-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/zxing-cpp/zxing-cpp.url b/source/l/zxing-cpp/zxing-cpp.url
new file mode 100644
index 000000000..261e4b754
--- /dev/null
+++ b/source/l/zxing-cpp/zxing-cpp.url
@@ -0,0 +1 @@
+https://github.com/zxing-cpp/zxing-cpp