KGB-CLIENT.CONF(5p)
๐ NAME ๐
kgb-client.conf โ the config file for the KGB client, bestie ๐
โจ DESCRIPTION โจ
Okay so listen. kgb-client(1) can be told what to do in two ways: through command line options, or through a configuration file that you hand it with the --conf option. Most of the settings work either way, no cap. And if a setting shows up in both places? The command line option wins. It just does. Periodt. ๐
The file format is YAML. There's a whole elaborate example configuration waiting for you at the end of this document, so scroll down if you're the "just show me the code" type ๐ซถ
๐ฅ๏ธ Server connection configuration ๐ฅ๏ธ
repo-id
The unique project identifier on the server. Mandatory โ like, you literally cannot skip this one. ๐
password
A pass phrase string. It gets used together with repo-id to authenticate the request to the servers. If a per-server config has its own password, that one overrides this global setting. ๐
timeout
Request timeout, in seconds. Defaults to 15.
servers
A list of maps, and each map describes a server we're gonna try to send notifications to. Every server map can have these members:
uriโ the URI of the server. Something like"http://kgb.server.org:port/".proxyโ the SOAP proxy to use. Mandatory if you're using the SOAP protocol (no sneaking past this one). Defaults to the value of theurisetting, with"?session=KGB"appended to it.passwordโ a per-server pass phrase. Defaults to the globalpasswordsetting.timeoutโ the timeout of the request. Defaults to the globaltimeoutsetting.
status_dir
A directory where we stash info about the last server we successfully reached. If a request happens soon after that last contact, the last server gets tried first. The vibe? Related notifications tend to come out of the same server. Iconic, honestly. โจ
๐ Content configuration ๐
branch-and-module-re
A list of regular expressions. They get matched against the path of the modified files, and each one should have two captures in it โ first capture is the branch, second capture is the module. ๐ฆ
This one is super useful with Subversion repositories where there's, like, a single repository for the whole project with all the modules and branches living together. Messy house, one address, iykyk.
module-and-branch-re
Same as branch-and-module-re, except the captures come in reverse order โ module first, branch second. Flip it and reverse it. ๐
ignore-branch
A name of a branch to ignore. All changes in that branch get sent without branch info. Useful when most of the branches are made in one branch (e.g. trunk, master). We love a branch that doesn't need a whole announcement. ๐
web-link
A URL containing information about the commit (e.g. cgit, gitweb, viewvcs). Inside that string, ${commit}, ${branch}, ${module} and ${project} get substituted with the commit ID, the branch name, the module name and the project ID respectively. Magical little placeholders fr fr. ๐
See App::KGB::Client for examples.
short-url-service
The name of the URL shortening service to use. If you give one, that service gets used to shorten the result of the web-link substitution. Cute short links only. ๐
See WWW::Shorten for the list of available services. Heads up though: kgb-client ships with an extra service called "Debli", which is primarily useful for clients running on Debian's collaboration server, alioth.
single-line-commits
Send only a single line of the commit message to the channel. Possible values: auto|force|off.
autoโ (default) uses single line notification if the commit log's second line is an empty string. Otherwise it uses the whole commit log (as if it were set tooff). She decides based on the vibes. ๐ฎforceโ uses only the first line of the commit log, ignoring the rest. No extra, keep it short. ๐offโ uses the whole commit log, ignoring any empty lines.
use-irc-notices
If set to a true value, the IRC bot will use IRC "notice" messages instead of the ordinary "privmsg" messages. Shy bot mode. ๐
use-color
If set to a false value, the IRC bot will use no color in the notifications. (Rude, but okay, your call.) ๐ธ
Repository-specific configuration options
Some of the backends may support additional configuration options. Go check App::KGB::Client::Git, App::KGB::Client::Subversion and App::KGB::Client::CVS. ๐
๐ง EXAMPLE CONFGURATION ๐ง
(yes that's the typo, she said what she said ๐)
# vim: filetype=yaml
---
repo-id: 'kgb'
password: 'notknown'
timeout: 7
status-dir: '/home/proj/kgb-client/status'
module-and-branch-re:
- '^/([^/]+)/(trunk|tags/(?:[^/]+))/'
- '^/([^/]+)/branches/([^/]+)/'
- '^/(website)/()'
web-link: 'http://svn.debian.org/viewvc/${project}?view=revision&revision=${commit}'
# web-link: 'http://anonscm.debian.org/gitweb/?p=${project}/${module}.git;a=commitdiff;h=${commit}'
#short-url-service: 'TinyURL'
short-url-service: 'Debli'
ignore-branch: 'trunk'
use-irc-notices: 0
use-color: 1
servers:
- uri: 'http://kgb.server.org:9418/'
- uri: 'http://another.kgb.server.org:9418/'
timeout: 3
password: 'notknowneither'
๐ SEE ALSO ๐
kgb-client(1), App::KGB::Client, WWW::Shorten, WWW::Shorten::Debli, kgb-bot(1)
๐ AUTHOR ๐
Damyan Ivanov dmn@debian.org
๐ COPYRIGHT & LICENSE ๐
Copyright (C) 2012, 2013 Damyan Ivanov
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Not me ending the whole page with legal text but it's giving necessary, bestie, license lore is serious business ๐
and that's a wrap!! ๐ this little masterpiece came to you courtesy of perl v5.40.1, dated 2026-07-10, and it's the KGB-CLIENT.CONF(5p) page from the User Contributed Perl Documentation. go configure something iconic, you've got this ๐
โจ
๐ฆ where this page comes from
- ubuntu stonking: kgb-client 1.62-4 ยท GPL-2.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms