[Dev] new meta-packages

bill-auger bill-auger at peers.community
Sat Jan 4 12:13:13 GMT 2020

i added two new meta-packages: 'libre/parabola-base' and
'nonsystemd/parabola-base', that pull what was in the original
'base' and 'base-openrc' groups, respectively - when i mentioned
it on IRC, eli pointed out a proposal for an arch 'posix'
meta-package to define a baseline POSIX-compliant system - that
aligned well with the intention of 'parabola-base'; so i am
going to add a tentative 'posix' meta-package to [libre], then
add that as a dependency of 'parabola-base' - if and when
'posix' appears in arch, then we can simply delete 'libre/posix'

this can make the install guide instructions be the same,
regardless of which init-system is wanted, and as simple as:

  # pacstrap /mnt parabola-base

with the [nonsystemd] repos enabled,
  'parabola-base' will be 'nonsystemd/parabola-base' 
with the [nonsystemd] repos disabled,
  'parabola-base' will fallback to 'libre/parabola-base'

on top of 'posix', 'parabola-base' adds a few more fairly
essential tools for a complete CLI system: text editors , a
man-page viewer, support utilities for networking and
file-systems, and most importantly: a kernel - again, all the
things that were once in the 'base' groups - next, i would like
to add the remaining packages that are installed in the live
systems (the same set installed by the installers), such as:
'bash-completion', 'irssi', 'mc', 'nano' , and 'screen', 'lynx',
and 'sudo' - in this way, 'parabola-base' can be considered as
defining "the standard parabola CLI system", as demonstrated by
the LiveISOs

i think this is a very good a scheme, to have different layers
of well-defined base systems - its been something i have wanted
to do for a long time - i have been keeping the package lists
for parabolaiso and the installers in sync; but as it is now,
they need to be maintained in four different places - this will
unify the baseline install, regardless of the install method:
pacstrap, the CLI wizards, calamares, and the various
parabolaiso configurations themselves

next i will set onto making one or multiple 'parabola-desktop'
meta-package(s), that will require 'parabola-base' - that will
define "the standard parabola desktop system" similarly, by
consuming everything above the lower layers: 'base', 'posix',
and 'parabola-base', that is installed in the graphical live
systems (and installed by the installers), but omitting any
DM/WM/DE-specific packages - then, each of these base system
layer meta-packages can correspond directly to mouse-friendly
options in calamares:
  e.g. "I want a system like ..."
    "Bare-Bones"   -> (install 'base'                    ) ,
    "Command Line" -> (install 'parabola-base'           ) ,
    "Foo Desktop   -> (install 'parabola-desktop' + 'foo') ,
    "Bar Desktop   -> (install 'parabola-desktop' + 'bar') ,

so the base system layers would look like this:

'base' (the mandatory minimalist core system)
    116 MB download size
    531 MB installed size

'posix' (most of what was in the original 'base' group)
  'posix' -> 'base'
    +  34 MB download size
    + 158 MB installed size

for comparison, when applied on top of 'posix',
the original 'base' group pulls in slightly more
(most of that, being the 'linux-libre'):
  'base' group -> 'posix' -> 'base'
    +  73 MB download size
    + 102 MB installed size

'parabola-base' (everything on the CLI LiveISOs)
(fun fact: about 50% of this is 'linux-libre' + 'python')
  'parabola-base' -> 'posix' -> 'base'
    + 164 MB download size
    + 496 MB installed size

'parabola-desktop' (almost everything on the GUI LiveISOs)
  'parabola-desktop' -> 'parabola-base' -> 'posix' -> 'base'
    +  395 MB download size
    + 1783 MB installed size

More information about the Dev mailing list