this post was submitted on 27 Sep 2023
17 points (100.0% liked)

Linux

45534 readers
1231 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

cross-posted from: https://lemmy.kde.social/post/198018

Hello! EOS user here. I upgrade my system with topgrade, and sometimes it tells me about some pacnew files, asking if merging, replacing or removing the original ones. I snapshotted my system and tried replacing my original files (an eos-something file, where the new file changed a bunch of mirrors, and /etc/shells, where it replaced sh and bash with git-shell and zsh. After the reboot, I was unable to boot into my user account ("wrong password" but it was the correct password). I had to boot as root and restore the snapshot. I then removed that evil pacnew file.

Now my question is, how should I deal with these pacnew files? should I always remove them, always replace them, always read them and decide? I'd rather not read these things everyday, it's a bit boring, so I hope there's a better solution. How do you deal with these?

top 6 comments
sorted by: hot top controversial new old
[–] [email protected] 10 points 9 months ago

Now my question is, how should I deal with these pacnew files?

Install pacman-contrib which includes pacdiff. Meld is easy for beginners.

DIFFPROG="meld" pacdiff --sudo

See https://wiki.archlinux.org/title/Pacnew_files#Managing_.pac*_files for more options.

[–] [email protected] 6 points 9 months ago (1 children)

pacnew files are created when the package has changed it, but so have you. So you would replace it only if you don't care about the changes you have locally. Otherwise you likely want to diff them and manually merge in any new changes to the config. Generally speaking most should not make your system unbootable, but I would look more closely at any core system files and see what the changes are rather then just blindly accepting them. Even if you do that for less critical packages.

[–] [email protected] 1 points 9 months ago (2 children)

but I didn't change any of those files manually, so are they changed by some other program?

[–] [email protected] 7 points 9 months ago (1 children)

It might be that your distribution of choice has slightly different defaults in the files compared to regular Archlinux.
Either way you'll want to have a look at either Meld (graphical) or something like pacdiff (terminal). With these you can easily see the differences between your old file and the new .pacnew.

The new default is not always better. One example: Whenever Archlinux creates a new /etc/makepkg.conf.pacnew I don't simply overwrite the old file. The new default would comment out the line which defines how many CPU threads I want to use to build packages and reduce it to one thread (I assume).
You really don't have to understand every line in every file. Most often it's quite easy to determine whether you want the new changes or not. Just always have a quick look at what is different. You don't want to replace old files mindlessly.

[–] [email protected] 1 points 9 months ago

thanks for the answer!

[–] [email protected] 1 points 9 months ago

What does pacman -Qii $PACKAGENAME say about the file in question?