LinuxQuestions.org
Share your knowledge at the LQ Wiki.
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 06-29-2014, 07:40 PM   #1
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 366
Blog Entries: 4

Rep: Reputation: 330Reputation: 330Reputation: 330Reputation: 330
[ANN] New package building tool: slackrepo


Hi folks,

Well, I guess after many months of development it's finally time to announce the existence of slackrepo, a new highly automated package builder. It takes an input repository of SlackBuilds (for example, a git clone of SlackBuilds.org), and outputs built packages to a package repository suitable for use with slackpkg+, with an absolute minimum of fuss and bother. For best results, it is intended to be run on a "clean" standard Slackware environment (like a "build box" or a virtual machine), with a full installation of Slackware and no additional packages (or very few).

Some notable features are:
  • automatic updating - revisions of the SlackBuild repository determine updates and rebuilds of packages
  • clean building - dependencies are built as a 'tree', not a linear 'queue', and packages that are out-of-date with respect to their dependencies are rebuilt
  • quality assurance testing - optional tests can be performed on the SlackBuild files and built packages
  • no interaction required - highly automated and suitable for bulk testing and scripted building
  • can build from SlackBuilds.org (SBo), Mate SlackBuilds (msb) and Cinnamon SlackBuilds (csb)
  • calls Eric Hameleers' gen_repos_files.sh for package signing and metadata

You can explore the documentation for yourselves, but it does everything mentioned in this LQ post except coffee, meals and housework.

Obviously this is new software. Some of you will have questions, some of you will have suggestions, some of you will find bugs, and some of you will hate it. If you are kind enough to have a look, I will be grateful for your feedback. Thanks in advance.
 
Old 06-30-2014, 05:24 AM   #2
Drakeo
Senior Member
 
Registered: Jan 2008
Location: Urbana IL
Distribution: Slackware, Slacko,
Posts: 2,557
Blog Entries: 3

Rep: Reputation: 215Reputation: 215Reputation: 215
Interesting and a good start.
 
Old 06-30-2014, 08:00 AM   #3
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware & Slackware64 14.1
Posts: 7,029
Blog Entries: 52

Rep: Reputation: Disabled
Quote:
Originally Posted by 55020 View Post
but it does everything mentioned in this LQ post except coffee, meals and housework.
Oh,no! I am disappointed! Ah, well, keep trying.
 
Old 06-30-2014, 08:08 AM   #4
solarfields
Member
 
Registered: Feb 2006
Location: Outer Shpongolia
Distribution: Slackware
Posts: 471

Rep: Reputation: 118Reputation: 118
looks great!
 
Old 06-30-2014, 12:43 PM   #5
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 366
Blog Entries: 4

Original Poster
Rep: Reputation: 330Reputation: 330Reputation: 330Reputation: 330

Quote:
commit 7181d6cd6544e7a834991a7b25cfd2c0846eb609
Author: David Spencer <baildon.research@googlemail.com>
Date: Mon Jun 30 18:27:46 2014 +0100

slackrepo_SBo.conf: Remove damn stray comma.
New package v0.1.2 now up...
Sorry to anyone who encountered the error message; it was harmless, except to my self-esteem
 
Old 06-30-2014, 01:08 PM   #6
Buumi
Member
 
Registered: Dec 2010
Distribution: Slackware
Posts: 52

Rep: Reputation: 5
Interesting. I'll test it at some point.
Does it get slackbuilds.org dependencies from info file e.g. no optional dependencies automatically?
 
Old 06-30-2014, 03:34 PM   #7
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 366
Blog Entries: 4

Original Poster
Rep: Reputation: 330Reputation: 330Reputation: 330Reputation: 330
Quote:
Originally Posted by Buumi View Post
Interesting. I'll test it at some point.
Does it get slackbuilds.org dependencies from info file e.g. no optional dependencies automatically?
tl;dr You create 'hintfiles' with the options and additional dependencies you want. The hintfile is permanent (until you edit it again or delete it...) Nearly 300 example hintfiles are provided, to get you started.

Here's the documentation.
 
1 members found this post helpful.
Old 06-30-2014, 09:43 PM   #8
j_v
Member
 
Registered: Oct 2011
Distribution: Slackware64, LFS, Crux
Posts: 194

Rep: Reputation: 26
This should also be a good tool for build testing a repo. Will be nice to utilize this at next SBo release cycle. I won't be able to play with it this week, but I really want to try this soon. Cheers.
 
Old 07-02-2014, 07:01 AM   #9
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware & Slackware64 14.1
Posts: 7,029
Blog Entries: 52

Rep: Reputation: Disabled
I've got a relatively new Slackware install in VBox, just a few odds'n'sods added. Might do a slackpkg clean-system on it, then try slackrepo. Sounds like fun...
More fun than watching the World Cup and/or Wimbledon, anyway...

Last edited by brianL; 07-02-2014 at 07:05 AM. Reason: afterthought
 
Old 07-02-2014, 07:54 AM   #10
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware & Slackware64 14.1
Posts: 7,029
Blog Entries: 52

Rep: Reputation: Disabled
No, changed my mind after reading more on the website. Great tool for those who need it, though. Decided to heed this warning:
Quote:
Most users will find that the existing popular tools are much better for their needs: sbopkg and sqg, AST, src2pkg, mkslack, etc.
 
Old 07-02-2014, 01:22 PM   #11
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 366
Blog Entries: 4

Original Poster
Rep: Reputation: 330Reputation: 330Reputation: 330Reputation: 330
Hi Brian! Well, it's more of a manifesto than a warning. The world is already full of projects that want people to abandon perfectly good existing solutions and impose something new, unfamiliar and unreliable. I don't approve of that. Our existing tools in the Slackware community are highly evolved for their purposes and justifiably popular and respected. Any time we invest in learning new stuff has to be recouped by making life easier in the future, otherwise what's the point? So new stuff should be minimalist and intuitive, and should fulfill unmet requirements, and be respectful of / work with existing solutions. That's what I've tried to do with slackrepo. If people don't need it then that's fine; we've had digital computers for seventy years now and, frankly, in 2014, neither a new package builder nor a new init system will make a great deal of difference.
 
1 members found this post helpful.
Old 07-02-2014, 01:36 PM   #12
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware & Slackware64 14.1
Posts: 7,029
Blog Entries: 52

Rep: Reputation: Disabled
I'll probably give it a go with the next Slack release (are we there yet? ). I usually do fresh installs, and have plenty of HDD space since I gave up distrohopping-dualbooting.
 
Old 07-02-2014, 02:23 PM   #13
Buumi
Member
 
Registered: Dec 2010
Distribution: Slackware
Posts: 52

Rep: Reputation: 5
I have actually tested it on my virtual build machine and so far it's working fine as I built some packages. libwebkitgtk didn't build at first as slackrepo enabled multicore building by default but small addition to hintfile corrected that issue.

At first look it looks like a good idea. I have a few Slackware boxes and I'd like to build packages only once. So far I have created them with sbopkg and put them manually into my repository created with gen_repos_files.sh but keeping packages up-to-date is sometimes a bit of pain that way. I wonder how more experienced users deal with multiple installs and packages at the moment?

Thanks 55020!
 
Old 07-03-2014, 04:40 AM   #14
55020
Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 366
Blog Entries: 4

Original Poster
Rep: Reputation: 330Reputation: 330Reputation: 330Reputation: 330
Hi Buumi, thanks for checking it out!

There is already an example hintfile with NUMJOBS=-j1 for libraries/webkitgtk, but to keep you in control (in the Slackware tradition), the example hintfiles are ignored.

However, if do you want to use all the example hintfiles, you can do this:

ln -s /usr/share/slackrepo/SBo/hintfiles/* -t /etc/slackrepo/SBo/hintfiles/

This will create a symlink to the example hintfile directories for academic/ accessibility/ ... etc etc.

The idea is taken from /usr/share/X11/xorg.conf.d

And now here is the clever trick If you want to override any of the symlinked hintfiles, you can create a new hintfile in /etc/slackrepo/SBo/hintfiles/. The hintfile in the root directory will override the hintfile in the subdirectory (via the symlink). For example, /etc/slackrepo/SBo/hintfiles/webkitgtk.hint will override /etc/slackrepo/SBo/hintfiles/libraries/webkitgtk/webkitgtk.hint

I should probably do a page documenting these tricks, but it is probable that I will extend this idea of search paths so that you can use an SBo SlackBuild from e.g. Mate ...

Anyway I hope this is helpful and not too confusing, thanks again Buumi!
 
Old 07-24-2014, 09:34 AM   #15
Panagiotis Nik
LQ Newbie
 
Registered: Jul 2014
Posts: 5

Rep: Reputation: Disabled
Smile

The beginning of this year i start to building a repository for
me and my friends and add few important packages from SBo.
It is very hard to me to keep packages updated and
fighting with deps to build new packages...
Some time ago I learned about slackrepo and now
with few simple steps i have almost build all packages from SBo
and uploaded to my repo.

http://slackonly.com/pub/packages/14.1-x86_64/

This repo is puplic and you can use it.
Thanks to creator for this amazing tool...
 
  


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
Building package from source isn't replacing default package (Ubuntu) ajck Linux - Software 2 06-27-2013 12:38 AM
[ANN] Some more package listing utils dive Slackware 3 03-06-2013 06:18 AM
[ANN] mk-slack64-multilib : A tool to create slackware64+multilib tree/iso phenixia2003 Slackware 5 12-28-2012 05:42 AM
Building Using Tool Chains Dave1024 Linux - Newbie 2 06-25-2010 06:45 AM
Building a Tool Chain yugandhar Linux - Kernel 3 12-16-2006 05:45 PM


All times are GMT -5. The time now is 05:06 AM.

Main Menu
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
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration