Software distribution is the process of delivering software to the end user.
A distro is a collection of
software component
Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a give ...
s built, assembled and configured so that it can essentially be used "as is". It is often the closest thing to
turnkey form of
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, ...
. A distro may take the form of a ''binary distribution'', with an
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data fil ...
installer which can be downloaded from the
Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a ''internetworking, network of networks'' that consists ...
. Examples range from whole operating system distributions to
server and
interpreter distributions (for example
WAMP installers). ''Software distribution'' can also refer to
careware and
donateware.
In recent years, the term has come to refer to nearly any "finished" software (i.e. something that is more or less ready for its intended use, whether as a complete system or a component of a larger system) that is assembled primarily from open source components.
Examples of distros
Examples of software distributions include
BSD-based distros (such as
FreeBSD
FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
,
NetBSD
NetBSD is a free and open-source Unix operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is a ...
,
OpenBSD
OpenBSD is a security-focused operating system, security-focused, free and open-source, Unix-like operating system based on the Berkeley Software Distribution (BSD). Theo de Raadt created OpenBSD in 1995 by fork (software development), forking N ...
, and
DragonflyBSD) and
Linux-based distros (such as
openSUSE,
Ubuntu, and
Fedora
A fedora () is a hat with a soft brim and indented crown.Kilgour, Ruth Edwards (1958). ''A Pageant of Hats Ancient and Modern''. R. M. McBride Company. It is typically creased lengthwise down the crown and "pinched" near the front on both sides ...
).
Distro support
Technical support is a key issue for end-users of distributions, since the distribution itself is typically free and may not be "owned" in a commercial sense by a vendor. Depending on the distribution, support may be provided by a commercial support vendor, the developers who created the distribution or by the user community itself.
Free software distribution tools
GNU Autotools are widely used for which consist of source files written in
C++ and the
C programming language
''The C Programming Language'' (sometimes termed ''K&R'', after its authors' initials) is a computer programming book written by Brian Kernighan and Dennis Ritchie, the latter of whom originally designed and implemented the language, as well as ...
, but are not limited to these.
Commercial software distribution tools
*
LANDesk Management Suite provides software distribution for Windows, OS X, and Linux.
*
Dell KACE provides remote administration, software distribution, and
software installation
Installation (or setup) of a computer program (including device drivers and plugins), is the act of making the program ready for execution. Installation refers to the particular configuration of a software or hardware with a view to making it u ...
to any Windows, Mac, or Linux desktop or server.
Distribution tools for mobile devices
Distribution of software to small
mobile devices
A mobile device (or handheld computer) is a computer small enough to hold and operate in the hand. Mobile devices typically have a flat LCD or OLED screen, a touchscreen interface, and digital or physical buttons. They may also have a physical ...
such as phones, PDAs and other hand-held terminals is a particular challenge due to their inconsistent connection to the Internet. Some tools that cater to this category of devices are:
*
Sybase iAnywhere Afaria
{{Software digital distribution platforms