I discovered tmux is installed on my system. In order to find out if it was preinstalled with fedora I ran the command dnf info tmux which prints out:

Installed Packages
Name         : tmux
Version      : 2.7
Release      : 1.fc28
Arch         : x86_64
Size         : 765 k
Source       : tmux-2.7-1.fc28.src.rpm
Repo         : @System
From repo    : updates
Summary      : A terminal multiplexer
URL          : https://tmux.github.io/
License      : ISC and BSD
Description  : tmux is a "terminal multiplexer."  It enables a number of terminals (or
             : windows) to be accessed and controlled                     from a single terminal.  tmux is
             : intended to be a simple, modern, BSD-licensed alternative to programs such
             : as GNU Screen.

Based on the above output it seems that @ means "at" so Repo: @System means "at system" (i.e. the package is not in a repository instead the package is installed at the system) or in other words (package tmux is) installed at the system.

However tracking down the transaction when tmux was installed with dnf history list tmux (which showed something like transaction ID 55), and dnf history list 55 the following line is part of the resulting output:

Install    tmux-2.7-1.fc28.x86_64               @updates

Based on the above findings which of the following understanding of @ in package management is correct?

  • The line above makes it clear that tmux was installed from the updates repository but assuming that @ means "at" shouldn't that mean installed at the updates repository? In other words, why does @ in the output of dnf info <packagename> mean "at" e.g. @System means "at System", but in the output of dnf history list 55, @ seems to mean "from"?

  • Alternatively does @ mean "install the package tmux-2.7-1.fc28.x86_64 at the repository @updates", or in other words, "install the package tmux-2.7-1.fc28.x86_64 that is at the repository updates"? Which makes sense given that the line below from the same output should read as: upgraded subversion at the repository fedora/27.

Upgraded   subversion-1.9.7-1.fc27.x86_64       @fedora/27

Edit: My question is not a duplicate. Where as the other question is asking what @ means, this question is different in that I researched/investigated the meaning of @ in the package manager after which I posted a question to confirm which of my understanding of the results of the research/investigation is correct. Besides the answers to the other question are low quality. For example the first answer makes the following statement:

All "Installed Packages" are preceded by @ sign, while "Available Packages" are not. So I believe @ signs show the packages are installed.

This is not correct because for example with that flawed answer

Install    tmux-2.7-1.fc28.x86_64         @updates

would mean that tmux is already installed which it is not. So that rules out @ meaning that a package is already installed

and the second answer states:

DNF uses @ to denote the repo an installed package was installed from. As you noted

That's wrong because then @System would mean that the package was installed from your system. My understanding of @ in the main question shows why this quote from the second answer to the other question is wrong.

marked as duplicate by Michael Hampton, Fabby, Rui F Ribeiro, Mr Shunz, slm Apr 30 at 17:33

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • »» find out if it was preinstalled with fedora «« : You can create a list with install dates → $ rpm -qa --last > installed-packages.txt. ... Besides that, "releases" has tmux included dl.fedoraproject.org/pub/fedora/linux/releases/28/Workstation/… – Knud Larsen Apr 24 at 20:26
  • @MichaelHampton , see my edit for why this question is not a duplicate – MyWrathAcademia Apr 25 at 12:11
  • @KnudLarsen , that link to the fedora 28 releases is useful because it confirms that tmux is included in the fedora 28 upgrade/installation. As for the rpm command you provided, how is it different to dnf list --installed? – MyWrathAcademia Apr 25 at 12:41
  • »» ... the rpm command you provided, how is it different to dnf list --installed? «« : Why not do both commands yourself ? .... rpm -qa --last > last-packages.txt writes a list ordered by date, the latest install at line 1 : Very useful. ... dnf list --installed > dnf-list.txt writes an alphabetic list. No dates. ... Quite different ! – Knud Larsen Apr 25 at 15:28