SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Can SDL2 be rebuilt with --enable-video-kmsdrm? This allows at least some SDL2 programs to use the KMS/DRM context and run the graphical program directly from an unused tty without needing to have X11 or wayland running.
#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
# Copyright 2008, 2009, 2010, 2013, 2015, 2018 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=gstreamer
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 ;;
# 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"
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
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 \
-Dpackage-origin=gstreamer.url \
-Dpackage-name="GStreamer 1.17.2" \
.. || 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
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
I don't understand what's the point of this check in xwmconfig:
Code:
# This stops --backtitle from cluttering the initial install:
if [ ! -r /proc/kcore ]; then
BACKTITLE=""
fi
From the comment, I guess that maybe the intention was to hide backtitle when running xwmconfig during the setup but it's shown anyway, apparently because /proc is present when xwmconfig is run because it's mounted in SeTconfig. A side-effect of this check is that 'Setting default window manager in $HOME/.xinitrc and $HOME/.xsession' backtitle is never shown when xwmconfig is run after the installation because non-root users cannot read /proc/kcore and it has been like that since forever. Would it be ok to remove this check?
Dear HQuest,
Dane works quite well, but the site.config was wrong. Here is the one I use, actually in version 8.16.0.41 (patched):
---------------------------------------------
APPENDDEF(`confENVDEF', `-DNETINET6')
APPENDDEF(`confMAPDEF', `-DNEWDB')
APPENDDEF(`confLIBS', `-lnsl -lssl -lcrypto -lsasl2 -lwrap -lm -ldb -lresolv')
APPENDDEF(`conf_libmilter_ENVDEF', `-DMILTER')
APPENDDEF(`conf_sendmail_ENVDEF', `-DMILTER')
APPENDDEF(`conf_libmilter_ENVDEF', `-D_FFR_MILTER_ROOT_UNSAFE ')
APPENDDEF(`confENVDEF', `-DBROKEN_PTHREAD_SLEEP')
APPENDDEF(`confENVDEF', `-DSTARTTLS -DSASL=2 -DTCPWRAPPERS -DNIS -DMAP_REGEX -DSOCKETMAP')
APPENDDEF(`confENVDEF', `-D_FFR_TLS_1')
APPENDDEF(`confENVDEF', `-D_FFR_TLSA_DANE2')dnl
-----------------------------------------------
You find all use full packages on http://talo.nl/talo/download/slackware/14.2/*
without the patch the last record should be
APPENDDEF(`confENVDEF', `-D_FFR_TLSA_DANE')dnl
There was a discussion on https://www.five-ten-sg.com/mapper/blog/DANE for version 8.16.0.29 but the patch did fit to 8.16.0.41 too.
The patch can not be used for 8.16.1 but it supports dane:ee 3.1.X. I use 3 1 1 , but you need a _25._tcp.your adress record.
It run for more then a year without problems.
talo,
for direct contact jaapw @ talo.nl
Hi Talo.
Yeah, I'm also making use of DANE for the past 2 years or so (locally packaged). The problem of using _FFR_ variables is, as defined by Sendmail's installation and operations guide, "ForFutureReleases (prefix _FFR_) which might be enabled in a subsequent version or might simply be removed as they turned out not to be really useful.". Definitely not the case with DANE, since it made to the latest release and got promoted to -DDANE. However during the last commit of the official 8.16.1, Claus did missed a few things (notably the STARTTLS check) that are pre-requisites for DANE to work. With that, I rolled back to the past 8.16.0.50, which seemed to be working just as 8.6.0.41 was, and will wait until 8.6.2 is out, hopefully fixed.
Also, _FFR_TLS_1 and BROKEN_PTHREAD_SLEEP are no longer on the code. See valid compile options on sendmail/conf.c.
A modern, updated site.config.m4 file would look like
I also would add -DDNSSEC_TEST, but not all places do enforce it (perhaps this is the same reason why DANE is not added by default on Pat's package...)
Please set PYTHONDONTWRITEBYTECODE=1 in the gegl SlackBuild to prevent it from creating __pycache__ files in the file system and triggering the following sandbox violations.
Sendmail
Yeah, I'm also making use of DANE for the past 2 years or so (locally packaged). The problem of using _FFR_ variables is, as defined by Sendmail's installation and operations guide, "ForFutureReleases (prefix _FFR_) which might be enabled in a subsequent version or might simply be removed as they turned out not to be really useful.". Definitely not the case with DANE, since it made to the latest release and got promoted to -DDANE. However during the last commit of the official 8.16.1, Claus did missed a few things (notably the STARTTLS check) that are pre-requisites for DANE to work. With that, I rolled back to the past 8.16.0.50, which seemed to be working just as 8.6.0.41 was, and will wait until 8.6.2 is out, hopefully fixed.
Also, _FFR_TLS_1 and BROKEN_PTHREAD_SLEEP are no longer on the code. See valid compile options on sendmail/conf.c.
I returned to 8.16.0.41, mainly because of DANE patch of 5-10 group. If their is a cert and any DANE connection is made, DANE record is written to "maillog".
You remarks are useful and I will follow the actions, including those of Claus.
From update Wed Jul 15 19:34:18 UTC 2020
$ gdb /usr/bin/cmake-gui
...
(gdb) run
Starting program: /usr/bin/cmake-gui
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7ffff1cc1700 (LWP 8187)]
[New Thread 0x7fffeaa9a700 (LWP 8195)
Thread 1 "cmake-gui" received signal SIGSEGV, Segmentation fault.
0x00007ffff69d7684 in qHash(QString const&, unsigned int) () from /usr/lib64/libQt5Core.so.5
I don't know if it will have any side effects and/or breaks something.
I have not been able to test rebuilding the package.
Can php-7.x be rebuilt with the additional configure option "--enable-embed" [1]? This will build a shared SAPI library. (On RPM-based distros there is a seperate "php-embedded" package [2] for this.)
I'm asking because I'll try to build uwsgi [3] with its php plugin for testing purposes. I hope that's the only thing missing.
I don't know if it will have any side effects and/or breaks something.
I have not been able to test rebuilding the package.
Can php-7.x be rebuilt with the additional configure option "--enable-embed" [1]? This will build a shared SAPI library. (On RPM-based distros there is a seperate "php-embedded" package [2] for this.)
I'm asking because I'll try to build uwsgi [3] with its php plugin for testing purposes. I hope that's the only thing missing.
I think the embed SAPI must be done in its own separate package because if you just add the configure option in php.SlackBuild you got this error
Code:
[...]
Configuring SAPI modules
checking for Apache 2 handler module support via DSO through APXS... yes
checking for setproctitle... no
checking sys/pstat.h usability... no
checking sys/pstat.h presence... no
checking for sys/pstat.h... no
checking for PS_STRINGS... no
checking for CLI build... yes
checking for embedded SAPI library support... configure: error:
+--------------------------------------------------------------------+
| *** ATTENTION *** |
| |
| You've configured multiple SAPIs to be build. You can build only |
| one SAPI module plus CGI, CLI and FPM binaries at the same time. |
+--------------------------------------------------------------------+
Hi ponce,
thanks for testing. You're right, I now remember this message from a few years ago.
And, also my bad, I didn't look into the package on x86_64 but only slackwarearm where the Slackbuild does different things. Please apologize and thanks for the hint, I'll have a look
Hi , i inspectioning urwid package , we have python2 + python3 modules in the same package but python3 freezed under old version.
I suggest , move urwid under python2-collection , and urwid , containing python3 only and upgraded , or if no one use urwid python3 , we removed as "urwid" , and mantain py2 version unde collection.
I think urwid its used only by wicd , and that its support only python2.
mantain boot 2+3 , make some collision when other project need urwid for py3 (urwid module from -current are heavy old) , remove or split + upgrade py3 version.
python2 urwid .... only wicd uses
python3 urwid ---> alotkhal mitmproxy python-pudb python-urwidtrees s-tui todoman urlscan wikicurses bpython wifipukkin3 , and many more.
Thanks!
Last edited by USUARIONUEVO; 07-18-2020 at 04:25 PM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.