[Unstable Update] April 2024 Edition

Yes - I know - I should probably have the team channel running at all times - so I may not be up-to-date with the recent decisions

But why? I thought the patch was in place to ensure that keyring updates was applied first thus avoiding invalid signature messages?

pacman 6.1.0-6 removes the sync-first patch

to avoid pacman complaining on an unknown option edit pacman.conf and comment or remove the lines

# If upgrades are available for these packages they will be asked for first
SyncFirst    = manjaro-system archlinux-keyring manjaro-keyring
1 Like

:point_down:

this is probably in the pipeline, but thought of posting anyway.

3 posts were split to a new topic: Install development ISO with Unstable

After the latest set of unstable updates, after reboot, I got corrupted/empty pacman.conf and pamac.conf and had to restore from their .pacnew files.

[2024-04-22T21:21:15+0300] [ALPM] warning: /etc/pacman.conf installed as /etc/pacman.conf.pacnew

6 posts were split to a new topic: Warning: config file /etc/pacman.conf ‘SyncFirst’ in section ‘options’ not recognised

:information_source: I’ll be starting Python 3.12 rebuilds shortly. I do not recommend updating for few hours.

EDIT: :white_check_mark: Everything should be (mostly) done. Let us know if we missed something.

4 Likes

9 posts were split to a new topic: Are rebuilt python packages being synced/replaced on the go?

:point_up:

2 Likes

I havent done much.
But seems to have gone off fine.
Reboot, login, and browser all work well. :slight_smile:

1 Like

:sos: My previous personal experience:
About a year ago I broke my OS by making it un-bootable by installing partial python packages updates (all that server provides at that time). I did not read the unstable thread first. It took me pure several hours to fix it but during some long period of time.

:exclamation: The problem:
a) Frequent (1-2 times a day) updates (as unstable branch usually provides) are not highly compatible with constant daily reading of the unstable thread prior each update to make.
Having updates 1-2 times a day it is unreal to check unstable thread first each time prior an update just in order to read predictable/awaited breaks of the OS, which could be prevented by improving maintenance of the unstable update method.
b) Moreover, updates by portions could lead to problems a days after it fixed by package maintainers: there are may be a servers which got only half of packages rebuilds and then they could break self-sync for a 1-2 of more days and nevertheless a user see a maintainer’s post that it is alright to update now, user still don’t know are their server(s) are synced fully with all portions of python packages or not.

All two items are problems.

:white_check_mark: Possible solution:
Instead of pushing python-rebuild packages partially into end-user branch (unstable) may be better to create a temp internal branch (for example pre-unstable or any other) and to push any package portion count, any number of days it takes to prepare major part of python packages need to be rebuilt, and only then it is ready - to merge/push bunch of all major packages of that temp branch into the end-user unstable branch.

That solution covers problems (a) and (b). But may be there are more suitable/comfortable solutions for maintainers.


I can’t see an option to start a poll to realize am I alone who lacks the single time push of all major python packages rebuilt into unstable branch or not.
I suggest to
{vote for some intermediate stuff and only if it is ready to push that package bunch into unstable}
or
{vote against some intermediate stuff}
by using thumb up/thumb down marks on this message.

Thank you for taking part in the discussion of that my (as end-user of unstable branch) problem!

All Arch rebuilds were already done and moved from Arch Testing to Arch Stable today mostly all at once. I then synced all of them (almost 3,000 packages) to Manjaro Unstable.

The Manjaro package rebuilds are pushed to the main server as they are built. Some are pushed sooner than others for other packages that require them to build, etc. Then it’s up to the mirrors to sync. It’s up to the user to make sure they are using up to date mirrors.

Preliminary testing no issues here. :slightly_smiling_face:

Updates
[2024-04-27T17:11:23-0500] [ALPM] upgraded gcc-libs (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:23-0500] [ALPM] upgraded libcap-ng (0.8.5-1 -> 0.8.5-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded util-linux-libs (2.40-2 -> 2.40-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded audit (4.0.1-2 -> 4.0.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libseccomp (2.5.5-2 -> 2.5.5-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded util-linux (2.40-2 -> 2.40-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded brotli (1.1.0-1 -> 1.1.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded android-udev (20231124-1 -> 20240221-1)
[2024-04-27T17:11:24-0500] [ALPM] installed mpdecimal (4.0.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python (3.11.8-1 -> 3.12.3-1)
[2024-04-27T17:11:24-0500] [ALPM] upgraded apparmor (3.1.7-1 -> 3.1.7-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded glib2 (2.80.0-2 -> 2.80.0-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded avahi (1:0.8+r194+g3f79789-1 -> 1:0.8+r194+g3f79789-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded blas (3.12.0-3 -> 3.12.0-5)
[2024-04-27T17:11:24-0500] [ALPM] upgraded boost-libs (1.83.0-5 -> 1.83.0-6)
[2024-04-27T17:11:24-0500] [ALPM] upgraded btrfs-progs (6.8-2 -> 6.8-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded dbus-python (1.3.2-2 -> 1.3.2-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded xcb-proto (1.17.0-1 -> 1.17.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-cairo (1.26.0-1 -> 1.26.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libgirepository (1.80.1-1 -> 1.80.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded gobject-introspection-runtime (1.80.1-1 -> 1.80.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-gobject (3.48.1-2 -> 3.48.2-1)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-ptyprocess (0.7.0-5 -> 0.7.0-6)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-pexpect (4.9.0-1 -> 4.9.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libxml2 (2.12.6-1 -> 2.12.6-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded llvm-libs (17.0.6-2 -> 17.0.6-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded catfish (4.18.0-1 -> 4.18.0-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gcc (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:25-0500] [ALPM] upgraded clang (17.0.6-1 -> 17.0.6-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded cpupower (6.7-2 -> 6.7-3)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gpgme (1.23.2-1 -> 1.23.2-4)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gstreamer (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-base-libs (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded libplacebo (6.338.2-4 -> 6.338.2-6)
[2024-04-27T17:11:25-0500] [ALPM] upgraded vapoursynth (R66-1 -> R66-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded imath (3.1.11-1 -> 3.1.11-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-libav (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-bad-libs (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded lilv (0.24.24-1 -> 0.24.24-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded zbar (0.23.90-3 -> 0.23.93-1)
[2024-04-27T17:11:25-0500] [ALPM] upgraded libxslt (1.1.39-1 -> 1.1.39-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-bad (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-base (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libcaca (0.99.beta20-2 -> 0.99.beta20-4)
[2024-04-27T17:11:26-0500] [ALPM] upgraded gst-plugins-good (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded gst-plugins-ugly (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded tdb (1.4.10-2 -> 1.4.10-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded hexchat (2.16.2-1 -> 2.16.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lapack (3.12.0-3 -> 3.12.0-5)
[2024-04-27T17:11:26-0500] [ALPM] upgraded talloc (2.4.2-1 -> 2.4.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded tevent (1:0.16.1-2 -> 1:0.16.1-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded ldb (2:2.9.0-2 -> 2:2.9.0-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lensfun (1:0.3.4-3 -> 1:0.3.4-4)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lib32-gcc-libs (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded volume_key (0.3.12-8 -> 0.3.12-9)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-crypto (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libbytesize (2.8-2 -> 2.8-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-fs (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-loop (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-mdraid (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libnvme (1.8-1 -> 1.8-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-nvme (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-part (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-swap (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libftdi (1.5-5 -> 1.5-6)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libgexiv2 (0.14.2-1 -> 0.14.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libgusb (0.4.8-1 -> 0.4.8-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libplist (2.4.0-1 -> 2.4.0-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libimobiledevice (1.3.0-11 -> 1.3.0-13)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libixion (0.19.0-1 -> 0.19.0-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libnewt (0.52.24-1 -> 0.52.24-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded liborcus (0.19.2-1 -> 0.19.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libpwquality (1.4.5-3 -> 1.4.5-5)
[2024-04-27T17:11:27-0500] [ALPM] upgraded libreoffice-still (7.6.6-2 -> 7.6.6-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded libwbclient (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded lightdm-gtk-greeter-settings (1.2.3-1 -> 1.2.3-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded lirc (1:0.10.2-3 -> 1:0.10.2-4)
[2024-04-27T17:11:27-0500] [ALPM] upgraded llvm (17.0.6-2 -> 17.0.6-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-charset-normalizer (3.3.2-1 -> 3.3.2-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-idna (3.6-1 -> 3.6-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-urllib3 (1.26.18-1 -> 1.26.18-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-requests (2.31.0-1 -> 2.31.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-npyscreen (4.10.5-8 -> 4.10.5-9)
[2024-04-27T17:11:28-0500] [ALPM] upgraded pacman-mirrors (4.24.1-1 -> 4.24.1-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded manjaro-application-utility (1.3.3-10 -> 1.3.3-11)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-psutil (5.9.8-1 -> 5.9.8-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pyxdg (0.28-2 -> 0.28-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded menulibre (2.4.0-1 -> 2.4.0-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded mugshot (0.4.3-5 -> 0.4.3-6)
[2024-04-27T17:11:28-0500] [ALPM] upgraded nftables (1:1.0.9-1 -> 1:1.0.9-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded protobuf (25.3-3 -> 25.3-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded qt6-base (6.7.0-2 -> 6.7.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded shiboken6 (6.7.0-3 -> 6.7.0-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded pyside6 (6.7.0-3 -> 6.7.0-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-docopt (0.6.2-12 -> 0.6.2-13)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-keyutils (0.6-9 -> 0.6-10)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pycups (2.0.4-1 -> 2.0.4-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pycurl (7.45.2-3 -> 7.45.2-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-systemd (235-2 -> 235-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-yaml (6.0.1-2 -> 6.0.1-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded redshift (1.12-8 -> 1.12-11)
[2024-04-27T17:11:28-0500] [ALPM] upgraded smbclient (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded samba (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded system-config-printer (1.5.18-2 -> 1.5.18-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded thunarx-python (0.5.2-4 -> 0.5.2-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded udiskie (2.5.2-1 -> 2.5.2-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded ufw (0.36.2-3 -> 0.36.2-4)

Moderator edit: In the future, please use proper formatting: [HowTo] Post command output and file content as formatted text

Check again - we just got kernels :wink:

@alven please use testing branch, as that is aimed for end-users who want to have newer packages. unstable is our staging area and known to be broken. Don’t use unstable on productive machines as it may break by rebuild tasks like python. Only use unstable when you want to support testing the packages and report back missing rebuilds of packages.

sudo pacman -S manjaro-check-repos

Sync unstable after Arch updates to Python 3.12, then see what needs to be rebuilt:

sudo mbn update --files --unstable
mbn files “usr/lib/python3.11” --unstable | grep ‘::’

4 Likes

Manjaro is doing it again for our loved unstable branch :crying_cat_face:

Medmedin, by answering on my suggestion to create an pre-unstable branch for internal usage before to share packages to end users, Philm said that staging role is already taken by unstable branch.
So: unstable is internal staging branch dedicated to experiments by the Manjaro Team, including partial updates.

As noted in the problem description, the partial updates state could reach the unstable not only by pushing each package after it was rebuild is ready (described part (a)), but after sudden pause of self sync of any server sharing branch updates, which could stop/hang in that partial update state for several hours and days (described part (b)).

Based on that, I can conclude, that unstable is internal staging branch of Manjaro Team, which just is shared to any user that want to use that branch dedicated to internal Manjaro Team use and easily could reach and - cause update server does not updates immediately and could hung up - to save the broken state for some period of time.
Moreover, properly/safer usage of the unstable branch is to read the forum’s unstable thread each time prior to update.

Medmedin, as you did, I also previously thought that there 3 waves (branches) of package updates dedicated for end users:
unstable,
testing,
stable.

But after Mark’s and Philip’s posts I concluded that there are only 2 dedicated for end users:
testing,
stable.
And unstable is used as internal staging branch of Manjaro Team, which is free to join by any user, just shared widely but architecturally designed to be dedicated for internal usage of Manjaro Team as staging branch with partial packages updates (as each single package got rebuild and is ready - it immediately pushes into unstable). So server self-sync easily could act inside of that rebuild period and share to end users the partial update state.

But if we talk about prevention of getting partial packages update state (at least after python updates), we should use the testing or stable as having packages update states as settled down / staged / always fully ready to update (all queued packages to rebuild are done and always ready to update) - to have almost all bunch of package rebuilds at once.

That’s how the part (a) and part (b) of my problem getting solved in the Manjaro OS infrastructure.

Thanks, now I got it. Switched to first wave of new packages dedicated for end users (the testing branch).

1 Like

Depending on which packages you are using.
If you use a lot of installed Manjaro packages and Manjaro Kernel (they are built by Manjaro), you’d better switch to the testing branch.

Check what Manjaro package you use using:

$ grep -lzi 'manjaro' /var/lib/pacman/local/*/desc | cut -d/ -f6

The output shows which installed packages are built by Manjaro only.


I don’t have many problems with the unstable branch so far, because I use very few Manjaro packages for example: grub, systemd, pacman and mesa … they are built by Manjaro and do not use Python dependencies.
The rest many installed packages (unstable branch) are the same as those from Arch stable branch. They are simply copied 1:1 from Arch mirror to Manjaro unstable branch. They work without any problems in my experience.

In the unstable branch, I am very cautious about Manjaro bleeding edge kernels that have not been tested by Arch team and Manjaro team, but they are tested or used directly by you and Manjaro team first. For this reason, I use my own “stable” Kernels.
Of course, a bad bleeding edge Kernel can destroy your data if a filesystem has new critical bugs and its testing is not enough.

1 Like

It seems what is unstable in Unstable branch are what is modified by Manjaro. Well, for now I will stick with it, and see what to do.

@alven

Unstable branch is where everything enters the Manjaro eco-system.

If you are using unstable branch - you are offering yourself as test-rabbit - but you can use it as an ‘end-user’.

If you want to consider yourself as ‘end-user’ - I have said this before - disable update checkers - schedule your updates to e.g. once a week or twice a week - what suits you.

There is only this monthly announcement for packages added or updated in unstable - offering the members to option to report their issues - if one encounter a deal breaker.

As you can see from the discussion - there is a process which will streamline the release cadence with automated releases.

1 Like