File displaylink-rpm-6.0.0.obscpio of Package displaylink-driver

07070100000000000041ED0000000000000000000000026651CEAF00000000000000000000000000000000000000000000001E00000000displaylink-rpm-6.0.0/.github07070100000001000081A40000000000000000000000016651CEAF00000928000000000000000000000000000000000000003000000000displaylink-rpm-6.0.0/.github/ISSUE_TEMPLATE.md<!-- Please look through existing issues (open and closed) and make sure you are not creating a duplicate issue: -->
  * Are you using the latest DisplayLink driver?
    <!-- (https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu) -->
  * Are you using the latest EVDI module?
    <!-- (https://github.com/DisplayLink/evdi/releases) -->
  * If you are using a DisplayLink device, have you checked 'troubleshooting'
    on DisplayLink's website?
    <!-- (https://support.displaylink.com/knowledgebase/topics/103927-troubleshooting-ubuntu) -->
  * Is this issue related to evdi/kernel?
    <!-- (Please go to the EVDI repository for support: https://github.com/DisplayLink/evdi) -->
  * Is this issue related to DisplayLinkManager?
    <!-- (If so, please take a look at DisplayLink's support forum
    https://support.displaylink.com or forum https://www.displaylink.org/forum/) -->
  * If you are having an issue upgrading, have you tried to do a clean install of the driver?
    <!-- Do the following for a clean driver install:
           Find the current package installed - `sudo rpm -qa | grep displaylink`
           Remove what is returned: `sudo rpm -evh [package]`

           Clear out anything left over:
            /var/lib/dkms/evdi
            /usr/libexec/displaylink
            /usr/src/evdi-*

            /etc/X11/xorg.conf.d/20-displaylink.conf
            /etc/logrotate.d/displaylink
            /usr/lib/systemd/system/displaylink-driver.service
            /usr/lib/systemd/system-preset/95-displaylink.preset
            /usr/lib/systemd/system-sleep/displaylink.sh
            /etc/udev/rules.d/99-displaylink.rules
            /usr/share/doc/displaylink
            /usr/share/doc/displaylink/LICENSE

            /usr/lib/modules/`uname -r`/weak-updates/evdi.ko.xz
            /usr/lib/modules/`uname -r`/extra/evdi.ko.xz

          Reboot
          Reinstall the RPM package -->


<!-- Provide the following information -->
  * Fedora / CentOS Stream / Rocky Linux / AlmaLinux OS
  * Version
  * Kernel version `(uname -a)`

<!-- Please provide the following logs -->
  * `/var/log/displaylink/displaylink.log`
  * `/var/lib/dkms/evdi/kernel-[version]/log/make.log`

<!-- Please add a good summary of the issue in the Title above -->

<!-- Steps to reproduce -->

<!-- Detailed description -->
07070100000002000041ED0000000000000000000000026651CEAF00000000000000000000000000000000000000000000002800000000displaylink-rpm-6.0.0/.github/workflows07070100000003000081A40000000000000000000000016651CEAF00000953000000000000000000000000000000000000003700000000displaylink-rpm-6.0.0/.github/workflows/buildcheck.ymlname: Build Check

on:
  push:
  pull_request:
    branches: [ master ]

jobs:
  makeTest:
    runs-on: ubuntu-latest
    container: 
      image: quay.io/rockylinux/rockylinux:9
    steps:
      - uses: actions/checkout@v3
      - name: Specify Build Target
        run: |
          echo "SPECIFICTARGET=github-release" >> $GITHUB_ENV
      - name: Test Makefile Targets
        run: ci/testbuilding.sh

  buildTest:
    needs: makeTest
    runs-on: ubuntu-latest
    container: 
      image: ${{ matrix.dockernamespace }}:${{ matrix.version }}
    strategy:
      matrix:
        include:
          - os: fedora
            version: 39
            dockernamespace: quay.io/fedora/fedora
          - os: fedora
            version: 40
            dockernamespace: quay.io/fedora/fedora
          - os: centos-stream
            version: stream8
            dockernamespace: quay.io/centos/centos
          - os: centos-stream
            version: stream9
            dockernamespace: quay.io/centos/centos
          - os: rocky
            version: 8
            dockernamespace: quay.io/rockylinux/rockylinux
          - os: rocky
            version: 9
            dockernamespace: quay.io/rockylinux/rockylinux
          - os: almalinux
            version: 8
            dockernamespace: quay.io/almalinux/almalinux
          - os: almalinux
            version: 9
            dockernamespace: quay.io/almalinux/almalinux

    steps:
      - uses: actions/checkout@v3

      - name: Specify Build Target
        run: |
          echo "SPECIFICTARGET=github-release" >> $GITHUB_ENV
          
      - name: Environment variable for OS version
        run: |
          echo "OSVERSION=${{ matrix.version }}" >> $GITHUB_ENV

      - name: Run CI
        run: ci/${{ matrix.os }}.sh

  mockTest:
    needs: makeTest
    runs-on: ubuntu-latest
    container: 
      image: quay.io/rockylinux/rockylinux:9
      options: --privileged
    steps:
      - uses: actions/checkout@v3
      - name: Test Mock Build From Spec
        run: |
          echo "Install Mock"
          dnf -y install epel-release
          dnf -y install mock gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget
          echo "Get source files"
          make srpm-github
          echo "Run mock build"
          mock -r rocky+epel-9-x86_64 --define="_github 1" --spec="displaylink.spec" --sources="."
07070100000004000081A40000000000000000000000016651CEAF00000584000000000000000000000000000000000000003600000000displaylink-rpm-6.0.0/.github/workflows/mainbuild.ymlname: Main Branch Build

on:
  schedule:
    - cron: '30 5 * * 1'

jobs:
  mainBuild:
    runs-on: ubuntu-latest
    container: 
      image: ${{ matrix.dockernamespace }}:${{ matrix.version }}
    strategy:
      matrix:
        include:
          - os: fedora
            version: 39
            dockernamespace: quay.io/fedora/fedora
          - os: fedora
            version: 40
            dockernamespace: quay.io/fedora/fedora
          - os: centos-stream
            version: stream8
            dockernamespace: quay.io/centos/centos
          - os: centos-stream
            version: stream9
            dockernamespace: quay.io/centos/centos
          - os: rocky
            version: 8
            dockernamespace: quay.io/rockylinux/rockylinux
          - os: rocky
            version: 9
            dockernamespace: quay.io/rockylinux/rockylinux
          - os: almalinux
            version: 8
            dockernamespace: quay.io/almalinux/almalinux
          - os: almalinux
            version: 9
            dockernamespace: quay.io/almalinux/almalinux

    steps:
      - uses: actions/checkout@v3

      - name: Specify Build Target
        run: |
          echo "SPECIFICTARGET=main" >> $GITHUB_ENV

      - name: Environment variable for OS version
        run: |
          echo "OSVERSION=${{ matrix.version }}" >> $GITHUB_ENV

      - name: Run CI
        run: ci/${{ matrix.os }}.sh
07070100000005000081A40000000000000000000000016651CEAF000002CA000000000000000000000000000000000000003A00000000displaylink-rpm-6.0.0/.github/workflows/rawhidebuilds.ymlname: Rawhide Build

on:
  workflow_dispatch:
  schedule:
    - cron: '45 5 * * 1'

jobs:
  rawhideBuilds:
    runs-on: ubuntu-latest
    container: 
      image: ${{ matrix.dockernamespace }}:${{ matrix.version }}
    strategy:
      matrix:
        include:
          - os: fedora
            version: rawhide
            dockernamespace: quay.io/fedora/fedora

    steps:
      - uses: actions/checkout@v3

      - name: Specify Build Target
        run: |
          echo "SPECIFICTARGET=rawhide" >> $GITHUB_ENV
      
      - name: Environment variable for OS version
        run: |
          echo "OSVERSION=${{ matrix.version }}" >> $GITHUB_ENV
      
      - name: Run CI
        run: ci/${{ matrix.os }}.sh07070100000006000081A40000000000000000000000016651CEAF00000BFC000000000000000000000000000000000000003400000000displaylink-rpm-6.0.0/.github/workflows/release.ymlname: Create Release Assets

on:
  release:
    types:
      - published

jobs:  
  buildrpms:
    runs-on: ubuntu-latest
    container: 
      image: ${{ matrix.dockernamespace }}:${{ matrix.version }}
    strategy:
      matrix:
        include:
        - os: fedora
          version: 39
          dockernamespace: quay.io/fedora/fedora
        - os: fedora
          version: 40
          dockernamespace: quay.io/fedora/fedora
        - os: centos-stream
          version: stream8
          dockernamespace: quay.io/centos/centos
        - os: centos-stream
          version: stream9
          dockernamespace: quay.io/centos/centos
        - os: rocky
          version: 8
          dockernamespace: quay.io/rockylinux/rockylinux
        - os: rocky
          version: 9
          dockernamespace: quay.io/rockylinux/rockylinux
        - os: almalinux
          version: 8
          dockernamespace: quay.io/almalinux/almalinux
        - os: almalinux
          version: 9
          dockernamespace: quay.io/almalinux/almalinux

    steps:
      - uses: actions/checkout@v3

      - name: Get version
        run: |
          echo "VERSION=$(grep ^VERSION Makefile | awk -F:= '{print $2}' | tr -d ' ')" >> $GITHUB_ENV
      
      - name: Get release
        run: |
          echo "RELEASE=$(grep ^RELEASE Makefile | awk -F:= '{print $2}' | tr -d ' ')" >> $GITHUB_ENV

      - name: Specify A Target For make
        run: |
          echo "SPECIFICTARGET=github-release" >> $GITHUB_ENV

      - name: Environment variable for setting name of RPM when using EVDI from Github
        run: |
          echo "EVDISOURCE=.github_evdi" >> $GITHUB_ENV

      - name: Environment variable for OS version
        run: |
          echo "OSVERSION=${{ matrix.version }}" >> $GITHUB_ENV
     
      - name: Run CI
        run: ci/${{ matrix.os }}.sh

      - name: Rename files
        run : ls -la
      - run: mv displaylink-${{ env.VERSION }}-${{ env.RELEASE }}${{ env.EVDISOURCE }}.src.rpm ${{ matrix.os }}-${{ matrix.version }}-displaylink-${{ env.VERSION }}-${{ env.RELEASE }}${{ env.EVDISOURCE }}.src.rpm
      - run: mv x86_64/displaylink-${{ env.VERSION }}-${{ env.RELEASE }}${{ env.EVDISOURCE }}.x86_64.rpm ${{ matrix.os }}-${{ matrix.version }}-displaylink-${{ env.VERSION }}-${{ env.RELEASE }}${{ env.EVDISOURCE }}.x86_64.rpm
      - run: chown `id -u`:`id -g` -R .

      - name: Upload RPM
        uses: actions/upload-artifact@v3
        with:
          name: ${{ matrix.os }}-${{ matrix.version }}-displaylink-${{ env.VERSION }}-${{ env.RELEASE }}
          path: ${{ matrix.os }}-${{ matrix.version }}-displaylink-${{ env.VERSION }}-${{ env.RELEASE }}.*.rpm

      - name: Upload Assets To Release
        uses: xresloader/upload-to-github-release@master
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          file: '${{ matrix.os }}-${{ matrix.version }}-displaylink-${{ env.VERSION }}-${{ env.RELEASE }}.*.rpm'
          draft: false
          update_latest_release: true
          tags: true
          overwrite: true
07070100000007000081A40000000000000000000000016651CEAF00000024000000000000000000000000000000000000002100000000displaylink-rpm-6.0.0/.gitignoredisplaylink-*.src.rpm
i386/
x86_64/
07070100000008000081A40000000000000000000000016651CEAF000000CD000000000000000000000000000000000000002A00000000displaylink-rpm-6.0.0/20-displaylink.confSection "OutputClass"
	Identifier "DisplayLink"
	MatchDriver "evdi"
	Driver "modesetting"
	Option "AccelMethod" "none"
	Option "PageFlip" "off"
	Option "SWCursor" "on"
	Option "ShadowFB" "true"
EndSection
07070100000009000081A40000000000000000000000016651CEAF00000064000000000000000000000000000000000000002C00000000displaylink-rpm-6.0.0/95-displaylink.preset# Enable displaylink service after default services have started

enable displaylink-driver.service
0707010000000A000081A40000000000000000000000016651CEAF00000507000000000000000000000000000000000000002B00000000displaylink-rpm-6.0.0/99-displaylink.rules# Copyright (c) 2016 - 2022 DisplayLink (UK) Ltd.
# File extracted from udev-installer.sh script and path to trigger script changed

ACTION=="add|change", SUBSYSTEM=="usb", DRIVERS=="usb", ATTR{idVendor}=="17e9", IMPORT{builtin}="usb_id", ENV{DISPLAYLINK_DEVNAME}="$env{DEVNAME}", ENV{DISPLAYLINK_DEVICE_ID}="$env{ID_BUS}-$env{BUSNUM}-$env{DEVNUM}-$env{ID_SERIAL}"

ACTION=="add", SUBSYSTEM=="usb", DRIVERS=="usb", ATTRS{idVendor}=="17e9", ATTR{bInterfaceClass}=="ff", ATTR{bInterfaceProtocol}=="03", IMPORT{parent}="DISPLAYLINK*", RUN+="/usr/libexec/displaylink/udev.sh $root $devpath $env{DISPLAYLINK_DEVICE_ID} $env{DISPLAYLINK_DEVNAME}", RUN+="/bin/sh -c 'echo 0 > /sys%p/../port/usb3_lpm_permit'"

ACTION=="remove", ENV{PRODUCT}=="17e9/*", RUN+="/usr/libexec/displaylink/udev.sh $root $env{DEVNAME}"

# udev rules configuring DisplayLink usb ethernet device
IMPORT{builtin}="usb_id"

ACTION=="add|move|bind", ENV{ID_USB_DRIVER}=="cdc_ncm", ATTRS{idVendor}=="17e9", ATTR{cdc_ncm/rx_max}=="?*", ATTR{cdc_ncm/dwNtbInMaxSize}=="?*", ATTR{cdc_ncm/rx_max}="$attr{cdc_ncm/dwNtbInMaxSize}"
ACTION=="add|move|bind", ENV{ID_USB_DRIVER}=="cdc_ncm", ATTRS{idVendor}=="17e9", ATTR{cdc_ncm/tx_max}=="?*", ATTR{cdc_ncm/dwNtbOutMaxSize}=="?*", ATTR{cdc_ncm/tx_max}="$attr{cdc_ncm/dwNtbOutMaxSize}"
0707010000000B000081A40000000000000000000000016651CEAF00000439000000000000000000000000000000000000001E00000000displaylink-rpm-6.0.0/LICENSECopyright (c) 2016-2022 The displaylink-rpm contributors

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS 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.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
0707010000000C000081A40000000000000000000000016651CEAF0000137E000000000000000000000000000000000000001F00000000displaylink-rpm-6.0.0/Makefile#
# Versions
#

DAEMON_VERSION := 6.0.0-24
DOWNLOAD_ID    := 6511    # This id number comes off the link on the displaylink website
VERSION        := 1.14.4
RELEASE        := 2

#
# Dependencies
#

DAEMON_PKG := DisplayLink_USB_Graphics_Software_for_Ubuntu_$(DAEMON_VERSION).zip
EVDI_PKG   := v$(VERSION).tar.gz
SPEC_FILE  := displaylink.spec

# The following is a little clunky, but we need to ensure the resulting
# tarball expands the same way as the upstream tarball
EVDI_MAIN_BRANCH   := main
EVDI_MAIN_REPO     := https://github.com/DisplayLink/evdi.git
EVDI_MAIN_BASE_DIR := /var/tmp
EVDI_MAIN          := $(EVDI_MAIN_BASE_DIR)/evdi-$(VERSION)

BUILD_DEPS := $(DAEMON_PKG) $(SPEC_FILE)
BUILD_DEPS_GITHUB_EVDI := $(DAEMON_PKG) $(EVDI_PKG) $(SPEC_FILE)

#
# Targets
#

x86_64_RPM := x86_64/displaylink-$(VERSION)-$(RELEASE).x86_64.rpm
SRPM       := displaylink-$(VERSION)-$(RELEASE).src.rpm

TARGETS    := $(x86_64_RPM) $(SRPM)

# Use release found on GitHub instead of what comes in the
# Displaylink download
x86_64_RPM_GITHUB_EVDI := x86_64/displaylink-$(VERSION)-$(RELEASE)-github_evdi.x86_64.rpm
SRPM_GITHUB_EVDI       := displaylink-$(VERSION)-$(RELEASE)-github_evdi.src.rpm

TARGETS_GITHUB_EVDI := $(x86_64_RPM_GITHUB_EVDI) $(SRPM_GITHUB_EVDI)

#
# Upstream checks
#

EVDI_GITHUB := https://api.github.com/repos/DisplayLink/evdi

define get_latest_prerelease
	curl -s $(EVDI_GITHUB)/releases?per_page=1 \
		-H "Accept: application/vnd.github.full+json" |\
		grep tag_name | sed s/[^0-9\.]//g
endef

define get_release_version
        echo -e "$(RELEASE)" | tr -d '[:space:]'
endef

define get_main_date
	curl -s $(EVDI_GITHUB)/branches/main \
		-H "Accept: application/vnd.github.full+json" |\
		grep date | head -1 | cut -d: -f 2- |\
		sed s/[^0-9TZ]//g
endef

#
# PHONY targets
#

.PHONY: all github rpm srpm rpm-github srpm-github devel main rawhide clean clean-rawhide clean-mainline clean-all versions

all: $(TARGETS)

# Use evdi tagged release on Github instead of using what is bundled in Displaylink download
github-release: $(TARGETS_GITHUB_EVDI)

rpm: $(x86_64_RPM)

srpm: $(x86_64_RPM)

rpm-github: $(x86_64_RPM_GITHUB_EVDI)

srpm-github: $(SRPM_GITHUB_EVDI)

# Pull latest code from main branch
devel: main
main: $(EVDI_MAIN)
	cd $(EVDI_MAIN) && git pull
	tar -z -c -f $(EVDI_PKG) -C $(EVDI_MAIN_BASE_DIR) evdi-$(VERSION)

# Change release version for running on Fedora Rawhide
rawhide:
	@echo Checking last upstream commit date...
	$(MAKE) RELEASE="`$(get_release_version)`.rawhide.`$(get_main_date)`" main github-release

clean-rawhide:
	@echo Checking last upstream commit date...
	$(MAKE) RELEASE="`$(get_release_version)`.rawhide.`$(get_main_date)`" clean-mainline

clean-mainline:
	rm -rf $(TARGETS) $(EVDI_MAIN) $(EVDI_PKG)

clean: clean-mainline clean-rawhide

clean-all:
	rm -rf x86_64/*.rpm displaylink*.src.rpm $(EVDI_PKG) $(EVDI_MAIN)

# for testing our version construction
versions:
	@echo VERSION: $(VERSION)
	@echo Checking upstream version...
	@version=`$(get_latest_prerelease)` && echo UPSTREAM: $$version
	@echo Checking upstream version...done
	@echo
	@echo Checking last upstream commit date...
	@main_date=`$(get_main_date)` && echo MAIN_DATE: $$main_date
	@echo Checking last upstream commit date...done

#
# Real targets
#

$(EVDI_MAIN):
	git clone --depth 1 -b $(EVDI_MAIN_BRANCH) $(EVDI_MAIN_REPO) $(EVDI_MAIN)

$(DAEMON_PKG):
	wget --no-verbose -O $(DAEMON_PKG) \
		"https://www.synaptics.com/sites/default/files/exe_files/2024-05/DisplayLink USB Graphics Software for Ubuntu6.0-EXE.zip"

$(EVDI_PKG):
	wget --no-verbose -O v$(VERSION).tar.gz \
		https://github.com/DisplayLink/evdi/archive/v$(VERSION).tar.gz

BUILD_DEFINES =                                                     \
    --define "_topdir `pwd`"                                        \
    --define "_sourcedir `pwd`"                                     \
    --define "_rpmdir `pwd`"                                        \
    --define "_specdir `pwd`"                                       \
    --define "_srcrpmdir `pwd`"                                     \
    --define "_buildrootdir `mktemp -d /var/tmp/displayportXXXXXX`" \
    --define "_builddir `mktemp -d /var/tmp/displayportXXXXXX`"     \
    --define "_release $(RELEASE)"                                  \
    --define "_daemon_version $(DAEMON_VERSION)"                    \
    --define "_version $(VERSION)"                                  \
    --define "_tmppath `mktemp -d /var/tmp/displayportXXXXXX`"      \

BUILD_DEFINES_GITHUB_EVDI = --define "_github 1"

$(x86_64_RPM): $(BUILD_DEPS)
	rpmbuild -bb $(BUILD_DEFINES) displaylink.spec --target=x86_64

$(SRPM): $(BUILD_DEPS)
	rpmbuild -bs $(BUILD_DEFINES) displaylink.spec

$(x86_64_RPM_GITHUB_EVDI): $(BUILD_DEPS_GITHUB_EVDI)
	rpmbuild -bb $(BUILD_DEFINES)$(BUILD_DEFINES_GITHUB_EVDI) displaylink.spec --target=x86_64

$(SRPM_GITHUB_EVDI): $(BUILD_DEPS_GITHUB_EVDI)
	rpmbuild -bs $(BUILD_DEFINES)$(BUILD_DEFINES_GITHUB_EVDI) displaylink.spec
0707010000000D000081A40000000000000000000000016651CEAF00001995000000000000000000000000000000000000002000000000displaylink-rpm-6.0.0/README.md# DisplayLink RPM

[![Build Status](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/buildcheck.yml/badge.svg)](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/buildcheck.yml)
[![Build Status](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/mainbuild.yml/badge.svg)](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/mainbuild.yml)
[![Build Status](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/rawhidebuilds.yml/badge.svg)](https://github.com/displaylink-rpm/displaylink-rpm/actions/workflows/rawhidebuilds.yml)

This is the recipe for building the [DisplayLink driver][displaylink]
in a RPM package for Fedora, CentOS Stream, Rocky Linux and AlmaLinux OS. This driver supports the following
device families:

- DL-7xxx
- DL-6xxx
- DL-5xxx
- DL-41xx
- DL-3xxx

The package includes the Open Source [evdi][evdi] library.

Packages get automatically built by GitHub Actions and get uploaded to
[GitHub releases][releases].

[displaylink]: http://www.displaylink.com/
[evdi]: https://github.com/DisplayLink/evdi
[releases]: https://github.com/displaylink-rpm/displaylink-rpm/releases

## Usage

> NOTE: Now buildable cleanly via .spec file (in mock f.e.). Download files
> via `make srpm`.

In order to create the driver rpm package you can run the command `make` from
within the checked out directory. The Makefile should download the files needed
for you and create an RPM.

A default `make` will use the evdi driver that is bundled with the Displaylink
driver package. If you need to use a newer released version from the evdi Github
repo and it is not currently present in the Displaylink driver package, you can
do so by running:

```bash
make github-release
```

### Secure boot on Fedora

To use displaylink-rpm and the evdi kernel module with secure boot enabled on
Fedora you need to sign the module with an enrolled Machine Owner Key (MOK).

First create a self signed MOK:

``` bash
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out \
MOK.der -nodes -days 36500 -subj "/CN=Displaylink/"
```

Then register the MOK with secure boot:

``` bash
sudo mokutil --import MOK.der
```

Then reboot your Fedora host and follow the instructions to enroll the key.

Now you can sign the evdi module. This must be done for every kernel upgrade:

``` bash
sudo modinfo -n evdi /lib/modules/5.10.19-200.fc33.x86_64/extra/evdi.ko.xz

sudo unxz $(modinfo -n evdi)

sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv \
  ./MOK.der /lib/modules/$(uname -r)/extra/evdi.ko

sudo xz -f /lib/modules/$(uname -r)/extra/evdi.ko
```

Now any display, hdmi and/or dvi ports on your docking station should work,
and the displaylink-driver.service should run.

## Hardware-specific behavior

### Dell D6000

When used with the Dell D6000 docking station, DisplayLink 5.1.26 regularly
loses communication with attached monitors, causing them to go blank and enter
power-saving mode.  At the time the monitors blank, the kernel logs two error
messages:

``` bash
kernel: usb <xxx>: Disable of device-initiated U1 failed.
kernel: usb <xxx>: Disable of device-initiated U2 failed.
```

To [work around this issue][workaround], disable power management for the audio
device by commenting out a line in `/etc/pulse/default.pa`:

``` bash
### Automatically suspend sinks/sources that become idle for too long
# load-module module-suspend-on-idle
```

[workaround]: https://displaylink.org/forum/showpost.php?p=85116

## Development Builds

Generally we want to track the current stable release of the evdi library.
However, Fedora kernels are often much newer than those officially supported by
that release and it is not uncommon for a new kernel to completely break the
build. This can leave you in a situation where you cannot upgrade your kernel
without sacrificing your displaylink devices. This is not great if the new
kernel has important security or performance fixes.

The evdi developers use the `main` branch as their main branch for all changes.

To pull the latest code from the `main` branch and use it to build, do the
following:

``` bash
make main

make github-release
```

Of course this `main` branch will also include some experimental and less
tested changes that may break things in other unexpected ways. So you should
prefer the mainline build if it works, but if it breaks, you have the option of
making a `main` build.

If you are using Fedora Rawhide, you can create a build which will automatically
download from the `main` branch and build by running:

``` bash
make rawhide
```

> In the past, code in the `main` branch would be tagged and that version is what
> would be included in the Displaylink driver package.
>
> Recently, we are seeing newer changes appear in the Displaylink driver package
> without the evdi library version being changed. This has created some confusion
> and difficulty when it comes to maintenance updates.
>
> The evdi folks have [acknowledged this issue][roadmap_discussion] and are
> working on making the process more transparent.

[roadmap_discussion]: https://github.com/DisplayLink/evdi/issues/309#issuecomment-979831346

## Contributing

The easiest way to contribute with the package is to fork it and send
a pull request in GitHub.

There are two main kind of contributions: either a new upstream
version is released or a modification in the packaging is proposed.

There is a variable called `RELEASE` for packaging purposes. That
variable should be set to 1 when contributing a new upstream version
release, and incremented in one when adding any other functionality to
the specfile for the same upstream version.

### New Upstream release

From time to time, DisplayLink will update their driver. We try to do
so, but for that we usually rely on pull requests.

We manage three different upstream numbers for versioning:

1. evdi kernel driver version
2. DisplayLinkManager daemon and libraries version
3. Download ID number from DisplayLink (for automatic zip retrieval)

These variables need to be changed in the following places:

- Makefile
  - `DAEMON_VERSION` is the DisplayLinkManager version
  - `VERSION` is currently the evdi driver version
  - `DOWNLOAD_ID` is the `?download_id=` query parameter in
    DisplayLink website to download the zip

Also, please update the changelog at the bottom of the
displaylink.spec file.

### Packaging change

When changing a packaging rule, please increment the `RELEASE`
variable by one in displaylink.spec
0707010000000E000041ED0000000000000000000000026651CEAF00000000000000000000000000000000000000000000001900000000displaylink-rpm-6.0.0/ci0707010000000F000081ED0000000000000000000000016651CEAF000001CD000000000000000000000000000000000000002600000000displaylink-rpm-6.0.0/ci/almalinux.sh#!/bin/bash

set -e

## Workaround AlmaLinux 8 GPG key issue
## https://almalinux.org/blog/2023-12-20-almalinux-8-key-update/
if [ "$OSVERSION" = "8" ]; then
    rpm --import https://repo.almalinux.org/almalinux/RPM-GPG-KEY-AlmaLinux
fi

dnf install -y gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget dnf-utils git 'dnf-command(builddep)' --enablerepo=extras

dnf builddep -y ./displaylink.spec

chown `id -u`:`id -g` -R .

make $SPECIFICTARGET
07070100000010000081ED0000000000000000000000016651CEAF00000168000000000000000000000000000000000000002A00000000displaylink-rpm-6.0.0/ci/centos-stream.sh#!/bin/bash

set -e

if [ "$OSVERSION" = "stream9" ]; then
    dnf install -y rpm-build make gcc glibc-devel.x86_64 wget git 'dnf-command(builddep)'
else
    dnf install -y gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget dnf-utils git --enablerepo=extras
fi

dnf builddep -y ./displaylink.spec

chown `id -u`:`id -g` -R .

make $SPECIFICTARGET
07070100000011000081ED0000000000000000000000016651CEAF000000DC000000000000000000000000000000000000002300000000displaylink-rpm-6.0.0/ci/centos.sh#!/bin/bash

set -e

yum install -y gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget yum-utils git --enablerepo=extras

yum-builddep -y ./displaylink.spec

chown `id -u`:`id -g` -R .

make $SPECIFICTARGET
07070100000012000081ED0000000000000000000000016651CEAF00000170000000000000000000000000000000000000002300000000displaylink-rpm-6.0.0/ci/fedora.sh#!/bin/bash

set -e

DNFCMD="dnf"
SPECFLAG="--spec "

if [ "$OSVERSION" = "rawhide" ] || [ "$((OSVERSION+0))" -gt 40 ]; then
    DNFCMD="dnf5"
    SPECFLAG=""
fi

$DNFCMD install -y rpm-build make gcc gcc-c++ libdrm-devel systemd-rpm-macros glibc-devel.x86_64 wget git "$DNFCMD-command(builddep)"

$DNFCMD builddep -y $SPECFLAG./displaylink.spec

make $SPECIFICTARGET
07070100000013000081ED0000000000000000000000016651CEAF000000F4000000000000000000000000000000000000002200000000displaylink-rpm-6.0.0/ci/rocky.sh#!/bin/bash

set -e

dnf install -y gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget dnf-utils git 'dnf-command(builddep)' --enablerepo=extras

dnf builddep -y ./displaylink.spec

chown `id -u`:`id -g` -R .

make $SPECIFICTARGET
07070100000014000081ED0000000000000000000000016651CEAF00000273000000000000000000000000000000000000002900000000displaylink-rpm-6.0.0/ci/testbuilding.sh#!/bin/bash

set -e

dnf install -y gcc gcc-c++ glibc-devel.x86_64 libdrm-devel rpm-build make wget dnf-utils 'dnf-command(builddep)' git --enablerepo=extras

dnf builddep -y ./displaylink.spec

chown `id -u`:`id -g` -R .

if [ -z ${SPECIFICTARGET+x} ]; then
echo "Testing 'make srpm'"
make srpm

make clean-all

echo "Testing 'make rpm'"
make rpm

make clean-all

echo "Testing 'make all'"
make all

make clean-all
fi

echo "Testing 'make srpm-github'"
make srpm-github

make clean-all

echo "Testing 'make rpm-github'"
make rpm-github

make clean-all

echo "Testing 'make github-release'"
make github-release

make clean-all
07070100000015000081A40000000000000000000000016651CEAF00000111000000000000000000000000000000000000003100000000displaylink-rpm-6.0.0/displaylink-driver.service[Unit]
Description=DisplayLink Driver Service
After=display-manager.service
Conflicts=getty@tty7.service

[Service]
ExecStartPre=/sbin/modprobe evdi
ExecStart=/usr/libexec/displaylink/DisplayLinkManager
Restart=always
WorkingDirectory=/usr/libexec/displaylink
RestartSec=5
07070100000016000081A40000000000000000000000016651CEAF000001BC000000000000000000000000000000000000003500000000displaylink-rpm-6.0.0/displaylink-sleep-extractor.sh#!/bin/bash
file=$1

startline=$(grep -n "create_pm_script()" "$file" | cut -d: -f1 | head -1)
endline=$(grep -n 'chmod 0755 /etc/zzz.d/resume/displaylink.sh' "$file" | cut -d: -f1 | head -1)

source <(
	tail -n +$startline $file | head -n +$(($endline - $startline + 5))
)
COREDIR=$(mktemp -d)
create_pm_script "systemd" "$COREDIR"

sed -i -e '1 s/^.*$/\#!\/usr\/bin\/bash/' "$COREDIR/suspend.sh"

cat "$COREDIR/suspend.sh"

rm -rf "$COREDIR"
07070100000017000081A40000000000000000000000016651CEAF0000037C000000000000000000000000000000000000003400000000displaylink-rpm-6.0.0/displaylink-udev-extractor.sh#!/bin/bash
file=$1

# Get systemd_start_stop_functions()
startline=$(grep -n "systemd_start_stop_functions()" "$file" | cut -d: -f1 | head -1)
endline=$(grep -n "displaylink_bootstrapper_code()" "$file" | cut -d: -f1 | head -1)

source <(
	tail -n +$startline $file | head -n +$(($endline - $startline - 1))
)

# Get displaylink_bootstrapper_code()
startline=$(grep -n "displaylink_bootstrapper_code()" "$file" | cut -d: -f1 | head -1)
endline=$(grep -n "chmod 0744 \"\$filename\"" "$file" | cut -d: -f1 | head -1)

source <(
	tail -n +$startline $file | head -n +$(($endline - $startline + 2))
)

COREDIR=$(mktemp -d)
create_bootstrap_file "systemd" "$COREDIR/udev.sh"

sed -i -e '1 s/^.*$/\#!\/usr\/bin\/bash/' "$COREDIR/udev.sh"
sed -i -e 's/systemctl start displaylink-driver/systemctl start displaylink-driver --no-block/g' "$COREDIR/udev.sh"

cat "$COREDIR/udev.sh"

rm -rf "$COREDIR"
07070100000018000081A40000000000000000000000016651CEAF0000004E000000000000000000000000000000000000002C00000000displaylink-rpm-6.0.0/displaylink.logrotate/var/log/displaylink/*log {
	missingok
	notifempty
	compress
	delaycompress
}
07070100000019000081A40000000000000000000000016651CEAF00004869000000000000000000000000000000000000002700000000displaylink-rpm-6.0.0/displaylink.spec%{!?_daemon_version:%global _daemon_version 6.0.0-24}
%{!?_version:%global _version 1.14.4}
%{!?_release:%global _release 2}

# Disable RPATH since DisplayLinkManager contains this.
# Fedora 35 enforces this check and will stop rpmbuild from
# proceeding.
%global __brp_check_rpaths %{nil}

%global debug_package %{nil}
%if 0%{?rhel} && 0%{?rhel} <= 7
%global kernel_pkg_name kernel-ml
%else
%global kernel_pkg_name kernel
%endif

%{?_github:%global _github_release .github_evdi}

Name:     displaylink
Version:  %{_version}
Release:  %{_release}%{?_github_release}
Summary:  DisplayLink VGA/HDMI driver for DL-6xxx, DL-5xxx, DL-41xx and DL-3xxx adapters

License:  GPLv2 and LGPLv2 and MIT and ASL 2.0 and Proprietary

%if 0%{?_github}
Source0:  https://github.com/DisplayLink/evdi/archive/v%{version}.tar.gz
%endif
Source1:  displaylink-driver.service
Source2:  99-displaylink.rules
Source3:  displaylink-sleep-extractor.sh
# From https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu
Source4:  DisplayLink_USB_Graphics_Software_for_Ubuntu_%{_daemon_version}.zip
Source5:  20-displaylink.conf
Source6:  95-displaylink.preset
Source7:  %{name}.logrotate
Source8:  displaylink-udev-extractor.sh
Source9:  evdi.conf

BuildRequires:  gcc-c++
BuildRequires:  libdrm-devel
BuildRequires:  make

%if 0%{?fedora} < 30 || 0%{?rhel}
BuildRequires:  systemd
%else
BuildRequires:  systemd-rpm-macros
%endif

%if 0%{?rhel}
Requires: epel-release
%endif

Requires:   dkms
Requires:   %{kernel_pkg_name} >= 4.15, %{kernel_pkg_name}-devel >= 4.15
Requires:   make
Requires:   libusbx
Requires:   xorg-x11-server-Xorg >= 1.16
Conflicts:  mutter < 3.32
Conflicts:  xorg-x11-server-Xorg = 1.20.1

Provides:   bundled(libevdi) = %{version}

%description
This adds support for HDMI/VGA adapters built upon the DisplayLink DL-7xxx,
DL-6xxx, DL-5xxx, DL-41xx and DL-3xxx series of chipsets. This includes
numerous docking stations, USB monitors, and USB adapters.

%define logfile %{_localstatedir}/log/%{name}/%{name}.log

%prep
%setup -q -T -c

%setup -q -T -D -a 4
chmod +x displaylink-driver-%{_daemon_version}.run
./displaylink-driver-%{_daemon_version}.run --noexec --keep --target displaylink-driver-%{_daemon_version}
# This creates a displaylink-driver-$version subdirectory

mkdir -p evdi-%{version}

%if 0%{!?_github:1}
mv displaylink-driver-%{_daemon_version}/evdi.tar.gz evdi-%{version}
cd evdi-%{version}
gzip -dc evdi.tar.gz | tar -xvvf -

%else
%setup -q -T -D -a 0
cd evdi-%{version}
%endif

sed -i 's/\r//' README.md

%build

cd evdi-%{version}/library/
%make_build

%install

mkdir -p %{buildroot}%{_libexecdir}/%{name}/        \
  %{buildroot}%{_prefix}/src/evdi-%{version}/       \
  %{buildroot}%{_unitdir}/                          \
  %{buildroot}%{_prefix}/lib/systemd/system-preset/ \
  %{buildroot}%{_prefix}/lib/systemd/system-sleep/  \
  %{buildroot}%{_sysconfdir}/logrotate.d/           \
  %{buildroot}%{_sysconfdir}/modprobe.d/            \
  %{buildroot}%{_sysconfdir}/udev/rules.d/          \
  %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/       \
  %{buildroot}%{_localstatedir}/log/%{name}/

# Kernel driver sources
pushd %{buildroot}%{_prefix}/src/evdi-%{version} ;  \
cp -a $OLDPWD/evdi-%{version}/module/* . ; \
popd

# Turn off weak modules symlink being added for dkms build of evdi
echo "NO_WEAK_MODULES=yes" >> %{buildroot}%{_prefix}/src/evdi-%{version}/dkms.conf

# Library
cp -a evdi-%{version}/library/libevdi.so.%{version} %{buildroot}%{_libexecdir}/%{name}/
ln -sf %{_libexecdir}/%{name}/libevdi.so.%{version} %{buildroot}%{_libexecdir}/%{name}/libevdi.so

# Copy over binaries in package
# Don't copy libusb-1.0.so.0.2.0 it's already shipped by newer versions of libusbx
# Don't copy libevdi.so, we compiled it from source

cd displaylink-driver-%{_daemon_version}

cp -a LICENSE ../

cp -a x64-ubuntu-1604/DisplayLinkManager %{buildroot}%{_libexecdir}/%{name}/

# Firmwares
cp -a ella-dock-release.spkg firefly-monitor-release.spkg navarro-dock-release.spkg ridge-dock-release.spkg %{buildroot}%{_libexecdir}/%{name}/

# systemd/udev
cp -a %{SOURCE1} %{buildroot}%{_unitdir}/
cp -a %{SOURCE2} %{buildroot}%{_sysconfdir}/udev/rules.d/
cp -a %{SOURCE5} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/
cp -a %{SOURCE6} %{buildroot}%{_prefix}/lib/systemd/system-preset/
cp -a %{SOURCE7} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}

# evdi module options
cp -a %{SOURCE9} %{buildroot}%{_sysconfdir}/modprobe.d/

# pm-util
bash %{SOURCE3} service-installer.sh > %{buildroot}%{_prefix}/lib/systemd/system-sleep/displaylink.sh
chmod +x %{buildroot}%{_prefix}/lib/systemd/system-sleep/displaylink.sh

# udev trigger scripts
bash %{SOURCE8} udev-installer.sh > %{buildroot}%{_libexecdir}/%{name}/udev.sh
chmod +x %{buildroot}%{_libexecdir}/%{name}/udev.sh

%post
%systemd_post displaylink-driver.service
%{_sbindir}/dkms add evdi/%{version} --rpm_safe_upgrade >> %{logfile} 2>&1
%{_sbindir}/dkms build evdi/%{version} >> %{logfile} 2>&1
%{_sbindir}/dkms install evdi/%{version} >> %{logfile} 2>&1

# Trigger udev if devices are connected
%{_bindir}/grep -lw 17e9 /sys/bus/usb/devices/*/idVendor | while IFS= read -r device; do
  %{_bindir}/udevadm trigger --action=add "$(dirname "$device")"
done

%{_bindir}/systemctl start displaylink-driver.service

%files
%license LICENSE
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_unitdir}/displaylink-driver.service
%{_prefix}/lib/systemd/system-preset/95-displaylink.preset
%{_prefix}/lib/systemd/system-sleep/displaylink.sh
%{_sysconfdir}/modprobe.d/evdi.conf
%{_sysconfdir}/udev/rules.d/99-displaylink.rules
%{_sysconfdir}/X11/xorg.conf.d/20-displaylink.conf

%dir %{_prefix}/src/evdi-%{version}
%{_prefix}/src/evdi-%{version}/Kconfig
%{_prefix}/src/evdi-%{version}/LICENSE
%{_prefix}/src/evdi-%{version}/Makefile
%{_prefix}/src/evdi-%{version}/dkms.conf
%{_prefix}/src/evdi-%{version}/dkms_install.sh
%{_prefix}/src/evdi-%{version}/evdi_connector.c
%{_prefix}/src/evdi-%{version}/evdi_cursor.c
%{_prefix}/src/evdi-%{version}/evdi_cursor.h
%{_prefix}/src/evdi-%{version}/evdi_debug.c
%{_prefix}/src/evdi-%{version}/evdi_debug.h
%{_prefix}/src/evdi-%{version}/evdi_drm.h
%{_prefix}/src/evdi-%{version}/evdi_drm_drv.c
%{_prefix}/src/evdi-%{version}/evdi_drm_drv.h
%{_prefix}/src/evdi-%{version}/evdi_encoder.c
%{_prefix}/src/evdi-%{version}/evdi_fb.c
%{_prefix}/src/evdi-%{version}/evdi_gem.c
%{_prefix}/src/evdi-%{version}/evdi_i2c.c
%{_prefix}/src/evdi-%{version}/evdi_i2c.h
%{_prefix}/src/evdi-%{version}/evdi_ioc32.c
%{_prefix}/src/evdi-%{version}/evdi_modeset.c
%{_prefix}/src/evdi-%{version}/evdi_painter.c
%{_prefix}/src/evdi-%{version}/evdi_params.c
%{_prefix}/src/evdi-%{version}/evdi_params.h
%{_prefix}/src/evdi-%{version}/evdi_platform_dev.c
%{_prefix}/src/evdi-%{version}/evdi_platform_dev.h
%{_prefix}/src/evdi-%{version}/evdi_platform_drv.c
%{_prefix}/src/evdi-%{version}/evdi_platform_drv.h
%{_prefix}/src/evdi-%{version}/evdi_sysfs.c
%{_prefix}/src/evdi-%{version}/evdi_sysfs.h

%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/DisplayLinkManager
%{_libexecdir}/%{name}/ella-dock-release.spkg
%{_libexecdir}/%{name}/firefly-monitor-release.spkg
%{_libexecdir}/%{name}/libevdi.so
%{_libexecdir}/%{name}/libevdi.so.%{version}
%{_libexecdir}/%{name}/navarro-dock-release.spkg
%{_libexecdir}/%{name}/ridge-dock-release.spkg
%{_libexecdir}/%{name}/udev.sh

%dir %{_localstatedir}/log/%{name}/

%preun
%systemd_preun displaylink-driver.service
%{_sbindir}/dkms remove evdi/%{version} --all --rpm_safe_upgrade >> %{logfile}

%postun
%systemd_postun_with_restart displaylink-driver.service

%changelog
* Thu May 16 2024 Michael L. Young <elgueromexicano@gmail.com> 1.14.4-2
- Remove support for CentOS 7 which never really worked and it is EOL at end of June
- Remove checks for i386 since we are only building x86_64

* Mon May 06 2024 Grzegorz Bialek <gp.bialek@gmail.com> 1.14.4-2
- Update to new DisplayLink 6.0.0 package
- Remove unneeded patches for newer kernels
- Add "target" option to displaylink-driver*.run file to avoid problem with folder name that differs from daemon_version

* Thu Apr 11 2024 Michael L. Young <elgueromexicano@gmail.com> 1.14.4-1
- Update evdi driver to 1.14.4 that has been released on Github to address
  unsafe use of strlen

* Wed Apr 10 2024 Michael L. Young <elgueromexicano@gmail.com> 1.14.3-1
- Update evdi driver to 1.14.3 that has been released on Github

* Sat Mar 09 2024 Michael L. Young <elgueromexicano@gmail.com> 1.14.2-1
- Update evdi driver to 1.14.2 that has been released on Github
- Do not patch when using the Github released version of evdi

* Sat Dec 23 2023 Michael L. Young <elgueromexicano@gmail.com> 1.14.1-2
- Add patch from upstream for newer kernels
- Add patch from upstream for newer EL8 and EL9 kernels.

* Sat Aug 12 2023 Michael L. Young <elgueromexicano@gmail.com> 1.14.1-1
- Update to new DisplayLink 5.8.0 package
- Update to use new evdi 1.14.1
- Remove patches that were merged upstream into evdi 1.14.1

* Sat Jun 24 2023 Michael L. Young <elgueromexicano@gmail.com> 1.13.1-2
- Minor update to a patch for EL8 builds

* Thu Apr 20 2023 Michael L. Young <elgueromexicano@gmail.com> 1.13.1-1
- Update to new DisplayLink 5.7.0 package
- Update to use new evdi 1.13.1 module
- Change file name where power management scripts are located within Displaylink
  installer for extraction

* Mon Nov 28 2022 Michael L. Young <elgueromexicano@gmail.com> 1.12.0-2
- Add patch for evdi to compile with newer EL 8.7 and EL 9.1 releases
  with the github release
- Add patch for evdi to compile with newer kernels, EL 8.7 and EL 9.1
  releases using the bundled evdi driver

* Fri Oct 14 2022 Michael L. Young <elgueromexicano@gmail.com> 1.12.0-2
- Remove EL8 and EL9 evdi patches that were merged upstream

* Sat Aug 13 2022 Michael L. Young <elgueromexicano@gmail> 1.12.0-1
- Update to use the new DisplayLink 5.6.1 package
- Update to use evdi module 1.12.0

* Tue Jul 19 2022 Michael L. Young <elgueromexicano@gmail> 1.11.0-1
- Add patches to support latest EL8 and EL9 systems
- Update evdi version on Provides line

* Sat May 21 2022 Grzegorz Bialek <gp.bialek@gmail.com> 1.11.0-1
- Update to use the newly released Displayink 5.6 package

* Fri Mar 11 2022 Michael L. Young <elgueromexicano@gmail.com> 1.10.1-1
- Update to use the newly released Displayink 5.5 package

* Sun Mar 06 2022 Michael L. Young <elgueromexicano@gmail.com> 1.10.1-1.beta
- Update evdi version to 1.10.1

* Tue Mar 01 2022 Michael L. Young <elgueromexicano@gmail.com> 1.10.0-1.beta
- Update evdi version to 1.10.0
- Update Displaylink driver to 5.5-beta
- Add new udev.sh trigger script
- Add handling of newer libusb library for CentOS 7
- Change 'displaylink.service' to 'displaylink-driver.service' to match upstream
- Update udev rules to match upstream
- Add modprobe options for evdi

* Wed Dec 29 2021 Michael L. Young <elgueromexicano@gmail.com> 1.9.1-3
- Add patch to fix compile error on EL8
- Fix checking for defined macros

* Mon Dec 27 2021 Michael L. Young <elgueromexicano@gmail.com> 1.9.1-2
- Change 'unbundled' to 'github' as part of attempt to clarify
  which evdi driver is being used in the RPM that is produced.

* Tue Oct 19 2021 Rodrigo Araujo <araujo.rm@gmail.com> 1.9.1-2
- Update driver version to 5.4.1-55.174

* Mon Apr 19 2021 Pavel Valena <pvalena@redhat.com> 1.9.1-1
- Enable spec to build cleanly using mock.

* Mon Apr 19 2021 Michael L. Young <elgueromexicano@gmail.com> 1.9.1-1
- Add a 'Provides' to indicate the bundled library in this package.
- Add a 'Requires' for libusbx
- Use Fedora short names for license field

* Fri Apr 16 2021 Michael L. Young <elgueromexicano@gmail.com> 1.9.1-1
- Updated reference to download url for the DisplayLink driver. It is now on
  synaptics site.

* Tue Apr 06 2021 Michael L. Young <elgueromexicano@gmail.com> 1.9.1-1
- Update to evdi driver version 1.9.1
- Update to Displaylink driver 5.4.0

* Thu Jan 14 2021 Michael L. Young <elgueromexicano@gmail.com> 1.7.2-2
- Prevent DKMS from adding a symlink for weak modules on Fedora.
  See DKMS documentation.

* Fri Dec 11 2020 Michael L. Young <elgueromexicano@gmail.com> 1.7.2-1
- Update to evdi driver version 1.7.2

* Tue Dec 08 2020 Michael L. Young <elgueromexicano@gmail.com> 1.7.2-1
- Add the requirement for epel if distro is RHEL based
- Remove requirement for 'ml' kernel for RHEL distro greater than 7

* Mon Dec 07 2020 Michael L. Young <elgueromexicano@gmail.com> 1.7.2-1
- Remove hard coded libevdi.so.1.7.0 reference in the files section

* Mon Jun 22 2020 Michael L. Young <elgueromexicano@gmail.com> 1.7.0-2
- Add 'make' as a requirement for installing the RPM since DKMS needs it to
  build the evdi module.

* Sat May 30 2020 Mitya Eremeev <mitossvyaz@mail.ru> 1.7.0-2
- fix typo in kernel package name
- tested package in CentOS 8

* Mon May 11 2020 Michael L. Young <elgueromexicano@gmail.com> 1.7.0-1
- Update to evdi driver version 1.7.0.
- Update to Displaylink driver 5.3.1.
- The minimum kernel supported in evdi is now 4.15. Adjusting spec to match.
- Fix support for DL-6xxx devices. The firmware image was not being copied from
  the DisplayLink driver package.
- Adjust how we use dkms inside the rpm to follow recommended way in documentation.
- Switch spec to using macro for buildroot instead of variable for consistency.
- Change hardcoded paths to rpm macros
- List out files instead of using a wild card.  This Will help catch potential
  issues if files are missing or changed with new version releases.
- Use systemd scriplets for handling systemd unit file
- Use systemd preset file to enable displaylink.service by default
- Remove calls to enable dkms service since this is already enabled by policy
  on Fedora.
- Add logrotate config file

* Thu Apr 16 2020 Michael L. Young <elgueromexicano@gmail.com> 1.6.4-3
- Remove patches that are no longer needed.  This restores the ability
  to build against rawhide.

* Fri Feb 07 2020 Michael L. Young <elgueromexicano@gmail.com> 1.6.4-2
- Apply patches contributed by abucodonosor and severach on GitHub to get evdi
  working on kernel 5.4.
  See https://github.com/DisplayLink/evdi/issues/172#issuecomment-561394805
  See https://github.com/DisplayLink/evdi/issues/172#issuecomment-561964789

* Fri Jan 10 2020 Alan Halama <alhalama@gmail.com> 1.6.4-1
- Update the evdi driver to 1.6.4

* Tue Nov 05 2019 Michael L. Young <elgueromexicano@gmail.com> 1.6.3-1
- Update the evdi driver to 1.6.3

* Mon Aug 19 2019 Michael L. Young <elgueromexicano@gmail.com> 1.6.2-2
- Update Displaylink driver to 5.2.14

* Mon Jul 08 2019 Michael L. Young <elgueromexicano@gmail.com> 1.6.2-1
- Update evdi to 1.6.2

* Wed May 08 2019 Michael L. Young <elgueromexicano@gmail.com> 1.6.1-1
- Update evdi to 1.6.1

* Mon Mar 25 2019 Peter Janes <peter.janes@autodata.net> 1.6.0-2
- Add trigger on kernel postinstall to compile evdi via dkms for the new version

* Tue Feb 19 2019 Michael L. Young <elgueromexicano@gmail.com> 1.6.0-1
- Update DisplayLink Manager to 5.1.26
- Update evdi to 1.6.0

* Tue Dec 11 2018 Orsiris de Jong <ozy@netpower.fr> 1.5.1-2
- Add make and gcc-c++ build requirements

* Mon Nov 05 2018 okay_awright <okay_awright@ddcr.biz> 1.5.1-2
- Removed workaround for xorg-server 1.20.1 and glamorgl acceleration with evdi now that fedora ships xorg-server 1.20.3 which fixes the problem

* Tue Oct 30 2018 okay_awright <okay_awright@ddcr.biz> 1.5.1
- Update evdi version to 1.5.1
- Bump downloaded version to 4.4.24
- Workaround for xorg-server > 1.19 and glamorgl acceleration with evdi: https://github.com/DisplayLink/evdi/issues/133#issuecomment-428573850

* Wed Jan 17 2018 fgiff <ffgiff@gmail.com> 1.5.0-2
- Bump downloaded version to 4.1.9

* Tue Oct 10 2017 Alan Halama <alhalama@gmail.com> 1.5
- Update evdi version to 1.5
- Bump downloaded version to 1.4

* Thu Aug 17 2017 Kahlil Hodgson <kahlil.hodgson999@gmail.com> 1.1.4-5
- Restart displaylink service around dkms rebuild
- Make setup quiet as per fedora/redhat guidelines

* Wed Jul 26 2017 Kahlil Hodgson <kahlil.hodgson999@gmail.com> 1.1.4-4
- Give systemd sleep script exec permissions

* Tue Jul 11 2017 Kahlil Hodgson <kahlil.hodgson999@gmail.com> 1.1.4-3
- Disable PageFlip if xorg is using modesetting driver

* Sat Jul 8 2017 Alan Halama <alhalama@gmail.com> 1.3.54
- Bump downloaded version to 1.3.54

* Thu Jun 8 2017 Alan Halama <alhalama@gmail.com> 1.4.1
- Update evdi version to 1.4.1

* Sun Feb 19 2017 Richard Hofer <rofer@rofer.me> 1.3.52
- Bump downloaded version to 1.3.52
- Note support for DL-6xxx devices

* Tue Oct 11 2016 Aaron Aichlmayr <waterfoul@gmail.com> 1.2.64
- Bump downloaded version to 1.2.64

* Tue Oct 04 2016 Victor Rehorst <victor@chuma.org> 1.2.55-2
- Fix systemd-sleep support for DisplayLink driver 1.2.58 (which is now current for v1.2)

* Thu Sep 22 2016 Santiago Saavedra <ssaavedra@gpul.org> 1.2.55-1
- Bump upstream version for both evdi and DisplayLink driver

* Mon May 30 2016 Santiago Saavedra <ssaavedra@gpul.org> 1.1.65-5
- Add systemd-sleep support

* Tue May 24 2016 Bastien Nocera <bnocera@redhat.com> 1.1.65-4
- Really copy the libevdi.so from the sources

* Sun May 22 2016 Bastien Nocera <bnocera@redhat.com> 1.1.65-3
- Add missing libdrm-devel BR

* Tue May 17 2016 Bastien Nocera <bnocera@redhat.com> 1.1.65-2
- Update to daemon 1.1.62 (with a zip file called 1.1.68, sigh)

* Tue May 17 2016 Bastien Nocera <bnocera@redhat.com> 1.1.65-1
- Update to 1.1.65

* Tue May 10 2016 Bastien Nocera <bnocera@redhat.com> 1.1.61-1
- Update to 1.1.61

* Thu Apr 28 2016 Bastien Nocera <bnocera@redhat.com> 1.0.453-1
- Update to 1.0.453
- Compile the library from source

* Mon Dec 14 2015 Bastien Nocera <bnocera@redhat.com> 1.0.335-1
- Update to 1.0.335

* Mon Sep 07 2015 Bastien Nocera <bnocera@redhat.com> 1.0.138-4
- Disable debuginfo subpackage creation

* Mon Sep 07 2015 Bastien Nocera <bnocera@redhat.com> 1.0.138-3
- Create RPM directly from downloaded zip file
- Add LICENSE
- Create i386 RPM

* Sun Sep 6  2015 Eric Nothen <enothen@gmail.com> - 1.0.138-2
- Modified installed kernels detection section to be more precise

* Wed Sep 2  2015 Eric Nothen <enothen@gmail.com> - 1.0.138-1
- Updated driver to version 1.0.138, as published by DisplayLink

* Wed Aug 19 2015 Eric Nothen <enothen@gmail.com> - 1.0.68-2
- Changed udev rule to detect devices based on vendor rather than model

* Thu Aug 13 2015 Eric Nothen <enothen@gmail.com> - 1.0.68-1
- Initial package based on module version 1.0.68 available at http://www.displaylink.com/downloads/ubuntu.php
0707010000001A000081A40000000000000000000000016651CEAF00000023000000000000000000000000000000000000002000000000displaylink-rpm-6.0.0/evdi.confoptions evdi initial_device_count=40707010000001B000081A40000000000000000000000016651CEAF0000015E000000000000000000000000000000000000001E00000000displaylink-rpm-6.0.0/sourcesSHA512 (evdi.tar.gz) = 4fb10f9d25f966887d2faee735c0d8c31a4882aba17555eced8293963d93a1179ce913880d6b07f3d73ce29abbd4d05ef723aba6119c2c1b8c3c095d6c93adf6
SHA512 (DisplayLink_USB_Graphics_Software_for_Ubuntu_6.0.0-24.zip) = 96669dc4200beef0cee57bf549d91b9f3ae583e636733b40341f988484ada468060d96b5d1f3e11c64d7fa47aa3bea9957ef53af35122ce3d77187c3d1e33802
07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!!101 blocks
openSUSE Build Service is sponsored by