https://bugs.kde.org/show_bug.cgi?id=406180

--- Comment #71 from John A <drjohnny...@gmail.com> ---
(In reply to Drake from comment #69)
> (In reply to Jeffery Patton from comment #68)
> > (In reply to John A from comment #67)
> > > (In reply to hugues31100 from comment #66)
> > > > (In reply to Luca Carlon from comment #65)
> > > > > What distro?
> > > > 
> > > > I use Manjaro
> > > 
> > > Download the KWin sources from
> > > https://download.kde.org/stable/plasma/$pkgver/$pkgname-$pkgver.tar.xz, 
> > > edit
> > > the file main_x11.cpp (apply the patch
> > > https://phabricator.kde.org/file/data/telix5fjwmcuir3v5yxs/PHID-FILE-
> > > dldsuycendhh6yyimgsp/Masterwork_From_Distant_Lands) and compress the 
> > > sources
> > > to a tar.xz.
> > > Edit the PKGBUILD from
> > > https://git.archlinux.org/svntogit/packages.git/tree/trunk/
> > > PKGBUILD?h=packages/kwin with your own source tar.xz (compute the 
> > > sha256sum
> > > for it and replace the field sha256sums in your PKGBUILD).
> > > Then, use the edited PKGBUILD to build and install the package.
> > > You have to repeat the process for qtbase , look at
> > > https://git.archlinux.org/svntogit/packages.git/tree/trunk/
> > > PKGBUILD?h=packages/qt5-base.
> > > The patch for qtbase is:
> > > diff --git
> > > a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
> > > b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
> > > index 4adf662152..434ea60bfb 100644
> > > --- 
> > > a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
> > > +++ 
> > > b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
> > > @@ -601,6 +601,7 @@ void QGLXContext::doneCurrent()
> > >      else
> > >          glXMakeCurrent(m_display, 0, 0);
> > >      m_isPBufferCurrent = false;
> > > +    m_swapInterval = -1;
> > >  }
> > >  
> > >  void QGLXContext::swapBuffers(QPlatformSurface *surface)
> > > 
> > > If for whatever reason you cannot apply the patches, just edit theses two
> > > files since the patches are pretty small in size.
> > 
> > How about for Debian/Ubuntu/KDE Neon?
> > 
> > I use KDE Neon (well, not as of late partly due to this bug) and I guess
> > many of the steps are similar, except for the fact I'm dealing with Debian
> > packages. Do I like, build KWin, then use checkinstall to create a package
> > and install the package, or what? :/
> 
> 
> I suggest to wait for an official fix, else you have to repeat the build
> process with each kwin update.
> 
> If you still want to apply the patch, you need to know at least some basic
> stuff how to build a package from source. Because this is different to every
> distro, i cant cover every distro here, but usually every distro has a good
> documentation how to build a package from source. I will show you today how
> to do that in Kubuntu.
> 
> Lets assume you have Kubuntu Disco Dingo, in that case you need to obtain
> the sources for kwin Disco Dingo first.
> 
> You can fetch them via web:
> https://packages.ubuntu.com/disco/kde/kwin-x11
> 
> Or via apt-get(recommended)
> apt-get source kwin-x11
> 
> 
> After you downloaded the sources you can apply the patch to main_x11.cpp. If
> you aren't able to apply the patch for whatever reason, you can, like
> Jeffery already mentioned, just edit the files manually because the patch
> files are very small. After you have done that you need to install a few
> required build-tools:
> 
> sudo apt-get install build-essential fakeroot dpkg-dev
> 
> Now the only step left, before we can start the build, is to get the
> dependencies for the build itself. You can download and install them with:
> 
> sudo apt-get build-dep kwin-x11 
> 
> now we can start to create the build file
> we can do this with cmake ./
> 
> And then we can start the build with the command
> make
> 
> After that you can install the package. You need to repeat the step for
> qtbase but with the patch below
> 
> -----------------------------------------------------------------------------
> ---
> diff --git
>  a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
>  b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
>  index 4adf662152..434ea60bfb 100644
>  --- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
>  +++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
>  @@ -601,6 +601,7 @@ void QGLXContext::doneCurrent()
>       else
>           glXMakeCurrent(m_display, 0, 0);
>       m_isPBufferCurrent = false;
>  +    m_swapInterval = -1;
>   }
>   
>   void QGLXContext::swapBuffers(QPlatformSurface *surface)
>  
> -----------------------------------------------------------------------------
> ---

As I am using Kubuntu, I also suggest to those that want to apply the patches
to use a local custom debian/ubuntu repo. It makes installing and removing
custom packages easier and it is useful for any package you want to modify and
install.
Do not forget to dch -i before building in order to be able to differentiate
between the custom packages and the official ones.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to