LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 05-11-2021, 12:49 PM   #1
solarfields
Senior Member
 
Registered: Feb 2006
Location: slackalaxy.com
Distribution: Slackware, CRUX
Posts: 1,449

Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
Xfce 4.12 on Slackware 15.0 beta (GTK2 desktop)


Hi all!

Since I am not particularly fond of GTK3 and would like to keep using a GTK2-based Xfce, I prepared a few SlackBuilds that build Xfce 4.12 on Slackware 15.0 beta:

https://github.com/slackalaxy/tales

I used as a starting point the SlackBuilds from Slackware 14.2, but followed the template of SBo. Some components are updated to their latest GTK2 version (minor version bump) and in some cases I found additional patches, like for xfce4-weather-plugin (and of course, now I checked Slackware's 14.2 patches/ and there was a patch for it all the time...). Everything builds and seems to run just fine in a VM, but I have not installed it on my host yet.

For the record, just recompiling Xfce from 14.2 on 15.0 beta worked for me. However, I wanted to dig a bit.

I did this mainly for myself, but though someone else might be interested. It was educational and I would like to express my gratitude to Patrick and Robby for the hard work, as well as anyone who have contributed.

Comments and suggestions are welcome.

Last edited by solarfields; 05-11-2021 at 02:43 PM.
 
Old 05-11-2021, 01:14 PM   #2
vladimir_vist
LQ Newbie
 
Registered: May 2021
Distribution: Slackware
Posts: 2

Rep: Reputation: Disabled
Thanks for your work.

I thought they would do the same in the coming days, but you got ahead of me.
 
1 members found this post helpful.
Old 05-11-2021, 01:48 PM   #3
keithpeter
Member
 
Registered: Nov 2015
Location: 52:30N 1:55W
Distribution: Slackware 15.0, OpenBSD 7.4
Posts: 310

Rep: Reputation: Disabled
Thanks for putting these up. I'll try them on a fresh current install on my testing machine.

What would be the best way to automate the downloading of the source files into a 'tales' tree so I can do a mass compile?
 
1 members found this post helpful.
Old 05-11-2021, 02:24 PM   #4
solarfields
Senior Member
 
Registered: Feb 2006
Location: slackalaxy.com
Distribution: Slackware, CRUX
Posts: 1,449

Original Poster
Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
Hi, I used sbopkg (https://sbopkg.org/). First, I copied the sub-folders:

apps/
art/
borrowed/
legacy/
plugins/
xfce/

into /var/lib/sbopkg/local (it was empty), so sbopkg sees them as a local repository. Then, I loaded the "tales.sqf" queue into sbopkg and it did everything automatically. Somehow, sbopkg appended the "_SBo" tag instead of the one I specified, so keep it in mind... I will write a script that will do the download and install automatically in the next couple of days.

EDIT: directory structure is updated, see this post below.

Last edited by solarfields; 05-12-2021 at 04:59 AM.
 
1 members found this post helpful.
Old 05-11-2021, 04:34 PM   #5
TheRealGrogan
Member
 
Registered: Oct 2010
Location: Ontario, Canada
Distribution: Slackware, LFS, Manjaro (for gaming)
Posts: 570

Rep: Reputation: 413Reputation: 413Reputation: 413Reputation: 413Reputation: 413
Hah... I run XFCE 4.12.0 also, it's my favourite. I don't build all of it though, just the parts I want. xfce4-panel is the only thing that has GTK+3 support ported, and it can be disabled at compile time.

What I do is just send it to /opt/xfce, I don't package it. I just add bin to path and lib to ld.so.conf.

I haven't done this on current -current, glad to hear it still compiles. I'm using Plasma on my current, -current box.
 
2 members found this post helpful.
Old 05-11-2021, 04:36 PM   #6
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by keithpeter View Post
Thanks for putting these up. I'll try them on a fresh current install on my testing machine.

What would be the best way to automate the downloading of the source files into a 'tales' tree so I can do a mass compile?
You could also do something like this if you don't want to use sbopkg (you'd run this from within the git tree after you clone it):

Code:
while IFS= read -r PRGM; do
  cd */$PRGM
  . $PRGM.info
  wget $DOWNLOAD
  sh $PRGM.SlackBuild
  cd -
  upgradepkg --reinstall --install-new /tmp/$PRGM-$VERSION-*
done < tales.sqf
Optionally, you could add an md5sum check after the wget and before running the SlackBuild:

Code:
if [ ! "$(md5sum < "$(basename "$DOWNLOAD")")" = "$MD5SUM  -" ]; then
  printf "MD5SUM doesn't match. Would you like to continue anyway? Y/n "
  read answer
  echo $answer | grep -qi "n" && exit 1
fi
I haven't checked this code, but it should build and install everything in the order of the tales.sqf file.

Quote:
Originally Posted by solarfields View Post
Somehow, sbopkg appended the "_SBo" tag instead of the one I specified, so keep it in mind... I will write a script that will do the download and install automatically in the next couple of days.
sbopkg has that as a changeable setting in /etc/sbopkg/repos.d/. You would need to edit the file for the repo you're using (or create a new repo file, see below) and change the 6th field to show the tag you want.

Code:
# Repo Branch Description Tag Tool Link CheckGPG
Tales main "Xfce 4.12 SlackBuilds" _tales git git://github.com/slackalaxy/tales.git@main ""
You could just save this as something like /etc/sbopkg/repos.d/65-tales-xfce.repo and then you can select it through the menu or via sbopkg -V Tales/main then sync the repo via sbopkg -r, then move the tails.sqf to /var/lib/sbopkg/queues, then simply sbopkg -i tales.sqf and sit back and wait
 
4 members found this post helpful.
Old 05-11-2021, 04:44 PM   #7
solarfields
Senior Member
 
Registered: Feb 2006
Location: slackalaxy.com
Distribution: Slackware, CRUX
Posts: 1,449

Original Poster
Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
TheRealGrogan, the only component that uses GTK3 in the 'tales' repo is xfce4-pulseaudio-plugin. I would not mess with that and I do need it to switch between speakers and bluetooth headphones (the blueman-applet that stays in the system tray is also GTK3...). I am considering to add xfce4-mixer, as an alternative option, though.

bassmadrigal, that's great! Thank you so much for the script and explanations about sbopkg. I will give them a try tomorrow!
 
Old 05-12-2021, 04:29 AM   #8
keithpeter
Member
 
Registered: Nov 2015
Location: 52:30N 1:55W
Distribution: Slackware 15.0, OpenBSD 7.4
Posts: 310

Rep: Reputation: Disabled
Quote:
Originally Posted by solarfields View Post
bassmadrigal, that's great! Thank you so much for the script and explanations about sbopkg. I will give them a try tomorrow!
Thanks to solarfields hard work sorting out what to build and bassmadrigal's script I'm posting this off a fresh install of -current64 (11th May from Alienbob's install image) and xfce4 4.12.

Full install apart from kde and xfce

I split bassmadrigal's script into one that downloaded all the sources and another that ran the slackbuilds and installed the built packages. I ran into one issue with the pattern used in the upgradepkg line, error below...

Code:
/home/keith/Downloads/tales
Cannot install /tmp/gnome-icon-theme--*: file not foun
...somehow an extra dash was added to the package names in tales/art. So I munged that line as shown below in the script that runs all the slackbuilds...

Code:
bash-5.1$ cat compile.sh
while IFS= read -r PRGM; do
  cd */$PRGM
   . $PRGM.info
#  wget $DOWNLOAD
  sh $PRGM.SlackBuild
  cd -
  upgradepkg --reinstall --install-new /tmp/$PRGM*_tales.tgz 
done < tales.sqf
The tales/legacy directories don't have info files so the source wasn't downloaded. I might install the older version of evince manually.
 
1 members found this post helpful.
Old 05-12-2021, 04:39 AM   #9
solarfields
Senior Member
 
Registered: Feb 2006
Location: slackalaxy.com
Distribution: Slackware, CRUX
Posts: 1,449

Original Poster
Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
Hi!

I merged apps/ and plugins/ folders into apps-plugins/. Also, I put the stuff from art/ into legacy/, so now things are a bit simpler:

xfce/
apps-plugins/
borrowed/
legacy/

I also included xfce4-mixer. This depends on gstreamer0, gst0-plugins-base and gst0-plugins-good, so I added them to borrowed/, but you can install them from ponce's SBo-current repo (https://github.com/Ponce/slackbuilds), as well.

keithpeter, let me know how things run. I am a bit puzzled a about the info files... don't you have them? I will double check.
 
Old 05-12-2021, 04:48 AM   #10
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
Quote:
Originally Posted by keithpeter View Post
I ran into one issue with the pattern used in the upgradepkg line, error below...

Code:
/home/keith/Downloads/tales
Cannot install /tmp/gnome-icon-theme--*: file not foun
...somehow an extra dash was added to the package names in tales/art. So I munged that line as shown below in the script that runs all the slackbuilds...
That's certainly odd and I'm not seeing why it would've happened.

Quote:
Originally Posted by keithpeter View Post
Code:
  upgradepkg --reinstall --install-new /tmp/$PRGM*_tales.tgz
I had intended to keep the version in there just to make sure any potential version updates in the repo won't cause the system to try and upgradepkg multiple packages. Maybe an alternative would be to leave the dash after the version out. But I do like including the tag, so maybe a better upgradepkg command would be:

Code:
upgradepkg --reinstall --install-new /tmp/${PRGM}-${VERSION}*_tales.tgz
(I included the variables within curly brackets, just in case that was the issue, but I doubt it was...)
 
2 members found this post helpful.
Old 05-12-2021, 04:58 AM   #11
keithpeter
Member
 
Registered: Nov 2015
Location: 52:30N 1:55W
Distribution: Slackware 15.0, OpenBSD 7.4
Posts: 310

Rep: Reputation: Disabled
Quote:
Originally Posted by bassmadrigal View Post
I had intended to keep the version in there just to make sure any potential version updates in the repo won't cause the system to try and upgradepkg multiple packages. Maybe an alternative would be to leave the dash after the version out. But I do like including the tag, so maybe a better upgradepkg command would be:

Code:
upgradepkg --reinstall --install-new /tmp/${PRGM}-${VERSION}*_tales.tgz
(I included the variables within curly brackets, just in case that was the issue, but I doubt it was...)
I'll try that one when I reclone the git repository sometime tomorrow. I take the point about version numbers in the command and I was running these scripts on a completely fresh install with no packages in /tmp previously.
 
Old 05-12-2021, 04:59 AM   #12
keithpeter
Member
 
Registered: Nov 2015
Location: 52:30N 1:55W
Distribution: Slackware 15.0, OpenBSD 7.4
Posts: 310

Rep: Reputation: Disabled
Quote:
Originally Posted by solarfields View Post
keithpeter, let me know how things run. I am a bit puzzled a about the info files... don't you have them? I will double check.
Just checked, and yes there *was* an info file but the source wasn't downloaded for some reason. Just downloaded it manually fine so put that one down to the operator!
 
1 members found this post helpful.
Old 05-12-2021, 05:03 AM   #13
solarfields
Senior Member
 
Registered: Feb 2006
Location: slackalaxy.com
Distribution: Slackware, CRUX
Posts: 1,449

Original Poster
Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
keithpeter, just to say it: the stuff in legacy/ is there simply because of my own preferences. I like the old file-roller more than xarchiver, but I can add xarchiver (newest v0.5.4.17, compiled with --enable-gtk2) to apps-plugins/. I am sure most users don't care about such ancient software...
 
  


Reply

Tags
gtk2, xfce



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Linux Mint 18.1 Xfce Edition Enters Beta, Based on Ubuntu 16.04 and Xfce 4.12 LXer Syndicated Linux News 0 01-05-2017 09:54 AM
Lucid update ties gtk2-module-rgba to ubuntu-desktop. Please help! Kenny_Strawn Ubuntu 1 06-24-2010 04:58 AM
Anyone knows how to get the pointer position on the desktop using GTK2.0? norman68 Linux - Software 0 06-24-2003 04:12 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 08:33 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration