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

Adding nvchecker conf, listing most (or all) optional package dependencies and fixed license identifier #2406

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

Torxed
Copy link
Member

@Torxed Torxed commented Mar 11, 2024

This PR mainly aims to conform with Arch's best practices surrounding PKGBUILD's.

@Torxed Torxed requested a review from grazzolini as a code owner March 11, 2024 09:26
@Torxed Torxed requested a review from dvzrv March 11, 2024 10:00
Copy link
Member

@dvzrv dvzrv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally I am wondering why these files live in here at all and why this has not been a merge request towards the package repository instead:
https://gitlab.archlinux.org/archlinux/packaging/packages/archinstall/-/merge_requests

@@ -34,7 +36,135 @@ makedepends=(
'python-wheel'
)
optdepends=(
'linux: Used when linux kernel is selected'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The newly added optdepends are not really needed for running archinstall though.
They will be installed on-the-fly into a newly setup system (which is not the same system as the one running archinstall).
Therefore they should not be added. Only optional dependencies required for additional features of archinstall should be added here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For anyone reading -> Ongoing discussion internally about how to solve the core need of why I've attempted to add them here.

'util-linux'
'base'
'base-devel'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is base-devel added?
If archinstall now depends on particular build tools to do its job, those need to be listed here instead.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree.

@@ -24,7 +23,10 @@ depends=(
'python-pyparted'
'python-simple-term-menu'
'systemd'
'mkinitcpio'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does archinstall use mkinitcpio on the system running archinstall or in the new system?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It also triggers mkinitcpio inside the system, to make sure modifications to HOOKS etc are updated before rebooting.

python -m installer --destdir="$pkgdir" dist/*.whl
install -vDm 644 docs/_build/man/archinstall.1 -t "$pkgdir/usr/share/man/man1/"
}

check() {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If check() does nothing, it should not be here.
Once it calls something, it should be ordered before package() as that is when it is called.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To not forget that we want tests, is it fine if I comment it out instead of removing it?

@@ -57,21 +187,22 @@ pkgver() {

prepare() {
cd $pkgname-$pkgver

# use real directories for examples and profiles, as symlinks do not work
rm -fv $pkgname/{examples,profiles}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have those symbolic links been removed/changed?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yepp, they've moved and been re-worked. Official PKGBUILD (refered to above) does not have it and works.

[nvchecker]
source = "git"
git = "https://github.com/archlinux/archinstall"
prefix = "v"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems your editor does not like newlines at the end of the file.
Might be worth changing, since PKGBUILDs usually use that by default as well and it will turn into a non-needed change every time otherwise.

pkgrel=1
pkgdesc="Just another guided/automated Arch Linux installer with a twist"
arch=(any)
url="https://github.com/archlinux/archinstall"
license=(GPL3)
license=(GPL-3.0-or-later)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the project information it is GPL-3.0-only though?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, let me double check. if that's the case I'll change.

depends=(
'arch-install-scripts'
'btrfs-progs'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does archinstall no longer support btrfs or is support for the filesystem achieved in another way?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

humm, crap you're right. It needs it in the ISO to also be able to do mkfs.btrfs. Good catch! I was thinking it just needed it to be installed inside the system.

@Torxed
Copy link
Member Author

Torxed commented Mar 11, 2024

Generally I am wondering why these files live in here at all and why this has not been a merge request towards the package repository instead:

It's because:

git clone https://github.com/archlinux/archinstall.git
cd archinstall
makepkg -s

To get the latest code for testing, we have archinstall-git option too but this was added way back before that existed as an option.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants