You are not logged in.

#1 2015-05-20 14:22:27

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

[SOLVED] Package in group base containing systemd?

Hi,

I'm building an install CD to install an ArchLinux system with openrc.

As a first attempt I just wrote a script removing all the systemd-stuff and installing openrc. However I'm not happy with it, because why install all the stuff just to remove it again?

So I looked at just changing the

pacstrap

script.

One way to do it would be to just pass the list of required packages to the

pacman  -Sy

command. However I'd like to work as closely as possible with the original

pacstrap

script. Just leave out the package containing systemd and then installing the packages required for openrc.

But which of these packages from the Base Group is the one to omit?

These are the packages to be selected:
]http://puu.sh/hU8Ym/915d62f09d.jpeg
This what will be installed when selecting all (default).
http://puu.sh/hU91S/adc0b8af27.jpeg

Mod note: Converted imgs to urls. -- WorMzy

Last edited by Arhat (2015-07-06 15:23:57)

Offline

#2 2015-05-20 14:39:47

Awebb
Member
Registered: 2010-05-06
Posts: 6,309

Re: [SOLVED] Package in group base containing systemd?

1. Top right, Packages, search field, systemd, dependency list. Compare with base packages.
2. On system with systemd, pactree systemd.
3 -Qi systemd

Offline

#3 2015-05-20 14:44:52

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 11,902
Website

Re: [SOLVED] Package in group base containing systemd?

Arhat, please don't embed large images into your posts.

https://wiki.archlinux.org/index.php/Fo … s_and_code


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#4 2015-05-20 14:51:20

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: [SOLVED] Package in group base containing systemd?

Are you aware of the existing openrc/Arch work: https://bbs.archlinux.org/viewtopic.php?id=152606

Offline

#5 2015-05-20 14:52:38

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 19,804

Re: [SOLVED] Package in group base containing systemd?

Check the documentation for pacman and the -Qs switch.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Offline

#6 2015-05-20 15:30:36

Alad
Wiki Admin/IRC Op
From: Bagelstan
Registered: 2014-05-04
Posts: 2,413
Website

Re: [SOLVED] Package in group base containing systemd?

Removing systemd is in no way needed to use a different init. udev also keeps working. So why remove systemd? (besides make life needlessly difficult)


Mods are just community members who have the occasionally necessary option to move threads around and edit posts. -- Trilby

Offline

#7 2015-05-22 07:46:34

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

Re: [SOLVED] Package in group base containing systemd?

WorMzy wrote:

Arhat, please don't embed large images into your posts.

https://wiki.archlinux.org/index.php/Fo … s_and_code

Apologies.


tomk wrote:

Are you aware of the existing openrc/Arch work: https://bbs.archlinux.org/viewtopic.php?id=152606

Yes I am, and I'm grateful for the great work done there. I have converted converted some of my systems to using openrc. However now I want to remaster the install ISO to install an ArchLinux system with openrc. I have searched but have not found something like that.

Awebb wrote:

1. Top right, Packages, search field, systemd, dependency list. Compare with base packages.
2. On system with systemd, pactree systemd.
3 -Qi systemd

ewaller wrote:

Check the documentation for pacman and the -Qs switch.

Either I'm just to stupid to see it:


pactree systemd
systemd
├─acl
│ └─attr
│   └─glibc
│     ├─linux-api-headers
│     ├─tzdata
│     └─filesystem
│       └─iana-etc
├─bash
│ ├─readline
│ │ ├─glibc
│ │ └─ncurses
│ │   ├─glibc
│ │   ├─gcc-libs
│ │   │ └─glibc
│ │   └─bash provides sh
│ └─glibc
├─dbus
│ ├─libdbus
│ │ └─glibc
│ └─expat
│   └─glibc
├─glib2
│ ├─pcre
│ │ ├─gcc-libs
│ │ ├─readline
│ │ ├─zlib
│ │ │ └─glibc
│ │ ├─bzip2
│ │ │ └─glibc
│ │ └─bash
│ └─libffi
│   └─glibc
├─iptables
│ ├─glibc
│ └─bash
├─kbd
│ ├─glibc
│ └─pam
│   ├─glibc
│   ├─cracklib
│   │ ├─glibc
│   │ └─zlib
│   ├─libtirpc
│   │ └─krb5
│   │   ├─e2fsprogs
│   │   │ ├─bash provides sh
│   │   │ └─libutil-linux
│   │   ├─libldap
│   │   │ ├─libsasl
│   │   │ │ └─openssl
│   │   │ │   ├─zlib
│   │   │ │   └─perl
│   │   │ │     ├─gdbm
│   │   │ │     │ ├─glibc
│   │   │ │     │ └─bash provides sh
│   │   │ │     ├─db
│   │   │ │     │ ├─gcc-libs
│   │   │ │     │ └─bash provides sh
│   │   │ │     └─glibc
│   │   │ └─e2fsprogs
│   │   └─keyutils
│   │     ├─glibc
│   │     └─bash provides sh
│   └─pambase
├─kmod
│ ├─glibc
│ ├─zlib
│ └─xz
│   └─bash provides sh
├─hwids
├─libcap
│ ├─glibc
│ └─attr
├─libgcrypt
│ └─libgpg-error
│   ├─glibc
│   └─bash provides sh
├─libsystemd
│ ├─glib2
│ ├─glibc
│ ├─libgcrypt
│ ├─lz4
│ │ └─glibc
│ └─xz
├─libidn
│ ├─glibc
│ └─texinfo
│   ├─ncurses
│   ├─findutils
│   │ ├─glibc
│   │ └─bash provides sh
│   ├─gzip
│   │ ├─glibc
│   │ ├─bash
│   │ └─less
│   │   ├─glibc
│   │   ├─ncurses
│   │   └─pcre
│   ├─perl
│   └─bash provides sh
├─lz4
├─pam
├─libseccomp
│ └─glibc
├─util-linux
│ ├─pam
│ ├─shadow
│ │ ├─bash
│ │ ├─pam
│ │ └─acl
│ ├─coreutils
│ │ ├─glibc
│ │ ├─pam
│ │ ├─acl
│ │ ├─gmp
│ │ │ ├─gcc-libs
│ │ │ └─bash provides sh
│ │ ├─libcap
│ │ └─openssl
│ ├─libsystemd
│ └─libutil-linux
└─xz
sudo pacman -Qi systemd
[sudo] password for dlingel: 
Name           : systemd
Version        : 219-6
Description    : system and service manager
Architecture   : x86_64
URL            : http://www.freedesktop.org/wiki/Software/systemd
Licences       : GPL2  LGPL2.1  MIT
Groups         : None
Provides       : nss-myhostname  systemd-tools=219  udev=219
Depends On     : acl  bash  dbus  glib2  iptables  kbd  kmod  hwids  libcap  libgcrypt  libsystemd  libidn  lz4
                 pam  libseccomp  util-linux  xz
Optional Deps  : python: systemd library bindings [installed]
                 cryptsetup: required for encrypted block devices [installed]
                 libmicrohttpd: remote journald capabilities
                 quota-tools: kernel-level quota management
                 systemd-sysvcompat: symlink package to provide sysvinit binaries [installed]
                 polkit: allow administration as unprivileged user [installed]
Required By    : chromium  colord  cups  device-mapper  lib32-systemd  libgusb  libpulse  libusb  lvm2
                 media-player-info  mesa  mkinitcpio  mysql  pcmciautils  pcsclite  polkit  qt5-base  qtwebkit
                 subversion  syslog-ng  systemd-sysvcompat  udisks  udisks2  upower  xf86-input-evdev
                 xf86-video-ati
Optional For   : None
Conflicts With : nss-myhostname  systemd-tools  udev
Replaces       : nss-myhostname  systemd-tools  udev
Installed Size :  25.37 MiB
Packager       : Dave Reisner <dreisner@archlinux.org>
Build Date     : Wed 22 Apr 2015 03:02:01 CEST
Install Date   : Wed 29 Apr 2015 11:11:21 CEST
Install Reason : Explicitly installed
Install Script : Yes
Validated By   : Signature
sudo pacman -Qs systemd
local/lib32-systemd 219-1
    system and service manager (32-bit)
local/libsystemd 219-6
    systemd client libraries
local/systemd 219-6
    system and service manager
local/systemd-sysvcompat 219-6 (base)
    sysvinit compat for systemd

or have not been able to express properly what I want to do?

Which of the 50 members of the base group contains the systemd-stuff?

Offline

#8 2015-05-22 08:25:11

Awebb
Member
Registered: 2010-05-06
Posts: 6,309

Re: [SOLVED] Package in group base containing systemd?

Follow my 1. On the page is a list of packages depending on systemd, as well as in -Qi. Compare this with the base install. Alternatively, try removing systemd. Pacman will tell you what depends on it. Follow the trail.

Offline

#9 2015-05-22 08:40:01

Raynman
Member
Registered: 2011-10-22
Posts: 1,539

Re: [SOLVED] Package in group base containing systemd?

I'm surprised that you haven't even come as far as identify systemd-sysvcompat in the list of base packages...

You want packages depending on systemd (so reverse pactree) compared with base packages:

$ comm -12 <(pactree -lr systemd | sort) <(pacman -Sgq base | sort)
cryptsetup
device-mapper
linux
lvm2
netctl
pcmciautils
systemd-sysvcompat
usbutils

Offline

#10 2015-05-22 15:23:36

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

Re: [SOLVED] Package in group base containing systemd?

No, I'm not trying to find the packages depending on systemd.
I wanted to know which of the 50 members of the Group - base is "pulling" in the systemd.

Or am I to understand from Raynman's answer above that systemd is being pulled in by all and any of these 8?

cryptsetup
device-mapper
linux
lvm2
netctl
pcmciautils
systemd-sysvcompat
usbutils

If that is the case, then it will be easier for me to not work with the base-group but to just pass the list of required packages to the pacman -Sy command in pacstrap.

Offline

#11 2015-05-22 15:31:28

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,604

Re: [SOLVED] Package in group base containing systemd?

Arhat wrote:

No, I'm not trying to find the packages depending on systemd.
I wanted to know which of the 50 members of the Group - base is "pulling" in the systemd.

They're the same thing.

Offline

#12 2015-05-22 17:27:57

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,966

Re: [SOLVED] Package in group base containing systemd?

That pactree command seems to give the wrong output, as linux doesn't need systemd.


pacman -Qi systemd | grep Required

That will show you the packages on your system that NEED systemd and will pull it in when they are installed.

compare the output with that of

pacman -Qg base

packages on both lists are those in base that pull in systemd.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#13 2015-05-22 18:16:05

Awebb
Member
Registered: 2010-05-06
Posts: 6,309

Re: [SOLVED] Package in group base containing systemd?

Why would a package pull in another unless it depends in it?

Offline

#14 2015-05-23 08:03:57

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

Re: [SOLVED] Package in group base containing systemd?

Lone_Wolf wrote:
pacman -Qi systemd | grep Required

That will show you the packages on your system that NEED systemd and will pull it in when they are installed.

compare the output with that of

pacman -Qg base

packages on both lists are those in base that pull in systemd.

Thank you Lone_Wolf, that is usefull stuff to know. I can work with that.


Awebb wrote:

Why would a package pull in another unless it depends in it?

pacman -Qi systemd | grep Required
Required By    : chromium

Because it has systemd listed as a dependancy?
And some of them are totally unexpected, like Chromium.

Offline

#15 2015-05-23 08:17:51

runical
Member
From: The Netherlands
Registered: 2012-03-03
Posts: 896

Re: [SOLVED] Package in group base containing systemd?

Arhat wrote:
Awebb wrote:

Why would a package pull in another unless it depends in it?

pacman -Qi systemd | grep Required
Required By    : chromium

Because it has systemd listed as a dependancy?
And some of them are totally unexpected, like Chromium.

So it depends on systemd, right? The dependency system means that a package lists all needed packages and then when the package is installed, pacman installs all of the listed dependencies (or pulls them in in your words). The two statements are equivalent, although Awebb should have used on instead of in.

Offline

#16 2015-05-23 08:20:12

Raynman
Member
Registered: 2011-10-22
Posts: 1,539

Re: [SOLVED] Package in group base containing systemd?

Arhat wrote:
Awebb wrote:

Why would a package pull in another unless it depends in it?

pacman -Qi systemd | grep Required
Required By    : chromium

Because it has systemd listed as a dependancy?

...

Let me ask another question (for you and Lone_Wolf): "Required By" in `pacman -Qi` output is just a list -- where does the "tree" in "pactree" come from?

Also note that, for this, you can only use -Q (instead of -S) when you're certain you have all the base packages installed.

Offline

#17 2015-05-23 11:47:20

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,966

Re: [SOLVED] Package in group base containing systemd?

Raynman wrote:

Let me ask another question (for you and Lone_Wolf): "Required By" in `pacman -Qi` output is just a list -- where does the "tree" in "pactree" come from?

Both should use metadata in .PKGINFO all packages have.
The main reason i gave 2 separate commands is that

comm -12 <(pactree -lr systemd | sort) <(pacman -Sgq base | sort)

is beyond my level of bash understanding and it clearly doesn't give the desired output as it lists the kernel as needing systemd.

I feel it's better to use commands you understand although they may not be the most efficient way to solve something.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#18 2015-05-23 12:22:19

runical
Member
From: The Netherlands
Registered: 2012-03-03
Posts: 896

Re: [SOLVED] Package in group base containing systemd?

The reason you get linux is because mkinitcpio depends on systemd. mkinitcpio is required by linux. The problem with the command (that I can spot) is that you didn't specify the depth of the tree. This defaults to 3, so you get all kinds of second and third level dependencies. The corrected command should be:

comm -12 <(pactree -lr -d 1 systemd | sort) <(pacman -Sgq base | sort)

Note the -d 1. This sets the depth to 1 and thus only lists direct requirements.

Offline

#19 2015-05-23 12:30:53

Raynman
Member
Registered: 2011-10-22
Posts: 1,539

Re: [SOLVED] Package in group base containing systemd?

Yes, Lone_Wolf was ignoring anything beyond depth 1. Why would you want to do that? If you don't want systemd to get pulled in as a dependency, you need to account for all these packages. Hence I didn't want to limit the depth and as far as I can see there is also no default limit of 3?

Offline

#20 2015-05-23 12:31:50

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,966

Re: [SOLVED] Package in group base containing systemd?

that does make sense, although the piping / sort combo still confuses me.

Arhat, you will want to replace stock mkinitcpio with https://aur.archlinux.org/packages/mkin … nosystemd/ .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#21 2015-05-23 13:04:19

runical
Member
From: The Netherlands
Registered: 2012-03-03
Posts: 896

Re: [SOLVED] Package in group base containing systemd?

Raynman wrote:

Yes, Lone_Wolf was ignoring anything beyond depth 1. Why would you want to do that? If you don't want systemd to get pulled in as a dependency, you need to account for all these packages. Hence I didn't want to limit the depth and as far as I can see there is also no default limit of 3?

Because if you don't use depth 1, you will end up with a gigantic list which is not helpful. Most of the packages do not directly depend on systemd and, as such, give no information which packages to look into to remove the explicit systemd dependency.

You'll have to note one thing though. In Arch there are implicit dependencies on the base group and dependencies that are already pulled in by another dependency don't need to be listed (although I have no clue how many packages actually do this).

Offline

#22 2015-05-23 13:25:46

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

Re: [SOLVED] Package in group base containing systemd?

Lone_Wolf wrote:

...

Arhat, you will want to replace stock mkinitcpio with https://aur.archlinux.org/packages/mkin … nosystemd/ .

Okay, I'll definitely look into that. I had not found that mentioned in the guides I was following to install openrc.  (I was relying mostly on this here: Archlinux and openrc)

Offline

#23 2015-05-23 15:53:33

Raynman
Member
Registered: 2011-10-22
Posts: 1,539

Re: [SOLVED] Package in group base containing systemd?

runical wrote:
Raynman wrote:

Yes, Lone_Wolf was ignoring anything beyond depth 1. Why would you want to do that? If you don't want systemd to get pulled in as a dependency, you need to account for all these packages. Hence I didn't want to limit the depth and as far as I can see there is also no default limit of 3?

Because if you don't use depth 1, you will end up with a gigantic list which is not helpful. Most of the packages do not directly depend on systemd and, as such, give no information which packages to look into to remove the explicit systemd dependency.

Depth 1 gives you five base packages instead of the eight I listed above. You can choose not to install those five (might be doable if you don't need lvm/encryption), but pacman will still pull in systemd as a(n indirect) dependency of the other three and you can't just leave out linux, so you have to take additional steps to see if you can break the dependency on systemd (with mkinitcpio-nosystemd).

It is true that you could narrow it down a little further. I had both cryptsetup and device-mapper in my list and in `pactree cryptsetup` systemd only shows up in the subtree under device-mapper. That doesn't apply to usbutils and linux, so that leaves seven base packages that pull in systemd.

Offline

#24 2015-05-23 15:58:34

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,604

Re: [SOLVED] Package in group base containing systemd?

Arhat wrote:
Awebb wrote:

Why would a package pull in another unless it depends in it?

pacman -Qi systemd | grep Required
Required By    : chromium

Because it has systemd listed as a dependancy?
And some of them are totally unexpected, like Chromium.

But you said:

Arhat wrote:

No, I'm not trying to find the packages depending on systemd.

I don't know if we have a language barrier here or what, but this is getting comprehensible.

Offline

#25 2015-05-24 07:14:51

Arhat
Member
Registered: 2010-07-02
Posts: 49
Website

Re: [SOLVED] Package in group base containing systemd?

Scimmia wrote:

I don't know if we have a language barrier here or what, but this is getting comprehensible.

Comprehensible? Incomprehensible?

Scimmia wrote:

...
But you said:

Arhat wrote:

No, I'm not trying to find the packages depending on systemd.

What I said was:

Scimmia wrote:
Arhat wrote:

No, I'm not trying to find the packages depending on systemd.
I wanted to know which of the 50 members of the Group - base is "pulling" in the systemd.

They're the same thing.

I was not aware that something as vital as an init-system was only being pulled in as a dependency.
Thus as the title says I was looking for the member of the group base installing systemd.

Once I understood that systemd is merely being pulled in a dependency, I obviously then needed to find the packages pulling it in.

If that is incomprehensible, never mind, I had a mistake in my thinking, probably a real newbie error .. but then I did post here in the Newbie Corner. wink

Offline

Board footer

Powered by FluxBB