[CentOS] Mate on Centos 7

Wed Aug 7 21:09:25 UTC 2019
isdtor <isdtor at gmail.com>

Greg Bailey writes:
> On 8/7/19 8:02 AM, isdtor wrote:
> > isdtor writes:
> >
> >>>> Can I really be the only user of Mate on Centos 7??
> >>> No, definitely not. I use MATE on C7, because Gnome is, how do I
> >>> say this politely..., um, horrible. Not a KDE fan either.
> >>>
> >>> Gnome-2.x wasn't broken, didn't need to be thrown away and
> >>> replaced by something completely different.
> >> Not broken, but full of bugs that will never get fixed.
> >>
> >> I did a while back rebuild the EPEL rpms for 1.20. There are spec files I could make available but I can't find the build environemnt setup now. It involves mock, a custom local repo to receive the fresh builds as you don't want to pull in the rpms from EPEL, and a build script that defines the order, among other things. If I have time next week I can try and locate everything.
> > I have done the hard lifting and rebuilt mate 1.22 on CentOS 7. It's not without quirks, and I haven't actually installed and tested, but I'm willing to make the srpms available - without any commitments. This might make a good addition to Nux :)
> >
> 
> 
> The person responsible for packaging the mate RPMs for EPEL offered to 
> hand that off to someone, which I considered (since I'm a Fedora/EPEL 
> packager), but was reluctant to offer without understanding how much 
> heavy lifting was involved.  Also, I wasn't sure how much the mate on 
> CentOS user community wants to stick with 1.16 vs. upgrade to 1.22.  
> What kind of "quirks" did you run into?

There's basically two.

I was building the packages under CentOS 7.5 with mock. One of the packages, mate-terminal, needs a newer version of vte291, i.e. the one from 7.6. No problem when building on 7.6+ (I hope - in process now).

The other is that mozo now requires python >= 3.5. While I managed to get SCLo rh-python35 into the mock chroot and the appropriate commands into the spec file, it would still not build because the rpm script processing python files was looking for /usr/bin/python3.5. Rather than figure out how to do this in mock, I built the rpm outside mock in an "scl enable"'d terminal and with /usr/bin/python3.5 a link to /opt/rh/rh-python35/...

Other than that I think I had to update one patch because the source files changed, and create another because some construct in C code requires C99; but it was easy to rewrite for older C (I'm putting this one down to sloppy coding by mate developers). Some rpms required updated build reqs.

All of this is relative to the 1.20 rpms I built back in December, which are in turn based on 1.16 from EPEL.