Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move from a base group to a base meta package #1976

Closed
lazka opened this issue May 25, 2020 · 2 comments
Closed

Move from a base group to a base meta package #1976

lazka opened this issue May 25, 2020 · 2 comments

Comments

@lazka
Copy link
Member

lazka commented May 25, 2020

See https://lists.archlinux.org/pipermail/arch-dev-public/2019-January/029435.html and https://wiki.archlinux.org/index.php/Meta_package_and_package_group

By having a package we can easily add/remove packages from the base system.
For example we could split pacman and pacman-contrib (which atm get built together, but contrib builds against the previously installed one) without users losing pacman-contrib.

Open questions:

  • What will win in case of pacman -S base if we have both a group and a package named "base"?
@elieux
Copy link
Member

elieux commented May 25, 2020

What will win in case of pacman -S base if we have both a group and a package named "base"?

I just checked with a dummy package and a dummy repo:

$ cat > PKGBUILD
pkgname=("base")
pkgver=1
pkgrel=1
pkgdesc="All your base are belong to us"
url="https://msys2.org/"
arch=('any')
license=('custom')
source=()
sha512sums=()

package() {
    touch "${pkgdir}/BASE"
}
^D

$ makepkg
[...]

$ repo-add test.db.tar.xz base-1-1-any.pkg.tar.xz
[...]

# echo "[test]" >> /etc/pacman.conf
# echo "Server = file://$(pwd)" >> /etc/pacman.conf
# pacman -Sy
[...]

# pacman -S base
resolving dependencies...
looking for conflicting packages...

Package (1)  New Version  Net Change  Download Size

test/base    1-1            0.00 MiB       0.01 MiB

Total Download Size:  0.01 MiB

:: Proceed with installation? [Y/n] n

$ pacman -Si base
Repository      : test
Name            : base
Version         : 1-1
Description     : All your base are belong to us
Architecture    : any
URL             : https://msys2.org/
Licenses        : custom
Groups          : None
Provides        : None
Depends On      : None
Optional Deps   : None
Conflicts With  : None
Replaces        : None
Download Size   : 7.67 KiB
Installed Size  : 0.00 KiB
Packager        : David Macek <david.macek.0@gmail.com>
Build Date      : Mon May 25 22:47:41 2020
Validated By    : MD5 Sum  SHA-256 Sum  Signature

$ pacman -Sg base
base bash
base bash-completion
base bsdcpio
base bsdtar
base bzip2
base coreutils
base curl
base dash
base dtc
base file
base filesystem
base findutils
base flex
base gawk
base gcc-libs
base getent
base getopt
base grep
base gzip
base inetutils
base info
base less
base libargp
base lndir
base mintty
base msys2-keyring
base msys2-launcher-git
base msys2-runtime
base ncurses
base pacman
base pacman-mirrors
base pactoys-git
base pax-git
base pkgfile
base rebase
base sed
base tftp-hpa
base time
base ttyrec
base tzcode
base u-boot-tools
base util-linux
base which
base bash
base curl
base gawk
base git-for-windows-keyring
base mintty
base msys2-runtime

lazka added a commit to lazka/MSYS2-packages that referenced this issue May 27, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
@lazka
Copy link
Member Author

lazka commented May 27, 2020

Thanks for testing. I've created #1979

lazka added a commit to lazka/MSYS2-packages that referenced this issue May 28, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
lazka added a commit to lazka/MSYS2-packages that referenced this issue May 28, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
lazka added a commit to lazka/MSYS2-packages that referenced this issue May 28, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
lazka added a commit to lazka/MSYS2-packages that referenced this issue May 28, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
lazka added a commit to lazka/MSYS2-packages that referenced this issue May 28, 2020
This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See msys2#1976
Alexpux pushed a commit that referenced this issue May 29, 2020
* Add a base package

This is meant as a replacement for the base group and contains the
same packages. If a user has the base package installed (the installer
will do this in the future) then we can add new packages to the base
and users with existing installations will get those packages installed
automatically.

This follows what Arch did last year:
https://www.archlinux.org/news/base-group-replaced-by-mandatory-base-package-manual-intervention-required/

See #1976

* base: explicitly depend on zstd and wget

They get already pulled in through pactoys, but this makes it explicit
@lazka lazka closed this as completed May 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants