You are not logged in.
Hi, I have updated the gnome-disk-utility-git pkgbuild on AUR however I have this issue when building with devtools, don't seem to like the lack of /root/.gitconfig
==> Starting package()...
ninja: Entering directory `/build/gnome-disk-utility-git/src/build'
[0/3] Generating src/disk-image-mounter/cargo-build with a custom command (wrapped by meson to set env)
Updating git repository `https://github.com/FineFindus/udisks-rs.git`
error: failed to get `udisks2` as a dependency of package `gnome-disk-image-mounter v0.1.0 (/build/gnome-disk-utility-git/src/gnome-disk-utility/src/disk-image-mounter)`
Caused by:
failed to load source for dependency `udisks2`
Caused by:
Unable to update https://github.com/FineFindus/udisks-rs.git?rev=001e0c02830a4a229adb99207250b275c79261a2#001e0c02
Caused by:
failed to stat '/root/.gitconfig'; class=Config (7)
FAILED: src/disk-image-mounter/src
env CARGO_HOME=/build/gnome-disk-utility-git/src/build/cargo-home /usr/bin/cargo build --manifest-path /build/gnome-disk-utility-git/src/gnome-disk-utility/Cargo.toml --target-dir /build/gnome-disk-utility-git/src/build/src --bin gnome-disk-image-mounter --release
ninja: build stopped: subcommand failed.
Could not rebuild /build/gnome-disk-utility-git/src/build
==> ERROR: A failure occurred in package().
Offline
https://github.com/rust-lang/cargo/issues/9854 which is caused by something not having been built during build?
Offline
udisks-rs seems to build fine, it is also peculiar that is failing in package() as build() is fine
[0/141] Generating src/disk-image-mounter/cargo-build with a custom command (wrapped by meson to set env)
Updating crates.io index
Updating git repository `https://github.com/FineFindus/udisks-rs.git`
Downloaded async-recursion v1.1.1
[...]
Compiling graphene-rs v0.19.8
Compiling udisks2 v0.1.0 (https://github.com/FineFindus/udisks-rs.git?rev=001e0c02830a4a229adb99207250b275c79261a2#001e0c02)
Compiling pango v0.19.8
Offline
You can work around the issue by installing in build() to a temporary location then copying across and fixing up permissions in package(). I have not been able to find any environment variables that stop libgit2 from looking in '/root/.gitconfig'.
Edit:
Alternative solution wrap cargo to set HOME=/dev/null avoiding the issue caused by HOME=/root:
diff --git a/PKGBUILD b/PKGBUILD
index 3252bba..8f69f51 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -44,8 +44,9 @@ makedepends=(
)
provides=(gnome-disk-utility)
conflicts=(gnome-disk-utility)
-source=("git+https://gitlab.gnome.org/GNOME/gnome-disk-utility.git")
-sha256sums=('SKIP')
+source=("git+https://gitlab.gnome.org/GNOME/gnome-disk-utility.git" cargo)
+sha256sums=('SKIP'
+ 'be870459e744024234d52d191f3973e1de0d371c3371e066ae1818997ffa2ca4')
pkgver() {
cd gnome-disk-utility
@@ -53,6 +54,9 @@ pkgver() {
}
build() {
+ chmod +x cargo
+ PATH="$PWD:$PATH"
+
arch-meson gnome-disk-utility build
meson compile -C build
}
diff --git a/cargo b/cargo
new file mode 100755
index 0000000..b224753
--- /dev/null
+++ b/cargo
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/env HOME=/dev/null /usr/bin/cargo "$@"
Last edited by loqs (2025-03-03 16:06:50)
Offline