DEBSNAP(1)

πŸ“¦
version 2.26.11ubuntu1 Β· 2 versions
  • 2.26.11ubuntu1 Β· debian bookworm, debian trixie, epel 10, epel 9, fedora 43, fedora 44, opensuse-leap 16.0, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 2.22.1ubuntu1.2 Β· ubuntu jammy
, in debian bookworm, debian trixie, epel 10, epel 9, fedora 43, fedora 44, opensuse-leap 16.0, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– DEBSNAP β€” retrieve old snapshots of Debian packages πŸ’–

okay bestie, gather round, because debsnap is genuinely one of those little tools that EATS. it lives in the DebSnap User Manual and it's here to help you rescue ancient versions of Debian packages from the void. let's get into it 🫢


✨ SYNOPSIS ✨

debsnap [options] package [version]

debsnap [-h | --help] [--version]

🌸 DESCRIPTION 🌸

so. debsnap is a tool to help with retrieving snapshots of old packages from a daily archive repository. like, the archive is basically a time machine and this is your keys πŸ”‘

the only publicly available snapshot archive is currently located at https://snapshot.debian.org β€” that's the one, that's the moment, periodt.

by default, debsnap will download all the available versions for package that are found in the snapshot archive. but if you specify a version, only that particular version will be downloaded, if available. no more, no less, no crumbs left behind πŸ’…


πŸ‘‘ OPTIONS πŸ‘‘

the following options are available, and yes we're going through every single one because we don't skip:

  • -d destination, --destdir destination β€” directory to place retrieved packages. that's the drop-off spot πŸ“¦
  • -f, --force β€” force writing into an existing destination. by default debsnap will insist the destination directory does not exist yet, unless it is explicitly specified to be . (the current working directory). why so strict? because it's trying to avoid files being accidentally overwritten by what is fetched from the archive, and to provide a guarantee for other scripts that only the files fetched will be present there upon completion. she's protecting you from yourself, respectfully πŸ›‘οΈ
  • -v, --verbose β€” report on the debsnap configuration being used and progress during the download operation. and listen: please always use this option when reporting bugs. i'm not asking, i'm telling 😭
  • -l, --list β€” don't download, just list versions. window shopping only, no commitment πŸ›οΈ
  • --binary β€” download binary packages instead of source packages.
  • -a, --architecture β€” specify architecture of downloaded binary packages. implies --binary. this can be given multiple times in order to download binary packages for multiple architectures. stack 'em up, bestie 🧚
  • --first β€” specify the minimum version of a package which will be downloaded. any versions which compare larger than this, according to dpkg, will be considered for download. may be used in combination with --last.
  • --last β€” specify the maximum version of a package which will be downloaded. any package versions which compare less than this, according to dpkg, will be considered for download. may be used in combination with --first.
  • -h, --help β€” show a summary of these options. (hi, that's this, kind of πŸ‘‹)
  • --version β€” show the version of debsnap.

πŸŽ€ CONFIGURATION OPTIONS πŸŽ€

okay so you can also configure debsnap through the use of the following options in the devscripts configuration files. no CLI required, she reads the vibes:

  • DEBSNAP_VERBOSE β€” same as the command line option --verbose. set to yes to enable.
  • DEBSNAP_DESTDIR β€” set a default path for the destination directory. if unset, ./source-<package_name> will be used. the command line option --destdir will override this. CLI stays winning πŸ‘‘
  • DEBSNAP_BASE_URL β€” the base url for the snapshots archive.

if unset this defaults to https://snapshot.debian.org


πŸ”₯ EXIT STATUS πŸ”₯

debsnap will return an exit status of:

  • 0 β€” if all operations succeeded
  • 1 β€” if a fatal error occurred
  • 2 β€” if some packages failed to be downloaded but operations otherwise succeeded as expected
heads up bestie: in some cases packages may fail to be downloaded because they are no longer available on the snapshot mirror, so any caller should expect this may occur in normal use. it's not a bug, it's the archive being the archive πŸ’€

🌈 EXAMPLES 🌈

these are the actual real commands, copy them exactly, no notes:

debsnap -a amd64 xterm 256-1 download the binary package of a specific xterm version for amd64 architecture.

debsnap -a armel xterm download binary packages for all versions of xterm for armel architecture.

debsnap --binary xterm 256-1 download binary packages for a specific xterm version but for all architectures.

debsnap --binary xterm download binary packages for all versions of xterm for all architectures. she's doing the MOST and we love her for it.

debsnap -v --first 347-1 --last 348-2 xterm download source packages for local architecture of xterm, between 347-1 and 348-2 revisions, inclusive, showing the progress when doing it.

aptitude search '~i' -F '%p %V' | while read pkg ver; do debsnap -a $(dpkg-architecture -qDEB_HOST_ARCH) -a all $pkg $ver; done

download binary packages of all packages that are installed on the system. yeah, all of them. main character energy fr fr πŸ’…


πŸ¦‹ FILES πŸ¦‹

  • /etc/devscripts.conf β€” global devscripts configuration options. will override hardcoded defaults.
  • ~/.devscripts β€” per-user configuration options. will override any global configuration.

⭐ SEE ALSO ⭐

devscripts(1), devscripts.conf(5), git-debimport(1)


πŸ’œ AUTHORS πŸ’œ

David Paleino <dapal@debian.org>


Copyright Β© 2010 David Paleino

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 3 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


πŸ™ˆ BUGS πŸ™ˆ

Reporting bugs

the program is part of the devscripts package. please report bugs using

reportbug devscripts

okay that's the whole page, you're officially a debsnap girlie now. go forth and recover those ancient packages, bestie πŸ’–βœ¨

this lil masterpiece came from Debian devscripts, dated July 3, 2010. mwah, no cap πŸŽ€

πŸ“¦ where this page comes from