Wenn Du auch in Zukunft in einem Staat leben möchtest, der nicht dem Überwachungsstaat aus "1984" gleicht, und/oder Du möchtest, dass weiterhin jede(r) Software entwickeln und vertreiben kann, gibt es verschiedene Möglichkeiten, sich zu engagieren. wir möchten Dir diese fünf Organisationen empfehlen:
If you don't want to live in a state à la "1984" and you want that development and distribution of software should remain legal for everyone, then you have different possibilities to get into the act. We would like to recommend these five organisations:
m23 is a free software distribution system licensed under the GPL, which installs and administers clients with
m23 is controlled via webbrowser. The installation of a new m23 client is done in only three steps and the integration of existing clients is possible, too. Group functions and mass installation tools make managing a vast number of clients comfortable. Client backup and server backup are included to avoid data loss. With the integrated virtualisation software, m23 can create and manage virtual m23 clients, that run on real m23 clients or the m23 server. Scripts and software packages (for installation on the clients) can be created directly from the m23 web interface.
The entire administration is done via webbrowser and is possible from all computers having access to the m23 server via network. The installation of additional administration software is not necessary. A remote access to the m23 server via PDA or laptop is easily possible. Authentification and SSL encryption secure the communication and prevent undesirable access.
Installing a client with m23 is rather simple. Only three steps are required for a completely installed client.
First, you need to enter some values for the client. These are, for example, the network settings (IP, networkmask, etc.), user name and password or the name of an LDAP server that manages your user accounts.
All clients can be partitioned and formatted individually. The resulting partitions can be used for the installation of the operating system, the creation of software RAIDs, for data storage or as swap space. The installation will start after the selection of the operating system.
You can install additional software packages in the last (optional) step.
Existing Debian-based systems (Debian, Ubuntu, Kubuntu, Xubuntu) can be assimilated into the m23 system easily and are then administered like a normal client that was installed with m23. Only the specification of the client's name, its IP or hostname and the root password are required. The client, which is to be integrated, is then scanned and its hardware information and the status of installed packages are transmitted to the m23 server.
You will like the convenient group functions if you have a big amount of clients that need to install new software or if other routine jobs need to be done. E.g. a new software package can be installed on all clients or be removed from all clients of a group. In addition, an update or a client recovery can be accomplished on all group members.
The mass installation tools are handy, if you need to install a big amount of clients with similar requirements (and maybe different hardware). The mass installation is done in three steps.
A model client, that holds the basic settings (such as the default gateway or the group name), is defined (but not installed). The real clients are to be derived from this defined client. The defined client gets a partitioning and formatting for its virtual harddrive (as well as rules what to do if the real harddrives are differing in size or type), the operation system and appropriate software packages.
Now you have to choose which of the settings, that can or have to be different on each client, shall be kept (e.g. user name), generated automatically (e.g. client name) or read from a file or entered by hand (e.g. MAC address). The partitioning of the virtual harddisk will be adjusted on client deployment.
In this last step you see all the parameters and values of all clients in a table and you can change the values by hand. It is possible to change the number of clients, too. Automatically generated client parameters will be calculated in the required amount or existing clients will be removed.
m23 supports Debian, Ubuntu, Kubuntu, Xubuntu, Fedora, Linux Mint, elementary OS, CentOS and openSUSE. The choice of the Linux distribution is a matter of taste and a question of the functional range. m23 gives the administrator the chance to choose the right distribution for each client individually which can be installed automatically. m23 allows to manages all clients via the same m23 administration interface, no matter which distribution is installed.
In addition to the automatic partitioning and formatting, m23 supports individual harddrive setups. The resulting partitions can be used for the operating system, to store data and for swapping. The m23 interface includes all necessary functions for deleting, adding and formatting of partitions and for assigning them to mountpoints, installation or swap usage. In addition, it is possible to reuse the existing partition layout for the installation.
Partitions or entire harddrives can be combined into software RAIDs. m23 supports the RAID levels 0, 1, 4, 5, 6 and 10. These RAID levels have advantages and disadvantages in relation to speed increase and data reliability. RAIDs can be used like normal partitions to install operating systems to or to use them as swap or storage space. You can install the Linux kernel and its modules on a separate (non-RAID) partition to be able to install an operating system on all possible RAID levels.
User accounts can be managed with a central LDAP server. This increases the ease of use in environments with many clients and a lot of users. The OpenLDAP server is shipped with the m23 server and can be administered via the highly integrated phpLDAPadmin. m23 can use existing LDAP entries for new m23 clients or add extra entries on adding an m23 client.
An NFS server for storing the user's home directories is a good supplement to an existing LDAP server. Using an NFS server simplifies the making of backups dramatically in contrast to a lot of clients storing the home directories on local harddrives. As a benefit of this combination the user has the alternative to log in into any client and find her or his own desktop and files.
Thousands of software packages like office packages, graphic tools, server applications or games can be installed via the webinterface. Software installation or removal jobs are carried out at boot time or while the client is in normal use.
The Linux distributions that are installable with m23 offer a large variety of free software, which can be installed easily. In addition to the package sources recommended by m23 other package sources can be added to install software from other suppliers.
You can check if the removal or installation of software will be sucessful before the actual process. The administration interface gives a warning message, e.g. if a package can not be installed due to unsolved dependencies.
Software packages are downloaded from the internet to keep them up-to-date. The packages are then cached to ensure that every package is downloaded only once. If a certain package is installed a second time, the package will be installed from the cache. In case that a new version of the package exists, the latest package will first be downloaded and stored in the cache. On your m23 server this job is done by the proxy cache Squid.
The pool builder makes it possible to combine software packages from different media (CD, DVD, internet) on the m23 server and convert them to a package source. These package sources can be used to install clients. This can be done without an internet connection or if the internet connection is rather slow. It is possible, too, to add selfmade packages to the pool.
The m23 clients can be installed as workstation with the graphical user interfaces KDE, Gnome, XFce, LXDE and pure X11 or as a server without graphical subsystem. In most server setups, the server doesn't need a user interface because most of the server software runs in text mode. If you choose the Ubuntu distribution you can also install Unity, for Linux Mint Mate or Cinnamon and for Kubuntu "Kubuntu desktop" (KDE based), and for elementary OS, there is the Pantheon desktop.
An image file of a partition or entire harddisk can be used to install other clients. These image files are taken from installed clients with all their software packages and settings. The creation of these image files is included in the m23 administration interface for your comfort. Image files can be compressed to save storage space and bandwidth on rollout. An image file can be used to install any number of clients. After the end of the transfer, the client will be adjusted like a client that was installed from software packages. This is done on Debian, Ubuntu, Kubuntu and Xubuntu clients. These "image clients" can be managed like "normal clients" with m23, this includes software installation and other administrative tasks.
Personal data and additional settings can be backupped and restored with the integrated software BackupPC. This is necessary for all personal data which is not handled by m23.
A client can be reinstalled with excactly the same software selection and configuration as it was installed with m23 before. This is done with the recovery feature directly from the m23 interface. The recovery includes the complete installation with partitioning and formatting. All settings done with m23 will be restored. Manual changes need a recovery from a backup medium.
The m23 rescue system is a minimal Linux environment that can be booted on the clients via the network. You can use it for on-location maintenance or via an SSH console. The administrator has full access to the client and can do all administrative work. Additional tools (e.g. the client log) support the administrator with his/her fault analysis.
The free virtualisation solution VirtualBox OSE is now (optional) part of m23 and can be installed directly on the m23 server as well as on the managed m23 clients. Required for virtualisation is a current Debian system (Debian Lenny or Squeeze). Virtual m23 clients which act on the network just like normal m23 clients are managed via the m23 server as usual. These virtual clients can be partitioned and formatted like a normal PC and of course the operating system and additional software can be installed as well.
VirtualBox OSE packages are available for 32 and 64 bit machines, that can be installed directly via the m23 web interface on the m23 clients. These m23 clients are virtualisation hosts for virtual m23 clients after the installation. Virtualisation may be useful to use the existing ressources of your computers better (e.g. office PCs that usually wait for user input most of the time or on a web server).
You can check the usage of harddisk and memory on the virtualisation host in the "VM creation dialog" before you create a new virtual m23 client. So you can take care not to assign too much harddisk space or memory to the VM. The newly created VM runs through the usual 3-step-setup after the creation is done.
Virtual m23 clients can run in graphical mode or without visible output. A modified VNC server was integrated for the graphical output to replace the VRDP feature of the non-free VirtualBox edition. It can be used to access the virtual clients from the boot on and allows to engage if problems occur. The VNC session contains the VirtualBox window with the running virtual m23 client and is based on the lightweight window manager flwm. An analog clock, a terminal and a button to shut down the session together with the VirtualBox machine are visible too.
The m23 interface and the entire m23 system can be improved with extra functions.
The MDK (m23 Development Kit) is a powerful environment to adjust m23 to your needs. E.g. you can create your own m23 server installation CD or build new network boot images with new modules.
Using the m23 extension halfSister, the ambitious administrator can easily make his or her favourite Linux distribution installable with m23, like it was already done with CentOS, openSUSE and Fedora.
m23 differentiates between servers and clients. An m23 server is used for software deployment and the management of the clients. Computers which are administered by the m23 server are the clients.

The client is booted over the network during the installation of the operating system. It is possible to start the client with a bootrom on its network card, with a boot disk or with a boot CD. The client's hardware is detected and set up. The gathered hardware and partition information is sent to the m23 server. Afterwards, this information is shown in the m23 administration interface. Now the administrator has to choose how to partition and format the client. Other settings include e.g. the distribution to be installed on the client.
The server backup function stores the m23 server with all its data at given points in time. The backups contain all information necessary to restore the whole m23 server functionality. Multiple points in time can be selected for this purpose. GPG encrypted backup files can be transferred to external servers automatically.
A GPG key management was integrated into the m23 webinterface, too. After a data fault the restore script will first install an "empty" m23 server and use the backup to bring it into a previously saved state. A short guide showing the restoring steps can be printed out directly from the m23 web interface (and should be before an emergency occurs!).
A variable firewall makes sure that only safe values will be handed to the database. This should prevent SQL injection attacs.
The IP management allows you to connect network settings to a MAC address, so that the necessary values are sent to the respective device via DHCP. Aside from this direct assignment, IP ranges can be defined, within which the IPs can be assigned dynamically (e.g. to notebooks). Specific settings (e.g. client name, MAC address) or specific IP ranges can now be blocked, so m23 cannot wrongly use these for m23 clients.
You are allowed to use this text entirely, partly or in a modified form (e.g. for a press article or for product description in CD shops).
This text is licensed under the Creative Commons Attribution 2.0 License.
And of course we would be very happy, if we got a copy of your article or a URL where to find it ;-)
The biggest change in m23 22.2 is the addition of support for the recently released Linux Mint 21 "Vanessa" as m23 client platform, including the three pre-configured desktop environments Mate, Cinnamon and Xfce. Besides this big change, it also brings you a lot of small changes, improvements and updates.
Announcement and making-of in the community video series "Nicht der Weisheit letzter Schluß" (German):
Videos about m23 basics (German):
The m23 app for UCS 5.0 will be available shortly (if not available yet when this article is published).
The latest version is available as an update from the m23 web interface, via APT (setup described in the Installation Guide).
m23 22.1 now offers support for the recently released Ubuntu 22.04 "Jammy Jellyfish" LTS as an additional m23 client platform (including 6 preconfigured desktop environments), as well as Linux Mint 20.3 "Una" with 3 preconfigured desktop environments. Debian 11 "Bullseye" can now be used as an additional m23 server platform. In addition, there are many small changes, improvements and updates.
As of this version, m23 also supports Ubuntu 22.04 LTS as an additional client distribution, including the familiar range of functions known from other distributions. Included are 6 pre-configured desktop environments: Mate, Ubuntu Desktop (based on Gnome), LXQt, Budgie, KDE and Xfce. m23 now no longer uninstalls snapd anymore, because some standard software, such as Firefox, is no longer offered as a normal package by Canonical. Additionally, m23 also supports Linux Mint 20.3 as another client distribution. Here there are three pre-configured desktop environments: Mate, Cinnamon and Xfce. And last but not least, the m23 server software can now also be installed on Debian 11.
In the course of working on a customer project for a group of schools, many customized functionalities emerged that are only used within the context of this project, or which have even been "discarded". These functions are still available in the m23 API and – thanks to the open source nature of m23 – can be used in other places in future m23 versions. It is also possible to reuse them outside of a school context (e.g. in your enterprise or organization). Apart of very many functions that are only relevant within the project, there are also some that will be of interest to m23 users:
mkDebCustomSettings.sh, a package can be created that contains the settings of the current m23 server in order to import it on another m23 server. This includes /m23/data+scripts/extraDebs/*.deb, /m23/inc/schoolInfoConf.php, /m23/inc/schoolConfig.php, /m23/m23customPatch/*.m23custom, package compilations and non-standard package source lists in the im-/export.
/m23/bin/m23cli.php indexAndSignExtraDebs recreates the repository structure including GPG signatures under /m23/data+scripts/extraDebs, which is used by mkDebCustomSettings.sh, among others.
The Linux kernel of the m23 boot media (client network boot via PXE and ISO and m23 server installation ISO) was upgraded to version 5.10.113 and the software version to Debian 11. During the update, the initrd also had to be increased to 256 MB, but this should not be a problem with today's RAM sizes. Besides adding Debian 10 and 11, Debian 9 was removed, and dependencies were added so that building the boot media also works under Debian 11.
Of course, there are also some minor and major improvements and corrections. You can find the complete list of changes in the changelog.
applyAllm23CustomPatches script can be used to apply all m23 custom patches stored under /m23/m23customPatch, independently from an update of the m23 package.
Announcement in the Community video series "Nicht der Weisheit letzter Schluß":
Here you can find videos about m23 basics:
The m23 app for UCS 5.0 will be released shortly, too (if it isn't yet when this news article is published).
The latest release is available as an update from the m23 interface, via apt (configuration as described in the Installation Guide), as an app for UCS, as ISO file for the creation of an m23 server installation medium, as a preinstalled virtual machine and as an image file for Raspberry Pi (the latter three can be found in the Download section).
m23 21.1 now supports the recently released Debian 11 Bullseye to be used as client platform (including 6 preconfigured desktop environments) as well asLinux Mint 20.2 Uma, which comes with 3 preconfigured desktop environments. In addition to these quite obvious changes, many changes and improvements "under the hood" made it into the new version: e.g. the option to connect a FreeIPA server to an m23 server, to make use of some FreeIPA functionality (e.g. user authentication, Kerberos, roles or user group comparison).
m23 clients with Debian 11 bring you many updated software packages and also the familiar range of installable desktop environments: Mate (optionally as minimal variant with only the absolutely necessary packages), Cinnamon, Gnome, KDE, LXDE and Xfce. 64- and 32-bit clients can be installed, with the desktop selection being independent of the system architecture.
Linux Mint 20.2 Uma has been added as a client distribution, which includes the familiar range of functions from the other distributions. It comes with three preconfigured desktop environments: Mate, Cinnamon and Xfce.
In addition to the added support for the new distros, the most notable change is the option to use FreeIPA in conjunction with m23. A new dialog allows you to setup your m23 server for connecting it to a FreeIPA server werden. If FreeIPA is used for an m23 client, it will be connected to FreeIPA, allowing you to use some FreeIPA functions, including user authentification, Kerberos, roles or comparison of user groups). The m23 server can then also access the data stored on the FreeIPA server, in order to add entries for users, groups, devices (hosts) and DNS configuration and to read information from it, e.g. the IP addresses used in FreeIPA. On deletion of an m23 client, the corresponding entries will be removed from from the FreeIPA server.
In the course of working on a customer project for a group of schools, many customized functionalities emerged that are only used within the context of this project, or which have even been discarded and superseded by new ideas and decisions. These functions are still available in the m23 API and?thanks to the open source nature of m23?can be used in future m23 versions. It is also possible to reuse them outside of a school context, e.g. in your enterprise or organization). Among those new options are the integration von FusionDirectory, the automated creation of organizational structures in LDAP, the usage of Kerberos without FreeIPA or a client add wizard dialog, where all the necessary information (e.g. user account, Linux kernel, distribution, desktop) can be entered on a single page. The m23 client would then use this information to do a full installation (with automated partioning and formatting) without any further user interaction.
m23 autoTest, the framework for automated testing of m23 functions, has been improved in many places (e.g. the text recognition that is used to check the screen content of virtual m23 test clients) and is now compatible with VirtualBox 6.x. During refactoring, compatibility code for the old VirtualBox versions 2 and 3 has been removed and the XML test case files have been adjusted accordingly.
/m23/bin/phpDebug, so error messages and warnings will be displayed in your webbrowser.
Of course, a couple bug fixes needed to be made, too. The cron job that deletes old package source index files is now removed upon uninstalling the m23 package. Multiple return values in m23 functions have been corrected and missing dependencies were included.
The m23 app for UCS 5.0 will be released shortly (or maybe already is released now that this news article is published). Support for UCS 4.4 has been dropped from the m23 version.
The latest release is available as an update from the m23 interface, via apt (configuration as described in the Installation Guide), as an app for UCS, as ISO file for the creation of an m23 server installation medium, as a preinstalled virtual machine and as an image file for Raspberry Pi (the latter three can be found in the Download section).
After a long time in development, including various projects for customers, we are releasing m23 20.1, which brings a lot of changes and additions. Support for Ubuntu 20.04 LTS "Focal Fossa" and Ubuntu-based Linux Mint 20 "Ulyana" for use as client distributions has been added. The update includes the usual preconfigured desktop environments. It comes with extended monitoring features and hardware support, and, as usual, also contains a range of smaller adjustments and improvements.
From this version on, m23 supports Ubuntu 20.04 LTS as a distribution for installation on the clients, including the usual feature range. It contains 6 preconfigured desktop environments: Mate, Ubuntu desktop (based upon Gnome 3), LXDE, Budgie, KDE and Xfce. m23 makes some small changes to Ubuntu, like the removal of snapd. Clients with Ubuntu 20.04 can only be installed with 64 bit architecture, as Canonical has deprecated its support for 32 bit versions.
During a customer project, m23 gained a lot of new monitoring and interface options, which can be enabled / disabled and configured in the server configuration options in the m23 web interface:
This m23 version introduces group-scoped settings. The group settings fill the gap between the global settings and those specific for each client. Currently, they can be used to automatically reboot clients in the group, when a freshly installed or updated package is requesting a reboot.
When installing the m23 server using the ISO or the Debian packages, the network settings (IP address, gateway, DNS server, etc.) are being checked. If these are found to be invalid, a dialog requires you to enter correct values. This does not change the actual network configuration, but only changes how the m23 server sees its own network settings and which settings it relays to the m23 clients. These settings can be changed at runtime. This makes it possible to run an m23 server within a network that is different from the one the m23 clients are in, and to let its clients know its FQDN mitzuteilen. The SSL certificate which serves to encrypt communication between the browser and the m23 server, as well as between the server and the m23 clients, may now include the FQDN (plus an additional IP address, if desired).
The new filter-based search in the clients overview allows you to specify properties (e.g. client name, ip address, time of last change) and conditions (e.g. client ID greater than 1000). When the filter is applied, the overview will only display clients that match the criteria. Multiple filter rules can be defined and the clients' sort order can be specified.
The Linux kernel version used for the client (network) boot media and the server installation ISO has been updated to 5.4.34 and is configured to allow the (virtual) graphic cards of VirtualBox, Proxmox, and of some hardware, where this did not work previously, to show status information about the installation progress in UEFI mode. Display of the graphical kernel logo was disabled, because this could lead to errors displaying the terminal in frame buffer mode. Some more kernel modules have been enabled to extend hardware support during installation.
m23 now supports Linux Mint 20 "Ulyana" for installation on clients, too, with all the usual features. This includes 3 preconfigured desktop environments: Mate, Cinnamon and Xfce. Just like for Ubuntu 20.04, the only supported system architecture is 64 bit.
The m23 app for UCS 4.4 will also be released shortly (if not already released at the time of publication of this article). Support for UCS 4.3 has been dropped from this m23 version.
The latest release is available as an update from the m23 interface, via apt (configuration as described in the Installation Guide), as an app for UCS, as ISO file for the creation of an m23 server installation medium, as a preinstalled virtual machine and as an image file for RaspberryPi (the latter three can be found in the Download section).