cvsd.conf(5)
πΈ cvsd.conf β the manual page, but make it cute πΈ
okay so bestie, welcome to cvsd.conf(5) π this is the System Manager's Manual version, and it's literally the config file for cvsd. buckle up, it's giving β¨documentationβ¨ but make it fun.
β¨ NAME β¨
cvsd.conf β the configuration file for cvsd. that's it, that's the name π
π¦ DESCRIPTION π¦
so cvsd.conf holds all the configuration info you need to run cvsd (go read cvsd(8) if you haven't, iykyk π
). the file is just options, one per line, and they tell cvsd how to do its thing. simple as that. no cap. π
π OPTIONS π
here's where it gets juicy. every single one, no skipping, we're not that kind of girl π«Ά
RootJail pathβ tells cvsd where the chroot jail lives, like where cvs should actually be run. bestie, you HAVE to initialize this directory with thecvsd-buildrootscript first, otherwise it won't have all the right directories and binaries and it's gonna be a whole mess π. if this option just... isn't in the config file at all, or you set it tonone(without quotes!!), then cvsd will run in the normal file system root instead. your call β¨Uid uidβ which user id cvs gets to run as. can be a numerical id or a symbolic value, whichever you vibe with. if you don't specify a uid, cvsd just runs under whatever uid it was started with. periodt πGid gidβ same energy as Uid, but for the group id. numerical or symbolic, dealer's choice. no gid specified? then cvsd runs under the gid it was started with. πCvsCommand pathβ this should point to where thecvscommand actually lives. β οΈ important: if you set up aRootJail, this path is relative to that directory β but it should STILL start with a/, okay?? don't get cute. if you don't define this at all, it defaults to/bin/cvswhen a chroot jail is configured, and/usr/bin/cvsotherwise. β¨CvsArgs arg...β extra arguments you wanna pass to the cvs command, on top of the default ones. you can pass the-Roption to put cvs in read-only mode, which is lowkey iconic for safety π. just know that not all options work in pserver mode, and the error messages are... not always very friendly π. fair warning.Nice numβ sets the nice value. on most systems that ranges from-20to20, and the smaller (more negative) the number, the higher the priority. if you don't specify a value, the nice level of the program just stays untouched. no notes πUmask maskβ the umask that the cvs pserver uses when creating files. specify it as an octal value. if you don't, the default umask of027gets used. slay π¦Limit resource valueβ limits how much of a certain resource the cvs process can use. heads up: these resource limits get set on the executed cvs command, NOT on the daemon itself. okay soresourcecan be one of these:coredumpsizeβ maixmum filesize of a coredumpcputimeβ maximum amount of seconds cputime consumeddatasizeβ maximum size of program's data segmentfilesizeβ maximum size of files createdmemorylockedβ maximum amount of locked memoryopenfilesβ maximum number of open files (file descriptors)maxprocβ maximam number of processes (per user? max. children?)memoryuseβ maximum size of resident memorystacksizeβ maximum stack sizevirtmemβ maximum amount of virtual memory allocatedpthreadsβ number of threads that the process may create
not all systems support all the resources listed here, so don't come for me if yours doesn't π. if no limits are defined, no extra limits get enforced. and if the system already set limits for processes, it may not even be possible to broaden them. sad but true π
a value (resource limit) that's a size can take a suffix of b (bytes), k (1024 bytes) or m (1024*1024 bytes) β and k is the default. plain number values can also use the k and m suffixes, but their default is just the plain number. time values can be formatted as mm:ss, or take an m or s suffix, with s as the default. β°β¨
PidFile fileβ where the daemon's process id gets written. if you don't specify aPidFile, the pid just... doesn't get written anywhere./var/run/cvsd.pidis a good location for a pidfile, fyi πListen address portβ this one specifies which addresses and ports cvsd should listen on for connections. theaddressvalue can be*(that binds all addresses), or a symbolic (host name), dotted quad, or ipv6 address. theportvalue can be a numeric port number or a well known service likecvspserver. you can supply this option multiple times. also you can combine the address and port fields in the usual ways by separating them with a:or a., optionally wrapping the address part in square brackets ([and]). some examples for you bestie:
# listen on all interfaces and all protocols on port 2401
Listen * 2401
# listen on IPv6 port 100
Listen :: 100
# listen on localhost
Listen localhost cvspserver
# listen on an ipv6 address
Listen [fe80::2a0:d2ff:fea5:e9f5]:2401
π eat every time.
MaxConnections numβ the max number of connections that can be handled at the same time. if you pass0(which is the default), then no limit is used at all. go wild πLog scheme/file logvelelβ how logging gets done. the first argument is eithernone,syslog, or a file name that begins with a/. the second argument is optional and sets the loglevel. loglevel can be one of:crit,error,warning,notice,info(that's the default β¨) ordebug. everything at the specified loglevel and higher gets logged. this option can be supplied multiple times, so go off. if you just omit it entirely,syslog infois assumed. πRepos pathβ which repositories are allowed to be used. the value gets passed as a--allow-root=pathparameter to cvs. the path should be relative to the specifiedRootJail, and it should start with a/. you can supply this option multiple times, but bestie you need to specify it at least once. non-negotiable π
π FILES π
/etc/cvsd/cvsd.confβ default location for the configuration file/var/run/cvsd.pid(or other location) β the file where the process id is saved
π SEE ALSO π
π AUTHOR π
Arthur de Jong <arthur@arthurdejong.org> β we stan π«Ά
and that's a wrap, bestie β¨ this was Version 1.0.25, from Nov 2024, part of the System Manager's Manual β cvsd.conf(5). now go configure something iconic π
πΈπ
π¦ where this page comes from
- debian trixie: cvsd 1.0.25 Β· GPL-2.0-or-later
- ubuntu questing: cvsd 1.0.25
- ubuntu resolute: cvsd 1.0.25build1 Β· GPL-2.0-or-later
- ubuntu stonking: cvsd 1.0.25build1 Β· GPL-2.0-or-later
- Copyright (C) 2001, 2002, 2003, 2004, 2009 Arthur de Jong
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms