
Changes to make in FAQ in preparation for a release:
----------------------------------------------------

When preparing for a Debian release there are a number of things that need 
to be changed in the file debian-faq.ent.

There is some guidance in the entity text file itself, but this is an overview
of what needs to be changed:

- Adjust the name of &release;, &releasename;, &oldreleasename; and &nextreleasename;
  to match the release
  
- Adjust the number of developers. 
 
  This is a difficult number to calculate, there are several ways:

  + Use the current number of Debian developers and contributors
    (for developers use https://nm.debian.org/members/ and use
    https://contributors.debian.org/ for contributors).

  + Use the numbers from Debian LDAP database
    by checking https://db.debian.org/search.cgi for a complete list of Debian developers.

  + Use the number from latest Debian election

  + Can calculate the number based on the number of GPG keys in the keyring

  The preferred option is the first one
    
- Adjust the number of packages in the distribution.

  For packages, query the Ultimate Debian Database (UDD -
  https://wiki.debian.org/UltimateDebianDatabase) using the following

        SELECT COUNT(DISTINCT package), component FROM all_packages
        WHERE distribution='debian' AND release='bookworm' GROUP BY component;

  That should give the values you need for each.

  Alternatively, you can calculate based on the packages in your system as described
  belp
  ( the count-release.sh script should do this automatically if
    properly adjusted )

  [ First calculate the number of packages in the distribution 
  (main+contrib+non-free): ]
   $ total=`grep-available -s Package -F section -r ".*" |wc -l`
  [ Then contrib and non-free ]
   $ nonfree=`grep-available -s Package -F section -r "non-free/.*" |wc -l`
   $ contrib=`grep-available -s Package -F section -r "contrib/.*" |wc -l`
 
  contrib-nonfree-pkgs   --> $(($nonfree+$contrib))
  main-pkgs   --> $(($total-$nonfree-$contrib))
  all-pkgs    --> $(($total-$nonfree))

  Note: The grep-available runs should be done in a &release; system
  of course or providing it a Packages file from
  /debian/dists/$RELEASE/main/binary-$ARCH/Packages
  /debian/dists/$RELEASE/contrib/binary-$ARCH/Packages
  /debian/dists/$RELEASE/non-free/binary-$ARCH/Packages

  The biggest $ARCH should be used here (typically, amd64) since the numbers
  will vary from architecture to architecture.

- Review the number of architectures in the release. Check the Release Notes at:
  https://www.debian.org/releases/stable/ and https://buildd.debian.org/

- Review the "oldcodenames" section in en/ftparchive.dbk to point to the
  oldreleasename and make sure that the "sourceforcodenames" section
  contains &releasename; and the next release's name's 

- Review the contents of en/nextrelease.dbk. There is not always discussion on
  debian-devel of wanted features for the next release so spark the
  discussion if needed be to get a list of things that _might_ end up
  in the next release. Use the Release Goals set by release managers
  if there are any.

  More information for Release Goals here: https://wiki.debian.org/ReleaseGoals/
  
-- Javier Fernandez-Sanguino <jfs@debian.org>
Sun, 29 Sep 2024 20:39:40 +0200

