-   Slackware (
-   -   mkslack 1.3 released (

dive 04-25-2010 08:54 PM

mkslack 1.6 released

mkslack - a SlackBuild generator script
(C) David Woodfall 2010

This slackbuild generator uses templates stored in usr/share/mkslack/templates
and a config file /etc/mkslack/mkslack.conf which you must edit for name,
email, copyright etc.

The slackbuild templates are based on the ones at and
shouldn't be changed too much apart from the aforementioned. In particular
the lines for man and info pages and <documentation> should not be edited
as the script will look for those lines to be exactly the same, and if not
needed, delete them.

The PRGNAM, VERSION, ARCHIVE recognition is very loosely done. It can find
standard source archives which can be .tar.gz .tar.bz2 or .tgz. If you have
a source archive with a '-' in the version number then mkslack will be
borked. In this case you can still use mkslack to build the slackbuild,
but you must edit it by hand before running it.

The new template detection system has not been extensively tested so please
give feedback, bug reports on any that don't seem to work. Mail me at with name of software, download link etc.

Idea for use:

The initial slackbuild and info file are built by this script, and when
a test build/install is done and working, the files should be tweaked by
hand. Especially don't forget to fill in the rest of the details in the
.info. One thing to point out is that mkslack will overwrite these files
if run again!

This is only a starter kit! You ARE expected to edit the created files
by hand afterwards to remove unnecesary parts!


mkslack [options] <archive>

-h --help Usage.
-r --run Run SlackBuild after creation. Got root?
-i --install Install the package after running.
-l --list Pipe archive contents to /usr/bin/most and exit.
-v --version Version of mkslack.

The documents list in top level of source tree can be adjusted by command:
DOCS="SomeFile" mkslack <archive>
This will add 'SomeFile' to the list. You can also edit the DOCS list in
this script. Any that it doesn't find will be removed from the list.

Build can be specified by:
BUILD=2 mkslack <archive>
Otherwise it defaults to 1.

ARCH can be specified by:
ARCH=xxx mkslack <archive>
It defaults to i486 the same as a regular SlackBuild.

MS3FGX 04-25-2010 09:33 PM

I have actually wondered if anyone had put together a tool like this, as 90-95% of packages don't actually need unique Slackbuilds; a common template with changed variables for name, version, and arch is sufficient.

Up to this point I have always just done it by hand, but that is repetitive and rather tedious. I'll have to check this out on my build machine.

piratesmack 04-25-2010 09:36 PM

Alien Bob made something similar

His is web-based though.

dive 04-26-2010 06:25 PM

Just uploaded version 1.2

Found a bug for copying <documentation>. Hopefully it's fixed but please let me know of any bugs/problems/ideas.

Thanks :)

dive 04-27-2010 04:13 PM

Uploaded 1.3

Much better <documentation> grepping.

dive 06-10-2010 07:21 PM

Uploaded 1.6

Uses all the new templates on SBo. Please give feedback especially on bugs with source that doesn't work (and a link to source).


All times are GMT -5. The time now is 11:07 PM.