|Version 12 (modified by 6 years ago) ( diff ),|
This page gathers random notes about doing Haiku releases.
Take care of this:
- Don't rush the release. Better delay it a bit and take the time to make sure everything is ok.
- Make sure the final image is really well tested.
- Start planning early. Getting the release ready takes time. Waiting until a new release is urgent is a bad idea.
This is an actual phase of the release schedule. It's purpose is to grab the attention of all contributors -- committers, bug reporters, translators, everyone.
Getting the development team in "release mode" is not easy. The Trac roadmap is a good indicator of how close we are, but there is some "under the hood" stuff that's hard to predict, like important work happening in a branch we'd really want to merge.
- Announce the intent to enter release mode: ML, Website. At this point, we should already have a release coordinator.
- Define the schedule and target date.
- Cleanup the Trac roadmap of mistargeted tickets: most stuff can be postponed.
- Allow developers to push any remaining drastic changesets
- Selection of haikuports packages that should be in the package repo, and first run of build and testing for these.
- Make sure the API stays stable (Services Kit, Layout Kit, Locale Kit) for some time before the release so 3rd-party app can be up to date on it.
- Complete the release roadmap and set the purpose for the release: R1/ReleaseRoadMap
- Setup the wiki pages for the release (R1/Alpha3)
- Fix all the blocking bugs
- Branch the release
git push origin master:r1alpha5
- Update the version constants (hrev6344, hrev36348)
- remove the sleeps in the Bootscript
- diable serial debug output (hrev36721) and in the kernel config file
- Update package repos to use the release repo (hrev41623)
- Tag the build tools
- Update the build tools in the branch (hrevr36378)
- Rebuild the optional packages - NO update of the packages at this point.
- Fix any remaining bugs [merge stuff from master on an exceptional basis] and do general polishing. Give some preview to people so they can test it.
- Import user guide (hrev36743, hrev36744) and synchronize locale catalogs
- Set KDEBUG_LEVEL to 0 (
#define KDEBUG_LEVEL 0) otherwise Haiku is too slow in VMs unless you're on a really fast processor
- Freeze the branch
- Make the branch official (hrev36768)
- Add the ladybugs, stamp in installer logo, etc.
- Have a test run of the golden master image to spot last remaining critical bugs
- Cooldown phase: testing of the golden master image on as much hardware as possible: booting, installing, using, for all image types (anyboot, iso, vmware).
- Tag the branch
- Write the release notes and press releases
- Prepare release-files-directory:
[release-name]/ |--md5sums.txt (of compressed and uncompressed release-image-files) |--release_notes_[release-name].txt |--[release-image-files] (both as .zip and .tar.xz) |--[release-image-files].torrent (of just the .zip's) |--[release-name]/sources/ (all source archives should be .tar.xz) |--haiku-[release-name]-src-[YYYY-MM-DD] |--haiku-[release-name]-buildtools-src-[YYYY-MM-DD] |--[all optional packages]
- rsync release-files-directory to http://haiku-files.org/files/releases/[release-name]
- rsync release-files-directory to baron:/srv/rsync/haiku-mirror-seed/releases/[release-name]/ (the 3rd-party rsync mirrors will automatically mirror the files)
- Tell Distrowatch: http://distrowatch.com/table.php?distribution=haiku (?)
- Update the freshmeat/freecode page: http://freecode.com/projects/haiku (mmu_man)
After the release
- Create new Trac "version" and close current milestone
- Create source archives for legal purposes (GPL compliance)
- Update the Roadmap wiki page again with the final release date
- Prepare graphics for the download page: stamp, ladybugs, cd/dvd graphics
Website Pages to update:
- Official Article
- http://www.haiku-os.org/docs/userguide/en/contents.html -- sync with branch or tag.
Updating download logo for website front page:
sudo bash cd /srv/www/drupal/haiku-os.org/themes/shijin/haiku-images mv bg-download-box.png GET-HAIKU-download-box-r1a1.png cp GET-HAIKU-download-box-r1a2.png bg-download-box.png