diff --git a/README.openSUSE b/README.openSUSE
index 1923fa1..2c92138 100644
--- a/README.openSUSE
+++ b/README.openSUSE
@@ -1,20 +1,13 @@
Launching the GameMode Daemon
=============================
-The GameMode daemon is configured as a D-Bus daemon and will launch
-automatically on access by the first client. This is different from the set-up
-documented in the source repository which requires the user to enable and start
-a Systemd unit shipped with the daemon.
+The GameMode daemon is activated via D-Bus launch automatically on access by
+the first client.
Reloading the GameMode configuration file
=========================================
-As the daemon is started as a D-Bus service no explicit reload command is
-available. To force the daemon to reload the configuration it must be stopped
-for which there are two main options.
+Although activated via D-Bus. The daemon is run using Systemd and can easily
+be restarted via systemctl.
-1. Logout of your current session.
-2. Request the daemon to exit by running `killall gamemoded`.
-
-On next use the daemon will be restarted by D-Bus and read any updated
-configuration.
+ systemctl --user restart gamemoded
diff --git a/_service b/_service
index cbf6e24..20111a0 100644
--- a/_service
+++ b/_service
@@ -2,7 +2,7 @@
https://github.com/FeralInteractive/gamemode.git
git
- 1.1
+ 1.2
@PARENT_TAG@
enable
diff --git a/_servicedata b/_servicedata
index 0fc8ea5..663746b 100644
--- a/_servicedata
+++ b/_servicedata
@@ -1,4 +1,4 @@
https://github.com/FeralInteractive/gamemode.git
- 8b9f4b9ac8bb1ac97c2f4e769da17315c4658503
\ No newline at end of file
+ ceb476052d10b945d16bc4bcf5381e69c6722c96
\ No newline at end of file
diff --git a/gamemode-1.1.tar.xz b/gamemode-1.1.tar.xz
deleted file mode 100644
index 2b50aea..0000000
--- a/gamemode-1.1.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:df5d3b214dea66f5260f3d86049227857c6622b1ee23969463c0ece4b35e67a1
-size 35160
diff --git a/gamemode-1.2.tar.xz b/gamemode-1.2.tar.xz
new file mode 100644
index 0000000..a8af55a
--- /dev/null
+++ b/gamemode-1.2.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6ea1f7709ab8a7a1c8d0a4e6dfa7858e3a530c4bde1edd4728bec5b617f03bbb
+size 38336
diff --git a/gamemode-rpmlintrc b/gamemode-rpmlintrc
index 85b3424..82616db 100644
--- a/gamemode-rpmlintrc
+++ b/gamemode-rpmlintrc
@@ -2,8 +2,5 @@
addFilter('gamemoded.* polkit-unauthorized-privilege.*')
setBadness('polkit-unauthorized-privilege', 0)
-# We have a Systemd macro in postun which is currently empty, but might not be forever.
-addFilter('gamemoded.* empty-%postun')
-
# Libgamemodeauto loads the dependency via dlopen, so it cannot be picked up automatically.
addFilter('libgamemodeauto.* explicit-lib-dependency libgamemode')
diff --git a/gamemode.changes b/gamemode.changes
index 033ec29..4edd9bd 100644
--- a/gamemode.changes
+++ b/gamemode.changes
@@ -1,3 +1,15 @@
+-------------------------------------------------------------------
+Tue Jul 24 21:11:08 UTC 2018 - marix@marix.org
+
+- Update to version 1.2:
+ + Store the initial governor state on mode enter
+ + Config now supports defaultgov and desiredgov
+ + Add support for renice-ing games to a higher priority (renice
+ config option)
+ + Make libraries properly versioned.
+- Gamemoded is now run as a Systemd service in the user session
+ but still activated via D-Bus.
+
-------------------------------------------------------------------
Sat May 19 11:25:26 UTC 2018 - marix@marix.org
diff --git a/gamemode.spec b/gamemode.spec
index d69231d..33f1082 100644
--- a/gamemode.spec
+++ b/gamemode.spec
@@ -16,7 +16,7 @@
#
Name: gamemode
-Version:1.1
+Version:1.2
Release: 0
Summary: Optimise Linux system performance on demand
License: BSD-3-Clause
@@ -50,36 +50,37 @@ GameMode is a daemon/lib combo for Linux that allows games to request a set of o
The GameMode daemon is installed as a D-Bus Service and will start automatically on first access by a client.
-%package -n libgamemode
+%package -n libgamemode0
Summary: GameMode client library
Requires: gamemoded
+%systemd_requires
-%description -n libgamemode
+%description -n libgamemode0
GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS.
Libgamemode is the client library used by games or libgamemodeauto to talk to the GameMode daemon.
-
-%package -n libgamemodeauto
+%package -n libgamemodeauto0
Summary: Helper library allowing to equip any game with GameMode support
-Requires: libgamemode
+Requires: libgamemode0
-%description -n libgamemodeauto
+%description -n libgamemodeauto0
GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS.
Libgamemodeauto allows you to use GameMode with any Game by preloading it into the game.
- LD_PRELOAD=%{_libdir}/libgamemodeauto.so ./game
+ LD_PRELOAD=%{_libdir}/libgamemodeauto.so.0 ./game
For Steam games this can be done by editing the launch options:
- LD_PRELOAD=$LD_PRELOAD:%{_libdir}/libgamemodeauto.so %%command%%
+ LD_PRELOAD=$LD_PRELOAD:%{_libdir}/libgamemodeauto.so.0 %%command%%
%package -n libgamemode-devel
Summary: Headers for compiling games using GameMode
Group: Development/Libraries/C and C++
-Requires: libgamemode
+Requires: libgamemode0 = %{version}
+Requires: libgamemodeauto0 = %{version}
%description -n libgamemode-devel
GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS.
@@ -94,7 +95,7 @@ cp %{SOURCE2} .
%if 0%{?sle_version} == 120300 && 0%{?is_opensuse}
export CC=gcc-7 # gcc4.8 does not work because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016
%endif
-%meson -Dwith-systemd=false
+%meson
%meson_build
%check
@@ -103,27 +104,41 @@ export CC=gcc-7 # gcc4.8 does not work because of https://gcc.gnu.org/bugzilla/
%install
%meson_install
+%post -n libgamemode0 -p /sbin/ldconfig
+
+%postun -n libgamemode0 -p /sbin/ldconfig
+
+%post -n libgamemodeauto0 -p /sbin/ldconfig
+
+%postun -n libgamemodeauto0 -p /sbin/ldconfig
+
%files -n gamemoded
%defattr(-,root,root)
%{_bindir}/gamemoded
%{_libexecdir}/cpugovctl
+%{_userunitdir}/gamemoded.service
%{_datadir}/polkit-1/actions/com.feralinteractive.GameMode.policy
%{_datadir}/dbus-1/services/com.feralinteractive.GameMode.service
%{_mandir}/*/*
%doc example/gamemode.ini README.openSUSE
%license LICENSE.txt
-%files -n libgamemode
+%files -n libgamemode0
%defattr(-,root,root)
-%{_libdir}/libgamemode.so
+%{_libdir}/libgamemode.so.0*
+%license LICENSE.txt
-%files -n libgamemodeauto
+%files -n libgamemodeauto0
%defattr(-,root,root)
-%{_libdir}/libgamemodeauto.so
+%{_libdir}/libgamemodeauto.so.0*
+%license LICENSE.txt
%files -n libgamemode-devel
%defattr(-,root,root)
%{_includedir}/gamemode_client.h
+%{_libdir}/libgamemode.so
+%{_libdir}/libgamemodeauto.so
+%{_libdir}/pkgconfig/gamemode*
%license LICENSE.txt
%changelog