Tool to automatically update Slackware build scripts.
Go to file
Eugen Wissner ddda240e40
All checks were successful
Build / audit (push) Successful in 13m52s
Build / test (push) Successful in 14m33s
Describe configuration options
2024-03-31 17:06:54 +02:00
.gitea/workflows Switch to the haskell image 2024-03-06 15:08:01 +01:00
config Describe configuration options 2024-03-31 17:06:54 +02:00
lib/SlackBuilder Reduce number of fetched tags by using a prefix 2024-03-25 18:36:15 +01:00
src Add SIMD everywhere 2024-03-26 11:52:16 +01:00
tests Extern tag matcher with digit and dot patterns 2024-03-24 13:20:22 +01:00
.gitignore Use TOML configuration 2023-08-09 20:59:42 +02:00
.hlint.yaml universal-ctags: Add version path segment 2023-09-25 10:18:00 +02:00
CHANGELOG.md Move packagist check to a Haskell binary 2023-08-04 21:33:21 +02:00
LICENSE Add autoupdater 2020-12-09 18:28:42 +01:00
README.md Describe configuration options 2024-03-31 17:06:54 +02:00
slackbuilder.cabal Add a README 2024-03-27 20:01:08 +01:00

SlackBuilder

SlackBuilder is a tool which aims to help to update Slackware packages. It checks for the latest version of an upstream package and can modify SlackBuild meta information accordingly.

Features

Build instructions

SlackBuilder is a Haskell program and can be built and run using the Cabal build tool and package manager:

cabal build

After that you can run slackbuilder using Cabal and cabal run slackbuilder. Or you can install the program locally with cabal install and run it just as slackbuilder assuming ~/.cabal/bin is on your PATH.

Usage

Configuration

There is a sample configuration file under config/config.toml.example. The sample contains comments describing each supported option. Just copy this file to config/config.toml and modify as needed.

Each package that should be updated automatically needs a special description which contains links to the upstream repositories and instructions how the sources should be prepared.

Unfortunately the only format currently supported for the package descriptions is Haskell source code. But I'm planning to make it possible to describe the packages without recompiling the slackbuilder itself.

For the time being src/Main.hs contains descriptions of my slackbuilds, that can be used as an example and a start point.

Command line options

SlackBuilder is called with a command as its first argument:

slackbuilder COMMAND

Currently supported commands are listed below.

check

check checks whether there are updates available. It prints the name of each known package together with its version. If the package version is not the latest known version, the version the package can be updated to is printed as well.

up2date

Performs the package updates for packages the can be updated. up2date accepts an optional argument specifying the package that should be updated if only one package should be updated and not all.