LinuxQuestions.org
Visit Jeremy's Blog.
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 02-04-2019, 05:43 PM   #1
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Rep: Reputation: 173Reputation: 173
Slackbuilding with meson/ninja for Pithos src to avoid flatpack


HOw does a person incorporate meson and ninja building into a slackbuild script?

I'm a Pandora user. I normally have Lumina as my DE. But once in a while I drop back to WindowMaker. Lumina has Pandora as its default media player. (To get it running you install pianobar.) Lumina then provides a rudimentary pianobar GUI front-end. I see where there is a universal GTK based front-end called Pithos. The problem is the developer is providing either a flatpack or the source. The build instructions steps call on both meson and ninja. I used AlienBob's Slackbuild script builder to create a basic slackbuild. But it failed to build because it looked for a pithos-1.4.1 file and the download is named master.tar.gz. So I created a copy as pithos-1.4.1.tar.gz. Then it complained about no directory pithos-1.4.1. I think I can handle these errors to fix the Slackbuild. But I'm more worried that it is going to fail when it comes to needing to build by meson and ninja.

Is there any special steps or commands which need to be followed when the developer calls for their source to use meson and ninja? Do I simply insert "meson build", "ninja -C build", "ninja -C build run", and "ninja -C build install" in place of other commands? Or will the slackbuild know to use meson and ninja? I have installed both meson and ninja as SBo's since they are obviously dependencies.

Appreciate the help.

PS. I guess I should have asked if anyone has alternate Pandora player for Slackware?
Or if anyone has another slackbuild I could use as an example of meson/ninja building?
Of if there is another tool to use after building to make the results a slackpkg, something like checkinstall maybe?

Last edited by bamunds; 02-04-2019 at 06:34 PM. Reason: Added questions.
 
Old 02-04-2019, 11:25 PM   #2
BradReed
Member
 
Registered: Apr 2015
Location: Earth
Distribution: Slackware-current
Posts: 68

Rep: Reputation: 26
I really don't know much about ninja or meson, but Slackware-current has them included.
ninja-1.9.0-x86_64-1
meson-0.49.1-x86_64-1

"man meson" gives examples for both meson and ninja usage.
 
Old 02-05-2019, 03:44 PM   #3
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
I decided to try to locally build the pithos using meson and ninja commands. But ran into an issue with a missing GIo file, unsolved right now, and then I was going to use makepkg on the resulting. But since this failed. I thought I'd download the source file and try the slackbuild again. After fixing the tar to deal with a .xz file the I get a new error which just doesn't make sense.

Why would the slackbuild error with "No such file or directory" on Line 112 which is referring to the SLKCFLAGS variable set earlier in the build script? The variable simply sets the architecture type?

I've read the meson man page and I'm still not sure where to put it in the slackbuild script?

Last edited by bamunds; 02-05-2019 at 03:47 PM.
 
Old 02-05-2019, 03:59 PM   #4
Ian M
LQ Newbie
 
Registered: Oct 2017
Posts: 12

Rep: Reputation: Disabled
I don't know if this is any help but here's a slackbuild that uses meson and ninja https://slackbuilds.org/slackbuilds/...put.SlackBuild
 
Old 02-05-2019, 05:54 PM   #5
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
Ian, thanks I'll try some of these steps and see if it works. I appreciate your input. Cheers.
 
Old 02-06-2019, 03:05 AM   #6
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 5,705

Rep: Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479
Quote:
Originally Posted by bamunds View Post
Why would the slackbuild error with "No such file or directory" on Line 112 which is referring to the SLKCFLAGS variable set earlier in the build script? The variable simply sets the architecture type?
Maybe I missed it, but what are you trying to build and what commands did you run (or what is in the SlackBuild you're running)?
 
Old 02-07-2019, 10:26 AM   #7
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
Please read first post. The program I'm trying to build and what steps I took are in there. Thanks
 
Old 02-08-2019, 04:40 AM   #8
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 5,705

Rep: Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479
Sorry, for some reason I was thinking "pithos" was some slang word for something that was pissing you off (like POS), and I didn't go back far enough to reread your initial post...

Without seeing your SlackBuild, it's impossible to know what's wrong. First guess if you're missing a backslash at the end of line 111.

As for the program working, I did have to install pygobject3-python3 and its dependencies (it complained about missing Gio, which is maybe what you meant when you put Glo?), then I was able to build pithos and run it with:

Code:
meson build
ninja -C build run
I don't have a pandora account, so I can't check whether it works, and I'm too lazy to make it into a Slackware package (if you don't want to run it after building, remove the "run" at the end of the second command).

I will say that I did this on a very unclean machine, meaning I have over 400 packages from SBo installed. There may be additional dependencies beyond the one I mentioned above.
 
Old 02-08-2019, 12:49 PM   #9
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
Thanks @bassmadrigal, you always help point me in the right direction. I've added the required deps (py3cairo, pygobjects-python3) and that helped. The build commands are still not working, except for ninja -C build install. This actually installs to /usr/share/local/pithos/pithos, is that an OK place to put a locally build app (I'll check standards)? More on this at https://github.com/pithos/pithos/wik...ng-from-Source referenced on the Pithos installation page.

I can then start Pithos, add my userid and pass, but I then get constant errors about missing gstreamer plugins without an identification of the missing plugins. Which is weird, because if I run pianobar cli it doesn't complain about any gstreammer plugins. These are the errors I'm seeing from Pithos.
Code:
ERROR - pithos:on_gst_error:1101 - Gstreamer error: gst-core-error-quark: Your GStreamer installation is missing a plug-in. (12), gsturidecodebin.c(1006): no_more_pads_full (): /GstPlayBin:player/GstURIDecodeBin:uridecodebin0:
no suitable plugins found:
gstdecodebin2.c(4558): gst_decode_bin_expose (): /GstPlayBin:player/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0:
no suitable plugins found:
Missing decoder: MPEG-1 Layer 3 (MP3) (audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)44100, channels=(int)2, parsed=(boolean)true)
, 12
I suspect this is a reference issue within the builds expecting gstreamer to be installed in a different directory on Slackware than it is under Fedora and it's clones. What do you think?

I believe with ian's refernce to the libinput slackbuild (also uses meson/ninja) and your identification of which packages had to be added, that I'm on the way.

BTW, how did you identify from the error about Gio that it was in pygobjects-python3? That process of identifying where a dependency can be found is a mystery to me right now and I'd like to know without bother the great helpers here on such a simple issue. Thanks.

Last edited by bamunds; 02-08-2019 at 01:25 PM.
 
Old 02-08-2019, 01:08 PM   #10
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 5,705

Rep: Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479Reputation: 3479
Quote:
Originally Posted by bamunds View Post
Thanks @bassmadrigal, you always help point me in the right direction. I think with ian's example slackbuild and your identification of which packages had to be added, that I'm on the way. BTW, how did you identify from the error about Gio that it was in pygobjects-python3? That process of identifying where a dependency can be found is a mystery to me right now and I'd like to know without bother the great helpers here on such a simple issue. Thanks.
Just googling the error and reading through a few sites seemed to indicate it was tied to pygobject, so I searched on SBo and found the python3 version and installed it and the error went away. If it hadn't (or a new error came up), I would've resumed searching online and trying packages until I find the requirements.
 
Old 02-08-2019, 05:10 PM   #11
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: Slackware
Posts: 8,686

Rep: Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702Reputation: 3702
My mpd SlackBuild for -current uses meson and ninja.

Last edited by dugan; 02-14-2019 at 08:36 PM.
 
Old 02-14-2019, 03:43 PM   #12
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
I've also contacted Robby Workman (maintainer for pithos-SBo) to see if he has considered working on an upgrade from the early 0.3.17 to the latest 1.4.1. I tried his older slackbuild, it looks for a setup.py file, which was dropped when the devs moved to meson and ninja. I'll see what he replies with. In the meantime I've finding the older version works without issues.
 
Old 02-18-2019, 03:36 PM   #13
bamunds
Member
 
Registered: Sep 2013
Location: Mounds View MN
Distribution: Slackware64-14.2 FVWM
Posts: 593

Original Poster
Rep: Reputation: 173Reputation: 173
Robby did answer that he is waiting for 15.0 release to upgrade, because there are a number of dependencies which are already available in 15.0 that are not included in 14.2. I understand his desire to not fix something that is working which has no real functional change between the SBo he released for 14.2 and the latest which will be in 15.0.

In the meantime... I've actually down loaded the CLI commands for pianobar to have a cheat sheet.
I'm going to mark this solved. Since Robby does provide a Slackware SBo of Pithos for 14.2 and it worked properly, even though it isn't the latest.
Cheers
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

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
[SOLVED] Which package should provide ninja and meson? Lennie Linux From Scratch 6 12-29-2017 03:01 AM
LXer: Ubuntu MATE, Pithos and the Sounds of Popcorn LXer Syndicated Linux News 0 07-14-2016 05:30 PM
Slackbuilding Inkscape 3.1415... Slackware 14 01-16-2016 02:58 AM
Pithos native Pandora client in Slackware 13.37 Schmahxgn Slackware 0 10-27-2012 11:42 PM
pithos - gstreamer trying to use bluetooth when no bluetooth device is installed shadowsnipes Slackware 0 10-30-2010 12:11 PM

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

All times are GMT -5. The time now is 02:46 PM.

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
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration