SlackMan - Slackware Package Manager
slackman.repo - Configuration file for slackman repository
SlackMan support official and 3th party Slackware repository. All repository
configuration are placed into /etc/slackman/repos.d/
directory.
A single .repo
file support multiple repositories (see /etc/slackman/repos.d/slackware.repo
file) identified with a specific section:
# Local repository
[local]
[...]
# Testing repository
[testing]
[...]
NOTE SlackMan identify a repository from .repo
filename + repository section
(eg. slackware:packages
, alienbob:restricted
, etc)
name
Short description of repository
Example
name = My local repository
enabled
Enable or disable repository
Example
enabled = true
arch
Specify the repository arch support (default is: x86,x86_64,arm).
NOTE: Prepend
!
to disable the arch.Example
Enable “only”
x86_64
:arch = x86_64
Enable
x86
andx86_64
and disablearm
:arch = x86,x86_64,!arm
Override
$arch
variable:arch =x86:i486,x86_64
mirror
Mirror URL
This is the root of repository. slackman automatically detect all metadata file URLs (
GPG-KEY
,PACKAGES.TXT
,MANIFEST.bz2
, etc).Support local (via “file” protocol) and remote url (http, https, ftp, etc.)
Example
mirror = http://example.org/slackware/
priority
Priority (optional)
Specify repository priority (default is
0
- “zero”)Example
priority = 1
exclude
Exclude packages (optional)
Specify excluded packages for update or install (default ``)
Example
exclude = kernel-*,kde-l10n-*,calligra-l10n-*
SlackMan detect automatically all metadata URLs from mirror
option but some
repository require a little extra configuration to point at the correct metadata URLs.
NOTE With this options you can use $mirror
variable.
gpgkey
GPG-KEY file URL
Example
gpgkey = http://example.org/slackware/GPG-KEY
packages
Packages file URL
Example
packages = http://example.org/slackware/PACKAGES.TXT
filelist
Filelist file URL
Example
filelist = http://example.org/slackware/FILELIST.TXT
changelog
Changelog file URL
Example
changelog = http://example.org/slackware/ChangeLog.txt
manifest
Manifest file URL
Example
manifest = http://example.org/slackware/MANIFEST.bz2
checksums
Checksums file URL
Example
chechsums = http://example.org/slackware/CHECHSUMS.md5
SlackMan support special variables for extend the configuration of .repo
file:
For display all variable values use slackman list variables
command:
# slackman list variables
Variable Value
----------------------------------------
arch x86_64
arch.bit 64
arch.family x86_64
release current
release.real 14.2
release.suffix 64
arch
Machine architecture (eg.
x86_64
,i686
)
arch.bit
Machine bit architecture (eg.
64
,32
)
arch.family
Machine architecture family (eg.
x86_64
,x86
)
mirror
Mirror URL from
mirror
config option (see above)
release
Slackware version from
/etc/slackware-release
(eg.14.2
) orcurrent
(this variable follow the slackware.version option in slackman.conf(5) file)
release.real
Slackware “real” release version from
/etc/slackware-release
file (eg.14.2
)
release.suffix
Slackware release suffix (eg.
64
- for Slackware64,arm
- for Slackwarearm)
Slackware-14.2 (32-bit)
name = Slackware{$release.suffix}-{$release.real} repository
mirror = http://example.org/slackware{$release.suffix}-{$release.real}/
release.suffix =>
release.real => 14.2
name = Slackware64-14.2
mirror = http://example.org/slackware-14.2
Slackware64-current (64-bit)
name = Slackware{$release.suffix}-{$release} repository
mirror = http://example.org/slackware{$release.suffix}-{$release}/
release.suffix => 64
release => current
name = Slackware64-current
mirror = http://example.org/slackware64-current
To display repository configuration you can use slackman repo list
and
slackman repo info REPOSITORY
commands:
# slackman repo list
--------------------------------------------------------------------------------------
Repository ID Description Status Priority Packages
--------------------------------------------------------------------------------------
slackware:extra Slackware64-current (Extra) Enabled 0 92
slackware:multilib Slackware64-current (MultiLib) Enabled 10 181
slackware:packages Slackware64-current Enabled 0 1348
slackware:pasture Slackware64-current (Pasture) Disabled 0 0
slackware:patches Slackware64-current (Patches) Enabled 10 0
slackware:testing Slackware64-current (Testing) Disabled -1 0
# slackman repo info slackware:extra
Name: Slackware64-current (Extra)
ID: slackware:extra
Configuration: /etc/slackman/repos.d/slackware.repo
Mirror: http://mirrors.slackware.com/slackware/slackware64-current/
Status: enabled
Last Update: 2017-05-24 07:03:49
Priority: 0
Packages: 92
Repository URLs:
* packages http://mirrors.slackware.com/slackware/slackware64-current/extra/PACKAGES.TXT
* manifest http://mirrors.slackware.com/slackware/slackware64-current/extra/MANIFEST.bz2
* checksums http://mirrors.slackware.com/slackware/slackware64-current/extra/CHECKSUMS.md5
* gpgkey http://mirrors.slackware.com/slackware/slackware64-current/GPG-KEY
Please report any bugs or feature requests to https://github.com/LotarProject/slackman/issues page.
Giuseppe Di Terlizzi giuseppe.diterlizzi@gmail.com
Copyright 2016-2018 Giuseppe Di Terlizzi.
This program is free software; you can redistribute it and/or modify it under the terms of the the Artistic License (2.0). You may obtain a copy of the full license at: