yay icon indicating copy to clipboard operation
yay copied to clipboard

Edits to PKGBUILD depends ignored by yay

Open lunar-starlight opened this issue 2 years ago • 3 comments

Affected Version

yay v12.1.3.r4.gd368f99 - libalpm v13.0.2

Describe the bug

When editing the PGKBUILD the edits to depends are ignored.

Reproduction Steps

  1. sudo pacman -S jdk-openjdk
  2. yay -S tachidesk-jui --editmenu
  3. Edit the depends section to require jdk-openjdk insead of jre-openjdk

Expected behavior

The package should not depend on jre-openjdk anymore, so yay shouldn't try to install it.

Output

Config:

{
	"aururl": "https://aur.archlinux.org",
	"aurrpcurl": "https://aur.archlinux.org/rpc?",
	"buildDir": "/home/muf/.cache/yay",
	"editor": "",
	"editorflags": "",
	"makepkgbin": "makepkg",
	"makepkgconf": "",
	"pacmanbin": "pacman",
	"pacmanconf": "/etc/pacman.conf",
	"redownload": "no",
	"answerclean": "",
	"answerdiff": "",
	"answeredit": "",
	"answerupgrade": "",
	"gitbin": "git",
	"gpgbin": "gpg",
	"gpgflags": "",
	"mflags": "",
	"sortby": "votes",
	"searchby": "name-desc",
	"gitflags": "",
	"removemake": "ask",
	"sudobin": "sudo",
	"sudoflags": "",
	"version": "11.3.1",
	"requestsplitn": 150,
	"completionrefreshtime": 7,
	"maxconcurrentdownloads": 0,
	"bottomup": true,
	"sudoloop": false,
	"timeupdate": false,
	"devel": true,
	"cleanAfter": false,
	"keepSrc": false,
	"provides": false,
	"pgpfetch": true,
	"cleanmenu": true,
	"diffmenu": true,
	"editmenu": true,
	"combinedupgrade": false,
	"useask": false,
	"batchinstall": false,
	"singlelineresults": false,
	"separatesources": true,
	"debug": true,
	"rpc": true,
	"doubleconfirm": true,
	"rebuild": "no"
}

Output of yay -S tachidesk-jui --editmenu:

[DEBUG:runtime] packages to query [tachidesk-jui]
[DEBUG:runtime] rpc request https://aur.archlinux.org/rpc?arg%5B%5D=tachidesk-jui&type=info&v=5
[DEBUG:grapher] tachidesk-jui provides: tachidesk-jui
AUR Explicit (1): tachidesk-jui-1.3.2-1
Sync Dependency (1): jre-openjdk-21.u35-7
:: PKGBUILD up to date, skipping download: tachidesk-jui
[DEBUG:runner] capturing /sbin/git -C /home/muf/.cache/yay/tachidesk-jui reset --hard HEAD
[DEBUG:runner] capturing /sbin/git -C /home/muf/.cache/yay/tachidesk-jui merge --no-edit --ff
[DEBUG:db] populating db executor package caches. sync_len 2090 remote_len 80
  1 tachidesk-jui                    (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
  1 tachidesk-jui                    (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
  1 tachidesk-jui                    (Build Files Exist)
==> PKGBUILDs to edit?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> A

:: Proceed with install? [Y/n]
[DEBUG:runner] running /sbin/makepkg --verifysource --skippgpcheck -f -Cc
==> Making package: tachidesk-jui 1.3.2-1 (Tue 07 Nov 2023 10:41:28 AM CET)
==> Retrieving sources...
  -> Found Tachidesk-JUI-linux-x64-1.3.2.jar
  -> Found tachidesk-jui.desktop
  -> Found tachidesk-jui.png
  -> Found tachidesk-jui.sh
==> WARNING: Skipping verification of source file PGP signatures.
==> Validating source files with sha256sums...
    Tachidesk-JUI-linux-x64-1.3.2.jar ... Passed
    tachidesk-jui.desktop ... Passed
    tachidesk-jui.png ... Passed
    tachidesk-jui.sh ... Passed
:: (1/1) Parsing SRCINFO: tachidesk-jui
[DEBUG:installer] manualConfirmRequired: true
[DEBUG:installer] origTargets: Set{tachidesk-jui}
[DEBUG:installer] syncDeps Set{extra/jre-openjdk} SyncExp Set{} aurDeps Set{} aurExp Set{} upgrade false
[DEBUG:runner] running /sbin/sudo pacman -S --config /etc/pacman.conf -- extra/jre-openjdk
resolving dependencies...
looking for conflicting packages...
:: jre-openjdk and jdk-openjdk are in conflict. Remove jdk-openjdk? [y/N]

lunar-starlight avatar Nov 07 '23 09:11 lunar-starlight

@Jguer this can be fixed by creating a new flag to allow users to edit dependencies before parsing dependencies, in addition to after (in case dependencies themselves have PKGBUILDS to edit.

Raymo111 avatar Jul 27 '24 03:07 Raymo111

This affect the Howdy package as well (https://aur.archlinux.org/packages/howdy) which has settings in the PKGBUILD to determine features. YAY will ignore the CUDA disable flag and force installation of CUDA.

amwalters avatar Mar 17 '25 19:03 amwalters

This should be fixable in the current architecture by refreshing the dependency graph after an edit

Jguer avatar Mar 20 '25 14:03 Jguer