summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/a/shadow/adduser6
-rwxr-xr-xsource/a/shadow/shadow.SlackBuild2
-rw-r--r--source/a/sysvinit-scripts/scripts/rc.64
-rw-r--r--source/a/sysvinit-scripts/scripts/rc.K4
-rwxr-xr-xsource/a/sysvinit-scripts/sysvinit-scripts.SlackBuild2
-rwxr-xr-xsource/d/rust/rust.SlackBuild2
-rw-r--r--source/d/rust/rust.url2
-rw-r--r--source/d/subversion/slack-desc4
-rw-r--r--source/installer/ChangeLog.txt4
-rwxr-xr-xsource/installer/build_installer.sh3
-rwxr-xr-xsource/installer/sources/initrd/dev/mknodes.sh438
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.font25
-rw-r--r--source/k/kernel-configs/config-generic-4.14.57 (renamed from source/k/kernel-configs/config-generic-4.14.56)2
-rw-r--r--source/k/kernel-configs/config-generic-4.14.57.x64 (renamed from source/k/kernel-configs/config-generic-4.14.56.x64)2
-rw-r--r--source/k/kernel-configs/config-generic-smp-4.14.57-smp (renamed from source/k/kernel-configs/config-generic-smp-4.14.56-smp)2
-rw-r--r--source/k/kernel-configs/config-huge-4.14.57 (renamed from source/k/kernel-configs/config-huge-4.14.56)2
-rw-r--r--source/k/kernel-configs/config-huge-4.14.57.x64 (renamed from source/k/kernel-configs/config-huge-4.14.56.x64)2
-rw-r--r--source/k/kernel-configs/config-huge-smp-4.14.57-smp (renamed from source/k/kernel-configs/config-huge-smp-4.14.56-smp)2
-rwxr-xr-xsource/l/libzip/libzip.SlackBuild4
-rw-r--r--source/x/x11/build/xorg-server2
-rw-r--r--source/x/x11/configure/xf86-video-r12813
-rw-r--r--source/x/x11/patch/xorg-server.patch27
-rw-r--r--source/x/x11/patch/xorg-server/0001-Always-install-vbe-and-int10-sdk-headers.patch37
-rw-r--r--source/x/x11/patch/xorg-server/0001-autobind-GPUs-to-the-screen.patch293
-rw-r--r--source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch52
-rw-r--r--source/x/x11/patch/xorg-server/xserver-1-2-glamor-Always-return-0-from-glamor_fds_from_pixmap-on-error.patch54
-rw-r--r--source/x/x11/patch/xorg-server/xserver-2-2-glamor-Propagate-glamor_fds_from_pixmap-error-in-glamor_fd_from_pixmap.patch58
27 files changed, 782 insertions, 266 deletions
diff --git a/source/a/shadow/adduser b/source/a/shadow/adduser
index ce06aac5..482cb750 100644
--- a/source/a/shadow/adduser
+++ b/source/a/shadow/adduser
@@ -30,12 +30,14 @@
# Author : Stuart Winter <mozes@slackware.com>
# Based on the original Slackware adduser by Hrvoje Dogan
# with modifications by Patrick Volkerding
-# Version: 1.15
+# Version: 1.16
##########################################################################
# Usage..: adduser [<new_user_name>]
##########################################################################
# History #
###########
+# v1.16 - 2018-07-22
+# * Added input group. <pjv>
# v1.15 - 2012-09-13
# * Added scanner group, which may be required by third party drivers.
# v1.14 - 2012-08-24
@@ -112,7 +114,7 @@ defhome=/home
defshell=/bin/bash
defchmod=711 # home dir permissions - may be preferable to use 701, however.
defgroup=users
-AGID="audio cdrom floppy plugdev video power netdev lp scanner" # additional groups for desktop users
+AGID="audio cdrom floppy input lp netdev plugdev power scanner video" # additional groups for desktop users
# Determine what the minimum UID is (for UID recycling)
# (we ignore it if it's not at the beginning of the line (i.e. commented out with #))
diff --git a/source/a/shadow/shadow.SlackBuild b/source/a/shadow/shadow.SlackBuild
index 992944e8..d088c41d 100755
--- a/source/a/shadow/shadow.SlackBuild
+++ b/source/a/shadow/shadow.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=shadow
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | 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/a/sysvinit-scripts/scripts/rc.6 b/source/a/sysvinit-scripts/scripts/rc.6
index 8a993f5e..d71e3547 100644
--- a/source/a/sysvinit-scripts/scripts/rc.6
+++ b/source/a/sysvinit-scripts/scripts/rc.6
@@ -124,10 +124,10 @@ fi
# Kill any processes (typically gam) that would otherwise prevent
# unmounting NFS volumes:
unset FUSER_DELAY
-for dir in $(/bin/mount | grep 'type nfs ' | cut -d ' ' -f 3 ) ; do
+for dir in $(/bin/mount | grep 'type nfs ' | sed -e 's|.* on ||g' | cut -d ' ' -f 1) ; do
echo "Killing processes holding NFS mount $dir open..."
# Background this to prevent fuser from also blocking shutdown:
- /usr/bin/fuser -k -M -m $dir &
+ /usr/bin/fuser -k -M -m "$dir" &
FUSER_DELAY=5
done
# If fuser was run, let it have some delay:
diff --git a/source/a/sysvinit-scripts/scripts/rc.K b/source/a/sysvinit-scripts/scripts/rc.K
index 50b1702b..b8ed352d 100644
--- a/source/a/sysvinit-scripts/scripts/rc.K
+++ b/source/a/sysvinit-scripts/scripts/rc.K
@@ -60,10 +60,10 @@ fi
# Kill any processes (typically gam) that would otherwise prevent
# unmounting NFS volumes:
unset FUSER_DELAY
-for dir in $(/bin/mount | grep 'type nfs ' | cut -d ' ' -f 3 ) ; do
+for dir in $(/bin/mount | grep 'type nfs ' | sed -e 's|.* on ||g' | cut -d ' ' -f 1) ; do
echo "Killing processes holding NFS mount $dir open..."
# Background this to prevent fuser from also blocking shutdown:
- /usr/bin/fuser -k -M -m $dir &
+ /usr/bin/fuser -k -M -m "$dir" &
FUSER_DELAY=5
done
# If fuser was run, let it have some delay:
diff --git a/source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild b/source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild
index 607212e4..a810b150 100755
--- a/source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild
+++ b/source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=sysvinit-scripts
VERSION=${VERSION:-2.1}
ARCH=noarch
-BUILD=${BUILD:-13}
+BUILD=${BUILD:-14}
# 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
diff --git a/source/d/rust/rust.SlackBuild b/source/d/rust/rust.SlackBuild
index 0ac1fa86..8cc0ceda 100755
--- a/source/d/rust/rust.SlackBuild
+++ b/source/d/rust/rust.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=rust
SRCNAM="${PKGNAM}c"
-VERSION=${VERSION:-1.27.1}
+VERSION=${VERSION:-1.27.2}
BUILD=${BUILD:-1}
# Set this to YES to build with the system LLVM, or NO to use the bundled LLVM.
diff --git a/source/d/rust/rust.url b/source/d/rust/rust.url
index 69c52983..0c411bc1 100644
--- a/source/d/rust/rust.url
+++ b/source/d/rust/rust.url
@@ -1,5 +1,5 @@
# Source code (repacked to .tar.xz):
-lftpget https://static.rust-lang.org/dist/rustc-1.27.1-src.tar.gz
+lftpget https://static.rust-lang.org/dist/rustc-1.27.2-src.tar.gz
gzip -d rustc-*tar.gz
plzip -n 6 -9 -v rustc-*tar
diff --git a/source/d/subversion/slack-desc b/source/d/subversion/slack-desc
index 6ffc63e7..de2ef477 100644
--- a/source/d/subversion/slack-desc
+++ b/source/d/subversion/slack-desc
@@ -14,6 +14,6 @@ subversion: log of who, when, and why changes occurred, similar to other such
subversion: systems like CVS, RCS or SCCS. Subversion keeps all the information
subversion: to permit extracting previous versions of those files at any time.
subversion:
-subversion: For more information about the Subversion project, visit:
-subversion: http://subversion.apache.org
+subversion: Homepage: https://subversion.apache.org
+subversion:
subversion:
diff --git a/source/installer/ChangeLog.txt b/source/installer/ChangeLog.txt
index 36039105..adc0fb7e 100644
--- a/source/installer/ChangeLog.txt
+++ b/source/installer/ChangeLog.txt
@@ -1,3 +1,7 @@
+Wed Jul 25 03:29:26 UTC 2018
+ Use ter-v14v.psf.gz as the consolefont. It supports more character sets, and
+ the larger font was causing wraparound on UEFI (at least on bare metal here).
++--------------------------+
Fri Jun 22 23:38:50 UTC 2018
Added libaio (needed by lvm).
+--------------------------+
diff --git a/source/installer/build_installer.sh b/source/installer/build_installer.sh
index 6f5502b2..60aeb5b9 100755
--- a/source/installer/build_installer.sh
+++ b/source/installer/build_installer.sh
@@ -1010,8 +1010,7 @@ cp --remove-destination -fa${VERBOSE1} ${EXTRA_PKGS_USRBIN} \
cd $TMP/extract-packages/usr/share/kbd/consolefonts
mkdir -p $PKG/$ARCH-installer-filesystem/usr/share/kbd/consolefonts
cp --remove-destination -fa${VERBOSE1} \
- ter-c14v.psf.gz \
- ter-120b.psf.gz \
+ ter-v14v.psf.gz \
$PKG/$ARCH-installer-filesystem/usr/share/kbd/consolefonts
# Copy binaries from /usr/sbin into the installer's /usr/sbin/
diff --git a/source/installer/sources/initrd/dev/mknodes.sh b/source/installer/sources/initrd/dev/mknodes.sh
index 005e7bd5..9293c95e 100755
--- a/source/installer/sources/initrd/dev/mknodes.sh
+++ b/source/installer/sources/initrd/dev/mknodes.sh
@@ -1,416 +1,416 @@
# Run this script in the root of the skeleton tree
# to re-create the required device nodes
mkdir -p dev
-mknod -m 600 dev/tty3 c 4 3
+mknod -m 600 dev/arp c 16 1
mkdir -p dev
-mknod -m 660 dev/hdj b 56 64
+mknod -m 644 dev/atibm c 10 3
mkdir -p dev
-mknod -m 660 dev/hdt b 91 64
+mknod -m 644 dev/audio c 14 4
mkdir -p dev
-mknod -m 660 dev/md15 b 9 15
+mknod -m 644 dev/audio1 c 14 20
mkdir -p dev
-mknod -m 640 dev/sr4 b 11 4
+mknod -m 640 dev/aztcd b 29 0
mkdir -p dev
-mknod -m 644 dev/ptyp2 c 2 2
+mknod -m 640 dev/bpcd b 41 0
mkdir -p dev
mknod -m 640 dev/cdu535 b 24 0
mkdir -p dev
-mknod -m 600 dev/tcp c 18 3
+mknod -m 640 dev/cm206cd b 32 0
mkdir -p dev
-mknod -m 644 dev/psaux c 10 1
+mknod -m 600 dev/console c 5 1
mkdir -p dev
-mknod -m 640 dev/sjcd b 18 0
+mknod -m 640 dev/cua0 c 5 64
mkdir -p dev
-mknod -m 644 dev/tty9 c 4 9
+mknod -m 640 dev/cua1 c 5 65
mkdir -p dev
-mknod -m 640 dev/fd1h1200 b 2 9
+mknod -m 640 dev/cua2 c 5 66
mkdir -p dev
-mknod -m 600 dev/sgb c 21 1
+mknod -m 640 dev/cua3 c 5 67
mkdir -p dev
-mknod -m 640 dev/rmt16 c 12 8
+mknod -m 640 dev/cua4 c 5 68
mkdir -p dev
-mknod -m 640 dev/ttyS0 c 4 64
+mknod -m 640 dev/eda b 36 0
mkdir -p dev
-mknod -m 660 dev/hdn b 88 64
+mknod -m 640 dev/eda1 b 36 1
mkdir -p dev
-mknod -m 640 dev/fd0h1200 b 2 8
+mknod -m 640 dev/eda2 b 36 2
mkdir -p dev
-mknod -m 600 dev/ip c 18 1
+mknod -m 640 dev/eda3 b 36 3
mkdir -p dev
-mknod -m 640 dev/fd1h1440 b 2 41
+mknod -m 640 dev/eda4 b 36 4
mkdir -p dev
-mknod -m 700 dev/tty1 c 4 1
+mknod -m 640 dev/eda5 b 36 5
mkdir -p dev
-mknod -m 640 dev/tape-reset c 12 255
+mknod -m 640 dev/eda6 b 36 6
mkdir -p dev
-mknod -m 640 dev/eda1 b 36 1
+mknod -m 640 dev/eda7 b 36 7
mkdir -p dev
-mknod -m 640 dev/cm206cd b 32 0
+mknod -m 640 dev/eda8 b 36 8
mkdir -p dev
-mknod -m 660 dev/parport3 c 99 3
+mknod -m 640 dev/eda9 b 36 9
mkdir -p dev
-mknod -m 640 dev/sr1 b 11 1
+mknod -m 640 dev/fd0 b 2 0
mkdir -p dev
-mknod -m 660 dev/hdo b 89 0
+mknod -m 640 dev/fd0h1200 b 2 8
mkdir -p dev
-mknod -m 640 dev/tape-d c 12 136
+mknod -m 640 dev/fd0h1440 b 2 40
mkdir -p dev
-mknod -m 660 dev/hdq b 90 0
+mknod -m 640 dev/fd0u1440 b 2 28
mkdir -p dev
-mknod -m 640 dev/st1 c 9 1
+mknod -m 660 dev/fd0u1680 b 2 44
mkdir -p dev
-mknod -m 640 dev/optcd0 b 17 0
+mknod -m 660 dev/fd0u1722 b 2 60
mkdir -p dev
-mknod -m 640 dev/sr3 b 11 3
+mknod -m 640 dev/fd1 b 2 1
mkdir -p dev
-mknod -m 640 dev/cua0 c 5 64
+mknod -m 640 dev/fd1h1200 b 2 9
mkdir -p dev
-mknod -m 644 dev/urandom c 1 9
+mknod -m 640 dev/fd1h1440 b 2 41
mkdir -p dev
-mknod -m 644 dev/tty c 5 0
+mknod -m 640 dev/fd1u1440 b 2 29
mkdir -p dev
-mknod -m 640 dev/fd0 b 2 0
+mknod -m 644 dev/full c 1 7
mkdir -p dev
-mknod -m 640 dev/eda b 36 0
+mknod -m 640 dev/gscd0 b 16 0
mkdir -p dev
-mknod -m 640 dev/eda5 b 36 5
+mknod -m 660 dev/hda b 3 0
mkdir -p dev
-mknod -m 660 dev/md2 b 9 2
+mknod -m 660 dev/hdb b 3 64
mkdir -p dev
-mknod -m 600 dev/tty2 c 4 2
+mknod -m 660 dev/hdc b 22 0
mkdir -p dev
-mknod -m 644 dev/ptyp4 c 2 4
+mknod -m 660 dev/hdd b 22 64
mkdir -p dev
-mknod -m 600 dev/console c 5 1
+mknod -m 660 dev/hde b 33 0
mkdir -p dev
-mknod -m 660 dev/md1 b 9 1
+mknod -m 660 dev/hdf b 33 64
mkdir -p dev
-mknod -m 640 dev/par0 c 6 0
+mknod -m 660 dev/hdg b 34 0
mkdir -p dev
-mknod -m 644 dev/tty7 c 4 7
+mknod -m 660 dev/hdh b 34 64
mkdir -p dev
-mknod -m 644 dev/random c 1 8
+mknod -m 660 dev/hdi b 56 0
mkdir -p dev
-mknod -m 640 dev/par2 c 6 2
+mknod -m 660 dev/hdj b 56 64
mkdir -p dev
-mknod -m 640 dev/lmscd b 24 0
+mknod -m 660 dev/hdk b 57 0
mkdir -p dev
-mknod -m 640 dev/sr0 b 11 0
+mknod -m 660 dev/hdl b 57 64
mkdir -p dev
-mknod -m 640 dev/eda8 b 36 8
+mknod -m 660 dev/hdm b 88 0
mkdir -p dev
-mknod -m 660 dev/hdh b 34 64
+mknod -m 660 dev/hdn b 88 64
mkdir -p dev
-mknod -m 640 dev/sbpcd0 b 25 0
+mknod -m 660 dev/hdo b 89 0
mkdir -p dev
-mknod -m 660 dev/hdm b 88 0
+mknod -m 660 dev/hdp b 89 64
mkdir -p dev
-mknod -m 640 dev/pf2 b 47 2
+mknod -m 660 dev/hdq b 90 0
mkdir -p dev
-mknod -m 640 dev/cua2 c 5 66
+mknod -m 660 dev/hdr b 90 64
mkdir -p dev
-mknod -m 600 dev/sga c 21 0
+mknod -m 660 dev/hds b 91 0
mkdir -p dev
-mknod -m 640 dev/pda5 b 45 5
+mknod -m 660 dev/hdt b 91 64
mkdir -p dev
-mknod -m 640 dev/ttyS2 c 4 66
+mknod -m 600 dev/icmp c 18 2
+mkdir -p dev/inet
+mknod -m 644 dev/inet/egp c 30 37
+mkdir -p dev/inet
+mknod -m 644 dev/inet/ggp c 30 34
+mkdir -p dev/inet
+mknod -m 644 dev/inet/icmp c 30 33
+mkdir -p dev/inet
+mknod -m 644 dev/inet/idp c 30 40
+mkdir -p dev/inet
+mknod -m 644 dev/inet/ip c 30 32
+mkdir -p dev/inet
+mknod -m 644 dev/inet/ipip c 30 35
+mkdir -p dev/inet
+mknod -m 644 dev/inet/pup c 30 38
+mkdir -p dev/inet
+mknod -m 644 dev/inet/rawip c 30 41
+mkdir -p dev/inet
+mknod -m 644 dev/inet/tcp c 30 36
+mkdir -p dev/inet
+mknod -m 644 dev/inet/udp c 30 39
mkdir -p dev
-mknod -m 640 dev/mcdx1 b 20 1
+mknod -m 644 dev/inportbm c 10 2
+mkdir -p dev/input
+mknod -m 644 dev/input/event0 c 13 64
+mkdir -p dev/input
+mknod -m 644 dev/input/js0 c 13 0
+mkdir -p dev/input
+mknod -m 660 dev/input/keyboard c 10 150
+mkdir -p dev/input
+mknod -m 644 dev/input/mice c 13 63
+mkdir -p dev/input
+mknod -m 660 dev/input/mouse c 10 149
+mkdir -p dev/input
+mknod -m 644 dev/input/mouse0 c 13 32
mkdir -p dev
-mknod -m 644 dev/ttyp4 c 3 4
+mknod -m 600 dev/ip c 18 1
mkdir -p dev
mknod -m 640 dev/kmem c 1 2
mkdir -p dev
-mknod -m 640 dev/eda2 b 36 2
+mknod -m 640 dev/lmscd b 24 0
mkdir -p dev
-mknod -m 644 dev/ttyp8 c 3 8
+mknod -m 644 dev/logibm c 10 0
mkdir -p dev
-mknod -m 600 dev/icmp c 18 2
+mknod -m 660 dev/loop0 b 7 0
mkdir -p dev
-mknod -m 640 dev/scd4 b 11 4
+mknod -m 660 dev/loop1 b 7 1
mkdir -p dev
-mknod -m 660 dev/md13 b 9 13
+mknod -m 660 dev/loop3 b 7 3
mkdir -p dev
-mknod -m 640 dev/sbpcd1 b 25 1
+mknod -m 660 dev/loop4 b 7 4
mkdir -p dev
-mknod -m 640 dev/pcd0 b 46 0
+mknod -m 640 dev/lp0 c 6 0
mkdir -p dev
-mknod -m 640 dev/rmt8 c 12 6
+mknod -m 640 dev/mcd b 23 0
mkdir -p dev
-mknod -m 660 dev/hdc b 22 0
+mknod -m 640 dev/mcdx0 b 20 0
mkdir -p dev
-mknod -m 644 dev/logibm c 10 0
+mknod -m 640 dev/mcdx1 b 20 1
mkdir -p dev
-mknod -m 640 dev/scd1 b 11 1
+mknod -m 660 dev/md0 b 9 0
+mkdir -p dev
+mknod -m 660 dev/md1 b 9 1
mkdir -p dev
mknod -m 660 dev/md10 b 9 10
mkdir -p dev
-mknod -m 660 dev/hds b 91 0
+mknod -m 660 dev/md11 b 9 11
mkdir -p dev
-mknod -m 660 dev/hdl b 57 64
+mknod -m 660 dev/md12 b 9 12
mkdir -p dev
-mknod -m 644 dev/socksys c 30 0
+mknod -m 660 dev/md13 b 9 13
mkdir -p dev
-mknod -m 600 dev/tty6 c 4 6
+mknod -m 660 dev/md14 b 9 14
mkdir -p dev
-mknod -m 660 dev/loop1 b 7 1
+mknod -m 660 dev/md15 b 9 15
mkdir -p dev
-mknod -m 640 dev/bpcd b 41 0
+mknod -m 660 dev/md2 b 9 2
mkdir -p dev
mknod -m 660 dev/md3 b 9 3
mkdir -p dev
-mknod -m 640 dev/scd0 b 11 0
-mkdir -p dev
-mknod -m 644 dev/ptyp3 c 2 3
-mkdir -p dev
-mknod -m 640 dev/pf0 b 47 0
-mkdir -p dev
-mknod -m 640 dev/gscd0 b 16 0
-mkdir -p dev
-mknod -m 640 dev/fd0h1440 b 2 40
+mknod -m 660 dev/md4 b 9 4
mkdir -p dev
-mknod -m 660 dev/hdi b 56 0
+mknod -m 660 dev/md5 b 9 5
mkdir -p dev
-mknod -m 640 dev/cua4 c 5 68
+mknod -m 660 dev/md6 b 9 6
mkdir -p dev
-mknod -m 660 dev/md12 b 9 12
+mknod -m 660 dev/md7 b 9 7
mkdir -p dev
mknod -m 660 dev/md8 b 9 8
mkdir -p dev
-mknod -m 640 dev/scd2 b 11 2
-mkdir -p dev
-mknod -m 640 dev/mcdx0 b 20 0
-mkdir -p dev
-mknod -m 640 dev/sbpcd b 25 0
+mknod -m 660 dev/md9 b 9 9
mkdir -p dev
-mknod -m 660 dev/md5 b 9 5
+mknod -m 640 dev/mem c 1 1
mkdir -p dev
-mknod -m 600 dev/sgd c 21 3
+mknod -m 640 dev/nrft0 c 27 4
mkdir -p dev
-mknod -m 644 dev/atibm c 10 3
+mknod -m 640 dev/nst0 c 9 128
mkdir -p dev
-mknod -m 644 dev/ptyp6 c 2 6
+mknod -m 640 dev/nst1 c 9 129
mkdir -p dev
mknod -m 644 dev/null c 1 3
mkdir -p dev
-mknod -m 600 dev/udp c 18 4
+mknod -m 640 dev/optcd0 b 17 0
mkdir -p dev
-mknod -m 660 dev/md9 b 9 9
+mknod -m 640 dev/par0 c 6 0
mkdir -p dev
-mknod -m 660 dev/fd0u1680 b 2 44
+mknod -m 640 dev/par1 c 6 1
mkdir -p dev
-mknod -m 640 dev/port c 1 4
+mknod -m 640 dev/par2 c 6 2
mkdir -p dev
-mknod -m 640 dev/rft0 c 27 0
+mknod -m 660 dev/parport0 c 99 0
mkdir -p dev
-mknod -m 640 dev/st0 c 9 0
+mknod -m 660 dev/parport1 c 99 1
mkdir -p dev
-mknod -m 640 dev/ram1 b 1 1
-mkdir -p dev/input
-mknod -m 644 dev/input/mice c 13 63
-mkdir -p dev/input
-mknod -m 660 dev/input/keyboard c 10 150
-mkdir -p dev/input
-mknod -m 644 dev/input/event0 c 13 64
-mkdir -p dev/input
-mknod -m 660 dev/input/mouse c 10 149
-mkdir -p dev/input
-mknod -m 644 dev/input/js0 c 13 0
-mkdir -p dev/input
-mknod -m 644 dev/input/mouse0 c 13 32
+mknod -m 660 dev/parport2 c 99 2
mkdir -p dev
-mknod -m 640 dev/eda6 b 36 6
+mknod -m 660 dev/parport3 c 99 3
mkdir -p dev
-mknod -m 640 dev/pcd3 b 46 3
+mknod -m 640 dev/pcd0 b 46 0
mkdir -p dev
-mknod -m 640 dev/pf3 b 47 3
+mknod -m 640 dev/pcd1 b 46 1
mkdir -p dev
mknod -m 640 dev/pcd2 b 46 2
mkdir -p dev
-mknod -m 640 dev/cua1 c 5 65
+mknod -m 640 dev/pcd3 b 46 3
mkdir -p dev
-mknod -m 644 dev/zero c 1 5
+mknod -m 640 dev/pda b 45 0
mkdir -p dev
-mknod -m 660 dev/parport2 c 99 2
+mknod -m 640 dev/pda1 b 45 1
mkdir -p dev
-mknod -m 644 dev/inportbm c 10 2
+mknod -m 640 dev/pda2 b 45 2
mkdir -p dev
-mknod -m 644 dev/tty8 c 4 8
+mknod -m 640 dev/pda3 b 45 3
mkdir -p dev
-mknod -m 640 dev/sonycd b 15 0
+mknod -m 640 dev/pda4 b 45 4
mkdir -p dev
-mknod -m 600 dev/arp c 16 1
+mknod -m 640 dev/pda5 b 45 5
mkdir -p dev
-mknod -m 600 dev/sgf c 21 5
+mknod -m 640 dev/pda6 b 45 6
mkdir -p dev
-mknod -m 644 dev/full c 1 7
+mknod -m 640 dev/pf0 b 47 0
mkdir -p dev
-mknod -m 600 dev/sge c 21 4
+mknod -m 640 dev/pf1 b 47 1
mkdir -p dev
-mknod -m 644 dev/ptyp7 c 2 7
+mknod -m 640 dev/pf2 b 47 2
mkdir -p dev
-mknod -m 660 dev/loop3 b 7 3
+mknod -m 640 dev/pf3 b 47 3
mkdir -p dev
-mknod -m 640 dev/cua3 c 5 67
+mknod -m 640 dev/port c 1 4
+mkdir -p dev
+mknod -m 644 dev/psaux c 10 1
mkdir -p dev
mknod -m 644 dev/ptyp0 c 2 0
mkdir -p dev
-mknod -m 600 dev/socket c 16 0
+mknod -m 644 dev/ptyp1 c 2 1
mkdir -p dev
-mknod -m 640 dev/par1 c 6 1
+mknod -m 644 dev/ptyp2 c 2 2
mkdir -p dev
-mknod -m 640 dev/nst0 c 9 128
+mknod -m 644 dev/ptyp3 c 2 3
mkdir -p dev
-mknod -m 640 dev/pcd1 b 46 1
+mknod -m 644 dev/ptyp4 c 2 4
mkdir -p dev
-mknod -m 700 dev/ttyp1 c 3 1
+mknod -m 644 dev/ptyp5 c 2 5
mkdir -p dev
-mknod -m 600 dev/tty4 c 4 4
+mknod -m 644 dev/ptyp6 c 2 6
mkdir -p dev
-mknod -m 640 dev/eda7 b 36 7
+mknod -m 644 dev/ptyp7 c 2 7
mkdir -p dev
-mknod -m 660 dev/parport1 c 99 1
+mknod -m 644 dev/ptyp8 c 2 8
mkdir -p dev
-mknod -m 600 dev/ttyp3 c 3 3
+mknod -m 640 dev/ram0 b 1 0
mkdir -p dev
-mknod -m 640 dev/nrft0 c 27 4
+mknod -m 640 dev/ram1 b 1 1
mkdir -p dev
-mknod -m 640 dev/ttyS4 c 4 68
+mknod -m 644 dev/random c 1 8
mkdir -p dev
-mknod -m 640 dev/ram0 b 1 0
+mknod -m 640 dev/rft0 c 27 0
mkdir -p dev
-mknod -m 640 dev/nst1 c 9 129
+mknod -m 640 dev/rmt16 c 12 8
mkdir -p dev
-mknod -m 644 dev/audio c 14 4
+mknod -m 640 dev/rmt8 c 12 6
mkdir -p dev
-mknod -m 644 dev/ptyp8 c 2 8
+mknod -m 640 dev/sbpcd b 25 0
mkdir -p dev
-mknod -m 660 dev/loop4 b 7 4
+mknod -m 640 dev/sbpcd0 b 25 0
mkdir -p dev
-mknod -m 600 dev/tty5 c 4 5
+mknod -m 640 dev/sbpcd1 b 25 1
mkdir -p dev
-mknod -m 660 dev/md6 b 9 6
+mknod -m 640 dev/scd0 b 11 0
mkdir -p dev
-mknod -m 640 dev/scd3 b 11 3
+mknod -m 640 dev/scd1 b 11 1
mkdir -p dev
-mknod -m 640 dev/pda b 45 0
+mknod -m 640 dev/scd2 b 11 2
mkdir -p dev
-mknod -m 644 dev/ptyp1 c 2 1
+mknod -m 640 dev/scd3 b 11 3
mkdir -p dev
-mknod -m 640 dev/fd1u1440 b 2 29
+mknod -m 640 dev/scd4 b 11 4
mkdir -p dev
-mknod -m 640 dev/eda4 b 36 4
+mknod -m 600 dev/sga c 21 0
+mkdir -p dev
+mknod -m 600 dev/sgb c 21 1
mkdir -p dev
mknod -m 600 dev/sgc c 21 2
mkdir -p dev
-mknod -m 640 dev/pda3 b 45 3
+mknod -m 600 dev/sgd c 21 3
mkdir -p dev
-mknod -m 660 dev/hdf b 33 64
+mknod -m 600 dev/sge c 21 4
mkdir -p dev
-mknod -m 640 dev/ttyS1 c 4 65
+mknod -m 600 dev/sgf c 21 5
mkdir -p dev
-mknod -m 640 dev/pda6 b 45 6
+mknod -m 600 dev/sgg c 21 6
mkdir -p dev
-mknod -m 660 dev/md7 b 9 7
+mknod -m 600 dev/sgh c 21 7
mkdir -p dev
-mknod -m 640 dev/lp0 c 6 0
+mknod -m 640 dev/sjcd b 18 0
mkdir -p dev
-mknod -m 640 dev/eda9 b 36 9
+mknod -m 600 dev/socket c 16 0
mkdir -p dev
-mknod -m 660 dev/hde b 33 0
+mknod -m 644 dev/socksys c 30 0
mkdir -p dev
-mknod -m 660 dev/md4 b 9 4
+mknod -m 640 dev/sonycd b 15 0
mkdir -p dev
-mknod -m 640 dev/mem c 1 1
+mknod -m 644 dev/spx c 30 1
mkdir -p dev
-mknod -m 640 dev/fd1 b 2 1
+mknod -m 640 dev/sr0 b 11 0
mkdir -p dev
-mknod -m 644 dev/ttyp7 c 3 7
+mknod -m 640 dev/sr1 b 11 1
mkdir -p dev
-mknod -m 700 dev/ttyp2 c 3 2
+mknod -m 640 dev/sr2 b 11 2
mkdir -p dev
-mknod -m 660 dev/hdg b 34 0
+mknod -m 640 dev/sr3 b 11 3
mkdir -p dev
-mknod -m 660 dev/hdk b 57 0
+mknod -m 640 dev/sr4 b 11 4
mkdir -p dev
-mknod -m 644 dev/spx c 30 1
+mknod -m 640 dev/st0 c 9 0
mkdir -p dev
-mknod -m 660 dev/md14 b 9 14
+mknod -m 640 dev/st1 c 9 1
mkdir -p dev
-mknod -m 600 dev/sgg c 21 6
+mknod -m 640 dev/tape-d c 12 136
mkdir -p dev
-mknod -m 660 dev/hda b 3 0
+mknod -m 640 dev/tape-reset c 12 255
mkdir -p dev
-mknod -m 640 dev/mcd b 23 0
+mknod -m 600 dev/tcp c 18 3
mkdir -p dev
-mknod -m 640 dev/pda4 b 45 4
-mkdir -p dev/inet
-mknod -m 644 dev/inet/tcp c 30 36
-mkdir -p dev/inet
-mknod -m 644 dev/inet/ip c 30 32
-mkdir -p dev/inet
-mknod -m 644 dev/inet/icmp c 30 33
-mkdir -p dev/inet
-mknod -m 644 dev/inet/egp c 30 37
-mkdir -p dev/inet
-mknod -m 644 dev/inet/idp c 30 40
-mkdir -p dev/inet
-mknod -m 644 dev/inet/udp c 30 39
-mkdir -p dev/inet
-mknod -m 644 dev/inet/pup c 30 38
-mkdir -p dev/inet
-mknod -m 644 dev/inet/rawip c 30 41
-mkdir -p dev/inet
-mknod -m 644 dev/inet/ggp c 30 34
-mkdir -p dev/inet
-mknod -m 644 dev/inet/ipip c 30 35
+mknod -m 644 dev/tty c 5 0
mkdir -p dev
-mknod -m 644 dev/ptyp5 c 2 5
+mknod -m 600 dev/tty0 c 4 0
mkdir -p dev
-mknod -m 660 dev/hdb b 3 64
+mknod -m 700 dev/tty1 c 4 1
mkdir -p dev
-mknod -m 660 dev/hdr b 90 64
+mknod -m 600 dev/tty2 c 4 2
mkdir -p dev
-mknod -m 660 dev/hdd b 22 64
+mknod -m 600 dev/tty3 c 4 3
mkdir -p dev
-mknod -m 640 dev/pda1 b 45 1
+mknod -m 600 dev/tty4 c 4 4
mkdir -p dev
-mknod -m 640 dev/fd0u1440 b 2 28
+mknod -m 600 dev/tty5 c 4 5
mkdir -p dev
-mknod -m 640 dev/eda3 b 36 3
+mknod -m 600 dev/tty6 c 4 6
mkdir -p dev
-mknod -m 660 dev/fd0u1722 b 2 60
+mknod -m 644 dev/tty7 c 4 7
mkdir -p dev
-mknod -m 600 dev/unix c 17 0
+mknod -m 644 dev/tty8 c 4 8
mkdir -p dev
-mknod -m 640 dev/pf1 b 47 1
+mknod -m 644 dev/tty9 c 4 9
mkdir -p dev
-mknod -m 640 dev/sr2 b 11 2
+mknod -m 640 dev/ttyS0 c 4 64
mkdir -p dev
-mknod -m 660 dev/md0 b 9 0
+mknod -m 640 dev/ttyS1 c 4 65
mkdir -p dev
-mknod -m 640 dev/aztcd b 29 0
+mknod -m 640 dev/ttyS2 c 4 66
mkdir -p dev
-mknod -m 640 dev/pda2 b 45 2
+mknod -m 640 dev/ttyS3 c 4 67
mkdir -p dev
-mknod -m 660 dev/parport0 c 99 0
+mknod -m 640 dev/ttyS4 c 4 68
mkdir -p dev
-mknod -m 660 dev/loop0 b 7 0
+mknod -m 644 dev/ttyp0 c 3 0
mkdir -p dev
-mknod -m 660 dev/md11 b 9 11
+mknod -m 700 dev/ttyp1 c 3 1
mkdir -p dev
-mknod -m 640 dev/ttyS3 c 4 67
+mknod -m 700 dev/ttyp2 c 3 2
+mkdir -p dev
+mknod -m 600 dev/ttyp3 c 3 3
+mkdir -p dev
+mknod -m 644 dev/ttyp4 c 3 4
+mkdir -p dev
+mknod -m 644 dev/ttyp5 c 3 5
mkdir -p dev
mknod -m 644 dev/ttyp6 c 3 6
mkdir -p dev
-mknod -m 600 dev/sgh c 21 7
+mknod -m 644 dev/ttyp7 c 3 7
mkdir -p dev
-mknod -m 644 dev/audio1 c 14 20
+mknod -m 644 dev/ttyp8 c 3 8
mkdir -p dev
-mknod -m 660 dev/hdp b 89 64
+mknod -m 600 dev/udp c 18 4
mkdir -p dev
-mknod -m 644 dev/ttyp0 c 3 0
+mknod -m 600 dev/unix c 17 0
mkdir -p dev
-mknod -m 600 dev/tty0 c 4 0
+mknod -m 644 dev/urandom c 1 9
mkdir -p dev
-mknod -m 644 dev/ttyp5 c 3 5
+mknod -m 644 dev/zero c 1 5
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.font b/source/installer/sources/initrd/etc/rc.d/rc.font
index 69e69baa..7d4d75ba 100755
--- a/source/installer/sources/initrd/etc/rc.d/rc.font
+++ b/source/installer/sources/initrd/etc/rc.d/rc.font
@@ -27,19 +27,22 @@ create_tty() {
}
if ! grep -wq nofont /proc/cmdline ; then
- if [ ! "$(cat /proc/fb)" = "" ] ; then
- if [ -r /usr/share/kbd/consolefonts/ter-120b.psf.gz ]; then
+# Commented out this next section because it leads to too big a font on a UEFI
+# framebuffer. It's possible that it would be a correct font for other fb
+# console types, but it's just safer to go with the smaller choice.
+# if [ ! "$(cat /proc/fb)" = "" ] ; then
+# if [ -r /usr/share/kbd/consolefonts/ter-120b.psf.gz ]; then
+# create_tty
+# for tty in /dev/tty{1,2,3,4} ; do
+# setfont -C $tty /usr/share/kbd/consolefonts/ter-120b.psf.gz
+# done
+# fi
+# else
+ if [ -r /usr/share/kbd/consolefonts/ter-v14v.psf.gz ]; then
create_tty
for tty in /dev/tty{1,2,3,4} ; do
- setfont -C $tty /usr/share/kbd/consolefonts/ter-120b.psf.gz
+ setfont -C $tty /usr/share/kbd/consolefonts/ter-v14v.psf.gz
done
fi
- else
- if [ -r /usr/share/kbd/consolefonts/ter-c14v.psf.gz ]; then
- create_tty
- for tty in /dev/tty{1,2,3,4} ; do
- setfont -C $tty /usr/share/kbd/consolefonts/ter-c14v.psf.gz
- done
- fi
- fi
+# fi
fi
diff --git a/source/k/kernel-configs/config-generic-4.14.56 b/source/k/kernel-configs/config-generic-4.14.57
index 0cb7950e..f12f1a05 100644
--- a/source/k/kernel-configs/config-generic-4.14.56
+++ b/source/k/kernel-configs/config-generic-4.14.57
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
diff --git a/source/k/kernel-configs/config-generic-4.14.56.x64 b/source/k/kernel-configs/config-generic-4.14.57.x64
index e72cbe10..9349c56d 100644
--- a/source/k/kernel-configs/config-generic-4.14.56.x64
+++ b/source/k/kernel-configs/config-generic-4.14.57.x64
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
diff --git a/source/k/kernel-configs/config-generic-smp-4.14.56-smp b/source/k/kernel-configs/config-generic-smp-4.14.57-smp
index 369e22d3..ce25c046 100644
--- a/source/k/kernel-configs/config-generic-smp-4.14.56-smp
+++ b/source/k/kernel-configs/config-generic-smp-4.14.57-smp
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
diff --git a/source/k/kernel-configs/config-huge-4.14.56 b/source/k/kernel-configs/config-huge-4.14.57
index 40ef28fd..7f9c404e 100644
--- a/source/k/kernel-configs/config-huge-4.14.56
+++ b/source/k/kernel-configs/config-huge-4.14.57
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
diff --git a/source/k/kernel-configs/config-huge-4.14.56.x64 b/source/k/kernel-configs/config-huge-4.14.57.x64
index f1cc5c38..76a61560 100644
--- a/source/k/kernel-configs/config-huge-4.14.56.x64
+++ b/source/k/kernel-configs/config-huge-4.14.57.x64
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
diff --git a/source/k/kernel-configs/config-huge-smp-4.14.56-smp b/source/k/kernel-configs/config-huge-smp-4.14.57-smp
index 4781b3c6..0da7f02c 100644
--- a/source/k/kernel-configs/config-huge-smp-4.14.56-smp
+++ b/source/k/kernel-configs/config-huge-smp-4.14.57-smp
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.14.56 Kernel Configuration
+# Linux/x86 4.14.57 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
diff --git a/source/l/libzip/libzip.SlackBuild b/source/l/libzip/libzip.SlackBuild
index 034d35ab..8925a86a 100755
--- a/source/l/libzip/libzip.SlackBuild
+++ b/source/l/libzip/libzip.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libzip
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
@@ -112,7 +112,7 @@ fi
mkdir -p $PKG/usr/doc/libzip-$VERSION
cp -a \
- AUTHORS* COPYING* INSTALL* NEWS* README* THANKS* TODO* \
+ API-CHANGES* AUTHORS* COPYING* INSTALL* NEWS* README* THANKS* TODO* \
$PKG/usr/doc/libzip-$VERSION
mkdir -p $PKG/install
diff --git a/source/x/x11/build/xorg-server b/source/x/x11/build/xorg-server
index 0cfbf088..00750edc 100644
--- a/source/x/x11/build/xorg-server
+++ b/source/x/x11/build/xorg-server
@@ -1 +1 @@
-2
+3
diff --git a/source/x/x11/configure/xf86-video-r128 b/source/x/x11/configure/xf86-video-r128
deleted file mode 100644
index 291eb9b9..00000000
--- a/source/x/x11/configure/xf86-video-r128
+++ /dev/null
@@ -1,13 +0,0 @@
-CFLAGS=$SLKCFLAGS \
-CXXFLAGS=$SLKCFLAGS \
-./autogen.sh \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --infodir=/usr/info \
- --mandir=/usr/man \
- --docdir=/usr/doc/${PKGNAME}-${MODULAR_PACKAGE_VERSION} \
- --with-udev-rules-dir=/lib/udev/rules.d \
- --disable-static \
- --build=$ARCH-slackware-linux
diff --git a/source/x/x11/patch/xorg-server.patch b/source/x/x11/patch/xorg-server.patch
index cdd0ebd8..bd48d5a0 100644
--- a/source/x/x11/patch/xorg-server.patch
+++ b/source/x/x11/patch/xorg-server.patch
@@ -1,3 +1,30 @@
+# We've used this one forever.
zcat $CWD/patch/xorg-server/x11.startwithblackscreen.diff.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# Without this patch, combo mouse/keyboard (such as Logitech through unified
+# receiver) may be unable to set the desired keyboard layout.
zcat $CWD/patch/xorg-server/xorg-server.combo.mouse.keyboard.layout.patch.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# Fix a segfault in xorg-server-1.20.0. Odds are good this will be fixed in
+# the next xorg-server and will no longer apply then.
zcat $CWD/patch/xorg-server/fix-nouveau-segfault.diff.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# From Fedora Rawhide 2018/7 (possibly useful, doesn't seem like it will hurt anything):
+zcat $CWD/patch/xorg-server/0001-Always-install-vbe-and-int10-sdk-headers.patch.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# From Fedora Rawhide 2018/7, looks like many other distributions have added
+# this patch for a long time. Keep an eye out for newer versions though, and
+# revisit this if any DE begin to manage secondary GPUs (although none do yet):
+zcat $CWD/patch/xorg-server/0001-autobind-GPUs-to-the-screen.patch.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# The upstream nouveau developers recommend this. On newer nvidia cards it works
+# better to use the generic modesetting ddx rather than nouveau.
+# Reference: https://bugs.freedesktop.org/show_bug.cgi?id=94844
+# Added here 2018/7.
+zcat $CWD/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+
+# Glamor patches that synchronize what the drivers and server expect. Written by
+# one of the ATI devs, so might improve things with that driver, but be on the
+# lookout for issues. Added 2018/7.
+zcat $CWD/patch/xorg-server/xserver-1-2-glamor-Always-return-0-from-glamor_fds_from_pixmap-on-error.patch.gz| patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+zcat $CWD/patch/xorg-server/xserver-2-2-glamor-Propagate-glamor_fds_from_pixmap-error-in-glamor_fd_from_pixmap.patch.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/x/x11/patch/xorg-server/0001-Always-install-vbe-and-int10-sdk-headers.patch b/source/x/x11/patch/xorg-server/0001-Always-install-vbe-and-int10-sdk-headers.patch
new file mode 100644
index 00000000..c613eb8f
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/0001-Always-install-vbe-and-int10-sdk-headers.patch
@@ -0,0 +1,37 @@
+From e96a83d9b1b5a52a41213c7a4840dc96b4f5b06f Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Wed, 15 Aug 2012 12:35:21 -0400
+Subject: [PATCH] Always install vbe and int10 sdk headers
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+ hw/xfree86/Makefile.am | 12 ++----------
+ 1 file changed, 2 insertions(+), 10 deletions(-)
+
+diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am
+index b876b79..a170b58 100644
+--- a/hw/xfree86/Makefile.am
++++ b/hw/xfree86/Makefile.am
+@@ -26,17 +26,9 @@ if VGAHW
+ VGAHW_SUBDIR = vgahw
+ endif
+
+-if VBE
+-VBE_SUBDIR = vbe
+-endif
+-
+-if INT10MODULE
+-INT10_SUBDIR = int10
+-endif
+-
+-SUBDIRS = common ddc x86emu $(INT10_SUBDIR) os-support parser \
++SUBDIRS = common ddc x86emu int10 os-support parser \
+ ramdac $(VGAHW_SUBDIR) loader modes $(DRI_SUBDIR) \
+- $(DRI2_SUBDIR) . $(VBE_SUBDIR) i2c dixmods xkb \
++ $(DRI2_SUBDIR) . vbe i2c dixmods xkb \
+ fbdevhw shadowfb exa $(XF86UTILS_SUBDIR) doc man \
+ $(GLAMOR_EGL_SUBDIR) drivers
+
+--
+2.13.6
+
diff --git a/source/x/x11/patch/xorg-server/0001-autobind-GPUs-to-the-screen.patch b/source/x/x11/patch/xorg-server/0001-autobind-GPUs-to-the-screen.patch
new file mode 100644
index 00000000..86b96a23
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/0001-autobind-GPUs-to-the-screen.patch
@@ -0,0 +1,293 @@
+From 471289fa1dc359555ceed6302f7d9605ab6be3ea Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 2 Apr 2018 16:49:02 -0400
+Subject: [PATCH] autobind GPUs to the screen
+
+This is a modified version of a patch we've been carry-ing in Fedora and
+RHEL for years now. This patch automatically adds secondary GPUs to the
+master as output sink / offload source making e.g. the use of
+slave-outputs just work, with requiring the user to manually run
+"xrandr --setprovideroutputsource" before he can hookup an external
+monitor to his hybrid graphics laptop.
+
+There is one problem with this patch, which is why it was not upstreamed
+before. What to do when a secondary GPU gets detected really is a policy
+decission (e.g. one may want to autobind PCI GPUs but not USB ones) and
+as such should be under control of the Desktop Environment.
+
+Unconditionally adding autobinding support to the xserver will result
+in races between the DE dealing with the hotplug of a secondary GPU
+and the server itself dealing with it.
+
+However we've waited for years for any Desktop Environments to actually
+start doing some sort of autoconfiguration of secondary GPUs and there
+is still not a single DE dealing with this, so I believe that it is
+time to upstream this now.
+
+To avoid potential future problems if any DEs get support for doing
+secondary GPU configuration themselves, the new autobind functionality
+is made optional. Since no DEs currently support doing this themselves it
+is enabled by default. When DEs grow support for doing this themselves
+they can disable the servers autobinding through the servers cmdline or a
+xorg.conf snippet.
+
+Signed-off-by: Dave Airlie <airlied@gmail.com>
+[hdegoede@redhat.com: Make configurable, fix with nvidia, submit upstream]
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ hw/xfree86/common/xf86Config.c | 19 +++++++++++++++++++
+ hw/xfree86/common/xf86Globals.c | 2 ++
+ hw/xfree86/common/xf86Init.c | 20 ++++++++++++++++++++
+ hw/xfree86/common/xf86Priv.h | 1 +
+ hw/xfree86/common/xf86Privstr.h | 1 +
+ hw/xfree86/common/xf86platformBus.c | 4 ++++
+ hw/xfree86/man/Xorg.man | 7 +++++++
+ hw/xfree86/man/xorg.conf.man | 6 ++++++
+ randr/randrstr.h | 3 +++
+ randr/rrprovider.c | 22 ++++++++++++++++++++++
+ 10 files changed, 85 insertions(+)
+
+diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
+index 2c1d335..d7d7c2e 100644
+--- a/hw/xfree86/common/xf86Config.c
++++ b/hw/xfree86/common/xf86Config.c
+@@ -643,6 +643,7 @@ typedef enum {
+ FLAG_DRI2,
+ FLAG_USE_SIGIO,
+ FLAG_AUTO_ADD_GPU,
++ FLAG_AUTO_BIND_GPU,
+ FLAG_MAX_CLIENTS,
+ FLAG_IGLX,
+ FLAG_DEBUG,
+@@ -699,6 +700,8 @@ static OptionInfoRec FlagOptions[] = {
+ {0}, FALSE},
+ {FLAG_AUTO_ADD_GPU, "AutoAddGPU", OPTV_BOOLEAN,
+ {0}, FALSE},
++ {FLAG_AUTO_BIND_GPU, "AutoBindGPU", OPTV_BOOLEAN,
++ {0}, FALSE},
+ {FLAG_MAX_CLIENTS, "MaxClients", OPTV_INTEGER,
+ {0}, FALSE },
+ {FLAG_IGLX, "IndirectGLX", OPTV_BOOLEAN,
+@@ -779,6 +782,22 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
+ }
+ xf86Msg(from, "%sutomatically adding GPU devices\n",
+ xf86Info.autoAddGPU ? "A" : "Not a");
++
++ if (xf86AutoBindGPUDisabled) {
++ xf86Info.autoBindGPU = FALSE;
++ from = X_CMDLINE;
++ }
++ else if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_BIND_GPU)) {
++ xf86GetOptValBool(FlagOptions, FLAG_AUTO_BIND_GPU,
++ &xf86Info.autoBindGPU);
++ from = X_CONFIG;
++ }
++ else {
++ from = X_DEFAULT;
++ }
++ xf86Msg(from, "%sutomatically binding GPU devices\n",
++ xf86Info.autoBindGPU ? "A" : "Not a");
++
+ /*
+ * Set things up based on the config file information. Some of these
+ * settings may be overridden later when the command line options are
+diff --git a/hw/xfree86/common/xf86Globals.c b/hw/xfree86/common/xf86Globals.c
+index e890f05..7b27b4c 100644
+--- a/hw/xfree86/common/xf86Globals.c
++++ b/hw/xfree86/common/xf86Globals.c
+@@ -131,6 +131,7 @@ xf86InfoRec xf86Info = {
+ #else
+ .autoAddGPU = FALSE,
+ #endif
++ .autoBindGPU = TRUE,
+ };
+
+ const char *xf86ConfigFile = NULL;
+@@ -191,6 +192,7 @@ Bool xf86FlipPixels = FALSE;
+ Gamma xf86Gamma = { 0.0, 0.0, 0.0 };
+
+ Bool xf86AllowMouseOpenFail = FALSE;
++Bool xf86AutoBindGPUDisabled = FALSE;
+
+ #ifdef XF86VIDMODE
+ Bool xf86VidModeDisabled = FALSE;
+diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
+index ea42ec9..ec255b6 100644
+--- a/hw/xfree86/common/xf86Init.c
++++ b/hw/xfree86/common/xf86Init.c
+@@ -76,6 +76,7 @@
+ #include "xf86DDC.h"
+ #include "xf86Xinput.h"
+ #include "xf86InPriv.h"
++#include "xf86Crtc.h"
+ #include "picturestr.h"
+ #include "randrstr.h"
+ #include "glxvndabi.h"
+@@ -237,6 +238,19 @@ xf86PrivsElevated(void)
+ return PrivsElevated();
+ }
+
++static void
++xf86AutoConfigOutputDevices(void)
++{
++ int i;
++
++ if (!xf86Info.autoBindGPU)
++ return;
++
++ for (i = 0; i < xf86NumGPUScreens; i++)
++ RRProviderAutoConfigGpuScreen(xf86ScrnToScreen(xf86GPUScreens[i]),
++ xf86ScrnToScreen(xf86Screens[0]));
++}
++
+ static void
+ TrapSignals(void)
+ {
+@@ -770,6 +784,8 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
+ for (i = 0; i < xf86NumGPUScreens; i++)
+ AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen);
+
++ xf86AutoConfigOutputDevices();
++
+ xf86VGAarbiterWrapFunctions();
+ if (sigio_blocked)
+ input_unlock();
+@@ -1278,6 +1294,10 @@ ddxProcessArgument(int argc, char **argv, int i)
+ xf86Info.iglxFrom = X_CMDLINE;
+ return 0;
+ }
++ if (!strcmp(argv[i], "-noautoBindGPU")) {
++ xf86AutoBindGPUDisabled = TRUE;
++ return 1;
++ }
+
+ /* OS-specific processing */
+ return xf86ProcessArgument(argc, argv, i);
+diff --git a/hw/xfree86/common/xf86Priv.h b/hw/xfree86/common/xf86Priv.h
+index 4fe2b5f..6566622 100644
+--- a/hw/xfree86/common/xf86Priv.h
++++ b/hw/xfree86/common/xf86Priv.h
+@@ -46,6 +46,7 @@
+ extern _X_EXPORT const char *xf86ConfigFile;
+ extern _X_EXPORT const char *xf86ConfigDir;
+ extern _X_EXPORT Bool xf86AllowMouseOpenFail;
++extern _X_EXPORT Bool xf86AutoBindGPUDisabled;
+
+ #ifdef XF86VIDMODE
+ extern _X_EXPORT Bool xf86VidModeDisabled;
+diff --git a/hw/xfree86/common/xf86Privstr.h b/hw/xfree86/common/xf86Privstr.h
+index 21c2e1f..6c71863 100644
+--- a/hw/xfree86/common/xf86Privstr.h
++++ b/hw/xfree86/common/xf86Privstr.h
+@@ -98,6 +98,7 @@ typedef struct {
+
+ Bool autoAddGPU;
+ const char *debug;
++ Bool autoBindGPU;
+ } xf86InfoRec, *xf86InfoPtr;
+
+ /* ISC's cc can't handle ~ of UL constants, so explicitly type cast them. */
+diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
+index cef47da..913a324 100644
+--- a/hw/xfree86/common/xf86platformBus.c
++++ b/hw/xfree86/common/xf86platformBus.c
+@@ -49,6 +49,7 @@
+ #include "Pci.h"
+ #include "xf86platformBus.h"
+ #include "xf86Config.h"
++#include "xf86Crtc.h"
+
+ #include "randrstr.h"
+ int platformSlotClaimed;
+@@ -665,6 +666,9 @@ xf86platformAddDevice(int index)
+ }
+ /* attach unbound to 0 protocol screen */
+ AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen);
++ if (xf86Info.autoBindGPU)
++ RRProviderAutoConfigGpuScreen(xf86ScrnToScreen(xf86GPUScreens[i]),
++ xf86ScrnToScreen(xf86Screens[0]));
+
+ RRResourcesChanged(xf86Screens[0]->pScreen);
+ RRTellChanged(xf86Screens[0]->pScreen);
+diff --git a/hw/xfree86/man/Xorg.man b/hw/xfree86/man/Xorg.man
+index 13a9dc3..745f986 100644
+--- a/hw/xfree86/man/Xorg.man
++++ b/hw/xfree86/man/Xorg.man
+@@ -283,6 +283,13 @@ is a comma separated list of directories to search for
+ server modules. This option is only available when the server is run
+ as root (i.e, with real-uid 0).
+ .TP 8
++.B \-noautoBindGPU
++Disable automatically setting secondary GPUs up as output sinks and offload
++sources. This is equivalent to setting the
++.B AutoBindGPU
++xorg.conf(__filemansuffix__) file option. To
++.B false.
++.TP 8
+ .B \-nosilk
+ Disable Silken Mouse support.
+ .TP 8
+diff --git a/hw/xfree86/man/xorg.conf.man b/hw/xfree86/man/xorg.conf.man
+index 9589262..8d51e06 100644
+--- a/hw/xfree86/man/xorg.conf.man
++++ b/hw/xfree86/man/xorg.conf.man
+@@ -672,6 +672,12 @@ Enabled by default.
+ If this option is disabled, then no GPU devices will be added from the udev
+ backend. Enabled by default. (May need to be disabled to setup Xinerama).
+ .TP 7
++.BI "Option \*qAutoBindGPU\*q \*q" boolean \*q
++If enabled then secondary GPUs will be automatically set up as output-sinks and
++offload-sources. Making e.g. laptop outputs connected only to the secondary
++GPU directly available for use without needing to run
++"xrandr --setprovideroutputsource". Enabled by default.
++.TP 7
+ .BI "Option \*qLog\*q \*q" string \*q
+ This option controls whether the log is flushed and/or synced to disk after
+ each message.
+diff --git a/randr/randrstr.h b/randr/randrstr.h
+index f94174b..092d726 100644
+--- a/randr/randrstr.h
++++ b/randr/randrstr.h
+@@ -1039,6 +1039,9 @@ RRProviderLookup(XID id, RRProviderPtr *provider_p);
+ extern _X_EXPORT void
+ RRDeliverProviderEvent(ClientPtr client, WindowPtr pWin, RRProviderPtr provider);
+
++extern _X_EXPORT void
++RRProviderAutoConfigGpuScreen(ScreenPtr pScreen, ScreenPtr masterScreen);
++
+ /* rrproviderproperty.c */
+
+ extern _X_EXPORT void
+diff --git a/randr/rrprovider.c b/randr/rrprovider.c
+index e4bc2bf..e04c18f 100644
+--- a/randr/rrprovider.c
++++ b/randr/rrprovider.c
+@@ -485,3 +485,25 @@ RRDeliverProviderEvent(ClientPtr client, WindowPtr pWin, RRProviderPtr provider)
+
+ WriteEventsToClient(client, 1, (xEvent *) &pe);
+ }
++
++void
++RRProviderAutoConfigGpuScreen(ScreenPtr pScreen, ScreenPtr masterScreen)
++{
++ rrScrPrivPtr pScrPriv = rrGetScrPriv(pScreen);
++ rrScrPrivPtr masterPriv = rrGetScrPriv(masterScreen);
++ RRProviderPtr provider = pScrPriv->provider;
++ RRProviderPtr master_provider = masterPriv->provider;
++
++ if (!provider || !master_provider)
++ return;
++
++ if ((provider->capabilities & RR_Capability_SinkOutput) &&
++ (master_provider->capabilities & RR_Capability_SourceOutput)) {
++ pScrPriv->rrProviderSetOutputSource(pScreen, provider, master_provider);
++ RRInitPrimeSyncProps(pScreen);
++ }
++
++ if ((provider->capabilities & RR_Capability_SourceOffload) &&
++ (master_provider->capabilities & RR_Capability_SinkOffload))
++ pScrPriv->rrProviderSetOffloadSink(pScreen, provider, master_provider);
++}
+--
+2.16.2
+
diff --git a/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch b/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
new file mode 100644
index 00000000..1b1306e2
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
@@ -0,0 +1,52 @@
+From aa2f34d80ef3118eae0cce73b610c36cdcb978fe Mon Sep 17 00:00:00 2001
+From: Ben Skeggs <bskeggs@redhat.com>
+Date: Sat, 22 Apr 2017 02:26:28 +1000
+Subject: [PATCH xserver] xfree86: use modesetting driver by default on GeForce
+ 8 and newer
+
+Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+---
+ hw/xfree86/common/xf86pciBus.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
+index 8158c2b62..78d1c947d 100644
+--- a/hw/xfree86/common/xf86pciBus.c
++++ b/hw/xfree86/common/xf86pciBus.c
+@@ -37,6 +37,7 @@
+ #include <unistd.h>
+ #include <X11/X.h>
+ #include <pciaccess.h>
++#include <xf86drm.h>
+ #include "os.h"
+ #include "Pci.h"
+ #include "xf86.h"
+@@ -1190,6 +1191,25 @@ xf86VideoPtrToDriverList(struct pci_device *dev,
+ int idx = 0;
+
+ #ifdef __linux__
++ char busid[32];
++ int fd;
++
++ snprintf(busid, sizeof(busid), "pci:%04x:%02x:%02x.%d",
++ dev->domain, dev->bus, dev->dev, dev->func);
++
++ /* 'modesetting' is preferred for GeForce 8 and newer GPUs */
++ fd = drmOpenWithType("nouveau", busid, DRM_NODE_RENDER);
++ if (fd >= 0) {
++ uint64_t args[] = { 11 /* NOUVEAU_GETPARAM_CHIPSET_ID */, 0 };
++ int ret = drmCommandWriteRead(fd, 0 /* DRM_NOUVEAU_GETPARAM */,
++ &args, sizeof(args));
++ drmClose(fd);
++ if (ret == 0) {
++ if (args[1] == 0x050 || args[1] >= 0x80)
++ break;
++ }
++ }
++
+ driverList[idx++] = "nouveau";
+ #endif
+ driverList[idx++] = "nv";
+--
+2.12.2
+
diff --git a/source/x/x11/patch/xorg-server/xserver-1-2-glamor-Always-return-0-from-glamor_fds_from_pixmap-on-error.patch b/source/x/x11/patch/xorg-server/xserver-1-2-glamor-Always-return-0-from-glamor_fds_from_pixmap-on-error.patch
new file mode 100644
index 00000000..32672f2b
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/xserver-1-2-glamor-Always-return-0-from-glamor_fds_from_pixmap-on-error.patch
@@ -0,0 +1,54 @@
+From patchwork Wed May 23 09:43:32 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: [xserver,
+ 1/2] glamor: Always return 0 from glamor_fds_from_pixmap on error
+From: =?utf-8?q?Michel_D=C3=A4nzer?= <michel@daenzer.net>
+X-Patchwork-Id: 224909
+Message-Id: <20180523094333.11076-1-michel@daenzer.net>
+To: =?UTF-8?q?Louis-Francis=20Ratt=C3=A9-Boulianne?= <lfrb@collabora.com>,
+ Daniel Stone <daniels@collabora.com>
+Cc: xorg-devel@lists.x.org
+Date: Wed, 23 May 2018 11:43:32 +0200
+
+From: Michel Dänzer <michel.daenzer@amd.com>
+
+This matches what glamor_egl_fds_from_pixmap and dri3_fds_from_pixmap do
+and what proc_dri3_buffers_from_pixmap expects.
+
+Fixes: c8c276c9569b "glamor: Implement PixmapFromBuffers and
+ BuffersFromPixmap"
+Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+---
+ glamor/glamor.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index d984d20f3..e2c74d17a 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -836,20 +836,20 @@ glamor_fds_from_pixmap(ScreenPtr screen, PixmapPtr pixmap, int *fds,
+ glamor_get_screen_private(pixmap->drawable.pScreen);
+
+ if (!glamor_priv->dri3_enabled)
+- return -1;
++ return 0;
+ switch (pixmap_priv->type) {
+ case GLAMOR_TEXTURE_DRM:
+ case GLAMOR_TEXTURE_ONLY:
+ if (!glamor_pixmap_ensure_fbo(pixmap, pixmap->drawable.depth == 30 ?
+ GL_RGB10_A2 : GL_RGBA, 0))
+- return -1;
++ return 0;
+ return glamor_egl_fds_from_pixmap(screen, pixmap, fds,
+ strides, offsets,
+ modifier);
+ default:
+ break;
+ }
+- return -1;
++ return 0;
+ }
+
+ _X_EXPORT int
diff --git a/source/x/x11/patch/xorg-server/xserver-2-2-glamor-Propagate-glamor_fds_from_pixmap-error-in-glamor_fd_from_pixmap.patch b/source/x/x11/patch/xorg-server/xserver-2-2-glamor-Propagate-glamor_fds_from_pixmap-error-in-glamor_fd_from_pixmap.patch
new file mode 100644
index 00000000..ab92d3fc
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/xserver-2-2-glamor-Propagate-glamor_fds_from_pixmap-error-in-glamor_fd_from_pixmap.patch
@@ -0,0 +1,58 @@
+From patchwork Wed May 23 09:43:33 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: [xserver, 2/2] glamor: Propagate glamor_fds_from_pixmap error in
+ glamor_fd_from_pixmap
+From: =?utf-8?q?Michel_D=C3=A4nzer?= <michel@daenzer.net>
+X-Patchwork-Id: 224910
+Message-Id: <20180523094333.11076-2-michel@daenzer.net>
+To: =?UTF-8?q?Louis-Francis=20Ratt=C3=A9-Boulianne?= <lfrb@collabora.com>,
+ Daniel Stone <daniels@collabora.com>
+Cc: xorg-devel@lists.x.org
+Date: Wed, 23 May 2018 11:43:33 +0200
+
+From: Michel Dänzer <michel.daenzer@amd.com>
+
+glamor_fds_from_pixmap returns 0 on error, but we were treating that as
+success, continuing with uninitialized stride and fd values.
+
+Also bail if the offset isn't 0, same as in dri3_fd_from_pixmap.
+
+Fixes: c8c276c9569b "glamor: Implement PixmapFromBuffers and
+ BuffersFromPixmap"
+Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
+---
+ glamor/glamor.c | 16 +++++++---------
+ 1 file changed, 7 insertions(+), 9 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index e2c74d17a..63f0947fa 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -865,17 +865,15 @@ glamor_fd_from_pixmap(ScreenPtr screen,
+ &modifier);
+
+ /* Pixmaps with multi-planes/modifier are not supported in this interface */
+- if (ret > 1) {
+- while (ret > 0)
+- close(fds[--ret]);
+- return -1;
++ if (ret == 1 && offsets[0] == 0) {
++ *stride = strides[0];
++ *size = pixmap->drawable.height * *stride;
++ return fds[0];
+ }
+
+- ret = fds[0];
+- *stride = strides[0];
+- *size = pixmap->drawable.height * *stride;
+-
+- return ret;
++ while (ret > 0)
++ close(fds[--ret]);
++ return -1;
+ }
+
+ _X_EXPORT int