So I have been running this computer for probably a better half of a year now. It hasn’t been doing much, but I have been keeping it updated. Now, something has happened to it one day after a huge blast of updates were installed when you do the whole garuda-update thing where half of my applications no longer load up anymore.
Applications like Telegram, pCloud Drive, even MatLAB (and many others) all just seemed to quit working. If I force these apps to launch in a terminal, it tells you it’s launched, but then the applications are not there.
I cannot figure out why for the life of me how this happened or even where to troubleshoot the problem. The only thing I can think of is probably blowing away the OS and maybe reinstalling it to start over fresh.
I did, and I have. I rarely install anything outside of using paru
This has sat like this for a number of months now, and I don’t know how far back this goes. I figured it would fix itself cause many bugs seem to do so in the past, just magically “fix themselves” all on there own
I can’t really find a trigger for your issue in the logs. These are mostly standard packages that have been updated (but I’m not really an XFCE/GTK expert). It’s noticeable that your system is poorly maintained:
:: Synchronising package databases...
error: failed to synchronise all databases (unable to lock database)
spawn pacman -Su -yy
[?25l:: Synchronising package databases...
error: failed to synchronise all databases (unable to lock database)
[?25h
You encounter the issue that the database cannot be locked with almost every update attempt.
You also have several orphans, as well as packages that are no longer available in any repo. Use:
paru -c
or
cleanup
to remove the orphans (check the relevant packages before confirming removal). Then reboot and check whether the affected applications start correctly. If not, please list all affected applications (package name, version, source/repo) and the output when attempting to start them via terminal.
Nativefier has been archived at the source since a year. All nativefier apps should be removed for safety concerns at this point.
Steam native has been deprecated. Building the dependencies for this is a big pain, so it may be part of why you thought the update was so large. If you are not actively going out of your way to use it for an antique game which doesn’t work with runtime, it should also be removed:
╭─fenris@fenris in ~ as 🧙 took 1m19s
╰─λ cleanup
error: no targets specified (use -h for help)
╭─fenris@fenris in ~ as 🧙 took 0s
[🔴] × paru -c
checking dependencies...
warning: dependency cycle detected:
warning: libcamera-ipa will be removed after its libcamera dependency
Package (2) Old Version Net Change
libcamera 0.5.2-1 -1.89 MiB
libcamera-ipa 0.5.2-1 -8.73 MiB
Total Removed Size: 10.62 MiB
:: Do you want to remove these packages? [Y/n]
:: Running pre-transaction hooks...
(1/2) Rejecting pacman transaction if running in snapshot...
(2/2) Performing snapper pre snapshots for the following configurations...
==> root: 10627
:: Processing package changes...
(1/2) removing libcamera [----------------------] 100%
(2/2) removing libcamera-ipa [----------------------] 100%
:: Running post-transaction hooks...
(1/6) Arming ConditionNeedsUpdate...
(2/6) Foreign/AUR package notification
appimagelauncher 3.0.0_beta_3-1
arduino-ide-bin 2.3.6-2
chatgpt-desktop-bin 1.1.0-1
eagle 9.6.2-2
edrawmax-bin 14.0.0-0
edrawmind-bin 10.5.4-2
edrawproject-en 3.7.0-1
gestures 0.3.1-3
google-meet-nativefier 1.0.0-2.4
gtk-engine-murrine 0.98.2-5
gtk2 2.24.33-5
hexchat 2.16.2-5
kvirc-git 5.2.8.r11.g79b6e8fbe-1
lbreakouthd 1.2-1
libjpeg6-turbo 1.5.3-3
libpng12 1.2.59-2
libudev0-shim 2-2
motrix-bin 1.8.19-2
openoffice-bin 4.1.15-1
pcloud-drive 1.14.18-4
qt5-remoteobjects 5.15.18-1
qt5-webchannel 5.15.18+kde+r3-1
qt5-webengine 5.15.19-4
quartus-free 24.1.0.1077-1
quartus-free-devinfo-arria_lite 24.1.0.1077-1
quartus-free-devinfo-cyclone 24.1.0.1077-1
quartus-free-devinfo-cyclone10lp 24.1.0.1077-1
quartus-free-devinfo-cyclonev 24.1.0.1077-1
quartus-free-devinfo-max 24.1.0.1077-1
quartus-free-devinfo-max10 24.1.0.1077-1
quartus-free-help 24.1.0.1077-1
quartus-free-quartus 24.1.0.1077-1
quartus-free-questa 24.1.0.1077-1
quartus-free-riscfree 24.1.0.1077-1
reiserfsprogs 3.6.27-5
snapd 2.72-1
teamviewer 15.71.4-1
trezor-suite-appimage 25.11.2-1
trezor-udev 1-3
vmware-unlocker 4.2.5-2
xautolock 2.2-8
(3/6) Orphaned package notification...
=> No orphans found.
(4/6) Checking for .pacnew and .pacsave files...
.pac* files found:
/etc/pacman.d/chaotic-mirrorlist.pacnew
/etc/hosts.pacnew
/etc/issue.pacnew
/etc/locale.gen.pacnew
/etc/default/grub-btrfs/config.pacnew
/etc/java-jdk/jaxp-strict.properties.template.pacnew
/etc/java-jdk/jaxp.properties.pacnew
/etc/ssh/sshd_config.pacnew
/etc/pacman.conf.pacnew
/etc/makepkg.conf.d/rust.conf.pacnew
/etc/pacman.d/mirrorlist.pacnew
/etc/pamac.conf.pacsave
/etc/updatedb.conf.pacsave
/etc/sudoers.pacnew
Please check and merge
(5/6) Performing snapper post snapshots for the following configurations...
==> root: 10628
(6/6) Syncing all file systems...
╭─fenris@fenris in ~ as 🧙 took 6s
╰─λ
╭─fenris@fenris in ~ as 🧙 took 6s
╰─λ sudo pacman -Rnsu google-meet-nativefier
checking dependencies...
Package (1) Old Version Net Change
google-meet-nativefier 1.0.0-2.4 -226.63 MiB
Total Removed Size: 226.63 MiB
:: Do you want to remove these packages? [Y/n]
:: Running pre-transaction hooks...
(1/2) Rejecting pacman transaction if running in snapshot...
(2/2) Performing snapper pre snapshots for the following configurations...
==> root: 10629
:: Processing package changes...
(1/1) removing google-meet-nativefier [----------------------] 100%
:: Running post-transaction hooks...
(1/7) Arming ConditionNeedsUpdate...
(2/7) Foreign/AUR package notification
appimagelauncher 3.0.0_beta_3-1
arduino-ide-bin 2.3.6-2
chatgpt-desktop-bin 1.1.0-1
eagle 9.6.2-2
edrawmax-bin 14.0.0-0
edrawmind-bin 10.5.4-2
edrawproject-en 3.7.0-1
gestures 0.3.1-3
gtk-engine-murrine 0.98.2-5
gtk2 2.24.33-5
hexchat 2.16.2-5
kvirc-git 5.2.8.r11.g79b6e8fbe-1
lbreakouthd 1.2-1
libjpeg6-turbo 1.5.3-3
libpng12 1.2.59-2
libudev0-shim 2-2
motrix-bin 1.8.19-2
openoffice-bin 4.1.15-1
pcloud-drive 1.14.18-4
qt5-remoteobjects 5.15.18-1
qt5-webchannel 5.15.18+kde+r3-1
qt5-webengine 5.15.19-4
quartus-free 24.1.0.1077-1
quartus-free-devinfo-arria_lite 24.1.0.1077-1
quartus-free-devinfo-cyclone 24.1.0.1077-1
quartus-free-devinfo-cyclone10lp 24.1.0.1077-1
quartus-free-devinfo-cyclonev 24.1.0.1077-1
quartus-free-devinfo-max 24.1.0.1077-1
quartus-free-devinfo-max10 24.1.0.1077-1
quartus-free-help 24.1.0.1077-1
quartus-free-quartus 24.1.0.1077-1
quartus-free-questa 24.1.0.1077-1
quartus-free-riscfree 24.1.0.1077-1
reiserfsprogs 3.6.27-5
snapd 2.72-1
teamviewer 15.71.4-1
trezor-suite-appimage 25.11.2-1
trezor-udev 1-3
vmware-unlocker 4.2.5-2
xautolock 2.2-8
(3/7) Orphaned package notification...
=> No orphans found.
(4/7) Checking for .pacnew and .pacsave files...
.pac* files found:
/etc/pacman.d/chaotic-mirrorlist.pacnew
/etc/hosts.pacnew
/etc/issue.pacnew
/etc/locale.gen.pacnew
/etc/default/grub-btrfs/config.pacnew
/etc/java-jdk/jaxp-strict.properties.template.pacnew
/etc/java-jdk/jaxp.properties.pacnew
/etc/ssh/sshd_config.pacnew
/etc/pacman.conf.pacnew
/etc/makepkg.conf.d/rust.conf.pacnew
/etc/pacman.d/mirrorlist.pacnew
/etc/pamac.conf.pacsave
/etc/updatedb.conf.pacsave
/etc/sudoers.pacnew
Please check and merge
(5/7) Updating the desktop file MIME type cache...
(6/7) Performing snapper post snapshots for the following configurations...
==> root: 10630
(7/7) Syncing all file systems...
╭─fenris@fenris in ~ as 🧙 took 4s
╰─λ
╭─fenris@fenris in ~ as 🧙 took 4s
╰─λ sudo pacman -Rnsu steam-native-runtime
error: target not found: steam-native-runtime
╭─fenris@fenris in ~ as 🧙 took 0s
[🔴] ×
╭─fenris@fenris in ~ as 🧙 took 0s
[🔴] × sudo pacman -Rnsu gtk-engine-murrine
checking dependencies...
Package (1) Old Version Net Change
gtk-engine-murrine 0.98.2-5 -0.31 MiB
Total Removed Size: 0.31 MiB
:: Do you want to remove these packages? [Y/n]
:: Running pre-transaction hooks...
(1/2) Rejecting pacman transaction if running in snapshot...
(2/2) Performing snapper pre snapshots for the following configurations...
==> root: 10631
:: Processing package changes...
(1/1) removing gtk-engine-murrine [----------------------] 100%
:: Running post-transaction hooks...
(1/6) Arming ConditionNeedsUpdate...
(2/6) Foreign/AUR package notification
appimagelauncher 3.0.0_beta_3-1
arduino-ide-bin 2.3.6-2
chatgpt-desktop-bin 1.1.0-1
eagle 9.6.2-2
edrawmax-bin 14.0.0-0
edrawmind-bin 10.5.4-2
edrawproject-en 3.7.0-1
gestures 0.3.1-3
gtk2 2.24.33-5
hexchat 2.16.2-5
kvirc-git 5.2.8.r11.g79b6e8fbe-1
lbreakouthd 1.2-1
libjpeg6-turbo 1.5.3-3
libpng12 1.2.59-2
libudev0-shim 2-2
motrix-bin 1.8.19-2
openoffice-bin 4.1.15-1
pcloud-drive 1.14.18-4
qt5-remoteobjects 5.15.18-1
qt5-webchannel 5.15.18+kde+r3-1
qt5-webengine 5.15.19-4
quartus-free 24.1.0.1077-1
quartus-free-devinfo-arria_lite 24.1.0.1077-1
quartus-free-devinfo-cyclone 24.1.0.1077-1
quartus-free-devinfo-cyclone10lp 24.1.0.1077-1
quartus-free-devinfo-cyclonev 24.1.0.1077-1
quartus-free-devinfo-max 24.1.0.1077-1
quartus-free-devinfo-max10 24.1.0.1077-1
quartus-free-help 24.1.0.1077-1
quartus-free-quartus 24.1.0.1077-1
quartus-free-questa 24.1.0.1077-1
quartus-free-riscfree 24.1.0.1077-1
reiserfsprogs 3.6.27-5
snapd 2.72-1
teamviewer 15.71.4-1
trezor-suite-appimage 25.11.2-1
trezor-udev 1-3
vmware-unlocker 4.2.5-2
xautolock 2.2-8
(3/6) Orphaned package notification...
=> No orphans found.
(4/6) Checking for .pacnew and .pacsave files...
.pac* files found:
/etc/pacman.d/chaotic-mirrorlist.pacnew
/etc/hosts.pacnew
/etc/issue.pacnew
/etc/locale.gen.pacnew
/etc/default/grub-btrfs/config.pacnew
/etc/java-jdk/jaxp-strict.properties.template.pacnew
/etc/java-jdk/jaxp.properties.pacnew
/etc/ssh/sshd_config.pacnew
/etc/pacman.conf.pacnew
/etc/makepkg.conf.d/rust.conf.pacnew
/etc/pacman.d/mirrorlist.pacnew
/etc/pamac.conf.pacsave
/etc/updatedb.conf.pacsave
/etc/sudoers.pacnew
Please check and merge
(5/6) Performing snapper post snapshots for the following configurations...
==> root: 10632
(6/6) Syncing all file systems...
╭─fenris@fenris in ~ as 🧙 took 4s
╰─λ
I don’t know if pCloud-Drive still uses some of this, till this program can load up, I’m not sure I should remove them
I will have to look at this one more closely, for now I do use Motrix quite a bit. I will varia a try however for all my computers.
╭─fenris@fenris in ~ as 🧙 took 4s
╰─λ sudo -H DIFFPROG=meld pacdiff
==> pacnew file found for /etc/pacman.d/chaotic-mirrorlist
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/pacman.d/chaotic-mirrorlist.pacnew' -> '/etc/pacman.d/chaotic-mirrorlist'
==> pacnew file found for /etc/hosts
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/hosts.pacnew' -> '/etc/hosts'
==> pacnew file found for /etc/issue
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/issue.pacnew' -> '/etc/issue'
==> pacnew file found for /etc/locale.gen
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/locale.gen.pacnew' -> '/etc/locale.gen'
==> pacnew file found for /etc/default/grub-btrfs/config
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/default/grub-btrfs/config.pacnew' -> '/etc/default/grub-btrfs/config'
==> pacnew file found for /etc/java-jdk/jaxp-strict.properties.template
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/java-jdk/jaxp-strict.properties.template.pacnew' -> '/etc/java-jdk/jaxp-strict.properties.template'
==> pacnew file found for /etc/java-jdk/jaxp.properties
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/java-jdk/jaxp.properties.pacnew' -> '/etc/java-jdk/jaxp.properties'
==> pacnew file found for /etc/ssh/sshd_config
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/ssh/sshd_config.pacnew' -> '/etc/ssh/sshd_config'
==> pacnew file found for /etc/pacman.conf
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/pacman.conf.pacnew' -> '/etc/pacman.conf'
==> pacnew file found for /etc/makepkg.conf.d/rust.conf
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/makepkg.conf.d/rust.conf.pacnew' -> '/etc/makepkg.conf.d/rust.conf'
==> pacnew file found for /etc/pacman.d/mirrorlist
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/pacman.d/mirrorlist.pacnew' -> '/etc/pacman.d/mirrorlist'
==> pacsave file found for /etc/pamac.conf
:: (V)iew, (M)erge, (S)kip, (R)emove pacsave, (O)verwrite with pacsave, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/pamac.conf.pacsave' -> '/etc/pamac.conf'
==> pacsave file found for /etc/updatedb.conf
:: (V)iew, (M)erge, (S)kip, (R)emove pacsave, (O)verwrite with pacsave, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/updatedb.conf.pacsave' -> '/etc/updatedb.conf'
==> pacnew file found for /etc/sudoers
:: (V)iew, (M)erge, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/m/s/r/o/q] o
renamed '/etc/sudoers.pacnew' -> '/etc/sudoers'
╭─fenris@fenris in ~ as 🧙 took 1m22s
╰─λ sudo -H DIFFPROG=meld pacdiff
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ
I just noticed I selected the wrong option, not merge but overwrite…hopefully that’s not a problem
That was most definitely the wrong option. Now need to make sure you didn’t kill any necessary configs from Garuda with the defaults from Arch. Since there were a lot of files to be dealt with, this is a somewhat intensive fix.
This is the first and biggest issue to resolve. This will correctly reset pacman.conf:
garuda-update remote fix
If you have manually edited some blocks into your hosts file, it is now cleared to defaults. Confirm the last line in it includes your device by hostname, for example, mine is mango. Use sudo to edit.
This is probably wrong now, so edit with sudo to the following:
Garuda Linux \r (\l)
Notice that there is a newline ending.
I see you are in Canada, so this probably needs to be edited, again with sudo. Ensure everything in the file is commented and append the text below to the end of the file. They should remain in the order given here. You don’t need to include the Calamares comment.
once it is done, generate the locales so they can be used:
sudo locale-gen
you can then set Canada as the default locale:
sudo localectl set-locale LANG=en_CA.UTF-8
Please confirm closely with this copy of mine, but I believe the only thing different here are the final 2 lines, which you are now definitely missing: Garuda's PrivateBin
Again, edit with sudo.
# This config file imports drop-in files from /etc/default/grub-btrfs/config.d/.
for garuda_grub_btrfs_d in ${sysconfdir}/default/grub-btrfs/config.d/*.cfg ; do if [ -e "${garuda_grub_btrfs_d}" ]; then source "${garuda_grub_btrfs_d}"; fi; done
you can then
sudo update-grub
I have no idea why those files are there–or why they were modified, but if you didn’t make your own changes there for jdk or jre, that’s probably fine.
There are no changes made here by Garuda, but if you changed something yourself, you must do whatever it again.
This is fine.
We do not modify this, so it should be fine, unless you changed something yourself.
The final line is edited to include /.snapshots, and there is a comment for why placed above it:
# Modified by Garuda Linux to exclude snapshots
PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache /var/lib/pacman/local /var/lock /var/run /var/spool /var/tmp /.snapshots"
You can then update the db for plocate
sudo updatedb
If you have modified this yourself in some way, you will need to re-modify it with visudo, but the defaults should be fine.
Finally, when this all of the above is complete, you can optionally open snapper tools, and ensure you don’t have a recent snapshot containing your home directory. If you’re not low on space, you can ignore it until it rotates out, but don’t restore to it, or you could overwrite some files in your home directory. One of the configuration files you changed was excluding your home directory, so snapshots since that pacdiff change, but before the above fixes, will have included your home.
╭─fenris@fenris in ~ as 🧙 took 3m26s
[🔴] × pacman -Qi electron35
error: package 'electron35' was not found
╭─fenris@fenris in ~ as 🧙 took 0s
[🔴] × pacman -Qi electron36
error: package 'electron36' was not found
╭─fenris@fenris in ~ as 🧙 took 0s
[🔴] × sudo pacman -Ss electron35
extra/electron35 35.7.5-1
Build cross platform desktop apps with web technologies
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo pacman -Ss electron36
extra/electron36 36.9.3-1
Build cross platform desktop apps with web technologies
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ garuda-update remote fix
This will reset a few configuration files like pacman.conf 🛑
Are you sure? (y/n)
y
--2025-11-28 22:02:25-- https://pkgbuild.com/~morganamilo/pacman-static/x86_64/bin/pacman-static
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving pkgbuild.com (pkgbuild.com)... 78.46.178.133, 2a01:4f8:c2c:51e2::1
Connecting to pkgbuild.com (pkgbuild.com)|78.46.178.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4606712 (4.4M) [application/octet-stream]
Saving to: ‘/tmp/tmp.QUzqKgK4FK’
/tmp/tmp.QUzqKgK4FK 100%[===================>] 4.39M 591KB/s in 7.6s
2025-11-28 22:02:34 (588 KB/s) - ‘/tmp/tmp.QUzqKgK4FK’ saved [4606712/4606712]
.--. Pacman v6.0.1 - libalpm v13.0.1
/ _.-' .-. .-. .-. Copyright (C) 2006-2021 Pacman Development Team
\ '-. '-' '-' '-' Copyright (C) 2002-2006 Judd Vinet
'--'
This program may be freely redistributed under
the terms of the GNU General Public License.
--2025-11-28 22:02:34-- https://gitlab.com/garuda-linux/tools/garuda-tools/-/raw/master/data/pacman-default.conf
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving gitlab.com (gitlab.com)... 172.65.251.78, 2606:4700:90:0:f22e:fbec:5bed:a9b9
Connecting to gitlab.com (gitlab.com)|172.65.251.78|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2502 (2.4K) [text/plain]
Saving to: ‘/etc/pacman.conf’
/etc/pacman.conf 100%[===================>] 2.44K --.-KB/s in 0.001s
2025-11-28 22:02:34 (2.16 MB/s) - ‘/etc/pacman.conf’ saved [2502/2502]
--2025-11-28 22:02:34-- https://archlinux.org/mirrorlist/all/
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving archlinux.org (archlinux.org)... 46.62.203.164, 2a01:4f9:c012:16e3::1
Connecting to archlinux.org (archlinux.org)|46.62.203.164|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 55387 (54K) [text/plain]
Saving to: ‘/etc/pacman.d/mirrorlist’
/etc/pacman.d/mirro 100%[===================>] 54.09K 211KB/s in 0.3s
2025-11-28 22:02:36 (211 KB/s) - ‘/etc/pacman.d/mirrorlist’ saved [55387/55387]
--2025-11-28 22:02:36-- https://aur.chaotic.cx/mirrorlist.txt
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving aur.chaotic.cx (aur.chaotic.cx)... 104.26.5.205, 104.26.4.205, 172.67.71.42, ...
Connecting to aur.chaotic.cx (aur.chaotic.cx)|104.26.5.205|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1895 (1.9K) [text/plain]
Saving to: ‘/etc/pacman.d/chaotic-mirrorlist’
/etc/pacman.d/chaot 100%[===================>] 1.85K --.-KB/s in 0.002s
2025-11-28 22:02:36 (850 KB/s) - ‘/etc/pacman.d/chaotic-mirrorlist’ saved [1895/1895]
gpg: /etc/pacman.d/gnupg/trustdb.gpg: trustdb created
gpg: no ultimately trusted keys found
gpg: starting migration from earlier GnuPG versions
gpg: porting secret keys from '/etc/pacman.d/gnupg/secring.gpg' to gpg-agent
gpg: migration succeeded
==> Generating pacman master key. This may take some time.
gpg: Generating pacman keyring master key...
gpg: directory '/etc/pacman.d/gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as '/etc/pacman.d/gnupg/openpgp-revocs.d/C1DC156D45AD22DC0661006BD6CFEA730F776A7A.rev'
gpg: Done
==> Updating trust database...
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
==> Appending keys from archlinux.gpg...
==> Appending keys from chaotic.gpg...
==> Locally signing trusted keys in keyring...
-> Locally signed 7 keys.
==> Importing owner trust values...
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
==> Disabling revoked keys in keyring...
-> Disabled 54 keys.
==> Updating trust database...
gpg: Note: third-party key signatures using the SHA1 algorithm are rejected
gpg: (use option "--allow-weak-key-signatures" to override)
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 7 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 7 signed: 103 trust: 0-, 0q, 0n, 7m, 0f, 0u
gpg: depth: 2 valid: 76 signed: 19 trust: 76-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2026-01-30
gpg: key A6234074498E9CEE: 3 duplicate signatures removed
gpg: key A6234074498E9CEE: "Christian Hesse <eworm@archlinux.org>" 1 user ID cleaned
gpg: key 3056513887B78AEB: "Pedro Henrique Lara Campos <root@pedrohlc.com>" not changed
gpg: Note: third-party key signatures using the SHA1 algorithm are rejected
gpg: (use option "--allow-weak-key-signatures" to override)
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 7 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 7 signed: 103 trust: 0-, 0q, 0n, 7m, 0f, 0u
gpg: depth: 2 valid: 76 signed: 19 trust: 76-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2026-01-30
gpg: Total number processed: 2
gpg: unchanged: 1
gpg: user IDs cleaned: 1
-> Locally signed 2 keys.
==> Updating trust database...
gpg: Note: third-party key signatures using the SHA1 algorithm are rejected
gpg: (use option "--allow-weak-key-signatures" to override)
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 8 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 8 signed: 103 trust: 1-, 0q, 0n, 7m, 0f, 0u
gpg: depth: 2 valid: 75 signed: 19 trust: 75-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2026-01-30
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
gpg: error retrieving 'tne@garudalinux.org' via WKD: No fingerprint
gpg: refreshing 1 key from hkp://keyserver.ubuntu.com
gpg: key D6C9442437365605: "TNE <tne@garudalinux.org>" not changed
gpg: Total number processed: 1
gpg: unchanged: 1
rm: cannot remove '/var/cache/pacman/pkg/download-1pR0lb': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-1qNw7w': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-2MQanV': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-8Au9gZ': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-8Uzpt3': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-acCozL': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-BWkVLr': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-DJwR50': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-DlBXJj': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-er2u9Z': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-hePiYd': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-HoMmDT': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-hVoA6u': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-jBHiwy': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-joeMI8': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-LWLNwI': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-PrHyeR': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-RCVje1': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-rMpXS0': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-rQcbTV': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-rxLOVj': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-tgP87v': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-tSiXby': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-UMQtVj': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-UMsKUN': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-WVI4lc': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-xsLEnd': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-XWI2dW': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-YGAWt0': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-yULlEB': Is a directory
rm: cannot remove '/var/cache/pacman/pkg/download-ZxPQFh': Is a directory
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
:: Synchronizing package databases...
garuda 43.0 KiB 60.0 KiB/s 00:01 [----------------------] 100%
core 117.4 KiB 49.0 KiB/s 00:02 [----------------------] 100%
extra 8.0 MiB 496 KiB/s 00:17 [----------------------] 100%
multilib 125.4 KiB 53.1 KiB/s 00:02 [----------------------] 100%
chaotic-aur 647.7 KiB 329 KiB/s 00:02 [----------------------] 100%
warning: archlinux-keyring-20251116-1 is up to date -- reinstalling
warning: chaotic-keyring-20251028-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Package (2) Old Version New Version Net Change Download Size
core/archlinux-keyring 20251116-1 20251116-1 0.00 MiB 1.19 MiB
chaotic-aur/chaotic-keyring 20251028-1 20251028-1 0.00 MiB 0.02 MiB
Total Download Size: 1.21 MiB
Total Installed Size: 1.71 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n]
:: Retrieving packages...
chaotic-keyring-... 17.8 KiB 26.7 KiB/s 00:01 [----------------------] 100%
archlinux-keyrin... 1218.8 KiB 491 KiB/s 00:02 [----------------------] 100%
Total (2/2) 1236.6 KiB 487 KiB/s 00:03 [----------------------] 100%
(2/2) checking keys in keyring [----------------------] 100%
(2/2) checking package integrity [----------------------] 100%
(2/2) loading package files [----------------------] 100%
(2/2) checking for file conflicts [----------------------] 100%
(2/2) checking available disk space [----------------------] 100%
:: Running pre-transaction hooks...
(1/2) Rejecting pacman transaction if running in snapshot...
(2/2) Performing snapper pre snapshots for the following configurations...
snapper snapshots skipped
:: Processing package changes...
(1/2) reinstalling archlinux-keyring [----------------------] 100%
==> Appending keys from archlinux.gpg...
==> Updating trust database...
gpg: next trustdb check due at 2026-01-30
(2/2) reinstalling chaotic-keyring [----------------------] 100%
==> Appending keys from chaotic.gpg...
==> Updating trust database...
gpg: next trustdb check due at 2026-01-30
==> Updating trust database...
gpg: Note: third-party key signatures using the SHA1 algorithm are rejected
gpg: (use option "--allow-weak-key-signatures" to override)
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 8 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 8 signed: 103 trust: 1-, 0q, 0n, 7m, 0f, 0u
gpg: depth: 2 valid: 75 signed: 19 trust: 75-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2026-01-30
:: Running post-transaction hooks...
(1/9) Reloading system manager configuration...
(2/9) Restarting marked services...
(3/9) Arming ConditionNeedsUpdate...
(4/9) Checking for package with missing dependencies...
(5/9) Foreign/AUR package notification
appimagelauncher 3.0.0_beta_3-1
arduino-ide-bin 2.3.6-2
chatgpt-desktop-bin 1.1.0-1
eagle 9.6.2-2
edrawmax-bin 14.0.0-0
edrawmind-bin 10.5.4-2
edrawproject-en 3.7.0-1
gestures 0.3.1-3
gtk2 2.24.33-5
hexchat 2.16.2-5
kvirc-git 5.2.8.r11.g79b6e8fbe-1
lbreakouthd 1.2-1
libjpeg6-turbo 1.5.3-3
libpng12 1.2.59-2
libudev0-shim 2-2
motrix-bin 1.8.19-2
openoffice-bin 4.1.15-1
pcloud-drive 1.14.18-4
qt5-remoteobjects 5.15.18-1
qt5-webchannel 5.15.18+kde+r3-1
qt5-webengine 5.15.19-4
quartus-free 24.1.0.1077-1
quartus-free-devinfo-arria_lite 24.1.0.1077-1
quartus-free-devinfo-cyclone 24.1.0.1077-1
quartus-free-devinfo-cyclone10lp 24.1.0.1077-1
quartus-free-devinfo-cyclonev 24.1.0.1077-1
quartus-free-devinfo-max 24.1.0.1077-1
quartus-free-devinfo-max10 24.1.0.1077-1
quartus-free-help 24.1.0.1077-1
quartus-free-quartus 24.1.0.1077-1
quartus-free-questa 24.1.0.1077-1
quartus-free-riscfree 24.1.0.1077-1
reiserfsprogs 3.6.27-5
snapd 2.72-1
teamviewer 15.71.4-1
trezor-suite-appimage 25.11.2-1
trezor-udev 1-3
vmware-unlocker 4.2.5-2
xautolock 2.2-8
(6/9) Orphaned package notification...
=> No orphans found.
(7/9) Checking for .pacnew and .pacsave files...
(8/9) Performing snapper post snapshots for the following configurations...
snapper snapshots skipped
(9/9) Syncing all file systems...
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
:: Synchronizing package databases...
garuda is up to date
core is up to date
extra is up to date
multilib is up to date
chaotic-aur is up to date
warning: garuda-update-5.2.0-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Package (1) Old Version New Version Net Change Download Size
garuda/garuda-update 5.2.0-1 5.2.0-1 0.00 MiB 0.01 MiB
Total Download Size: 0.01 MiB
Total Installed Size: 0.03 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n]
:: Retrieving packages...
garuda-update-5.... 14.9 KiB 40.8 KiB/s 00:00 [----------------------] 100%
(1/1) checking keys in keyring [----------------------] 100%
(1/1) checking package integrity [----------------------] 100%
(1/1) loading package files [----------------------] 100%
(1/1) checking for file conflicts [----------------------] 100%
(1/1) checking available disk space [----------------------] 100%
:: Running pre-transaction hooks...
(1/1) Performing snapper pre snapshots for the following configurations...
snapper snapshots skipped
:: Processing package changes...
(1/1) reinstalling garuda-update [----------------------] 100%
:: Running post-transaction hooks...
(1/7) Arming ConditionNeedsUpdate...
(2/7) Checking for package with missing dependencies...
(3/7) Foreign/AUR package notification
appimagelauncher 3.0.0_beta_3-1
arduino-ide-bin 2.3.6-2
chatgpt-desktop-bin 1.1.0-1
eagle 9.6.2-2
edrawmax-bin 14.0.0-0
edrawmind-bin 10.5.4-2
edrawproject-en 3.7.0-1
gestures 0.3.1-3
gtk2 2.24.33-5
hexchat 2.16.2-5
kvirc-git 5.2.8.r11.g79b6e8fbe-1
lbreakouthd 1.2-1
libjpeg6-turbo 1.5.3-3
libpng12 1.2.59-2
libudev0-shim 2-2
motrix-bin 1.8.19-2
openoffice-bin 4.1.15-1
pcloud-drive 1.14.18-4
qt5-remoteobjects 5.15.18-1
qt5-webchannel 5.15.18+kde+r3-1
qt5-webengine 5.15.19-4
quartus-free 24.1.0.1077-1
quartus-free-devinfo-arria_lite 24.1.0.1077-1
quartus-free-devinfo-cyclone 24.1.0.1077-1
quartus-free-devinfo-cyclone10lp 24.1.0.1077-1
quartus-free-devinfo-cyclonev 24.1.0.1077-1
quartus-free-devinfo-max 24.1.0.1077-1
quartus-free-devinfo-max10 24.1.0.1077-1
quartus-free-help 24.1.0.1077-1
quartus-free-quartus 24.1.0.1077-1
quartus-free-questa 24.1.0.1077-1
quartus-free-riscfree 24.1.0.1077-1
reiserfsprogs 3.6.27-5
snapd 2.72-1
teamviewer 15.71.4-1
trezor-suite-appimage 25.11.2-1
trezor-udev 1-3
vmware-unlocker 4.2.5-2
xautolock 2.2-8
(4/7) Orphaned package notification...
=> No orphans found.
(5/7) Checking for .pacnew and .pacsave files...
(6/7) Performing snapper post snapshots for the following configurations...
snapper snapshots skipped
(7/7) Syncing all file systems...
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
:: Synchronizing package databases...
garuda is up to date
core is up to date
extra is up to date
multilib is up to date
chaotic-aur is up to date
--> Refreshing mirrorlists using rate-mirrors, please be patient..🍵
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
:: Synchronizing package databases...
error: failed to synchronize all databases (unable to lock database)
--> Applying keyring updates before starting full system update..
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
error: failed to init transaction (unable to lock database)
error: could not lock database: File exists
if you're sure a package manager is not already
running, you can remove /var/lib/pacman/db.lck
spawn /tmp/tmp.QUzqKgK4FK -Su -yy
warning: config file /etc/pacman.conf, line 39: directive 'DownloadUser' in section 'options' not recognized.
:: Synchronizing package databases...
error: failed to synchronize all databases (unable to lock database)
╭─fenris@fenris in ~ as 🧙 took 38s
╰─λ sudo cat /etc/hosts
# Static table lookup for hostnames.
# See hosts(5) for details.
127.0.0.1 localhost
::1 localhost
#This host address
127.0.1.1 fenris-minispro12
I don’t recall doing anything to this initally
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo cat /etc/issue
\S{PRETTY_NAME} \r (\l)
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo nano /etc/locale.gen
╭─fenris@fenris in ~ as 🧙 took 6m38s
╰─λ sudo locale-gen
Generating locales...
en_CA.UTF-8... done
en_CA.ISO-8859-1... done
Generation complete.
╭─fenris@fenris in ~ as 🧙 took 1s
╰─λ sudo localectl set-locale LANG=en_CA.UTF-8
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ
I don’t know what to do with this step, this is what I see…
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo cat /etc/default/grub-btrfs/config
#!/usr/bin/env bash
GRUB_BTRFS_VERSION=4.13-yabsnap_info_support-2024-03-06T13:43:57+00:00
# Disable grub-btrfs.
# Default: "false"
#GRUB_BTRFS_DISABLE="true"
# Name appearing in the Grub menu.
# Default: "Use distribution information from /etc/os-release."
#GRUB_BTRFS_SUBMENUNAME="Arch Linux snapshots"
# Custom title.
# Shows/Hides "date" "snapshot" "type" "description" in the Grub menu, custom order available.
# Default: ("date" "snapshot" "type" "description")
#GRUB_BTRFS_TITLE_FORMAT=("date" "snapshot" "type" "description")
# Limit the number of snapshots populated in the GRUB menu.
# Default: "50"
#GRUB_BTRFS_LIMIT="50"
# Sort the found subvolumes by "ogeneration" or "generation" or "path" or "rootid".
# # See Sorting section to https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-subvolume#SUBCOMMAND
# "-rootid" means list snapshot by new ones first.
# Default: "-rootid"
#GRUB_BTRFS_SUBVOLUME_SORT="+ogen,-gen,path,rootid"
# Show snapshots found during run "grub-mkconfig"
# Default: "true"
#GRUB_BTRFS_SHOW_SNAPSHOTS_FOUND="false"
# Show Total of snapshots found during run "grub-mkconfig"
# Default: "true"
#GRUB_BTRFS_SHOW_TOTAL_SNAPSHOTS_FOUND="true"
# By default, "grub-btrfs" automatically detects most existing kernels.
# If you have one or more custom kernels, you can add them here.
# Default: ("")
#GRUB_BTRFS_NKERNEL=("kernel-custom" "vmlinux-custom")
# By default, "grub-btrfs" automatically detects most existing initramfs.
# If you have one or more custom initramfs, you can add them here.
# Default: ("")
#GRUB_BTRFS_NINIT=("initramfs-custom.img" "initrd-custom.img" "otherinit-custom.gz")
# By default, "grub-btrfs" automatically detects most existing microcodes.
# If you have one or more custom microcodes, you can add them here.
# Default: ("")
#GRUB_BTRFS_CUSTOM_MICROCODE=("custom-ucode.img" "custom-uc.img "custom_ucode.cpio")
# Additional kernel command line parameters that should be passed to the kernel
# when booting a snapshot.
# For dracut based distros this could be useful to pass "rd.live.overlay.overlayfs=1"
# or "rd.live.overlay.readonly=1" to the Kernel for booting snapshots read only.
# Default: ""
#GRUB_BTRFS_SNAPSHOT_KERNEL_PARAMETERS="rd.live.overlay.overlayfs=1"
# Comma separated mount options to be used when booting a snapshot.
# They can be defined here as well as in the "/" line inside the respective snapshots'
# "/etc/fstab" files. Mount options found in both places are combined, and this variable
# takes priority over `fstab` entries.
# NB: Do NOT include "subvol=..." or "subvolid=..." here.
# Default: ""
#GRUB_BTRFS_ROOTFLAGS="space_cache,commit=10,norecovery"
# Ignore specific path during run "grub-mkconfig".
# Only exact paths are ignored.
# e.g : if `specific path` = @, only `@` snapshot will be ignored.
# Default: ("@")
GRUB_BTRFS_IGNORE_SPECIFIC_PATH=("@")
# Ignore prefix path during run "grub-mkconfig".
# Any path starting with the specified string will be ignored.
# e.g : if `prefix path` = @, all snapshots beginning with "@/..." will be ignored.
# Default: ("var/lib/docker" "@var/lib/docker" "@/var/lib/docker")
GRUB_BTRFS_IGNORE_PREFIX_PATH=("var/lib/docker" "@var/lib/docker" "@/var/lib/docker" "var/lib/containers" "@var/lib/containers" "@/var/lib/containers")
# Ignore specific type/tag of snapshot during run "grub-mkconfig".
# For snapper:
# Type = single, pre, post.
# For Timeshift:
# Tag = boot, ondemand, hourly, daily, weekly, monthly.
# For yabsnap:
# Trigger = S, I, U.
# Default: ("")
#GRUB_BTRFS_IGNORE_SNAPSHOT_TYPE=("")
# Ignore specific description of snapshot during run "grub-mkconfig".
# e.g: timeline
# Default: ("")
#GRUB_BTRFS_IGNORE_SNAPSHOT_DESCRIPTION=("")
# By default "grub-btrfs" automatically detects your boot partition,
# either located at the system root or on a separate partition or in a subvolume,
# Change to "true" if your boot partition isn't detected as separate.
# Default: "false"
#GRUB_BTRFS_OVERRIDE_BOOT_PARTITION_DETECTION="true"
# Location of the folder containing the "grub.cfg" file.
# Might be grub2 on some systems.
# Default: "/boot/grub"
#GRUB_BTRFS_GRUB_DIRNAME="/boot/grub2"
# Location of kernels/initramfs/microcode.
# Use by "grub-btrfs" to detect the boot partition and the location of kernels/initrafms/microcodes.
# Default: "/boot"
#GRUB_BTRFS_BOOT_DIRNAME="/boot"
# Location where grub-btrfs.cfg should be saved.
# Some distributions (like OpenSuSE) store those files at the snapshot directory
# instead of boot. Be aware that this directory must be available for grub during
# startup of the system.
# Default: $GRUB_BTRFS_GRUB_DIRNAME
#GRUB_BTRFS_GBTRFS_DIRNAME="/boot/grub"
# Location of the directory where Grub searches for the grub-btrfs.cfg file.
# Some distributions (like OpenSuSE) store those file at the snapshot directory
# instead of boot. Be aware that this directory must be available for grub during
# startup of the system.
# Default: "\${prefix}" # This is a grub variable that resolves to where grub is
# installed. (like /boot/grub, /boot/efi/grub)
# NOTE: If variables of grub are used here (like ${prefix}) they need to be escaped
# with `\` before the `$`
#GRUB_BTRFS_GBTRFS_SEARCH_DIRNAME="\${prefix}"
# Name/path of grub-mkconfig command, use by "grub-btrfs.service"
# Might be 'grub2-mkconfig' on some systems (Fedora ...)
# Default paths are /sbin:/bin:/usr/sbin:/usr/bin,
# if your path is missing, report it on the upstream project.
# For example, on Fedora : "/sbin/grub2-mkconfig"
# You can use only name or full path.
# Default: grub-mkconfig
#GRUB_BTRFS_MKCONFIG=/usr/bin/grub2-mkconfig
# Name of grub-script-check command, use by "grub-btrfs"
# Might be 'grub2-script-check' on some systems (Fedora ...)
# For example, on Fedora : "grub2-script-check"
# Default: grub-script-check
#GRUB_BTRFS_SCRIPT_CHECK=grub2-script-check
# Path of grub-mkconfig_lib file, use by "grub-btrfs"
# Might be '/usr/share/grub2/grub-mkconfig_lib' on some systems (Opensuse ...)
# Default: /usr/share/grub/grub-mkconfig_lib
#GRUB_BTRFS_MKCONFIG_LIB=/usr/share/grub2/grub-mkconfig_lib
# Password protection management for submenu,snapshots
# Refer to the Grub documentation https://www.gnu.org/software/grub/manual/grub/grub.html#Authentication-and-authorisation
# and this comment https://github.com/Antynea/grub-btrfs/issues/95#issuecomment-682295660
#
# Add authorized usernames separate by comma (foo,bar)
# When Grub's password protection is enabled, the superuser is authorized by default, it isn't necessary to add it
# Default: ""
#GRUB_BTRFS_PROTECTION_AUTHORIZED_USERS="foo,bar"
#
# Disable authentication support for submenu of Grub-btrfs only (--unrestricted)
# doesn't work if GRUB_BTRFS_PROTECTION_AUTHORIZED_USERS isn't empty
# Default: "false"
#GRUB_BTRFS_DISABLE_PROTECTION_SUBMENU="true"
# Enable booting from snapshots stored on LUKS encrypted devices
# Default: "false"
#GRUB_BTRFS_ENABLE_CRYPTODISK="true"
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ
I had to re-establish opening of port 22
╭─fenris@fenris in ~ as 🧙 took 17s
╰─λ sudo cat /etc/updatedb.conf
PRUNE_BIND_MOUNTS = "yes"
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset cramfs debugfs devpts devtmpfs ecryptfs exofs ftpfs fuse fuse.encfs fuse.s3fs fuse.sshfs fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs shfs smbfs sockfs sshfs sysfs tmpfs ubifs udf usbfs vboxsf"
PRUNENAMES = ".git .hg .svn"
# Modified by Garuda Linux to exclude snapshots
PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache /var/lib/pacman/local /var/lock /var/run /var/spool /var/tmp /.snapshots"
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo updatedb
╭─fenris@fenris in ~ as 🧙 took 8s
╰─λ
You already cleaned them up with nepti’s instruction above, no worries there.
You should change some to the lines from mine so that you have proper support for IPv6, and change the old hostname of fenris-minispro12 to the current fenris.
Change that to the line given above.
This indicates that en_CA.ISO-8859-1 is active but C.UTF-8 UTF-8 is not. You can re-edit /etc/locale.gen and fix this, then rerun sudo locale-gen
Add these 2 following lines to the end of /etc/default/grub-btrfs/config
# This config file imports drop-in files from /etc/default/grub-btrfs/config.d/.
for garuda_grub_btrfs_d in ${sysconfdir}/default/grub-btrfs/config.d/*.cfg ; do if [ -e "${garuda_grub_btrfs_d}" ]; then source "${garuda_grub_btrfs_d}"; fi; done
@TNE I didn’t expect this result from garuda-update remote fix at all. What do you think went wrong? I don’t see anything too obvious. The database seemingly should not have been locked at this moment, because it synced right before. DownloadUser certainly belongs there, so I don’t understand that either.
╭─fenris@fenris in ~ as 🧙 took 24s
╰─λ sudo cat /etc/hosts
# Standard host addresses
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# This host address
127.0.1.1 fenris
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo cat /etc/issue
Garuda Linux \r (\l)
For some reason, this entry just fixed itself
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo locale-gen
Generating locales...
en_CA.UTF-8... done
en_CA.ISO-8859-1... done
en_CA.UTF-8... done
en_US.UTF-8... done
Generation complete.
╭─fenris@fenris in ~ as 🧙 took 3s
╰─λ
╭─fenris@fenris in ~ as 🧙 took 37s
╰─λ sudo cat /etc/default/grub-btrfs/config
#!/usr/bin/env bash
GRUB_BTRFS_VERSION=4.12-master-2023-04-28T16:26:00+00:00
# Disable grub-btrfs.
# Default: "false"
#GRUB_BTRFS_DISABLE="true"
# Name appearing in the Grub menu.
# Default: "Use distribution information from /etc/os-release."
#GRUB_BTRFS_SUBMENUNAME="Arch Linux snapshots"
# Custom title.
# Shows/Hides "date" "snapshot" "type" "description" in the Grub menu, custom order available.
# Default: ("date" "snapshot" "type" "description")
#GRUB_BTRFS_TITLE_FORMAT=("date" "snapshot" "type" "description")
# Limit the number of snapshots populated in the GRUB menu.
# Default: "50"
#GRUB_BTRFS_LIMIT="50"
# Sort the found subvolumes by "ogeneration" or "generation" or "path" or "rootid".
# # See Sorting section to https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-subvolume#SUBCOMMAND
# "-rootid" means list snapshot by new ones first.
# Default: "-rootid"
#GRUB_BTRFS_SUBVOLUME_SORT="+ogen,-gen,path,rootid"
# Show snapshots found during run "grub-mkconfig"
# Default: "true"
#GRUB_BTRFS_SHOW_SNAPSHOTS_FOUND="false"
# Show Total of snapshots found during run "grub-mkconfig"
# Default: "true"
#GRUB_BTRFS_SHOW_TOTAL_SNAPSHOTS_FOUND="true"
# By default, "grub-btrfs" automatically detects most existing kernels.
# If you have one or more custom kernels, you can add them here.
# Default: ("")
#GRUB_BTRFS_NKERNEL=("kernel-custom" "vmlinux-custom")
# By default, "grub-btrfs" automatically detects most existing initramfs.
# If you have one or more custom initramfs, you can add them here.
# Default: ("")
#GRUB_BTRFS_NINIT=("initramfs-custom.img" "initrd-custom.img" "otherinit-custom.gz")
# By default, "grub-btrfs" automatically detects most existing microcodes.
# If you have one or more custom microcodes, you can add them here.
# Default: ("")
#GRUB_BTRFS_CUSTOM_MICROCODE=("custom-ucode.img" "custom-uc.img "custom_ucode.cpio")
# Additonal kernel command line parameters that should be passed to the kernel
# when booting a snapshot.
# For dracut based distros this could be useful to pass "rd.live.overlay.overlayfs=1"
# or "rd.live.overlay.readonly=1" to the Kernel for booting snapshots read only.
# Default: ""
#GRUB_BTRFS_SNAPSHOT_KERNEL_PARAMETERS="rd.live.overlay.overlayfs=1"
# Comma seperated mount options to be used when booting a snapshot.
# They can be defined here as well as in the "/" line inside the respective snapshots'
# "/etc/fstab" files. Mount options found in both places are combined, and this variable
# takes priority over `fstab` entries.
# NB: Do NOT include "subvol=..." or "subvolid=..." here.
# Default: ""
#GRUB_BTRFS_ROOTFLAGS="space_cache,commit=10,norecovery"
# Ignore specific path during run "grub-mkconfig".
# Only exact paths are ignored.
# e.g : if `specific path` = @, only `@` snapshot will be ignored.
# Default: ("@")
GRUB_BTRFS_IGNORE_SPECIFIC_PATH=("@")
# Ignore prefix path during run "grub-mkconfig".
# Any path starting with the specified string will be ignored.
# e.g : if `prefix path` = @, all snapshots beginning with "@/..." will be ignored.
# Default: ("var/lib/docker" "@var/lib/docker" "@/var/lib/docker")
GRUB_BTRFS_IGNORE_PREFIX_PATH=("var/lib/docker" "@var/lib/docker" "@/var/lib/docker")
# Ignore specific type/tag of snapshot during run "grub-mkconfig".
# For snapper:
# Type = single, pre, post.
# For Timeshift:
# Tag = boot, ondemand, hourly, daily, weekly, monthly.
# Default: ("")
#GRUB_BTRFS_IGNORE_SNAPSHOT_TYPE=("")
# Ignore specific description of snapshot during run "grub-mkconfig".
# e.g: timeline
# Default: ("")
#GRUB_BTRFS_IGNORE_SNAPSHOT_DESCRIPTION=("")
# By default "grub-btrfs" automatically detects your boot partition,
# either located at the system root or on a separate partition or in a subvolume,
# Change to "true" if your boot partition isn't detected as separate.
# Default: "false"
#GRUB_BTRFS_OVERRIDE_BOOT_PARTITION_DETECTION="true"
# Location of the folder containing the "grub.cfg" file.
# Might be grub2 on some systems.
# Default: "/boot/grub"
#GRUB_BTRFS_GRUB_DIRNAME="/boot/grub2"
# Location of kernels/initramfs/microcode.
# Use by "grub-btrfs" to detect the boot partition and the location of kernels/initrafms/microcodes.
# Default: "/boot"
#GRUB_BTRFS_BOOT_DIRNAME="/boot"
# Location where grub-btrfs.cfg should be saved.
# Some distributions (like OpenSuSE) store those files at the snapshot directory
# instead of boot. Be aware that this direcory must be available for grub during
# startup of the system.
# Default: $GRUB_BTRFS_GRUB_DIRNAME
#GRUB_BTRFS_GBTRFS_DIRNAME="/boot/grub"
# Location of the directory where Grub searches for the grub-btrfs.cfg file.
# Some distributions (like OpenSuSE) store those file at the snapshot directory
# instead of boot. Be aware that this direcory must be available for grub during
# startup of the system.
# Default: "\${prefix}" # This is a grub variable that resolves to where grub is
# installed. (like /boot/grub, /boot/efi/grub)
# NOTE: If variables of grub are used here (like ${prefix}) they need to be escaped
# with `\` before the `$`
#GRUB_BTRFS_GBTRFS_SEARCH_DIRNAME="\${prefix}"
# Name/path of grub-mkconfig command, use by "grub-btrfs.service"
# Might be 'grub2-mkconfig' on some systems (Fedora ...)
# Default paths are /sbin:/bin:/usr/sbin:/usr/bin,
# if your path is missing, report it on the upstream project.
# For example, on Fedora : "/sbin/grub2-mkconfig"
# You can use only name or full path.
# Default: grub-mkconfig
#GRUB_BTRFS_MKCONFIG=/usr/bin/grub2-mkconfig
# Name of grub-script-check command, use by "grub-btrfs"
# Might be 'grub2-script-check' on some systems (Fedora ...)
# For example, on Fedora : "grub2-script-check"
# Default: grub-script-check
#GRUB_BTRFS_SCRIPT_CHECK=grub2-script-check
# Path of grub-mkconfig_lib file, use by "grub-btrfs"
# Might be '/usr/share/grub2/grub-mkconfig_lib' on some systems (Opensuse ...)
# Default: /usr/share/grub/grub-mkconfig_lib
#GRUB_BTRFS_MKCONFIG_LIB=/usr/share/grub2/grub-mkconfig_lib
# Password protection management for submenu,snapshots
# Refer to the Grub documentation https://www.gnu.org/software/grub/manual/grub/grub.html#Authentication-and-authorisation
# and this comment https://github.com/Antynea/grub-btrfs/issues/95#issuecomment-682295660
#
# Add authorized usernames separate by comma (foo,bar)
# When Grub's password protection is enabled, the superuser is authorized by default, it isn't necessary to add it
# Default: ""
#GRUB_BTRFS_PROTECTION_AUTHORIZED_USERS="foo,bar"
#
# Disable authentication support for submenu of Grub-btrfs only (--unrestricted)
# doesn't work if GRUB_BTRFS_PROTECTION_AUTHORIZED_USERS isn't empty
# Default: "false"
#GRUB_BTRFS_DISABLE_PROTECTION_SUBMENU="true"
# This config file imports drop-in files from /etc/default/grub-btrfs/config.d/.
for garuda_grub_btrfs_d in ${sysconfdir}/default/grub-btrfs/config.d/*.cfg ; do if [ -e "${garuda_grub_btrfs_d}" ]; then source "${garuda_grub_btrfs_d}"; fi; done
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ
It would appear that line added itself without me doing anything.
╭─fenris@fenris in ~ as 🧙 took 0s
╰─λ sudo update-grub
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/garuda/theme.txt
Found linux image: /boot/vmlinuz-linux-znver5
Found initrd image: /boot/initramfs-linux-znver5.img
Found fallback initrd image(s) in /boot: initramfs-linux-znver5-fallback.img
Found linux image: /boot/vmlinuz-linux-znver4
Found initrd image: /boot/initramfs-linux-znver4.img
Found fallback initrd image(s) in /boot: initramfs-linux-znver4-fallback.img
Found linux image: /boot/vmlinuz-linux-znver3
Found initrd image: /boot/initramfs-linux-znver3.img
Found fallback initrd image(s) in /boot: initramfs-linux-znver3-fallback.img
Found linux image: /boot/vmlinuz-linux-znver2
Found initrd image: /boot/initramfs-linux-znver2.img
Found fallback initrd image(s) in /boot: initramfs-linux-znver2-fallback.img
Found linux image: /boot/vmlinuz-linux-zen
Found initrd image: /boot/initramfs-linux-zen.img
Found fallback initrd image(s) in /boot: initramfs-linux-zen-fallback.img
Found linux image: /boot/vmlinuz-linux-lts
Found initrd image: /boot/initramfs-linux-lts.img
Found fallback initrd image(s) in /boot: initramfs-linux-lts-fallback.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Adding boot menu entry for UEFI Firmware Settings ...
Detecting snapshots ...
Found snapshot: 2025-11-29 00:00:00 | @/.snapshots/4127/snapshot | single | timeline |
Found snapshot: 2025-11-28 23:00:00 | @/.snapshots/4126/snapshot | single | timeline |
Found snapshot: 2025-11-28 22:00:00 | @/.snapshots/4125/snapshot | single | timeline |
Found snapshot: 2025-11-28 21:42:51 | @/.snapshots/4124/snapshot | post | gspell python-fonttools python-inflate64 yay zlib-ng |
Found snapshot: 2025-11-28 21:42:48 | @/.snapshots/4123/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-28 21:00:01 | @/.snapshots/4122/snapshot | single | timeline |
Found snapshot: 2025-11-28 20:00:00 | @/.snapshots/4121/snapshot | single | timeline |
Found snapshot: 2025-11-28 19:00:00 | @/.snapshots/4120/snapshot | single | timeline |
Found snapshot: 2025-11-28 00:00:00 | @/.snapshots/4101/snapshot | single | timeline |
Found snapshot: 2025-11-27 19:21:28 | @/.snapshots/4096/snapshot | post | amd-ucode cups lib32-libcups libcups libxslt linux-firmware linux-firmwa |
Found snapshot: 2025-11-27 19:17:31 | @/.snapshots/4095/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-27 11:18:23 | @/.snapshots/4086/snapshot | post | android-tools evolution-data-server keepassxc kicad libphonenumber libvl |
Found snapshot: 2025-11-27 11:18:04 | @/.snapshots/4085/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-27 08:10:36 | @/.snapshots/4081/snapshot | post | calibre electron38 libnice pyside6 python-gmpy2 python-pyqt6 qt6-5compat |
Found snapshot: 2025-11-27 08:10:05 | @/.snapshots/4080/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-27 00:00:00 | @/.snapshots/4071/snapshot | single | timeline |
Found snapshot: 2025-11-26 22:22:44 | @/.snapshots/4069/snapshot | post | gpu-screen-recorder-git inxi lib32-libnghttp3 lib32-v4l-utils libnghttp3 |
Found snapshot: 2025-11-26 22:22:36 | @/.snapshots/4068/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-26 09:42:10 | @/.snapshots/4054/snapshot | post | octave-quaternion |
Found snapshot: 2025-11-26 09:42:06 | @/.snapshots/4053/snapshot | pre | pacman --upgrade --noconfirm -- /home/fenris/.cache/paru/clone/octave-qu |
Found snapshot: 2025-11-26 00:00:00 | @/.snapshots/4043/snapshot | single | timeline |
Found snapshot: 2025-11-25 23:29:23 | @/.snapshots/4042/snapshot | post | python-gbinder waydroid youtube-dl-git |
Found snapshot: 2025-11-25 23:29:13 | @/.snapshots/4041/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-25 23:13:45 | @/.snapshots/4040/snapshot | post | trezor-suite-appimage |
Found snapshot: 2025-11-25 23:13:41 | @/.snapshots/4039/snapshot | pre | pacman --upgrade --noconfirm -- /home/fenris/.cache/paru/clone/trezor-su |
Found snapshot: 2025-11-25 17:52:18 | @/.snapshots/4032/snapshot | post | brltty gpu-screen-recorder-git linux-zen linux-zen-headers nodejs-lts-ir |
Found snapshot: 2025-11-25 17:48:21 | @/.snapshots/4031/snapshot | pre | pacman -Su |
Found snapshot: 2025-11-25 00:00:00 | @/.snapshots/4007/snapshot | single | timeline |
Found snapshot: 2025-11-24 00:00:01 | @/.snapshots/3973/snapshot | single | timeline |
Found snapshot: 2025-11-23 00:00:00 | @/.snapshots/3945/snapshot | single | timeline |
Found snapshot: 2025-11-22 00:00:00 | @/.snapshots/3913/snapshot | single | timeline |
Found snapshot: 2025-08-05 10:31:04 | @root/(5-Aug-2025-Backup) | N/A | N/A |
Generated 376 total GRUB entries. You might experience issues loading snapshots menu in GRUB.
Found 32 snapshot(s)
Unmount /tmp/grub-btrfs.QnFwu6iRE4 .. Success
Found memtest86+ image: /boot/memtest86+/memtest.bin
done
╭─fenris@fenris in ~ as 🧙 took 6s
╰─λ
When I do my updates, I type in the following command sudo rm -rf /var/lib/pacman/db.lck && garuda-update --aur --noconfirm is this what you mean by deleting the database lock?
Now there are duplicates, and C.UTF-8 UTF-8 is still missing. Please check the beginning of each line, ensure they are all commented ( # ). Then add the following at the end and run sudo locale-gen, hopefully for a final time:
In this case, that command (without the r) is the answer, however it should NOT be something you are running regularly to update! The lock file is there as a safety measure, and deleting it removes the safety for no good reason. It is leftover only when pacman is interrupted, or it’s indicating a conflicting process from an active transaction. If it exists then you need to find out why and not blindly delete it if this happens in the future. Running concurrent pacman transactions is not allowed intentionally because things can and will eventually break, see pacman - ArchWiki for more details.
Please remove the lock and then rerun garuda-update --aur
╭─fenris@fenris in ~ as 🧙 took 33s
╰─λ sudo locale-gen
Generating locales...
en_CA.UTF-8... done
C.UTF-8... done
Generation complete.
╭─fenris@fenris in ~ as 🧙 took 2s
╰─λ garuda-update --aur
:: Synchronizing package databases...
garuda is up to date
core is up to date
extra 8.0 MiB 524 KiB/s 00:16 [----------------------] 100%
multilib is up to date
chaotic-aur 647.7 KiB 279 KiB/s 00:02 [----------------------] 100%
--> Refreshing mirrorlists using rate-mirrors, please be patient..🍵
:: Synchronizing package databases...
error: failed to synchronize all databases (unable to lock database)
spawn pacman -Su -yy
:: Synchronizing package databases...
error: failed to synchronize all databases (unable to lock database)
╭─fenris@fenris in ~ as 🧙 took 58s
[🔴] ×