User:Snowman/License Rebuild Checklist

From ArchWiki

License Rebuild Checklist

General information: http://wiki.archlinux.org/index.php/DeveloperWiki

Packaging: http://wiki.archlinux.org/index.php/DeveloperWiki:HOWTO_Be_A_Packager

Useful commands:

$ tar -tzvf *.pkg.tar.gz |less

$ namcap PKGBUILD *.pkg.tar.gz


Checklist

  • Check upstream if there are any newer release
    • If so:
      • check for soname bump
      • check if other packages depends on a specific version of this package (eg. mysql, mysql-clients, libmysqlclient)
        • If so: Warn other builders so they skip the packages that needs to be rebuilt
  • Check bug tracker for any bugs especially easy ones to fix
  • Check if license is missing/valid. BSD, MIT, ZLIB(?) and custom license must be installed.
  • Check for FHS man pages, info pages and docs
    • For info pages:
      • add texinfo depends
      • remove ${pkgdir}/usr/share/info/dir
      • gzip info pages
      • add install file - prototype: /usr/share/pacman/proto-info.install
  • adding backup array as necessary
  • In some cases the source is no longer available by the upstream authors (eg, project home page has disappeared) but can still be found on third-party mirrors like Debian, Gentoo, etc. Instead of just linking to these mirrors, put a copy locally on ftp://ftp.archlinux.org/other/. This way we won't be using other distros mirror bandwidth and we'll still have the source if they decide to remove the package from their repo.
  • specific sourceforge mirrors shouldn't be used, instead use http://downloads.sourceforge.net
  • some packages still use find to remove libtool files. Replace that with the !libtool option
  • Replace 'export MAKEFLAGS="-j1"' by !makeflags option
  • Remove any old unused patches/files from svn
  • Check permissions of static libs, they should be 644.
  • esthetic: change $startdir/src to $srcdir and $startdir/pkg to $pkgdir
  • don't forget md5sums