Skip to content

uutils-coreutils: Update to v0.8.0#1532

Open
hphilm wants to merge 1 commit intomainfrom
update/uutils-coreutils
Open

uutils-coreutils: Update to v0.8.0#1532
hphilm wants to merge 1 commit intomainfrom
update/uutils-coreutils

Conversation

@hphilm
Copy link
Copy Markdown
Contributor

@hphilm hphilm commented Mar 24, 2026

Summary

Test Plan

  • install packages on chroot
  • build inputplumber and check jsonc file for wrongly added folders
  • test for regressions

Checklist

  • Recipe was built and tested against the volatile stream
  • This change could gainfully be highlighted in the Stream Update notes once merged

@hphilm hphilm requested a review from a team as a code owner March 24, 2026 00:23
@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Mar 24, 2026

When uutils/coreutils#10904 lands we might need some boulder changes to not have the folders listed in the jsonc manifests ...

@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Mar 24, 2026

Hmm, seems I found the issue within inputplumber:

diff --git a/i/inputplumber/stone.yaml b/i/inputplumber/stone.yaml
index 30a204bd2..371943a0b 100644
--- a/i/inputplumber/stone.yaml
+++ b/i/inputplumber/stone.yaml
@@ -24,6 +24,8 @@ builddeps   :
     - pkgconfig(libudev)
     - clang-devel
 setup       : |
+    # fix folder permissions due to coreutils 0.7.0+
+    find rootfs -type d -exec chmod 755 {} \;
     %cargo_fetch
 build       : |
     %cargo_build

Seems boulder records somehow the original permissions. Have to double check on the stone again if it copies the original structure after all.

List of the source rootfs:

[drwxrwxr-x philm   ]  ./usr
[drwxrwxr-x philm   ]  ./usr/lib
[drwxrwxr-x philm   ]  ./usr/lib/systemd
[drwxrwxr-x philm   ]  ./usr/lib/systemd/system
[drwxrwxr-x philm   ]  ./usr/lib/udev
[drwxrwxr-x philm   ]  ./usr/lib/udev/hwdb.d
[drwxrwxr-x philm   ]  ./usr/lib/udev/rules.d
[drwxrwxr-x philm   ]  ./usr/share
[drwxrwxr-x philm   ]  ./usr/share/dbus-1
[drwxrwxr-x philm   ]  ./usr/share/dbus-1/system.d
[drwxrwxr-x philm   ]  ./usr/share/dbus-1/system-services
[drwxrwxr-x philm   ]  ./usr/share/inputplumber
[drwxrwxr-x philm   ]  ./usr/share/inputplumber/capability_maps
[drwxrwxr-x philm   ]  ./usr/share/inputplumber/devices
[drwxrwxr-x philm   ]  ./usr/share/inputplumber/profiles
[drwxrwxr-x philm   ]  ./usr/share/inputplumber/schema
[drwxrwxr-x philm   ]  ./usr/share/polkit-1
[drwxrwxr-x philm   ]  ./usr/share/polkit-1/actions
[drwxrwxr-x philm   ]  ./usr/share/polkit-1/rules.d

@hphilm hphilm force-pushed the update/uutils-coreutils branch from 305d88b to bc809e6 Compare March 24, 2026 08:53
@hphilm hphilm marked this pull request as draft March 24, 2026 19:08
@hphilm hphilm force-pushed the update/uutils-coreutils branch from 0abceba to 7d0ab6e Compare April 6, 2026 20:35
@hphilm hphilm changed the title uutils-coreutils: Update to v0.7.0 uutils-coreutils: Update to v0.8.0 Apr 6, 2026
@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Apr 7, 2026

Note from @ermo

 ermo | Rune Morling
03/25/26 19:02

@Philip Could you please add a %break_continue statement at the very end
of the install phase in the inputplumber recipe, and then when you are dropped
into a root shell, check the output of umask?

You can also inspect the permissions in the installroot (${d_installroot}) manually.

@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Apr 7, 2026

@ermo the output is:

root@boulder:~/v0.76.0.tar.gz
# umask
0022

Source folders have permissions as:

root@boulder:~/v0.76.0.tar.gz
# ls -lasih rootfs/usr
total 0
67657413 0 drwxrwxr-x 1 root root 16 Apr  1 01:02 ./
67657412 0 drwxrwxr-x 1 root root  6 Apr  1 01:02 ../
67657414 0 drwxrwxr-x 1 root root 22 Apr  1 01:02 lib/
67657427 0 drwxrwxr-x 1 root root 52 Apr  1 01:02 share/

And the target adopts them as it should:

root@boulder:/mason/install
# ls -lasih usr
total 0
67685784 0 drwxr-xr-x 1 root root 22 Apr  7 07:10 ./
67685783 0 drwxr-xr-x 1 root root  6 Apr  7 07:10 ../
67685785 0 drwxr-xr-x 1 root root 24 Apr  7 07:10 bin/
67685787 0 drwxrwxr-x 1 root root 22 Apr  7 07:10 lib/
67685800 0 drwxrwxr-x 1 root root 52 Apr  7 07:10 share/

So I have to call find rootfs -type d -exec chmod 755 {} \; to update the folder permissions in setup process.

@hphilm hphilm force-pushed the update/uutils-coreutils branch from 7d0ab6e to d3d257f Compare April 7, 2026 18:14
@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Apr 7, 2026

Seems we changed the way we install the files and cp -A is actually running correctly. Originally the rootfs gets installed like this via make install:

.PHONY: install
install: build ## Install inputplumber to the given prefix (default: PREFIX=/usr)
	install -D -m 755 target/$(TARGET_ARCH)/$(BUILD_TYPE)/$(NAME) \
		$(PREFIX)/bin/$(NAME)
	install -D -m 644 rootfs/usr/share/dbus-1/system.d/$(DBUS_NAME).conf \
		$(PREFIX)/share/dbus-1/system.d/$(DBUS_NAME).conf
	install -D -m 644 -t $(PREFIX)/share/polkit-1/actions/ \
		rootfs/usr/share/polkit-1/actions/*
	install -D -m 644 -t $(PREFIX)/share/polkit-1/rules.d/ \
		rootfs/usr/share/polkit-1/rules.d/*
	install -D -m 644 -t $(PREFIX)/lib/systemd/system/ \
		rootfs/usr/lib/systemd/system/*
	install -D -m 644 -t $(PREFIX)/lib/udev/hwdb.d/ \
		rootfs/usr/lib/udev/hwdb.d/*
	install -D -m 644 -t $(PREFIX)/lib/udev/rules.d/ \
		rootfs/usr/lib/udev/rules.d/*
	install -D -m 644 -t $(PREFIX)/share/$(NAME)/devices/ \
		rootfs/usr/share/$(NAME)/devices/*
	install -D -m 644 -t $(PREFIX)/share/$(NAME)/schema/ \
		rootfs/usr/share/$(NAME)/schema/*
	install -D -m 644 -t $(PREFIX)/share/$(NAME)/capability_maps/ \
		rootfs/usr/share/$(NAME)/capability_maps/*
	install -D -m 644 -t $(PREFIX)/share/$(NAME)/profiles/ \
		rootfs/usr/share/$(NAME)/profiles/*
		
	@echo ""
	@echo "Install completed. Enable service with:"
	@echo "  systemctl enable --now $(NAME)"

Since we changed it on our end, we also need to correct the folder permissions for inputplumber on our end ...
Ikey changed it like that: 2d7f432

@hphilm hphilm marked this pull request as ready for review April 7, 2026 18:18
@ermo
Copy link
Copy Markdown
Member

ermo commented Apr 8, 2026

@hphilm If it is not too much trouble for you, I'd ask you to run with this for a few days and try to build various packages while it is installed from your local repo, paying extra special attention to whether packages begin doing dumb things with adding directory ownership again...

@hphilm
Copy link
Copy Markdown
Contributor Author

hphilm commented Apr 8, 2026

@ermo directory ownership adding is only done when commands like cp -A is used and the source folders have "wrong" permissions. For me uutils-coreutils works as it should. In case of inputplumber we changed on how we install the package without the make file cmds. So in that case we have to correct permissions on our end, which is handled in the given recipe already.

Any other packages you might had found odd so far? I already built several packages on my end with 0.8.0 just fine ...

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.

2 participants