Reasons for Freedom Software / Open Source
Why Open Source / Freedom Software are essential for user security, privacy and freedom. Security, Legal, Ethical and other Reasons. No Intentional User Freedom Restrictions.
Why Open Source
One of the advantages of Whonix is its Open Source nature. Being Open Source means that our source code is publicly available and accessible, allowing anyone to easily read it. Source code is the set of textual instructions written by programmers used to create a program.
What are some of the practical advantages?
Why is the openness of the source code significant? Here are two scenarios:
Open Source means full transparency in the design, construction, and operation of software. This can lead to more security and more trustworthy software.
Proprietary software (non-freedom software) is the opposite of Open Source software. It often includes anti-features or may even function as malware, thereby mistreating the user. There are many reasons to Avoid Non-Freedom Software.
If you don't know what your computer is doing, your computer is controlling you. Not the other way around.
Why Whonix is Freedom Software And Open Source
Table: Why Whonix is Freedom Software / Open Source
|Open Source software like Qubes, Linux and Whonix is more secure than closed source software. The public scrutiny of security by design has proven to be superior to security through obscurity. This aligns the software development process with Kerckhoffs' principle - the basis of modern cipher-systems design. This principle asserts that systems must be secure, even if the adversary knows everything about how they work. Generally speaking, Freedom Software projects are much more open and respectful of the privacy rights of users. Freedom Software projects also encourage security bug reports, open discussion, public fixes and review.
|Whonix is based on Freedom Software. A lot of Libre licensed software prohibits modification and distribution without sharing the modified source code.
|Whonix developers believe it is immoral to benefit from those Free/Freedom Software components and give back nothing. We stand on the shoulders of giants - Whonix and many other Libre software projects are only made possible because people invested in writing code that is kept accessible for the public benefit.
|It is rewarding and enjoyable to have all types of people contributing. This works best in Open Source projects.
|When free in price, Whonix can spread faster than commercial tools that cannot provide security by default/design.
|Developers hope to make a living from Whonix by selling additional services. (Plus Support | Premium Support)
|Our experience volunteering on this project improves our skill set and makes us more valuable employees.
No Intentional User Freedom Restrictions
In the spirit of Freedom Software, Whonix does not intentionally restrict user freedoms. Whonix documentation might discourage certain configurations, but ultimately the user is free to ignore such advice.
In their default state, programs developed under the Whonix banner may afford additional protection against unsafe user configurations. For example, even if users wanted to do things which are known security risk and recommended against, but documentation might still be provided on how to disable this security mechanism. Simply put, the end user maintains ultimate control over the final Whonix configuration best suited to their needs.
Since Whonix is based on Debian it is valid to state that Whonix has adopted a specific Debian configuration. For this reason advanced Debian users can independently replicate the same technical implementation. Anything Whonix has pre-configured can be re-/de-configured by the user without restriction. User customization is not prevented by technologies used inside Whonix, nor is configuration of Whonix intentionally obfuscated.
Simply put, the end user maintains ultimate control over the final Whonix configuration that best suits their needs.
Software Fork Friendly
Whonix policy is that the name of the project should ideally be a variable so it can be easily changed through a software fork.
For example, Whonix wiki markup text does not write
Whonix literally. Instead it uses variables such as
project_name_long which contains variable content
Whonix. By changing the contents of that wiki template to a different textual string such as
MyForkedProject, the name of the project would change wiki wide from
This is also the reason why many packages names developed under the Whonix umbrella contain
dist (which is a generic abbreviation meaning "distribution") instead of
whonix-. Whonix source code such as package names avoid using the literal string Whonix as much as possible. Contributions towards that effort are welcome.