CHANGESTOOL(1)
β¨ CHANGESTOOL (1) β¨
okay so this is changestool, from the reprepro family, and it's literally the little sidekick you didn't know you needed for Debian .changes files π
π NAME π
changestool β verify, dump, modify, create or fix Debian .changes files. that's the whole job, and she does it slayfully.
π¦ SYNOPSIS π¦
changestool --help
changestool [ options ] .changes-filename command [ per-command-arguments ]
πΈ DESCRIPTION πΈ
okay bestie, picture this: changestool is a little program that operates on Debian .changes files β you know, the ones dpkg-genchanges(1) produces and the ones you feed your built Debian packages into, so repository managers like reprepro(1) or dak can do their thing. she's small, she's focused, she's iconic. π
π₯ EXAMPLES π₯
changestool bloat.changes setdistribution local
this one will modify the Distribution: header inside bloat.changes to say local instead of whatever was there before. glow-up complete β¨
changestool reprepro_1.2.0-1.local_sparc.changes includeallsources
this will modify the given file to also list the .orig.tar.gz it does not list β because you forgot to build it with dpkg-buildpackage -sa. we've all been there, no judgment π«Ά
changestool blafasel_1.0_abacus.changes updatechecksums
this will update the md5sums to those of the files referenced by this file. so you can do quick'n'dirty corrections to them before uploading to your private package repository. lowkey chaotic, highkey useful π
changestool --create test.changes add bla_1-1.dsc bla_1-1_abacus.deb
this will add the specified files (format detected by filename β use adddeb or adddsc if you know it). and if the file test.changes does not exist yet, a minimal one will be generated. though ngl, that might be too minimal for most direct uses π
π GLOBAL OPTIONS π
options can be specified before the command. each one affects a different subset of commands and is ignored by other commands. (yes, ignored. she's selective, she's got main character energy.)
-h,--helpβ displays a short list of options and commands with description. the "help me help you" of flags π-o,--outputdirdir β not yet implemented. that's it. that's the option. it's giving placeholder π-s,--searchpathpath β a colon-separated list of directories to search for files if they're not found in the directory of the.changesfile. your backup squad of directories π«Ά--createβ flag for the commands starting withadd, to create the.changesfile if it does not yet exist. birthday party for a file that wasn't born yet π--create-with-all-fieldsβ also a flag for the commands starting withadd, to create the.changesfile if it does not yet exist. unlike--create, this creates more fields to make things likeduploadhappier. currently that creates fakeUrgencyandChangesfields. more fields = more to love, periodt β¨
π COMMANDS π
verifyβ check for inconsistencies in the specified.changesfile and the files referenced by it. vibe check, but for your package metadata πupdatechecksums [ filename ]β update the checksum (md5sumand size) information within the specified.changesfile and all.dscfiles referenced by it. without arguments, all files will be updated. to only update specific files, give their filename (without path) as arguments. refresh her numbers, she deserves it πsetdistribution [ distributions ]β change theDistribution:header to list the remaining arguments. tell her where she belongs πincludeallsources [ filename ]β list all files referenced by.dscfiles mentioned in the.changesfile, in said file. without arguments, all missing files will be included. to only include specific files, give their filename (without path) as arguments.
take a look at the description of -si, -sa and -sd in the manpage of dpkg-genchanges/dpkg-buildpackage for how to avoid having to do this at all π (yes, prevention > cure, we know)
note that whilerepreprowill just ignore files listed in a.changesfile when it already has the file with the same size andmd5sum,dakmight choke in that case. soβ¦ yeah. different tolerances π
adddebfilenames β add the.deband.udebfiles specified by their filenames to the.changesfile. filenames without a slash will be searched in the current directory, the directory the changes file resides in, and in the directories specified by the--searchpath. come on in, debbies π¦adddscfilenames β add the.dscfiles specified by their filenames to the.changesfile. filenames without a slash will be searched in the current directory, in the directory the changes file resides in, and in the directories specified by the--searchpath. dsc girls rise πΈaddrawfilefilenames β add the files specified by their filenames to the.changesfile. filenames without a slash will be searched in the current directory, in the directory the changes file resides in, and in the directories specified by the--searchpath. raw, unfiltered, unbothered πaddfilenames β behaves likeadddscfor filenames ending in.dsc, likeadddebfor filenames ending in.debor.udeb, and likeaddrawfilefor all other filenames. she's versatile, she's a multitasker, she contains multitudes πdumbremovefilenames β remove the specified files from the.changesfile. no other fields (Architectures,Binaries, β¦) are updated and no related file is removed. just the given files (which must be specified without any/) are no longer listed in the.changesfile (and only no longer in the changes file). it's calleddumbfor a reason bestie, she's not checking anything, she's just β¨removingβ¨ π
π SEE ALSO π
reprepro(1), dpkg-genchanges(1), dpkg-buildpackage(1), md5sum(1). the whole friend group π
π REPORTING BUGS π
report bugs or wishlist requests to the Debian BTS (e.g. by using reportbug reperepro) or directly to <brlink@debian.org>. yes, that's reperepro with the extra e β write it exactly like that, don't come for me π
π COPYRIGHT π
Copyright Β© 2006-2009 Bernhard R. Link
this is free software; see the source for copying conditions. there is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. like, zero warranty, none, nada π
and that's the page, bestie π«Ά β brought to you by reprepro, dated 2010-03-19, and shipped with love in the CHANGESTOOL(1) manpage. go forth and fix those .changes files β¨π
π¦ where this page comes from
- arch rolling: reprepro 5.5.1-1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms