Dev/Redistribution
From Whonix
< Dev
Introduction[edit]
Developers only!
These are notes for producing official downloadable binary Whonix ™ images.
Pre Building[edit]
Only required if you want to redistribute (official) Whonix ™ builds.
- check if https://github.com/Whonix/whonix-base-files/blob/master/etc/whonix_version [archive] needs update
- package
timesanitycheck
:./usr/share/timesanitycheck/date-minimum-file-create
- Dev/Maintenance
Clean source code
- [1]
- [2]
- You can get a list of unwanted files with
git clean -dfxn
and remove them withgit clean -dfx
.
- Update Whonix ™ debian package repository.
- add your own
default-key
to your own/home/user/.gnupg/gpg.conf
.
- Check that all packages point to a signed git commit and signed git tag.
~/Whonix/packages/whonix-developer-meta-files/debug-steps/packaging-helper-script pkg_verify_signed_commit_and_tag
- push the source code to github
git push origin master
- Check, that the current git commit is a signed. [3]
git log --show-signature HEAD^..HEAD
Or use the generic makefile as a shortcut.
make git-commit-verify
- Create an OpenPGP signed git tag. This will also be used as Whonix ™ version number.
git tag -s version
- Make sure the current git head is a signed git commit and signed git tag.
To simplify this, you could use the generic makefile.
make git-verify
- Push the OpenPGP signed git tag to github.
git push origin version
- Enable Whonix ™ stable repository by default.
export DERIVATIVE_APT_REPOSITORY_OPTS='--enable --repository stable'
- And use
sudo -E
so above environment is kept.
Building[edit]
Build[edit]
Build Whonix-Gateway ™. For example Whonix-Gateway ™ with XFCE for VirtualBox.
sudo -E ./whonix_build --build --repo true --target virtualbox --flavor whonix-gateway-xfce
Build Whonix-Workstation ™. For example Whonix-Workstation ™ with XFCE for VirtualBox.
sudo -E ./whonix_build --build --repo true --target virtualbox --flavor whonix-workstation-xfce
For other options and platforms also see build documentation.
Post Building[edit]
Only required if you want to redistribute (official) Whonix ™ builds.
Image Signing
- A) own custom builds: Optionally sign the images.
- B) official Whonix ™ builds: Mandatory sign the images.
- OpenPGP sign the images.
~/Whonix/packages/whonix-developer-meta-files/release/prepare_release --flavor whonix-workstation --target virtualbox --build
Only required if you want to redistribute (official) Whonix ™ builds.
- Upload the images.
~/Whonix/packages/whonix-developer-meta-files/release/upload_images
Testing[edit]
-
/usr/share/whonix-ws-firewall/unit_tests/stream_isolation_test
- At least a few testers should test final releases before posting a news. Testers may be found by posting a news.
- LeakTests!
- Test the images before final release! (Testers-only releases can be uploaded straight away.)
Update Permanent Links[edit]
Update permalinks.
sudoedit /etc/nginx/conf.d/download_redirects
cacheclear-minimal
Git Tag[edit]
Create -testers-only
or -stable
git tag.
Announcement Text Creation[edit]
Create Changelog and Announcement.
./debug-steps/packaging-helper-script pkg_git_packges_git_log_writer
Wiki Page Updates[edit]
Only required if you want to redistribute (official) Whonix ™ builds.
- Check, if Tor Browser/Manual Download is still up to date.
- Update Download Table.
- See if the download table works in Tor Browser using New Identity.
- Update Known Issues.
- See if Documentation still makes sense.
- Search the wiki for Special:WhatLinksHere/Template:Stable and Special:WhatLinksHere/Template:Testing and act accordingly.
- Update links on the Dev/Build Documentation page.
- Update Features.
- Update Template:VersionNew.
- Update Template:VersionShort.
- Incorporate new documentation which has been prepared on the page: Next.
- Template:Stable_project_version_based_on_Debian_codename
- Template:Stable_project_version_based_on_Debian_version_short
- Template:Debian_Codename_Testing
- Copy/move contents from Testers Release to Release Notes.
- Instructions containing backports.
Misc[edit]
Only required if you want to redistribute (official) Whonix ™ builds.
- See https://github.com/Whonix?utf8=%E2%9C%93&q=deprecated&type=&language= [archive] for deprecated repositories to be deleted.
- https://www.qubes-os.org/doc/supported-versions/#templatevms [archive]
- ask for an announcement on https://www.qubes-os.org/news/ [archive]
- https://github.com/QubesOS/qubes-mgmt-salt-dom0-virtual-machines/blob/master/qvm/whonix.jinja [archive]
Announcement[edit]
Only required if you want to redistribute (official) Whonix ™ builds.
Contents
- introduction (what is Whonix ™) (The release announcement may be the first thing that new people who learn about Whonix ™ see.)
- similar to https://forums.whonix.org/t/whonix-14-has-been-released [archive]
- deprecation notice of old Whonix ™ version with date of deprecation
Where
- Finally announce: Post a news. (Not nagging external lists. Common sense. Mostly only final releases.)
- In Whonix ™ Important and Feature Blog.
- http://lists.debian.org/debian-derivatives/ [archive]
- debian-derivatives@lists.debian.org
- https://lists.torproject.org/pipermail/tor-talk/ [archive]
- tor-talk@lists.torproject.org
- https://whonix.org/cgi-bin/mailman/listinfo/whonix-devel [archive]
- whonix-devel@whonix.org
- https://nmap.org/mailman/listinfo/fulldisclosure [archive]
- fulldisclosure@seclists.org
- https://mailman.stanford.edu/mailman/listinfo/liberationtech [archive]
- liberationtech@lists.stanford.edu
- Also this will do the job as well:
Cleanup[edit]
- any deprecated repositories (none at time of writing)
Related[edit]
- To quality of redistributable builds: Distro Morphing vs Builds
Footnotes[edit]
- ↑
get rid of .directory files inside the source code:
dolphin
→preferences
→general
→behavior
→use common view properties for all folders
- ↑
Get rid of
~backup
files. In other words, get rid of files starting with~
.find ./ -name '*~' | xargs trash-put
- ↑
You might wish using a
git
orbash
alias to safe typing.
Whonix ™ is Supported by Evolution Host DDoS Protected VPS. Stay private and get your VPS with Bitcoin or Monero.
100px | |
Fosshost | About Advertisements |
Search engines: YaCy | Qwant | ecosia | MetaGer | peekier | Whonix ™ Wiki
Subscribe to Whonix ™ Newsletter.
Priority Support | Investors | Professional Support
Whonix ™ | © ENCRYPTED SUPPORT LP | Freedom Software / Open Source (Why?)
The personal opinions of moderators or contributors to the Whonix ™ project do not represent the project as a whole.