Add a README
All checks were successful
Build / audit (push) Successful in 13m51s
Build / test (push) Successful in 14m42s

This commit is contained in:
Eugen Wissner 2024-03-27 20:01:08 +01:00
parent a98a6f8574
commit 8351be053c
Signed by: belka
GPG Key ID: A27FDC1E8EE902C0
2 changed files with 49 additions and 8 deletions

35
README.md Normal file
View File

@ -0,0 +1,35 @@
# 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.
## Build instructions
SlackBuilder is a Haskell program and can be built and run using the
Cabal build tool and package manager:
```sh
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.
## Configuration
There is a sample configuration file under `config/config.toml.example`.
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.

View File

@ -1,19 +1,25 @@
cabal-version: 2.4 cabal-version: 2.4
name: slackbuilder name: slackbuilder
version: 1.0.0 version: 1.0
synopsis: Tool to automatically update Slackware build scripts. synopsis: Tool to automatically update Slackware build scripts.
bug-reports: https://git.caraus.tech/OSS/slackbuilder/issues bug-reports: https://git.caraus.tech/OSS/slackbuilder/issues
license: MPL-2.0 license: MPL-2.0
license-files: LICENSE license-files: LICENSE
copyright: (c) 2023 Eugen Wissner copyright: (c) 2023-2024 Eugen Wissner
author: Eugen Wissner author: Eugen Wissner
maintainer: belka@caraus.de maintainer: belka@caraus.de
category: Build category: Build
extra-source-files: CHANGELOG.md extra-source-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://git.caraus.tech/OSS/slackbuilder.git
common dependencies common dependencies
build-depends: build-depends:
@ -28,7 +34,7 @@ common dependencies
directory ^>= 1.3.8, directory ^>= 1.3.8,
exceptions >= 0.10, exceptions >= 0.10,
filepath ^>= 1.4.2, filepath ^>= 1.4.2,
megaparsec ^>= 9.5, megaparsec ^>= 9.6,
modern-uri ^>= 0.3.6, modern-uri ^>= 0.3.6,
memory ^>= 0.18, memory ^>= 0.18,
parser-combinators ^>= 1.3, parser-combinators ^>= 1.3,
@ -36,13 +42,13 @@ common dependencies
req ^>= 3.13, req ^>= 3.13,
tar-conduit ^>= 0.4, tar-conduit ^>= 0.4,
lzma-conduit ^>= 1.2, lzma-conduit ^>= 1.2,
text ^>= 2.0, text ^>= 2.1,
tomland ^>= 1.3.3, tomland ^>= 1.3.3,
transformers ^>= 0.5.6, transformers ^>= 0.5.6,
unordered-containers ^>= 0.2.19, unordered-containers ^>= 0.2.20,
vector ^>= 0.13.0, vector ^>= 0.13.0,
word8 ^>= 0.1.3 word8 ^>= 0.1.3
default-language: Haskell2010 default-language: GHC2021
default-extensions: default-extensions:
DataKinds DataKinds
DuplicateRecordFields DuplicateRecordFields
@ -76,7 +82,7 @@ executable slackbuilder
SlackBuilder.CommandLine SlackBuilder.CommandLine
SlackBuilder.Update SlackBuilder.Update
build-depends: build-depends:
ansi-terminal ^>= 1.0, ansi-terminal ^>= 1.1,
optparse-applicative ^>= 0.18.1, optparse-applicative ^>= 0.18.1,
slackbuilder slackbuilder
hs-source-dirs: src hs-source-dirs: src