What is difference between rpm -F and rpm -U? - unix

I was going through the man page of rpm but could get the exact difference between rpm -F and rpm -U.
Can anyone please help me out in this?

-F|--freshen only installs an update for packages that were already installed on the system. So
rpm -U already-installed-package.2.0.rpm
rpm -F already-installed-package.2.0.rpm
are equivalent, but
rpm -U not-installed-package.2.0.rpm # will install
rpm -F not-installed-package.2.0.rpm # won't install
are not.
from the man page:
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
This upgrades or installs the package currently installed to a newer version. This is the same as install, except all other
version(s) of the package are removed after the new package is
installed.
rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
This will upgrade packages, but only ones for which an earlier version is installed.

Related

How to install newer version of R on Amazon Linux 2

For whatever reason, Amazon moved R to the so-called "Extras Library" so you can't install R using sudo yum install -y R anymore. Instead, you have to do sudo amazon-linux-extras install R3.4. As a result, I can only install R 3.4.3 when the newest stable release is 3.6.1, and so many R libraries can't even be installed because the version is too low. Is there any good and clean way to install the latest version of R and skip Amazon's package manager? Thanks!
Use amazon-linux-extras which installs R4.0.2:
amazon-linux-extras install R4
You may need root:
sudo amazon-linux-extras install R4
I've tried setting up R 3.6.x on a docker container that uses the amazonlinux image. My approach was to get the R source file from the below link and install from source
cd /tmp/
wget https://cloud.r-project.org/src/base/R-3/R-3.6.3.tar.gz
tar -zxf R-3.6.3.tar.gz
cd /tmp/R-3.6.3
./configure --without-libtiff --without-lapack --without-ICU --disable-R-profiling --disable-nls
make
make install
you will need to yum install some dependencies, like 'make', which doesn't seem to come with aws amazonlinux docker image (which i think mirrors the EC2 instance AMI image you are referring to).
The above kind of worked for me in that i had a working R3.6 installation, but it didnt allow me use it with rshiny server, so i'm reverting to the shipped 3.4.3 version.
tl;dr: you'll probably have to manually download the source files and install the desired R version from source, and throw in some build dependencies as well.
Try this on Amazon Linux 2
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install R
Amazon Linux 2 Image contains extras library that can be used as well. Follow the guide here.
https://aws.amazon.com/premiumsupport/knowledge-center/ec2-install-extras-library-software/
sudo amazon-linux-extras enable R3.4
sudo yum clean metadata && sudo yum install R3.4

Error with Fiware-Cygnus installation via yum

i am trying to install the Fireware Cygnus via yum
yum install cygnus-ngsi
But in the middle i got some erros.
Transaction Check Error:
file /usr/cygnus/init.d/cygnus from install of cygnus-common-1.2.0-0.gbd4790e.x86_64 conflicts with file from package cygnus-0.13.0-0.g0c6765f.x86_64
-......
i checked the /usr directory but there is nothing with /cygnus/init.d and so on...
It is possible that there have been something before but who knows.
I also tried to clean yum repo but the error still exists. Does anyone have an idea ?
Try the following command in order to remove all Cygnus stuff:
sudo rpm -e -vv --allmatches --nodeps --noscripts --notriggers cygnus
sudo rpm -e -vv --allmatches --nodeps --noscripts --notriggers cygnus-ngsi
The first command will remove everything regarding Cygnus pre release 1.0.0, the second one will remove everything post release 1.0.0.
Hope this helps!
NOTE: from Cygnus 1.0.0 the code was split into cygnus-common, a library of common utils and classes for all Cygnus agents, and cygnus-ngsi, a NGSI specific agent (after that, other contributors have added more agents to Cygnus , such as cygnus-twitter by Universidad Politécnica de Valencia). That's why before release 1.0.0 Cygnus was installed as yum install cygnus and after 1.0.0 it is installed as yum install cygnus-ngsi.

How to upgrade Atom Editor on Linux?

What is the best way to upgrade atom on Linux Ubuntu ?
I install atom using official doc
git clone https://github.com/atom/atom
cd atom
script/build
sudo script/grunt install
I created the following script to update my atom on Ubuntu 14.10.
#!/bin/bash
# Update atom from downloaded deb file
rm -f /tmp/atom.deb
curl -L https://atom.io/download/deb > /tmp/atom.deb
dpkg --install /tmp/atom.deb
echo "***** apm upgrade - to ensure we update all apm packages *****"
apm upgrade --confirm false
exit 0
The file atom_update is executable and needs to be called using su:
sudo ./atom_update
The above works, but nowadays I use the following:
sudo add-apt-repository -y ppa:webupd8team/atom
sudo apt -y update
sudo apt -y install atom
apm install \
file-icons \
tabs-to-spaces \
trailing-spaces \
xml-formatter
With the above setup
sudo apt -y upgrade
will update an installed atom to the latest version. The ppa is generally up to date.
Now, it looks like the easiest way is to download the new packaged version (.deb or .rpm) from the official releases and install it over your previous one: https://github.com/atom/atom/releases
It's now even easier with the APT package.
sudo add-apt-repository ppa:webupd8team/atom
sudo apt update
sudo apt install atom
And now you can upgrade / dist-upgrade as usual
sudo apt upgrade
Current official documentation seem to recommend another method:
Atom Github Page
Debian Linux (Ubuntu)
Atom is only available for 64-bit Linux systems.
Download atom-amd64.deb from the Atom releases page.
Run sudo dpkg --install atom-amd64.deb on the downloaded package.
Launch Atom using the installed atom command.
The Linux version does not currently
automatically update so you will need to repeat these steps to upgrade
to future releases.
Red Hat Linux (Fedora 21 and under, CentOS, Red Hat)
Atom is only available for 64-bit Linux systems.
Download atom.x86_64.rpm from the Atom releases page.
Run sudo yum localinstall atom.x86_64.rpm on the downloaded package.
Launch Atom using the installed atom command.
The Linux version does not currently
automatically update so you will need to repeat these steps to upgrade
to future releases.
Fedora 22+
Atom is only available for 64-bit Linux systems.
Download atom.x86_64.rpm from the Atom releases page.
Run sudo dnf install ./atom.x86_64.rpm on the downloaded package.
Launch Atom using the installed atom command.
The Linux version does not currently
automatically update so you will need to repeat these steps to upgrade
to future releases.
As of this writing, the best option to upgrade to the latest released version of Atom is to check out the most recent tag and build it, especially if you built it in the first place.
cd atom
git pull
git checkout v0.115.0 (or whatever the latest release is: https://github.com/atom/atom/releases)
script/build
sudo script/grunt install
wget https://atom.io/download/deb -O atom64.deb
sudo dpkg --install atom64.deb
or
wget https://atom.io/download/rpm -O atom64.rpm
sudo dnf install atom64.rpm
the above URLs redirect to https://atom-installer.github.com/
An easier way is to install the atom-updater-linux from the packages on the atom website.
Go to edit > preferences > install and search for atom-updater-linux
or from the terminal:
apm install atom-updater-linux
This should check for updates after every launch and prompt you to install new updates.
Currently the preferred procedure is described at the atom pages Installing Atom - Platform-linux
When using the add-apt-repository suggested in the top answer, this URL is suggested.
The apt repository mentioned at the Atom pages:
curl -sL https://packagecloud.io/AtomEditor/atom/gpgkey | sudo apt-key add -
sudo sh -c 'echo "deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ any main" > /etc/apt/sources.list.d/atom.list'
sudo apt-get update
If you are onn Ubuntu you can go to the Ubuntu Software Center, search for Atom and just click on Update. Then job done!
If anybody is interested, I wrote a small atom package for this purpose.
The package is meant to timely inform the user of new versions being available (stable or beta, configurable via settings) and uses GitHub API under the hood. It is platform independent, so it should work with any linux distro, but also with Windows or other systems.
It does not perform the upgrade automatically as I wrote it for my needs and I was not interested in such feature. I may add it in the future should strong interest for it manifest itself, though.
Feedback is welcome, best as tickets on github.
I upgraded from
Atom : 1.26.1
Electron: 1.7.11
Chrome : 58.0.3029.110
Node : 7.9.0
to
Atom : 1.40.1
Electron: 3.1.10
Chrome : 66.0.3359.181
Node : 10.2.0
I followed these simple steps,
create a file
sudo nano /usr/local/bin/atom-update
copy following snippet and save with Ctrl+o and "enter" and Ctrl+x
your code
#!/bin/bash
wget -q https://github.com/atom/atom/releases/latest -O /tmp/latest
wget --progress=bar -q 'https://github.com'$(cat /tmp/latest | grep -o -E 'href="([^"#]+)atom-amd64.deb"' | cut -d'"' -f2 | sort | uniq) -O /tmp/atom-amd64.deb -q --show-progress
dpkg -i /tmp/atom-amd64.deb
Make it executable
sudo chmod +x /usr/local/bin/atom-update
Run the script to upgrade atom
sudo atom-update
Ubuntu 16.04 and later
Run these commands to quickly and easily install and upgrade the Atom text editor snap package from the terminal in Ubuntu 16.04 and later (64-bit only).
Install Atom text editor:
sudo snap install --classic atom
Note that a snap in classic confinement behaves as a traditionally packaged application with full access to the system, and Atom extension packages are installed into the user's home directory.
Upgrade Atom text editor:
sudo snap refresh --classic atom
I would add that you should probably clean before updating the build to prevent some nasty errors.
cd atom
git pull
script/clean
script/build
sudo script/grunt install
For debian I have created a bash script which does the following:
Check with https://api.github.com and dpkg if atom is installed and/or up-to date.
Download and install the atom.deb from github if needed.
Provide a --beta switch if somebody wants to maintain the beta version as well.
Fell free to use it, it is located here: https://gist.github.com/rumpelsepp/8a953d6c092cbeb043695cfada114bef
Since December 2017 Atom provides official repositories for all major Linux distributions. You can find the latest installation instructions here.
Latest Way is to first install $ apm install atom-updater-linux then simply press Alt+Ctrl+U or go to Help and there is option for check for updates

Install R 3+ on Redhat 6.3

I want to install R on my Red hat cluster which has the version below:
$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.3 (Santiago)
When I went to R's homepage and this is what in their repository:
I am wondering there is only redhat version 4 and 5 there and I don't know which version will best fit my operating system.
Texinfo Problem Goes Here
Since I have asked more than 6 questions today. Stackoverflow doesn't like me to ask more questions. So I will put the following questions into this question, sorry about that.
Hi, I was trying to use Expect to automatically log into a remote server and install R.
When I install R, they came up with all kinds of prompts asking 'The package will take xx MB Is that OK with you'?
The command to install:
su -c 'yum install R R-core R-core-devel R-devel'
You need to type in Yes for a few times to finish the installation.
My question is:
Is there a flag for yum install that you can tell the machine to install everything I want you to install. Don't ask me. So I can install those four packages without any prompt.
If that is hard to install in the 'quiet mode', how to write a while loop in Expect so it will send the Y automatically:
Pseudo Code Not Working!
send -- "sudo su -c yum install ...."
while ("Expect '*Is it OK [Y/N]*'"){
send 'Y\r'
# if (expect 'user$')
{break}
}
Thanks a lot in advance.
This is likely due to there being R RPMs in the Extra Packages for Enterprise Linux (EPEL) repos for RHEL6. You can find out more about EPEL on the Fedora website.
You need to configure yum to use EPEL. The easiest way to do this is to install the epel-release package for your platform, eg
su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm'
or
su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm'
for example. The you can use yum to install R, e.g. you will probably want
su -c 'yum install R R-core R-core-devel R-devel'
so that you pull in the packages needed to build other add-on packages as most CRAN package are not in EPEL.
At the moment, the latest version of R in EPEL is 3.0.1, so one patch release point behind the latest version 3.0.2.

error installing qt-sdk on linux

i have ubuntu-10.10 desktop version i installed following packages using apt-get install
libglib2.0-dev
libSM-dev
libxrender-dev
libfontconfig1-dev
libxext-dev
libgl1-mesa-dev
libglu-meas-dev
i downloaded qt-sdk-linux-x86-opensource-2010.05.1.bin
changed permission of bin file
chmod u+x qt-sdk-linux-x86-opensource-2010.05.1.bin
./qt-sdk-linux-x86-opensource-2010.05.1.bin
it gives me an error like not able to create symbolic link to libQtCore-4.7.0 and installation aborts.
can any one suggest me what is going wrong and how can i over come this issue
You can just install qt-sdk package from Ubuntu repositories, if you must install by hand, try running it with sudo;
sudo ./qt-sdk-linux-x86-opensource-2010.05.1.bin

Resources