Devuan Release semantics 🔼

I'll make an effort to explore what it means (for me) when we speak of a Devuan Release.

context 🔼

  • > Infrastructure.
  • > Installation

Release semantics 🔼

Something is released, meaning it's becoming public - making it available to more interested people.

More specificaly we make certain version of Devuan available to the public.So that is a special case of making software publicly accessible.

pro internet (1970-1995) 🔼

In the 70s,80s,90s software release meant making copies of certain software in a certain info-storage medium , packaging it and either transfering copies to brick-shops (visible in cities where people aggregate) or letting people know from mass media and giving instruction to facilitate brick-mail service. So there are public-space-time places where people's attention aggregates and focus. In ancient greek it was called agora . Are there in our times (2020s) digital public places funtioning like agora ? (i would dare to say that an internet search engine in a sense substitutes a trait that a cyber-agore should have. Visibility being that trait. Agora is a place of human gathering.

in the internet era (1995+) 🔼

From 2000s, 2010s, 2020s information and thus software can be made available via the internet. Using a computer connected to the internet a user can access information and thus software.

In our case a Devuan version is made available via the internet. But since we speak of a Devuan version released to the public we speak about a Devuan Release.

internet release / Devuan 🔼

That means that Devuan (as software) is located in one computer that is connected to the internet. That means a computer thats follows some comm protocols in order to be accessible (like having a publicly usable address -url-) .

So it seem that the most essential information to 'get'

Here is an internet url : @ files.devuan.org That is an internet url that can be used in any computer 'connected to internet' to 'download' 'images of Devuan Releases' or to download a Devuan installer that will boot-strap a Devuan installation process.

Here is another internet url that i like : @ deb.devuan.org that contains the packages of all devuan releases (released devuan versions)

Distro semantics 🔼

The @ Devuan-team and broadly the Devuan community creates and maintains what we call a [b]Devuan distro release[/b].

Initially i would say that a project like Devuan (it's people) aims to maintain an init-free gnu/linux distro. What is a distro? A distro is a set of software packages including the linux kernel. So at first a certain distro is a certain curated list of software. So a distro-project acts as:

  • an aggregator
  • a filter
  • an intergrator

distrosem / aggregator 🔼

Visiting @ deb.devuan.org (ref : @ )

aggr / general 🔼

By 'aggregator' i mean a process of bringing close in cyber spacetime the software that it part of the distro. And that 'closeness' is then maintained when it's get copied from other users in their computers. So each Devuan distro user can test and verify that they 'have' in their computers that same set of software (or access to the same set). So without the existence of an aggregator the user should have do that.

But why should we bring software close ? Why not leave it where it is ? I guess the most propable answer is that a human user in order to pursue her intentions needs that software and she cant use it unless it unravels their meaning. To unravel their meaning she needs a device that can do that. That is a computer. The computer gives meaning to the otherwise dead software instructions. But why not use other computers far away. She could. But she needs to see-hear-feel the results of that process. If a far away computers executes a software she needs she still needs to interact with the data artifacts produced. That means then that these data should move close to her (to see them.. hear them..).

That we do constantly in our internet based distributed computing. But still for processing that can be done in our near computers it would speed our worklflows having near us what can be near us.

So near-user processing is more fast because the communication of the user with the running processes is more fast because the comm line are the shortest possibles. So a user should push to bring close to her the most comp resources she can to make her workflow faster. Doing your workflow faster (than others) will bring eternal cyberspace bliss and happiness to the user. :-).

And ofcourse it makes sense to spend energy to bring close (aggregate) especially software that aligns with the most frequent workflows of it's users. If not.. then the user should spend additional energy to find the missing workflow components and bring them close. That process has friction since software outside the distro means for starters that is not part of the distro's index or software aggregation . Which means it must be found by another process. Which means more mental work spent not in doing work but preparing to work. What ? Distro locks me in ? :-) ...Well it seems so. I guess its an act of balance. Dont use a distro and you must do that aggregation work . Work only inside the distro or use a stagnated distro and your works is stagnated.

In the best possible work i'd like my distro to have processes of incorporating frequent new workflows periodically in order to avoid stagnation.

Distro as a computing workflow setter - enabler .

It'd made sense to speak of computing workflow's components aggregators.

aggr / by indexes 🔼

A Devuan Release dont necessarily aggregates all it's available software. It aggregates URLs in content files(indexes) that contain (close together) the URLs of where that software can be aquired-downloaded and installed.

Visit : http://deb.devuan.org /devuan/dists/excalibur/main/binary-amd64 Packages.xz (93.1KiB -> 476.3KiB (uncompressed)

$ less Packages | grep "^Package:" | wc -l 723

aggr / by software 🔼

A Devuan Release offer also images that contain a significant fraction of it's available software. In that case the binaries formats of the software were put close together inside the same file.

aggr / security 🔼

So in that context ... bringing the Devuan software together .. can be a work split in the case of the index-aggregaation . The DevuanTeam does the index-aggregation but the sysadm+user will -move-(download) -aggregate her software into her computer. And that means that the aggregation is a significant part of the DistroUse. Which means for example that AIscrapers that overload Devuan's infrastructure would create friction in the aggregation process performed by the DevuanRelease users. (a devuan team member told me about that aspect and i understood that ,unknown to me before,constant type of work that is needed to keep the aggregation rolling)

distrosem / filtering 🔼

filter / about 🔼

Filtering is basically a selection. Accessing a set of software released in the 'public' an organization selects a subset based on publicly stated intentions-goals. Those intention filter the broader set and are feed to the team's aggregation process.

filter / functionality selection 🔼

Forget licenses. What type of software Devuan Releases includes ? (Devuan project-infrastructure could use other software - i dont know is Devuan infrastructure is supported only on Devuan))

Devuan includes a Kernel , Installer , Package Manager and various sysadm and user software.

Devuan is a GNU+ [@Linux](https://en.wikipedia.org/wiki/Linux_distribution) distribution . Thus [@LinuxKernel](https://www.kernel.org/) + @ GNUSoftware + third party software .

Althought the term distro is not used in @ proprietary software when a user installed e.g windows essentially installs a windows kernel plus basic user software.

filter / DevuanTeam's intentions 🔼

DevuanTeam's @ public intentions :

Devuan GNU+Linux is a fork of Debian without systemd that allows users to reclaim control over their system by avoiding unnecessary entanglements and ensuring Init Freedom.

So we see here an intention with a subtractive logic (without systemd) followed by a general intention (ensure Init Freedom) followed by a more general intention ()reclaim control over their system by avoiding unnecessary entanglements).

Those intention are manifested in the Teams selection(filter) process.

We have a 'filter' build on top of Debian but diverging from Debian in a practical sense (avoiding a certain initsystem) but broadly changing filter semantics towards more freedom and modularity).So although it may seem as simple subtractive the DevuanTeam's intention focuses also in certain principles .

filter / license 🔼

The basic difference of the software included in Devuan from other PC software "distros-bundles' is the libre licence terms.

@ Debian Social Contract + The Debian Free Software Guidelines (DFSG) are documents that acts as broad statement of a filter-process in Debian in the license domain (especially DFSG).

Since Devuan is build from Devuan (and merges with it's repos) we can say that DFSG is in effect also in Devuan . BUT since Devuan excludes somes packages from Debian it's filters is DFSG+Devuan's Contract.

So a package passes the Devuan's filters passes the DFSG filter and then must pass the Devuan's filter.

filter / historical & honoroble 🔼
GNU software 🔼

GNU software would currently broadly refer to software created and maintained by people either affiliated at some point in time to the GNU project . But also the GNU project historically due to its foundational pioneer work in establishing libre software and its central role in aiding in Linux kernel development (via accessible necessarys tool like gcc compiler and glibc among others) is mentioned not only from a practical standpoint (how many packages are in a linux distro) but from a honorable standpoint. Read Richard Stallman's argument regarding the naming aspect .[url=https://www.gnu.org/gnu/linux-and-gnu.en.html]@[/url]Linux and the GNU System

Thinking of it 'selector-aggregator-filter' have commonalities. Assuming a big set of software selecting one is a filtering process. And what is selecting ? Selecting is an act of appropriation (minus any exploitation negative connotations) thus a moving something close to you, More accurately you move code(programs) from one computer into a computer device you own.

So a distro developers scans a software space selecting software and putting it close together.

    Linux distros -> software compatible to the Linux ABI
    Libre - open source distros -> software compatible to libre-opensource licences.
    Init free distros -> software compatible to init systems endorsed by a certain community.

distrosem / intergration 🔼

intergration / about 🔼

Integration across a software domain mean more communication between software components of a software system . A software component being part of an integrated whole means that it NEEDS other components in order to function and it has interest in the good state of the broader system in which it sits.

intergration / current state 🔼

Currently (middle 2020s) in the personal computing distros tend to be loose . Provocatively someone could say they are a thin bootstrap for an enviroment where third party software would be installed with distro-blind-agnostic standalone installers. My favorite analogy is of a home with guest rooms and guest bringing their own food , wifi router , washing machine , etc .

intergration / merits 🔼

For the merits of intergration we can remember a similar approach that very early in the linux history was followed in the desktop. Gnome,KDE were attempts to intergrate previously loosely couple desktop functionality.

intergration / packaging 🔼

In aggregation upstream project's src is pulled. But to be part of a Distro , to be intergrated in it , packaging is one of the main processes.

intergration / package depedencies 🔼

A distro is more than the sum (or aggregation) of it's parts .And i think here lies the strength and value of a distro that elevates it from simple aggregation . One core trait of deb packaging is package depedency resolving. That binds well with divison of labor and respectfull and cooperating style of computing.And that aspect can alter a software developement workflow. Having a distro as a target (not just linux.. isnt it interesting that here emerges a fear of fragmentation.. ) could mean among others constraints a software that is aware and uses libraries (and other software) from the distro. That logic aligns also with a minimalistic mindset (^1). So Devuan is build that way. (in the broader sense of playing along with existing Debian)

intergration / vs freedom 🔼

Integration at certain degree could lead to a system that are performing more fast for specific tasks but are less flexible to adapt to change. I think that a software system should overcomit resources to certain workflows to make them more fast. So there is a tension here. It seems Debian has made a significant step toward more integration putting systemd at a central position whereas Devuan valued more a less integrated init system that leads to less overburden commitments of other distro software.Of course that is philosophical extrapolations.. i could be wrong. I extrapolate having in mind not only systemd but kde and gnome that had took early the integration highroad.

Desktop over-integration could run counter to a hack culture that values freedom and would see merit to a loose desktop with no intergrated traits that touch all desktop apps. But i think a user would find value and faster workflows in an intergrated comp env. Perhpas ideally a compsys could allows a use to create her own intergrated enviroment . That could happen by software that is integration aware and can memorise user habits (machine learning intergration adaptability). But we want programmes and disto-teams to do that work! :-) They can do it better !!. I guess that spirit is what drives domain specific distros:

  • edu
  • security
  • gaming
  • webdev (remember LAMP?)
  • ...

And that spirit is in the installer when it ask you to choose 'desktop envs' like kde,xfce etc. Wouldnt it fit here nicely to choose in a general sense intergrated curated workflows envs ? Also wouldnt it fit nicely to have traits or integrated workflows ? Imagine a memory lite webdev (valueable in era with nonaffordable dram) , or a power-lite gaming workflow or a general lightweight intergrated env (how many times i have searched for lightweight browsers or utilities) .

So we see integration of software has many faces (a user UI and a hidden faces that try to achieve constraints in various resources or even psycho-defense from datapiggies (e.g installing only ad-protected browsers and federated social apps.)).

That integration targets could happen naively by enriching a debtags semantics. But the hard way is by setting packaging and coding standards (for example a powersaving library that all apps must use .)

intergration / dynamic libraries and dynamic linkers 🔼
glibc vs musl 🔼

In the broader context of intergration a libc is a pillar of many software . We could say that most linux programs need libc and are integrated with it. So imagine having to select (filter) between glibc and musl .Musl is minimalistic and that could enhance its modularity and thus freedom but glibc is part of gnu software but is tighly integrated with many user software that depend in various idiosyncracies build after decades .

refs 🔼

@ pkginfo.devuan.org

1. @ The importance of minimalism and modularity by Devuan's Team Katolaz 2019