Check and manage pacnew files

Hello,
I noticed that many people don’t know about pacnew files or at least don’t pay attention to their creation during the upgrade phase. To help even those who don’t pay attention, I created a bash script with yad GUI that simulates pacdiff actions.

The program runs in the background and opens when new pacdiff files are found. Maybe it won’t be the best approach but if anyone has other ideas they are welcome.

for contributions

https://packages.manjaro.org/?query=manjaro-pacnew-checker

Enjoy and regards

Stefano

22 Likes
Pacnew automation
A general question about updates
[Unstable Update] 2023-05-21 - Repository changes
Installing icu (73.2-2) breaks dependency 'icu<72.2' required by manjaro-setting
[Testing Update] 2025-08-10 - Linux-Firmware, Gstreamer, KDE Framework
[Stable Update] 2024-02-21 - Kernels, KDE, VirtualBox, Calamares, ROCm, Firefox, Thunderbird
[Stable Update] 2023-12-01 - Kernels, NVIDIA, Thunderbird, Deepin, PipeWire 1.0, QEMU
[Testing Update] 2025-12-29 - Mesa, NVIDIA 590xx, Firefox, LibreOffice, Gstreamer
Pacnew/Pacsave hook issues
Manjaro MATE 1.28.2 Fehler beim Update
[Stable Updates] 2024-12-16 - Kernels, Cinnamon, Deepin, Cosmic, Mauikit, ZFS
[Stable Update] 2025-05-04 - Kernels, GNOME 48.1, NVIDIA, KDE Gear, KDE Frameworks, LXQt
[Testing Update] 2026-01-01 - Wireplumber, NVIDIA Driver Assistant, ALSA
[Stable Update] 2023-11-28 - Kernels, Firefox, Appstream 1.0, Blender 4.0, Cinnamon
[Testing Update] 2023-09-06 - Kernels, PipeWire
[Testing Update] 2025-01-15 - Kernels, KDE Frameworks, Calamares, Cosmic, Firefox, Gambas, Steam
[Testing Update] 2024-11-24 - Kernels, Calamares, Thunderbird, GNOME, Deepin
[Testing Update] 2023-11-29 - Kernels, Nvidia, libxml2, Thunderbird, Deepin, Pipewire 1.0, Qemu
[Stable Update] 2023-12-10 - Kernels, Plasma, Phosh, Systemd, Cinnamon, Gnome, libpamac
[Testing Update] 2025-07-19 - Kernels, Mesa, Thunderbird, Grub, Perl, Vulkan
Pacnew Feature Request
[Testing Update] 2025-06-14 - Firefox, Thunderbird, Login_NG, Erlang, Yoshimi
[Testing Update] 2023-11-10 - Kernels, KDE Gear, NVIDIA, LibreOffice, LXQt, PipeWire, Phosh
How do I completely re-install PAM security?
[Testing Update] 2024-08-04 - Kernels, Nvidia, Mesa, AMDVLK, Firefox, Thunderbird, Pipewire, Wine
[Stable Update] 2025-07-12 - Kernels, Systemd, GNOME, NVIDIA, Plasma, Firefox, VLC splits
[Testing Update] 2025-05-06 - Kernels, Firefox, Thunderbird, Mesa, Pamac, GTK, Wine
[Testing Update] 2023-10-21 - Kernels, GNOME 45, VirtualBox, KDE, Thunderbird
[Stable Update] 2024-10-10 - Kernels, Pacman 7.0, KDE Frameworks 6.6, Virtualbox 7.1.2, Mesa
Confusion about manjaro-pacnew-checker
Attempting to open folders crashes nautilus
[Testing Update] 2024-11-25 - Kernels, Qt5, ROCM, Deepin, Gnome
Why all these questions in the package manager asking if I want to keep the old instead of the new?
[Stable Update] 2025-09-26 - Kernels, NVIDIA, Systemd, LibreOffice, KDE Software
[Testing Update] 2025-05-15 - KDE Gear, KDE Frameworks, Firefox, GStreamer, LibreOffice
[Testing Update] 2025-01-18 - Kernels, Cosmic, Deepin, Haskell
[Testing Update] 2023-12-04 - Kernels, Systemd, GNOME 45.2, LibPamac, ZFS, LibreOffice, Maui
[Stable Update] 2024-03-06 - Kernels, Systemd, KDE Gear, Qt, GNOME, Firefox, Thunderbird
[Testing Update] 2023-09-11 - Kernels, Systemd 254.3, Mesa 23.1.7, Phosh, Phoc, LibreOffice
[Stable Update] 2023-12-13 - Kernels, Blender, KDE Gear, Pamac 11.7, Python, Haskell
[Testing Update] 2023-12-08 - Kernels, KDE Gear, LibreOffice
[Testing Update] 2024-12-11 - Kernels, Cinnamon, GNOME, Powerstation, Cosmic, Mauikit, Mesa
[Testing Update] 2026-01-03 - COSMIC 1.0.1, Budgie, NVIDIA-Driver-Assistant
[Stable Update] 2025-03-30 - Kernels, GNOME 48, Mesa, Plymouth, LibreOffice
[Testing Update] 2025-10-07 - Kernels, Firefox, Nvidia, Wine, Erlang
[Testing Update] 2023-12-10 - Kernels, KDE Gear, Pamac 11.7, KDE-git, Python
[Testing Update] 2023-09-15 - Kernels, KDE Gear, LibreOffice 7.6.1, Firefox
[Stable Update] 2024-05-29 - Kernels, Plasma 6.0.5, GNOME 46.2, Mesa
[Testing Update] 2023-09-27 - Kernels, Thunderbird, Firefox, LibreOffice
[Testing Update] 2023-09-22 - Kernels, NVIDIA, Mesa, GNOME
[Testing Update] 2023-09-16 - KIO, Pipewire, Thunderbird, KDE-Git, Haskell
[Testing Update] 2023-09-13 - Kernels, KDE Frameworks, Plasma, KDE-Git
[Stable Update] 2023-09-18 - Kernels, Mesa, Pipewire, Systemd, LibreOffice, KDE, Thunderbird
[Testing Update] 2025-01-27 - Last Update of the year - libpamac, pamac-cli, libnfs
[Testing Update] 2025-07-15 - Kernels, KDE Frameworks, NetworkManager, Poppler, UMU
[Testing Update] 2023-09-30 - Systemd, Firefox, LibreOffice, AMDVLK
[Testing Update] 2024-12-17 - Kernels, Thunderbird, KDE Gear, KDE Frameworks, Powerstation
[Testing Update] 2023-10-30 - Kernel 6.6, Linux-Firmware, KDE-Git, Python
[Stable Update] 2023-10-04 - Kernels, Systemd, LibreOffice, NVIDIA, Mesa, GNOME, AMDVLK
[Testing Update] 2025-03-30 - Kernels, Qt 6.8.3, Umu-Launcher, Haskell, Python
[Testing Update] 2023-10-05 - Mesa, KDE Frameworks, Grub, GlibC, Thunderbird
[Testing Update] 2025-05-09 - Kernels, Plasma 6.3.5, Grub, Qemu 10.0
[Testing Update] 2023-10-28 - Thunderbird, Chromium, KDE-Git, Haskell
[Stable Update] 2023-10-09 - Mesa, Grub, GlibC, Thunderbird, KDE Frameworks Renaming
[Testing Update] 2025-11-17 - Kernel 6.18-rc6, Thunderbird 145.0, COSMIC Beta 6
[Testing Update] 2023-10-25 - Kernels, GNOME 45.1, Firefox 119.0, Plasma 5.27.9
Zsh prompt / powerline not by default
[Testing Update] 2023-10-11 - Pipewire, Mattermost, Qt5, Haskell, Python
[Stable Update] 2023-10-13 - Pipewire, Mattermost, Qt5, Haskell, Python
[Testing Update] 2023-10-26 - Kernels, AMDVLK, Plasma, KDE-Git
[Testing Update] 2023-11-22 - Kernels, Firefox, Appstream 1.0, Blender 4.0, Cinnamon 6.0
Manjaro-pacnew-checker: Help to understand /etc/mkinitcpio.conf.pacnew
[Stable Update] 2023-11-13 - Kernels, KDE Gear, LibreOffice, LXQt, Pipewire, Phosh, Firefox, Thunderbird
[Testing Update] 2023-12-05 - Kernels, KDE Plasma, Gamescope-Plus, TuxClocker
[Testing Update] 2023-11-13 - Systemd, KDE Frameworks, Wine, Gamescope-Plus, HandyGCCS
[Testing Update] 2023-11-17 - Pipewire, KDE-git, Haskell, Python, Thunderbird
[Stable Update] 2023-11-21 - Systemd, Gamescope-Plus, KDE Frameworks, Wine, Pipewire, Thunderbird
Kernel 6.8.5-1 not booting properly
[Stable Update] 2023-12-15 - Kernels, Blender, Thunderbird, Xorg-Server, Xwayland, Warzone2100
[Stable Update] 2025-08-29 - Kernels, Toolchain, Virtualbox, Mesa, Wine, ZFS
Gnome broken after pamac update Oct 3
[Stable Update] 2026-01-04 - Manjaro 26.0, Mesa, Firefox, LibreOffice, COSMIC
[Stable Update] 2023-12-23 - Kernels, Grub, Mate, Deepin, Cinnamon, ICU, KDE Frameworks
[Stable Update] 2025-05-14 - Kernels, Firefox, Thunderbird, Mesa, Plasma, LibreOffice, QEMU
[Stable Update] 2025-07-20 - Kernels, Mesa, Thunderbird, LibreOffice, Perl, Vulkan
[Stable Update] 2025-07-18 - Kernels, UMU, KDE Frameworks, NetworkManager
[Stable Update] 2024-01-02 - Kernels, Systemd, Qemu, Plasma-Mobile, Deepin
[Testing Update] 2025-03-28 - Kernels, LibreOffice, Firefox
[Testing Update] 2024-12-13 - Firefox, ZFS 2.2.7, Powerstation
[Stable Update] 2024-02-21 - Kernels, KDE, VirtualBox, Calamares, ROCm, Firefox, Thunderbird
[Stable Update] 2024-08-20 - Kernels, Mesa, COSMIC, GNOME, Phosh, OGUI
Manjaro pacnew checker would not detect all pacnew files
[Testing Update] 2024-10-10 - Plasma 6.2, Gnome 47, Mesa, Firefox
[Testing Update] 2025-02-17 - Kernels, Plasma 6.3, KDE Frameworks 6.11, Systemd, LibreOffice 25.2
[Stable Update] 2024-11-30 - Kernels, Plasma, GNOME, COSMIC, LXQT, SYSTEMD
Pamac eating all the RAM
Manjaro pacnew checker would not detect all pacnew files
Failing to update packages due to some cryptic package conflict
[Testing Update] 2025-01-25 - Kernels, Deepin, Firefox, VirtualBox, Mesa
[Testing Update] 2025-03-12 - Kernels, Plasma 6.3.3, KDE Gear, Firefox, Thunderbird, Pipewire 1.4
[Stable Update] 2024-07-16 - Kernels, Firefox, Thunderbird, Nvidia, Systemd, LibreOffice
Error: file '/grub/i386-pc/normal.mod' not found
I would like to install version LibreOffice 24.2.4
[Unstable Update] May 2024 Edition
[Testing Update] 2024-07-14 - Kernels, Nvidia DOWNGRADE, Firefox, LibreOffice, Pipewire
[Testing Update] 2024-08-26 - Kernels, Systemd, Firefox, LibreOffice, Pipewire
[Stable Update] 2024-07-29 - Kernels, Virtualbox, Wine, KDE Frameworks
It's a necessary hassle
[Stable Update] 2024-09-02 - Kernels, Pipewire, Systemd, LibreOffice, OGUI, Inputplumber, Firefox
[Testing Update] 2024-12-23 - Kernels, XFCE, Systemd, OpenGamepadUI, Xorg-Server, Python 3.13
[Testing Update] 2025-03-20 - Kernels, Mesa 25.0.1, Frameworks 6.12, Pipewire 1.4.1
[Testing Update] 2024-10-15 - Kernels, KDE Gear, KDE Frameworks, Firefox, Thunderbird, Pamac
[Testing Update] 2024-09-07 - Plasma 6.1.4, KDE Gear 24.08, Mauikit 4.0, Mesa 24.2.2
[Testing Update] 2024-10-20 - Kernels, Gnome 47.1, Mesa 24.2.5
[Testing Update] 2026-01-09 - Kernels, KDE Gear 25.12.1, Mesa 25.3.3, Haskell
[Testing Update] 2024-10-23 - Kernels, QEMU, Thunderbird, NVIDIA
[Testing Update] 2024-09-13 - Kernel, Qemu, Systemd, Plasma, KDE Gear, Virtualbox
[Testing Update] 2024-10-16 - Virtualbox, Blender, Plasma 6.2.1, OpenSearch
[Testing Update] 2024-10-24 - Plasma, DKMS, Gitlab, Signal
[Stable Update] 2024-12-06 - Systemd, Qt 6.8.1, Mesa, Gstreamer, Wireplumber
[Testing Update] 2025-04-21 - Kernels, GNOME 48.1, NVIDIA 570.144, KDE Gear 25.04, Mesa
[Testing Update] 2024-11-01 - Kernels, LibreOffice, Pamac, Pipewire, Mesa
[Testing Update] 2024-11-06 - Kernel 6.12-rc6, Plasma 6.2.3, Bluez 5.79, Cosmic 1.0 Alpha 3
[Testing Update] 2024-12-05 - Gstreamer, Pamac, BoxBuddy, Deepin
[Stable Update] 2025-02-04 - Kernels, KDE, XFCE, Mesa, Cosmic, Systemd
[Testing Update] 2025-05-17 - Kernel 6.15-rc6, Gitlab, Thunderbird
[Testing Update] 2024-11-13 - Kernels, Calamares, MHWD, KDE Gear, Firefox, Thunderbird
[Testing Update] 2024-12-04 - Systemd, Mesa, Qt 6.8.1, Wireplumber
[Testing Update] 2024-11-16 - Kernels, Mesa, Systemd, LxQt 2.1, Libreoffice
[Testing Update] 2025-02-07 - KDE Gear, InptutPlumber, OGUI, Nginx, Curl
[Testing Update] 2025-07-24 - Kernels, Firefox, Nvidia, 0ad
[Testing Update] 2024-02-05 - Kernels, Toolchain, GNOME, Deepin, Firefox, Thunderbird
[Testing Update] 2025-01-04 - Kernels, Plasma 6.2.5, LibreOffice, Qemu
[Stable Update] 2025-03-18 - Kernel, Systemd, Plasma 6.3.3, KDE Gear 24.12.3
[Stable Update] 2025-03-24 - NVIDIA, PipeWire, Mesa, Firefox, Thunderbird, KDE Frameworks
[Testing Update] 2025-02-19 - Kernels, Plasma 6.3.1, Firefox
[Testing Update] 2025-11-14 - Kernels, GStreamer, Firefox, Mesa, LibreOffice, Vivaldi
[Testing Update] 2025-03-26 - Kernels, GNOME 48, Mesa 25.0.2, Firefox, Grub, Plymouth
[Testing Update] 2025-03-01 - Kernels, Plasma 6.3.2, Cosmic, LibreOffice, Thunderbird
Community Repository Error
Lenovo Ideapad Flex 5i -- No Key to turn on Wifi
[Stable Update] 2025-03-05 - Kernels, Plasma 6.3, COSMIC Alpha 6, LibreOffice
Need to use update pamac command twice because waiting for another package manager
Can´t sync (-y) from my mirrors despite pacman-mirrors saying it's OK
Cannot update packages
[Testing Update] 2025-06-01 - Kernels, Firefox, Thunderbird, NVIDIA, Mesa, PipeWire
[Stable Update] 2025-05-19 - Firefox, Thunderbird, KDE Gear, KDE Frameworks
[Testing Updates] 2025-04-07 - RT-Kernels, Wine, Thunderbird
[Testing Updates] 2025-06-05 - Kernels, VirtualBox, Bluez, PipeWire, Qt6, Mesa, Thunderbird
[Testing Update] 2024-10-02 - Kernels, KDE Frameworks, Pacman 7.0, VirtualBox 7.1.2, Firefox
[Testing Update] 2025-05-20 - Kernels, Firefox, NVIDIA
Update error: removing lib32-expat breaks dependency
[Testing Update] 2025-07-26 - Portmaster, Plymouth, Pipewire, Thunderbird
[Testing Update] 2025-04-27 - Kernels, LXQt 2.2, Thunderbird 137.0.2, COSMIC Alpha 7
[Testing Updates] 2025-06-11 - Kernels, Mesa, KDE Gear, LibreOffice, AMD ROCm
[Testing Update] 2025-06-19 - KDE Frameworks, Nvidia, Pamac, Xorg, Wine
[Testing Update] 2025-06-20 - Kernels, Mesa, Steam, OpenGamepadUI, ZFS
[Stable Update] 2025-06-23 - Kernels, KDE, NVIDIA, Pamac, Wine, VirtualBox, PipeWire, Qt6
[Testing Update] 2024-08-16/18 - Kernels, KDE Frameworks, Mesa, Cosmic, GNOME, Phosh
[Testing Update] 2024-07-23 - Kernels, KDE Frameworks
[Testing Update] 2025-07-03 - Kernels, Linux-Firmware, Systemd, NVIDIA, Firefox, GStreamer
[Testing Update] 2025-07-06 - Kernels, KDE Gear, Mesa
[Testing Update] 2025-08-04 - Kernels, Toolchain, Blender, Mesa, Ollama
[Stable Update] 2025-08-11 - Kernels, Mesa, KDE Frameworks, Systemd
[Testing Update] 2025-10-20 - Kernels, Systemd, GNOME, Certbot, Deepin, Firefox
[Testing Updates] 2025-08-15 - Kernels, NVIDIA, VirtualBox, GCC, InputPlumber
[Stable Update] 2026-01-13 - Kernels, KDE Gear 25.12.1, Haskell, Mesa
[Testing Update] 2025-08-16 - KDE Gear, Wine, Xfce, Python, Haskell
[Testing Update] 2025-10-21 - Mesa, Firefox-Beta, Rebuilds
[Testing Update] 2025-08-24 - Kernels, Firefox, Mesa, LibreOffice
[Testing Updates] 2025-08-26 - Kernels, ZFS, Deepin, Python, Haskell
[Testing Update] 2025-08-29 - Kernels, Nvidia, Firefox, php, rocM, Steam
[Stable Update] 2025-08-30 - Kernels, ROCm, Firefox, Steam, PHP
[Testing Update] 2025-09-03 - Qemu, Nvidia, Deepin, Ollama, Virtualbox
[Testing Update] 2025-08-31 - Mesa, LibreOffice, Qt 6.9.2, ROCm
[Testing Update] 2025-09-02 - Kernels, Wine, Haskell, Python
[Testing Update] 2025-11-06 - Kernels, Mesa, Grub, Nvidia, Plasma 6.5, LibreOffice
[Testing Update] 2025-09-10 - Kernels, Systemd, LibreOffice, Thunderbird, Deepin
[Testing Update] 2025-09-20 - Kernels, Mesa, Firefox, Deepin, Gstreamer
[Testing Update] 2025-11-10 - Kernels, Systemd, Mkinitcpio, KDE Gear, Plasma
[Testing Update] 2025-09-27 - Kernels, Plasma 6.4.5, GNOME 49.0, Cosmic 1.0b1
[Testing Update] 2025-09-29 - Kernel 6.17, Deepin, Yoshimi, Haskell, Python
[Testing Update] 2025-11-19 - Plasma 6.5.3, KDE Frameworks 6.20.0, Firefox 145.0.1
[Testing Update] 2026-01-26 - Kernels, Mesa, Thunderbird, COSMIC, PipeWire, QEMU
[Testing Update] 2025-12-02 - Kernels, Pamac, COSMIC, GStreamer, Python
[Testing Update] 2026-01-28 - Cinnamon, Plasma, Fonts
[Testing Update] 2025-01-10 - Kernels, Firefox, Gnome, Systemd, Mesa, KDE Gear
[Stable Update] 2025-12-08 - 25.1 Anh-Linh Preview
[Testing Update] 2025-11-27 - Firmware, GNOME, Xorg, Firefox, Qt, ROCm
[Testing Update] 2025-11-24 - Kernels, COSMIC Beta 7, GRUB, NVIDIA, Blender, LXQt
[Testing Update] 2025-12-09 - Plasma 6.5.4, Firefox, Deepin, Python, Haskell
[Testing Update] 2025-10-13 - Kernels, Qt 6.10, KDE Frameworks & Gear
[Testing Update] 2026-01-18 - Kernels, Python 3.14, KDE Frameworks, Plasma, GNOME, GRUB
[Testing Update] 2025-09-18 - Kernels, NVIDIA, PipeWire, KDE Gear & Frameworks
[Testing Update] 2025-08-07 - Systemd, Heroic Games Launcher, OpenGamepadUI
[Stable Update] 2025-12-15 - Kernels, NVIDIA, Plasma, Cosmic, Firefox
[Testing Update] 2025-07-30 - QEmu, Firefox Beta, Tuxedo Drivers, Slimbook Service
[Testing Update] 2026-01-31 - Kernels, Firefox, COSMIC
[Testing Update] 2025-12-13 - KDE Gear, Cosmic 1, NVIDIA
[Testing Update] 2025-12-18 - Kernels, Systemd, Cinnamon, Pacman, Vulkan-SDK
[Stable Update] 2026-02-01 - Kernels, COSMIC, Plasma, GNOME, Mesa
[Stable Update] 2025-04-12 - Kernels, Plasma, Systemd, Mesa, Grub, Wine
[Stable Update] 2025-12-22 - Kernels, Cinnamon, KDE Frameworks, Pacman
[Testing Update] 2025-04-05 - Systemd, Bluez, Plasma, Firefox, Thunderbird, QEMU, Qt6, Mesa
[Testing Update] 2026-02-08 - Kernels, KDE Gear, COSMIC, Systemd, Qt6, LibreOffice
[Testing Update] 2026-02-09 - Kernel 6.19, Mesa 25.3.5, Wine 11.2
[Testing Update] 2026-02-13 - Kernels, BinUtils, COSMIC 1.0.6
[Testing Update] 2026-02-18 - Kernels, KDE Frameworks, GNOME, GStreamer
[Stable Update] 2026-02-23 - Kernels, Mesa, Wine, Cosmic, GNOME, KDE Frameworks
[Testing Update] 2025-12-07 - Kernels, COSMIC, Mesa, ROCm, Gambas
[Testing Update] 2025-07-10 - Kernels, Thunderbird, Firefox, OpenSearch, QEMU, VLC splits
[Stable Update] 2025-02-16 - Kernels, Firefox, Qt, KDE Gear, GNOME
[Testing Update] 2024-11-18 - Kernels, UMU-Launcher, python, haskell
[Stable Update] 2025-03-05 - Kernels, Plasma 6.3, COSMIC Alpha 6, LibreOffice
[Testing Update] 2025-10-03 - Kernels, Mesa, Firefox, Deepin
[Stable Update] 2024-08-08 - Kernels, Nvidia, Mesa, AMDVLK, Firefox, Thunderbird, Pipewire, Wine
Pamac feature request: option output to log file
[Stable Update] 2024-10-01 - Kernels, Plasma 6.1.5, KDE Gear 24.08.1, LibreOffice, Virtualbox 7.1
[Stable Update] 2023-11-06 - Kernels, Gnome 45.1, Plasma 5.27.9, Firefox, Thunderbird, Pipewire
[Stable Update] 2024-01-13 - Kernels, Systemd, Qt5, Mesa, Dbus, Firefox, Thunderbird
[Stable Update] 2024-03-13 - Plasma 5.27.11, Firefox, Thunderbird, AMDVLK, Qemu

I would’ve suggested adding it to a pacman hook…

1 Like

I can’t… this is already suggested by @Yochanan in our private chat but for security reason, i can’t open a GUI during the upgrade via pacman hooks because it is open at the root level. This script runs in background and checks any 10’ . This is only a starter, we can always do better.

Makes kind of sense yes. Although I’m sure there is a way…let me think…

Edit:

I’m guessing it won’t work to run it with sudo -u?

$ manly sudo -u

sudo, sudoedit — execute a command as another user
==================================================

-u user, --user=user
Run the command as a user other than the  default  target  user
(usually  root).   The  user may be either a user name or a nu‐
meric user-ID (UID) prefixed with the ‘#’ character (e.g., ‘#0’
for UID 0).  When running commands as a UID,  many  shells  re‐
quire that the ‘#’ be escaped with a backslash (‘\’).  Some se‐
curity  policies may restrict UIDs to those listed in the pass‐
word database.  The sudoers policy allows UIDs that are not  in
the  password  database  as  long as the targetpw option is not
set.  Other security policies may not support this.

I know the -u switch but for pass the password i need to open a CLI. I use pkexec instead

There is definitely the need of it for new users, that only click on “apply” in pamac and don’t read the log. We have the Manjaro Notifier to notify for unsupported kernels, pacnews are just as important as we saw with the removal of the extra repo. So for me this actually belong there in the long run. On the short term i think this should be shipped and enabled by default on new installs. Even if it is only in english for now.

We actually discussed it recently here

Congratulations for the script, if looks very nice. My 2-3 cents @Ste74 when i look at the source:

  • isn’t 10 minutes a bit too frequently and waste of CPU? At least make it an hour or so?
  • meld and yad are not installed by default, i hope you marked them as dependencies (cannot check my mirrors seem not to be updated yet)
  • you have a tiny spelling error #Cicla / #Circle
5 Likes

Great work!

From the screenshot I already have a few suggestion if you don’t mind.

You probably should add safeguards for some of the configuration files, I’m thinking about the /etc/shadow config file or some similar critical system files that should not be overwritten without knowing the consequences.
Maybe add a group of hard-coded files, some sort of list that could be expanded in the future, that will not be treated the same way, so it is safer for the normal user who usually click “next next next” (maybe remove or change options available).

The “conflict” term is a bit strong to my taste but I guess this is a whole discussion for a point of detail in the end.

5 Likes

So the idea is this should be running always and relies on that sleep loop?
Why not use systemd+timer ?

Also … why does it specifically ignore pacsaves? They can be important too.

More typos also:

# The user has chosen to opening the diff files.

(better would be “The user has chosen to open the diff files”
except … they arent diff files … so its somewhat misleading.
A bit like the next text issue:

Management of configuration conflicts completed.

There arent really conflicts.

Oh, and, it should be mentioned that the admin:* bit you are using in meld is a function of gvfs … so that would need to be a depend too.
( I would know … because this approach is directly lifted from my fork I shared here :wink: )

2 Likes

Thank you, yep i need to increase the time and my english is not my best…

1 Like

Was my first attempt but yad can be called from a systemd service? Is an admin ( root ) service right ?
Right pacsave can be managed also… and yes my english is bad :zipper_mouth_face:

First - systemd user units exist … and second - theres nothing saying you cant use sudo -U
(remember sudo is not equivalent to “super user do” it is more equivalent to “do as” … and that can be any user)

EDIT

And heres some more food for thought.
Sorry for the tome … it looks bigger than it is because of quotations. :sweat_smile:

I should clarify again that pacdiff -s accomplishes this already quite well, which is why I eventually considered the fork unnecessary.

While somewhat less than intuitive … the ‘view’ option of pacdiff indeed works as ‘view and edit’, while -s is not simply ‘pass sudo’ … its rather sudoedit … meaning it handles permissions properly and is acting on temporary files and uses sudo afterwards to apply changes.

man pacdiff
[...]
       -s, --sudo
           Use sudo and sudoedit to merge/remove files.
[...]
[...]
       -e, --edit
               Edit  one  or more files instead of running a command.  In lieu of a path name, the string "sudoedit" is used when consulting the security policy.  If the user is autho‐
               rized by the policy, the following steps are taken:

               1.   Temporary copies are made of the files to be edited with the owner set to the invoking user.

               2.   The editor specified by the policy is run to edit the temporary files.  The sudoers policy uses the SUDO_EDITOR, VISUAL and EDITOR environment  variables  (in  that
                    order).  If none of SUDO_EDITOR, VISUAL or EDITOR are set, the first program listed in the editor sudoers(5) option is used.

               3.   If they have been modified, the temporary files are copied back to their original location and the temporary versions are removed.

               To help prevent the editing of unauthorized files, the following restrictions are enforced unless explicitly allowed by the security policy:

                •  Symbolic links may not be edited (version 1.8.15 and higher).

                •  Symbolic  links  along the path to be edited are not followed when the parent directory is writable by the invoking user unless that user is root (version 1.8.16 and
                   higher).

                •  Files located in a directory that is writable by the invoking user may not be edited unless that user is root (version 1.8.16 and higher).

               Users are never allowed to edit device special files.

               If the specified file does not exist, it will be created.  Unlike most commands run by sudo, the editor is run with the invoking user's environment unmodified.   If  the
               temporary  file becomes empty after editing, the user will be prompted before it is installed.  If, for some reason, sudo is unable to update a file with its edited ver‐
               sion, the user will receive a warning and the edited copy will remain in a temporary file.
[...]

…meaning … that there is not a reason to make all of these extra functions.
If you need/want to add yad or other graphical notifications and/or buttons then go for it.
But pacdiff -s alone will handle all of the pacnew/pacsave and permissions and editing and so on … so long as DIFFPROG is set to whatever your preferred editor is. If set to meld … then pacdiff -s will do what this utility does, but better (just without the graphical prompts) … so I humbly suggest you revisit this with these things in mind …
Once again:
yad = ok
circumventing pacdiff for no good reason = less ok

2 Likes

I try to run this function after a big update, and handle the pacnew files then.
But at the moment, I don’t understand how to exclude path’s out of a find command.

pacnew() {

    sudo find / -iname '*.pacnew' -type f -print -not -path '/run/*'

    # todo try to exclude path's
    # sudo find / -iname '*.pacnew' -type f -not -path '/proc/*' -not -path '/run/*' -not -path '/timeshift/*' -not -path '/var/log/*' -not -path '.config/VSCodium/' -not -path '/timeshift/*' -print
}
find / -type f -name "*.pacnew" ! -path "/proc/*" ! -path "/run/*" 2>/dev/null

(I cant seem to force find to not look at /run/user/1000/ either)

Ah here we go:

sudo find / \( -path /proc -o -path /run -o -path /tmp \) -prune -o -type f -regex ".*\.pac\(new\|save\|orig\)" -print

and a bit smaller with regex:

sudo find / -regex /"\(proc\|tmp\|run\)" -prune -o -type f -regex ".*\.pac\(new\|save\|orig\)" -print

(added pacsave and pacorig too)

yes. its the tool for the job, but for some reason people avoid it.

1 Like

If you just want to list them wouldn’t pacdiff -o be a lot easier?

1 Like

That’s what Stefano is using. The find function question seems to be another project.

Sure, it would still just be great to know a universal method where I can use on different stuff aswell.

If you’re using pacdiff, then you’ve also got paclog installed too:

paclog --after=2023-07-01|paclog --warnings
[2023-07-29T02:20:59-0400] [ALPM] warning: directory permissions differ on /etc/credstore/
filesystem: 0  package: 700
[2023-07-29T02:20:59-0400] [ALPM] warning: directory permissions differ on /etc/credstore.encrypted/
filesystem: 0  package: 700
[2023-08-07T11:42:19-0400] [ALPM-SCRIPTLET] error: No package owns /usr/lib/perl5/5.36
[2023-08-08T22:40:27-0400] [ALPM] warning: directory permissions differ on /boot/
filesystem: 700  package: 755
[2023-08-11T12:14:07-0400] [ALPM] warning: /etc/ssh/sshd_config installed as /etc/ssh/sshd_config.pacnew
[2023-08-23T20:10:05-0400] [ALPM] warning: /etc/pacman.d/mirrorlist installed as /etc/pacman.d/mirrorlist.pacnew

:man_shrugging:

1 Like

Well manjaro-pacnew-checker now is at 0.2.0 version and i have correct my bad english, pacnew and pacsave are listed and i switched to a systemd service. Now any 3 hours the check start.

I’m thinking of adding the service to some program like pacman or manjaro-system to make it reach even the old installations. Toughts ?

Personally, I wouldn’t do that. Have it running as a pacman hook after updating, yes — that’s where it matters — but I for one wouldn’t want to have it running as a timer.

4 Likes

image

If you know of a way to accomplish that, that would be great.

1 Like