You are not logged in.

#1 2012-12-28 14:28:22

Carlwill
Member
From: Orlando, FL
Registered: 2008-10-06
Posts: 560
Website

Package Installation Help During Install

I'm performing a Arch Linux install for the first time in a year since the installer GUI has been removed. When I get to the section of the installation that lets me install 'base' & 'base-devel', I'm confused how I can omit some packages I see labeled in the list:

Install the base system

The base system is installed using the pacstrap script.

The -i switch can be omitted if you wish to install every package from the base and base-devel groups without prompting.

# pacstrap -i /mnt base base-devel

When I get to this section, the default action is to install everything in 'base' however I would like to omit useless packages like 'sed', 'awk', 'dhcpd', etc etc etc...

How does one do so in the installer? Do I just need to enter in all the associated numbers with their packages as

1 2 3 6 7 8 10 12 16 22 44?


./

Offline

#2 2012-12-28 15:10:47

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: Package Installation Help During Install

Carlwill wrote:

I would like to omit useless packages like 'sed', 'awk', 'dhcpd', etc etc etc...

You have a strange definition of "useless". For example, not installing basic command line utilities like sed and awk will render you with a non-working makepkg. Awk is a hard dependency of mkinitcpio.

As a general answer to your question, pacman accepts a range syntax as documented in the manpage under the -S, --sync option.

Offline

#3 2012-12-28 18:58:50

alexanderthegre
Member
Registered: 2012-07-29
Posts: 66

Re: Package Installation Help During Install

You technically speaking don't need to install everything in the base group; I'm not sure exactly which packages are needed for your system to boot/work, though. You can explicitly type the package names into the command, like pacstrap /mnt vim .

Offline

#4 2012-12-28 20:24:55

dif
Member
From: Stalowa Wola, Poland
Registered: 2009-12-22
Posts: 137

Re: Package Installation Help During Install

I've just made a quick installation on my virtual box. I used the "-i" (interactive) flag, then I chose most of the base packages, skipping a few. I skipped nano for example. No more questions were asked and the chosen packages installed as expected. Nano did not install. To sum it up, the answer to your last question is yes.

And do not worry about the reply by Mr I-konw-it-all-but-I-won't-tell-you. This was his typical reply. One thing uncharacteristi was that he did not advise you to google.

Offline

#5 2012-12-28 21:12:06

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: Package Installation Help During Install

dif wrote:

And do not worry about the reply by Mr I-konw-it-all-but-I-won't-tell-you. This was his typical reply. One thing uncharacteristi was that he did not advise you to google.

That's rather rude. alexanderthegre doesn't have much of a post count on these forums. Do you know him from somewhere else?

Offline

#6 2012-12-28 23:17:34

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,131

Re: Package Installation Help During Install

falconindy wrote:

That's rather rude. alexanderthegre doesn't have much of a post count on these forums. Do you know him from somewhere else?

Moreover, I can't find much evidence of his or her advising people to google on these forums.

Maybe it is a case of mistaken identity?

Last edited by cfr (2012-12-28 23:18:48)


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#7 2012-12-30 02:04:49

dif
Member
From: Stalowa Wola, Poland
Registered: 2009-12-22
Posts: 137

Re: Package Installation Help During Install

cfr wrote:

Maybe it is a case of mistaken identity?

It is, indeed.

Offline

#8 2012-12-30 02:48:30

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,131

Re: Package Installation Help During Install

dif wrote:
cfr wrote:

Maybe it is a case of mistaken identity?

It is, indeed.

Should you not apologise in that case?!

Note that what I now suspect *you* meant is not at all what *I* meant and I now deeply regret that comment. It had not occurred to me that it was ambiguous in that way.  I meant only that you might have mistaken alexanderthegre for another user.


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#9 2012-12-30 03:00:17

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: Package Installation Help During Install

falconindy wrote:
Carlwill wrote:

I would like to omit useless packages like 'sed', 'awk', 'dhcpd', etc etc etc...

You have a strange definition of "useless". For example, not installing basic command line utilities like sed and awk will render you with a non-working makepkg. Awk is a hard dependency of mkinitcpio.

While I too was surprised that anyone would want to keep sed off the their system. the argument you give simply shows that core packages are missing critical metadata, if it's true. I have always found it absurd that the most critical components of the system disregard true dependency handling because "it's just too much work to type that out in a PKGBUILD once" and "we can just assume that everyone has these packages installed".

If the price of logical coherency and robustness is a few extra bytes then I see no reason not to pay it.


Put another way, given an empty root directory and pacstrap or equivalent, installing any package should pull in all of the dependencies required to use that package. If anything is missed then dependency handling is broken.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#10 2012-12-30 03:12:27

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,449
Website

Re: Package Installation Help During Install

Xyne wrote:

core packages are missing critical metadata, if it's true. I have always found it absurd that the most critical components of the system disregard true dependency handling ...

Er:

pacman -Qi mkinitcpio 
Name           : mkinitcpio
Version        : 0.12.0-2
URL            : http://www.archlinux.org/
Licenses       : GPL
Groups         : None
Provides       : None
Depends On     : awk  mkinitcpio-busybox>=1.19.4-2  kmod  util-linux>=2.21  libarchive
                 coreutils  bash  findutils  grep  filesystem>=2011.10-1  file  gzip
                 systemd-tools
...

EDIT: more:

pacman -R sed
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: ca-certificates: requires sed
:: fakeroot: requires sed
:: grub: requires sed

Dependency handling seems to work as advertised.

Last edited by Trilby (2012-12-30 03:17:04)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#11 2012-12-30 03:25:12

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: Package Installation Help During Install

@Trilby
I don't see how that refutes or even addresses the point. Falconindy's implication is that some packages are required by others without being explicitly listed as dependencies. My point is that installing a package should pull in all of its real dependencies.

falconindy wrote:

not installing basic command line utilities like sed and awk will render you with a non-working makepkg.

makepkg is part of pacman, so let's see...

 pacman -Si pacman
...
Depends On     : bash  glibc>=2.15  libarchive>=3.0.2  curl>=7.19.4  gpgme  pacman-mirrorlist  archlinux-keyring

Is sed listed? nope
gawk? nope
file? nope
etc.

Play around with minimal chroots and you'll soon find that core packages rely on implicit dependencies.


edit:
Before someone argues that those dependencies are necessarily pulled in by other packages that pacman depends on, I know for sure that at least "file" isn't, and it still doesn't change the fact that the dependencies are implicit and not robustly handled.

And yes, I admit that it "just works" most of the time, but broken is broken even if it is an edge case.

Last edited by Xyne (2012-12-30 03:33:12)


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#12 2012-12-30 13:33:46

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,449
Website

Re: Package Installation Help During Install

Linux depends on mkinitcpio which depends on file.  So the only gap is that the pacman package assumes that you have linux installed.  Would you really want recursive dependency listings?  Do I have to put glibc as a dependency in every PKGBUILD?  Or is it sufficient that I have something like ncurses which in turn would pull in glibc if it weren't already installed?


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#13 2012-12-31 03:19:03

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: Package Installation Help During Install

Trilby wrote:

Linux depends on mkinitcpio which depends on file.  So the only gap is that the pacman package assumes that you have linux installed.  Would you really want recursive dependency listings?  Do I have to put glibc as a dependency in every PKGBUILD?  Or is it sufficient that I have something like ncurses which in turn would pull in glibc if it weren't already installed?

I never said anything about listing recursive dependencies. That would be pointless. I think direct dependencies should be listed. If you package a script that uses x, y and z, then list x, y and z in the dependencies instead of assuming they'll be installed. The only debatable exception would be when you know for sure that one of the explicitly listed dependencies also depends on those and that it will never change.

The reluctance to list direct dependencies is just laziness that leads to incomplete dependency handling. The only other argument against it is that it would require some overhead to run the checks, but I expect that is negligible.

Dependency handling means that when you install something, the package manage installs everything that it depends on. Waving your hands and claiming that it would be too much to type or that everyone should have x installed does not fix it.

Is this a major issue? No, clearly not. Pacman gets the job done in most cases. It's just a pile of dust swept under the rug.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

Board footer

Powered by FluxBB