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?

You are viewing a single thread.
View all comments
7 points

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.

permalink
report
reply
1 point

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

permalink
report
parent
reply
8 points

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.

permalink
report
parent
reply
1 point

thanks for the answer!

permalink
report
parent
reply
1 point

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

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

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

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

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

Community stats

  • 9.4K

    Monthly active users

  • 6.1K

    Posts

  • 171K

    Comments