[steam/el8] Use upstream udev rules
by Simone Caronni
commit 7e182b5669b72105631ff2be5b1c96f73c49ddf3
Author: Simone Caronni <negativo17(a)gmail.com>
Date: Wed Jun 30 11:36:42 2021 +0200
Use upstream udev rules
60-steam-input.rules | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++
60-steam-vr.rules | 25 +++++++++++
steam.spec | 8 +++-
3 files changed, 146 insertions(+), 1 deletion(-)
---
diff --git a/60-steam-input.rules b/60-steam-input.rules
new file mode 100644
index 0000000..ad967c5
--- /dev/null
+++ b/60-steam-input.rules
@@ -0,0 +1,114 @@
+# Valve USB devices
+SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
+
+# Steam Controller udev write access
+KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"
+
+# Valve HID devices over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
+
+# Valve HID devices over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 wireless adapter over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 Slim over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 Slim over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"
+
+# PS5 DualSense controller over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660", TAG+="uaccess"
+
+# PS5 DualSense controller over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0660", TAG+="uaccess"
+
+# Nintendo Switch Pro Controller over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="2009", MODE="0660", TAG+="uaccess"
+
+# Nintendo Switch Pro Controller over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*057E:2009*", MODE="0660", TAG+="uaccess"
+
+# Faceoff Wired Pro Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0180", MODE="0660", TAG+="uaccess"
+
+# PDP Wired Fight Pad Pro for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0185", MODE="0660", TAG+="uaccess"
+
+# PowerA Wired Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="20d6", ATTRS{idProduct}=="a711", MODE="0660", TAG+="uaccess"
+
+# PowerA Wireless Controller for Nintendo Switch we have to use
+# ATTRS{name} since VID/PID are reported as zeros. We use /bin/sh
+# instead of udevadm directly becuase we need to use '*' glob at the
+# end of "hidraw" name since we don't know the index it'd have.
+#
+KERNEL=="input*", ATTRS{name}=="Lic Pro Controller", RUN{program}+="/bin/sh -c 'udevadm test-builtin uaccess /sys/%p/../../hidraw/hidraw*'"
+
+# Afterglow Deluxe+ Wired Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0188", MODE="0660", TAG+="uaccess"
+
+# Nacon PS4 Revolution Pro Controller
+KERNEL=="hidraw*", ATTRS{idVendor}=="146b", ATTRS{idProduct}=="0d01", MODE="0660", TAG+="uaccess"
+
+# Razer Raiju PS4 Controller
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1000", MODE="0660", TAG+="uaccess"
+
+# Razer Raiju 2 Tournament Edition
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1007", MODE="0660", TAG+="uaccess"
+
+# Razer Panthera Arcade Stick
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess"
+
+# Mad Catz - Street Fighter V Arcade FightPad PRO
+KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8250", MODE="0660", TAG+="uaccess"
+
+# Mad Catz - Street Fighter V Arcade FightStick TE S+
+KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8384", MODE="0660", TAG+="uaccess"
+
+# EMiO Elite Controller for PS4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="1cf6", MODE="0660", TAG+="uaccess"
+
+# ZeroPlus P4 (hitbox)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0ef6", MODE="0660", TAG+="uaccess"
+
+# HORI RAP4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="008a", MODE="0660", TAG+="uaccess"
+
+# HORIPAD 4 FPS
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0055", MODE="0660", TAG+="uaccess"
+
+# HORIPAD 4 FPS Plus
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0066", MODE="0660", TAG+="uaccess"
+
+# HORIPAD for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00c1", MODE="0660", TAG+="uaccess"
+
+# HORIPAD mini 4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00ee", MODE="0660", TAG+="uaccess"
+
+# Armor Armor 3 Pad PS4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0e10", MODE="0660", TAG+="uaccess"
+
+# STRIKEPAD PS4 Grip Add-on
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"
+
+# NVIDIA Shield Portable (2013 - NVIDIA_Controller_v01.01 - In-Home Streaming only)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7203", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
+
+# NVIDIA Shield Controller (2015 - NVIDIA_Controller_v01.03 over USB hidraw)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7210", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
+
+# NVIDIA Shield Controller (2017 - NVIDIA_Controller_v01.04 over bluetooth hidraw)
+KERNEL=="hidraw*", KERNELS=="*0955:7214*", MODE="0660", TAG+="uaccess"
+
+# Astro C40
+KERNEL=="hidraw*", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="0025", MODE="0660", TAG+="uaccess"
diff --git a/60-steam-vr.rules b/60-steam-vr.rules
new file mode 100644
index 0000000..8bb6f02
--- /dev/null
+++ b/60-steam-vr.rules
@@ -0,0 +1,25 @@
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8a12", MODE="0660", TAG+="uaccess"
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0306", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0309", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030a", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030b", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030c", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030e", MODE="0660", TAG+="uaccess"
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1043", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1142", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2000", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2010", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2011", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2012", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2021", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2022", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2050", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2101", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2102", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2150", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2300", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2301", MODE="0660", TAG+="uaccess"
diff --git a/steam.spec b/steam.spec
index 80cb339..bddfc98 100644
--- a/steam.spec
+++ b/steam.spec
@@ -27,6 +27,10 @@ Source6: https://raw.githubusercontent.com/denilsonsa/udev-joystick-black
# Configure limits in systemd
Source7: 01-steam.conf
+# Newer udev rules than what is bundled in the tarball
+Source8: https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-s...
+Source9: https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-s...
+
# Do not install desktop file in lib/steam, do not install apt sources
Patch0: %{name}-makefile.patch
# Do not try to copy steam.desktop to the user's desktop from lib/steam
@@ -165,7 +169,7 @@ rm -fr %{buildroot}%{_docdir}/%{name}/ \
%{buildroot}%{_bindir}/%{name}deps
mkdir -p %{buildroot}%{_udevrulesdir}/
-install -m 644 -p subprojects/steam-devices/*.rules %{SOURCE6} \
+install -m 644 -p %{SOURCE6} %{SOURCE8} %{SOURCE9} \
%{buildroot}%{_udevrulesdir}/
# Environment files
@@ -227,6 +231,8 @@ fi
* Wed Jun 30 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-4
- Separate udev rules in separate subpackage to be used also by Valve's Flatpak
Steam client.
+- Use upstream's udev rules as those are newer than what is bundled in the
+ installer tarball.
* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
- Fix appdata screenshots (rfbz#5984)
3 years, 4 months
[steam/el8] Separate udev rules in separate subpackage
by Simone Caronni
commit 4548bd2ae17d0342ac5deca51acc6142a06ebe90
Author: Simone Caronni <negativo17(a)gmail.com>
Date: Wed Jun 30 11:33:07 2021 +0200
Separate udev rules in separate subpackage
steam.spec | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
---
diff --git a/steam.spec b/steam.spec
index 03e5c04..80cb339 100644
--- a/steam.spec
+++ b/steam.spec
@@ -124,15 +124,27 @@ Recommends: (xdg-desktop-portal-gtk if gnome-shell)
Recommends: (xdg-desktop-portal-kde if kwin)
%endif
+Requires: steam-devices = %{?epoch:%{epoch}:}%{version}-%{release}
Provides: steam-noruntime = %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: steam-noruntime < %{?epoch:%{epoch}:}%{version}-%{release}
%description
-Installer for the Steam software distribution service.
Steam is a software distribution service with an online store, automated
installation, automatic updates, achievements, SteamCloud synchronized savegame
and screenshot functionality, and many social features.
+This package contains the installer for the Steam software distribution service.
+
+%package devices
+Summary: Permissions required by Steam for gaming devices
+
+%description devices
+Steam is a software distribution service with an online store, automated
+installation, automatic updates, achievements, SteamCloud synchronized savegame
+and screenshot functionality, and many social features.
+
+This package contains the necessary permissions for gaming devices.
+
%prep
%autosetup -p1 -n %{name}-launcher
@@ -203,13 +215,19 @@ fi
%{_mandir}/man6/%{name}.*
%{_metainfodir}/%{name}.appdata.xml
%config(noreplace) %{_sysconfdir}/profile.d/%{name}.*sh
-%{_udevrulesdir}/*
%dir %{_prefix}/lib/systemd/system.conf.d/
%{_prefix}/lib/systemd/system.conf.d/01-steam.conf
%dir %{_prefix}/lib/systemd/user.conf.d/
%{_prefix}/lib/systemd/user.conf.d/01-steam.conf
+%files devices
+%{_udevrulesdir}/*
+
%changelog
+* Wed Jun 30 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-4
+- Separate udev rules in separate subpackage to be used also by Valve's Flatpak
+ Steam client.
+
* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
- Fix appdata screenshots (rfbz#5984)
3 years, 4 months
[steam/el8] Fix appdata screenshots (rfbz#5984)
by Simone Caronni
commit 89520496df2153e249355239411f95a6620a9ba0
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Tue May 4 15:19:05 2021 +0100
Fix appdata screenshots (rfbz#5984)
steam.appdata.xml | 6 +++---
steam.spec | 5 ++++-
2 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/steam.appdata.xml b/steam.appdata.xml
index ee47ebe..f7e4ddf 100644
--- a/steam.appdata.xml
+++ b/steam.appdata.xml
@@ -24,15 +24,15 @@
<screenshots>
<screenshot type="default">
<caption>The main Steam library window</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-0.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-0.png</image>
</screenshot>
<screenshot>
<caption>Steam Store interface</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-1.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-1.png</image>
</screenshot>
<screenshot>
<caption>Steam community</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-2.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-2.png</image>
</screenshot>
</screenshots>
</component>
diff --git a/steam.spec b/steam.spec
index b0b440f..03e5c04 100644
--- a/steam.spec
+++ b/steam.spec
@@ -3,7 +3,7 @@
Name: steam
Version: 1.0.0.70
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Installer for the Steam software distribution service
# Redistribution and repackaging for Linux is allowed, see license file. udev rules are MIT.
License: Steam License Agreement and MIT
@@ -210,6 +210,9 @@ fi
%{_prefix}/lib/systemd/user.conf.d/01-steam.conf
%changelog
+* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
+- Fix appdata screenshots (rfbz#5984)
+
* Mon Apr 12 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-2
- Remove new desktop entry specification for Fedora 32 and RHEL/CentOS 7/8.
3 years, 4 months
[steam/el7] Use upstream udev rules
by Simone Caronni
commit 520377cc6dc3c1701e1186a159c72bde5cc7f74e
Author: Simone Caronni <negativo17(a)gmail.com>
Date: Wed Jun 30 11:36:42 2021 +0200
Use upstream udev rules
60-steam-input.rules | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++
60-steam-vr.rules | 25 +++++++++++
steam.spec | 8 +++-
3 files changed, 146 insertions(+), 1 deletion(-)
---
diff --git a/60-steam-input.rules b/60-steam-input.rules
new file mode 100644
index 0000000..ad967c5
--- /dev/null
+++ b/60-steam-input.rules
@@ -0,0 +1,114 @@
+# Valve USB devices
+SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
+
+# Steam Controller udev write access
+KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"
+
+# Valve HID devices over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"
+
+# Valve HID devices over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 wireless adapter over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 Slim over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"
+
+# DualShock 4 Slim over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"
+
+# PS5 DualSense controller over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660", TAG+="uaccess"
+
+# PS5 DualSense controller over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0660", TAG+="uaccess"
+
+# Nintendo Switch Pro Controller over USB hidraw
+KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="2009", MODE="0660", TAG+="uaccess"
+
+# Nintendo Switch Pro Controller over bluetooth hidraw
+KERNEL=="hidraw*", KERNELS=="*057E:2009*", MODE="0660", TAG+="uaccess"
+
+# Faceoff Wired Pro Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0180", MODE="0660", TAG+="uaccess"
+
+# PDP Wired Fight Pad Pro for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0185", MODE="0660", TAG+="uaccess"
+
+# PowerA Wired Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="20d6", ATTRS{idProduct}=="a711", MODE="0660", TAG+="uaccess"
+
+# PowerA Wireless Controller for Nintendo Switch we have to use
+# ATTRS{name} since VID/PID are reported as zeros. We use /bin/sh
+# instead of udevadm directly becuase we need to use '*' glob at the
+# end of "hidraw" name since we don't know the index it'd have.
+#
+KERNEL=="input*", ATTRS{name}=="Lic Pro Controller", RUN{program}+="/bin/sh -c 'udevadm test-builtin uaccess /sys/%p/../../hidraw/hidraw*'"
+
+# Afterglow Deluxe+ Wired Controller for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0e6f", ATTRS{idProduct}=="0188", MODE="0660", TAG+="uaccess"
+
+# Nacon PS4 Revolution Pro Controller
+KERNEL=="hidraw*", ATTRS{idVendor}=="146b", ATTRS{idProduct}=="0d01", MODE="0660", TAG+="uaccess"
+
+# Razer Raiju PS4 Controller
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1000", MODE="0660", TAG+="uaccess"
+
+# Razer Raiju 2 Tournament Edition
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1007", MODE="0660", TAG+="uaccess"
+
+# Razer Panthera Arcade Stick
+KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess"
+
+# Mad Catz - Street Fighter V Arcade FightPad PRO
+KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8250", MODE="0660", TAG+="uaccess"
+
+# Mad Catz - Street Fighter V Arcade FightStick TE S+
+KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8384", MODE="0660", TAG+="uaccess"
+
+# EMiO Elite Controller for PS4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="1cf6", MODE="0660", TAG+="uaccess"
+
+# ZeroPlus P4 (hitbox)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0ef6", MODE="0660", TAG+="uaccess"
+
+# HORI RAP4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="008a", MODE="0660", TAG+="uaccess"
+
+# HORIPAD 4 FPS
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0055", MODE="0660", TAG+="uaccess"
+
+# HORIPAD 4 FPS Plus
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0066", MODE="0660", TAG+="uaccess"
+
+# HORIPAD for Nintendo Switch
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00c1", MODE="0660", TAG+="uaccess"
+
+# HORIPAD mini 4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="00ee", MODE="0660", TAG+="uaccess"
+
+# Armor Armor 3 Pad PS4
+KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0e10", MODE="0660", TAG+="uaccess"
+
+# STRIKEPAD PS4 Grip Add-on
+KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"
+
+# NVIDIA Shield Portable (2013 - NVIDIA_Controller_v01.01 - In-Home Streaming only)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7203", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
+
+# NVIDIA Shield Controller (2015 - NVIDIA_Controller_v01.03 over USB hidraw)
+KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7210", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""
+
+# NVIDIA Shield Controller (2017 - NVIDIA_Controller_v01.04 over bluetooth hidraw)
+KERNEL=="hidraw*", KERNELS=="*0955:7214*", MODE="0660", TAG+="uaccess"
+
+# Astro C40
+KERNEL=="hidraw*", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="0025", MODE="0660", TAG+="uaccess"
diff --git a/60-steam-vr.rules b/60-steam-vr.rules
new file mode 100644
index 0000000..8bb6f02
--- /dev/null
+++ b/60-steam-vr.rules
@@ -0,0 +1,25 @@
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="114d", ATTRS{idProduct}=="8a12", MODE="0660", TAG+="uaccess"
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="2c87", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0306", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0309", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030a", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030b", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030c", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="030e", MODE="0660", TAG+="uaccess"
+
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1043", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1142", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2000", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2010", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2011", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2012", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2021", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2022", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2050", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2101", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2102", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2150", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2300", MODE="0660", TAG+="uaccess"
+KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2301", MODE="0660", TAG+="uaccess"
diff --git a/steam.spec b/steam.spec
index 90d4c89..c084e87 100644
--- a/steam.spec
+++ b/steam.spec
@@ -27,6 +27,10 @@ Source6: https://raw.githubusercontent.com/denilsonsa/udev-joystick-black
# Configure limits in systemd
Source7: 01-steam.conf
+# Newer udev rules than what is bundled in the tarball
+Source8: https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-s...
+Source9: https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-s...
+
# Do not install desktop file in lib/steam, do not install apt sources
Patch0: %{name}-makefile.patch
# Do not try to copy steam.desktop to the user's desktop from lib/steam
@@ -165,7 +169,7 @@ rm -fr %{buildroot}%{_docdir}/%{name}/ \
%{buildroot}%{_bindir}/%{name}deps
mkdir -p %{buildroot}%{_udevrulesdir}/
-install -m 644 -p subprojects/steam-devices/*.rules %{SOURCE6} \
+install -m 644 -p %{SOURCE6} %{SOURCE8} %{SOURCE9} \
%{buildroot}%{_udevrulesdir}/
# Environment files
@@ -227,6 +231,8 @@ fi
* Wed Jun 30 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-4
- Separate udev rules in separate subpackage to be used also by Valve's Flatpak
Steam client.
+- Use upstream's udev rules as those are newer than what is bundled in the
+ installer tarball.
* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
- Fix appdata screenshots (rfbz#5984)
3 years, 4 months
[steam/el7] Separate udev rules in separate subpackage
by Simone Caronni
commit e4bcb5903b8c5f40d36cefa044c6152e685fe0d8
Author: Simone Caronni <negativo17(a)gmail.com>
Date: Wed Jun 30 11:33:07 2021 +0200
Separate udev rules in separate subpackage
steam.spec | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
---
diff --git a/steam.spec b/steam.spec
index 25a9a38..90d4c89 100644
--- a/steam.spec
+++ b/steam.spec
@@ -124,15 +124,27 @@ Recommends: (xdg-desktop-portal-gtk if gnome-shell)
Recommends: (xdg-desktop-portal-kde if kwin)
%endif
+Requires: steam-devices = %{?epoch:%{epoch}:}%{version}-%{release}
Provides: steam-noruntime = %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: steam-noruntime < %{?epoch:%{epoch}:}%{version}-%{release}
%description
-Installer for the Steam software distribution service.
Steam is a software distribution service with an online store, automated
installation, automatic updates, achievements, SteamCloud synchronized savegame
and screenshot functionality, and many social features.
+This package contains the installer for the Steam software distribution service.
+
+%package devices
+Summary: Permissions required by Steam for gaming devices
+
+%description devices
+Steam is a software distribution service with an online store, automated
+installation, automatic updates, achievements, SteamCloud synchronized savegame
+and screenshot functionality, and many social features.
+
+This package contains the necessary permissions for gaming devices.
+
%prep
%autosetup -p1 -n %{name}-launcher
@@ -203,13 +215,19 @@ fi
%{_mandir}/man6/%{name}.*
%{_metainfodir}/%{name}.appdata.xml
%config(noreplace) %{_sysconfdir}/profile.d/%{name}.*sh
-%{_udevrulesdir}/*
%dir %{_prefix}/lib/systemd/system.conf.d/
%{_prefix}/lib/systemd/system.conf.d/01-steam.conf
%dir %{_prefix}/lib/systemd/user.conf.d/
%{_prefix}/lib/systemd/user.conf.d/01-steam.conf
+%files devices
+%{_udevrulesdir}/*
+
%changelog
+* Wed Jun 30 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-4
+- Separate udev rules in separate subpackage to be used also by Valve's Flatpak
+ Steam client.
+
* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
- Fix appdata screenshots (rfbz#5984)
3 years, 4 months
[steam/el7] Fix appdata screenshots (rfbz#5984)
by Simone Caronni
commit 4f01636f8724b12223dc39812d8380b0ae9855e2
Author: Leigh Scott <leigh123linux(a)gmail.com>
Date: Tue May 4 15:19:05 2021 +0100
Fix appdata screenshots (rfbz#5984)
steam.appdata.xml | 6 +++---
steam.spec | 5 ++++-
2 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/steam.appdata.xml b/steam.appdata.xml
index ee47ebe..f7e4ddf 100644
--- a/steam.appdata.xml
+++ b/steam.appdata.xml
@@ -24,15 +24,15 @@
<screenshots>
<screenshot type="default">
<caption>The main Steam library window</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-0.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-0.png</image>
</screenshot>
<screenshot>
<caption>Steam Store interface</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-1.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-1.png</image>
</screenshot>
<screenshot>
<caption>Steam community</caption>
- <image type="source" width="1280" height="720">http://negativo17.org/appstream/steam-2.png</image>
+ <image type="source" height="720" width="1280">https://negativo17.org/appstream/steam-2.png</image>
</screenshot>
</screenshots>
</component>
diff --git a/steam.spec b/steam.spec
index 5d9472d..25a9a38 100644
--- a/steam.spec
+++ b/steam.spec
@@ -3,7 +3,7 @@
Name: steam
Version: 1.0.0.70
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Installer for the Steam software distribution service
# Redistribution and repackaging for Linux is allowed, see license file. udev rules are MIT.
License: Steam License Agreement and MIT
@@ -210,6 +210,9 @@ fi
%{_prefix}/lib/systemd/user.conf.d/01-steam.conf
%changelog
+* Tue May 04 2021 Leigh Scott <leigh123linux(a)gmail.com> - 1.0.0.70-3
+- Fix appdata screenshots (rfbz#5984)
+
* Mon Apr 12 2021 Simone Caronni <negativo17(a)gmail.com> - 1.0.0.70-2
- Remove new desktop entry specification for Fedora 32 and RHEL/CentOS 7/8.
3 years, 4 months
[EmptyEpsilon] Cherry-pick the upstream commit enhancing GLM debundling
by Michal Schorm
commit 82bb1db77c658e8a15eec645d1302534724b26ac
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Wed Jun 30 01:14:22 2021 +0200
Cherry-pick the upstream commit enhancing GLM debundling
EmptyEpsilon.spec | 5 ++++-
upstream_SP_005_0d1ac45b73.patch | 44 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 48 insertions(+), 1 deletion(-)
---
diff --git a/EmptyEpsilon.spec b/EmptyEpsilon.spec
index 297479d..d8f23e5 100644
--- a/EmptyEpsilon.spec
+++ b/EmptyEpsilon.spec
@@ -42,7 +42,7 @@ Patch60: upstream_SP_001_32509f2db9.patch
Patch61: upstream_SP_002_d52a1b1b61.patch
Patch62: upstream_SP_003_ec30d87c22.patch
Patch63: upstream_SP_004_adbba45fd9.patch
-
+Patch64: upstream_SP_005_0d1ac45b73.patch
Recommends: xclip
@@ -70,6 +70,8 @@ Note: Network play require port 35666 UDP and TCP allowed in firewall.
%patch61 -p1 -d SeriousProton-EE-%{version}
%patch62 -p1 -d SeriousProton-EE-%{version}
%patch63 -p1 -d SeriousProton-EE-%{version}
+%patch64 -p1 -d SeriousProton-EE-%{version}
+
%build
%cmake3 \
@@ -78,6 +80,7 @@ Note: Network play require port 35666 UDP and TCP allowed in firewall.
-DCPACK_PACKAGE_VERSION_MINOR=%{version_minor} \
-DCPACK_PACKAGE_VERSION_PATCH=%{version_patch} \
-DWITH_JSON="system" \
+ -DWITH_GLM="system" \
-DCONFIG_DIR=%{_sysconfdir}/emptyepsilon/
diff --git a/upstream_SP_005_0d1ac45b73.patch b/upstream_SP_005_0d1ac45b73.patch
new file mode 100644
index 0000000..ffcbed6
--- /dev/null
+++ b/upstream_SP_005_0d1ac45b73.patch
@@ -0,0 +1,44 @@
+From 0d1ac45b738195db5e2785531db713328f547e60 Mon Sep 17 00:00:00 2001
+From: FaramosCZ <mschorm(a)redhat.com>
+Date: Tue, 29 Jun 2021 18:08:36 +0200
+Subject: [PATCH] CMake: Enhance logic around GLM (#133)
+
+* CMake: Add a status message regarding GLM used (system / bundled)
+
+* CMake: Introduce logic and variable WITH_GLM to control which GLM version should be used (system / bundled / auto)
+---
+ CMakeLists.txt | 18 ++++++++++++++++--
+ 1 file changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7b96f83..200de46 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -89,8 +89,22 @@ if(NOT ${SFML_FOUND})
+ endif()
+
+
+-find_package(glm QUIET)
+-if(NOT ${glm_FOUND})
++# GLM - OpenGL Mathematic library
++SET(WITH_GLM "auto" CACHE STRING "Which GLM to use (possible values are 'bundled', 'system' or 'auto')")
++
++if(WITH_GLM STREQUAL "system" OR WITH_GLM STREQUAL "auto")
++ find_package(glm QUIET)
++
++ if(glm_FOUND)
++ message(STATUS "GLM version used: SYSTEM")
++ elseif(WITH_GLM STREQUAL "system")
++ message(FATAL_ERROR "GLM: system package is not found or is unusable")
++ endif()
++endif()
++
++if(WITH_GLM STREQUAL "bundled" OR (WITH_GLM STREQUAL "auto" AND NOT glm_FOUND))
++ message(STATUS "GLM version used: BUNDLED")
++
+ set(GLM_BASE_PATH "${EXTERNALS_DIR}")
+
+ if(NOT EXISTS "${GLM_BASE_PATH}/glm/CMakeLists.txt")
+--
+libgit2 1.0.1
+
3 years, 4 months
[EmptyEpsilon] All "json11" patches has been upstreamed - new control variable exists to control bundling of "json
by Michal Schorm
commit 39469cec1665b346d3547eb280528a7ba1f6e259
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Wed Jun 30 00:51:06 2021 +0200
All "json11" patches has been upstreamed
- new control variable exists to control bundling of "json11"
- upstream adopted Findjson.cmake CMake module
EmptyEpsilon.spec | 14 ++---
Findjson11.cmake | 39 ------------
json_debundle.patch | 14 -----
upstream_SP_004_adbba45fd9.patch | 131 +++++++++++++++++++++++++++++++++++++++
4 files changed, 135 insertions(+), 63 deletions(-)
---
diff --git a/EmptyEpsilon.spec b/EmptyEpsilon.spec
index e5d5ca2..297479d 100644
--- a/EmptyEpsilon.spec
+++ b/EmptyEpsilon.spec
@@ -23,18 +23,13 @@ URL: http://emptyepsilon.org/
Source0: https://github.com/daid/EmptyEpsilon/archive/EE-%{version}.zip#/EmptyEpsi...
Source1: https://github.com/daid/SeriousProton/archive/EE-%{version}.zip#/SeriousP...
-# The "FindJson11.cmake" file has been taken from the following project:
-# https://github.com/MASKOR/mapit/blob/master/cmake/Findjson11.cmake
-# which is licensed under LGPL-3.0 License
-Source2: Findjson11.cmake
-
# EmptyEpsilon downstream patches:
#Patch1:
# SeriousProton downstream patches:
-Patch20: json_debundle.patch
+#Patch20:
# EmptyEpsilon upstream patches:
Patch40: upstream_EE_001_69d93e6acd.patch
@@ -46,6 +41,7 @@ Patch43: upstream_EE_004_530fe32f95.patch
Patch60: upstream_SP_001_32509f2db9.patch
Patch61: upstream_SP_002_d52a1b1b61.patch
Patch62: upstream_SP_003_ec30d87c22.patch
+Patch63: upstream_SP_004_adbba45fd9.patch
@@ -66,7 +62,6 @@ Note: Network play require port 35666 UDP and TCP allowed in firewall.
%prep
%setup -q -a 1 -n EmptyEpsilon-EE-%{version}
-%patch20 -p1 -d SeriousProton-EE-%{version}
%patch40 -p1
%patch41 -p1
%patch42 -p1
@@ -74,9 +69,7 @@ Note: Network play require port 35666 UDP and TCP allowed in firewall.
%patch60 -p1 -d SeriousProton-EE-%{version}
%patch61 -p1 -d SeriousProton-EE-%{version}
%patch62 -p1 -d SeriousProton-EE-%{version}
-
-# Copy CMake module for finding "json11" to the project
-cp %{SOURCE2} SeriousProton-EE-%{version}/cmake/
+%patch63 -p1 -d SeriousProton-EE-%{version}
%build
%cmake3 \
@@ -84,6 +77,7 @@ cp %{SOURCE2} SeriousProton-EE-%{version}/cmake/
-DCPACK_PACKAGE_VERSION_MAJOR=%{version_major} \
-DCPACK_PACKAGE_VERSION_MINOR=%{version_minor} \
-DCPACK_PACKAGE_VERSION_PATCH=%{version_patch} \
+ -DWITH_JSON="system" \
-DCONFIG_DIR=%{_sysconfdir}/emptyepsilon/
diff --git a/upstream_SP_004_adbba45fd9.patch b/upstream_SP_004_adbba45fd9.patch
new file mode 100644
index 0000000..4bfb8a1
--- /dev/null
+++ b/upstream_SP_004_adbba45fd9.patch
@@ -0,0 +1,131 @@
+From adbba45fd9ae5e020e43e5d7f9326f1355391209 Mon Sep 17 00:00:00 2001
+From: FaramosCZ <mschorm(a)redhat.com>
+Date: Tue, 29 Jun 2021 18:08:21 +0200
+Subject: [PATCH] CMake: Enhance json11 logic (#134)
+
+* Fix CMake deprecation warning in "JSON 11" bundled project
+ - Raise the minimal CMake version required for the "JSON 11" bundled project to the minimal CMake version required by the SeriousProton project itself, which is 3.8
+ - Remove bits of CMake code applicable only for CMake version < 3
+
+* CMake: Implement logic to use system version of the "json11" library instead of the bundled one
+Add a CMake module for finding the system "json11" library
+---
+ CMakeLists.txt | 15 ++++++++++++++-
+ cmake/Findjson11.cmake | 44 ++++++++++++++++++++++++++++++++++++++++++++
+ src/json11/CMakeLists.txt | 19 ++++++-------------
+ 3 files changed, 64 insertions(+), 14 deletions(-)
+ create mode 100644 cmake/Findjson11.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bfc6ece..7b96f83 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -109,8 +109,21 @@ add_subdirectory(src/lua)
+ add_subdirectory(src/GL)
+ add_subdirectory(src/libopus)
+
++# json11
+ if(SERIOUSPROTON_WITH_JSON)
+- add_subdirectory(src/json11)
++ SET(WITH_JSON "bundled" CACHE STRING "Which json11 to use (possible values are 'bundled' or 'system')")
++
++ if(WITH_JSON STREQUAL "system")
++ find_package(json11 QUIET)
++ if(json11_FOUND)
++ message(STATUS "json11 version used: SYSTEM")
++ else()
++ message(FATAL_ERROR "json11: system package is not found or is unusable")
++ endif()
++ elseif(WITH_JSON STREQUAL "bundled")
++ message(STATUS "json11 version used: BUNDLED")
++ add_subdirectory(src/json11)
++ endif()
+ endif()
+
+ #---------------------------------File lists-----------------------------------
+diff --git a/cmake/Findjson11.cmake b/cmake/Findjson11.cmake
+new file mode 100644
+index 0000000..780eb6f
+--- /dev/null
++++ b/cmake/Findjson11.cmake
+@@ -0,0 +1,44 @@
++# This "FindJson11.cmake" file has been taken from the following project:
++# https://github.com/MASKOR/mapit/blob/master/cmake/Findjson11.cmake
++# which is licensed under LGPL-3.0 License
++# Aditional changes were done by Michal Schorm
++
++# Locate json11
++#
++# This module defines
++# json11_FOUND, if false, do not try to link to json11
++# json11_LIBRARY, where to find json11
++# json11_INCLUDE_DIR, where to find json11.hpp
++#
++# If json11 is not installed in a standard path, you can use the json11_DIR CMake variable
++# to tell CMake where json11 is.
++
++find_path(json11_INCLUDE_DIR json11.hpp
++ PATHS
++ /usr/local/include/
++ /usr/include/
++ /sw/json11/ # Fink
++ /opt/local/json11/ # DarwinPorts
++ /opt/csw/json11/ # Blastwave
++ /opt/json11/
++ /include/)
++
++if(NOT WIN32)
++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so" ".a")
++endif(NOT WIN32)
++
++find_library(json11_LIBRARY
++ NAMES json11
++ PATH_SUFFIXES lib64 lib
++ PATHS /usr/local
++ /usr
++ /sw
++ /opt/local
++ /opt/csw
++ /opt
++ /lib)
++
++# handle the QUIETLY and REQUIRED arguments and set json11_FOUND to TRUE if all listed variables are TRUE
++include(FindPackageHandleStandardArgs)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(json11 DEFAULT_MSG json11_INCLUDE_DIR json11_LIBRARY)
++mark_as_advanced(json11_INCLUDE_DIR json11_LIBRARY)
+diff --git a/src/json11/CMakeLists.txt b/src/json11/CMakeLists.txt
+index 819c36f..cb990e7 100644
+--- a/src/json11/CMakeLists.txt
++++ b/src/json11/CMakeLists.txt
+@@ -1,22 +1,15 @@
+-cmake_minimum_required(VERSION 2.8)
+-if (CMAKE_VERSION VERSION_LESS "3")
+- project(json11 CXX)
+-else()
+- cmake_policy(SET CMP0048 NEW)
+- project(json11 VERSION 1.0.0 LANGUAGES CXX)
+-endif()
++cmake_minimum_required(VERSION 3.8)
++
++cmake_policy(SET CMP0048 NEW)
++project(json11 VERSION 1.0.0 LANGUAGES CXX)
+
+ enable_testing()
+
+ option(JSON11_BUILD_TESTS "Build unit tests" OFF)
+ option(JSON11_ENABLE_DR1467_CANARY "Enable canary test for DR 1467" OFF)
+
+-if(CMAKE_VERSION VERSION_LESS "3")
+- add_definitions(-std=c++11)
+-else()
+- set(CMAKE_CXX_STANDARD 11)
+- set(CMAKE_CXX_STANDARD_REQUIRED ON)
+-endif()
++set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
+ set(CMAKE_INSTALL_PREFIX /usr)
+--
+libgit2 1.0.1
+
3 years, 4 months