This is an old revision of the document!


Incompatible Packages and Projects

As project oriented on free, permissive licensed software Hyperbola has a strict way to integrate different software-projects and packages based on them. Followed up the possible reasonings for us to decline packages for building or remove them from our repositories:

  • Package (software) is only available for the GNU/Linux-platform itself and is not as port for BSD possible, including the exclusive usage of interfaces being only available on GNU/Linux
  • Package (software) is bloated in technical, social and / or ecological aspects, which means integration makes it the one major dependency for many others or its own dependency-tree is way more complex
  • Package (software) includes several already known vulnerable and insecure implementations and also opposes the essential long-term support from Hyperbola as the maintaining person(s) just state to always update to the newest version without having any interest in stable release-schedules
  • Package (software) is semi- or non-free in its outcome and includes several parts impossible to remove or to modify, also declining the modification without asking
  • Package (software) is in its original state not complete free and libre, therefore patching would be needed but this would end in such tremendous work that even forking would be the better option
  • Package (software) is not based on the pure work of the community and is just a corporate project pretending to be free and libre in its licensing with people attend but nevertheless misusing their engagement so named copyright-holding companies get their profit with

All of those named points are reducing or even worse declining the elemental freedom of the user, to learn, to modify, to share and to use for any purpose without restrictions. Hyperbola was and is always about essential freedom and with its goal of technical emancipation oriented on lightweight software and design so people can learn and fully control their system by all means. Including software-projects and packages based on them opposing this will never be done, also not just for convinience!

List of packages and projects being not integrated and removed

Name Description Reasoning
systemd system and service manager See our reasoning here.
dbus Freedesktop.org message bus system See our reasoning here.
openssl Toolkit for Secure Sockets Layer and Transport Layer Security See our reasoning here.
bluez Daemons for the bluetooth protocol stack See our reasoning here.
xorg Xorg X server See our reasoning here.
gtk-doc Documentation tool for public library API There is no need to implement a toolset for generating any kind of HTML-based documentation or even more complex file-formats while man pages are absolutely sufficient.
libcanberra Implementation of the XDG Sound Theme Specification Package is not needed for running any kind of application and just make more work to maintain it, while the software itself is using more in its own dependency-tree.
avahi Service Discovery using mDNS/DNS-SD Package is named as being compatible with the non-free framework Bonjour from Apple and is also a possible attack-vector throughout the network.
zstd Zstandard - Fast real-time compression algorithm Package is free and permissive licensed but nevertheless bloat within especially social and ecological aspects as some projects implement it as mandatory depedency without any kind of choice left to fast select another interface and depedency. Also an example of corporate projects pretending to be free and libre!
protobuf Protocol Buffers - data interchange format Package is free and permissive licensed but nevertheless bloat within especially social and ecological aspects as some projects implement it as mandatory depedency without any kind of choice left to fast select another interface and depedency. Also an example of corporate projects pretending to be free and libre!
libatasmart ATA S.M.A.R.T. Reading and Parsing Library Package is based on interfaces only available on GNU/Linux, making it impossible to be ported and / or used further.
java / openjdk Java development kit See our reasoning here.
rust Systems programming language See our reasoning here.
sudo Give certain users the ability to run some commands as root See our reasoning here.
gettext GNU internationalization library Enforcing usage of Java and C# (.Net / Mono), while including references towards those non-free language implementations. Package itself is completely bloated in all named categories.
mono Implementation of the .NET platform including runtime and compiler Package is free and permissive licensed but nevertheless bloat within especially social and ecological aspects as some projects implement it as mandatory depedency without any kind of choice left to fast select another interface and depedency. Also an example of corporate projects pretending to be free and libre as the company Microsoft has only given the permission for the core-parts, holding back essential copyright material.
nodejs Evented I/O for V8 javascript Package is free and permissive licensed on the first look but nevertheless bloat within all parts. Also it is a possible attack-vector as JavaScript is exectued at run- and build-time with many further needed dependencies for projects. Further reasoning is to be read here.
npm A package manager for javascript We do not distribute any further package-manager outside our own as there will be never any kind of control which kind of licensed dependency is loaded and installed. Possible non-free dependencies would be then provided direct on the system.
pip The PyPA recommended tool for installing Python packages We do not distribute any further package-manager outside our own as there will be never any kind of control which kind of licensed dependency is loaded and installed. Possible non-free dependencies would be then provided direct on the system.
conan A distributed C/C++ package manager We do not distribute any further package-manager outside our own as there will be never any kind of control which kind of licensed dependency is loaded and installed. Possible non-free dependencies would be then provided direct on the system.
cargo Package manager for Rust We do not distribute any further package-manager outside our own as there will be never any kind of control which kind of licensed dependency is loaded and installed. Possible non-free dependencies would be then provided direct on the system.
flatpak Application sandboxing and distribution framework The project itself would bring up another way to distribute software, but as there is no source available without non-free packages and also no restriction to be implemented: Possible non-free dependencies and software would be then provided direct on the system.
chromium A web browser built for speed and simplicity See our reasoning here.
qt-webengine Provides support for web applications Package is based fully on chromium.
youtube-dl / yt-dlp (any fork) A command-line program to download videos from YouTube.com and more sites Besides that the only purpose of this software is to work with non-free platforms, this so-called “streamripper”-projects are part of further problems in contact with copyright-questions. Free and libre software mustn't use non-free platforms to circumvent them and make usage in a way nevertheless possible for accessing.
electron Build cross platform desktop apps with web technologies Package is not fully free and permissive licensed and bloat within all categories. Also an example of corporate projects pretending to be free and libre!
midori Lightweight web browser The original project was abandoned since 2019 and further forks done on the base of electron.
go Core compiler tools for the Go programming language Hyperbola only provides gcc-go within the repositories and rejects the usage of go beyond as the language itself is designed to download further dependencies at buildtime, while there is no guarantee those are free and libre licensed. Besides that this concept opposes the idea of a stable design for software.
cdrtools Supporting CD, DVD and BluRay burning Package includes Apple's license binding with no clarification (apple_driver utility is non-free) and has an incompatible mix of the GPL and the CDDL, for which Hyperbola cannot include this software and all further projects exclusive only based on this.
kodi Software media player and entertainment hub for digital media Package contains non-free decompression engine for RAR archives and support for non-free addons, parts are furthermore only useful with java-runtime (jre7-openjdk and/or later versions) and it depends on libpulse and recommends pulseaudio optional installation.
pulseaudio A general-purpose sound server Package contains absurd bugs and conceptional problems such as SIGSEGV, following then takes some client applications with when crashing. There are also buffering issues which cause sound to stutter, jitter, and basically providing bad output. Reports of bugs with the hardware mixer, breaks or jitters input streams when adjusting line-in or mic volume; misidentifies mixer controls, depends on openssl, depends on systemd.
libhandy Library full of GTK+ widgets for mobile phones Package is mandatory for many newer GTK+ applications and instead of being just an option it is taken that way into the very basic needs for compilation, which causes even more dependencies.
imagemagick An image viewing/manipulation program Package has trademark issues.

Packages and projects using those named dependencies within the listing as mandatory dependency can't and won't be integrated within the repositories of Hyperbola at any time.

There is no easy patch! Please be also aware that even if it would be possible to patch several dependencies out for packaging a concrete version: This patch would only work for a concrete version and release. With any new released version the whole work would be done again or even worse is no longer possible. Also take into your perspective that even a questionable dependency is once optional it may be changed in coming new releases.

The bigger picture and conclusion

While many other systems and system-distributions include those above listed packages in one form or another (other names and descriptions) Hyperbola is oriented fully on the freedom for the users. To keep the packages named is mostly done with the reasoning of convinience, set above freedom and technical emancipation in general.

This list is not meant to be used as false argument against Hyperbola as project, likewise stating it would be ideological misleaded. Everyone and every user is free in the own decision. So what is furthermore done local stays upon that. But to keep up the freedom and especially the free decision software-projects named are excluded. Learning how to build and package software is part of our main purpose for the users.

So is it about “isolation” for Hyperbola? No, for sure not. But the project is setting up a clear statement with all those packages listed not compatible. A clear statement in regards for the principles and values being important for Hyperbola and as every project those matters for us. If this is to be seen different? That's absolutely working, but for sure not in our perspective. And perhaps this drop of information and principles likewise values keeps on growing as to oppose the misusage of free, libre culture in its roots. Perhaps others may say that politics do not matter for software, we see it different. Everything is part of and political, otherwise this project and the whole sphere of free and libre software, licensing and culture would not exist! There is also a right not to use a package and choose a different one as part of a diverse approach building the own system for the own usage.

And just a short note in the end: Even though many parts here sound like we are dealing with “antagonists” or even worse we do not follow this line. It is about ignorance and arrogance, which may at any time for every being. Do not work with singular simplified imagery, work with clear guidelines, calm but straight values and principles. Do not go out and spread hate or shortened messages. Those won't help and even make the whole situation more drastic and worse!